mirror of
https://github.com/lyc8503/EasierConnect.git
synced 2025-12-24 12:57:54 +08:00
Compare commits
7 Commits
TestBuild9
...
TestBuild1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7a1dc42607 | ||
|
|
4a365b628b | ||
|
|
a3121efaf2 | ||
|
|
4097d0ae7a | ||
|
|
1696b74763 | ||
|
|
fd0217e446 | ||
|
|
a7fa8c3656 |
@@ -168,7 +168,7 @@ func BlockTXStream(server string, token *[48]byte, ipRev *[4]byte, ep *EasyConne
|
||||
errCh := make(chan error)
|
||||
|
||||
ep.OnRecv = func(buf []byte) {
|
||||
n, err = conn.Write(buf)
|
||||
var n, err = conn.Write(buf)
|
||||
if err != nil {
|
||||
errCh <- err
|
||||
return
|
||||
|
||||
@@ -50,7 +50,14 @@ func WebLogin(server string, username string, password string) (string, error) {
|
||||
rsaKey := string(regexp.MustCompile(`<RSA_ENCRYPT_KEY>(.*)</RSA_ENCRYPT_KEY>`).FindSubmatch(buf[:n])[1])
|
||||
log.Printf("RSA Key: %s", rsaKey)
|
||||
|
||||
rsaExp := string(regexp.MustCompile(`<RSA_ENCRYPT_EXP>(.*)</RSA_ENCRYPT_EXP>`).FindSubmatch(buf[:n])[1])
|
||||
rsaExpMatch := regexp.MustCompile(`<RSA_ENCRYPT_EXP>(.*)</RSA_ENCRYPT_EXP>`).FindSubmatch(buf[:n])
|
||||
rsaExp := ""
|
||||
if rsaExpMatch != nil {
|
||||
rsaExp = string(rsaExpMatch[1])
|
||||
} else {
|
||||
log.Printf("Warning: No RSA_ENCRYPT_EXP, using default.")
|
||||
rsaExp = "65537"
|
||||
}
|
||||
log.Printf("RSA Exp: %s", rsaExp)
|
||||
|
||||
csrfMatch := regexp.MustCompile(`<CSRF_RAND_CODE>(.*)</CSRF_RAND_CODE>`).FindSubmatch(buf[:n])
|
||||
@@ -104,7 +111,7 @@ func WebLogin(server string, username string, password string) (string, error) {
|
||||
// log.Printf("First stage login response: %s", string(buf[:n]))
|
||||
|
||||
// SMS Code Process
|
||||
if strings.Contains(string(buf[:n]), "<NextService>auth/sms</NextService>") {
|
||||
if strings.Contains(string(buf[:n]), "<NextService>auth/sms</NextService>") || strings.Contains(string(buf[:n]), "<NextAuth>2</NextAuth>") {
|
||||
log.Print("SMS code required.")
|
||||
|
||||
addr = server + "/por/login_sms.csp?apiversion=1"
|
||||
@@ -121,7 +128,7 @@ func WebLogin(server string, username string, password string) (string, error) {
|
||||
n, _ := resp.Body.Read(buf)
|
||||
defer resp.Body.Close()
|
||||
|
||||
if !strings.Contains(string(buf[:n]), "验证码已发送到您的手机") {
|
||||
if !strings.Contains(string(buf[:n]), "验证码已发送到您的手机") && !strings.Contains(string(buf[:n]), "<USER_PHONE>") {
|
||||
debug.PrintStack()
|
||||
return "", errors.New("unexpected sms resp: " + string(buf[:n]))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user