feat: add cipherSuites option and unsafe fingerprint to TLS UI settings - #5900
feat: add cipherSuites option and unsafe fingerprint to TLS UI settings#5900patterniha wants to merge 27 commits into
cipherSuites option and unsafe fingerprint to TLS UI settings#5900Conversation
…safe-option feat: add cipherSuites option and "unsafe" fingerprint to TLS UI settings
Add the server_lab_cipher_suites label to all 8 locale strings.xml files (ar, bn, bqi-rIR, fa, ru, vi, zh-rCN, zh-rTW), which #1 only added to the default values/strings.xml. Also compare cipherSuites in ProfileItem.equals so profiles differing only in cipher suites are not treated as duplicates and deleted by "remove duplicate servers". Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
fix: add missing cipherSuites locale strings and equals comparison (follow-up to #1)
The fork already round-trips its custom TLS fields (ech, vcn, pcs, pqv) through share-link query parameters and the VMess QR-code JSON, but cipherSuites was missing, so sharing a profile silently dropped it. Add a "cs" query parameter to FmtBase import/export and a "cs" field to VmessQRCode, mapped in VmessFmt parse/toUri, following the existing pattern (emitted only when non-blank). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
feat: round-trip cipherSuites in share links and VMess QR code
… to Compose ServerActivity
The V2rayN Inner URI feature (2dust/v2rayNG@1338ec8e) imports profiles via V2rayNShareItem, a hand-written mirror of v2rayN's ProfileItem entity. v2rayN serializes its entity generically, so links it exports include CipherSuites, but the mirror lacked the field and dropped the value on import. Add CipherSuites to V2rayNShareItem and map it in toProfileItem(). The DTO is only constructed by gson deserialization, so no other call sites are affected. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
Conflicts resolved for the second time :| @2dust What is the problem? |
Upstream ac03b0e split ServerActivity into per-protocol activities with shared BaseServerActivity/ServerUiState. Git carried the old cipherSuites lines into the moved ui/server/ServerActivity.kt, but the live editor path is the new state class and shared TLS section. Add cipherSuites to ServerUiState (constructor, state property, toProfileItem, fromProfileItem - the Saver round-trips through these so it also survives process death) and render the field in BaseServerActivity's TLS-only section after the alpn dropdown. The "unsafe" fingerprint needs no port: the new dropdown reads the same streamsecurity_utls array. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
Conflicts resolved for the third time. @2dust |
|
now many Iranians people use PattNG and can bypass dpi and upload-restriction by changing but I still hope this PR and 2dust/v2rayN#9716 merge because I don't want to waste my time maintaining Android/Windows apps. |
|
XTLS/Xray-core#716 |
|
I obviously choose Even though I have access to change the XTLS/Xray-core#716, I asked @RPRX to add the |
|
如果 rprx 接受 cipherSuites,cs 有点太短了,建议加长 |
the reason discussed here: XTLS/Xray-core#6450, XTLS/Xray-core#6450 (comment)
in short, for bypassing dpi we need these two options.