| 2630 | |
| 2631 | // surge 中的 socks5 类型 |
| 2632 | function SS52QX(content) { |
| 2633 | var cnt = content; |
| 2634 | var tag = "tag=" + cnt.split("=")[0].trim(); |
| 2635 | var ipport = cnt.split(",")[1].trim() + ":" + cnt.split(",")[2].trim(); |
| 2636 | var puname = cnt.indexOf("username") != -1 ? "username=" + cnt.split("username")[1].split(",")[0].split("=")[1].trim() : ""; |
| 2637 | var pwd = cnt.indexOf("password") != -1 ? "password=" + cnt.split("password")[1].split(",")[0].split("=")[1].trim() : ""; |
| 2638 | var ptls = cnt.split("=")[1].split(",")[0].trim() == "socks5-tls" ? "over-tls=true" : "over-tls=false"; |
| 2639 | var ptfo = paraCheck(cnt, "tfo") == "true" ? "fast-open=true" : "fast-open=false"; |
| 2640 | if (ptls == "over-tls=true") { |
| 2641 | var pverify = cnt.replace(/ /g,"").indexOf("skip-cert-verify=false") != -1 ? "tls-verification=true" : "tls-verification=false"; |
| 2642 | pvefify = Pcert0 == 1? "tls-verification=true" : pverify ; |
| 2643 | var ptls13 = paraCheck(cnt, "tls13") == "true" ? "tls13=true" : "tls13=false"; |
| 2644 | ptls = ptls + ", " + pverify + ", " + ptls13 |
| 2645 | } |
| 2646 | var nserver = puname != "" ? "socks5= " + [ipport, puname, pwd, ptls, ptfo, tag].join(", ") : "socks5= " + [ipport, ptls, ptfo, tag].join(", "); |
| 2647 | return nserver |
| 2648 | } |
| 2649 | |
| 2650 | function Loon2QX(cnt) { |
| 2651 | var type = cnt.split("=")[1].split(",")[0].trim() |