@@ -54,6 +54,11 @@ public abstract class StandardV2RayBean extends AbstractBean {
5454 public String xhttpMode ;
5555 public String xhttpExtra ;
5656
57+ // --------------------------------------- kcp
58+
59+ public String mKcpSeed ;
60+ public String headerType ;
61+
5762 // --------------------------------------- ech
5863
5964 public Boolean enableECH ;
@@ -120,11 +125,14 @@ public void initializeDefaultValues() {
120125
121126 if (JavaUtil .isNullOrBlank (xhttpMode )) xhttpMode = "auto" ;
122127 if (JavaUtil .isNullOrBlank (xhttpExtra )) xhttpExtra = "" ;
128+
129+ if (JavaUtil .isNullOrBlank (mKcpSeed )) mKcpSeed = "" ;
130+ if (JavaUtil .isNullOrBlank (headerType )) headerType = "none" ;
123131 }
124132
125133 @ Override
126134 public void serialize (ByteBufferOutput output ) {
127- output .writeInt (5 );
135+ output .writeInt (6 );
128136 super .serialize (output );
129137 output .writeString (uuid );
130138 output .writeString (encryption );
@@ -167,6 +175,11 @@ public void serialize(ByteBufferOutput output) {
167175 output .writeString (xhttpExtra );
168176 break ;
169177 }
178+ case "kcp" : {
179+ output .writeString (mKcpSeed );
180+ output .writeString (headerType );
181+ break ;
182+ }
170183 }
171184
172185 output .writeString (security );
@@ -245,6 +258,13 @@ public void deserialize(ByteBufferInput input) {
245258 }
246259 break ;
247260 }
261+ case "kcp" : {
262+ if (version >= 6 ) {
263+ mKcpSeed = input .readString ();
264+ headerType = input .readString ();
265+ }
266+ break ;
267+ }
248268 }
249269
250270 security = input .readString ();
@@ -298,6 +318,7 @@ public void deserialize(ByteBufferInput input) {
298318 }
299319
300320 // Note: xhttp fields are read in the switch case above when version >= 4
321+ // Note: kcp fields are read in the switch case above when version >= 6
301322 }
302323
303324 @ Override
0 commit comments