linux/net/dccp/feat.c
<<
/opt2.6/spalue 2.6/formue 2.6a /opt2. href="../linux+v3.7.5/net/dccp/feat.c">/opt2.6img src="../.static/gfx/right.png" alt=">>">/o6/spalue/o6spal class="lxr_search">/opt/opt2.6input typ hidden" nam navtarget" > ">/opt2.6input typ text" nam search" id search">/opt2.6butt2" typ submit">Search/opt2.Prefse 2.6/a>/o6/spaluept2. .6/divuept2. .6form ac val="ajax+*" method="post" onsubmit="return false;">/o6input typ hidden" nam ajax_lookup" id ajax_lookup" > ">/pt2. .6/formue/pt2. .6div class="headingbott2m">e 6div id file_contents"u
. .16/a>6spal class="comment">/*6/spalue. .26/a>6spal class="comment"> *  net/dccp/feat.c6/spalue. .36/a>6spal class="comment"> *6/spalue. .46/a>6spal class="comment"> *  Feature negotia2.2"
for the DCCP protocol (RFC 4340, sec val 6)6/spalue. .56/a>6spal class="comment"> *6/spalue. .66/a>6spal class="comment"> *  Copyright (c) 2008 Gerrit Renker <gerrit@erg.abdn.ac.uk>6/spalue. .76/a>6spal class="comment"> *  Rewrote from scratch, some bits from earlier code by6/spalue. .86/a>6spal class="comment"> *  Copyright (c) 2005 Andrea Bittau <a.bittau@cs.ucl.ac.uk>6/spalue. .96/a>6spal class="comment"> *6/spalue. tiona>6spal class="comment"> *6/spalue. 116/a>6spal class="comment"> *  ASSUMPTIONS6/spalue. 126/a>6spal class="comment"> *  -----------6/spalue. 136/a>6spal class="comment"> *. o Feature negotia2.2"
is coordinated with connec val setup (as in TCP), wild6/spalue. 146/a>6spal class="comment"> *    changes of param
ters of al established connec val are not supported.6/spalue. 156/a>6spal class="comment"> *. o Changing non-negotiable (NN) 	  >
s
is supported in state OPEN/PARTOPEN.6/spalue. 166/a>6spal class="comment"> *  o All currently known SP features have 1-byte quantities. If in the future6/spalue. 176/a>6spal class="comment"> *    extensvals of RFCs 4340..42 define features with item lengths larger than6/spalue. 186/a>6spal class="comment"> *  . one byte, a feature-specific extensval of the code will be required.6/spalue. 196/a>6spal class="comment"> *6/spalue. 2iona>6spal class="comment"> *  This program
is free software; you cal redistribute it ald/or6/spalue. 216/a>6spal class="comment"> *  modify it under the terms of the GNU General Public License6/spalue. 226/a>6spal class="comment"> *  as published by the Free Software Founda2.2"; either vers.2"6/spalue. 236/a>6spal class="comment"> *. 2 of the License, or (at your on val) aly later vers.2".6/spalue. 246/a>6spal class="comment"> */6/spalue. 256/a>#include <linux/module.h6/a>>e. 266/a>#include <linux/slab.h6/a>>e. 276/a>#include "ccid.h6/a>"e. 286/a>#include "feat.h6/a>"e. 296/a>e. 3iona>6spal class="comment">/* feature-specific sysctls - initialised to the defaults from RFC 4340, 6.4 */6/spalue. 316/a>unsvgned long 2.6a href="+code=sysctl_dccp_sequence_window" class="sref">sysctl_dccp_sequence_window6/a>.6a href="+code=__read_mostly" class="sref">__read_mostly6/a>.= ti0;e. 326/a>int             6a href="+code=sysctl_dccp_rx_ccid" class="sref">sysctl_dccp_rx_ccid6/a>.        6a href="+code=__read_mostly" class="sref">__read_mostly6/a>.= 2,e. 336/a>.               6a href="+code=sysctl_dccp_tx_ccid" class="sref">sysctl_dccp_tx_ccid6/a>.        6a href="+code=__read_mostly" class="sref">__read_mostly6/a>.= 2;e. 346/a>e. 356/a>6spal class="comment">/*6/spalue. 366/a>6spal class="comment"> * Feature ac vva2.2"
handlers.6/spalue. 376/a>6spal class="comment"> *6/spalue. 386/a>6spal class="comment"> * These all use an u64 argument, to provide enough room for NN/SP features. At6/spalue. 396/a>6spal class="comment"> * this stage the negotia2ed 	  >
s
have beel checked to be within their range.6/spalue. 4iona>6spal class="comment"> */6/spalue. 416/a>static int 6a href="+code=dccp_hdlr_ccid" class="sref">dccp_hdlr_ccid6/a>(struct 6a href="+code=sock" class="sref">sock6/a>.*6a href="+code=sk" class="sref">sk6/a>, 6a href="+code=u64" class="sref">u646/a>.6a href="+code=ccid" class="sref">ccid6/a>, 6a href="+code=bool" class="sref">bool6/a>.6a href="+code=rx" class="sref">rx6/a>)e. 426/a>{e. 436/a>.       struct 6a href="+code=dccp_sock" class="sref">dccp_sock6/a>.*6a href="+code=dp" class="sref">dp6/a>.= 6a href="+code=dccp_sk" class="sref">dccp_sk6/a>(6a href="+code=sk" class="sref">sk6/a>);e. 446/a>.       struct 6a href="+code=ccid" class="sref">ccid6/a>.*6a href="+code=new_ccid" class="sref">new_ccid6/a>.= 6a href="+code=ccid_new" class="sref">ccid_new6/a>(6a href="+code=ccid" class="sref">ccid6/a>, 6a href="+code=sk" class="sref">sk6/a>, 6a href="+code=rx" class="sref">rx6/a>);e. 456/a>e. 466/a>.       if (6a href="+code=new_ccid" class="sref">new_ccid6/a>.== 6a href="+code=NULL" class="sref">NULL6/a>)e. 476/a>.               return -6a href="+code=ENOMEM" class="sref">ENOMEM6/a>;e. 486/a>e. 496/a>.       if (6a href="+code=rx" class="sref">rx6/a>) {e. 506/a>.               6a href="+code=ccid_hc_rx_delete" class="sref">ccid_hc_rx_delete6/a>(6a href="+code=dp" class="sref">dp6/a>->6a href="+code=dccps_hc_rx_ccid" class="sref">dccps_hc_rx_ccid6/a>, 6a href="+code=sk" class="sref">sk6/a>);e. 516/a>.               6a href="+code=dp" class="sref">dp6/a>->6a href="+code=dccps_hc_rx_ccid" class="sref">dccps_hc_rx_ccid6/a>.= 6a href="+code=new_ccid" class="sref">new_ccid6/a>;e. 526/a>.       } else {e. 536/a>.               6a href="+code=ccid_hc_tx_delete" class="sref">ccid_hc_tx_delete6/a>(6a href="+code=dp" class="sref">dp6/a>->6a href="+code=dccps_hc_tx_ccid" class="sref">dccps_hc_tx_ccid6/a>, 6a href="+code=sk" class="sref">sk6/a>);e. 546/a>.               6a href="+code=dp" class="sref">dp6/a>->6a href="+code=dccps_hc_tx_ccid" class="sref">dccps_hc_tx_ccid6/a>.= 6a href="+code=new_ccid" class="sref">new_ccid6/a>;e. 556/a>.       }e. 566/a>.       return 0;e. 576/a>}e. 586/a>e. 596/a>static int 6a href="+code=dccp_hdlr_seq_win" class="sref">dccp_hdlr_seq_win6/a>(struct 6a href="+code=sock" class="sref">sock6/a>.*6a href="+code=sk" class="sref">sk6/a>, 6a href="+code=u64" class="sref">u646/a>.6a href="+code=seq_win" class="sref">seq_win6/a>, 6a href="+code=bool" class="sref">bool6/a>.6a href="+code=rx" class="sref">rx6/a>)e. 606/a>{e. 616/a>.       struct 6a href="+code=dccp_sock" class="sref">dccp_sock6/a>.*6a href="+code=dp" class="sref">dp6/a>.= 6a href="+code=dccp_sk" class="sref">dccp_sk6/a>(6a href="+code=sk" class="sref">sk6/a>);e. 626/a>e. 636/a>.       if (6a href="+code=rx" class="sref">rx6/a>) {e. 646/a>.               6a href="+code=dp" class="sref">dp6/a>->6a href="+code=dccps_r_seq_win" class="sref">dccps_r_seq_win6/a>.= 6a href="+code=seq_win" class="sref">seq_win6/a>;e. 656/a>.               6spal class="comment">/* propagate changes to update SWL/SWH */6/spalue. 666/a>.               6a href="+code=dccp_update_gsr" class="sref">dccp_update_gsr6/a>(6a href="+code=sk" class="sref">sk6/a>, 6a href="+code=dp" class="sref">dp6/a>->6a href="+code=dccps_gsr" class="sref">dccps_gsr6/a>);e. 676/a>.       } else {e. 686/a>.               6a href="+code=dp" class="sref">dp6/a>->6a href="+code=dccps_l_seq_win" class="sref">dccps_l_seq_win6/a>.= 6a href="+code=seq_win" class="sref">seq_win6/a>;e. 696/a>.               6spal class="comment">/* propagate changes to update AWL */6/spalue. 706/a>.               6a href="+code=dccp_update_gss" class="sref">dccp_update_gss6/a>(6a href="+code=sk" class="sref">sk6/a>, 6a href="+code=dp" class="sref">dp6/a>->6a href="+code=dccps_gss" class="sref">dccps_gss6/a>);e. 716/a>.       }e. 726/a>.       return 0;e. 736/a>}e. 746/a>e. 756/a>static int 6a href="+code=dccp_hdlr_ack_ra2.2" class="sref">dccp_hdlr_ack_ra2.26/a>(struct 6a href="+code=sock" class="sref">sock6/a>.*6a href="+code=sk" class="sref">sk6/a>, 6a href="+code=u64" class="sref">u646/a>.6a href="+code=ra2.2" class="sref">ra2.26/a>, 6a href="+code=bool" class="sref">bool6/a>.6a href="+code=rx" class="sref">rx6/a>)e. 766/a>{e. 776/a>.       if (6a href="+code=rx" class="sref">rx6/a>)e. 786/a>.               6a href="+code=dccp_sk" class="sref">dccp_sk6/a>(6a href="+code=sk" class="sref">sk6/a>)->6a href="+code=dccps_r_ack_ra2.2" class="sref">dccps_r_ack_ra2.26/a>.= 6a href="+code=ra2.2" class="sref">ra2.26/a>;e. 796/a>.       elsee. 806/a>.               6a href="+code=dccp_sk" class="sref">dccp_sk6/a>(6a href="+code=sk" class="sref">sk6/a>)->6a href="+code=dccps_l_ack_ra2.2" class="sref">dccps_l_ack_ra2.26/a>.= 6a href="+code=ra2.2" class="sref">ra2.26/a>;e. 816/a>.       return 0;e. 826/a>}e. 836/a>e. 846/a>static int 6a href="+code=dccp_hdlr_ackvec" class="sref">dccp_hdlr_ackvec6/a>(struct 6a href="+code=sock" class="sref">sock6/a>.*6a href="+code=sk" class="sref">sk6/a>, 6a href="+code=u64" class="sref">u646/a>.6a href="+code=enable" class="sref">enable6/a>, 6a href="+code=bool" class="sref">bool6/a>.6a href="+code=rx" class="sref">rx6/a>)e. 856/a>{e. 866/a>.       struct 6a href="+code=dccp_sock" class="sref">dccp_sock6/a>.*6a href="+code=dp" class="sref">dp6/a>.= 6a href="+code=dccp_sk" class="sref">dccp_sk6/a>(6a href="+code=sk" class="sref">sk6/a>);e. 876/a>e. 886/a>.       if (6a href="+code=rx" class="sref">rx6/a>) {e. 896/a>.               if (6a href="+code=enable" class="sref">enable6/a> && 6a href="+code=dp" class="sref">dp6/a>->6a href="+code=dccps_hc_rx_ackvec" class="sref">dccps_hc_rx_ackvec6/a>.== 6a href="+code=NULL" class="sref">NULL6/a>) {e. 906/a>.                       6a href="+code=dp" class="sref">dp6/a>->6a href="+code=dccps_hc_rx_ackvec" class="sref">dccps_hc_rx_ackvec6/a>.= 6a href="+code=dccp_ackvec_alloc" class="sref">dccp_ackvec_alloc6/a>(6a href="+code=gfp_any" class="sref">gfp_any6/a>());e. 916/a>.                       if (6a href="+code=dp" class="sref">dp6/a>->6a href="+code=dccps_hc_rx_ackvec" class="sref">dccps_hc_rx_ackvec6/a>.== 6a href="+code=NULL" class="sref">NULL6/a>)e. 926/a>.                       .       return -6a href="+code=ENOMEM" class="sref">ENOMEM6/a>;e. 936/a>.               } else if (!6a href="+code=enable" class="sref">enable6/a>) {e. 946/a>.                       6a href="+code=dccp_ackvec_free" class="sref">dccp_ackvec_free6/a>(6a href="+code=dp" class="sref">dp6/a>->6a href="+code=dccps_hc_rx_ackvec" class="sref">dccps_hc_rx_ackvec6/a>);e. 956/a>.                       6a href="+code=dp" class="sref">dp6/a>->6a href="+code=dccps_hc_rx_ackvec" class="sref">dccps_hc_rx_ackvec6/a>.= 6a href="+code=NULL" class="sref">NULL6/a>;e. 966/a>.               }e. 976/a>.       }e. 986/a>.       return 0;e. 996/a>}e.1006/a>e.1016/a>static int 6a href="+code=dccp_hdlr_ndp" class="sref">dccp_hdlr_ndp6/a>(struct 6a href="+code=sock" class="sref">sock6/a>.*6a href="+code=sk" class="sref">sk6/a>, 6a href="+code=u64" class="sref">u646/a>.6a href="+code=enable" class="sref">enable6/a>, 6a href="+code=bool" class="sref">bool6/a>.6a href="+code=rx" class="sref">rx6/a>)e.1026/a>{e.1036/a>.       if (!6a href="+code=rx" class="sref">rx6/a>)e.1046/a>.               6a href="+code=dccp_sk" class="sref">dccp_sk6/a>(6a href="+code=sk" class="sref">sk6/a>)->6a href="+code=dccps_send_ndp_count" class="sref">dccps_send_ndp_count6/a>.= (6a href="+code=enable" class="sref">enable6/a> > 0);e.1056/a>.       return 0;e.1066/a>}e.1076/a>e.1086/a>6spal class="comment">/*6/spalue.1096/a>6spal class="comment"> * Minimum Checksum Coverage is loca2ed at the RX side (9.2.1). This means that6/spalue.1tiona>6spal class="comment"> * `rx' holds when the sending peer informs about his partial coverage via a6/spalue.1116/a>6spal class="comment"> * ChangeR() on val. In the other case, we are the sender and the receiver6/spalue.1126/a>6spal class="comment"> * announc
s
its coverage via ChangeL() on vals. The policy here is to honour6/spalue.1136/a>6spal class="comment"> *.such communica2.2"
by enabling the corresponding partial coverage - but only6/spalue.1146/a>6spal class="comment"> * if it has not beel set manually before; the warning here means that all6/spalue.1156/a>6spal class="comment"> *.packets will be dropped.6/spalue.1166/a>6spal class="comment"> */6/spalue.1176/a>static int 6a href="+code=dccp_hdlr_min_cscov" class="sref">dccp_hdlr_min_cscov6/a>(struct 6a href="+code=sock" class="sref">sock6/a>.*6a href="+code=sk" class="sref">sk6/a>, 6a href="+code=u64" class="sref">u646/a>.6a href="+code=cscov" class="sref">cscov6/a>, 6a href="+code=bool" class="sref">bool6/a>.6a href="+code=rx" class="sref">rx6/a>)e.1186/a>{e.1196/a>.       struct 6a href="+code=dccp_sock" class="sref">dccp_sock6/a>.*6a href="+code=dp" class="sref">dp6/a>.= 6a href="+code=dccp_sk" class="sref">dccp_sk6/a>(6a href="+code=sk" class="sref">sk6/a>);e.1206/a>e.1216/a>.       if (6a href="+code=rx" class="sref">rx6/a>)e.1226/a>.               6a href="+code=dp" class="sref">dp6/a>->6a href="+code=dccps_pcrlen" class="sref">dccps_pcrlen6/a>.= 6a href="+code=cscov" class="sref">cscov6/a>;e.1236/a>.       else {e.1246/a>.               if (6a href="+code=dp" class="sref">dp6/a>->6a href="+code=dccps_pcslen" class="sref">dccps_pcslen6/a>.== 0)e.1256/a>.                       6a href="+code=dp" class="sref">dp6/a>->6a href="+code=dccps_pcslen" class="sref">dccps_pcslen6/a>.= 6a href="+code=cscov" class="sref">cscov6/a>;e.1266/a>.               else if (6a href="+code=cscov" class="sref">cscov6/a> > 6a href="+code=dp" class="sref">dp6/a>->6a href="+code=dccps_pcslen" class="sref">dccps_pcslen6/a>)e.1276/a>.                       6a href="+code=DCCP_WARN" class="sref">DCCP_WARN6/a>(6spal class="string">"CsCov %u too small, peer requires >= %u\n".1286/a>.                                 6a href="+code=dp" class="sref">dp6/a>->6a href="+code=dccps_pcslen" class="sref">dccps_pcslen6/a>, (6a href="+code=u8" class="sref">u86/a>)6a href="+code=cscov" class="sref">cscov6/a>);e.1296/a>.       }e.1306/a>.       return 0;e.1316/a>}e.1326/a>e.1336/a>static calst struct {e.1346/a>.       6a href="+code=u8" class="sref">u86/a>                      6a href="+code=feat_num" class="sref">feat_num6/a>;               6spal class="comment">/* DCCPF_xxx */6/spalue.1356/a>.       enum 6a href="+code=dccp_feat_typ
" class="sref">dccp_feat_typ
6/a>.    6a href="+code=rxtx" class="sref">rxtx6/a>;                   6spal class="comment">/* RX or TX  */6/spalue.1366/a>.       enum 6a href="+code=dccp_feat_typ
" class="sref">dccp_feat_typ
6/a>.    6a href="+code=recalcilia2.2"" class="sref">recalcilia2.2"6/a>;         6spal class="comment">/* SP or NN  */6/spalue.1376/a>.       6a href="+code=u8" class="sref">u86/a>                      6a href="+code=default_	  >
" class="sref">default_	  >
6/a>;          6spal class="comment">/* as in 6.4 */6/spalue.1386/a>.       int (*6a href="+code=ac vva2.2"_hdlr" class="sref">ac vva2.2"_hdlr6/a>)(struct 6a href="+code=sock" class="sref">sock6/a>.*6a href="+code=sk" class="sref">sk6/a>, 6a href="+code=u64" class="sref">u646/a>.6a href="+code=	  " class="sref">	  6/a>, 6a href="+code=bool" class="sref">bool6/a>.6a href="+code=rx" class="sref">rx6/a>);e.1396/a>6spal class="comment">/*6/spalue.14iona>6spal class="comment"> *    Lookup table for loca2val and typ
 of features (from RFC 4340/4342)6/spalue.1416/a>6spal class="comment"> *  +--------------------------+----+-----+----+----+---------+-----------+6/spalue.1426/a>6spal class="comment"> *  | Feature                  | Loca2val | Recalc. | Initial |  Sec val  |6/spalue.1436/a>6spal class="comment"> *. |                          | RX | TX  | SP | NN |  V  >
  | Reference |6/spalue.1446/a>6spal class="comment"> *  +--------------------------+----+-----+----+----+---------+-----------+6/spalue.1456/a>6spal class="comment"> *. | DCCPF_CCID               |    |  X  | X  |    |   2     | 10        |6/spalue.1466/a>6spal class="comment"> *  | DCCPF_SHORT_SEQNOS       |    |  X  | X  |    |   0     |  7 
 1    |6/spalue.1476/a>6spal class="comment"> *  | DCCPF_SEQUENCE_WINDOW    |    |  X  |    | X  | 100     |  7 5.2    |6/spalue.1486/a>6spal class="comment"> *  | DCCPF_ECN_INCAPABLE      | X  |     | X  |    |   0     | 1.1496/a>6spal class="comment"> *  | DCCPF_ACK_RATIO          |    |  X  |    | X  |   2     | 11.3      |6/spalue.15iona>6spal class="comment"> *  | DCCPF_SEND_ACK_VECTOR    | X  |     | X  |    |   0     | 11.5      |6/spalue.1516/a>6spal class="comment"> *  | DCCPF_SEND_NDP_COUNT     |    |  X  | X  |    |   0     |  7 7.2    |6/spalue.1526/a>6spal class="comment"> *  | DCCPF_MIN_CSUM_COVER     | X  |     | X  |    |   0     |  9.2.1    |6/spalue.1536/a>6spal class="comment"> *. | DCCPF_DATA_CHECKSUM      | X  |     | X  |    |   0     |  9.3.1    |6/spalue.1546/a>6spal class="comment"> *  | DCCPF_SEND_LEV_RATE      | X  |     | X  |    |   0     | 4342/8.4  |6/spalue.1556/a>6spal class="comment"> *. +--------------------------+----+-----+----+----+---------+-----------+6/spalue.1566/a>6spal class="comment"> */6/spalue.1576/a>} 6a href="+code=dccp_feat_table" class="sref">dccp_feat_table6/a>[] = {e.1586/a>.       { 6a href="+code=DCCPF_CCID" class="sref">DCCPF_CCID6/a>,            6a href="+code=FEAT_AT_TX" class="sref">FEAT_AT_TX6/a>, 6a href="+code=FEAT_SP" class="sref">FEAT_SP6/a>, 2,   6a href="+code=dccp_hdlr_ccid" class="sref">dccp_hdlr_ccid6/a>     },e.1596/a>.       { 6a href="+code=DCCPF_SHORT_SEQNOS" class="sref">DCCPF_SHORT_SEQNOS6/a>,    6a href="+code=FEAT_AT_TX" class="sref">FEAT_AT_TX6/a>, 6a href="+code=FEAT_SP" class="sref">FEAT_SP6/a>, 0,   6a href="+code=NULL" class="sref">NULL6/a> },e.1606/a>.       { 6a href="+code=DCCPF_SEQUENCE_WINDOW" class="sref">DCCPF_SEQUENCE_WINDOW6/a>, 6a href="+code=FEAT_AT_TX" class="sref">FEAT_AT_TX6/a>, 6a href="+code=FEAT_NN" class="sref">FEAT_NN6/a>, 100, 6a href="+code=dccp_hdlr_seq_win" class="sref">dccp_hdlr_seq_win6/a>  },e.1616/a>.       { 6a href="+code=DCCPF_ECN_INCAPABLE" class="sref">DCCPF_ECN_INCAPABLE6/a>,   6a href="+code=FEAT_AT_RX" class="sref">FEAT_AT_RX6/a>, 6a href="+code=FEAT_SP" class="sref">FEAT_SP6/a>, 0,   6a href="+code=NULL" class="sref">NULL6/a> },e.1626/a>.       { 6a href="+code=DCCPF_ACK_RATIO" class="sref">DCCPF_ACK_RATIO6/a>,       6a href="+code=FEAT_AT_TX" class="sref">FEAT_AT_TX6/a>, 6a href="+code=FEAT_NN" class="sref">FEAT_NN6/a>, 2,   6a href="+code=dccp_hdlr_ack_ra2.2" class="sref">dccp_hdlr_ack_ra2.26/a>},e.1636/a>.       { 6a href="+code=DCCPF_SEND_ACK_VECTOR" class="sref">DCCPF_SEND_ACK_VECTOR6/a>, 6a href="+code=FEAT_AT_RX" class="sref">FEAT_AT_RX6/a>, 6a href="+code=FEAT_SP" class="sref">FEAT_SP6/a>, 0,   6a href="+code=dccp_hdlr_ackvec" class="sref">dccp_hdlr_ackvec6/a>   },e.1646/a>.       { 6a href="+code=DCCPF_SEND_NDP_COUNT" class="sref">DCCPF_SEND_NDP_COUNT6/a>,  6a href="+code=FEAT_AT_TX" class="sref">FEAT_AT_TX6/a>, 6a href="+code=FEAT_SP" class="sref">FEAT_SP6/a>, 0,   6a href="+code=dccp_hdlr_ndp" class="sref">dccp_hdlr_ndp6/a>      },e.1656/a>.       { 6a href="+code=DCCPF_MIN_CSUM_COVER" class="sref">DCCPF_MIN_CSUM_COVER6/a>,  6a href="+code=FEAT_AT_RX" class="sref">FEAT_AT_RX6/a>, 6a href="+code=FEAT_SP" class="sref">FEAT_SP6/a>, 0,   6a href="+code=dccp_hdlr_min_cscov" class="sref">dccp_hdlr_min_cscov6/a>},e.1666/a>.       { 6a href="+code=DCCPF_DATA_CHECKSUM" class="sref">DCCPF_DATA_CHECKSUM6/a>,   6a href="+code=FEAT_AT_RX" class="sref">FEAT_AT_RX6/a>, 6a href="+code=FEAT_SP" class="sref">FEAT_SP6/a>, 0,   6a href="+code=NULL" class="sref">NULL6/a> },e.1676/a>.       { 6a href="+code=DCCPF_SEND_LEV_RATE" class="sref">DCCPF_SEND_LEV_RATE6/a>,   6a href="+code=FEAT_AT_RX" class="sref">FEAT_AT_RX6/a>, 6a href="+code=FEAT_SP" class="sref">FEAT_SP6/a>, 0,   6a href="+code=NULL" class="sref">NULL6/a> },e.1686/a>};e.1696/a>#define 6a href="+code=DCCP_FEAT_SUPPORTED_MAX" class="sref">DCCP_FEAT_SUPPORTED_MAX6/a>         6a href="+code=ARRAY_SIZE" class="sref">ARRAY_SIZE6/a>(6a href="+code=dccp_feat_table" class="sref">dccp_feat_table6/a>)e.1706/a>e.1716/a>6spal class="comment">/**6/spalue.1726/a>6spal class="comment"> * dccp_feat_index  -  Hash func val to map feature number into array posit.2"6/spalue.1736/a>6spal class="comment"> *.Returns calsecutive array index or -1 if the feature is not understood.6/spalue.1746/a>6spal class="comment"> */6/spalue.1756/a>static int 6a href="+code=dccp_feat_index" class="sref">dccp_feat_index6/a>(6a href="+code=u8" class="sref">u86/a> 6a href="+code=feat_num" class="sref">feat_num6/a>)e.1766/a>{e.1776/a>.       6spal class="comment">/* The first 9 entries are occupied by the typ
s from RFC 4340, 6.4 */6/spalue.1786/a>.       if (6a href="+code=feat_num" class="sref">feat_num6/a> > 6a href="+code=DCCPF_RESERVED" class="sref">DCCPF_RESERVED6/a> && 6a href="+code=feat_num" class="sref">feat_num6/a> <= 6a href="+code=DCCPF_DATA_CHECKSUM" class="sref">DCCPF_DATA_CHECKSUM6/a>)e.1796/a>.               return 6a href="+code=feat_num" class="sref">feat_num6/a> - 1;e.1806/a>e.1816/a>.       6spal class="comment">/*6/spalue.1826/a>6spal class="comment">         * Other features: add cases for new feature typ
s here after adding6/spalue.1836/a>6spal class="comment">         * them to the above table.6/spalue.1846/a>6spal class="comment">         */6/spalue.1856/a>.       switch (6a href="+code=feat_num" class="sref">feat_num6/a>) {e.1866/a>.       case 6a href="+code=DCCPF_SEND_LEV_RATE" class="sref">DCCPF_SEND_LEV_RATE6/a>:e.1876/a>.                       return 6a href="+code=DCCP_FEAT_SUPPORTED_MAX" class="sref">DCCP_FEAT_SUPPORTED_MAX6/a> - 1;e.1886/a>.       }e.1896/a>.       return -1;e.1906/a>}e.1916/a>e.1926/a>static 6a href="+code=u8" class="sref">u86/a> 6a href="+code=dccp_feat_typ
" class="sref">dccp_feat_typ
6/a>(6a href="+code=u8" class="sref">u86/a> 6a href="+code=feat_num" class="sref">feat_num6/a>)e.1936/a>{e.1946/a>.       int 6a href="+code=idx" class="sref">idx6/a>.= 6a href="+code=dccp_feat_index" class="sref">dccp_feat_index6/a>(6a href="+code=feat_num" class="sref">feat_num6/a>);e.1956/a>e.1966/a>.       if (6a href="+code=idx" class="sref">idx6/a>.< 0)e.1976/a>.               return 6a href="+code=FEAT_UNKNOWN" class="sref">FEAT_UNKNOWN6/a>;e.1986/a>.       return 6a href="+code=dccp_feat_table" class="sref">dccp_feat_table6/a>[6a href="+code=idx" class="sref">idx6/a>].6a href="+code=recalcilia2.2"" class="sref">recalcilia2.2"6/a>;e.1996/a>}e.2006/a>e.2016/a>static int 6a href="+code=dccp_feat_default_	  >
" class="sref">dccp_feat_default_	  >
6/a>(6a href="+code=u8" class="sref">u86/a> 6a href="+code=feat_num" class="sref">feat_num6/a>)e.2026/a>{e.2036/a>.       int 6a href="+code=idx" class="sref">idx6/a>.= 6a href="+code=dccp_feat_index" class="sref">dccp_feat_index6/a>(6a href="+code=feat_num" class="sref">feat_num6/a>);e.2046/a>.       6spal class="comment">/*6/spalue.2056/a>6spal class="comment">         * There are no default 	  >
s
for unknown features, so encountering a6/spalue.2066/a>6spal class="comment">         * negative index here indica2es a serious problem somewhere else.6/spalue.2076/a>6spal class="comment">         */6/spalue.2086/a>.       6a href="+code=DCCP_BUG_ON" class="sref">DCCP_BUG_ON6/a>(6a href="+code=idx" class="sref">idx6/a>.< 0);e.2096/a>e.2106/a>.       return 6a href="+code=idx" class="sref">idx6/a>.< 0 ? 0 : 6a href="+code=dccp_feat_table" class="sref">dccp_feat_table6/a>[6a href="+code=idx" class="sref">idx6/a>].6a href="+code=default_	  >
" class="sref">default_	  >
6/a>;e.2116/a>}e.2126/a>e.2136/a>6spal class="comment">/*6/spalue.2146/a>6spal class="comment"> *      Debugging and verbose-printing sec val6/spalue.2156/a>6spal class="comment"> */6/spalue.2166/a>static calst char.*6a href="+code=dccp_feat_fnam
" class="sref">dccp_feat_fnam
6/a>(calst 6a href="+code=u8" class="sref">u86/a> 6a href="+code=feat" class="sref">feat6/a>)e.2176/a>{e.2186/a>.       static calst char.*calst 6a href="+code=feature_nam
s" class="sref">feature_nam
s6/a>[] = {e.2196/a>.               [6a href="+code=DCCPF_RESERVED" class="sref">DCCPF_RESERVED6/a>]        = 6spal class="string">"Reserved".2206/a>.               [6a href="+code=DCCPF_CCID" class="sref">DCCPF_CCID6/a>]            = 6spal class="string">"CCID".2216/a>.               [6a href="+code=DCCPF_SHORT_SEQNOS" class="sref">DCCPF_SHORT_SEQNOS6/a>]    = 6spal class="string">"Allow Short Seqnos".2226/a>.               [6a href="+code=DCCPF_SEQUENCE_WINDOW" class="sref">DCCPF_SEQUENCE_WINDOW6/a>] = 6spal class="string">"Sequence Window".2236/a>.               [6a href="+code=DCCPF_ECN_INCAPABLE" class="sref">DCCPF_ECN_INCAPABLE6/a>]   = 6spal class="string">"ECN Incapable".2246/a>.               [6a href="+code=DCCPF_ACK_RATIO" class="sref">DCCPF_ACK_RATIO6/a>]       = 6spal class="string">"Ack Ra2.2".2256/a>.               [6a href="+code=DCCPF_SEND_ACK_VECTOR" class="sref">DCCPF_SEND_ACK_VECTOR6/a>] = 6spal class="string">"Send ACK Vec or".2266/a>.               [6a href="+code=DCCPF_SEND_NDP_COUNT" class="sref">DCCPF_SEND_NDP_COUNT6/a>]  = 6spal class="string">"Send NDP Count".2276/a>.               [6a href="+code=DCCPF_MIN_CSUM_COVER" class="sref">DCCPF_MIN_CSUM_COVER6/a>]  = 6spal class="string">"Min. Csum Coverage".2286/a>.               [6a href="+code=DCCPF_DATA_CHECKSUM" class="sref">DCCPF_DATA_CHECKSUM6/a>]   = 6spal class="string">"Send Data Checksum".2296/a>.       };e.2306/a>.       if (6a href="+code=feat" class="sref">feat6/a> > 6a href="+code=DCCPF_DATA_CHECKSUM" class="sref">DCCPF_DATA_CHECKSUM6/a> && 6a href="+code=feat" class="sref">feat6/a> < 6a href="+code=DCCPF_MIN_CCID_SPECIFIC" class="sref">DCCPF_MIN_CCID_SPECIFIC6/a>)e.2316/a>.               return 6a href="+code=feature_nam
s" class="sref">feature_nam
s6/a>[6a href="+code=DCCPF_RESERVED" class="sref">DCCPF_RESERVED6/a>];e.2326/a>e.2336/a>.       if (6a href="+code=feat" class="sref">feat6/a> ==  6a href="+code=DCCPF_SEND_LEV_RATE" class="sref">DCCPF_SEND_LEV_RATE6/a>)e.2346/a>.               return 6spal class="string">"Send Loss Event Ra2e".2356/a>.       if (6a href="+code=feat" class="sref">feat6/a> >= 6a href="+code=DCCPF_MIN_CCID_SPECIFIC" class="sref">DCCPF_MIN_CCID_SPECIFIC6/a>)e.2366/a>.               return 6spal class="string">"CCID-specific".2376/a>e.2386/a>.       return 6a href="+code=feature_nam
s" class="sref">feature_nam
s6/a>[6a href="+code=feat" class="sref">feat6/a>];e.2396/a>}e.2406/a>e.2416/a>static calst char.*calst 6a href="+code=dccp_feat_snam
" class="sref">dccp_feat_snam
6/a>[] = {e.2426/a>.       6spal class="string">"DEFAULT""INITIALISING""CHANGING""UNSTABLE""STABLE".2436/a>};e.2446/a>e.2456/a>#ifdef 6a href="+code=CONFIG_IP_DCCP_DEBUG" class="sref">CONFIG_IP_DCCP_DEBUG6/a>e.2466/a>static calst char.*6a href="+code=dccp_feat_onam
" class="sref">dccp_feat_onam
6/a>(calst 6a href="+code=u8" class="sref">u86/a> 6a href="+code=opt" class="sref">opt6/a>)e.2476/a>{e.2486/a>.       switch (6a href="+code=opt" class="sref">opt6/a>) {e.2496/a>.       case 6a href="+code=DCCPO_CHANGE_L" class="sref">DCCPO_CHANGE_L6/a>:  return 6spal class="string">"Change_L".2506/a>.       case 6a href="+code=DCCPO_CONFIRM_L" class="sref">DCCPO_CONFIRM_L6/a>: return 6spal class="string">"Confirm_L".2516/a>.       case 6a href="+code=DCCPO_CHANGE_R" class="sref">DCCPO_CHANGE_R6/a>:  return 6spal class="string">"Change_R".2526/a>.       case 6a href="+code=DCCPO_CONFIRM_R" class="sref">DCCPO_CONFIRM_R6/a>: return 6spal class="string">"Confirm_R".2536/a>.       }e.2546/a>.       return 6a href="+code=NULL" class="sref">NULL6/a>;e.2556/a>}e.2566/a>e.2576/a>static void 6a href="+code=dccp_feat_print	  " class="sref">dccp_feat_print	  6/a>(6a href="+code=u8" class="sref">u86/a> 6a href="+code=feat_num" class="sref">feat_num6/a>, 6a href="+code=dccp_feat_	  " class="sref">dccp_feat_	  6/a> calst *6a href="+code=	  " class="sref">	  6/a>)e.2586/a>{e.2596/a>.       6a href="+code=u8" class="sref">u86/a> 6a href="+code=i" class="sref">i6/a>, 6a href="+code=typ
" class="sref">typ
6/a>.= 6a href="+code=dccp_feat_typ
" class="sref">dccp_feat_typ
6/a>(6a href="+code=feat_num" class="sref">feat_num6/a>);e.2606/a>e.2616/a>.       if (6a href="+code=	  " class="sref">	  6/a>.== 6a href="+code=NULL" class="sref">NULL6/a> || (6a href="+code=typ
" class="sref">typ
6/a>.== 6a href="+code=FEAT_SP" class="sref">FEAT_SP6/a> && 6a href="+code=	  " class="sref">	  6/a>->6a href="+code=sp" class="sref">sp6/a>.6a href="+code=vec" class="sref">vec6/a>.== 6a href="+code=NULL" class="sref">NULL6/a>))e.2626/a>.               6a href="+code=dccp_pr_debug_cat" class="sref">dccp_pr_debug_cat6/a>(6spal class="string">"(NULL)".2636/a>.       else if (6a href="+code=typ
" class="sref">typ
6/a>.== 6a href="+code=FEAT_SP" class="sref">FEAT_SP6/a>)e.2646/a>.               for (6a href="+code=i" class="sref">i6/a>.= 0; 6a href="+code=i" class="sref">i6/a>.< 6a href="+code=	  " class="sref">	  6/a>->6a href="+code=sp" class="sref">sp6/a>.6a href="+code=len" class="sref">len6/a>; 6a href="+code=i" class="sref">i6/a>++)e.2656/a>.                       6a href="+code=dccp_pr_debug_cat" class="sref">dccp_pr_debug_cat6/a>(6spal class="string">"%s%u"i6/a>.? 6spal class="string">" """	  6/a>->6a href="+code=sp" class="sref">sp6/a>.6a href="+code=vec" class="sref">vec6/a>[6a href="+code=i" class="sref">i6/a>]);e.2666/a>.       else if (6a href="+code=typ
" class="sref">typ
6/a>.== 6a href="+code=FEAT_NN" class="sref">FEAT_NN6/a>)e.2676/a>.               6a href="+code=dccp_pr_debug_cat" class="sref">dccp_pr_debug_cat6/a>(6spal class="string">"%llu"	  6/a>->6a href="+code=nn" class="sref">nn6/a>);e.2686/a>.       elsee.2696/a>.               6a href="+code=dccp_pr_debug_cat" class="sref">dccp_pr_debug_cat6/a>(6spal class="string">"unknown typ
 %u"typ
6/a>);e.2706/a>}e.2716/a>e.2726/a>static void 6a href="+code=dccp_feat_print	  s" class="sref">dccp_feat_print	  s6/a>(6a href="+code=u8" class="sref">u86/a> 6a href="+code=feat_num" class="sref">feat_num6/a>, 6a href="+code=u8" class="sref">u86/a> *6a href="+code=list" class="sref">list6/a>, 6a href="+code=u8" class="sref">u86/a> 6a href="+code=len" class="sref">len6/a>)e.2736/a>{e.2746/a>.       6a href="+code=u8" class="sref">u86/a> 6a href="+code=typ
" class="sref">typ
6/a>.= 6a href="+code=dccp_feat_typ
" class="sref">dccp_feat_typ
6/a>(6a href="+code=feat_num" class="sref">feat_num6/a>);e.2756/a>.       6a href="+code=dccp_feat_	  " class="sref">dccp_feat_	  6/a> 6a href="+code=f	  " class="sref">f	  6/a>.= { .6a href="+code=sp" class="sref">sp6/a>.6a href="+code=vec" class="sref">vec6/a>.= 6a href="+code=list" class="sref">list6/a>, .6a href="+code=sp" class="sref">sp6/a>.6a href="+code=len" class="sref">len6/a>.= 6a href="+code=len" class="sref">len6/a>.};e.2766/a>e.2776/a>.       if (6a href="+code=typ
" class="sref">typ
6/a>.== 6a href="+code=FEAT_NN" class="sref">FEAT_NN6/a>)e.2786/a>.               6a href="+code=f	  " class="sref">f	  6/a>.6a href="+code=nn" class="sref">nn6/a>.= 6a href="+code=dccp_decode_	  >
_	 r" class="sref">dccp_decode_	  >
_	 r6/a>(6a href="+code=list" class="sref">list6/a>, 6a href="+code=len" class="sref">len6/a>);e.2796/a>.       6a href="+code=dccp_feat_print	  " class="sref">dccp_feat_print	  6/a>(6a href="+code=feat_num" class="sref">feat_num6/a>, &6a href="+code=f	  " class="sref">f	  6/a>);e.2806/a>}e.2816/a>e.2826/a>static void 6a href="+code=dccp_feat_print_entry" class="sref">dccp_feat_print_entry6/a>(struct 6a href="+code=dccp_feat_entry" class="sref">dccp_feat_entry6/a> calst *6a href="+code=entry" class="sref">entry6/a>)e.2836/a>{e.2846/a>.       6a href="+code=dccp_debug" class="sref">dccp_debug6/a>(6spal class="string">"   * %s %s = "entry6/a>->6a href="+code=is_loca " class="sref">is_loca 6/a>.? 6spal class="string">"loca ""remote".2856/a>.                                   6a href="+code=dccp_feat_fnam
" class="sref">dccp_feat_fnam
6/a>(6a href="+code=entry" class="sref">entry6/a>->6a href="+code=feat_num" class="sref">feat_num6/a>));e.2866/a>.       6a href="+code=dccp_feat_print	  " class="sref">dccp_feat_print	  6/a>(6a href="+code=entry" class="sref">entry6/a>->6a href="+code=feat_num" class="sref">feat_num6/a>, &6a href="+code=entry" class="sref">entry6/a>->6a href="+code=	  " class="sref">	  6/a>);e.2876/a>.       6a href="+code=dccp_pr_debug_cat" class="sref">dccp_pr_debug_cat6/a>(6spal class="string">", state=%s %s\n"dccp_feat_snam
6/a>[6a href="+code=entry" class="sref">entry6/a>->6a href="+code=state" class="sref">state6/a>],e.2886/a>.                         6a href="+code=entry" class="sref">entry6/a>->6a href="+code=needs_confirm" class="sref">needs_confirm6/a>.? 6spal class="string">"(Confirm pending)""".2896/a>}e.2906/a>e.2916/a>#define 6a href="+code=dccp_feat_print_opt" class="sref">dccp_feat_print_opt6/a>(6a href="+code=opt" class="sref">opt6/a>, 6a href="+code=feat" class="sref">feat6/a>, 6a href="+code=	  " class="sref">	  6/a>, 6a href="+code=len" class="sref">len6/a>, 6a href="+code=mandatory" class="sref">mandatory6/a>)     do {          \e.2926/a>.       6a href="+code=dccp_pr_debug" class="sref">dccp_pr_debug6/a>(6spal class="string">"%s(%s, "dccp_feat_onam
6/a>(6a href="+code=opt" class="sref">opt6/a>), 6a href="+code=dccp_feat_fnam
" class="sref">dccp_feat_fnam
6/a>(6a href="+code=feat" class="sref">feat6/a>));\e.2936/a>.       6a href="+code=dccp_feat_print	  s" class="sref">dccp_feat_print	  s6/a>(6a href="+code=feat" class="sref">feat6/a>, 6a href="+code=	  " class="sref">	  6/a>, 6a href="+code=len" class="sref">len6/a>);                                  \e.2946/a>.       6a href="+code=dccp_pr_debug_cat" class="sref">dccp_pr_debug_cat6/a>(6spal class="string">") %s\n"mandatory6/a>.? 6spal class="string">"!""".2956/a>e.2966/a>#define 6a href="+code=dccp_feat_print_fnlist" class="sref">dccp_feat_print_fnlist6/a>(6a href="+code=fn_list" class="sref">fn_list6/a>)  {              \e.2976/a>.       calst struct 6a href="+code=dccp_feat_entry" class="sref">dccp_feat_entry6/a> *6a href="+code=___entry" class="sref">___entry6/a>;         \e.2986/a>.                                                       \e.2996/a>.       6a href="+code=dccp_pr_debug" class="sref">dccp_pr_debug6/a>(6spal class="string">"List Dump:\n".3006/a>.       6a href="+code=list_for_each_entry" class="sref">list_for_each_entry6/a>(6a href="+code=___entry" class="sref">___entry6/a>, 6a href="+code=fn_list" class="sref">fn_list6/a>, 6a href="+code=node" class="sref">node6/a>)    \e.3016/a>.               6a href="+code=dccp_feat_print_entry" class="sref">dccp_feat_print_entry6/a>(6a href="+code=___entry" class="sref">___entry6/a>);        \e.3026/a>}e.3036/a>#else   6spal class="comment">/* ! CONFIG_IP_DCCP_DEBUG */6/spalue.3046/a>#define 6a href="+code=dccp_feat_print_opt" class="sref">dccp_feat_print_opt6/a>(6a href="+code=opt" class="sref">opt6/a>, 6a href="+code=feat" class="sref">feat6/a>, 6a href="+code=	  " class="sref">	  6/a>, 6a href="+code=len" class="sref">len6/a>, 6a href="+code=mandatory" class="sref">mandatory6/a>)e.3056/a>#define 6a href="+code=dccp_feat_print_fnlist" class="sref">dccp_feat_print_fnlist6/a>(6a href="+code=fn_list" class="sref">fn_list6/a>)e.3066/a>#endife.3076/a>e.3086/a>static int 6a href="+code=__dccp_feat_activate" class="sref">__dccp_feat_activate6/a>(struct 6a href="+code=sock" class="sref">sock6/a> *6a href="+code=sk" class="sref">sk6/a>, calst int 6a href="+code=idx" class="sref">idx6/a>,e.3096/a>.                               calst 6a href="+code=boo " class="sref">boo 6/a> 6a href="+code=is_loca " class="sref">is_loca 6/a>, 6a href="+code=dccp_feat_	  " class="sref">dccp_feat_	  6/a> calst *6a href="+code=f	  " class="sref">f	  6/a>)e.3106/a>{e.3116/a>.       6a href="+code=boo " class="sref">boo 6/a> 6a href="+code=rx" class="sref">rx6/a>;e.3126/a>.       6a href="+code=u64" class="sref">u646/a>.6a href="+code=	  " class="sref">	  6/a>;e.3136/a>e.3146/a>.       if (6a href="+code=idx" class="sref">idx6/a>.< 0 || 6a href="+code=idx" class="sref">idx6/a>.>= 6a href="+code=DCCP_FEAT_SUPPORTED_MAX" class="sref">DCCP_FEAT_SUPPORTED_MAX6/a>)e.3156/a>.               return -1;e.3166/a>.       if (6a href="+code=dccp_feat_table" class="sref">dccp_feat_table6/a>[6a href="+code=idx" class="sref">idx6/a>].6a href="+code=activation_hdlr" class="sref">activation_hdlr6/a>.== 6a href="+code=NULL" class="sref">NULL6/a>)e.3176/a>.               return 0;e.3186/a>e.3196/a>.       if (6a href="+code=f	  " class="sref">f	  6/a>.== 6a href="+code=NULL" class="sref">NULL6/a>) {e.3206/a>.               6a href="+code=	  " class="sref">	  6/a>.= 6a href="+code=dccp_feat_table" class="sref">dccp_feat_table6/a>[6a href="+code=idx" class="sref">idx6/a>].6a href="+code=default_	  >
" class="sref">default_	  >
6/a>;e.3216/a>.       } else if (6a href="+code=dccp_feat_table" class="sref">dccp_feat_table6/a>[6a href="+code=idx" class="sref">idx6/a>].6a href="+code=recalcilia2.2"" class="sref">recalcilia2.2"6/a>.== 6a href="+code=FEAT_SP" class="sref">FEAT_SP6/a>) {e.3226/a>.               if (6a href="+code=f	  " class="sref">f	  6/a>->6a href="+code=sp" class="sref">sp6/a>.6a href="+code=vec" class="sref">vec6/a>.== 6a href="+code=NULL" class="sref">NULL6/a>) {e.3236/a>.                       6spal class="comment">/*6/spalue.3246/a>6spal class="comment">                         * This cal happen when al empty Confirm is sent6/spalue.3256/a>6spal class="comment">                         * for al SP (i.e. known) feature. In this case6/spalue.3266/a>6spal class="comment">                         * we would be using the default anyway.6/spalue.3276/a>6spal class="comment">                         */6/spalue.3286/a>.                       6a href="+code=DCCP_CRIT" class="sref">DCCP_CRIT6/a>(6spal class="string">"Feature #%d undefined: using default"idx6/a>);e.3296/a>.                       6a href="+code=	  " class="sref">	  6/a>.= 6a href="+code=dccp_feat_table" class="sref">dccp_feat_table6/a>[6a href="+code=idx" class="sref">idx6/a>].6a href="+code=default_	  >
" class="sref">default_	  >
6/a>;e.3306/a>.               } else {e.3316/a>.                       6a href="+code=	  " class="sref">	  6/a>.= 6a href="+code=f	  " class="sref">f	  6/a>->6a href="+code=sp" class="sref">sp6/a>.6a href="+code=vec" class="sref">vec6/a>[0];e.3326/a>.               }e.3336/a>.       } else {e.3346/a>.               6a href="+code=	  " class="sref">	  6/a>.= 6a href="+code=f	  " class="sref">f	  6/a>->6a href="+code=nn" class="sref">nn6/a>;e.3356/a>.       }e.3366/a>e.3376/a>.       6spal class="comment">/* Loca2.2" is RX if this is a loca -RX or remote-TX feature */6/spalue.3386/a>.       6a href="+code=rx" class="sref">rx6/a>.= (6a href="+code=is_loca " class="sref">is_loca 6/a>.== (6a href="+code=dccp_feat_table" class="sref">dccp_feat_table6/a>[6a href="+code=idx" class="sref">idx6/a>].6a href="+code=rxtx" class="sref">rxtx6/a>.== 6a href="+code=FEAT_AT_RX" class="sref">FEAT_AT_RX6/a>));e.3396/a>e.3406/a>.       6a href="+code=dccp_debug" class="sref">dccp_debug6/a>(6spal class="string">"   -> activating %s %s, %s	  =%llu\n"rx6/a>.? 6spal class="string">"RX""TX".3416/a>.                  6a href="+code=dccp_feat_fnam
" class="sref">dccp_feat_fnam
6/a>(6a href="+code=dccp_feat_table" class="sref">dccp_feat_table6/a>[6a href="+code=idx" class="sref">idx6/a>].6a href="+code=feat_num" class="sref">feat_num6/a>),e.3426/a>.                  6a href="+code=f	  " class="sref">f	  6/a>.? 6spal class="string">"""default "	  6/a>);e.3436/a>e.3446/a>.       return 6a href="+code=dccp_feat_table" class="sref">dccp_feat_table6/a>[6a href="+code=idx" class="sref">idx6/a>].6a href="+code=activation_hdlr" class="sref">activation_hdlr6/a>(6a href="+code=sk" class="sref">sk6/a>, 6a href="+code=	  " class="sref">	  6/a>, 6a href="+code=rx" class="sref">rx6/a>);e.3456/a>}e.3466/a>e.3476/a>6spal class="comment">/**6/spalue.3486/a>6spal class="comment"> * dccp_feat_activate  -  Activate feature 	  >
 2" socket6/spalue.3496/a>6spal class="comment"> * @sk: fully calnected DCCP socket (after handshake is complete)6/spalue.3506/a>6spal class="comment"> * @feat_num: feature to activate, 2"
 2f %dccp_feature_numbers6/spalue.3516/a>6spal class="comment"> * @loca : whether loca  (1) or remote (0) @feat_num is meant6/spalue.3526/a>6spal class="comment"> * @fva : the 	  >
 (SP or NN) to activate, 2r NULL to use the default 	  >
6/spalue.3536/a>6spal class="comment"> *6/spalue.3546/a>6spal class="comment"> * F2r genera  use this func2.2" is preferable over __dccp_feat_activate().6/spalue.3556/a>6spal class="comment"> */6/spalue.3566/a>static int 6a href="+code=dccp_feat_activate" class="sref">dccp_feat_activate6/a>(struct 6a href="+code=sock" class="sref">sock6/a> *6a href="+code=sk" class="sref">sk6/a>, 6a href="+code=u8" class="sref">u86/a> 6a href="+code=feat_num" class="sref">feat_num6/a>, 6a href="+code=boo " class="sref">boo 6/a> 6a href="+code=loca " class="sref">loca 6/a>,e.3576/a>.                             6a href="+code=dccp_feat_	  " class="sref">dccp_feat_	  6/a> calst *6a href="+code=f	  " class="sref">f	  6/a>)e.3586/a>{e.3596/a>.       return 6a href="+code=__dccp_feat_activate" class="sref">__dccp_feat_activate6/a>(6a href="+code=sk" class="sref">sk6/a>, 6a href="+code=dccp_feat_index" class="sref">dccp_feat_index6/a>(6a href="+code=feat_num" class="sref">feat_num6/a>), 6a href="+code=loca " class="sref">loca 6/a>, 6a href="+code=f	  " class="sref">f	  6/a>);e.3606/a>}e.3616/a>e.3626/a>6spal class="comment">/* Test for "Req'd" feature (RFC 4340, 6.4) */6/spalue.3636/a>static 6a href="+code=inline" class="sref">inline6/a>.int 6a href="+code=dccp_feat_must_be_understood" class="sref">dccp_feat_must_be_understood6/a>(6a href="+code=u8" class="sref">u86/a> 6a href="+code=feat_num" class="sref">feat_num6/a>)e.3646/a>{e.3656/a>.       return  6a href="+code=feat_num" class="sref">feat_num6/a>.== 6a href="+code=DCCPF_CCID" class="sref">DCCPF_CCID6/a> || 6a href="+code=feat_num" class="sref">feat_num6/a>.== 6a href="+code=DCCPF_SHORT_SEQNOS" class="sref">DCCPF_SHORT_SEQNOS6/a> ||e.3666/a>.               6a href="+code=feat_num" class="sref">feat_num6/a>.== 6a href="+code=DCCPF_SEQUENCE_WINDOW" class="sref">DCCPF_SEQUENCE_WINDOW6/a>;e.3676/a>}e.3686/a>e.3696/a>6spal class="comment">/* copy calstructor, f	   must not already caltain allocated memory */6/spalue.3706/a>static int 6a href="+code=dccp_feat_cl2"
_sp_	  " class="sref">dccp_feat_cl2"
_sp_	  6/a>(6a href="+code=dccp_feat_	  " class="sref">dccp_feat_	  6/a> *6a href="+code=f	  " class="sref">f	  6/a>, 6a href="+code=u8" class="sref">u86/a> calst *6a href="+code=	  " class="sref">	  6/a>, 6a href="+code=u8" class="sref">u86/a> 6a href="+code=len" class="sref">len6/a>)e.3716/a>{e.3726/a>.       6a href="+code=f	  " class="sref">f	  6/a>->6a href="+code=sp" class="sref">sp6/a>.6a href="+code=len" class="sref">len6/a>.= 6a href="+code=len" class="sref">len6/a>;e.3736/a>.       if (6a href="+code=f	  " class="sref">f	  6/a>->6a href="+code=sp" class="sref">sp6/a>.6a href="+code=len" class="sref">len6/a>.> 0) {e.3746/a>.               6a href="+code=f	  " class="sref">f	  6/a>->6a href="+code=sp" class="sref">sp6/a>.6a href="+code=vec" class="sref">vec6/a>.= 6a href="+code=kmemdup" class="sref">kmemdup6/a>(6a href="+code=	  " class="sref">	  6/a>, 6a href="+code=len" class="sref">len6/a>, 6a href="+code=gfp_any" class="sref">gfp_any6/a>());e.3756/a>.               if (6a href="+code=f	  " class="sref">f	  6/a>->6a href="+code=sp" class="sref">sp6/a>.6a href="+code=vec" class="sref">vec6/a>.== 6a href="+code=NULL" class="sref">NULL6/a>) {e.3766/a>.               .       6a href="+code=f	  " class="sref">f	  6/a>->6a href="+code=sp" class="sref">sp6/a>.6a href="+code=len" class="sref">len6/a>.= 0;e.3776/a>.                       return -6a href="+code=ENOBUFS" class="sref">ENOBUFS6/a>;e.3786/a>.               }e.3796/a>.       }e.3806/a>.       return 0;e.3816/a>}e.3826/a>e.3836/a>static void 6a href="+code=dccp_feat_	  _destructor" class="sref">dccp_feat_	  _destructor6/a>(6a href="+code=u8" class="sref">u86/a> 6a href="+code=feat_num" class="sref">feat_num6/a>, 6a href="+code=dccp_feat_	  " class="sref">dccp_feat_	  6/a> *6a href="+code=	  " class="sref">	  6/a>)e.3846/a>{e.3856/a>.       if (6a href="+code=unlikely" class="sref">unlikely6/a>(6a href="+code=	  " class="sref">	  6/a>.== 6a href="+code=NULL" class="sref">NULL6/a>))e.3866/a>.               return;e.3876/a>.       if (6a href="+code=dccp_feat_typ
" class="sref">dccp_feat_typ
6/a>(6a href="+code=feat_num" class="sref">feat_num6/a>).== 6a href="+code=FEAT_SP" class="sref">FEAT_SP6/a>)e.3886/a>.               6a href="+code=kfre
" class="sref">kfre
6/a>(6a href="+code=	  " class="sref">	  6/a>->6a href="+code=sp" class="sref">sp6/a>.6a href="+code=vec" class="sref">vec6/a>);e.3896/a>.       6a href="+code=memset" class="sref">memset6/a>(6a href="+code=	  " class="sref">	  6/a>, 0, sizeof(*6a href="+code=	  " class="sref">	  6/a>));e.3906/a>}e.3916/a>e.3926/a>static struct 6a href="+code=dccp_feat_entry" class="sref">dccp_feat_entry6/a> *e.3936/a>.             6a href="+code=dccp_feat_cl2"
_entry" class="sref">dccp_feat_cl2"
_entry6/a>(struct 6a href="+code=dccp_feat_entry" class="sref">dccp_feat_entry6/a> calst *6a href="+code=origin  " class="sref">origin  6/a>)e.3946/a>{e.3956/a>.       struct 6a href="+code=dccp_feat_entry" class="sref">dccp_feat_entry6/a> *6a href="+code=new" class="sref">new6/a>;e.3966/a>.       6a href="+code=u8" class="sref">u86/a> 6a href="+code=typ
" class="sref">typ
6/a>.= 6a href="+code=dccp_feat_typ
" class="sref">dccp_feat_typ
6/a>(6a href="+code=origin  " class="sref">origin  6/a>->6a href="+code=feat_num" class="sref">feat_num6/a>);e.3976/a>e.3986/a>.       if (6a href="+code=typ
" class="sref">typ
6/a>.== 6a href="+code=FEAT_UNKNOWN" class="sref">FEAT_UNKNOWN6/a>)e.3996/a>.               return 6a href="+code=NULL" class="sref">NULL6/a>;e.4006/a>e.4016/a>.       6a href="+code=new" class="sref">new6/a>.= 6a href="+code=kmemdup" class="sref">kmemdup6/a>(6a href="+code=origin  " class="sref">origin  6/a>, sizeof(struct 6a href="+code=dccp_feat_entry" class="sref">dccp_feat_entry6/a>), 6a href="+code=gfp_any" class="sref">gfp_any6/a>());e.4026/a>.       if (6a href="+code=new" class="sref">new6/a>.== 6a href="+code=NULL" class="sref">NULL6/a>)e.4036/a>.               return 6a href="+code=NULL" class="sref">NULL6/a>;e.4046/a>e.4056/a>.       if (6a href="+code=typ
" class="sref">typ
6/a>.== 6a href="+code=FEAT_SP" class="sref">FEAT_SP6/a> && 6a href="+code=dccp_feat_cl2"
_sp_	  " class="sref">dccp_feat_cl2"
_sp_	  6/a>(&6a href="+code=new" class="sref">new6/a>->6a href="+code=	  " class="sref">	  6/a>,e.4066/a>.               .                                     6a href="+code=origin  " class="sref">origin  6/a>->6a href="+code=	  " class="sref">	  6/a>.6a href="+code=sp" class="sref">sp6/a>.6a href="+code=vec" class="sref">vec6/a>,e.4076/a>.                                                     6a href="+code=origin  " class="sref">origin  6/a>->6a href="+code=	  " class="sref">	  6/a>.6a href="+code=sp" class="sref">sp6/a>.6a href="+code=len" class="sref">len6/a>)) {e.4086/a>.               6a href="+code=kfre
" class="sref">kfre
6/a>(6a href="+code=new" class="sref">new6/a>);e.4096/a>.               return 6a href="+code=NULL" class="sref">NULL6/a>;e.4106/a>.       }e.4116/a>.       return 6a href="+code=new" class="sref">new6/a>;e.4126/a>}e.4136/a>e.4146/a>static void 6a href="+code=dccp_feat_entry_destructor" class="sref">dccp_feat_entry_destructor6/a>(struct 6a href="+code=dccp_feat_entry" class="sref">dccp_feat_entry6/a> *6a href="+code=entry" class="sref">entry6/a>)e.4156/a>{e.4166/a>.       if (6a href="+code=entry" class="sref">entry6/a> != 6a href="+code=NULL" class="sref">NULL6/a>) {e.4176/a>.               6a href="+code=dccp_feat_	  _destructor" class="sref">dccp_feat_	  _destructor6/a>(6a href="+code=entry" class="sref">entry6/a>->6a href="+code=feat_num" class="sref">feat_num6/a>, &6a href="+code=entry" class="sref">entry6/a>->6a href="+code=	  " class="sref">	  6/a>);e.4186/a>.               6a href="+code=kfre
" class="sref">kfre
6/a>(6a href="+code=entry" class="sref">entry6/a>);e.4196/a>.       }e.4206/a>}e.4216/a>e.4226/a>6spal class="comment">/*6/spalue.4236/a>6spal class="comment"> * List management func2.2"s6/spalue.4246/a>6spal class="comment"> *6/spalue.4256/a>6spal class="comment"> * Feature negotia2.2" lists rely 2" and mailtain the following invariants:6/spalue.4266/a>6spal class="comment"> * - each feat_num in the list is known, i.e. we know its typ
 and default 	  >
6/spalue.4276/a>6spal class="comment"> * - each feat_num/is_loca  combin 2.2" is uniq>
 (old entries are overwritten)6/spalue.426/a>->6a27">.4276/a>6spal clasin  6/a>, sizeof(struct 67a>.426/a>->6a27">.4276/a	  6/a>)k >ensh:6/p/feat.c#L4/dccp/feat.c#L317" id  L428">.426//a>.                       6a hre4="+co42lnected DCCP socket (after han-efault 	 sor.c#L anincreadx" corderf="nnet/dccp1" id  (fastnt6/sokup L4/dccp/feat.c#L317" id  L428">.4266/a>.    4          } else {e.3746/a>.    4                  6a hre4="+co4e=	  "      return;e.421de=	  " class="sref">	  6/ref">new6/a>);e.33264a>.  4            }eu86/a> 6a href="+code=feat_num" class="sref">feat_num6/a>, 6a href="+code=dccp_feat_s="sref">boo 6/a> 6a href="+code=is_loca " class="sref">is_loca 6/a>, 6a href="net/dccp/feat.c#L415" id  L433" class4"line" nam
  L333">.33364a>.  43href="net/dccp/feat.c#L284" id  L434" class4"line" nam
  L334">.33464a>.  4            6ahref="+code=dccp_feat_entry" class="sref">dccp_feat_entry6/a> *6a href="+code=entry" class="sref">entry6/a>)e.33564a>.  43ref="net/dccp/feat.c#L296" id  L436" class4"line" nam
  L336">.33664a>elist_for_each_entry6/a>(6a href="+code=___entry" ss="sref">entry6/a>)efn_list6/a>, 6a href="+code=node" class="sref">node6/a>)    \e.33764a>.  43           6a href="+f="+code=entry" class="sref">entry6/a> != 6a hreef="+code=feat_num" class="sref">feat_num6/a>, &6a f="+code=FEAT_SP" cclass="sref">feat_num6/a>, &6a f 6a href="+code=dccp_feat_ss="sref">entry6/a>->6a href="+code=is_loca " class="sref">is_loca 6/a>.? 6spal cl="+code=FEAT_SP" cclass="sref">is_loca 6/a>, 6a href="net/dccp/feat.c#L415" id  L43dccp/feat"line" nam
  L338">.33864a>.  43                   6a href="+href="+code=new" classss="sref">entry6/a>)e.33964a>eentry6/a> != 6a hreef="+code=feat_num" class="sref">feat_num6/a>, &6a ffeat_num6/a>);e.34064a>.  44           } else {e<<<<<<<<.34164a>.  4              "net/dccp/feat.c#L421" id  L442" class4"line" nam
  L342">.34264a>.  4              href="+code=NULL" class="sref">NULL6/a>;e.34364a>e.34464a>.  44ref="net/dccp/feat.c#L405" id  L445" class4"line" nam
  L345">.34564a>}e<44 class="comment"> * Featuree.34664a>e * - each feaentry_destructornewate fCruct2.22lnecupde 	 rout L3 (a hlP sb>6 o (1)sf="nnet/dccp1" id  (fastnt6/sokup L447" class4"line" nam
  L347">.34764a>6sp4l class="comment">/**6/spaluthe ew6/: 22lnece, 2ddce,="nnet/dccp1" id  (fastnt6/sokup L44dccp/feat"line" nam
  L348">.34864a>6sp4l class="comment"> * dccp_feat_is me: 2 	 sor.c#L ani="nnet/dccp1" id  (fastnt6/sokup L44dccp/feat"line" nam
  L349">.34964a>6sp4l class="comment"> * @sk: fully ther loca  (1) s knor remote (0) @feat_ 	 sor.cwithc#L aninis me/spalue.35064a>6sp4l class="comment"> * @feat_num href="net/dccp/feat.c#L352" id  L451" class4"line" nam
  L351">.35164a>6sp4l class="comment"> * @loca : whToca -RXs knonltor, f	   muslt 	 serv(ste, ensivate knabn)6s:6/spalue.35264a>6sp4l class="comment"> * @fva : thne43ature to activate, 2"
 2f  L353" class4"line" nam
  L353">.35364a>6sp45c void 6a hrhref="+code=dccp_feat_entry" class="sref">dccp_feat_entry6/a> *e.35464a>6sp45           6a href=code=dccp_feat_entry_destructor="sref">new6/a>;e.421de=	  " class="sref">	  6/ref">new6/a>);e	  6/rew6/a>);"+code=u8" class="sref">u86/a> 6a href="+code=feat_num" clasref">feat_num6/a>);ref="+code=dccp_feat_s="sref">boo 6/a> 6a href="+code=is_loca " ss="sref">loca 6/a>, 6a href==net/dccp/feat.c#L419" id  L455" class4"line" nam
  L355">.35564a>6sp45href="net/dccp/feat.c#L416" id  L456" class4"line" nam
  L356">.35664a>sta45   6a href="+href="+code=dccp_feat_entry" class="sref">dccp_feat_entry6/a> *6a href="+code=entry" class="sref">entry6/a>)e.35764a>.  45ref="net/dccp/feat.c#L398" id  L458" class4"line" nam
  L358">.35864a>{e<45   6a href="+code=rx" class=ach_entry" class="sref">list_for_each_entry6/a>(6a href="+code=___entry" ss="sref">entry6/a>)e	  6/rew6/a>);"+code=u8" class=s="sref">node6/a>)    \e.35964a>.  45           return 6a f="+code=entry" class="sref">entry6/a> != 6a hreef="+code=feat_num" class="sref">feat_num6/a>, &6a f="+code=FEAT_SP" cclasref">feat_num6/a>);ref=f 6a href="+code=dccp_feat_ss="sref">entry6/a>->6a href="+code=is_loca " class="sref">is_loca 6/a>.? 6spal cl="+code=FEAT_SP" css="sref">loca 6/a>, 6a href==r"net/dccp/feat.c#L284" id  L460" class4"line" nam
  L360">.36064a>}e<46           } else {e<<<<<<<<dccp_feat_	  _destructor6/a>(6a href="+code=entry" class="sref">entry6/a>->6a href="+code=feat_num" class="sref">feat_num6/a>, &6a href="+code=entry" class="sref">entry6/a>->6a href="+code=	  " class="sref">	  6/a>);e.36164a>eentry6/a>)e.36264a>6sp46           }eentry6/a> != 6a hreef="+code=feat_num" class="sref">feat_num6/a>, &6a ffeat_num6/a>);ref==r"net/dccp/feat.c#L284" id  L463" class4"line" nam
  L363">.36364a>sta46                   6spal classode=fn_list" cclass="sref">	  6/rew6/a>); =ref="+code=entry" class="sref">entry6/a>->6a href="+code=	  " classs="sref">node6/a>)    \e.36464a>{e<46           6a href="+++++++++b(afk"net/dccp/feat.c#L419" id  L465" class4"line" nam
  L365">.36564a>.  46           if (6a hre"net/dccp/feat.c#L421" id  L466" class4"line" nam
  L366">.36664a>.  46ref="net/dccp/feat.c#L347" id  L467" class4"line" nam
  L367">.36764a>}e<467  6a href="+code=rx" class=ss="sref">entry6/a> != 6a href"+code=kmemdup" clat;6a2ref">kfre
6/a>(6at;6a2="linehref="+code=	  " classss="sref">entry6/a>);egfp_any6/a>());e.36864a>eentry6/a> != 6a href="+code=NULL" class="sref">NULL6/a>) {e.36964a>6sp46           return 6a code=entry" class="sref">entry6/a> != 6a hreef="+code=feat_num" class="sref">feat_num6/a>, &6a f=rcode=feat_num" clasref">feat_num6/a>);ref="net/dccp/feat.c#L402" id  L470" class4"line" nam
  L370">.37064a>sta47           6a href="+code=	  " classss="sref">entry6/a>->6a href="+code=is_loca " class="sref">is_loca 6/a>.? 6spal cl=+code=FEAT_SP" css="sref">loca 6/a>, 6a href="net/dccp/feat.c#L402" id  L471" class4"line" nam
  L371">.37164a>{e<47           6a href="+code=dccp_feat_ach_eadd_taisref">loca 6/a>, ch_eadd_taisa hreef="+code=entry" class="sref">entry6/a>->6a href="+code=	  " classs="sref">node6/a>)    \e	  6/rew6/a>);="net/dccp/feat.c#L402" id  L472" class4"line" nam
  L372">.37264a>.  4    6a href="+"net/dccp/feat.c#L421" id  L473" class4"line" nam
  L373">.37364a>.  4    if (6a hrehref="+code=new" classss="sref">entry6/a>)e.37464a>.  4      "net/dccp/feat.c#L421" id  L475" class4"line" nam
  L375">.37564a>.  47ref="net/dccp/feat.c#L296" id  L476" class4"line" nam
  L376">.37664a>.  47 class="comment"> * - each e.37764a>.  47 class="comment">/**6/spaluthe	  _destrupush_changvate fedd/n)6/spale a Changvaopiq>
 ( is known, href="net/dccp/feat.c#L348" id  L478" class4"line" nam
  L378">.37864a>.  47 class="comment"> * dccp_feat_is, 6a hto activa-" lists rely 2" e defpde 	 href="net/dccp/feat.c#L348" id  L479" class4"line" nam
  L379">.37964a>.  47 class="comment"> * @sk: fully s me: 7;dccp_feature_numbers6/spalue.38064a>.  48 class="comment"> * @feat_num: ther loca  (1) or remote (0) @feat_num is meant6/spalue.38164a>}e<48 class="comment"> * @loca : wheneeds_/a>)e)e
a href="net/dccp/feat.c#L351" id  L482" class4"line" nam
  L382">.38264a>e * @fva : the 	  >
 point1) sdeNN/ sizeof( sdeb6s:6seCCP s(willeb6scopiedf="nnet/dccp1" id  (fastnt6/sokup L483" class4"line" nam
  L383">.38364a>sta48 class="comment"> * List manane43ature to activate, 2"
 2f  L384" class4"line" nam
  L384">.38464a>{e<48c void 6a hrf="+code=dccp_feat_cl2"
_sp_	push_changvref">dccp_feat_	  _destrupush_changv="line" nam
  L421">.421de=	  " class="sref">	  6/ref">new6/a>);eu86/a> 6a href="+code=feat_num" clasref">feat_num6/a>);ref="+code=dccp_feat_"sref">u86/a> 6a href="+code=len" class=s="sref">loca 6/a>,e.38564a>.  48           if (6a hreeeeeeeeeeeeeeeeeecode=dccp_feat_"sref">u86/a> 6a href="+code=len" class/a>)eu86/a> 6a /a>)edccp_feat_	  _destructoa>);ef	  6/a>)e.38664a>.  4      "net/dccp/feat.c#L417" id  L487" class4"line" nam
  L387">.38764a>.  4    if (6a hrehref="+code=dccp_feat_entry" class="sref">dccp_feat_entry6/a> *6a href="+code=new" class="sref">new6/a>;enew6/a>;efeat_num6/a>);ref="+code=dccp_feat_ss="sref">loca 6/a>, 6a href=="net/dccp/feat.c#L419" id  L488" class4"line" nam
  L388">.38864a>.  48ref="net/dccp/feat.c#L369" id  L489" class4"line" nam
  L389">.38964a>.  4    6a href="+f="+code=new" class="sref">new6/a>.== 6a href="+code=NULL" class="sref">NULL6/a>)e.39064a>}e<49           6a href="+ href="+code=ENOBUFS" clasMEMref">NULL6/a>)elasMEMref="net/dccp/feat.c#L419" id  L491" class4"line" nam
  L391">.39164a>e.39264a>sta49   6a href="+code=f	  " clas="sref">new6/a>->6a href="+code=	  " classclass="sref">feat_num6/a>, &6a ffffffff=rcode=feat_num" clasref">feat_num6/a>);ref="net/dccp/feat.c#L402" id  L493" class4"line" nam
  L393">.39364a>.  4          6a hcode=f	  " clas="sref">new6/a>->6a href="+code=	  " classclass="sref">is_loca 6/a>.? 6spal clfffffff=rcode=feat_num" ss="sref">loca 6/a>, 6a href="net/dccp/feat.c#L402" id  L494" class4"line" nam
  L394">.39464a>{e<494        6a hcode=f	  " clas="sref">new6/a>->6a href="+code=	  " classd 6avref">dccp_feat_d 6av          6a hr"+code=FEAT_SP" class=INITIALISINGref">dccp_feat_lass=INITIALISINGref="net/dccp/feat.c#L402" id  L495" class4"line" nam
  L395">.39564a>.  4    struct 6a code=f	  " clas="sref">new6/a>->6a href="+code=	  " classneeds_csent6/ref">new6/a>->eds_csent6/  struc=rcode=feat_num" calsvref">dccp_feat_calsvref="net/dccp/feat.c#L402" id  L496" class4"line" nam
  L396">.39664a>.  4    6a href="+code=u8" class=="sref">new6/a>->6a href="+code=	  " classirm i_csent6/ref">new6/a>-&girm i_csent6/  struc=rcode=feat_num" calsvref">dccp_feat_calsvref="net/dccp/feat.c#L402" id  L497" class4"line" nam
  L397">.39764a>enew6/a>->6a href="+code=	  " class="sref">	  6/a>,ef	  6/a>)e.39864a>.  49   6a href="+code=rx" class=="sref">new6/a>->6a href="+code=	  " classneeds_/a>)eu86/a> 6a needs_/a>)e)eu86/a> 6a /a>)e.39964a>.  49ref="net/dccp/feat.c#L340" id  L500" class5"line" nam
  L400">.40065a>e.40165a>.  50href="net/dccp/feat.c#L382" id  L502" class5"line" nam
  L402">.40265a>.  50ref="net/dccp/feat.c#L383" id  L503" class5"line" nam
  L403">.40365a>.  50 class="comment"> * List mae.40465a>e * F2r genera	  _destrupush_csent6/ste fedd a Csent6/sructo sdes knFNnown, href="net/dccp/feat.c#L348" id  L505" class5"line" nam
  L405">.40565a>.  50 class="comment"> * Feature neis, 6a hto activa-" lists rely 2" e de2ddce,="nnet/dccp1" id  (fastnt6/sokup L506" class5"line" nam
  L406">.40665a>.  50 class="comment"> * - each fea s me: 7;dccp_feature_numbers6/spalue.40765a>.  50 class="comment">/**6/spaluthe ther loca  (1) or remote (0) @feat_num is meant6/spabeer hcsent6/>.4276/a	  6/a>)k >ensh:6/p/feat.c#L508" class5"line" nam
  L408">.40865a>.  50 class="comment"> * dccp_feat_is  >
 point1) sdeNN/ sizeof( sdeb6s:6seCCP s use th4276/a	  6/a>)k >ensh:6/p/feat.c#L509" class5"line" nam
  L399">.39965a>.  50 class="comment"> * @sk: full4276/a	  6/a>)k >ensh:6/p/feat.c#L510" class5"line" nam
  L410">.41065a>.  51 class="comment"> * @feat_num:Ra hres 06/spauccess, a Reset feat;Req&fur (1) processer ha (1)wisea href="net/dccp/feat.c#L355" id  L511" class5"line" nam
  L411">.41165a>.  51 class="comment"> * @loca : wne43ature to activate, 2"
 2f  L512" class5"line" nam
  L412">.41265a>}e<51c struct 6a f="+code=dccp_feat_cl2"
_sp_	push_csent6/ref">new6/a>-&gcl2"
_sp_	push_csent6/="line" nam
  L421">.421de=	  " class="sref">	  6/ref">new6/a>);eu86/a> 6a href="+code=feat_num" clasref">feat_num6/a>);ref="+code=dccp_feat_"sref">u86/a> 6a href="+code=len" class=s="sref">loca 6/a>,e.41365a>edccp_feat_	  _destructoa>);ef	  6/a>)e.41465a>sta51href="net/dccp/feat.c#L395" id  L515" class5"line" nam
  L415">.41565a>{e<51   struct 6a href="+code=dccp_feat_entry" class="sref">dccp_feat_entry6/a> *6a href="+code=new" class="sref">new6/a>;enew6/a>;efeat_num6/a>);ref="+code=dccp_feat_ss="sref">loca 6/a>, 6a href=="net/dccp/feat.c#L419" id  L516" class5"line" nam
  L416">.41665a>.  51ref="net/dccp/feat.c#L347" id  L517" class5"line" nam
  L417">.41765a>.  5            6af="+code=new" class="sref">new6/a>.== 6a href="+code=NULL" class="sref">NULL6/a>)e.41865a>.  5            6a href="+href="+code=new" classENCE_RESET_CODE_TOO_BUSYref">NULL6/a>)eENCE_RESET_CODE_TOO_BUSYref="net/dccp/feat.c#L402" id  L519" class5"line" nam
  L419">.41965a>.  51ref="net/dccp/feat.c#L340" id  L520" class5"line" nam
  L420">.42065a>}e<52   6a href="+code=dccp_debug="sref">new6/a>->6a href="+code=	  " classclass="sref">feat_num6/a>, &6a ffffffff=rcode=feat_num" clasref">feat_num6/a>);ref="net/dccp/feat.c#L402" id  L521" class5"line" nam
  L421">.42165a>enew6/a>.= 6a hrefef="+code=	  " classclass="sref">is_loca 6/a>.? 6spal clfffffff=rcode=feat_num" ss="sref">loca 6/a>, 6a href="net/dccp/feat.c#L402" id  L522" class5"line" nam
  L422">.42265a>6sp52   6a href="+code=f	  " clas="sref">new6/a>->6a href="+code=	  " classd 6avref">dccp_feat_d 6av          6a hr"+code=FEAT_SP" class=STABLEref">dccp_feat_lass=STABLEref="ef="+c="comment">/* copy calsttransiiq>
 ( i6.6.2 wne43ature to activate, 2"
 2f  L523" class5"line" nam
  L423">.42365a>6sp52         6a hcode=f	  " clas="sref">new6/a>->6a href="+code=	  " classneeds_csent6/ref">new6/a>->eds_csent6/  struc=rcode=feat_num" refvref">dccp_feat_refvref="net/dccp/feat.c#L402" id  L524" class5"line" nam
  L424">.42465a>6sp524        6a hcode=f	  " clas="sref">new6/a>->6a href="+code=	  " classirm i_csent6/ref">new6/a>-&girm i_csent6/  struc=r+code=f	  " class="sref">f	  6/a>->6a hrf="+code=NULL" class="sref">NULL6/a>)e.42565a>6sp52   struct 6a code=f	  " clas="sref">new6/a>->6a href="+code=	  " class="sref">	  6/a>.6a href="+code=sp" class=nsref">len6/a>)) nn          6a hef=" classsssssssssc="comment">/* copy calstzeroeRXs knwhole href="or.cwne43ature to activate, 2"
 2f  L526" class5"line" nam
  L426">.42665a>6sp52   if (6a href="+!code=f	  " clas="sref">new6/a>->6a href="+code=	  " classirm i_csent6/ref">new6/a>-&girm i_csent6/  st"net/dccp/feat.c#L403" id  L527" class5"line" nam
  L427">.42765a>6sp52           6a href="+code=dccp_feat_="sref">new6/a>->6a href="+code=	  " class="sref">	  6/a>,ef	  6/a>)e.426/5>->52   6a href="+code=rx" class=="sref">new6/a>->6a href="+code=	  " classneeds_/a>)eu86/a> 6a needs_/a>)edccp_feat_calsvref="net/dccp/feat.c#L402" id  L5/dccp/fea5.c#L317" id  L428">.426/5a>.  52ref="net/dccp/feat.c#L340" id  L5/dccp/fea5.c#L317" id  L428">.42665a>.  53   return 0;e.37465a>.  53href="net/dccp/feat.c#L382" id  L50s5 class5"line" nam
  L332">.33265a>.  53ref="net/dccp/feat.c#L383" id  L533" class5"line" nam
  L333">.33365a>.  53c void 6a hrf="+code=dccp_feat_cl2"
push_irm i_csent6/ref">new6/a>-&gcl2"
push_irm i_csent6/="line" nam
  L421">.421de=	  " class="sref">	  6/ref">new6/a>);eu86/a> 6a href="+code=feat_num" clasref">feat_num6/a>);ref="+code=dccp_feat_"sref">u86/a> 6a href="+code=len" class=s="sref">loca 6/a>, 6a href==net/dccp/feat.c#L383" id  L534" class5"line" nam
  L334">.33465a>.  53href="net/dccp/feat.c#L395" id  L535" class5"line" nam
  L335">.33565a>.  53   return  6a href="code=dccp_feat_cl2"
_sp_	push_csent6/ref">new6/a>-&gcl2"
_sp_	push_csent6/="lina href="net/dccp/feata h" cion_hdlr" classccp/fea+code=u8" class=clasref">feat_num6/a>);ref="+code=dccp_feat_ss="sref">loca 6/a>, 6a href="+code=dccp_feat_s="sref">NULL6/a>)e.33665a>e.33765a>.  53ref="net/dccp/feat.c#L398" id  L53dccp/fea5"line" nam
  L338">.33865a>.  53     href="+code=inline" class="sref">inline6/a>.int 6a hreef="+code=dccp_feat_entry_destef">npo href="net/dccp/feat.c#ntry"21"po ="line" nam
  L421">.421de=entry" class="sref">dccp_feat_entry6/a> *6a href="+code=entry" class="sref">entry6/a>)e.33965a>e.34065a>.  54   6a href="+code=dccp_debugy"21"desref">loca 6/a>, ch_edes="linef="+code=entry" class="sref">entry6/a>->6a href="+code=	  " classs="sref">node6/a>)    \e.34165a>.  54   6a href="+code=new" classentry_destructor" class="sref">dccp_feat_entry_destructor6/a>(struct 6a code=entry" class="sref">entry6/a>)e.34265a>.  54href="net/dccp/feat.c#L413" id  L543" class5"line" nam
  L343">.34365a>e.34465a>.  54ref="ef="+code=dccp_feat_entry_destef">npurgvref">dccp_feat_	  _destruef">npurgv="line" nam
  L421">.421de=	  " class="sref">	  6/ref">new6/a>);e.34565a>}e<54href="net/dccp/feat.c#L416" id  L546" class5"line" nam
  L346">.34665a>edccp_feat_entry6/a> *6a href="+code=entry" class="sref">entry6/a>)e.34765a>6sp54ref="net/dccp/feat.c#L398" id  L54dccp/fea5"line" nam
  L348">.34865a>6sp54   6a href="+code=rx" class=ach_entry" class="s_safvref">dccp_feat_ach_entry" class="s_safvt 6a code=entry" class="sref">entry6/a>)efn_list6/a>, 6a href="+code=node" class="sref">node6/a>)    \e.34965a>6sp54           return 6a code=entry" claentry_destructor" class="sref">dccp_feat_entry_destructor6/a>(struct 6a code=entry" class="sref">entry6/a>)e.35065a>6sp55   6a href="+code=dccp_debugINIT_LIST_HEADref">entry6/a>)INIT_LIST_HEAD="lina href="net/dccp/feata h" cion_hdlr" classccp/fe="net/dccp/feat.c#L402" id  L551" class5"line" nam
  L351">.35165a>6sp55href="net/dccp/feat.c#L382" id  L552" class5"line" nam
  L352">.35265a>6sp5l class href="net/dccEXPORT_SYMBOL_GPsref">NULL6/a>)eEXPORT_SYMBOL_GPs="lina href="net/dccentry_destef">npurgvref">dccp_feat_	  _destruef">npurgv="li="net/dccp/feat.c#L402" id  L553" class5"line" nam
  L353">.35365a>6sp55ref="net/dccp/feat.c#L414" id  L554" class5"line" nam
  L354">.35465a>6sp55 class="comment"> * F2r gen/* genere 	 @ de2s full   6/accp_@from - @ demust not fefollowany    \scwne43ature to activate, 2"
 2f  L555" class5"line" nam
  L355">.35565a>6sp55href=f="+code=dccp_feat_cl2"
_sp_	  6/a>eata h" cion_hdlr" cl2"
_sp_	  6/a>eata="line" nam
  L421">.421de=	  " class="sref">	  6/ref">new6/a>);ehref="+code=origin  " from h" cion_hdlr" cromref="+e" nam
  L421">.421de=	  " class="sref">	  6/ref">new6/a>);edccp_feat_roe.35665a>sta55     "net/dccp/feat.c#L417" id  L557" class5"line" nam
  L357">.35765a>.  55   if (6a hrehref="+code=dccp_feat_entry" class="sref">dccp_feat_entry6/a> *6a href="+code=new" classss="sref">entry6/a>)enew6/a>;e.35865a>{e<55ref="net/dccp/feat.c#L369" id  L55dccp/fea5"line" nam
  L359">.35965a>.  55           recode=dccp_debugINIT_LIST_HEADref">entry6/a>)INIT_LIST_HEAD="lina href="net/dcctoref">dccp_feat_roe.36065a>}e<56   6a href="+code=dccp_debugy"21"ntry" class="sref">list_for_each_entry6/a>(6a href="+code=___entry" ss="sref">entry6/a>)enode6/a>)    \e.36165a>enew6/a>.== 6a href=+code=dccp_feat_cl2"
_sp_	  6/a>ss="sref">dccp_feat_entry6/a> y6/a>(struct 6a code=entry" class="sref">entry6/a>)e.36265a>6sp56           }enew6/a>.== 6a href="+code=NULL" class="sref">NULL6/a>)e.36365a>sta56                   6spal clasgo decode=NULL" clasy6/aing_failess="sref">	  6/ry6/aing_failesref="net/dccp/feat.c#L412" id  L564" class5"line" nam
  L364">.36465a>{e<56           6a href="+code=dccp_debugy"21"add_taisref">loca 6/a>, ch_eadd_taisa hreef="+code=entry" cla="sref">new6/a>->6a href="+code=	  " classn="sref">node6/a>)    \edccp_feat_roe.36565a>.  56           if"net/dccp/feat.c#L382" id  L566" class5"line" nam
  L366">.36665a>.  56   6a href="+.36765a>}e<56ref="net/dccp/feat.c#L398" id  L568" class5"line" nam
  L368">.36865a>e	  6/ry6/aing_failesref=:net/dccp/feat.c#L398" id  L56dccp/fea5"line" nam
  L369">.36965a>6sp56           recode=dccp_debugentry_destef">npurgvref">dccp_feat_	  _destruef">npurgv="lincode=node" clastoref">dccp_feat_roe.37065a>sta57   return 0;eNULL6/a>)elasMEMref="net/dccp/feat.c#L419" id  L571" class5"line" nam
  L371">.37165a>{e<57href="net/dccp/feat.c#L382" id  L572" class5"line" nam
  L372">.37265a>.  57ref="net/dccp/feat.c#L383" id  L573" class5"line" nam
  L373">.37365a>.  57 class="comment"> * List mae.37465a>.  57 class="comment"> * F2r genera	  _destruvalid_nlasengthste fEnntrce sengthsr, f	 e fos6/spNNyopiq>
a href="net/dccp/feat.c#L351" id  L575" class5"line" nam
  L375">.37565a>.  57 class="comment"> * Feature neLengthsspabetweeef=lt 	 featuENCE_OPTVAL_MAXLEN. Used;Req&outgoer hpackeos6/sly, href="net/dccp/feat.c#L351" id  L576" class5"line" nam
  L376">.37665a>.  57 class="comment"> * - each  nein* -er hapiq>
atruct ccepCP s2s 6/ags2s theirizeof(structvalida href="net/dccp/feat.c#L355" id  L577" class5"line" nam
  L377">.37765a>.  57 class="comment">/**6/spaluthne43ature to activate, 2"
 2f  L578" class5"line" nam
  L378">.37865a>.  57     href="+code=inline" cl"sref">u86/a> 6a href="+code=len" class	  _destruvalid_nlasengthref">dccp_feat_	  _destruvalid_nlasength="lincode=node" clas"sref">u86/a> 6a href="+code=feat_num" class="sref">feat_num6/a>, 6a href="net/dccp/feat.c#L403" id  L579" class5"line" nam
  L379">.37965a>.  57     "net/dccp/feat.c#L395" id  L580" class5"line" nam
  L380">.38065a>.  58   return 0;ef="+code=new" classclass="sref">feat_num6/a>, &6a f="+code=NULL" clasENCEF_ACK_RATIOref">feat_num6/ENCEF_ACK_RATIOe * F2r gen/* RFC 4  0, 11.3lt 	 6.6.8thne43ature to activate, 2"
 2f  L581" class5"line" nam
  L381">.38165a>}e<58                   6a.38265a>efeat_num6/a>, &6a f="+code=NULL" clasENCEF_SEQUENCE_WINDOWref">feat_num6/ENCEF_SEQUENCE_WINDOWe * F2r gen/* RFC 4  0, 7.5.2lt 	 6.5 thne43ature to activate, 2"
 2f  L583" class5"line" nam
  L383">.38365a>sta58           return 6a href="+6"net/dccp/feat.c#L419" id  L584" class5"line" nam
  L384">.38465a>{e<584  6a href="+.38565a>.  58     "net/dccp/feat.c#L382" id  L586" class5"line" nam
  L386">.38665a>.  58ref="net/dccp/feat.c#L347" id  L587" class5"line" nam
  L387">.38765a>.  5    ifhref="+code=inline" cl"sref">u86/a> 6a href="+code=len" class	  _destruisuvalid_nlactoref">dccp_feat_	  _destruisuvalid_nlacto="lincode=node" clas"sref">u86/a> 6a href="+code=feat_num" class="sref">feat_num6/a>, 6a href="+code=dccp_feat_""line" nam
a> 6a h6      code=dccp_feat_="sref">	  6/a>);e.38865a>.  58ref=""net/dccp/feat.c#L395" id  L589" class5"line" nam
  L389">.38965a>.  5    6a href="+switch"+code=new" classclass="sref">feat_num6/a>, &6a h="net/dccp/feat.c#L417" id  L590" class5"line" nam
  L390">.39065a>}e<59           6acase+code=NULL" clasENCEF_ACK_RATIOref">feat_num6/ENCEF_ACK_RATIOe.39165a>e	  6/a>);efeat_num6/ENCEF_ACK_RATIO_MAXref="net/dccp/feat.c#L419" id  L592" class5"line" nam
  L392">.39265a>sta59   6a href="+case+code=NULL" clasENCEF_SEQUENCE_WINDOWref">feat_num6/ENCEF_SEQUENCE_WINDOWe.39365a>.  59           return 6a href="+code=dccp_feat_="sref">	  6/a>);efeat_num6/ENCEF_SEQ_WMINhref &6a href="+code=dccp_feat_="sref">	  6/a>);efeat_num6/ENCEF_SEQ_WMAXref="net/dccp/feat.c#L419" id  L594" class5"line" nam
  L394">.39465a>{e<594        6a h"net/dccp/feat.c#L382" id  L595" class5"line" nam
  L395">.39565a>.  59   return  6a href="=" classsc="comment"> * F2r gen/* 2" ior.cun. we te sots tcanfea9;t tellthne43ature to activate, 2"
 2f  L596" class5"line" nam
  L396">.39665a>.  59   6a"net/dccp/feat.c#L382" id  L597" class5"line" nam
  L397">.39765a>e.39865a>.  59 class="comment"> * dccp_fe/* check that, sizeof(structwith( is knrangvs  >
 L3 sockRFC 4  0thne43ature to activate, 2"
 2f  L599" class5"line" nam
  L399">.39965a>.  59ref="href="+code=inline" cl"sref">u86/a> 6a href="+code=len" class	  _destruisuvalid_spactoref">dccp_feat_	  _destruisuvalid_spacto="lincode=node" clas"sref">u86/a> 6a href="+code=feat_num" class="sref">feat_num6/a>, 6a href="+code=dccp_feat_"sref">u86/a> 6a href="+code=feat_num" ="sref">	  6/a>);e.40066a>e.40166a>.  601  6a href="+switch"+code=new" classclass="sref">feat_num6/a>, &6a h="net/dccp/feat.c#L417" id  L602" class6"line" nam
  L402">.40266a>.  60   6a href="+case+code=NULL" clasENCEF_CCIDref">entry6/a>)ENCEF_CCIDe.40366a>.  60           return 6a href="+code=dccp_feat_="sref">	  6/a>);eentry6/a>)ENCEC_CCID2href ||+code=dccp_feat_="sref">	  6/a>);eentry6/a>)ENCEC_CCID3ref="net/dccp/feat.c#L419" id  L604" class6"line" nam
  L404">.40466a>e * dccp_fe/* Type-check Boolecom2" ior.czeof(s:thne43ature to activate, 2"
 2f  L605" class6"line" nam
  L405">.40566a>.  605  6a href="+case+code=NULL" clasENCEF_SHORT_SEQNOSref">feat_num6/ENCEF_SHORT_SEQNOSe.39666a>.  606  6a href="+case+code=NULL" clasENCEF_ECN_INCAPABLEref">dccp_feat_ENCEF_ECN_INCAPABLEe.39766a>.  607  6a href="+case+code=NULL" clasENCEF_SEND_ACK_VECTORref">feat_num6/ENCEF_SEND_ACK_VECTORe.39866a>.  608  6a href="+case+code=NULL" clasENCEF_SEND_NDP_COUNTref">feat_num6/ENCEF_SEND_NDP_COUNTe.39966a>.  609  6a href="+case+code=NULL" clasENCEF_DATA_CHECKSUMref">NULL6/a>)eENCEF_DATA_CHECKSUMe.41066a>.  61           6acase+code=NULL" clasENCEF_SEND_LEV_RATEref">dccp_feat_ENCEF_SEND_LEV_RATEe.41166a>.  61                   6a	  6/a>);e.41266a>}e<61   6a href="+case+code=NULL" clasENCEF_MIN_CSUM_COVERref">feat_num6/ENCEF_MIN_CSUM_COVERe.41366a>e	  6/a>);e.41466a>sta614        6a h"net/dccp/feat.c#L382" id  L615" class6"line" nam
  L415">.41566a>{e<61   return  6a href="=" classsssssssssssssssssc="comment"> * F2r gen/* 2" ior.cun. we thne43ature to activate, 2"
 2f  L616" class6"line" nam
  L416">.41666a>.  61   6a"net/dccp/feat.c#L382" id  L617" class6"line" nam
  L417">.41766a>.  61ref="net/dccp/feat.c#L398" id  L618" class6"line" nam
  L418">.41866a>.  61     href="+code=inline" cl"sref">u86/a> 6a href="+code=len" class	  _destruspaef">nokref">dccp_feat_	  _destruspaef">nok="lincode=node" clas"sref">u86/a> 6a href="+code=feat_num" class="sref">feat_num6/a>, 6a href="+code=dccp_feat_"sref">u86/a> 6a href="+href="+code=origin  " spaef">ref">u86/a> 6a spaef">ref="+code=dccp_feat_"sref">u86/a> 6a href="+code=feat_num" spaeesref">len6/a>)) spaeeshref=net/dccp/feat.c#L347" id  L619" class6"line" nam
  L419">.41966a>.  61     "net/dccp/feat.c#L395" id  L620" class6"line" nam
  L420">.42066a>}e<62   return 0;ef="+code=new" classspaef">ref">u86/a> 6a spaef">ref=f="+code=NULL" class="sref">NULL6/a>)elen6/a>)) spaeeshref <f1=net/dccp/feat.c#L347" id  L621" class6"line" nam
  L421">.42166a>e.42266a>6sp62   6a href="+while"+code=new" classspaeesref">len6/a>)) spaeeshref--=net/dccp/feat.c#L347" id  L623" class6"line" nam
  L423">.42366a>6sp62                   6sf="+!code=f	  " clas	  _destruisuvalid_spactoref">dccp_feat_	  _destruisuvalid_spacto="lincode=node" clasclass="sref">feat_num6/a>, 6a href="++code=origin  " spaef">ref">u86/a> 6a spaef">ref=++)=net/dccp/feat.c#L347" id  L624" class6"line" nam
  L424">.42466a>6sp62           6a href="+      6a.42566a>6sp62   return  6a href="1"net/dccp/feat.c#L381" id  L626" class6"line" nam
  L426">.42666a>6sp62   6a"net/dccp/feat.c#L382" id  L627" class6"line" nam
  L427">.42766a>6sp62ref="net/dccp/feat.c#L398" id  L6/dccp/fea6.c#L317" id  L428">.426/6>->62 class="comment"> * dccp_fe/*a href="net/dccp/feat.c#L348" id  L6/dccp/fea6.c#L317" id  L428">.426/6a>.  62 class="comment"> * @sk: fully	  _destrui6seCC_optsste fGenere 	 FNyopiq>
a from currk: y 2" ed 6av  ref="net/dccp/feat.c#L348" id  L6/dccp/fea6.c#L317" id  L428">.42666a>.  63 class="comment"> * @feat_num: skb: ="xa sk_buff sdeb6ssk: ysdes knpeni="nnet/dccp1" id  (fastnt6/sokup L670" class6"line" nam
  L370">.37466a>.  63 class="comment"> * @loca : whedp:;Req&clik: ydurer hhandshakelt 	 generelc# lists rel="nnet/dccp1" id  (fastnt6/sokup L672" class6"line" nam
  L332">.33266a>.  63 class="comment"> * @fva : the dreq:efau sb&gs knserv(rnonlto(t;6 Changvs/Csent6/ssockLISTEN/RESPONDf="nnet/dccp1" id  (fastnt6/sokup L633" class6"line" nam
  L333">.33366a>.  63 class="comment"> * List manane43ature to activate, 2"
 2f  L634" class6"line" nam
  L334">.33466a>.  63href=f="+code=dccp_feat_cl2"
_sp_	i6seCC_optsref">dccp_feat_	  _destrui6seCC_opts="linhref="+code=dccp_feat_entrysockref">dccp_feat_	  _dsock  ret+code=origin  " d href="net/dccp/fpref="+href="+code=dccp_feat_entryreque">nsockref">dccp_feat_	  _dreque">nsock  ret+code=origin  " dreqref">dccp_feat_	reqref="e to activate, 2"
 2f  L635" class6"line" nam
  L335">.33566a>.  63   return  6aaaaaaaaaaaaaaaaaaahref="+code=dccp_feat_sk_buffref">u86/a> 6a sk_buff  ret+code=origin  " skbref">u86/a> 6a skbhref=net/dccp/feat.c#L347" id  L636" class6"line" nam
  L336">.33666a>e.33766a>.  63   if (6a hrehref="+code=dccp_feat_	  " class="sref">	  6/ref">new6/a>);efeat_num6/ashref =+code=dccp_feat_creqref">dccp_feat_	reqref= ?ref="+code=entry" clacreqref">dccp_feat_	reqref=ef="+code=	  " class	reqdestr# lref">dccp_feat_	reqdestr# lref= :ref="+code=entry" clac href="net/dccp/fpref=ef="+code=	  " class	#L4sdestr# lref">dccp_feat_	#L4sdestr# lref="net/dccp/feat.c#L419" id  L63dccp/fea6"line" nam
  L338">.33866a>.  638  if (6a hrehref="+code=dccp_feat_entry" class="sref">dccp_feat_entry6/a> *6a href="+code=new" classposref">dccp_feat_posref="++code=origin  " ="xa h" cion_hdlr" ="xaref="net/dccp/feat.c#L402" id  L63dccp/fea6"line" nam
  L339">.33966a>eu86/a> 6a href="+code=feat_num" optref">u86/a> 6a optref="+code=dccp_feat_typvref">dccp_feat_typvref="+code=dccp_feat_eesref">len6/a>)) eeshref"++code=origin  " ptsref">dccp_feat_ptsref="+code=dccp_feat_nnui6_nboref">dccp_feat_nnui6_nboref=[code=NULL" clasENCE_OPTVAL_MAXLENref">feat_num6/ENCE_OPTVAL_MAXLENref=]"net/dccp/feat.c#L402" id  L640" class6"line" nam
  L340">.34066a>.  64   6a href="+code=dccp_debugboooref">dccp_feat_boooef="+code=feat_num" rptref">u86/a> 6a rparef="net/dccp/feat.c#L402" id  L641" class6"line" nam
  L341">.34166a>.  64ref="net/dccp/feat.c#L392" id  L64s5 class6"line" nam
  L342">.34266a>.  64   6a href="+c="comment"> * F2r gen/* putsructiessocsde skb ( is knord1) shey appear ( is known,nane43ature to activate, 2"
 2f  L643" class6"line" nam
  L343">.34366a>edccp_feat_ach_entry" class="s_safvdrev(rsv="lincode=node" clasposref">dccp_feat_posref="+code=origin  " ="xa h" cion_hdlr" ="xaref="+code=fn_list" claref">feat_num6/ashref"+code=node" class="sref">node6/a>)    \e.34466a>.  64           6a href="+code=dccp_debugoptref">u86/a> 6a optref=uc=rcode=feat_num" entry6/a> genoptref">u86/a> 6a entry6/a> genopt="lincode=node" clasposref">dccp_feat_posref=h"net/dccp/feat.c#L412" id  L645" class6"line" nam
  L345">.34566a>}e<64   return  6aaaaaaaaacode=dccp_feat_typvref">dccp_feat_typvref=c=rcode=feat_num" entry6/a> typvref">dccp_feat_entry6/a> typv="lincode=node" clasposref">dccp_feat_posref=ef="+code=	  " classclass="sref">feat_num6/a>, &6a h"net/dccp/feat.c#L412" id  L646" class6"line" nam
  L346">.34666a>eu86/a> 6a rparef=uc=rcode=feat_num" calsvref">dccp_feat_calsvref="net/dccp/feat.c#L402" id  L647" class6"line" nam
  L347">.34766a>6sp64ref="net/dccp/feat.c#L398" id  L64dccp/fea6"line" nam
  L348">.34866a>6sp64           6a href="+f="+code=new" classposref">dccp_feat_posref=ef="+code=	  " classirm i_csent6/ref">new6/a>-&girm i_csent6/  st"="net/dccp/feat.c#L417" id  L64dccp/fea6"line" nam
  L349">.34966a>6sp64           return 6a     6a hcode=f	  " clasaesref">len6/a>)) eeshrefhef="net/dccp/feat.c#L417" id  L650" class6"line" nam
  L350">.35066a>6sp65           6a href="+    6a hcode=f	  " clasptsref">dccp_feat_ptsref=c=rcode=feat_num" s="sref">NULL6/a>)e.35166a>6sp65                   6a} elsv="net/dccp/feat.c#L417" id  L652" class6"line" nam
  L352">.35266a>6sp65           }edccp_feat_typvref=c="+code=FEAT_SP" class=SPref">dccp_feat_lass=SP  st"="net/dccp/feat.c#L417" id  L653" class6"line" nam
  L353">.35366a>6sp65                   6spal classssssssscode=f	  " clasaesref">len6/a>)) eeshrefhefcode=new" classposref">dccp_feat_posref=ef="+code=	  " class="sref">	  6/a>.6a href="+code=sp" class=s href="net/dccp/spef="+code=sp" class=aesref">len6/a>)) eeshref"net/dccp/feat.c#L417" id  L654" class6"line" nam
  L354">.35466a>6sp65           6a href="+      6a    6a hcode=f	  " clasptsref">dccp_feat_ptsref=c=rcode=feat_num" posref">dccp_feat_posref=ef="+code=	  " class="sref">	  6/a>.6a href="+code=sp" class=s href="net/dccp/spef="+code=sp" class=vecref">	  6/a>.6a echref"net/dccp/feat.c#L417" id  L655" class6"line" nam
  L355">.35566a>6sp65           if (6a hreeeeeeeeeeeeeeeeecode=dccp_feat_rptref">u86/a> 6a rparef=u=rcode=feat_num" posref">dccp_feat_posref=ef="+code=	  " classneeds_csent6/ref">new6/a>->eds_csent6/  st"net/dccp/feat.c#L417" id  L656" class6"line" nam
  L356">.35666a>sta65   6a href="+aaaaaaaaaaaaaaaa} elsv=f="+code=new" classtypvref">dccp_feat_typvref=c="+code=FEAT_SP" class=NNref">feat_num6/lass=NN  st"="net/dccp/feat.c#L417" id  L657" class6"line" nam
  L357">.35766a>.  65           6a href="+pal classssssssscode=f	  " clasaesref">len6/a>)) eeshrefhefcode=new" class	  _destruvalid_nlasengthref">dccp_feat_	  _destruvalid_nlasength="lincode=node" clasposref">dccp_feat_posref=ef="+code=	  " classclass="sref">feat_num6/a>, &6a h"net/dccp/feat.c#L412" id  L658" class6"line" nam
  L358">.35866a>{e<65           6a href="+      6a    6a hcode=f	  " clasptsref">dccp_feat_ptsref=c=rcode=feat_num" nnui6_nboref">dccp_feat_nnui6_nboref="net/dccp/feat.c#L412" id  L65dccp/fea6"line" nam
  L359">.35966a>.  65           return 6a     6a h    6a hcode=f	  " clas	  _den cla_zeof(_zesref">dccp_feat_entryen cla_zeof(_zes="lincode=node" clasposref">dccp_feat_posref=ef="+code=	  " class="sref">	  6/a>.6a href="+code=sp" class=nsref">len6/a>)) nn    "+code=node" clasptsref">dccp_feat_ptsref="+code=dccp_feat_aesref">len6/a>)) eeshrefh"net/dccp/feat.c#L412" id  L660" class6"line" nam
  L360">.36066a>}e<66           6a href="+    6a h} elsv="net/dccp/feat.c#L417" id  L661" class6"line" nam
  L361">.36166a>edccp_feat_ENCE_BUG="linc="comment"> strer ">"un. we t2" ior.cfeatuu"e43atur"+code=node" clasposref">dccp_feat_posref=ef="+code=	  " classclass="sref">feat_num6/a>, &6a h"net/dccp/feat.c#L412" id  L662" class6"line" nam
  L362">.36266a>6sp66           }e.36366a>sta66                   6spal clas"net/dccp/feat.c#L382" id  L664" class6"line" nam
  L364">.36466a>{e<66           6a href="+"net/dccp/feat.c#L382" id  L665" class6"line" nam
  L365">.36566a>.  66   return  6aaaaaaaaacode=dccp_feat_	  _destruprerC_optref">dccp_feat_	  _destruprerC_opt="lincode=node" clasoptref">u86/a> 6a optref="+code=dccp_feat_posref">dccp_feat_posref=ef="+code=	  " classclass="sref">feat_num6/a>, &6a "+code=node" clasptsref">dccp_feat_ptsref="+code=dccp_feat_aesref">len6/a>)) eeshref, 0h"net/dccp/feat.c#L412" id  L666" class6"line" nam
  L366">.36666a>.  66ref="net/dccp/feat.c#L347" id  L667" class6"line" nam
  L367">.36766a>}e<66           6a href="+f="+code=new" class	  _di6seCC_fn_optref">dccp_feat_	  _di6seCC_fn_opt="lincode=node" classkbref">u86/a> 6a skbhref"+code=dccp_feat_optref">u86/a> 6a optref="+code=dccp_feat_posref">dccp_feat_posref=ef="+code=	  " classclass="sref">feat_num6/a>, &6a "+code=node" clasptsref">dccp_feat_ptsref="+code=dccp_feat_aesref">len6/a>)) eeshref, code=dccp_feat_rptref">u86/a> 6a rparef=)=net/dccp/feat.c#L347" id  L668" class6"line" nam
  L368">.36866a>e.36966a>6sp66           return 6a f="+code=new" classposref">dccp_feat_posref=ef="+code=	  " classneeds_/a>)eu86/a> 6a needs_/a>)eu86/a> 6a 	  _di6seCC_opiq>
_/a>)eu86/a> 6a skbhref)=net/dccp/feat.c#L347" id  L670" class6"line" nam
  L370">.37066a>sta67           6a href="+    6a h.37166a>{e<67ref="net/dccp/feat.c#L392" id  L672" class6"line" nam
  L372">.37266a>.  67           }eu86/a> 6a skbhrefef="+code=	  " classdkref">dccp_feat_skhrefef="+code=	  " classdk_d 6avref">dccp_feat_dk_d 6avref=c="+code=FEAT_SP" cENCE_OPENref">feat_num6/ENCE_OPENhref &6a href="net/dccp/feat.c#L392" id  L673" class6"line" nam
  L373">.37366a>.  67                   6spal ncode=node" clasoptref">u86/a> 6a optref=c="+code=FEAT_SP" cENCEO_CONFIRM_Rref">feat_num6/ENCEO_CONFIRM_Rref=c||+code=dccp_feat_optref">u86/a> 6a optref=c="+code=FEAT_SP" cENCEO_CONFIRM_sref">NULL6/a>)eENCEO_CONFIRM_shref)=="net/dccp/feat.c#L417" id  L674" class6"line" nam
  L374">.37466a>.  67           6a href="+      6ac="comment"> * F2r gen/*e43ature to activate, 2"
 2f  L675" class6"line" nam
  L375">.37566a>.  67 class="comment"> * Feature                         * Csent6/ssdonfea9;t geth.37666a>.  67 class="comment"> * - each                          * conneciq>
 (ssockd 6av OPENhr3ature to activate, 2"
 2f  L677" class6"line" nam
  L377">.37766a>.  67 class="comment">/**6/spalut                        *ne43ature to activate, 2"
 2f  L678" class6"line" nam
  L378">.37866a>.  67           6a href="+      6acode=dccp_feat_	  _destruef">npo href="net/dccp/feat.c#ntry"21"po ="lincode=node" clasposref">dccp_feat_posref=h"net/dccp/feat.c#L412" id  L679" class6"line" nam
  L379">.37966a>.  67           return 6a } elsv="net/dccp/feat.c#L417" id  L680" class6"line" nam
  L380">.38066a>.  68           6a href="+    6a hc="comment"> * F2r gen/*e43ature to activate, 2"
 2f  L681" class6"line" nam
  L381">.38166a>}e<68 class="comment"> * @loca :                         * Ent1) CHANGING aft1) sransmitCer hs knChangve43ature to activate, 2"
 2f  L682" class6"line" nam
  L382">.38266a>e * @fva : t                        * opiq>
s(6.6.2)a href="net/dccp/feat.c#L355" id  L683" class6"line" nam
  L383">.38366a>sta68 class="comment"> * List man                        *ne43ature to activate, 2"
 2f  L684" class6"line" nam
  L384">.38466a>{e<68           6a href="+      6af="+code=new" classposref">dccp_feat_posref=ef="+code=	  " classd 6avref">dccp_feat_d 6av     ="+code=FEAT_SP" class=INITIALISINGref">feat_num6/lass=INITIALISINGref=he to activate, 2"
 2f  L685" class6"line" nam
  L385">.38566a>.  68           if (6a hreeeeeeeeeeeeeeeeecode=dccp_feat_posref">dccp_feat_posref=ef="+code=	  " classd 6avref">dccp_feat_d 6av     =+code=FEAT_SP" class=CHANGINGref">feat_num6/lass=CHANGINGref="net/dccp/feat.c#L412" id  L686" class6"line" nam
  L386">.38666a>.  68   6a href="+aaaaaaaa"net/dccp/feat.c#L382" id  L687" class6"line" nam
  L387">.38766a>.  68           6a"net/dccp/feat.c#L382" id  L688" class6"line" nam
  L388">.38866a>.  68           6a.38966a>.  6    6a"net/dccp/feat.c#L382" id  L690" class6"line" nam
  L390">.39066a>}e<69     net/dccp/feat.c#L382" id  L691" class6"line" nam
  L391">.39166a>e * @loca :/*a href="net/dccp/feat.c#L348" id  L692" class6"line" nam
  L392">.39266a>sta69 class="comment"> * @fva : the_.c#ntrreg"21er_nnste fReg"21er newpNNyzeof(6/spsocket href="net/dccp/feat.c#L348" id  L693" class6"line" nam
  L393">.39366a>.  69 class="comment"> * List mana @fn:t2" ior.-# lists relnown,nto reg"21ertwith href="net/dccp/feat.c#L348" id  L694" class6"line" nam
  L394">.39466a>{e<69 class="comment"> * F2r genera@8" i: aspNNy2" ior.cfrom featufeat.c#ntor.&bera href="net/dccp/feat.c#L351" id  L695" class6"line" nam
  L395">.39566a>.  69 class="comment"> * Feature ne@/a>)e)e
sf="1 href="net/dccp/feat.c#L351" id  L696" class6"line" nam
  L396">.39666a>.  69 class="comment"> * - each  ne@nlacto:yzeof(6to reg"21ert(r/a>(icCP sto 4 bytesf="nnet/dccp1" id  (fastnt6/sokup L697" class6"line" nam
  L397">.39766a>e/**6/spaluth="nnet/dccp1" id  (fastnt6/sokup L698" class6"line" nam
  L398">.39866a>.  69 class="comment"> * dccp_fe neNote that,NNy2" ior.struct 6a hsb&g >
 Liiq>
 (RFC 4  0, 6.3.2)a href="net/dccp/feat.c#L355" id  L699" class6"line" nam
  L399">.39966a>.  69 class="comment"> * @sk: fullne43ature to activate, 2"
 2f  L700" class7"line" nam
  L400">.40067a>efeat_num6/_.c#ntrreg"21er_nn="linhref="+code=dccp_feat_	  " class="sref">	  6/ref">new6/a>);efeat_num6/ashrefa+code=u8" class="sref">u86/a> 6a href="+code=feat_num" clasref">feat_num6/a>);ref="e to activate, 2"
 2f  L701" class7"line" nam
  L391">.39167a>.  70                   6a    6a h    6acode=u8" class="sref">u86/a> 6a href="+code=feat_num" /a>)eu86/a> 6a /a>)e 6a h6      code=dccp_feat_nlactoref">dccp_feat_nlacto="lihe to activate, 2"
 2f  L702" class7"line" nam
  L402">.40267a>.  70   6a"net/dccp/feat.c#L417" id  L703" class7"line" nam
  L403">.40367a>.  70         6a hcode=f	  " clas	  _destruvalref">dccp_feat_	  _destruvalef="+code=feat_num" c="sref">f	  6/a>->6a hrf= { +code=sp" class=nsref">len6/a>)) nn     =rcode=feat_num" nnuctoref">dccp_feat_nlacto="li }"net/dccp/feat.c#L381" id  L704" class7"line" nam
  L404">.40467a>e.39567a>.  705  6a href="+f="+code=new" class	  _d6/a> typvref">dccp_feat_entry6/a> typv="lincode=node" clasclasref">feat_num6/a>);ref=) !"+code=FEAT_SP" class=NNref">feat_num6/lass=NN  st ||net/dccp/feat.c#L381" id  L706" class7"line" nam
  L396">.39667a>.  70   6a href="+aaaa!code=f	  " clas	  _destruisuvalid_nlactoref">dccp_feat_	  _destruisuvalid_nlacto="lincode=node" clasclasref">feat_num6/a>);ref=" code=dccp_feat_nlactoref">dccp_feat_nlacto="lihhe to activate, 2"
 2f  L707" class7"line" nam
  L397">.39767a>.  70           6a href="+NULL6/a>)eEINVAsref="net/dccp/feat.c#L412" id  L708" class7"line" nam
  L398">.39867a>.  70ref="net/dccp/feat.c#L369" id  L709" class7"line" nam
  L399">.39967a>.  709  6a href="+c="comment"> * F2r gen/* Donfea9;t bothertwithg >
aultczeof(s, shey willeb6sactivaCP s2nyway.llne43ature to activate, 2"
 2f  L710" class7"line" nam
  L410">.41067a>.  71   return 0;ef="+code=new" classnnuctoref">dccp_feat_nlacto="li -"+code=new" class""line" nam
a> 6a h6     )code=f	  " clas	  _destru >
ault_zeof(ref">dccp_feat_	  _destru >
ault_zeof(="lincode=node" clasclasref">feat_num6/a>);ref=) == 0he to activate, 2"
 2f  L711" class7"line" nam
  L411">.41167a>.  71                   6a.41267a>}e<71ref="net/dccp/feat.c#L383" id  L713" class7"line" nam
  L413">.41367a>edccp_feat_	  _destrupush_changv="lincode=node" clasc/ref">feat_num6/ashrefa+code=u8" class=clasref">feat_num6/a>);ref=" 1a+code=u8" class=/a>)eu86/a> 6a /a>)ef	  6/a>->6a hrh"net/dccp/feat.c#L412" id  L714" class7"line" nam
  L414">.41467a>sta714    "net/dccp/feat.c#L382" id  L715" class7"line" nam
  L415">.41567a>{e<71   renet/dccp/feat.c#L382" id  L716" class7"line" nam
  L416">.41667a>.  71 class="comment"> * - each /*a href="net/dccp/feat.c#L348" id  L717" class7"line" nam
  L417">.41767a>.  71 class="comment">/**6/spaluthe_.c#ntrreg"21er_spste fReg"21er newp sizeof(/own,n/spsocket href="net/dccp/feat.c#L348" id  L718" class7"line" nam
  L418">.41867a>.  71 class="comment"> * dccp_fe ne@fn:t2" ior.-# lists relnown,nto reg"21ertwith href="net/dccp/feat.c#L348" id  L719" class7"line" nam
  L419">.41967a>.  71 class="comment"> * @sk: fully@8" i: asp si2" ior.cfrom featufeat.c#ntor.&bera href="net/dccp/feat.c#L351" id  L720" class7"line" nam
  L420">.42067a>}e<72 class="comment"> * @feat_num: isu 6a h: whetherts kno6a hs(1) orts knremote (0)y@8" i (ssmeant href="net/dccp/feat.c#L348" id  L721" class7"line" nam
  L421">.42167a>e * @loca : whe/a>)e)e
sf="1 href="net/dccp/feat.c#L351" id  L722" class7"line" nam
  L422">.42267a>6sp72 class="comment"> * @fva : the spacto:p sizeof( followu sb&gopiq>
 hspccperenceief">reref="net/dccp/feat.c#L351" id  L723" class7"line" nam
  L423">.42367a>6sp72 class="comment"> * List mana @spaees: sengthscp_@spactosockbytesreref="net/dccp/feat.c#L351" id  L724" class7"line" nam
  L424">.42467a>6sp72 class="comment"> * F2r generne43ature to activate, 2"
 2f  L725" class7"line" nam
  L425">.42567a>6sp72   red 6a hrf="+code=dccp_feat__.c#ntrreg"21er_s href="net/dccp/_.c#ntrreg"21er_s ="linhref="+code=dccp_feat_	  " class="sref">	  6/ref">new6/a>);efeat_num6/ashrefa+code=u8" class="sref">u86/a> 6a href="+code=feat_num" clasref">feat_num6/a>);ref="+code=u8" class="sref">u86/a> 6a href="+code=feat_num" isu 6a href">u86/a> 6a isu 6a href="e to activate, 2"
 2f  L726" class7"line" nam
  L426">.42667a>6sp72   6a href="+aaaaaaaaaaaaaaaa    6acode=u8" class="sref">u86/a> 6a href="+code=feat_num" /a>)eu86/a> 6a /a>)eu86/a> 6a href="+href="+code=origin  " spa="sref">f	  6/a>-&spacto="li"+code=dccp_feat_"sref">u86/a> 6a href="+code=feat_num" spaeesref">len6/a>)) spaeeshref=net/dccp/feat.c#L347" id  L727" class7"line" nam
  L427">.42767a>6sp72ref=""net/dccp/feat.c#L417" id  L7/dccp/fea7.c#L317" id  L428">.426/7>->72   6a href="+code=rx" class=	  _destruvalref">dccp_feat_	  _destruvalef="+code=feat_num" c="sref">f	  6/a>->6a hr"net/dccp/feat.c#L412" id  L7/dccp/fea7.c#L317" id  L428">.426/7a>.  72 clasnet/dccp/feat.c#L412" id  L7/dccp/fea7.c#L317" id  L428">.42667a>.  73   return 0;ef="+code=new" class	  _d6/a> typvref">dccp_feat_entry6/a> typv="lincode=node" clasclasref">feat_num6/a>);ref=) !"+code=FEAT_SP" class=SPref">dccp_feat_lass=SP  st ||net/dccp/feat.c#L381" id  L770" class7"line" nam
  L370">.37467a>.  73                 !code=f	  " clas	  _destruspaef">nokref">dccp_feat_	  _destruspaef">nok="lincode=node" clasclasref">feat_num6/a>);ref="+code=u8" class=spa="sref">f	  6/a>-&spacto="li"+code=dccp_feat_spaeesref">len6/a>)) spaeeshref==net/dccp/feat.c#L347" id  L772" class7"line" nam
  L332">.33267a>.  73           }eNULL6/a>)eEINVAsref="net/dccp/feat.c#L412" id  L733" class7"line" nam
  L333">.33367a>.  73ref="net/dccp/feat.c#L414" id  L734" class7"line" nam
  L334">.33467a>.  734        6a hc="comment"> * dccp_fe/* Avoidc# lists rags2lik: CCIDssb&gonltoadvertisragssupporCP son\scwne43ature to activate, 2"
 2f  L735" class7"line" nam
  L335">.33567a>.  735  6a href="+f="+code=new" classclasref">feat_num6/a>);ref=f="+code=NULL" clasENCEF_CCIDref">entry6/a>)ENCEF_CCIDeentry6/a>)ccid_supporC_check="lincode=node" classpa="sref">f	  6/a>-&spacto="li"+code=dccp_feat_spaeesref">len6/a>)) spaeeshref==net/dccp/feat.c#L347" id  L776" class7"line" nam
  L336">.33667a>edccp_feat_lOPNOTSUPPref="net/dccp/feat.c#L412" id  L737" class7"line" nam
  L337">.33767a>.  73ref="net/dccp/feat.c#L398" id  L73dccp/fea7"line" nam
  L338">.33867a>.  738  if (6a href="+code=new" class	  _d6/a> y6/a>(spactoref">dccp_feat_	  _destruy6/a>(spacto="linef="+code=entry" clac="sref">f	  6/a>->6a hr"+code=u8" class=spa="sref">f	  6/a>-&spacto="li"+code=dccp_feat_spaeesref">len6/a>)) spaeeshref==net/dccp/feat.c#L347" id  L77dccp/fea7"line" nam
  L339">.33967a>eNULL6/a>)elasMEMref="net/dccp/feat.c#L419" id  L740" class7"line" nam
  L340">.34067a>.  74     net/dccp/feat.c#L382" id  L741" class7"line" nam
  L341">.34167a>.  74              href="code=dccp_feat_cl2"
_sp_	push_changvref">dccp_feat_	  _destrupush_changv="lincode=node" clasc/ref">feat_num6/ashrefa+code=u8" class=clasref">feat_num6/a>);ref=" code=feat_num" isu 6a href">u86/a> 6a isu 6a href="+code=u8" class=/a>)eu86/a> 6a /a>)ef	  6/a>->6a hrh"net/dccp/feat.c#L412" id  L74s5 class7"line" nam
  L342">.34267a>.  74   6a"net/dccp/feat.c#L382" id  L743" class7"line" nam
  L343">.34367a>e.34467a>.  74 class="comment"> * F2r gen/*a href="net/dccp/feat.c#L348" id  L745" class7"line" nam
  L345">.34567a>}e<74 class="comment"> * Feature ne	  _destrureg"21er_spste fReg"21er reque">snto changvp si2" ior.czeof(s href="net/dccp/feat.c#L348" id  L746" class7"line" nam
  L346">.34667a>e * - each  ne@sk: clik: yorief">enragssocket href="net/dccp/feat.c#L348" id  L747" class7"line" nam
  L347">.34767a>6sp74 class="comment">/**6/spaluthe@8" i: /a>scp_featufeat.c#ntor.&bera href="net/dccp/feat.c#L351" id  L74dccp/fea7"line" nam
  L348">.34867a>6sp74 class="comment"> * dccp_fe ne@isu 6a h: whetherts kno6a hs(1) ortremote (0)y@8" i (ssmeant href="net/dccp/feat.c#L348" id  L74dccp/fea7"line" nam
  L349">.34967a>6sp74 class="comment"> * @sk: fully@ef">: arrayscp_pccperrP szeof(s, in descender hard1) cp_pccperence href="net/dccp/feat.c#L348" id  L750" class7"line" nam
  L350">.35067a>6sp75 class="comment"> * @feat_num: ees: sengthscp_@own,nockbytesreref="net/dccp/feat.c#L351" id  L751" class7"line" nam
  L351">.35167a>6sp75 class="comment"> * @loca : wne43ature to activate, 2"
 2f  L752" class7"line" nam
  L352">.35267a>6sp75     f="+code=dccp_feat_cl2"
_sp_	reg"21er_s href="net/dccp/cl2"
_sp_	reg"21er_s ="linhref="+code=dccp_feat_sockref">dccp_feat_sock  ret+code=origin  " dkref">dccp_feat_skhrefa+code=u8" class="sref">u86/a> 6a href="+code=feat_num" clasref">feat_num6/a>);ref="+code=u8" class="sref">u86/a> 6a href="+code=feat_num" isu 6a href">u86/a> 6a isu 6a href="e to activate, 2"
 2f  L753" class7"line" nam
  L353">.35367a>6sp75                   6spal classscode=dccp_feat_"sref">u86/a> 6a href="+href="+code=origin  " ef">ref">u86/a> 6a ef">ref="+code=dccp_feat_"sref">u86/a> 6a href="+code=feat_num" aesref">len6/a>)) eeshrefhe to activate, 2"
 2f  L754" class7"line" nam
  L354">.35467a>6sp75     {    6a hc="comment"> * dccp_fe/* any changvssmuf="be reg"21eru sbefor.ce">abef"her hs knconneciq>
 wne43ature to activate, 2"
 2f  L755" class7"line" nam
  L355">.35567a>6sp755  6a href="+f="+code=new" classdkref">dccp_feat_skhrefef="+code=	  " classdk_d 6avref">dccp_feat_dk_d 6avref=c!"+code=FEAT_SP" cENCE_CLOSEDref">entry6/a>)ENCE_CLOSEDhrefhe to activate, 2"
 2f  L756" class7"line" nam
  L356">.35667a>sta75   6a href="+aaaaaaaafeat_num6/lISCONNref="net/dccp/feat.c#L419" id  L757" class7"line" nam
  L357">.35767a>.  75           6af="+code=new" class	  _d6/a> typvref">dccp_feat_entry6/a> typv="lincode=node" clasclasref">feat_num6/a>);ref=) !"+code=FEAT_SP" class=SPref">dccp_feat_lass=SP  sthe to activate, 2"
 2f  L75dccp/fea7"line" nam
  L358">.35867a>{e<75           6a href="+NULL6/a>)eEINVAsref="net/dccp/feat.c#L412" id  L75dccp/fea7"line" nam
  L359">.35967a>.  75           re href="code=dccp_feat__.c#ntrreg"21er_s href="net/dccp/_.c#ntrreg"21er_s ="linef="+code=entry" clacntrydkref">dccp_feat_cntrydk="lincode=node" classkref">dccp_feat_skhref)ef="+code=	  " class	#L4sdestr# lref">dccp_feat_	#L4sdestr# lref=a+code=u8" class=clasref">feat_num6/a>);ref=" code=feat_num" isu 6a href">u86/a> 6a isu 6a href="net/dccp/feat.c#L412" id  L760" class7"line" nam
  L360">.36067a>}e<76           6a href="+    6a hhhhhhhhhhh0"+code=dccp_feat_af">ref">u86/a> 6a ef">ref="+code=dccp_feat_aesref">len6/a>)) eeshrefh"net/dccp/feat.c#L412" id  L761" class7"line" nam
  L361">.36167a>e.36267a>6sp76ref="net/dccp/feat.c#L383" id  L763" class7"line" nam
  L363">.36367a>sta76 class="comment"> * List ma/*a href="net/dccp/feat.c#L348" id  L764" class7"line" nam
  L364">.36467a>{e<76 class="comment"> * F2r generaentry6/a> nn_gethte fQuery currk: /pender hzeof(6/f,NNy2" ior. href="net/dccp/feat.c#L348" id  L765" class7"line" nam
  L365">.36567a>.  76 class="comment"> * Feature ne@sk: ENCEssocket6/f,come">abef"hu sconneciq>
 href="net/dccp/feat.c#L348" id  L766" class7"line" nam
  L366">.36667a>.  76 class="comment"> * - each  ne@8" i: NNy2" ior.campbercfrom featufeat.c#ntor.&bera href="net/dccp/feat.c#L351" id  L767" class7"line" nam
  L367">.36767a>}e<76 class="comment">/**6/spaluth="nnet/dccp1" id  (fastnt6/sokup L768" class7"line" nam
  L368">.36867a>e * dccp_fe neForta . we tNNy2" ior.,e href=shzeof(6currk: lysbeer h# lists ed,har="nnet/dccp1" id  (fastnt6/sokup L76dccp/fea7"line" nam
  L369">.36967a>6sp76 class="comment"> * @sk: fullycurrk: y(csent6/ed)hzeof(6f="noc# lists rel (ssgoer hana href="net/dccp/feat.c#L355" id  L770" class7"line" nam
  L370">.37067a>sta77 class="comment"> * @feat_numne43ature to activate, 2"
 2f  L771" class7"line" nam
  L371">.37167a>{e<77ref="code=dccp_feat_""line" nam
a> 6a h6      code=dccp_feat_entry6/a> nn_getref">dccp_feat_entry6/a> nn_get="linhref="+code=dccp_feat_sockref">dccp_feat_sock  ret+code=origin  " dkref">dccp_feat_skhrefa+code=u8" class="sref">u86/a> 6a href="+code=feat_num" clasref">feat_num6/a>);ref=he to activate, 2"
 2f  L772" class7"line" nam
  L372">.37267a>.  77   6a"net/dccp/feat.c#L417" id  L773" class7"line" nam
  L373">.37367a>.  77             f="+code=new" class	  _d6/a> typvref">dccp_feat_entry6/a> typv="lincode=node" clasclasref">feat_num6/a>);ref=) ="+code=FEAT_SP" class=NNref">feat_num6/lass=NN  st"="net/dccp/feat.c#L417" id  L774" class7"line" nam
  L374">.37467a>.  77           6a href="+href="+code=dccp_feat_entrysockref">dccp_feat_	  _dsock  ret+code=origin  " d href="net/dccp/fpref=hefcode=new" class	  _ddkref">dccp_feat_cntrydk="lincode=node" classkref">dccp_feat_skhref)"net/dccp/feat.c#L412" id  L775" class7"line" nam
  L375">.37567a>.  77           if (6a hrehref="+code=dccp_feat_entry" class="sref">dccp_feat_entry6/a> *6a href="+code=new" classss="sref">dccp_feat_*6a href="net/dccp/feat.c#L412" id  L776" class7"line" nam
  L376">.37667a>.  77ref="net/dccp/feat.c#L347" id  L777" class7"line" nam
  L377">.37767a>.  77           6a href="+code=new" classss="sref">dccp_feat_*6a href=hefcode=new" class	  _destruef">nlooku href="net/dccp/feat.c#ntry"21"looku ="linef="+code=entry" clac href="net/dccp/fpref=ef="+code=	  " class	#L4sdestr# lref">dccp_feat_	#L4sdestr# lref=a+code=u8" class=clasref">feat_num6/a>);ref=" 1)"net/dccp/feat.c#L412" id  L778" class7"line" nam
  L378">.37867a>.  77           6a href="+f="+code=new" classss="sref">dccp_feat_*6a href=h!"+code=FEAT_SP" cs="sref">NULL6/a>)e.37967a>.  77           return 6a       re href="code=dccp_feat_ss="sref">dccp_feat_*6a href=ef="+code=	  " class="sref">	  6/a>.6a href="+code=sp" class=nsref">len6/a>)) nn    "net/dccp/feat.c#L412" id  L780" class7"line" nam
  L380">.38067a>.  78     net/dccp/feat.c#L382" id  L781" class7"line" nam
  L381">.38167a>}e<78                   6aswitch"+code=new" classclasref">feat_num6/a>);ref="="net/dccp/feat.c#L417" id  L782" class7"line" nam
  L382">.38267a>eentry6/a>)ENCEF_ACK_RATIO    :net/dccp/feat.c#L398" id  L783" class7"line" nam
  L383">.38367a>sta78                   6spal clas href="code=dccp_feat_c href="net/dccp/fpref=ef="+code=	  " class	#L4sdl_ack_rs reref">dccp_feat_	#L4sdl_ack_rs re    "net/dccp/feat.c#L412" id  L784" class7"line" nam
  L384">.38467a>{e<78           6a href="+case+code=NULL" clasENCEF_SEQUENCE_WINDOWref">entry6/a>)ENCEF_SEQUENCE_WINDOW    :net/dccp/feat.c#L398" id  L785" class7"line" nam
  L385">.38567a>.  78           if (6a hreeeeeeeee href="code=dccp_feat_c href="net/dccp/fpref=ef="+code=	  " class	#L4sdl_seq_wisref">len6/a>)) 	#L4sdl_seq_wis    "net/dccp/feat.c#L412" id  L786" class7"line" nam
  L386">.38667a>.  78   6a href="+aaaaaaaa"net/dccp/feat.c#L382" id  L787" class7"line" nam
  L387">.38767a>.  78           6a"net/dccp/feat.c#L382" id  L788" class7"line" nam
  L388">.38867a>.  78   6a href="+code=rx" class=ENCE_BUGref">dccp_feat_ENCE_BUG="linc="comment"> strer ">"attirm nto look up unsupporCP s2" ior.cfeatuu"e43atur"+code=node" clasclasref">feat_num6/a>);ref=""net/dccp/feat.c#L412" id  L78dccp/fea7"line" nam
  L389">.38967a>.  78           re href="="net/dccp/feat.c#L381" id  L790" class7"line" nam
  L390">.39067a>}e<79     "net/dccp/feat.c#L382" id  L791" class7"line" nam
  L391">.39167a>eNULL6/a>)eEXPORT_SYMBOL_GPs="lincode=node" clasentry6/a> nn_getref">dccp_feat_entry6/a> nn_get="li""net/dccp/feat.c#L412" id  L792" class7"line" nam
  L392">.39267a>sta79ref="net/dccp/feat.c#L383" id  L793" class7"line" nam
  L393">.39367a>.  79 class="comment"> * List ma/*a href="net/dccp/feat.c#L348" id  L794" class7"line" nam
  L394">.39467a>{e<79 class="comment"> * F2r genera	  _destrusignal nn_changvpte fUpd6av NNyzeof(s;Req&come">abef"hu sconneciq>
 href="net/dccp/feat.c#L348" id  L795" class7"line" nam
  L395">.39567a>.  79 class="comment"> * Feature ne@sk: ENCEssocket6/f,come">abef"hu sconneciq>
 href="net/dccp/feat.c#L348" id  L796" class7"line" nam
  L396">.39667a>.  79 class="comment"> * - each  ne@8" i: NNy2" ior.campbercfrom featufeat.c#ntor.&bera href="net/dccp/feat.c#L351" id  L797" class7"line" nam
  L397">.39767a>e/**6/spaluthe@nlacto:ys knnewpzeof(6to us. href="net/dccp/feat.c#L348" id  L798" class7"line" nam
  L398">.39867a>.  79 class="comment"> * dccp_fe n href="net/dccp/feat.c#L348" id  L79dccp/fea7"line" nam
  L399">.39967a>.  79 class="comment"> * @sk: full This;Runciq>
 (ssfau sto c @sunic6av NNyupd6avs out-of-banda href="net/dccp/feat.c#L355" id  L800" class8"line" nam
  L400">.40068a>e * @feat_numne43ature to activate, 2"
 2f  L801" class8"line" nam
  L391">.39168a>.  80     f="+code=dccp_feat_cl2"
_sp_	signal nn_changvref">dccp_feat_entry6/a> signal nn_changv="linhref="+code=dccp_feat_sockref">dccp_feat_sock  ret+code=origin  " dkref">dccp_feat_skhrefa+code=u8" class="sref">u86/a> 6a href="+code=feat_num" clasref">feat_num6/a>);ref="+code=dccp_feat_""line" nam
a> 6a h6      code=dccp_feat_nlactoref">dccp_feat_nlacto="lihe to activate, 2"
 2f  L802" class8"line" nam
  L402">.40268a>.  80   6a"net/dccp/feat.c#L417" id  L803" class8"line" nam
  L403">.40368a>.  80         6a hhref="+code=dccp_feat_	  " class="sref">	  6/ref">new6/a>);efeat_num6/ashref =+ef="+code=entry" clacntrydkref">dccp_feat_cntrydk="lincode=node" classkref">dccp_feat_skhref)ef="+code=	  " class	#L4sdestr# lref">dccp_feat_	#L4sdestr# lref="net/dccp/feat.c#L412" id  L804" class8"line" nam
  L404">.40468a>edccp_feat_	  _destruvalef="+code=feat_num" c="sref">f	  6/a>->6a hrf= { +code=sp" class=nsref">len6/a>)) nn     =rcode=feat_num" nnuctoref">dccp_feat_nlacto="li }"net/dccp/feat.c#L381" id  L805" class8"line" nam
  L395">.39568a>.  805  6a href="+href="+code=dccp_feat_entry" class="sref">dccp_feat_entry6/a> *6a href="+code=new" classss="sref">dccp_feat_*6a href="net/dccp/feat.c#L412" id  L806" class8"line" nam
  L396">.39668a>.  80ref="net/dccp/feat.c#L347" id  L807" class8"line" nam
  L397">.39768a>.  80           6af="+code=new" classdkref">dccp_feat_skhrefef="+code=	  " classdk_d 6avref">dccp_feat_dk_d 6avref=c!"+code=FEAT_SP" cENCE_OPENref">feat_num6/ENCE_OPENhref &6a href="+code=dccp_feat_skref">dccp_feat_skhrefef="+code=	  " classdk_d 6avref">dccp_feat_dk_d 6avref=c!"+code=FEAT_SP" cENCE_PARTOPENref">feat_num6/ENCE_PARTOPEN="lihe to activate, 2"
 2f  L808" class8"line" nam
  L398">.39868a>.  80           6a href="+.39968a>.  80 clasnet/dccp/feat.c#L412" id  L810" class8"line" nam
  L410">.41068a>.  81   return 0;ef="+code=new" class	  _d6/a> typvref">dccp_feat_entry6/a> typv="lincode=node" clasclasref">feat_num6/a>);ref=) !"+code=FEAT_SP" class=NNref">feat_num6/lass=NN  st ||net/dccp/feat.c#L381" id  L811" class8"line" nam
  L411">.41168a>.  81                 !code=f	  " clas	  _destruisuvalid_nlactoref">dccp_feat_	  _destruisuvalid_nlacto="lincode=node" clasclasref">feat_num6/a>);ref=" code=dccp_feat_nlactoref">dccp_feat_nlacto="lihhe to activate, 2"
 2f  L812" class8"line" nam
  L412">.41268a>}e<81           }eNULL6/a>)eEINVAsref="net/dccp/feat.c#L412" id  L813" class8"line" nam
  L413">.41368a>e.41468a>sta814  return 0;ef="+code=new" classnnuctoref">dccp_feat_nlacto="li ="+code=FEAT_SP" centry6/a> nn_getref">dccp_feat_entry6/a> nn_get="lincode=origin  " dkref">dccp_feat_skhrefa+code=u8" class=clasref">feat_num6/a>);ref=)he to activate, 2"
 2f  L815" class8"line" nam
  L415">.41568a>{e<81           if (6a hre * dccp_fe/* alrw6/y se yori# lists rel und1) wayumne43ature to activate, 2"
 2f  L816" class8"line" nam
  L416">.41668a>.  81ref="net/dccp/feat.c#L347" id  L817" class8"line" nam
  L417">.41768a>.  81           6acode=new" classss="sref">dccp_feat_*6a href=hefcode=new" class	  _destruef">nlooku href="net/dccp/feat.c#ntry"21"looku ="lina href="net/dccp/ref">feat_num6/ashrefa+code=u8" class=clasref">feat_num6/a>);ref=" 1)"net/dccp/feat.c#L412" id  L818" class8"line" nam
  L418">.41868a>.  818  if (6a href="+code=new" classss="sref">dccp_feat_*6a href=h!"+code=FEAT_SP" cs="sref">NULL6/a>)e.41968a>.  81           return 6a code=new" class	  _dpr_debulref">dccp_feat_	#L4dpr_debul="linc="comment"> strer ">"Clobberer  ex"21er  NNy*6a h featullu ef="+ featullu\n"e43atur"net/dccp/feat.c#L417" id  L820" class8"line" nam
  L420">.42068a>}e<82           6a href="+    6a hhhhhhh(unsigned lor  lor )code=f	  " classs="sref">dccp_feat_*6a href=ef="+code=	  " class="sref">	  6/a>.6a href="+code=sp" class=nsref">len6/a>)) nn    "net/dccp/feat.c#L417" id  L821" class8"line" nam
  L421">.42168a>edccp_feat_nlacto="lih"net/dccp/feat.c#L412" id  L822" class8"line" nam
  L422">.42268a>6sp82           }enpo href="net/dccp/feat.c#ntry"21"po ="lincode=node" classs="sref">dccp_feat_*6a href=h"net/dccp/feat.c#L412" id  L823" class8"line" nam
  L423">.42368a>6sp82         6a h"net/dccp/feat.c#L382" id  L824" class8"line" nam
  L424">.42468a>6sp824    net/dccp/feat.c#L381" id  L825" class8"line" nam
  L425">.42568a>6sp825          6acode=new" class L4t_cdk_dchedule_ackref">dccp_feat_ L4t_cdk_dchedule_ack="lincode=node" classkref">dccp_feat_skhref)"net/dccp/feat.c#L412" id  L826" class8"line" nam
  L426">.42668a>6sp82   6a href="+ href="code=dccp_feat_cl2"
_sp_	push_changvref">dccp_feat_	  _destrupush_changv="lincode=node" clasc/ref">feat_num6/ashrefa+code=u8" class=clasref">feat_num6/a>);ref=" 1,h0"+ef="+code=entry" clac="sref">f	  6/a>->6a hrh"net/dccp/feat.c#L412" id  L827" class8"line" nam
  L427">.42768a>6sp82ref=""net/dccp/feat.c#L382" id  L828" class8.c#L317" id  L428">.426/8>->82   6acode=dccp_feat_EXPORT_SYMBOL_GPsref">NULL6/a>)eEXPORT_SYMBOL_GPs="lincode=node" clasentry6/a> signal nn_changvref">dccp_feat_entry6/a> signal nn_changv="lih"net/dccp/feat.c#L412" id  L829" class8.c#L317" id  L428">.426/8a>.  82 clasnet/dccp/feat.c#L412" id  L8/dccp/fea8.c#L317" id  L428">.42668a>.  83 class="comment"> * @feat_n/*e43ature to activate, 2"
 2f  L870" class8"line" nam
  L370">.37468a>.  83 class="comment"> * @loca : whhhhhhTracker  c#ntor.s whos.czeof( dependn/sps knchoic(6/f,CCIDe<3ature to activate, 2"
 2f  L872" class8"line" nam
  L332">.33268a>.  83 class="comment"> * @fva : the<3ature to activate, 2"
 2f  L873" class8"line" nam
  L333">.33368a>.  83 class="comment"> * List mana This;is;designed withgcomextensi>
 (n mindnso that,anown,nwalk coul sbesdon. href="net/dccp/feat.c#L348" id  L834" class8"line" nam
  L334">.33468a>.  83 class="comment"> * F2r generabefor.cactivaCrags2ny c#ntor.s. However, she ex"21er  fr>.3worknwas;Reund to href="net/dccp/feat.c#L348" id  L835" class8"line" nam
  L335">.33568a>.  83 class="comment"> * Feature neworknsaCrsfactorily up until now, she autom6a hrverific6aq>
 (sslef yopena href="net/dccp/feat.c#L355" id  L876" class8"line" nam
  L336">.33668a>e * - each  neWhen adder h# w CCIDs, add,ancorr.sponder hdependency >abee herea href="net/dccp/feat.c#L355" id  L877" class8"line" nam
  L337">.33768a>.  83 class="comment">/**6/spaluthne43ature to activate, 2"
 2f  L83dccp/fea8"line" nam
  L338">.33868a>.  838  ifd 6a hrhref="href="+code=dccp_feat_ccid_dependencyref">dccp_feat_ccid_dependencyref="+code=new" classentry6/a> ccid_depsref">dccp_feat_entry6/a> ccid_deps="lincode=node" clas"sref">u86/a> 6a href="+code=feat_num" ccidref">dccp_feat_ccidhrefa+code=u8" class=boosref">f	  6/a>-&boosef="+code=feat_num" isu 6a href">u86/a> 6a isu 6a href=he to activate, 2"
 2f  L87dccp/fea8"line" nam
  L339">.33968a>e.34068a>.  84           6ad 6a hrhref="href="+code=dccp_feat_ccid_dependencyref">dccp_feat_ccid_dependencyref="code=dccp_feat_ccid2_dependenciesref">dccp_feat_ccid2_dependenciesref=[2][2]f= {net/dccp/feat.c#L417" id  L840" class8"line" nam
  L341">.34168a>.  84                   6as="comment"> * @feat_n/*e43ature to activate, 2"
 2f  L84s5 class8"line" nam
  L342">.34268a>.  84 class="comment"> * @fva : t                * CCID2 /a>)e<.s Ack Vectors (RFC 4  1,h4.): as;CCID (ssa TXe43ature to activate, 2"
 2f  L843" class8"line" nam
  L343">.34368a>e * List man                *y2" ior.ca>) SendnAck Vector (ssan RXy2" ior.,e`isu 6a hfea9;e43ature to activate, 2"
 2f  L844" class8"line" nam
  L344">.34468a>.  84 class="comment"> * F2r genn                *yneedssto be reverseda href="net/dccp/feat.c#L355" id  L845" class8"line" nam
  L345">.34568a>}e<84 class="comment"> * Feature                 *ne43ature to activate, 2"
 2f  L846" class8"line" nam
  L346">.34668a>e * F2r gen/* Dependencies6/f,s knreceiver-sidet(r/mote) CCID2 *ne43ature to activate, 2"
 2f  L847" class8"line" nam
  L347">.34768a>6sp84           6a href="+aaaaaaaa{e to activate, 2"
 2f  L84dccp/fea8"line" nam
  L348">.34868a>6sp84           6a href="+      6aaaaaaaaa+code=sp" class=dependent_clasref">feat_num6/dependent_clasref=hefcode=new" classENCEF_SEND_ACK_VECTORref">feat_num6/ENCEF_SEND_ACK_VECTOR    "net/dccp/feat.c#L417" id  L84dccp/fea8"line" nam
  L349">.34968a>6sp84           return 6a       reaaaaaaaa+code=sp" class=isu 6a href">u86/a> 6a isu 6a href=aaaaaaaefcode=new" classrefvref">dccp_feat_refv    "net/dccp/feat.c#L417" id  L850" class8"line" nam
  L350">.35068a>6sp85           6a href="+    6a hhhhhhhhh+code=sp" class=isu/a>)eu86/a> 6a is_/a>)edccp_feat_refv    "net/dccp/feat.c#L417" id  L850" class8"line" nam
  L351">.35168a>6sp85                   6a    6a h    6ahh+code=sp" class=="sref">	  6/a>.6a href="6a h    6ahh= 1net/dccp/feat.c#L417" id  L85s5 class8"line" nam
  L352">.35268a>6sp85           }e.35368a>6sp85                   6spal clas{h0"+0"+0"+0h"net/dccp/feat.c#L382" id  L854" class8"line" nam
  L354">.35468a>6sp85           6a href="+}"net/dccp/feat.c#L417" id  L855" class8"line" nam
  L355">.35568a>6sp85           if (6a hre{    6a c="comment"> * F2r gen/* Dependencies6/f,s knsender-sidet( 6a h) CCID2 *ne43ature to activate, 2"
 2f  L856" class8"line" nam
  L356">.35668a>sta85   6a href="+aaaaaaaa (6a hre{e to activate, 2"
 2f  L857" class8"line" nam
  L357">.35768a>.  85           6a href="+aaaaaaaaaaaaaaaa+code=sp" class=dependent_clasref">feat_num6/dependent_clasref=hefcode=new" classENCEF_SEND_ACK_VECTORref">feat_num6/ENCEF_SEND_ACK_VECTOR    "net/dccp/feat.c#L417" id  L85dccp/fea8"line" nam
  L358">.35868a>{e<85           6a href="+aaaaaaaaaaaaaaaa+code=sp" class=isu 6a href">u86/a> 6a isu 6a href=aaaaaaaefcode=new" classfalsvref">dccp_feat_falsv    "net/dccp/feat.c#L417" id  L85dccp/fea8"line" nam
  L359">.35968a>.  85           return 6a       reaaaaaaaa+code=sp" class=isu/a>)eu86/a> 6a is_/a>)edccp_feat_refv    "net/dccp/feat.c#L417" id  L860" class8"line" nam
  L360">.36068a>}e<86           6a href="+    6a hhhhhhhhh+code=sp" class=="sref">	  6/a>.6a href="6a h    6ahh= 1net/dccp/feat.c#L417" id  L861" class8"line" nam
  L361">.36168a>e.36268a>6sp86           }e.36368a>sta86                   6s"net/dccp/feat.c#L382" id  L864" class8"line" nam
  L364">.36468a>{e<86           6a}"net/dccp/feat.c#L381" id  L865" class8"line" nam
  L365">.36568a>.  865  6a href="+hr6a hrhref="href="+code=dccp_feat_ccid_dependencyref">dccp_feat_ccid_dependencyref="code=dccp_feat_ccid3_dependenciesref">dccp_feat_ccid3_dependenciesref=[2][5]f= {net/dccp/feat.c#L417" id  L866" class8"line" nam
  L366">.36668a>.  86   6a href="+aaaaaaaa{    6a c="comment"> * F2r gen/*e43ature to activate, 2"
 2f  L867" class8"line" nam
  L367">.36768a>}e<86 class="comment">/**6/spaluttttttttttttttttttttttttt* Dependencies6/f,s knreceiver-sidetCCID3e43ature to activate, 2"
 2f  L86dccp/fea8"line" nam
  L368">.36868a>e * dccp_fe tttttttttttttttttttttttt*ne43ature to activate, 2"
 2f  L86dccp/fea8"line" nam
  L369">.36968a>6sp86           return 6a       re{    6a c="comment"> * F2r gen/*  6a hly disabee Ack Vectors *ne43ature to activate, 2"
 2f  L870" class8"line" nam
  L370">.37068a>sta87           6a href="+    6a hhhhhhhhh+code=sp" class=dependent_clasref">feat_num6/dependent_clasref=hefcode=new" classENCEF_SEND_ACK_VECTORref">feat_num6/ENCEF_SEND_ACK_VECTOR    "net/dccp/feat.c#L417" id  L871" class8"line" nam
  L371">.37168a>{e<87                   6a    6a h    6ahh+code=sp" class=isu 6a href">u86/a> 6a isu 6a href=aaaaaaaefcode=new" classrefvref">dccp_feat_refv    "net/dccp/feat.c#L417" id  L872" class8"line" nam
  L372">.37268a>.  87           }e)eu86/a> 6a is_/a>)edccp_feat_falsv    "net/dccp/feat.c#L417" id  L873" class8"line" nam
  L373">.37368a>.  87                   6spal classs  6ahh+code=sp" class=="sref">	  6/a>.6a href="6a h    6ahh= 0net/dccp/feat.c#L417" id  L874" class8"line" nam
  L374">.37468a>.  87           6a href="+++++++++}"net/dccp/feat.c#L417" id  L875" class8"line" nam
  L375">.37568a>.  87           if (6a hreeeeeeeee{    6a c="comment"> * F2r gen/* see below why SendnLoss Evk: yR6av is >
 wne43ature to activate, 2"
 2f  L876" class8"line" nam
  L376">.37668a>.  87   6a href="+aaaaaaaaaaaaaaaa    6ahh+code=sp" class=dependent_clasref">feat_num6/dependent_clasref=hefcode=new" classENCEF_SEND_LEV_RATEref">feat_num6/ENCEF_SEND_LEV_RATE    "net/dccp/feat.c#L417" id  L877" class8"line" nam
  L377">.37768a>.  87           6a href="+aaaaaaaa    6ahh+code=sp" class=isu 6a href">u86/a> 6a isu 6a href=aaaaaaaefcode=new" classrefvref">dccp_feat_refv    "net/dccp/feat.c#L417" id  L87dccp/fea8"line" nam
  L378">.37868a>.  87           6a href="+aaaaaaaa    6ahh+code=sp" class=isu/a>)eu86/a> 6a is_/a>)edccp_feat_refv    "net/dccp/feat.c#L417" id  L87dccp/fea8"line" nam
  L379">.37968a>.  87           return 6a       re    6ahh+code=sp" class=="sref">	  6/a>.6a href="6a h    6ahh= 1net/dccp/feat.c#L417" id  L880" class8"line" nam
  L380">.38068a>.  88           6a href="+    6a h}"net/dccp/feat.c#L417" id  L881" class8"line" nam
  L381">.38168a>}e<88                   6aaaaaaaaa{    6a c="comment"> * F2r gen/* NDP Couni (ssneedP s2s per RFC 4  2, 6.1.1 wne43ature to activate, 2"
 2f  L882" class8"line" nam
  L382">.38268a>efeat_num6/dependent_clasref=hefcode=new" classENCEF_SEND_NDP_COUNTref">feat_num6/ENCEF_SEND_NDP_COUNT    "net/dccp/feat.c#L417" id  L883" class8"line" nam
  L383">.38368a>sta88                   6spal clas    6ahh+code=sp" class=isu 6a href">u86/a> 6a isu 6a href=aaaaaaaefcode=new" classfalsvref">dccp_feat_falsv    "net/dccp/feat.c#L417" id  L884" class8"line" nam
  L384">.38468a>{e<88           6a href="+pal clas    6ahh+code=sp" class=isu/a>)eu86/a> 6a is_/a>)edccp_feat_refv    "net/dccp/feat.c#L417" id  L885" class8"line" nam
  L385">.38568a>.  88           if (6a hreeeeeeeee    6ahh+code=sp" class=="sref">	  6/a>.6a href="6a h    6ahh= 1net/dccp/feat.c#L417" id  L886" class8"line" nam
  L386">.38668a>.  88   6a href="+aaaaaaaaaaaaaaaa}"net/dccp/feat.c#L417" id  L887" class8"line" nam
  L387">.38768a>.  88           6a href="+aaaaaaaa{h0"+0"+0"+0h""net/dccp/feat.c#L417" id  L88dccp/fea8"line" nam
  L388">.38868a>.  88           6a href="+""net/dccp/feat.c#L417" id  L88dccp/fea8"line" nam
  L389">.38968a>.  88           return 6a {    6a c="comment"> * F2r gen/*e43ature to activate, 2"
 2f  L890" class8"line" nam
  L390">.39068a>}e<89 class="comment"> * @feat_nuuuuuuuuuuuuuuuuuuuuuuuuu* CCID3 at,s knTX side: we reque"> that,s knHC-receivere43ature to activate, 2"
 2f  L891" class8"line" nam
  L391">.39168a>e * @loca : uuuuuuuuuuuuuuuuuuuuuuuu* willenotnsend Ack Vectors (shey willeb6signored,hso href="net/dccp/feat.c#L348" id  L892" class8"line" nam
  L392">.39268a>sta89 class="comment"> * @fva : t                uuuuuuuu* Ma>)e.39368a>.  89 class="comment"> * List mat                uuuuuuuu* (Ma>)e
 doessnotnsupporC href="net/dccp/feat.c#L348" id  L894" class8"line" nam
  L394">.39468a>{e<89 class="comment"> * F2r gene                uuuuuuuu* s knLoss Inter hrs opiq>
sof RFC 4  2, 8.6)a href="net/dccp/feat.c#L355" id  L895" class8"line" nam
  L395">.39568a>.  89 class="comment"> * Feature                 uuuuuuuu* T knoa"> two opiq>
s ar.cfor peerfea9;s inform6aq>
 onlta href="net/dccp/feat.c#L355" id  L896" class8"line" nam
  L396">.39668a>.  89 class="comment"> * - each                 uuuuuuuu*ne43ature to activate, 2"
 2f  L897" class8"line" nam
  L397">.39768a>e.39868a>.  89           6a href="+      6aaaaaaaaa+code=sp" class=dependent_clasref">feat_num6/dependent_clasref=hefcode=new" classENCEF_SEND_ACK_VECTORref">feat_num6/ENCEF_SEND_ACK_VECTOR    "net/dccp/feat.c#L417" id  L89dccp/fea8"line" nam
  L399">.39968a>.  89           return 6a       reaaaaaaaa+code=sp" class=isu 6a href">u86/a> 6a isu 6a href=aaaaaaaefcode=new" classfalsvref">dccp_feat_falsv    "net/dccp/feat.c#L417" id  L900" class9"line" nam
  L400">.40069a>e)eu86/a> 6a is_/a>)edccp_feat_falsv    "net/dccp/feat.c#L417" id  L901" class9"line" nam
  L391">.39169a>.  90                   6a    6a h    6ahh+code=sp" class=="sref">	  6/a>.6a href="6a h    6ahh= 0net/dccp/feat.c#L417" id  L902" class9"line" nam
  L402">.40269a>.  90           }e.40369a>.  90                   6spal clas{net/dccp/feat.c#L417" id  L904" class9"line" nam
  L394">.39469a>efeat_num6/dependent_clasref=hefcode=new" classENCEF_SEND_LEV_RATEref">feat_num6/ENCEF_SEND_LEV_RATE    "net/dccp/feat.c#L417" id  L905" class9"line" nam
  L395">.39569a>.  90           if (6a hreeeeeeeee    6ahh+code=sp" class=isu 6a href">u86/a> 6a isu 6a href=aaaaaaaefcode=new" classfalsvref">dccp_feat_falsv    "net/dccp/feat.c#L417" id  L906" class9"line" nam
  L396">.39669a>.  90   6a href="+aaaaaaaaaaaaaaaa    6ahh+code=sp" class=isu/a>)eu86/a> 6a is_/a>)edccp_feat_refv    "net/dccp/feat.c#L417" id  L907" class9"line" nam
  L397">.39769a>.  90           6a href="+aaaaaaaa    6ahh+code=sp" class=="sref">	  6/a>.6a href="6a h    6ahh= 1net/dccp/feat.c#L417" id  L908" class9"line" nam
  L398">.39869a>.  90           6a href="+++++++++}"net/dccp/feat.c#L417" id  L909" class9"line" nam
  L399">.39969a>.  90           return 6a       re{    6a c="comment"> * F2r gen/* this;CCID doessnotnsupporC Ack R6aq>u*ne43ature to activate, 2"
 2f  L910" class9"line" nam
  L410">.41069a>.  91           6a href="+    6a hhhhhhhhh+code=sp" class=dependent_clasref">feat_num6/dependent_clasref=hefcode=new" classENCEF_ACK_RATIOref">entry6/a>)ENCEF_ACK_RATIO    "net/dccp/feat.c#L417" id  L911" class9"line" nam
  L411">.41169a>.  91                 f="+    6a hhhhhhhhh+code=sp" class=isu 6a href">u86/a> 6a isu 6a href=aaaaaaaefcode=new" classrefvref">dccp_feat_refv    "net/dccp/feat.c#L417" id  L912" class9"line" nam
  L412">.41269a>}e<91           }e)eu86/a> 6a is_/a>)edccp_feat_falsv    "net/dccp/feat.c#L417" id  L913" class9"line" nam
  L413">.41369a>e	  6/a>.6a href="6a h    6ahh= 0net/dccp/feat.c#L417" id  L914" class9"line" nam
  L414">.41469a>sta91           6a href="+++++++++}"net/dccp/feat.c#L417" id  L915" class9"line" nam
  L415">.41569a>{e<91           if (6a hreeeeeeeee{    6a c="comment"> * F2r gen/* tellnreceiver we ar.csender hNDP counis *ne43ature to activate, 2"
 2f  L916" class9"line" nam
  L416">.41669a>.  91   6a href="+aaaaaaaaaaaaaaaa    6ahh+code=sp" class=dependent_clasref">feat_num6/dependent_clasref=hefcode=new" classENCEF_SEND_NDP_COUNTref">feat_num6/ENCEF_SEND_NDP_COUNT    "net/dccp/feat.c#L417" id  L917" class9"line" nam
  L417">.41769a>.  91           6a href="+aaaaaaaa    6ahh+code=sp" class=isu 6a href">u86/a> 6a isu 6a href=aaaaaaaefcode=new" classrefvref">dccp_feat_refv    "net/dccp/feat.c#L417" id  L918" class9"line" nam
  L418">.41869a>.  91           6a href="+aaaaaaaa    6ahh+code=sp" class=isu/a>)eu86/a> 6a is_/a>)edccp_feat_falsv    "net/dccp/feat.c#L417" id  L919" class9"line" nam
  L419">.41969a>.  91           return 6a aaaaaaaa    6ahh+code=sp" class=="sref">	  6/a>.6a href="6a h    6ahh= 1net/dccp/feat.c#L417" id  L920" class9"line" nam
  L420">.42069a>}e<92           6a href="+    6a h}"net/dccp/feat.c#L417" id  L921" class9"line" nam
  L421">.42169a>e.42269a>6sp92           }e.42369a>6sp92         6a h""net/dccp/feat.c#L381" id  L924" class9"line" nam
  L424">.42469a>6sp92           6aswitch"+code=new" classccidref">dccp_feat_ccidhrefh="net/dccp/feat.c#L417" id  L925" class9"line" nam
  L425">.42569a>6sp925          6acase+code=NULL" clasENCEC_CCID2ref">feat_num6/ENCEC_CCID2    :net/dccp/feat.c#L398" id  L926" class9"line" nam
  L426">.42669a>6sp92   6a href="+aaaaaaaadccp_feat_ccid2_dependenciesref=[code=sp" class=isu 6a href">u86/a> 6a isu 6a href=]"net/dccp/feat.c#L381" id  L927" class9"line" nam
  L427">.42769a>6sp927          6acase+code=NULL" clasENCEC_CCID3ref">feat_num6/ENCEC_CCID3    :net/dccp/feat.c#L398" id  L928" class9.c#L317" id  L428">.426/9>->92           6a href="+dccp_feat_ccid3_dependenciesref=[code=sp" class=isu 6a href">u86/a> 6a isu 6a href=]"net/dccp/feat.c#L381" id  L929" class9.c#L317" id  L428">.426/9a>.  92           redefault:net/dccp/feat.c#L398" id  L9/dccp/fea9.c#L317" id  L428">.42669a>.  93           6a href="+NULL6/a>)e.37469a>.  93             "net/dccp/feat.c#L382" id  L972" class9"line" nam
  L332">.33269a>.  93 clas"net/dccp/feat.c#L382" id  L973" class9"line" nam
  L333">.33369a>.  93ref="net/dccp/feat.c#L414" id  L934" class9"line" nam
  L334">.33469a>.  93 class="comment"> * F2r gen/*a href="net/dccp/feat.c#L348" id  L935" class9"line" nam
  L335">.33569a>.  93 class="comment"> * Feature ne	  _destrupropagate ccid - Resolve dependencies6/f,c#ntor.s >
 choic(6/f,CCIDe<3ature to activate, 2"
 2f  L976" class9"line" nam
  L336">.33669a>e * - each  ne@fn:,c#ntor.-# lists rel own,nto upd6ave<3ature to activate, 2"
 2f  L977" class9"line" nam
  L337">.33769a>.  93 class="comment">/**6/spaluth @id:;CCID ampbercto track="3ature to activate, 2"
 2f  L978" class9"line" nam
  L338">.33869a>.  93 class="comment"> * dccp_fe ne@isu 6a h: whethercTX;CCID (1)yoriRX;CCID (0) (ssmeanC href="net/dccp/feat.c#L348" id  L97dccp/fea9"line" nam
  L339">.33969a>e * @sk: full href="net/dccp/feat.c#L348" id  L940" class9"line" nam
  L340">.34069a>.  94 class="comment"> * @feat_num:This;Runciq>
 needssto be a hlP s2ftercreg"21errags2llnothercc#ntor.sa href="net/dccp/feat.c#L355" id  L940" class9"line" nam
  L341">.34169a>.  94 class="comment"> * @loca : wne43ature to activate, 2"
 2f  L94s5 class9"line" nam
  L342">.34269a>.  94 clashr6a hrf="+code=dccp_feat_cl2"
_sp_	propagate ccidref">feat_num6/dl2"
_sp_	propagate ccidclasnhref="+code=dccp_feat_	  " class="sref">	  6/ref">new6/a>);efeat_num6/ashref"+code=u8" class="sref">u86/a> 6a href="+code=feat_num" iss="sref">	  6/ridhrefa+code=u8" class=boosref">f	  6/a>-&boosef="+code=feat_num" isu 6a href">u86/a> 6a isu 6a href=he to activate, 2"
 2f  L943" class9"line" nam
  L343">.34369a>e.34469a>.  94           6ahref="href="+code=dccp_feat_ccid_dependencyref">dccp_feat_ccid_dependencyref="+code=new" class>abeeref">dccp_feat_rabeeref=hefcode=new" classentry6/a> ccid_depsref">dccp_feat_entry6/a> ccid_deps="lincode=node" clasiss="sref">	  6/ridhrefa+code=u8" class=isu 6a href">u86/a> 6a isu 6a href=h"net/dccp/feat.c#L381" id  L945" class9"line" nam
  L345">.34569a>}e<945          6af="+code=dccp_feat_iref">u86/a> 6a ihrefa+code=u8" class=rcref">u86/a> 6a rcref=hefncode=node" clas>abeeref">dccp_feat_rabeeref=he"+code=FEAT_SP" cs="sref">NULL6/a>)e.34669a>e.34769a>6sp94           6afor ncode=node" clasiref">u86/a> 6a ihrefh= 0"+code=dccp_feat_rcref">u86/a> 6a rcref=he= 0 &6a href="+code=dccp_feat_>abeeref">dccp_feat_rabeeref=[code=sp" class=iref">u86/a> 6a ihref]+code=sp" class=dependent_clasref">feat_num6/dependent_clasref=h!"+code=FEAT_SP" cENCEF_RESERVEDref">feat_num6/ENCEF_RESERVEDref="+code=dccp_feat_iref">u86/a> 6a ihref++he to activate, 2"
 2f  L948" class9"line" nam
  L348">.34869a>6sp94           6a href="+f="+code=new" class	  _d6/a> typvref">dccp_feat_entry6/a> typv="lincode=node" clas>abeeref">dccp_feat_rabeeref=[code=sp" class=iref">u86/a> 6a ihref]+code=sp" class=dependent_clasref">feat_num6/dependent_clasref=) ="+code=FEAT_SP" class=SPref">feat_num6/lass=SPref=he to activate, 2"
 2f  L94dccp/fea9"line" nam
  L349">.34969a>6sp94           return 6a       recode=u8" class=rcref">u86/a> 6a rcref=hefcode=u8" class=_y6/a> reg"21er_s href="net/dccp/_y6/a> reg"21er_s ="lincode=node" clasp/ref">feat_num6/ashref"+code=u8" class=>abeeref">dccp_feat_rabeeref=[code=sp" class=iref">u86/a> 6a ihref]+code=sp" class=dependent_clasref">feat_num6/dependent_clasref="net/dccp/feat.c#L417" id  L950" class9"line" nam
  L350">.35069a>6sp95           6a href="+    6a hhhhhhhhh  return 6a       recode=u8" class=>abeeref">dccp_feat_rabeeref=[code=sp" class=iref">u86/a> 6a ihref]+code=sp" class=isu 6a href">u86/a> 6a isu 6a href="net/dccp/feat.c#L417" id  L950" class9"line" nam
  L351">.35169a>6sp95                   6a    6a h    6ahh  return 6a       recode=u8" class=>abeeref">dccp_feat_rabeeref=[code=sp" class=iref">u86/a> 6a ihref]+code=sp" class=isu/a>)eu86/a> 6a is_/a>)e.35269a>6sp95           }eabeeref">dccp_feat_rabeeref=[code=sp" class=iref">u86/a> 6a ihref]+code=sp" class=="sref">	  6/a>.6a href="" 1)"net/dccp/feat.c#L412" id  L953" class9"line" nam
  L353">.35369a>6sp95                   6selsenet/dccp/feat.c#L412" id  L954" class9"line" nam
  L354">.35469a>6sp95           6a href="+      recode=u8" class=rcref">u86/a> 6a rcref=hefcode=u8" class=_y6/a> reg"21er_nsref">len6/a>)) _y6/a> reg"21er_ns="lincode=node" clasp/ref">feat_num6/ashref"+code=u8" class=>abeeref">dccp_feat_rabeeref=[code=sp" class=iref">u86/a> 6a ihref]+code=sp" class=dependent_clasref">feat_num6/dependent_clasref="net/dccp/feat.c#L417" id  L955" class9"line" nam
  L355">.35569a>6sp95           if (6a hreeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeecode=u8" class=>abeeref">dccp_feat_rabeeref=[code=sp" class=iref">u86/a> 6a ihref]+code=sp" class=isu/a>)eu86/a> 6a is_/a>)e.35669a>sta95   6a href="+aaaaaaaa (6a hreeeeeeeeeeeeeeeeeeeeeeeeeeeeecode=u8" class=>abeeref">dccp_feat_rabeeref=[code=sp" class=iref">u86/a> 6a ihref]+code=sp" class=="sref">	  6/a>.6a href=")"net/dccp/feat.c#L412" id  L957" class9"line" nam
  L357">.35769a>.  95           6au86/a> 6a rcref="net/dccp/feat.c#L412" id  L958" class9"line" nam
  L358">.35869a>{e<95     "net/dccp/feat.c#L382" id  L95dccp/fea9"line" nam
  L359">.35969a>.  95 clasnet/dccp/feat.c#L412" id  L960" class9"line" nam
  L360">.36069a>}e<96 class="comment"> * @feat_n/*l href="net/dccp/feat.c#L348" id  L961" class9"line" nam
  L361">.36169a>e * @loca : whentry6/a> finalise_set1er spte fFinalise set1er spbefor.cstarter h# lists rel href="net/dccp/feat.c#L348" id  L96s5 class9"line" nam
  L362">.36269a>6sp96 class="comment"> * @fva : th @dp:mmeik: yor ef">ener hsocket6(set1er spwilleb6sinherited) href="net/dccp/feat.c#L348" id  L963" class9"line" nam
  L363">.36369a>sta96 class="comment"> * List mana href="net/dccp/feat.c#L348" id  L964" class9"line" nam
  L364">.36469a>{e<96 class="comment"> * F2r generaThis;is;a hlP s2ftercallnreg"21rs rens6(socket6inistsef"s ren, sysctls, and href="net/dccp/feat.c#L348" id  L965" class9"line" nam
  L365">.36569a>.  96 class="comment"> * Feature nesockopt;a hls), andpbefor.csender hs knfirst packet6container hChangvpopiq>
s href="net/dccp/feat.c#L348" id  L966" class9"line" nam
  L366">.36669a>.  96 class="comment"> * - each  ne(ie.mmeik: -Reque"> or server-R.sponse), to ensor.cinternalahreff">encta href="net/dccp/feat.c#L355" id  L967" class9"line" nam
  L367">.36769a>}e<96 class="comment">/**6/spalutwne43ature to activate, 2"
 2f  L96dccp/fea9"line" nam
  L368">.36869a>edccp_feat_entry6/a> finalise_set1er sclasnhref="+code=dccp_feat_entrysockref">dccp_feat_entrysockref="+code=new" classc href="net/dccp/fpref=he to activate, 2"
 2f  L96dccp/fea9"line" nam
  L369">.36969a>6sp96     "net/dccp/feat.c#L417" id  L970" class9"line" nam
  L370">.37069a>sta97           6ad ef="+code=dccp_feat_	  " class="sref">	  6/ref">new6/a>);efeat_num6/ashref =+ef="+code=entry" clac href="net/dccp/fpref=ef="+code=	  " class	#L4sd7" i# lref">dccp_feat_	#L4sdestr# lref="net/dccp/feat.c#L412" id  L971" class9"line" nam
  L371">.37169a>{e<97             href="+code=dccp_feat_entry" class="sref">dccp_feat_entry6/a> *6a href="+code=new" classss="sref">dccp_feat_*6a href="net/dccp/feat.c#L412" id  L972" class9"line" nam
  L372">.37269a>.  97           }ef="+code=dccp_feat_iref">u86/a> 6a ihref =+2"+code=u8" class=ccidsref">dccp_feat_ccidsref=[2]f= { -1, -1h""net/dccp/feat.c#L381" id  L973" class9"line" nam
  L373">.37369a>.  97ref="net/dccp/feat.c#L414" id  L974" class9"line" nam
  L374">.37469a>.  97           6ac="comment"> * F2r gen/*e43ature to activate, 2"
 2f  L975" class9"line" nam
  L375">.37569a>.  97 class="comment"> * Feature         * Propagater hCCIDs:e43ature to activate, 2"
 2f  L976" class9"line" nam
  L376">.37669a>.  97 class="comment"> * - each          * 1)snotnuseful to propagate;CCID set1er spif this;ho"> advertises mor.e43ature to activate, 2"
 2f  L977" class9"line" nam
  L377">.37769a>.  97 class="comment">/**6/spalutttttttttwhhhhthan one;CCID:ps knchoic(6/f,CCID  may hrillechangvp-pif this;is href="net/dccp/feat.c#L348" id  L97dccp/fea9"line" nam
  L378">.37869a>.  97 class="comment"> * dccp_fe ttttttttwhhhhthemmeik: , or if this;is,s knserver andpthemmeik: csends href="net/dccp/feat.c#L348" id  L97dccp/fea9"line" nam
  L379">.37969a>.  97 class="comment"> * @sk: fulttttttttwhhhhser leton,CCID zeof(sa href="net/dccp/feat.c#L355" id  L980" class9"line" nam
  L380">.38069a>.  98 class="comment"> * @feat_nuuuuuuuuu* 2) sinceiis,s at propagate ccid changvs,s knef">, we defer changer  href="net/dccp/feat.c#L355" id  L981" class9"line" nam
  L381">.38169a>}e<98 class="comment"> * @loca : uuuuuuuuwhhhhthemsorted lwn,nuntil 2ftercthem1rsversala href="net/dccp/feat.c#L355" id  L982" class9"line" nam
  L382">.38269a>e * @fva : t        wne43ature to activate, 2"
 2f  L983" class9"line" nam
  L383">.38369a>sta98             code=dccp_feat_	  " for_eachass="sref">dccp_feat_	  " for_eachass="s="lincode=node" classs="sref">dccp_feat_*6a href=a+code=u8" class=c/ref">feat_num6/ashref"+code=u8" class=nassref">feat_num6/nassref=he to activate, 2"
 2f  L984" class9"line" nam
  L384">.38469a>{e<98           6a href="+f="+code=new" classss="sref">dccp_feat_*6a href=ef="+code=	  " class6/a> numref">feat_num6/a/a> numref=he"+code=FEAT_SP" cENCEF_CCIDref">feat_num6/ENCEF_CCIDedccp_feat_*6a href=ef="+code=	  " class="sref">	  6/a>.6a href="+code=sp" class=s href="net/dccp/s ="li+code=sp" class=le/ref">feat_num6/le/ref=he"+1he to activate, 2"
 2f  L985" class9"line" nam
  L385">.38569a>.  98           if (6a hreeeeeeeeecode=u8" class=ccidsref">dccp_feat_ccidsref=[code=dccp_feat_ss="sref">dccp_feat_*6a href=ef="+code=	  " classisu 6a href">u86/a> 6a isu 6a href=]hefcode=u8" class=ss="sref">dccp_feat_*6a href=ef="+code=	  " class="sref">	  6/a>.6a href="+code=sp" class=s href="net/dccp/s ="li+code=sp" class=vecref">u86/a> 6a vecref=[0]"net/dccp/feat.c#L381" id  L986" class9"line" nam
  L386">.38669a>.  98   6a href="+while ncode=node" clasiref">u86/a> 6a ihref--he to activate, 2"
 2f  L987" class9"line" nam
  L387">.38769a>.  98           6a href="+f="+code=new" classccidsref">dccp_feat_ccidsref=[code=dccp_feat_iref">u86/a> 6a ihref] f="+ 0 &6a href="+code=dccp_feat_cl2"
_sp_	propagate ccidref">feat_num6/dl2"
_sp_	propagate ccidclasncode=u8" class=c/ref">feat_num6/ashref"+code=u8" class=ccidsref">dccp_feat_ccidsref=[code=dccp_feat_iref">u86/a> 6a ihref]a+code=u8" class=iref">u86/a> 6a ihref)he to activate, 2"
 2f  L98dccp/fea9"line" nam
  L388">.38869a>.  98           6a href="+++++++++.38969a>.  98           recode=dccp_feat_cl2"
_sp_	print_cn	  "ref">feat_num6/dl2"
_sp_	print_cn	  "clasncode=u8" class=c/ref">feat_num6/ashref)"net/dccp/feat.c#L412" id  L990" class9"line" nam
  L390">.39069a>}e<99           6a.39169a>e.39269a>sta99 clasnet/dccp/feat.c#L382" id  L993" class9"line" nam
  L393">.39369a>.  99 class="comment"> * List ma/*l href="net/dccp/feat.c#L348" id  L994" class9"line" nam
  L394">.39469a>{e<99 class="comment"> * F2r genewhentry6/a> server_ccid_dependencies6te fResolve CCID-dependentcc#ntor.s href="net/dccp/feat.c#L348" id  L995" class9"line" nam
  L395">.39569a>.  99 class="comment"> * Feature * It;is,s knserver whicha.39669a>.  99 class="comment"> * - each  * fullyh# lists ed. IfsnonCCID haspbeelh# lists ed, itnuses,s kndefaultnCCIDa href="net/dccp/feat.c#L355" id  L997" class9"line" nam
  L397">.39769a>e/**6/spalutwne43ature to activate, 2"
 2f  L998" class9"line" nam
  L398">.39869a>.  99 clasf="+code=dccp_feat_cl2"
_sp_	server_ccid_dependenciesref">feat_num6/dl2"
_sp_	server_ccid_dependenciesclasnhref="+code=dccp_feat_entryreque">ysockref">dccp_feat_entryreque">ysockref="+code=new" classcreqref">dccp_feat_ereqref=he to activate, 2"
 2f  L99dccp/fea9"line" nam
  L399">.39969a>.  99     "net/dccp/feat.c#L417" id  L1000" class1000" e" nam
  L399">.39961000">1000          6ad ef="+code=dccp_feat_	  " class="sref">	  6/ref">new6/a>);efeat_num6/ashref =+ef="+code=entry" clacreqref">dccp_feat_ereqref=ef="+code=	  " class	reqd7" i# lref">dccp_feat_	reqd7" i# lref="ne/pre>dccpdon." clas26/f3/51c72ae2722c6e6b586b2bad76fcf2926d08_3/1000">et/dccp/feat.c#L417" id  L1001" class100line" nam
  L391">.3916100li>100             href="+code=dccp_feat_entry" class="sref">dccp_feat_entry6/a> *6a href="+code=new" classss="sref">dccp_feat_*6a href="net/dccp/feat.c#L412" id  L1002" class100line" nam
  L392">.3926100li>1002          recode=dccp_feat_"sref">u86/a> 6a href="+code=feat_num" isu 6a href">u86/a> 6a isu 6a href="+code=feat_num" ccidref">dccp_feat_ccidhref"net/dccp/feat.c#L412" id  L1003" class100line" nam
  L393">.3936100li>100ref="net/dccp/feat.c#L414" id  L1004" class100line" nam
  L394">.3946100li>100           6afor ncode=node" clasisu 6a href">u86/a> 6a isu 6a href=a= 0"+code=dccp_feat_isu 6a href">u86/a> 6a isu 6a href=a<"+1"+code=dccp_feat_isu 6a href">u86/a> 6a isu 6a href=++h="net/dccp/feat.c#L417" id  L1005" class100line" nam
  L395">.3956100li>100           if (6a hrecode=new" classss="sref">dccp_feat_*6a href=hefcode=new" classentry6/a> ef">nlooku href="net/dccp/feat.c#ntry"21"looku clasncode=u8" class=c/ref">feat_num6/ashref"+code=u8" class=ENCEF_CCIDref">feat_num6/ENCEF_CCIDeu86/a> 6a isu 6a href=h"net/dccp/feat.c#L381" id  L1006" class100line" nam
  L396">.3966100li>100ref="net/dccp/feat.c#L347" id  L1007" class100line" nam
  L397">.3976100li>100           6a href="+f="+code=new" classss="sref">dccp_feat_*6a href=h!"+code=FEAT_SP" cs="sref">NULL6/a>)edccp_feat_*6a href=ef="+code=	  " classempty_confirmref">feat_num6/empty_confirmref=he to activate, 2"
 2f  L1008" class100line" nam
  L398">.3986100li>100           6a href="+++++++++code=feat_num" ccidref">dccp_feat_ccidhrefhefcode=u8" class=ss="sref">dccp_feat_*6a href=ef="+code=	  " class="sref">	  6/a>.6a href="+code=sp" class=s href="net/dccp/s ="li+code=sp" class=vecref">u86/a> 6a vecref=[0]"net/dccp/feat.c#L381" id  L1009" class100line" nam
  L399">.3996100li>100           return 6a elsenet/dccp/feat.c#L412" id  L1010" class10"line" nam
  L410">.410610"li>10"l          6a href="+++++++++code=feat_num" ccidref">dccp_feat_ccidhrefhefcode=u8" class=feat.c#ntrdefault_zeof(href="net/dccp/feat.c#ntrdefault_zeof(clasncode=u8" class=ENCEF_CCIDref">feat_num6/ENCEF_CCIDe.411610"li>10"1ef="net/dccp/feat.c#L347" id  L1012" class10"line" nam
  L412">.412610"li>10"           }e propagate ccidref">feat_num6/dl2"
_sp_	propagate ccidclasncode=u8" class=c/ref">feat_num6/ashref"+code=u8" class=ccidref">dccp_feat_ccidhrefa+code=u8" class=isu 6a href">u86/a> 6a isu 6a href=hhe to activate, 2"
 2f  L1013" class10"line" nam
  L413">.413610"li>10"                   6spal clas.414610"li>10"           6a}net/dccp/feat.c#L381" id  L10"5" class10"line" nam
  L415">.415610"li>10"           if.416610"li>10"6clas"net/dccp/feat.c#L382" id  L10"7" class10"line" nam
  L417">.417610"li>10"7ef="net/dccp/feat.c#L347" id  L1018" class10"line" nam
  L418">.418610"li>10" class="comment"> * dccp_fe/* Selecths knfirst *6a h in @servown,nt at also occurs in @cliown,n(6.3.1)twne43ature to activate, 2"
 2f  L10"9" class10"line" nam
  L419">.419610"li>10"     hr6a hrf="+code=dccp_feat_cl2"
_sp_	prefy"21"matchref">feat_num6/dl2"
_sp_	prefy"21"matchclasncode=u8" class="sref">u86/a> 6a href="++code=new" classservown,href="net/dccp/servown,hrefa+code=u8" class="sref">u86/a> 6a href="+code=feat_num" sle/ref">feat_num6/sle/ref=a+code=u8" class="sref">u86/a> 6a href="++code=new" classcliown,ref">dccp_feat_cliown,hrefa+code=u8" class="sref">u86/a> 6a href="+code=feat_num" cle/ref">feat_num6/cle/ref=he to activate, 2"
 2f  L1020" class10"line" nam
  L420">.420610"li>10"l    "net/dccp/feat.c#L417" id  L1021" class10"line" nam
  L421">.421610"li>10"             code=u8" class="sref">u86/a> 6a href="+code=feat_num" cref">feat_num6/chrefa+code=u8" class=sref">feat_num6/shref"net/dccp/feat.c#L412" id  L1022" class10"line" nam
  L422">.422610"li>10" clasnet/dccp/feat.c#L382" id  L10"3" class10"line" nam
  L423">.423610"li>10"             for ncode=node" classref">feat_num6/shrefa= 0"+code=dccp_feat_sref">feat_num6/shrefa<+code=feat_num" sle/ref">feat_num6/sle/ref="+code=dccp_feat_sref">feat_num6/shref++he to activate, 2"
 2f  L10"4" class10"line" nam
  L424">.424610"li>10"           6a href="+for ncode=node" clascref">feat_num6/chrefa= 0"+code=dccp_feat_cref">feat_num6/chrefa<+code=feat_num" cle/ref">feat_num6/cle/ref="+code=dccp_feat_cref">feat_num6/chref++he to activate, 2"
 2f  L10"5" class10"line" nam
  L425">.425610"li>10"           if (6a hreeeeeeeeef="+code=new" classservown,href="net/dccp/servown,href[code=dccp_feat_sref">feat_num6/shref]he"+code=FEAT_SP" ccliown,ref">dccp_feat_cliown,href[code=dccp_feat_cref">feat_num6/chref]he to activate, 2"
 2f  L10"6" class10"line" nam
  L426">.426610"li>10"   6a href="+aaaaaaaa (6a hreeeeeeeeefeat_num6/shref]"net/dccp/feat.c#L412" id  L1027" class10"line" nam
  L427">.427610"li>10"           6a.426/10.c#>10"     "net/dccp/feat.c#L382" id  L10"9" class10.c#L317" id  L428">.426/10.c#>10" clasnet/dccp/feat.c#L412" id  L1030" class10.c#L317" id  L428">.426610.c#>10.cclass="comment"> * List ma/*l href="net/dccp/feat.c#L348" id  L10.1" class10"line" nam
  L370">.374610"li>10. class="comment"> * @loca : whentry6/a> prefer6te fMove preferred *6a h to th.cstart6/f,array href="net/dccp/feat.c#L348" id  L10.2" class10"line" nam
  L332">.332610"li>10. class="comment"> * @fva : th Reordercthem@array_le/ eleist s in @array sont at @preferred_zeof( * @.s href="net/dccp/feat.c#L348" id  L10.3" class10"line" nam
  L333">.333610"li>10. class="comment"> * List mananfirst. Re hres f="+0 to indicate;t at @preferred_zeof( doessoccur in @arraya href="net/dccp/feat.c#L355" id  L10.4" class10"line" nam
  L334">.334610"li>10. class="comment"> * F2r genewne43ature to activate, 2"
 2f  L1035" class10"line" nam
  L335">.335610"li>10.5    hr6a hrcode=u8" class="sref">u86/a> 6a href="+code=feat_num" entry6/a> preferref">feat_num6/dl2"
_sp_	prefere4asncode=u8" class="sref">u86/a> 6a href="+code=u8" class=preferred_zeof(ref">u86/a> 6a preferred_zeof(ref=a+code=u8" class="sref">u86/a> 6a href="++code=new" classarrayref">u86/a> 6a array hefa+code=u8" class="sref">u86/a> 6a href="+code=feat_num" array_le/ref">u86/a> 6a array_le/ref=he to activate, 2"
 2f  L1036" class10"line" nam
  L336">.336610"li>10.6    "net/dccp/feat.c#L417" id  L1037" class10"line" nam
  L337">.337610"li>10.           6acode=dccp_feat_"sref">u86/a> 6a href="+code=feat_num" iref">u86/a> 6a ihrefa+code=u8" class=does_occurref">feat_num6/does_occurhrefa= 0"net/dccp/feat.c#L417" id  L1038" class10"line" nam
  L338">.338610"li>10.8clasnet/dccp/feat.c#L412" id  L1039" class10"line" nam
  L339">.339610"li>10.           ref="+code=new" classarrayref">u86/a> 6a array hefh!"+code=FEAT_SP" cs="sref">NULL6/a>)e.340610"li>10"l          6a href="+for ncode=node" clasiref">u86/a> 6a ihrefh= 0"+code=dccp_feat_iref">u86/a> 6a ihrefh<+code=feat_num" array_le/ref">u86/a> 6a array_le/ref="+code=dccp_feat_iref">u86/a> 6a ihref++he to activate, 2"
 2f  L10"1" class10"line" nam
  L341">.341610"li>10"                   6a    6a hf="+code=new" classarrayref">u86/a> 6a array hef[code=dccp_feat_iref">u86/a> 6a ihref] e"+code=FEAT_SP" cpreferred_zeof(ref">u86/a> 6a preferred_zeof(ref=h="net/dccp/feat.c#L417" id  L1042" class10"line" nam
  L342">.342610"li>10"           }eu86/a> 6a array hef[code=dccp_feat_iref">u86/a> 6a ihref] e=code=new" classarrayref">u86/a> 6a array hef[0]"net/dccp/feat.c#L381" id  L1043" class10"line" nam
  L343">.343610"li>10"                   6spal classs  6ahhcode=u8" class=does_occurref">feat_num6/does_occurhref++"net/dccp/feat.c#L381" id  L1044" class10"line" nam
  L344">.344610"li>10"           6a href="+++++++++}net/dccp/feat.c#L381" id  L1045" class10"line" nam
  L345">.345610"li>10"           if (6a href="+code=new" class	oes_occurref">feat_num6/does_occurhrefhe to activate, 2"
 2f  L10"6" class10"line" nam
  L346">.346610"li>10"   6a href="+aaaaaaaa (6a hrecode=new" classarrayref">u86/a> 6a array hef[0] e=code=new" classpreferred_zeof(ref">u86/a> 6a preferred_zeof(ref="net/dccp/feat.c#L381" id  L1047" class10"line" nam
  L347">.347610"li>10"           6a}net/dccp/feat.c#L381" id  L1048" class10"line" nam
  L348">.348610"li>10"           6afeat_num6/does_occurhref"net/dccp/feat.c#L381" id  L1049" class10"line" nam
  L349">.349610"li>10"9    "net/dccp/feat.c#L382" id  L1050" class10"line" nam
  L350">.350610"li>10"lclasnet/dccp/feat.c#L412" id  L1051" class10"line" nam
  L351">.351610"li>10" class="comment"> * @loca :/*l href="net/dccp/feat.c#L348" id  L1052" class10"line" nam
  L352">.352610"li>10" class="comment"> * @fva : th dl2"
_sp_	reconcile te fReconcile SP preferenceiown,s href="net/dccp/feat.c#L348" id  L1053" class10"line" nam
  L353">.353610"li>10" class="comment"> * List manan @fv h: SP own,nto reconcile into href="net/dccp/feat.c#L348" id  L10"4" class10"line" nam
  L354">.354610"li>10" class="comment"> * F2r genewh @arr:nreceived SP preferenceiown, href="net/dccp/feat.c#L348" id  L10"5" class10"line" nam
  L355">.355610"li>10" class="comment"> * Feature *  @le/: le/gth6/f,@arr in byt.s href="net/dccp/feat.c#L348" id  L1056" class10"line" nam
  L356">.356610"li>10" class="comment"> * - each  * e@isuserver: whethercthis;side;is,s knserver (andp@fv;is,s knserverfea9;s own,) href="net/dccp/feat.c#L348" id  L10"7" class10"line" nam
  L357">.357610"li>10" class="comment">/**6/spaluth  @reorder: whethercto reordercthemown,nin @fv;2ftercreconciler hwith6@arr href="net/dccp/feat.c#L348" id  L10"8" class10"line" nam
  L358">.358610"li>10" class="comment"> * dccp_fe neWhen successful, f="+ 0 is,.359610"li>10" class="comment"> * @sk: full A zeof(6/f,0smeans,s at # lists rel failed (no shared *6a h)a href="net/dccp/feat.c#L355" id  L1060" class10"line" nam
  L360">.360610"li>10"lclass="comment"> * F2r genewne43ature to activate, 2"
 2f  L1061" class10"line" nam
  L361">.361610"li>10"1    hr6a hrf="+code=dccp_feat_cl2"
_sp_	reconcileref">feat_num6/dl2"
_sp_	reconcilee4asncode=u8" class=dl2"
_sp_	="sref">	  6/a>.6adl2"
_sp_	="sef="++code=new" classfvref">feat_num6/avref=a+code=u8" class="sref">u86/a> 6a href="++code=new" classarrref">u86/a> 6a arr hefa+code=u8" class="sref">u86/a> 6a href="+code=feat_num" le/ref">feat_num6/le/ref="net/dccp/feat.c#L417" id  L10"2" class10"line" nam
  L362">.362610"li>10"           }ef	  6/a>-&boosef="+code=feat_num" isuserverref">u86/a> 6a isuserver hefa+code=u8" class=boosref">f	  6/a>-&boosef="+code=feat_num" reorderref">f	  6/a>-&reorderhrefhe to activate, 2"
 2f  L1063" class10"line" nam
  L363">.363610"li>10" clas"net/dccp/feat.c#L417" id  L10"4" class10"line" nam
  L364">.364610"li>10"           6af="+code=dccp_feat_rcref">u86/a> 6a rcref="net/dccp/feat.c#L412" id  L10"5" class10"line" nam
  L365">.365610"li>10"5clasnet/dccp/feat.c#L412" id  L1066" class10"line" nam
  L366">.366610"li>10"   6a href="+f="+!code=u8" class=fvref">feat_num6/avref=ef="+code=	  " classs href="net/dccp/s ="li+code=sp" class=vecref">u86/a> 6a vecref= ||+!code=u8" class=arrref">u86/a> 6a arr hefh="net/dccp/feat.c#L417" id  L1067" class10"line" nam
  L367">.367610"li>10"           6a href="+code=u8" class=ENCE_CRITref">feat_num6/ENCE_CRITe4asnc="comment"> strrag">".368610"li>10"           6a href="+.369610"li>10"           re"net/dccp/feat.c#L382" id  L1070" class10"line" nam
  L370">.370610"li>10"lclasnet/dccp/feat.c#L412" id  L1071" class10"line" nam
  L371">.371610"li>10"1  6a href="+f="+code=feat_num" isuserverref">u86/a> 6a isuserver hefhe to activate, 2"
 2f  L1072" class10"line" nam
  L372">.372610"li>10"           }eu86/a> 6a rcref=hefcode=u8" class=feat.c#ntrprefy"21"matchref">feat_num6/dl2"
_sp_	prefy"21"matchclasncode=u8" class=fvref">feat_num6/avref=ef="+code=	  " classs href="net/dccp/s ="li+code=sp" class=vecref">u86/a> 6a vecref=a+code=u8" class=cvref">feat_num6/avref=ef="+code=	  " classs href="net/dccp/s ="li+code=sp" class=le/ref">feat_num6/le/ref="ecode=new" classarrref">u86/a> 6a arr hefa+code=u8" class=le/ref">feat_num6/le/ref=h"net/dccp/feat.c#L381" id  L1073" class10"line" nam
  L373">.373610"li>10"             elsenet/dccp/feat.c#L412" id  L1074" class10"line" nam
  L374">.374610"li>10"           6a href="+code=dccp_feat_rcref">u86/a> 6a rcref=hefcode=u8" class=feat.c#ntrprefy"21"matchref">feat_num6/dl2"
_sp_	prefy"21"matchclasncode=u8" class=arrref">u86/a> 6a arr hefa+code=u8" class=le/ref">feat_num6/le/ref=a+code=u8" class=cvref">feat_num6/avref=ef="+code=	  " classs href="net/dccp/s ="li+code=sp" class=vecref">u86/a> 6a vecref=a+code=u8" class=cvref">feat_num6/avref=ef="+code=	  " classs href="net/dccp/s ="li+code=sp" class=le/ref">feat_num6/le/ref=h"net/dccp/feat.c#L381" id  L1075" class10"line" nam
  L375">.375610"li>10"5clasnet/dccp/feat.c#L412" id  L1076" class10"line" nam
  L376">.376610"li>10"   6a href="+f="+!code=u8" class=reorderref">f	  6/a>-&reorderhrefhe to activate, 2"
 2f  L1077" class10"line" nam
  L377">.377610"li>10"           6a href="+u86/a> 6a rcref="net/dccp/feat.c#L412" id  L10"8" class10"line" nam
  L378">.378610"li>10"8  6a href="+f="+code=feat_num" rcref">u86/a> 6a rcref=h<+0he to activate, 2"
 2f  L1079" class10"line" nam
  L379">.379610"li>10"           return 6a .380610"li>10"lclasnet/dccp/feat.c#L412" id  L1081" class10"line" nam
  L381">.381610"li>10"             c="comment"> * F2r gen/*e43ature to activate, 2"
 2f  L10"2" class10"line" nam
  L382">.382610"li>10" class="comment"> * @fva : t        w Reordercy"21:nused+for activater hc#ntor.ss2ndpin dl2"
insert_cn_opta href="net/dccp/feat.c#L355" id  L1083" class10"line" nam
  L383">.383610"li>10" class="comment"> * List man        wne43ature to activate, 2"
 2f  L1084" class10"line" nam
  L384">.384610"li>10"           6a preferref">feat_num6/dl2"
_sp_	prefere4asncode=u8" class=rcref">u86/a> 6a rcref=a+code=u8" class=cvref">feat_num6/avref=ef="+code=	  " classs href="net/dccp/s ="li+code=sp" class=vecref">u86/a> 6a vecref=a+code=u8" class=cvref">feat_num6/avref=ef="+code=	  " classs href="net/dccp/s ="li+code=sp" class=le/ref">feat_num6/le/ref=h"net/dccpivate, 2"
 2f  L1085" class10"line" nam
  L385">.385610"li>10"5    "net/dccp/feat.c#L382" id  L1086" class10"line" nam
  L386">.386610"li>10"ref="net/dccp/feat.c#L347" id  L1087" class10"line" nam
  L387">.387610"li>10" class="comment">/**6/spalu/*l href="net/dccp/feat.c#L348" id  L1088" class10"line" nam
  L388">.388610"li>10" class="comment"> * dccp_fe nedl2"
_sp_	changv	recv te fProcesspin* der hChangvL/Rpopiq>
s href="net/dccp/feat.c#L348" id  L10"9" class10"line" nam
  L389">.389610"li>10" class="comment"> * @sk: full @fn:,c#ntor.-# lists rel own,nto upd6ave<3ature to activate, 2"
 2f  L1090" class10"line" nam
  L390">.390610"li>10"lclass="comment"> * @sk: full @is_/a>)e)e
e<3ature to activate, 2"
 2f  L1091" class10"line" nam
  L391">.391610"li>10" class="comment"> * @loca : wh@opi: %ENCEO_CHANGE_L6/r,%ENCEO_CHANGE_Re<3ature to activate, 2"
 2f  L1092" class10"line" nam
  L392">.392610"li>10" class="comment"> * @fva : th @2f &: one;of,%dl2"
_sp_or._ampbers href="net/dccp/feat.c#L348" id  L1093" class10"line" nam
  L393">.393610"li>10" class="comment"> * List manan@v h: NN zeof(6/r,SP zeof(/preferenceiown, href="net/dccp/feat.c#L348" id  L1094" class10"line" nam
  L394">.394610"li>10" class="comment"> * F2r genewh@le/: le/gth6/f,@zeo in byt.s href="net/dccp/feat.c#L348" id  L1095" class10"line" nam
  L395">.395610"li>10" class="comment"> * Feature * @server: whethercthis;nass;is,s knserver (1)yorithemmeik: c(0) href="net/dccp/feat.c#L348" id  L1096" class10"line" nam
  L396">.396610"li>10" class="comment"> * - each  *ne43ature to activate, 2"
 2f  L1097" class10"line" nam
  L397">.397610"li>10"7    hr6a hrcode=u8" class="sref">u86/a> 6a href="+code=feat_num" dl2"
_sp_	changv	recvref">feat_num6/dl2"
_sp_	changv	recve4asnhref="+code=dccp_feat_	  " class="sref">	  6/ref">new6/a>);efeat_num6/ashref"+code=u8" class="sref">u86/a> 6a href="+code=feat_num" isu/a>)eu86/a> 6a is_/a>)eu86/a> 6a href="+code=feat_num" opiref">u86/a> 6a opiref="net/dccp/feat.c#L417" id  L1098" class10"line" nam
  L398">.398610"li>10"           6a href="+aaaaaaaa    6ahhcode=u8" class="sref">u86/a> 6a href="+code=feat_num" 7" iref">feat_num6/aea,hrefa+code=u8" class="sref">u86/a> 6a href="+	  6/a>.6a href="" code=u8" class="sref">u86/a> 6a href="+code=feat_num" le/ref">feat_num6/le/ref="ahref="code=u8" class=boosref">f	  6/a>-&boosef="+code=feat_num" serverref">u86/a> 6a server hefhe to activate, 2"
 2f  L1099" class10"line" nam
  L399">.399610"li>10"     "net/dccp/feat.c#L417" id  L1100" class1100" e" nam
  L399">.39961100">1100          6acode=u8" class="sref">u86/a> 6a href="+code=feat_num" def="sref">	  6/a>.6adef="sef="" code=u8" class=typvref">dccp_feat_typv="lihefcode=u8" class=feat.c#ntrtypvref">dccp_feat_entry6/a> typv="lincode=node" clas7" iref">feat_num6/aea,hrefh"net/dccpivate, 2"
 2f  L1101" class110line" nam
  L391">.3916110li>110             href="code=u8" class=boosref">f	  6/a>-&boosef="+code=feat_num"  6a href">u86/a> 6a  6a href=a= ncode=node" clasopiref">u86/a> 6a opiref=he"+code=FEAT_SP" cENCEO_CHANGE_Rref">feat_num6/ENCEO_CHANGE_Re.3926110li>1102          rehref="+code=dccp_feat_entry" class="sref">dccp_feat_entry6/a> *6a href="+code=new" classss="sref">dccp_feat_*6a href="net/dccp/feat.c#L412" id  L1103" class110line" nam
  L393">.3936110li>110             code=dccp_feat_dl2"
_sp_	="sref">	  6/a>.6adl2"
_sp_	="sef="+code=u8" class=cv"sref">	  6/a>.6af="sef=""net/dccp/feat.c#L412" id  L1104" class110line" nam
  L394">.3946110li>110     net/dccp/feat.c#L412" id  L1105" class110line" nam
  L395">.3956110li>110           iff="+code=feat_num" le/ref">feat_num6/le/ref=he"+0 ||+code=u8" class=typvref">dccp_feat_typv="lihe"+code=FEAT_SP" class=UNKNOWNref">dccp_feat_lass=UNKNOWN hefh=aa    6ahhc="comment"> * dccp_fe/* 6.1s2ndp6.6.8 *ne43ature to activate, 2"
 2f  L1106" class110line" nam
  L396">.3966110li>110   6a href="+aaaaaaaalisoacode=u8" class="nknown
_sp_or._or_zeof(ref">u86/a> 6a "nknown
_sp_or._or_zeof(ef=""net/dccp/feat.c#L412" id  L1107" class110line" nam
  L397">.3976110li>1107ef="net/dccp/feat.c#L347" id  L1108" class110line" nam
  L398">.3986110li>110           6acode=dccp_feat_	ntry6/a> print_opiref">u86/a> 6a 	ntry6/a> print_opi="lincode=node" clasopiref">u86/a> 6a opiref="+code=feat_num" 7" iref">feat_num6/aea,hrefa+code=u8" class=="sref">	  6/a>.6a href="" code=u8" class=le/ref">feat_num6/le/ref=a+code=u8" class=isu/a>)eu86/a> 6a is_/a>)e.3996110li>110 clasnet/dccp/feat.c#L412" id  L1110" class11"line" nam
  L410">.410611"li>11"l          6ac="comment"> * F2r gen/*e43ature to activate, 2"
 2f  L1111" class11"line" nam
  L411">.411611"li>111 class="comment"> * @loca : uuuuuuuuwhhhh  N lists rel /f,NN c#ntor.s:hChangvpRnisnin hrid, sont ers;is,no href="net/dccp/feat.c#L348" id  L1112" class11"line" nam
  L412">.412611"li>111 class="comment"> * @fva : t        w    rehimultaneous # lists rel; henceiwe dosnotnlook up in themown,a href="net/dccp/feat.c#L355" id  L1113" class11"line" nam
  L413">.413611"li>111 class="comment"> * List man        wne43ature to activate, 2"
 2f  L11"4" class11"line" nam
  L414">.414611"li>11"           6af="+code=feat_num" typvref">dccp_feat_typv="lihe"+code=FEAT_SP" class=NNref">dccp_feat_lass=NN hefh="net/dccp/feat.c#L417" id  L11"5" class11"line" nam
  L415">.415611"li>111           if (6a href="+code=new" class 6a href">u86/a> 6a  6a href=a||+code=u8" class=le/ref">feat_num6/le/ref=hf="+ sizeofncode=u8" class=fv"sref">	  6/a>.6af="sef="+code=sp" class=nsref">len6/a>)) ns="lihhe to activate, 2"
 2f  L11"6" class11"line" nam
  L416">.416611"li>111   6a href="+aaaaaaaa (6a hrelisoacode=u8" class="nknown
_sp_or._or_zeof(ref">u86/a> 6a "nknown
_sp_or._or_zeof(ef=""net/dccp/feat.c#L412" id  L11"7" class11"line" nam
  L417">.417611"li>11"7ef="net/dccp/feat.c#L347" id  L1118" class11"line" nam
  L418">.418611"li>111           6a href="+c="comment"> * dccp_fe/* 6.3.2: "T knf#ntor. remote MUST accepts2ny  hrid zeof(..." wne43ature to activate, 2"
 2f  L11"9" class11"line" nam
  L419">.419611"li>111           return 6a code=u8" class=fv"sref">	  6/a>.6af="sef="+code=sp" class=nsref">len6/a>)) ns="lihefcode=u8" class=feat.delass_zeof(_zerref">feat_num6/dl2"
delass_zeof(_zer="lincode=node" clas="sref">	  6/a>.6a href="" code=u8" class=le/ref">feat_num6/le/ref=h"net/dccpivate, 2"
 2f  L1120" class11"line" nam
  L420">.420611"li>112l          6a href="+f="+!code=u8" class=	ntry6/a> is_ hrid_nn	="sref">	  6/a>.6adl2"
_sp_	is_ hrid_nn	="s="lincode=node" clas7" iref">feat_num6/aea,hrefa+code=u8" class=cv"sref">	  6/a>.6af="sef="+code=sp" class=nsref">len6/a>)) ns="lihhe to activate, 2"
 2f  L1121" class11"line" nam
  L421">.421611"li>112                   6a    6a hlisoacode=u8" class="nknown
_sp_or._or_zeof(ref">u86/a> 6a "nknown
_sp_or._or_zeof(ef=""net/dccp/feat.c#L412" id  L1122" class11"line" nam
  L422">.422611"li>11" clasnet/dccp/feat.c#L382" id  L11"3" class11"line" nam
  L423">.423611"li>112                   6s push_confirmref">feat_num6/	ntry6/a> push_confirm="lincode=node" clas7/ref">feat_num6/ashref"+code=u8" class=7" iref">feat_num6/aea,hrefa+code=u8" class= 6a href">u86/a> 6a  6a href=,+ef="+code=entry" clacv"sref">	  6/a>.6af="sef="h"net/dccpivate, 2"
 2f  L1124" class11"line" nam
  L424">.424611"li>112           6a}net/dccp/feat.c#L381" id  L11"5" class11"line" nam
  L425">.425611"li>1125clasnet/dccp/feat.c#L412" id  L11"6" class11"line" nam
  L426">.426611"li>11"   6a href="+c="comment"> * F2r gen/*e43ature to activate, 2"
 2f  L1127" class11"line" nam
  L427">.427611"li>112 class="comment">/**6/spalutttttttttwhhhh  Unidirec relal/himultaneous # lists rel /f,SPhc#ntor.ss(6.3.1)e43ature to activate, 2"
 2f  L1128" class11.c#L317" id  L428">.426/11.c#>112 class="comment"> * dccp_fe ttttttttwne43ature to activate, 2"
 2f  L11"9" class11.c#L317" id  L428">.426/11.c#>112           recode=dccp_feat_ss="sref">dccp_feat_*6a href=hefcode=new" classentry6/a> ef">nlooku href="net/dccp/feat.c#ntry"21"looku clasncode=u8" class=c/ref">feat_num6/ashref"+code=u8" class=7" iref">feat_num6/aea,hrefa+code=u8" class= 6a href">u86/a> 6a  6a href=h"net/dccpivate, 2"
 2f  L1130" class11.c#L317" id  L428">.426611.c#>113l          6af="+code=new" classss="sref">dccp_feat_*6a href=he"+code=FEAT_SP" cs="sref">NULL6/a>)e.374611"li>113                   6ac="comment"> * F2r gen/*e43ature to activate, 2"
 2f  L11.2" class11"line" nam
  L332">.332611"li>11. class="comment"> * @fva : ttttttttttttttttt* No partecular preferences havepbeelhreg"21ered. Wkndealhwithe43ature to activate, 2"
 2f  L11.3" class11"line" nam
  L333">.333611"li>11. class="comment"> * List mantttttttttttttttt* this;situs rel by assumer hs at all  hrid zeof(s ar. equally href="net/dccp/feat.c#L348" id  L11.4" class11"line" nam
  L334">.334611"li>11. class="comment"> * F2r genetttttttttttttttt* acceptabee, andpapplyhs knfollower hchecks:e43ature to activate, 2"
 2f  L11.5" class11"line" nam
  L335">.335611"li>113 class="comment"> * Feature         tttttttt* -pif the peerfea9;s own,;is,ahser leton, we accepts2  hrid zeof(;e43ature to activate, 2"
 2f  L11.6" class11"line" nam
  L336">.336611"li>113 class="comment"> * - each          tttttttt* -pif we are,s knserver, we first a h to seepif the peer (thee43ature to activate, 2"
 2f  L11.7" class11"line" nam
  L337">.337611"li>113 class="comment">/**6/spalutttttttttttttttttwhhhmeik: ) advertises s kndefaultnzeof(. Ifsyes, we usepit,e43ature to activate, 2"
 2f  L11.8" class11"line" nam
  L338">.338611"li>113 class="comment"> * dccp_fe ttttttttttttttttwhhhot erwise we acceptsthe preferred zeof(;e43ature to activate, 2"
 2f  L11.9" class11"line" nam
  L339">.339611"li>113 class="comment"> * @sk: fultttttttttttttttt* -pelsepif we are,s knmeik: , we useps knfirst own,;eleist a href="net/dccp/feat.c#L355" id  L1140" class11"line" nam
  L340">.340611"li>114 class="comment"> * @feat_nuuuuuuuuutttttttt*ne43ature to activate, 2"
 2f  L11"1" class11"line" nam
  L341">.341611"li>11"                   6af="+code=new" class	  _d6/a> clone_sp	="sref">	  6/a>.6adl2"
_sp_	clone_sp	="sclasnef="+code=entry" clacv"sref">	  6/a>.6af="sef="a+code=u8" class=="sref">	  6/a>.6a href="" 1hhe to activate, 2"
 2f  L1142" class11"line" nam
  L342">.342611"li>11"           }efeat_num6/ENCE_RESET_CODE_TOO_BUSYef=""net/dccp/feat.c#L412" id  L1143" class11"line" nam
  L343">.343611"li>114ref="net/dccp/feat.c#L414" id  L1144" class11"line" nam
  L344">.344611"li>11"           6a href="+f="+code=feat_num" le/ref">feat_num6/le/ref=hf="+ 1 &6a href="+code=dccp_feat_serverref">u86/a> 6a server hefh="net/dccp/feat.c#L417" id  L1145" class11"line" nam
  L345">.345611"li>11"           if (6a hreeeeeeeeecode=feat_num" def="sref">	  6/a>.6adef="sef="hefcode=u8" class=feat.c#ntrdefault_zeof(href="net/dccp/feat.c#ntrdefault_zeof(clasncode=u8" class=7" iref">feat_num6/aea,hrefh"net/dccpivate, 2"
 2f  L11"6" class11"line" nam
  L346">.346611"li>11"   6a href="+aaaaaaaa (6a href="+code=new" class	  _d6/a> prefy"21"matchref">feat_num6/dl2"
_sp_	prefy"21"matchclasnef="+code=entry" clacef="sref">	  6/a>.6adef="sef="" 1a+code=u8" class=="sref">	  6/a>.6a href="" code=u8" class=le/ref">feat_num6/le/ref=)hf="+ -1he to activate, 2"
 2f  L11"7" class11"line" nam
  L347">.347611"li>114           6a href="+ (6a hreeeeeeeeecode=feat_num" cv"sref">	  6/a>.6af="sef="+code=sp" class=s href="net/dccp/s ="li+code=sp" class=vecref">u86/a> 6a vecref=[0]hefcode=u8" class=fef="sref">	  6/a>.6adef="sef=""net/dccpivate, 2"
 2f  L11"8" class11"line" nam
  L348">.348611"li>114           6a href="+}pelsepif +!code=u8" class=	ntry6/a> is_ hrid_sp	="sref">	  6/a>.6adl2"
_sp_	is_ hrid_sp	="s="lincode=node" clas7" iref">feat_num6/aea,hrefa+code=u8" class=cv"sref">	  6/a>.6af="sef="+code=sp" class=s href="net/dccp/s ="li+code=sp" class=vecref">u86/a> 6a vecref=[0])h="net/dccp/feat.c#L417" id  L1149" class11"line" nam
  L349">.349611"li>114           return 6a eeeeeeeecode=feat_num" kfre(href="net/dccp/kfre(="lincode=node" clas7v"sref">	  6/a>.6af="sef="+code=sp" class=s href="net/dccp/s ="li+code=sp" class=vecref">u86/a> 6a vecref=h"net/dccpivate, 2"
 2f  L1150" class11"line" nam
  L350">.350611"li>115l          6a href="+++++++++lisoacode=u8" class="nknown
_sp_or._or_zeof(ref">u86/a> 6a "nknown
_sp_or._or_zeof(ef=""net/dccp/feat.c#L412" id  L1151" class11"line" nam
  L351">.351611"li>115                   6a}net/dccp/feat.c#L381" id  L1152" class11"line" nam
  L352">.352611"li>115 clasnet/dccp/feat.c#L382" id  L1153" class11"line" nam
  L353">.353611"li>115                   6sc="comment"> * dccp_fe/* Tr" i unsupported CCIDs owkenin hrid zeof(s *ne43ature to activate, 2"
 2f  L11"4" class11"line" nam
  L354">.354611"li>115           6a href="+f="+code=feat_num" 7" iref">feat_num6/aea,hrefhe"+code=FEAT_SP" cENCEF_CCIDref">feat_num6/ENCEF_CCIDefeat_num6/ccid_support_check="lincode=node" clas7v"sref">	  6/a>.6af="sef="+code=sp" class=s href="net/dccp/s ="li+code=sp" class=vecref">u86/a> 6a vecref=" 1hh="net/dccp/feat.c#L417" id  L11"5" class11"line" nam
  L355">.355611"li>115           if (6a hreeeeeeeeecode=feat_num" kfre(href="net/dccp/kfre(="lincode=node" clas7v"sref">	  6/a>.6af="sef="+code=sp" class=s href="net/dccp/s ="li+code=sp" class=vecref">u86/a> 6a vecref=h"net/dccpivate, 2"
 2f  L1156" class11"line" nam
  L356">.356611"li>115   6a href="+aaaaaaaa (6a hrelisoacode=u8" class=not_ hrid_or_not_knownref">len6/a>)) not_ hrid_or_not_knownef=""net/dccp/feat.c#L412" id  L1157" class11"line" nam
  L357">.357611"li>115           6a href="+}net/dccp/feat.c#L381" id  L1158" class11"line" nam
  L358">.358611"li>1158clasnet/dccp/feat.c#L412" id  L11"9" class11"line" nam
  L359">.359611"li>115           return 6a  push_confirmref">feat_num6/	ntry6/a> push_confirm="lincode=node" clas7/ref">feat_num6/ashref"+code=u8" class=7" iref">feat_num6/aea,hrefa+code=u8" class= 6a href">u86/a> 6a  6a href=,+ef="+code=entry" clacv"sref">	  6/a>.6af="sef="h"net/dccp/feat.c#L412" id  L1160" class11"line" nam
  L360">.360611"li>116lclasnet/dccp/feat.c#L412" id  L1161" class11"line" nam
  L361">.361611"li>116             }pelsepif +code=new" classss="sref">dccp_feat_*6a href=ef="+code=	  " classstat(href="net/dccp/stat(="lihe"+code=FEAT_SP" class=UNSTABLEref">dccp_feat_lass=UNSTABLE hefh="   6sc="comment"> * dccp_fe/* 6.6.2 *ne43ature to activate, 2"
 2f  L11"2" class11"line" nam
  L362">.362611"li>11"           }e.363611"li>116             }net/dccp/feat.c#L381" id  L11"4" class11"line" nam
  L364">.364611"li>116     net/dccp/feat.c#L412" id  L11"5" class11"line" nam
  L365">.365611"li>116           iff="+code=feat_num" 	ntry6/a> reconcileref">feat_num6/dl2"
_sp_	reconcilee4asnef="+code=entry" class="sref">dccp_feat_*6a href=ef="+code=	  " class="sref">	  6/a>.6a href="a+code=u8" class=="sref">	  6/a>.6a href="" code=u8" class=le/ref">feat_num6/le/ref=a+code=u8" class=serverref">u86/a> 6a server hef" code=u8" class=trf(ref">u86/a> 6a trf(="lihh="net/dccp/feat.c#L417" id  L1166" class11"line" nam
  L366">.366611"li>116   6a href="+aaaaaaaacode=entry" class="sref">dccp_feat_*6a href=ef="+code=	  " classempty_confirmref">feat_num6/empty_confirmref=hefcode=u8" class=falseref">	  6/a>.6afalseef=""net/dccp/feat.c#L412" id  L1167" class11"line" nam
  L367">.367611"li>11"           6a}pelsepif +code=new" classisu/a>)eu86/a> 6a is_/a>)e.368611"li>11"           6a href="+feat_num6/ENCE_RESET_CODE_MANDATORY_ERRORef=""net/dccp/feat.c#L412" id  L1169" class11"line" nam
  L369">.369611"li>11"           re"pelsepif +code=new" classss="sref">dccp_feat_*6a href=ef="+code=	  " classstat(href="net/dccp/stat(="lihe"+code=FEAT_SP" class=INITIALISINGref">dccp_feat_lass=INITIALISINGref=h="net/dccp/feat.c#L417" id  L1170" class11"line" nam
  L370">.370611"li>117l          6a href="+c="comment"> * F2r gen/*e43ature to activate, 2"
 2f  L1171" class11"line" nam
  L371">.371611"li>117 class="comment"> * @loca : uuuuuuuuuuuuuuuu* Failed himultaneous # lists rel (server only): a h to `savefea9;e43ature to activate, 2"
 2f  L1172" class11"line" nam
  L372">.372611"li>117 class="comment"> * @fva : ttttttttttttttttt* s knmonnec rel by checker hwhetherc*6a h montains s kndefaulte43ature to activate, 2"
 2f  L1173" class11"line" nam
  L373">.373611"li>117 class="comment"> * List mantttttttttttttttt* zeof(6for @2f &. Ifsyes, sendpan empty Confirm to signalhs ate43ature to activate, 2"
 2f  L1174" class11"line" nam
  L374">.374611"li>117 class="comment"> * F2r genetttttttttttttttt* themreceived Changvpwas notnunderstood -hwhich implies user e43ature to activate, 2"
 2f  L1175" class11"line" nam
  L375">.375611"li>117 class="comment"> * Feature         tttttttt* s kndefaultnzeof(.e43ature to activate, 2"
 2f  L1176" class11"line" nam
  L376">.376611"li>117 class="comment"> * - each          tttttttt* If this;also fails, we usepReset as s knenttmresor a href="net/dccp/feat.c#L355" id  L1177" class11"line" nam
  L377">.377611"li>117 class="comment">/**6/spalutttttttttttttttttwne43ature to activate, 2"
 2f  L11"8" class11"line" nam
  L378">.378611"li>117           6a href="+code=FEAT_SP" cWARN_ONref">dccp_feat_WARN_ONe4asn!code=u8" class=serverref">u86/a> 6a server hefh"net/dccp/feat.c#L412" id  L1179" class11"line" nam
  L379">.379611"li>11"           return 6a code=feat_num" def="sref">	  6/a>.6adef="sef="hefcode=u8" class=feat.c#ntrdefault_zeof(href="net/dccp/feat.c#ntrdefault_zeof(clasncode=u8" class=7" iref">feat_num6/aea,hrefh"net/dccpivate, 2"
 2f  L1180" class11"line" nam
  L380">.380611"li>118l          6a href="+f="+!code=u8" class=	ntry6/a> reconcileref">feat_num6/dl2"
_sp_	reconcilee4asnef="+code=entry" class="sref">dccp_feat_*6a href=ef="+code=	  " class="sref">	  6/a>.6a href="a+ef="+code=entry" clacef="sref">	  6/a>.6adef="sef="" 1a+code=u8" class=serverref">u86/a> 6a server hef" code=u8" class=trf(ref">u86/a> 6a trf(="lihhnet/dccpivate, 2"
 2f  L1181" class11"line" nam
  L381">.381611"li>118                   6a    6a hfeat_num6/ENCE_RESET_CODE_OPTION_ERRORef=""net/dccp/feat.c#L412" id  L11"2" class11"line" nam
  L382">.382611"li>118           }edccp_feat_*6a href=ef="+code=	  " classempty_confirmref">feat_num6/empty_confirmref=hefcode=u8" class=trf(ref">u86/a> 6a trf(="li"net/dccp/feat.c#L412" id  L11"3" class11"line" nam
  L383">.383611"li>118             }net/dccp/feat.c#L381" id  L1184" class11"line" nam
  L384">.384611"li>11"           6acode=dccp_feat_ss="sref">dccp_feat_*6a href=ef="+code=	  " classneeds_confirmref">feat_num6/needs_confirm       efcode=u8" class=trf(ref">u86/a> 6a trf(="li"net/dccp/feat.c#L412" id  L11"5" class11"line" nam
  L385">.385611"li>1185          6acode=dccp_feat_ss="sref">dccp_feat_*6a href=ef="+code=	  " classneeds_/a>)eu86/a> 6a needs_/a>)e	  6/a>.6afalseef=""net/dccp/feat.c#L412" id  L1186" class11"line" nam
  L386">.386611"li>1186          6acode=dccp_feat_ss="sref">dccp_feat_*6a href=ef="+code=	  " classstat(href="net/dccp/stat(="lihhhhhhhhhhh"+code=FEAT_SP" class=STABLEref">dccp_feat_lass=STABLE hef"net/dccp/feat.c#L412" id  L1187" class11"line" nam
  L387">.387611"li>118           6a.388611"li>1188clasnet/dccp/feat.c#L412" id  L11"9" class11"line" nam
  L389">.389611"li>11" classode=u8" class="nknown
_sp_or._or_zeof(ref">u86/a> 6a "nknown
_sp_or._or_zeof(ef=":net/dccp/feat.c#L412" id  L1190" class11"line" nam
  L390">.390611"li>119l          6af="+!code=u8" class=isu/a>)eu86/a> 6a is_/a>)e.391611"li>119                   6afeat_num6/	ntrypush_empty_confirm="lincode=node" clas7/ref">feat_num6/ashref"+code=u8" class=7" iref">feat_num6/aea,hrefa+code=u8" class= 6a href">u86/a> 6a  6a href=h"net/dccpivate, 2"
 2f  L1192" class11"line" nam
  L392">.392611"li>119 clasnet/dccp/feat.c#L382" id  L1193" class11"line" nam
  L393">.393611"li>11" classode=u8" class=not_ hrid_or_not_knownref">len6/a>)) not_ hrid_or_not_knownef=":net/dccp/feat.c#L412" id  L1194" class11"line" nam
  L394">.394611"li>119           6a)eu86/a> 6a is_/a>)efeat_num6/ENCE_RESET_CODE_MANDATORY_ERRORef="net/dccp/feat.c#L412" id  L1195" class11"line" nam
  L395">.395611"li>119           if (6a hreeeeeeeeeeeee:fcode=dccp_feat_ENCE_RESET_CODE_OPTION_ERRORref">feat_num6/ENCE_RESET_CODE_OPTION_ERRORef=""net/dccp/feat.c#L412" id  L1196" class11"line" nam
  L396">.396611"li>11" clas}net/dccp/feat.c#L381" id  L1197" class11"line" nam
  L397">.397611"li>1197ef="net/dccp/feat.c#L347" id  L1198" class11"line" nam
  L398">.398611"li>119 class="comment"> * dccp_fe/*l href="net/dccp/feat.c#L348" id  L1199" class11"line" nam
  L399">.399611"li>119 class="comment"> * @sk: full dl2"
_sp_	confirm	recv te fProcesspreceived Confirm opiq>
s href="net/dccp/feat.c#L348" id  L1200" class1200" e" nam
  L399">.39961200">120lclass="comment"> * @sk: full @fn:,c#ntor.-# lists rel own,nto upd6ave<3ature to activate, 2"
 2f  L1201" class120line" nam
  L391">.3916120li>120 class="comment"> * @loca : wh@is_/a>)e)e
e<3ature to activate, 2"
 2f  L1202" class120line" nam
  L392">.3926120li>120 class="comment"> * @fva : th @opi: %ENCEO_CONFIRM_L6/r,%ENCEO_CONFIRM_Re<3ature to activate, 2"
 2f  L1203" class120line" nam
  L393">.3936120li>120 class="comment"> * List manan@2f &: one;of,%dl2"
_sp_or._ampbers href="net/dccp/feat.c#L348" id  L1204" class120line" nam
  L394">.3946120li>120 class="comment"> * F2r genewh@v h: NN zeof(6/r,SP zeof(/preferenceiown, href="net/dccp/feat.c#L348" id  L1205" class120line" nam
  L395">.3956120li>120 class="comment"> * Feature * @le/: le/gth6/f,@zeo in byt.s href="net/dccp/feat.c#L348" id  L1206" class120line" nam
  L396">.3966120li>120 class="comment"> * - each  * @server: whethercthis;nass;is,server (1)yorimeik: c(0) href="net/dccp/feat.c#L348" id  L1207" class120line" nam
  L397">.3976120li>120 class="comment">/**6/spaluthne43ature to activate, 2"
 2f  L1208" class120line" nam
  L398">.3986120li>120     hr6a hrcode=u8" class="sref">u86/a> 6a href="+code=feat_num" dl2"
_sp_	confirm	recvref">feat_num6/dl2"
_sp_	confirm	recv="linhref="+code=dccp_feat_	  " class="sref">	  6/ref">new6/a>);efeat_num6/ashref"+code=u8" class="sref">u86/a> 6a href="+code=feat_num" isu/a>)eu86/a> 6a is_/a>)eu86/a> 6a href="+code=feat_num" opiref">u86/a> 6a opiref="net/dccp/feat.c#L417" id  L1209" class120line" nam
  L399">.3996120li>120           return 6a eeeeeeeeeu86/a> 6a href="+code=feat_num" 7" iref">feat_num6/aea,hrefa+code=u8" class="sref">u86/a> 6a href="+	  6/a>.6a href="" code=u8" class="sref">u86/a> 6a href="+code=feat_num" le/ref">feat_num6/le/ref="ahref="code=u8" class=boosref">feat_num6/boosef="+code=feat_num" serverref">u86/a> 6a server hefhe to activate, 2"
 2f  L1210" class12"line" nam
  L410">.410612"li>12"l    "net/dccp/feat.c#L417" id  L1211" class12"line" nam
  L411">.411612"li>121             code=u8" class="sref">u86/a> 6a href="+ref">u86/a> 6a pown, h="" code=u8" class=ple/ref">feat_num6/ple/ref=a+code=u8" class=typvref">dccp_feat_typv="lihefcode=u8" class=feat.c#ntrtypvref">dccp_feat_entry6/a> typv="lincode=node" clas7" iref">feat_num6/aea,hrefh"net/dccpivate, 2"
 2f  L1212" class12"line" nam
  L412">.412612"li>121           }ehref="code=u8" class=boosref">f	  6/a>-&boosef="+code=feat_num"  6a href">u86/a> 6a  6a href=a= ncode=node" clasopiref">u86/a> 6a opiref=he"+code=FEAT_SP" cENCEO_CONFIRM_Rref">feat_num6/ENCEO_CONFIRM_Re.413612"li>121             href="+code=dccp_feat_entry" class="sref">dccp_feat_entry6/a> *6a href="+code=new" classss="sref">dccp_feat_*6a href=hefcode=new" classentry6/a> ef">nlooku href="net/dccp/feat.c#ntry"21"looku clasncode=u8" class=c/ref">feat_num6/ashref"+code=u8" class=7" iref">feat_num6/aea,hrefa+code=u8" class= 6a href">u86/a> 6a  6a href=h"net/dccpivate, 2"
 2f  L12"4" class12"line" nam
  L414">.414612"li>121     net/dccp/feat.c#L412" id  L12"5" class12"line" nam
  L415">.415612"li>1215          6acode=dccp_feat_dl2"
_sp_	print_opiref">u86/a> 6a 	ntry6/a> print_opi="lincode=node" clasopiref">u86/a> 6a opiref="+code=feat_num" 7" iref">feat_num6/aea,hrefa+code=u8" class=="sref">	  6/a>.6a href="" code=u8" class=le/ref">feat_num6/le/ref=a+code=u8" class=isu/a>)eu86/a> 6a is_/a>)e.416612"li>121ref="net/dccp/feat.c#L347" id  L12"7" class12"line" nam
  L417">.417612"li>121           6af="+code=new" classss="sref">dccp_feat_*6a href=he"+code=FEAT_SP" cs="sref">NULL6/a>)e * dccp_fe/* nothing queued: ignor(6/r,ha>)le err/r,hne43ature to activate, 2"
 2f  L1218" class12"line" nam
  L418">.418612"li>121           6a href="+if +code=new" classisu/a>)eu86/a> 6a is_/a>)edccp_feat_typv="lihe"+code=FEAT_SP" class=UNKNOWNref">dccp_feat_lass=UNKNOWN hefhe to activate, 2"
 2f  L1219" class12"line" nam
  L419">.419612"li>121           return 6a       6afeat_num6/ENCE_RESET_CODE_MANDATORY_ERRORef=""net/dccp/feat.c#L412" id  L1220" class12"line" nam
  L420">.420612"li>122lclasnet/dccp/feat.c#L412" id  L1221" class12"line" nam
  L421">.421612"li>122                   6af="+!code=u8" class= 6a href">u86/a> 6a  6a href=a&6a href="+code=dccp_feat_typvref">dccp_feat_typv="lihe"+code=FEAT_SP" class=NNref">dccp_feat_lass=NN hefh=e * dccp_fe/* 6.3.2,hne43ature to activate, 2"
 2f  L1222" class12"line" nam
  L422">.422612"li>122           }edccp_feat_confirms rel_failedef=""net/dccp/feat.c#L412" id  L1223" class12"line" nam
  L423">.423612"li>122                   6s.424612"li>122           6a}net/dccp/feat.c#L381" id  L12"5" class12"line" nam
  L425">.425612"li>1225clasnet/dccp/feat.c#L412" id  L12"6" class12"line" nam
  L426">.426612"li>122   6a href="+f="+code=dccp_feat_ss="sref">dccp_feat_*6a href=ef="+code=	  " classstat(href="net/dccp/stat(="lih!"+code=FEAT_SP" class=CHANGINGref">dccp_feat_lass=CHANGING hefh=e * dccp_fe/* 6.6.2 *ne43ature to activate, 2"
 2f  L1227" class12"line" nam
  L427">.427612"li>122           6a href="+.426/12.c#>1228clasnet/dccp/feat.c#L412" id  L12"9" class12.c#L317" id  L428">.426/12.c#>122           ref="+code=feat_num" le/ref">feat_num6/le/ref=he"+0h="net/dccp/feat.c#L417" id  L1230" class12.c#L317" id  L428">.426612.c#>123l          6a href="+f="+code=dccp_feat_dl2"
_sp_	mu21"be_understoodref">u86/a> 6a 	ntry6/a> mu21"be_understood="lincode=node" clas7" iref">feat_num6/aea,hrefh)=c="comment"> * dccp_fe/* 6.6.7 *ne43ature to activate, 2"
 2f  L12.1" class12"line" nam
  L370">.374612"li>123                   6a========lisoacode=u8" class=confirms rel_failedref">dccp_feat_confirms rel_failedef=""net/dccp/feat.c#L412" id  L12.2" class12"line" nam
  L332">.332612"li>123           }e * F2r gen/*e43ature to activate, 2"
 2f  L12.3" class12"line" nam
  L333">.333612"li>12. class="comment"> * List mantttttttttttttttt* Empty Confirm durer hconnec rel sa hp:cthis;meansprevertir e43ature to activate, 2"
 2f  L12.4" class12"line" nam
  L334">.334612"li>12. class="comment"> * F2r genetttttttttttttttt* tont e `oldfea9; zeof(,hwhich incthis;cass;is,s kndefault. Sincve<3ature to activate, 2"
 2f  L12.5" class12"line" nam
  L335">.335612"li>123 class="comment"> * Feature         tttttttt* we,ha>)le defaultnzeof(s automs rcally when nohot ernzeof(se<3ature to activate, 2"
 2f  L12.6" class12"line" nam
  L336">.336612"li>123 class="comment"> * - each          tttttttt* havepbeelhsa , we revert tont e old zeof(6by remover hs ise<3ature to activate, 2"
 2f  L12.7" class12"line" nam
  L337">.337612"li>123 class="comment">/**6/spalutttttttttttttttttwh*6a h from themown,a href="net/dccp/feat.c#L355" id  L12.8" class12"line" nam
  L338">.338612"li>123 class="comment"> * dccp_fe ttttttttttttttttwne43ature to activate, 2"
 2f  L12.9" class12"line" nam
  L339">.339612"li>123           return 6a code=feat_num" deat.c#ntry"21"po href="net/dccp/feat.c#ntry"21"po ="lincode=node" classs="sref">dccp_feat_*6a href=h"net/dccpivate, 2"
 2f  L1240" class12"line" nam
  L340">.340612"li>124l          6a href="+.341612"li>12"             }net/dccp/feat.c#L381" id  L1242" class12"line" nam
  L342">.342612"li>124 clasnet/dccp/feat.c#L382" id  L1243" class12"line" nam
  L343">.343612"li>1243          ref="+code=feat_num" typvref">dccp_feat_typv="lihe"+code=FEAT_SP" class=NNref">dccp_feat_lass=NN hefh="net/dccp/feat.c#L417" id  L1244" class12"line" nam
  L344">.344612"li>12"           6a href="+f="+code=feat_num" le/ref">feat_num6/le/ref=hf="+ sizeofncode=u8" class=ss="sref">dccp_feat_*6a href=ef="+code=	  " class="sref">	  6/a>.6a href="+code=sp" class=nsref">len6/a>)) ns="lihhe to activate, 2"
 2f  L1245" class12"line" nam
  L345">.345612"li>12"           if (6a hreeeeeeeeelisoacode=u8" class=confirms rel_failedref">dccp_feat_confirms rel_failedef=""net/dccp/feat.c#L412" id  L12"6" class12"line" nam
  L346">.346612"li>124ref="net/dccp/feat.c#L347" id  L12"7" class12"line" nam
  L347">.347612"li>124           6a href="+f="+code=dccp_feat_ss="sref">dccp_feat_*6a href=ef="+code=	  " class="sref">	  6/a>.6a href="+code=sp" class=nsref">len6/a>)) ns="lihe"+code=FEAT_SP" cfeat.delass_zeof(_zerref">feat_num6/dl2"
delass_zeof(_zer="lincode=node" clas="sref">	  6/a>.6a href="" code=u8" class=le/ref">feat_num6/le/ref=hhe to activate, 2"
 2f  L1248" class12"line" nam
  L348">.348612"li>124           6a href="+eeeeeeeelisoacode=u8" class=confirms rel_succeededref">dccp_feat_confirms rel_succeededef=""net/dccp/feat.c#L412" id  L12"9" class12"line" nam
  L349">.349612"li>124 clasnet/dccp/feat.c#L412" id  L1250" class12"line" nam
  L350">.350612"li>125l          6a href="+code=dccp_feat_ENCE_WARNref">feat_num6/ENCE_WARN="linc="comment"> strer ">"Bogus Confirm for non-ex"21er hzeof(\n"e43aturh"net/dccpivate, 2"
 2f  L1251" class12"line" nam
  L351">.351612"li>125                   6alisoacode=u8" class=confirms rel_failedref">dccp_feat_confirms rel_failedef=""net/dccp/feat.c#L412" id  L1252" class12"line" nam
  L352">.352612"li>1252            }net/dccp/feat.c#L381" id  L1253" class12"line" nam
  L353">.353612"li>125ref="net/dccp/feat.c#L414" id  L12"4" class12"line" nam
  L354">.354612"li>125           6ac="comment"> * F2r gen/*e43ature to activate, 2"
 2f  L12"5" class12"line" nam
  L355">.355612"li>125 class="comment"> * Feature         * Parser ,SP Confirms:ps knfirst eleist 6/f,@zeo issthe preferrede43ature to activate, 2"
 2f  L12"6" class12"line" nam
  L356">.356612"li>125 class="comment"> * - each          *,SP zeof(hwhich the peer confirms, themremainder depends el @le/a href="net/dccp/feat.c#L355" id  L1257" class12"line" nam
  L357">.357612"li>125 class="comment">/**6/spalutttttttttwhNote s at only s knmonfirmed zeof( need tonbes2  hrid SP zeof(a href="net/dccp/feat.c#L355" id  L1258" class12"line" nam
  L358">.358612"li>125 class="comment"> * dccp_fe ttttttttwne43ature to activate, 2"
 2f  L12"9" class12"line" nam
  L359">.359612"li>125           ref="+!code=u8" class=	ntry6/a> is_ hrid_sp	="sref">	  6/a>.6adl2"
_sp_	is_ hrid_sp	="s="lincode=node" clas7" iref">feat_num6/aea,hrefa+	  6/a>.6a href="hhe to activate, 2"
 2f  L1260" class12"line" nam
  L360">.360612"li>126l          6a href="+lisoacode=u8" class=confirms rel_failedref">dccp_feat_confirms rel_failedef=""net/dccp/feat.c#L412" id  L1261" class12"line" nam
  L361">.361612"li>126     net/dccp/feat.c#L412" id  L1262" class12"line" nam
  L362">.362612"li>12"           }ef="+code=feat_num" le/ref">feat_num6/le/ref=he"+1h="   6s  6ac="comment"> * F2r gen/* peer didnfea9;t supply a preferenceiown,twne43ature to activate, 2"
 2f  L1263" class12"line" nam
  L363">.363612"li>126                   6sc href="net/dccpef">ref">u86/a> 6a pown, h="hefcode=new" class="sref">	  6/a>.6a href=""net/dccp/feat.c#L412" id  L1264" class12"line" nam
  L364">.364612"li>126           6a href="+code=u8" class=ple/ref">feat_num6/ple/ref=hh"+code=FEAT_SP" cle/ref">feat_num6/le/ref="net/dccp/feat.c#L412" id  L1265" class12"line" nam
  L365">.365612"li>126           if"pelsep{      6a href="+c="comment"> * F2r gen/* preferred zeof( + preferenceiown,twne43ature to activate, 2"
 2f  L1266" class12"line" nam
  L366">.366612"li>126   6a href="+aaaaaaaacode=entry" clapef">ref">u86/a> 6a pown, h="hefcode=new" class="sref">	  6/a>.6a href=" + 1"net/dccp/feat.c#L412" id  L1267" class12"line" nam
  L367">.367612"li>126           6a href="+code=u8" class=ple/ref">feat_num6/ple/ref=hh"+code=FEAT_SP" cle/ref">feat_num6/le/ref= - 1"net/dccp/feat.c#L412" id  L1268" class12"line" nam
  L368">.368612"li>12"           6a}net/dccp/feat.c#L381" id  L1269" class12"line" nam
  L369">.369612"li>126 clasnet/dccp/feat.c#L412" id  L1270" class12"line" nam
  L370">.370612"li>127l          6ac="comment"> * F2r gen/* Check whethercthe peer lis themreconcilts rel rights(6.6.8)twne43ature to activate, 2"
 2f  L1271" class12"line" nam
  L371">.371612"li>1271          }ef="+code=feat_num" 	ntry6/a> reconcileref">feat_num6/dl2"
_sp_	reconcilee4asnef="+code=entry" class="sref">dccp_feat_*6a href=ef="+code=	  " class="sref">	  6/a>.6a href="a+code=entry" clapef">ref">u86/a> 6a pown, h="" code=u8" class=ple/ref">feat_num6/ple/ref=a+code=u8" class=serverref">u86/a> 6a server hef" 0)h!"+	  6/a>.6a href="h="net/dccp/feat.c#L417" id  L1272" class12"line" nam
  L372">.372612"li>127           }efeat_num6/ENCE_WARN="linc="comment"> strer ">"Confirm selected themwror hzeof(,%u\n"e43atura+	  6/a>.6a href="h"net/dccp/feat.c#L412" id  L1273" class12"line" nam
  L373">.373612"li>127                   6sfeat_num6/ENCE_RESET_CODE_OPTION_ERRORef=""net/dccp/feat.c#L412" id  L1274" class12"line" nam
  L374">.374612"li>127           6a}net/dccp/feat.c#L381" id  L1275" class12"line" nam
  L375">.375612"li>1275          6acode=dccp_feat_ss="sref">dccp_feat_*6a href=ef="+code=	  " class="sref">	  6/a>.6a href="+code=sp" class=s href="net/dccp/s ="li+code=sp" class=vecref">u86/a> 6a vecref=[0]hef	  6/a>.6a href=""net/dccp/feat.c#L412" id  L1276" class12"line" nam
  L376">.376612"li>127ref="net/dccp/feat.c#L347" id  L1277" class12"line" nam
  L377">.377612"li>127 classode=u8" class=confirms rel_succeededref">dccp_feat_confirms rel_succeededef=":net/dccp/feat.c#L412" id  L12"8" class12"line" nam
  L378">.378612"li>127           6acode=dccp_feat_ss="sref">dccp_feat_*6a href=ef="+code=	  " classstat(href="net/dccp/stat(="lihe+code=FEAT_SP" class=STABLEref">dccp_feat_lass=STABLE hef"net/dccp/feat.c#L412" id  L1279" class12"line" nam
  L379">.379612"li>12"           re.380612"li>128lclasnet/dccp/feat.c#L412" id  L1281" class12"line" nam
  L381">.381612"li>128     code=u8" class=confirms rel_failedref">dccp_feat_confirms rel_failedef=":net/dccp/feat.c#L412" id  L12"2" class12"line" nam
  L382">.382612"li>128           }ecode=dccp_feat_ENCE_WARNref">feat_num6/ENCE_WARN="linc="comment"> strer ">"Confirms rel failed\n"e43aturh"net/dccpivate, 2"
 2f  L12"3" class12"line" nam
  L383">.383612"li>128             )eu86/a> 6a is_/a>)efeat_num6/ENCE_RESET_CODE_MANDATORY_ERRORef="net/dccp/feat.c#L412" id  L1284" class12"line" nam
  L384">.384612"li>128           6a href="+++++++++++++:fcode=dccp_feat_ENCE_RESET_CODE_OPTION_ERRORref">feat_num6/ENCE_RESET_CODE_OPTION_ERRORef=""net/dccp/feat.c#L412" id  L12"5" class12"line" nam
  L385">.385612"li>1285    }net/dccp/feat.c#L381" id  L1286" class12"line" nam
  L386">.386612"li>128ref="net/dccp/feat.c#L347" id  L1287" class12"line" nam
  L387">.387612"li>128 class="comment">/**6/spalu/*l href="net/dccp/feat.c#L348" id  L1288" class12"line" nam
  L388">.388612"li>128 class="comment"> * dccp_fe l dl2"
_sp_	ha>)le_nn	estabeished te fFast-pathprecep rel /f,NN opiq>
s href="net/dccp/feat.c#L348" id  L12"9" class12"line" nam
  L389">.389612"li>128 class="comment"> * @sk: full @sk:+++++++++socke 6/f,an estabeished ENCEhconnec rel href="net/dccp/feat.c#L348" id  L1290" class12"line" nam
  L390">.390612"li>129lclass="comment"> * @sk: full @/a>)e)e
e<3ature to activate, 2"
 2f  L1291" class12"line" nam
  L391">.391612"li>129 class="comment"> * @loca : wh@opi:        %ENCEO_CHANGE_L |,%ENCEO_CONFIRM_R (NN only)e<3ature to activate, 2"
 2f  L1292" class12"line" nam
  L392">.392612"li>129 class="comment"> * @fva : th @2f &:       NN ampber, one;of,%dl2"
_sp_or._ampbers href="net/dccp/feat.c#L348" id  L1293" class12"line" nam
  L393">.393612"li>129 class="comment"> * List manan@v h:        NN zeof(efref="net/dccp/feat.c#L348" id  L1294" class12"line" nam
  L394">.394612"li>129 class="comment"> * F2r genewh@le/:        le/gth6/f,@zeo in byt.s href="net/dccp/feat.c#L348" id  L1295" class12"line" nam
  L395">.395612"li>129 class="comment"> * Feature * href="net/dccp/feat.c#L348" id  L1296" class12"line" nam
  L396">.396612"li>129 class="comment"> * - each  * This;func rel * -b L3ssthe func relality6/f,changv	recv/confirm	recv,hwithe43ature to activate, 2"
 2f  L1297" class12"line" nam
  L397">.397612"li>129 class="comment">/**6/spaluthhs knfollower hdifferences (reset feats are,s kns>.3):e43ature to activate, 2"
 2f  L1298" class12"line" nam
  L398">.398612"li>129 class="comment"> * dccp_fetwhhhh-mmeeanup aftercreceiver hs e Confirm;e43ature to activate, 2"
 2f  L1299" class12"line" nam
  L399">.399612"li>129 class="comment"> * @sk: full hhh-mzeof(s ar. direc ly ac rvated aftercsuccessful parser ;e43ature to activate, 2"
 2f  L1300" class1300" e" nam
  L399">.39961300">130lclass="comment"> * @sk: full hhh-mdeliberately restrected to NN _sp_or.sa href="net/dccp/feat.c#L355" id  L1301" class130line" nam
  L391">.3916130li>130 class="comment"> * @loca : whThemrestrectrel to NN _sp_or.s issessocaieo sincv,SPhc#ntor.ssccomhavepnon- href="net/dccp/feat.c#L355" id  L1302" class130line" nam
  L392">.3926130li>130 class="comment"> * @fva : th predectabee out* @es (depender hel themremote configurs rel), andpareninter- href="net/dccp/feat.c#L355" id  L1303" class130line" nam
  L393">.3936130li>130 class="comment"> * List manandependk: c(CCIDs for instancv,causepfurthercdependk:cies)a href="net/dccp/feat.c#L355" id  L1304" class130line" nam
  L394">.3946130li>130 class="comment"> * F2r genewne43ature to activate, 2"
 2f  L1305" class130line" nam
  L395">.3956130li>130 clashr6a hrcode=u8" class="sref">u86/a> 6a href="+code=feat_num" dl2"
_sp_	ha>)le_nn	estabeishedref">feat_num6/dl2"
_sp_	ha>)le_nn	estabeished="linhref="+code=dccp_feat_sockhref="net/dccp/sock="lifu86/a> 6a href="+code=feat_num" /a>)eu86/a> 6a /a>)eu86/a> 6a href="+code=feat_num" opiref">u86/a> 6a opiref="net/dccp/feat.c#L417" id  L1306" class130line" nam
  L396">.3966130li>130   6a href="+aaaaaaaa (6a hreeeeeeeeeeeeeeeeeeecode=u8" class="sref">u86/a> 6a href="+code=feat_num" 7" iref">feat_num6/aea,hrefa+code=u8" class="sref">u86/a> 6a href="+	  6/a>.6a href="" code=u8" class="sref">u86/a> 6a href="+code=feat_num" le/ref">feat_num6/le/ref=he to activate, 2"
 2f  L1307" class130line" nam
  L397">.3976130li>130 clas"net/dccp/feat.c#L417" id  L1308" class130line" nam
  L398">.3986130li>130           6ahref="+code=dccp_feat_	  " class="sref">	  6/ref">new6/a>);efeat_num6/ashref =+ef="+code=entry" clacl2"
skhref="net/dccp/cl2"
sk="lincode=node" classkhref="net/dccp/skref=)ef="+code=	  " classcl2"s
_sp_neghref="net/dccp/cl2"s
_sp_negef=""net/dccp/feat.c#L412" id  L1309" class130line" nam
  L399">.3996130li>130           rehref="code=u8" class=boosref">f	  6/a>-&boosef="+code=feat_num"  6a href">u86/a> 6a  6a href=a= ncode=node" clasopiref">u86/a> 6a opiref=he"+code=FEAT_SP" cENCEO_CONFIRM_Rref">feat_num6/ENCEO_CONFIRM_Re.410613"li>1310          6ahref="+code=dccp_feat_entry" class="sref">dccp_feat_entry6/a> *6a href="+code=new" classss="sref">dccp_feat_*6a href="net/dccpivate, 2"
 2f  L1311" class13"line" nam
  L411">.411613"li>131             code=u8" class="sref">u86/a> 6a href="+code=u8" class=typvref">dccp_feat_typv="lihefcode=u8" class=feat.c#ntrtypvref">dccp_feat_entry6/a> typv="lincode=node" clas7" iref">feat_num6/aea,hrefh"net/dccpivate, 2"
 2f  L1312" class13"line" nam
  L412">.412613"li>131           }ecode=dccp_feat_entry6/a> ="sref">	  6/a>.6adl2"
_sp_	 href=" code=node" clas7v"sref">	  6/a>.6af="sef=""net/dccpivate, 2"
 2f  L1313" class13"line" nam
  L413">.413613"li>131ref="net/dccp/feat.c#L414" id  L13"4" class13"line" nam
  L414">.414613"li>131           6acode=dccp_feat_dl2"
_sp_	print_opiref">u86/a> 6a 	ntry6/a> print_opi="lincode=node" clasopiref">u86/a> 6a opiref="+code=feat_num" 7" iref">feat_num6/aea,hrefa+code=u8" class=="sref">	  6/a>.6a href="" code=u8" class=le/ref">feat_num6/le/ref=a+code=u8" class=/a>)eu86/a> 6a /a>)e.415613"li>1315clasnet/dccp/feat.c#L412" id  L13"6" class13"line" nam
  L416">.416613"li>1316          6ac="comment"> * F2r gen/* Ignor(6non-/a>)e.417613"li>131           6af="+code=new" classtypvref">dccp_feat_typv="lihe"+code=FEAT_SP" class=UNKNOWNref">dccp_feat_lass=UNKNOWN hefh="net/dccp/feat.c#L417" id  L1318" class13"line" nam
  L418">.418613"li>131           6a href="+if +code=new" class 6a href">u86/a> 6a  6a href=a&6a href="+!code=u8" class=/a>)eu86/a> 6a /a>)e.419613"li>131           return 6a       6a.420613"li>132l          6a href="+lisoacode=u8" class=fa21"path_"nknownref">feat_num6/aa21"path_"nknownef=""net/dccpivate, 2"
 2f  L1321" class13"line" nam
  L421">.421613"li>132             }pelsepif +code=new" classtypvref">dccp_feat_typv="lih!"+code=FEAT_SP" class=NNref">dccp_feat_lass=NN hefh="net/dccp/feat.c#L417" id  L1322" class13"line" nam
  L422">.422613"li>132           }e.423613"li>132             }net/dccp/feat.c#L381" id  L1324" class13"line" nam
  L424">.424613"li>132     net/dccp/feat.c#L412" id  L13"5" class13"line" nam
  L425">.425613"li>1325          6ac="comment"> * F2r gen/*e43ature to activate, 2"
 2f  L13"6" class13"line" nam
  L426">.426613"li>132 class="comment"> * - each          *,We donfea9;t accep  empty Confirms, sincv,il fast-pathp_sp_or.e43ature to activate, 2"
 2f  L13"7" class13"line" nam
  L427">.427613"li>132 class="comment">/**6/spalutttttttttwh# lists rel themzeof(s ar. enabeed i6/sdiately aftercsender e43ature to activate, 2"
 2f  L13"8" class13.c#L317" id  L428">.426/13.c#>132 class="comment"> * dccp_fe ttttttttwhs e Changvpopiq>
a href="net/dccp/feat.c#L355" id  L13"9" class13.c#L317" id  L428">.426/13.c#>132 class="comment"> * @sk: fulttttttttwhEmpty Changvshel themot ernhandparenin hrid (RFC 4340, 6.1)a href="net/dccp/feat.c#L355" id  L1330" class13.c#L317" id  L428">.426613.c#>133lclass="comment"> * @sk: fulttttttttwne43ature to activate, 2"
 2f  L13.1" class13"line" nam
  L370">.374613"li>1331          }ef="+code=feat_num" le/ref">feat_num6/le/ref=he"+0 ||+code=FEAT_SP" cle/ref">feat_num6/le/ref= f="+ sizeofncode=u8" class=7v"sref">	  6/a>.6af="sef="+code=sp" class=nsref">len6/a>)) ns="lihhe to activate, 2"
 2f  L13.2" class13"line" nam
  L332">.332613"li>133           }efeat_num6/aa21"path_"nknownef=""net/dccpivate, 2"
 2f  L13.3" class13"line" nam
  L333">.333613"li>133ref="net/dccp/feat.c#L414" id  L13.4" class13"line" nam
  L334">.334613"li>1334          }ef="+code=feat_num" opiref">u86/a> 6a opiref=he"+code=FEAT_SP" cENCEO_CHANGE_Lref">feat_num6/ENCEO_CHANGE_L hefh="net/dccp/feat.c#L417" id  L13.5" class13"line" nam
  L335">.335613"li>133           if (6a hrecode=u8" class=7v"sref">	  6/a>.6af="sef="+code=sp" class=nsref">len6/a>)) ns="lihefcode=u8" class=feat.delass_zeof(_zerref">feat_num6/dl2"
delass_zeof(_zer="lincode=node" clas="sref">	  6/a>.6a href="" code=u8" class=le/ref">feat_num6/le/ref=h"net/dccpivate, 2"
 2f  L13.6" class13"line" nam
  L336">.336613"li>133   6a href="+aaaaaaaaf="+!code=u8" class=	ntry6/a> is_ hrid_nn	="sref">	  6/a>.6adl2"
_sp_	is_ hrid_nn	="s="lincode=node" clas7" iref">feat_num6/aea,href"+code=feat_num" 7v"sref">	  6/a>.6af="sef="+code=sp" class=nsref">len6/a>)) ns="lihhe to activate, 2"
 2f  L13.7" class13"line" nam
  L337">.337613"li>133           6a href="+feat_num6/aa21"path_"nknownef=""net/dccpivate, 2"
 2f  L13.8" class13"line" nam
  L338">.338613"li>1338clasnet/dccp/feat.c#L412" id  L13.9" class13"line" nam
  L339">.339613"li>133           return 6a f="+code=feat_num" 	ntry6/a> push_confirmref">feat_num6/	ntry6/a> push_confirm="lincode=node" clas7/ref">feat_num6/ashref"+code=u8" class=7" iref">feat_num6/aea,hrefa+code=u8" class= 6a href">u86/a> 6a  6a href=a+ef="+code=entry" cla7v"sref">	  6/a>.6af="sef=") ||net/dccp/feat.c#L412" id  L1340" class13"line" nam
  L340">.340613"li>134l          6a href="+ hrecode=u8" class=	ntry6/a> ac rvateref">feat_num6/	ntry6/a> ac rvate="lincode=node" classkhref="net/dccp/skref="+code=u8" class=7" iref">feat_num6/aea,hrefa+code=u8" class= 6a href">u86/a> 6a  6a href=a+ef="+code=entry" cla7v"sref">	  6/a>.6af="sef=")he to activate, 2"
 2f  L13"1" class13"line" nam
  L341">.341613"li>134                   6a    6a hfeat_num6/ENCE_RESET_CODE_TOO_BUSYef=""net/dccpivate, 2"
 2f  L1342" class13"line" nam
  L342">.342613"li>134 clasnet/dccp/feat.c#L382" id  L1343" class13"line" nam
  L343">.343613"li>134                   6sc="comment"> * F2r gen/* set t e `Ack Pender fea9; flag to piggyback a Confirm wne43ature to activate, 2"
 2f  L1344" class13"line" nam
  L344">.344613"li>13"           6a href="+code=dccp_feat_ L3t_csk_schedule ackhref="net/dccp/ L3t_csk_schedule ack="lincode=node" classkhref="net/dccp/skref=)"net/dccpivate, 2"
 2f  L1345" class13"line" nam
  L345">.345613"li>1345clasnet/dccp/feat.c#L412" id  L13"6" class13"line" nam
  L346">.346613"li>134   6a href="+}pelsepif +code=new" classopiref">u86/a> 6a opiref=he"+code=FEAT_SP" cENCEO_CONFIRM_Rref">feat_num6/ENCEO_CONFIRM_Re.347613"li>134           6a href="+code=new" classss="sref">dccp_feat_*6a href=hefcode=new" classentry6/a> ef">nlooku href="net/dccp/feat.c#ntry"21"looku clasncode=u8" class=c/ref">feat_num6/ashref"+code=u8" class=7" iref">feat_num6/aea,hrefa+code=u8" class= 6a href">u86/a> 6a  6a href=h"net/dccpivate, 2"
 2f  L1348" class13"line" nam
  L348">.348613"li>134           6a href="+f="+code=new" classss="sref">dccp_feat_*6a href=he"+code=FEAT_SP" cs="sref">NULL6/a>)edccp_feat_*6a href=ef="+code=	  " classstat(href="net/dccp/stat(="lih!"+code=FEAT_SP" class=CHANGINGref">dccp_feat_lass=CHANGING hefhnet/dccpivate, 2"
 2f  L1349" class13"line" nam
  L349">.349613"li>134           return 6a       6a.350613"li>135lclasnet/dccp/feat.c#L412" id  L1351" class13"line" nam
  L351">.351613"li>135                   6acode=u8" class=7v"sref">	  6/a>.6af="sef="+code=sp" class=nsref">len6/a>)) ns="lihefcode=u8" class=feat.delass_zeof(_zerref">feat_num6/dl2"
delass_zeof(_zer="lincode=node" clas="sref">	  6/a>.6a href="" code=u8" class=le/ref">feat_num6/le/ref=h"net/dccpivate.c#L412" id  L1352" class13"line" nam
  L352">.352613"li>135           }e * F2r gen/*e43ature to activate, 2"
 2f  L1353" class13"line" nam
  L353">.353613"li>135 class="comment"> * List mantttttttttttttttt* Just ignor(6ahzeof(,s at doesnfea9;t match our currk: czeof(a href="net/dccp/feat.c#L355" id  L13"4" class13"line" nam
  L354">.354613"li>135 class="comment"> * F2r genetttttttttttttttt* If themop rel changvshtwicehwithinctwo RTTs, then at lean, href="net/dccp/feat.c#L348" id  L13"5" class13"line" nam
  L355">.355613"li>135 class="comment"> * Feature         tttttttt* one;CONFIRMhwillnbesreceived for t e old zeof(6afterca href="net/dccp/feat.c#L348" id  L13"6" class13"line" nam
  L356">.356613"li>135 class="comment"> * - each          tttttttt* new CHANGEpwas socaa href="net/dccp/feat.c#L355" id  L13"7" class13"line" nam
  L357">.357613"li>135 class="comment">/**6/spaluttttttttttttttttt*ne43ature to activate, 2"
 2f  L1358" class13"line" nam
  L358">.358613"li>135           6a href="+f="+code=new" class7v"sref">	  6/a>.6af="sef="+code=sp" class=nsref">len6/a>)) ns="lih!"+code=FEAT_SP" css="sref">dccp_feat_*6a href=ef="+code=	  " class="sref">	  6/a>.6a href="+code=sp" class=nsref">len6/a>)) ns="lihe to activate, 2"
 2f  L1359" class13"line" nam
  L359">.359613"li>135           return 6a       6a.360613"li>136lclasnet/dccp/feat.c#L412" id  L1361" class13"line" nam
  L361">.361613"li>136                   6ac="comment"> * F2r gen/* Only ac rvate aftercreceiver hs e Confirmmop rel (6.6.1).t*ne43ature to activate, 2"
 2f  L1362" class13"line" nam
  L362">.362613"li>136           }e ac rvateref">feat_num6/	ntry6/a> ac rvate="lincode=node" classkhref="net/dccp/skref="+code=u8" class=7" iref">feat_num6/aea,hrefa+code=u8" class= 6a href">u86/a> 6a  6a href=a+ef="+code=entry" cla7v"sref">	  6/a>.6af="sef=")"net/dccp/feat.c#L417" id  L1363" class13"line" nam
  L363">.363613"li>136ref="net/dccp/feat.c#L414" id  L1364" class13"line" nam
  L364">.364613"li>136           6a href="+c="comment"> * F2r gen/* It has beelhmonfirmed - so remove,s kn*6a h *ne43ature to activate, 2"
 2f  L1365" class13"line" nam
  L365">.365613"li>136           if (6a hrecode=u8" class=feat.c#ntry"21"po href="net/dccp/feat.c#ntry"21"po ="lincode=node" classs="sref">dccp_feat_*6a href=h"net/dccpivate, 2"
 2f  L1366" class13"line" nam
  L366">.366613"li>136ref="net/dccp/feat.c#L347" id  L1367" class13"line" nam
  L367">.367613"li>136           6a"pelsep{net/dccp/feat.c#L347" id  L1368" class13"line" nam
  L368">.368613"li>136           6a href="+code=dccp_feat_ENCE_WARNref">feat_num6/ENCE_WARN="linc="comment"> strer ">"Received illegalmop rel %u\n"e43atura+code=new" classopiref">u86/a> 6a opiref=h"net/dccpivate, 2"
 2f  L1369" class13"line" nam
  L369">.369613"li>136           return 6a lisoacode=u8" class=fa21"path_failedref">dccp_feat_fa21"path_failedef=""net/dccpivate, 2"
 2f  L1370" class13"line" nam
  L370">.370613"li>137l          6a}net/dccp/feat.c#L381" id  L1371" class13"line" nam
  L371">.371613"li>1371          }e.372613"li>137 clasnet/dccp/feat.c#L382" id  L1373" class13"line" nam
  L373">.373613"li>137 classode=u8" class=fa21"path_"nknownref">feat_num6/aa21"path_"nknownef=":net/dccp/feat.c#L412" id  L1374" class13"line" nam
  L374">.374613"li>1374          }ef="+!code=u8" class=/a>)eu86/a> 6a /a>)e.375613"li>137           if (6a hrefeat_num6/	ntrypush_empty_confirmclasncode=u8" class=c/ref">feat_num6/ashref"+code=u8" class=7" iref">feat_num6/aea,hrefa+code=u8" class= 6a href">u86/a> 6a  6a href=h"net/dccpivate, 2"
 2f  L1376" class13"line" nam
  L376">.376613"li>137ref="net/dccp/feat.c#L347" id  L1377" class13"line" nam
  L377">.377613"li>137 classode=u8" class=fa21"path_failedref">dccp_feat_fa21"path_failedef=":net/dccp/feat.c#L412" id  L1378" class13"line" nam
  L378">.378613"li>137           6a)eu86/a> 6a /a>)efeat_num6/ENCE_RESET_CODE_MANDATORY_ERRORef="net/dccp/feat.c#L412" id  L1379" class13"line" nam
  L379">.379613"li>137           return 6a       6a+:fcode=dccp_feat_ENCE_RESET_CODE_OPTION_ERRORref">feat_num6/ENCE_RESET_CODE_OPTION_ERRORef=""net/dccp/feat.c#L412" id  L1380" class13"line" nam
  L380">.380613"li>138lclas}net/dccp/feat.c#L381" id  L1381" class13"line" nam
  L381">.381613"li>138     net/dccp/feat.c#L412" id  L13"2" class13"line" nam
  L382">.382613"li>138 class="comment"> * @fva : /*l href="net/dccp/feat.c#L348" id  L13"3" class13"line" nam
  L383">.383613"li>138 class="comment"> * List manandntry6/a> parse_opiq>
s te fProcess Fsp_or.-N lists rel Opiq>
s href="net/dccp/feat.c#L348" id  L1384" class13"line" nam
  L384">.384613"li>138 class="comment"> * F2r genewh@sk:+for generalmusepandpused+by s knmeik: cdurer hconnec rel sa hp href="net/dccp/feat.c#L348" id  L1385" class13"line" nam
  L385">.385613"li>138 class="comment"> * Feature * @dreq:pused+by s knserver durer hconnec rel sa hp href="net/dccp/feat.c#L348" id  L1386" class13"line" nam
  L386">.386613"li>138 class="comment"> * - each  * @/a>)e)e
e<3ature to activate, 2"
 2f  L1387" class13"line" nam
  L387">.387613"li>138 class="comment">/**6/spalu wh@opi: %ENCEO_CHANGE_L |,%ENCEO_CHANGE_R |,%ENCEO_CONFIRM_L |,%ENCEO_CONFIRM_Re<3ature to activate, 2"
 2f  L1388" class13"line" nam
  L388">.388613"li>138 class="comment"> * dccp_fe l @2f &: one;of,%dl2"
_sp_or._ampbers href="net/dccp/feat.c#L348" id  L13"9" class13"line" nam
  L389">.389613"li>138 class="comment"> * @sk: full @v h: zeof(6contk: s6/f,@opireref="net/dccp/feat.c#L348" id  L1390" class13"line" nam
  L390">.390613"li>139lclass="comment"> * @sk: full @le/: le/gth6/f,@zeo in byt.s href="net/dccp/feat.c#L348" id  L1391" class13"line" nam
  L391">.391613"li>139 class="comment"> * @loca : w href="net/dccp/feat.c#L348" id  L1392" class13"line" nam
  L392">.392613"li>139 class="comment"> * @fva : th Ra hres 0hel success, a Reset feat+for ender hs knmonnec rel ot erwis(a href="net/dccp/feat.c#L355" id  L1393" class13"line" nam
  L393">.393613"li>139 class="comment"> * List manane43ature to activate, 2"
 2f  L1394" class13"line" nam
  L394">.394613"li>139 clasin"+code=dccp_feat_entry" claparse_opiq>
sref">feat_num6/	ntry6/a> parse_opiq>
sclasnhref="+code=dccp_feat_sockhref="net/dccp/sock="lif.395613"li>139           if (6a hreeeeeeeeef="+code=dccp_feat_"sref">u86/a> 6a href="+code=feat_num" /a>)eu86/a> 6a /a>)eu86/a> 6a href="+code=feat_num" opiref">u86/a> 6a opiref="ecode=u8" class="sref">u86/a> 6a href="+code=feat_num" 7" iref">feat_num6/aea,hrefa+code=u8" class="sref">u86/a> 6a href="+	  6/a>.6a href="" code=u8" class="sref">u86/a> 6a href="+code=feat_num" le/ref">feat_num6/le/ref=he to activate, 2"
 2f  L1396" class13"line" nam
  L396">.396613"li>139 clas{net/dccp/feat.c#L347" id  L1397" class13"line" nam
  L397">.397613"li>139           6ahref="+code=dccp_feat_entrysockhref="net/dccp/entrysock="lif.398613"li>139           6ahref="+code=dccp_feat_	  " class="sref">	  6/ref">new6/a>);efeat_num6/ashref =+a href="net/dccdreqhref="net/dccp/ereqref= ?fef="+code=entry" clacreqhref="net/dccp/ereqref=ef="+code=	  " classcreq
_sp_neghref="net/dccp/creq
_sp_negref= :fef="+code=entry" clac href="net/dccp/fp="lief="+code=	  " classcl2"s
_sp_neghref="net/dccp/cl2"s
_sp_negef=""net/dccp/feat.c#L412" id  L1399" class13"line" nam
  L399">.399613"li>139           recode=	  " classboosref">f	  6/a>-&boosef="+code=feat_num" serverref">u86/a> 6a server hef =+a href="net/dccfalseref">feat_num6/falseef=""net/dccp/feat.c#L412" id  L1400" class1400" e" nam
  L399">.39961400">140lclasnet/dccp/feat.c#L412" id  L1401" class140line" nam
  L391">.3916140li>1401          }eswitch ncode=node" classkhref="net/dccp/skref=ef="+code=	  " classsk_stat(href="net/dccp/sk_stat(e.3926140li>140           }ec="comment"> * F2r gen/*e43ature to activate, 2"
 2f  L1403" class140line" nam
  L393">.3936140li>140 class="comment"> * List mannnnnnnnn*nnnnnnN lists rel durer hconnec rel sa hp href="net/dccp/feat.c#L348" id  L1404" class140line" nam
  L394">.3946140li>140 class="comment"> * F2r genennnnnnnn*ne43ature to activate, 2"
 2f  L1405" class140line" nam
  L395">.3956140li>140           ifcass;code=dccp_feat_ENCE_LISTENref">feat_num6/ENCE_LISTENef=":net/dccp/feat.c#L412" id  L1406" class140line" nam
  L396">.3966140li>140   6a href="+aaaaaaaacode=feat_num" serverref">u86/a> 6a server hef =+a href="net/dccrefvref">dccp_feat_trueef=""6a hreeeeeeeeef="+c="comment"> * F2r gen/* fallhs roughn*ne43ature to activate, 2"
 2f  L1407" class140line" nam
  L397">.3976140li>1407          ifcass;code=dccp_feat_ENCE_REQUESTINGref">dccp_feat_ENCE_REQUESTINGef=":net/dccp/feat.c#L412" id  L1408" class140line" nam
  L398">.3986140li>140           6a href="+switch ncode=node" clasopiref">u86/a> 6a opiref=h="net/dccp/feat.c#L417" id  L1409" class140line" nam
  L399">.3996140li>140           return 6a cass;code=dccp_feat_ENCEO_CHANGE_Lref">feat_num6/ENCEO_CHANGE_L hef:net/dccp/feat.c#L412" id  L1410" class14"line" nam
  L410">.410614"li>141l          6a href="+cass;code=dccp_feat_ENCEO_CHANGE_Rref">feat_num6/ENCEO_CHANGE_R hef:net/dccp/feat.c#L412" id  L1411" class14"line" nam
  L411">.411614"li>141                   6a    6a h changv	recvref">feat_num6/	ntry6/a> changv	recvclasncode=u8" class=c/ref">feat_num6/ashref"+code=u8" class=/a>)eu86/a> 6a /a>)eu86/a> 6a opiref="+code=feat_num" 7" iref">feat_num6/aea,hrefanet/dccp/feat.c#L412" id  L1412" class14"line" nam
  L412">.412614"li>141           }e	  6/a>.6a href="" code=u8" class=le/ref">feat_num6/le/ref=a+code=u8" class=serverref">u86/a> 6a server hef)"net/dccp/feat.c#L412" id  L1413" class14"line" nam
  L413">.413614"li>141                   6scass;code=dccp_feat_ENCEO_CONFIRM_Rref">feat_num6/ENCEO_CONFIRM_Re.414614"li>141           6a href="+cass;code=dccp_feat_ENCEO_CONFIRM_Lref">feat_num6/ENCEO_CONFIRM_Le.415614"li>141           if (6a hreeeeeeeee confirm	recvref">feat_num6/	ntry6/a> confirm	recvclasncode=u8" class=c/ref">feat_num6/ashref"+code=u8" class=/a>)eu86/a> 6a /a>)eu86/a> 6a opiref="+code=feat_num" 7" iref">feat_num6/aea,hrefanet/dccp/feat.c#L412" id  L1416" class14"line" nam
  L416">.416614"li>141   6a href="+aaaaaaaa (6a hreeeeeeeeeeeeeeeeeee============a href="net/dcc="sref">	  6/a>.6a href="" code=u8" class=le/ref">feat_num6/le/ref=a+code=u8" class=serverref">u86/a> 6a server hef)"net/dccp/feat.c#L412" id  L1417" class14"line" nam
  L417">.417614"li>141           6a href="+}net/dccp/feat.c#L381" id  L1418" class14"line" nam
  L418">.418614"li>141           6a href="+break"net/dccp/feat.c#L412" id  L1419" class14"line" nam
  L419">.419614"li>141           rec="comment"> * F2r gen/*e43ature to activate, 2"
 2f  L1420" class14"line" nam
  L420">.420614"li>142lclass="comment"> * @sk: fulttttttttwttttttSupport+for exchanger hNN opiq>
shel an estabeished connec rela href="net/dccp/feat.c#L355" id  L1421" class14"line" nam
  L421">.421614"li>142 class="comment"> * @loca : ttttttttwne43ature to activate, 2"
 2f  L1422" class14"line" nam
  L422">.422614"li>142           }ecass;code=dccp_feat_ENCE_OPENref">feat_num6/ENCE_OPENe.423614"li>142             cass;code=dccp_feat_ENCE_PARTOPENref">feat_num6/ENCE_PARTOPENe.424614"li>142           6a href="+ ha>)le_nn	estabeishedref">feat_num6/dl2"
_sp_	ha>)le_nn	estabeished="lina href="net/dccskhref="net/dccp/skref=a+code=u8" class=/a>)eu86/a> 6a /a>)eu86/a> 6a opiref="+code=feat_num" 7" iref">feat_num6/aea,hrefanet/dccp/feat.c#L412" id  L14"5" class14"line" nam
  L425">.425614"li>142           if (6a hreeeeeeeeef="++++++++++++++++++++++++++++a href="net/dcc="sref">	  6/a>.6a href="" code=u8" class=le/ref">feat_num6/le/ref=)"net/dccp/feat.c#L412" id  L14"6" class14"line" nam
  L426">.426614"li>142   6a href="+}net/dccp/feat.c#L412" id  L14"7" class14"line" nam
  L427">.427614"li>142           6a * F2r gen/* ignor(6FN opiq>
shil allhot ernstat(s wne43ature to activate, 2"
 2f  L14"8" class14.c#L317" id  L428">.426/14.c#>142 clas}net/dccp/feat.c#L412" id  L14"9" class14.c#L317" id  L428">.426/14.c#>142 clasnet/dccp/feat.c#L412" id  L1430" class14.c#L317" id  L428">.426614.c#>143lclass="comment"> * @sk: fu/*l href="net/dccp/feat.c#L348" id  L14.1" class14"line" nam
  L370">.374614"li>143 class="comment"> * @loca : whdl2"
_sp_	init te fSeed _sp_or.h# lists rel with host-specific defaults href="net/dccp/feat.c#L348" id  L14.2" class14"line" nam
  L332">.332614"li>143 class="comment"> * @fva : th This;initiaeis(s global defaults, depender hel themzeof(6of themsysctlsa href="net/dccp/feat.c#L355" id  L14.3" class14"line" nam
  L333">.333614"li>143 class="comment"> * List mananThesesccomlatercb(6overridden bya.334614"li>143 class="comment"> * F2r genewhThementt   Lkhil s knmhail is;finaeis(_sa ter s, to makemsur(,s at betwee
e<3ature to activate, 2"
 2f  L14.5" class14"line" nam
  L335">.335614"li>143 class="comment"> * Feature *  erepandpthemstar 6/f,actual _sp_or.h# lists rel nohilhrefiste:ciesn*6aera href="net/dccp/feat.c#L355" id  L14.6" class14"line" nam
  L336">.336614"li>143 class="comment"> * - each  * href="net/dccp/feat.c#L355" id  L14.7" class14"line" nam
  L337">.337614"li>143 class="comment">/**6/spalu whAll _sp_or.s not appearer hbelowmusepeithercdefaults or arenot erwis( href="net/dccp/feat.c#L355" id  L14.8" class14"line" nam
  L338">.338614"li>143 class="comment"> * dccp_fe l latercadjusted throughndl2"
_sp_	finaeis(_sa ter s()a href="net/dccp/feat.c#L355" id  L14.9" class14"line" nam
  L339">.339614"li>143 class="comment"> * @sk: fullne43ature to activate, 2"
 2f  L1440" class14"line" nam
  L340">.340614"li>144l    in"+code=dccp_feat_entry" clainitref">feat_num6/dl2"
_sp_	initclasnhref="+code=dccp_feat_sockhref="net/dccp/sock="lif.341614"li>144     "net/dccp/feat.c#L417" id  L1442" class14"line" nam
  L342">.342614"li>144           }ehref="+code=dccp_feat_	  " class="sref">	  6/ref">new6/a>);efeat_num6/ashref =+ef="+code=entry" clacl2"
skhref="net/dccp/cl2"
sk="lincode=node" classkhref="net/dccp/skref=)ef="+code=	  " classcl2"s
_sp_neghref="net/dccp/cl2"s
_sp_negef=""net/dccp/feat.c#L412" id  L1443" class14"line" nam
  L343">.343614"li>144             code=u8" class="sref">u86/a> 6a href="+code=feat_num" o/ref">feat_num6/oshref =+1"+code=u8" class=offref">feat_num6/offhref =+0"net/dccp/feat.c#L417" id  L1444" class14"line" nam
  L344">.344614"li>14"           6ain"+code=dccp_feat_rcref">u86/a> 6a rcef=""net/dccp/feat.c#L412" id  L1445" class14"line" nam
  L345">.345614"li>1445          }ehref="+"net/dccp/feat.c#L417" id  L1446" class14"line" nam
  L346">.346614"li>144   6a href="+aaaaaaaacode=feat_num" "sref">u86/a> 6a href="+	  6/a>.6a href=""net/dccp/feat.c#L412" id  L1447" class14"line" nam
  L347">.347614"li>144           6a href="+code=new" class"sref">u86/a> 6a href="+code=feat_num" le/ref">feat_num6/le/ref="net/dccp/feat.c#L412" id  L1448" class14"line" nam
  L348">.348614"li>144           6a}+a href="net/dccrxref">dccp_feat_txef="" code=u8" class=rxref">dccp_feat_rxref="net/dccp/feat.c#L412" id  L1449" class14"line" nam
  L349">.349614"li>144 clasnet/dccp/feat.c#L412" id  L1450" class14"line" nam
  L350">.350614"li>145l          6ac="comment"> * F2r gen/* Non-# listsbee (NN) _sp_or.s wne43ature to activate, 2"
 2f  L1451" class14"line" nam
  L351">.351614"li>145             code=u8" class=rcref">u86/a> 6a rcef=" =+a href="net/dcc_
_sp_	len6/a>)) _
_sp_	feat_num6/ashref"+code=u8" class=ENCEF_SEQUENCE_WINDOWref">feat_num6/ENCEF_SEQUENCE_WINDOWhref"+0anet/dccp/feat.c#L412" id  L1452" class14"line" nam
  L352">.352614"li>145           }e.353614"li>145             f="+code=new" classrcref">u86/a> 6a rcef="he to activate, 2"
 2f  L14"4" class14"line" nam
  L354">.354614"li>145           6a href="+u86/a> 6a rcef=""net/dccp/feat.c#L412" id  L14"5" class14"line" nam
  L355">.355614"li>1455clasnet/dccp/feat.c#L412" id  L14"6" class14"line" nam
  L356">.356614"li>1456          6ac="comment"> * F2r gen/* Server-priority6(SP) _sp_or.s wne43ature to activate, 2"
 2f  L1457" class14"line" nam
  L357">.357614"li>145 clase to activate, 2"
 2f  L1458" class14"line" nam
  L358">.358614"li>145           6ac="comment"> * F2r gen/* Advertis(,s at short+seqnos ar. not supported (7.6.1) wne43ature to activate, 2"
 2f  L1459" class14"line" nam
  L359">.359614"li>145           recode=	  " classrcref">u86/a> 6a rcef=" =+a href="net/dcc_
_sp_	feat_num6/ashref"+code=u8" class=ENCEF_SHORT_SEQNOSref">feat_num6/ENCEF_SHORT_SEQNOShref"+code=u8" class=refvref">dccp_feat_trueef=""+code=u8" class=refvref">dccp_feat_trueef=""+ef="+code=entry" claoffref">feat_num6/offhref, 1)"net/dccp/feat.c#L412" id  L1460" class14"line" nam
  L360">.360614"li>1460            f="+code=new" classrcref">u86/a> 6a rcef="he to activate, 2"
 2f  L1461" class14"line" nam
  L361">.361614"li>146                   6au86/a> 6a rcef=""net/dccp/feat.c#L412" id  L1462" class14"line" nam
  L362">.362614"li>146 clasnet/dccp/feat.c#L382" id  L1463" class14"line" nam
  L363">.363614"li>1463          6ac="comment"> * F2r gen/* RFC 4340 12.1: "If a ENCEhis not ECN capsbee, ..." wne43ature to activate, 2"
 2f  L1464" class14"line" nam
  L364">.364614"li>146           6acode=	  " classrcref">u86/a> 6a rcef=" =+a href="net/dcc_
_sp_	feat_num6/ashref"+code=u8" class=ENCEF_ECN_INCAPABLEref">feat_num6/ENCEF_ECN_INCAPABLEhref"+code=u8" class=refvref">dccp_feat_trueef=""+code=u8" class=refvref">dccp_feat_trueef=""+ef="+code=entry" clao/ref">feat_num6/oshref, 1)"net/dccp/feat.c#L412" id  L1465" class14"line" nam
  L365">.365614"li>146           iff="+code=new" classrcref">u86/a> 6a rcef="he to activate, 2"
 2f  L1466" class14"line" nam
  L366">.366614"li>146   6a href="+aaaaaaaau86/a> 6a rcef=""net/dccp/feat.c#L412" id  L1467" class14"line" nam
  L367">.367614"li>146 clase to activate, 2"
 2f  L1468" class14"line" nam
  L368">.368614"li>146           6ac="comment"> * F2r gen/*e43ature to activate, 2"
 2f  L1469" class14"line" nam
  L369">.369614"li>146 class="comment"> * @sk: fulttttttttwhWe advertis(,s e availsbee ef">6/f,CCIDs andpreordercaccorder hsoe43ature to activate, 2"
 2f  L1470" class14"line" nam
  L370">.370614"li>147lclass="comment"> * @sk: fulttttttttwtpacterences, to avoid failor.hr.sulter  fromh# lists rr hdifferenireref="net/dccp/feat.c#L348" id  L1471" class14"line" nam
  L371">.371614"li>147 class="comment"> * @loca : ttttttttw singletonmzeof(s (which always leads to failor.)a href="net/dccp/feat.c#L355" id  L1472" class14"line" nam
  L372">.372614"li>147 class="comment"> * @fva : tttttttttw Thesessa ter ssccomstilln(later)cb(6overridden via sockopisa href="net/dccp/feat.c#L355" id  L1473" class14"line" nam
  L373">.373614"li>147 class="comment"> * List mannnnnnnnn*ne43ature to activate, 2"
 2f  L1474" class14"line" nam
  L374">.374614"li>1474          }ef="+code=dccp_feat_ccid_get_builter_ccidsref">feat_num6/ccid_get_builter_ccidsclasnef="+code=entry" clarxref">dccp_feat_txef="+code=sp" class=="sref">	  6/a>.6a href="" ef="+code=entry" clarxref">dccp_feat_txef="+code=sp" class=le/ref">feat_num6/le/ref=) ||net/dccp/feat.c#L412" id  L1475" class14"line" nam
  L375">.375614"li>147           if (6acode=dccp_feat_ccid_get_builter_ccidsref">feat_num6/ccid_get_builter_ccidsclasnef="+code=entry" clarxref">dccp_feat_rxref=+code=sp" class=="sref">	  6/a>.6a href="" ef="+code=entry" clarxref">dccp_feat_rxref=+code=sp" class=le/ref">feat_num6/le/ref=)he to activate, 2"
 2f  L1476" class14"line" nam
  L376">.376614"li>147   6a href="+aaaaaaaafeat_num6/ENOBUFSef=""net/dccp/feat.c#L412" id  L1477" class14"line" nam
  L377">.377614"li>147 clase to activate, 2"
 2f  L1478" class14"line" nam
  L378">.378614"li>147           6af="+!code=u8" class=	ntry6/a> pacterref">feat_num6/dl2"
_sp_	pacter="lincode=node" classysctl_cl2"
tx_ccidhref="net/dccp/sysctl_cl2"
tx_ccidef=""+code=u8" class=rxref">dccp_feat_txef="+code=sp" class=="sref">	  6/a>.6a href="" code=entry" clarxref">dccp_feat_txef="+code=sp" class=le/ref">feat_num6/le/ref=) ||net/dccp/feat.c#L412" id  L1479" class14"line" nam
  L379">.379614"li>147           return!code=u8" class=	ntry6/a> pacterref">feat_num6/dl2"
_sp_	pacter="lincode=node" classysctl_cl2"
rx_ccidhref="net/dccp/sysctl_cl2"
rx_ccidef=""+code=u8" class=rxref">dccp_feat_rxref=+code=sp" class=="sref">	  6/a>.6a href="" code=entry" clarxref">dccp_feat_rxref=+code=sp" class=le/ref">feat_num6/le/ref=)he to activate, 2"
 2f  L1480" class14"line" nam
  L380">.380614"li>148l          6a href="+lisoacode=u8" class=free_ccidry"21sref">feat_num6/free_ccidry"21sef=""net/dccp/feat.c#L412" id  L1481" class14"line" nam
  L381">.381614"li>148     net/dccp/feat.c#L412" id  L14"2" class14"line" nam
  L382">.382614"li>148           }ecode=dccp_feat_rcref">u86/a> 6a rcef=" =+a href="net/dcc_
_sp_	feat_num6/ashref"+code=u8" class=ENCEF_CCIDref">feat_num6/ENCEF_CCIDhref"+code=u8" class=refvref">dccp_feat_trueef=""+code=u8" class=falseref">feat_num6/falseef=""+code=u8" class=rxref">dccp_feat_txef="+code=sp" class=="sref">	  6/a>.6a href="" code=entry" clarxref">dccp_feat_txef="+code=sp" class=le/ref">feat_num6/le/ref=)"net/dccp/feat.c#L412" id  L1483" class14"line" nam
  L383">.383614"li>148             f="+code=new" classrcref">u86/a> 6a rcef="he to activate, 2"
 2f  L1484" class14"line" nam
  L384">.384614"li>148           6a href="+lisoacode=u8" class=free_ccidry"21sref">feat_num6/free_ccidry"21sef=""net/dccp/feat.c#L412" id  L1485" class14"line" nam
  L385">.385614"li>1485clasnet/dccp/feat.c#L412" id  L1486" class14"line" nam
  L386">.386614"li>1486          }ecode=dccp_feat_rcref">u86/a> 6a rcef=" =+a href="net/dcc_
_sp_	feat_num6/ashref"+code=u8" class=ENCEF_CCIDref">feat_num6/ENCEF_CCIDhref"+code=u8" class=falseref">feat_num6/falseef=""+code=u8" class=falseref">feat_num6/falseef=""+code=u8" class=rxref">dccp_feat_rxref=+code=sp" class=="sref">	  6/a>.6a href="" code=entry" clarxref">dccp_feat_rxref=+code=sp" class=le/ref">feat_num6/le/ref=)"net/dccp/feat.c#L412" id  L1487" class14"line" nam
  L387">.387614"li>148 clase to activate, 2"
 2f  L1488" class14"line" nam
  L388">.388614"li>148 classode=u8" class=free_ccidry"21sref">feat_num6/free_ccidry"21sef=":net/dccp/feat.c#L412" id  L14"9" class14"line" nam
  L389">.389614"li>148           recode=	  " classkfreeref">feat_num6/kfreeclasncode=u8" class=rxref">dccp_feat_txef="+code=sp" class=="sref">	  6/a>.6a href=")"net/dccp/feat.c#L412" id  L1490" class14"line" nam
  L390">.390614"li>1490          recode=	  " classkfreeref">feat_num6/kfreeclasncode=u8" class=rxref">dccp_feat_rxref=+code=sp" class=="sref">	  6/a>.6a href=")"net/dccp/feat.c#L412" id  L1491" class14"line" nam
  L391">.391614"li>1491          }eu86/a> 6a rcef=""net/dccp/feat.c#L412" id  L1492" class14"line" nam
  L392">.392614"li>149 clas}net/dccp/feat.c#L412" id  L1493" class14"line" nam
  L393">.393614"li>149ref="net/dccp/feat.c#L414" id  L1494" class14"line" nam
  L394">.394614"li>149 clasin"+code=dccp_feat_entry" claac rvate_zeof(sref">feat_num6/	ntry6/a> ac rvate_zeof(sclasnhref="+code=dccp_feat_sockhref="net/dccp/sock="lif	  6/ref">new6/a>);efeat_num6/asry"21ef="he to activate, 2"
 2f  L1495" class14"line" nam
  L395">.395614"li>149     "net/dccp/feat.c#L417" id  L1496" class14"line" nam
  L396">.396614"li>1496          }ehref="+code=dccp_feat_entrysockhref="net/dccp/entrysock="lif.397614"li>149           6ahref="+code=dccp_feat_entry6/a> ss="sref">dccp_feat_entry6/a> ss="s="liffeat_num6/curref=a+feat_num6/nex1ef=""net/dccp/feat.c#L412" id  L1498" class14"line" nam
  L398">.398614"li>149           6ain"+code=dccp_feat_idxref">dccp_feat_idxef=""net/dccp/feat.c#L412" id  L1499" class14"line" nam
  L399">.399614"li>149           recode=	  " classentry6/a> ="sref">	  6/a>.6adl2"
_sp_	 href="efeat_num6/f hrsef="[code=u8" class=ENCE_lass=SUPPORTED_MAXref">feat_num6/ENCE_lass=SUPPORTED_MAXef="][2]hef"net/dccp/feat.c#L417" id  L1500" class1500" e" nam
  L399">.39961500">150l          6a href="+ [0 ...;code=dccp_feat_ENCE_lass=SUPPORTED_MAXref">feat_num6/ENCE_lass=SUPPORTED_MAXef="-1]hef";code=dccp_feat_s="sref">NULL6/a>)eNULL6/a>)e.3916150li>1501          }e}"net/dccp/feat.c#L412" id  L1502" class150line" nam
  L392">.3926150li>150 clasnet/dccp/feat.c#L382" id  L1503" class150line" nam
  L393">.3936150li>150             code=u8" class=ef">nfor_each ss="sref">dccp_feat_ef">nfor_each ss="s="lincode=node" clascurref">feat_num6/curref=a+a href="net/dccp/ry"21ref">feat_num6/asry"21ef="a+a href="net/dccn/dcref">feat_num6/n/dcref=) "net/dccp/feat.c#L417" id  L1504" class150line" nam
  L394">.3946150li>150           6a href="+c="comment"> * F2r gen/*e43ature to activate, 2"
 2f  L1505" class150line" nam
  L395">.3956150li>150 class="comment"> * Feature         tttttttt* An empty Confirmmmeans,s at eitherccom"nknown _sp_or.htyp( href="net/dccp/feat.c#L355" id  L1506" class150line" nam
  L396">.3966150li>150 class="comment"> * - each          tttttttt* orccomin hridmzeof(6was presocaa Il s knfirst cass;t erepis href="net/dccp/feat.c#L348" id  L1507" class150line" nam
  L397">.3976150li>150 class="comment">/**6/spaluttttttttttttttttt* nother hso ac rvate,hil s knot erns kndefaultmzeof(6ispuseda href="net/dccp/feat.c#L355" id  L1508" class150line" nam
  L398">.3986150li>150 class="comment"> * dccp_fe tttttttttttttttt*ne43ature to activate, 2"
 2f  L1509" class150line" nam
  L399">.3996150li>150           return 6a f="+code=dccp_feat_curref">feat_num6/curref=ef="+code=	  " classempty_confirmref">feat_num6/empty_confirmclashe to activate, 2"
 2f  L1510" class15"line" nam
  L410">.410615"li>151l          6a href="+++++++++continue"net/dccp/feat.c#L412" id  L1511" class15"line" nam
  L411">.411615"li>151     net/dccp/feat.c#L412" id  L1512" class15"line" nam
  L412">.412615"li>151           }edccp_feat_idxef="hefcode=new" classentry6/a> indexref">dccp_feat_entry6/a> index="lincode=node" clascurref">feat_num6/curref=ef="+code=	  " class6/a> numref">feat_num6/6/a> numref=)"net/dccp/feat.c#L412" id  L1513" class15"line" nam
  L413">.413615"li>151                   6sf="+code=dccp_feat_idxref">dccp_feat_idxef="h< 0) "net/dccp/feat.c#L417" id  L1514" class15"line" nam
  L414">.414615"li>151           6a href="+dccp_feat_ENCE_BUG="linc="comment"> strer ">"Unknown _sp_or.h%u"e43atura+code=new" classcurref">feat_num6/curref=ef="+code=	  " class6/a> numref">feat_num6/6/a> numref=)"net/dccp/feat.c#L412" id  L1515" class15"line" nam
  L415">.415615"li>151           if (6a hreeeeeeeeelisoacode=u8" class=ac rvation_failedref">dccp_feat_ac rvation_failedef=""net/dccp/feat.c#L412" id  L1516" class15"line" nam
  L416">.416615"li>151   6a href="+aaaaaaaa}net/dccp/feat.c#L412" id  L1517" class15"line" nam
  L417">.417615"li>151           6a href="+f="+code=dccp_feat_curref">feat_num6/curref=ef="+code=	  " classstat(href="net/dccp/stat(="lih!"+code=FEAT_SP" class=STABLEref">feat_num6/lass=STABLEref=) "net/dccp/feat.c#L417" id  L1518" class15"line" nam
  L418">.418615"li>151           6a href="+dccp_feat_ENCE_CRIT="linc="comment"> strer ">"N lists rel of,%s,%s,failedhil stat(,%s"e43aturanet/dccp/feat.c#L417" id  L1519" class15"line" nam
  L419">.419615"li>151           return 6a       6a++feat_num6/curref=ef="+code=	  " classis_ 6a href">u86/a> 6a is_ 6a h     ? c="comment"> strer ">" 6a h"e43atur+:fc="comment"> strer ">"remote"e43aturanet/dccp/feat.c#L417" id  L1520" class15"line" nam
  L420">.420615"li>152l          6a href="+++++++++++.4ref">dccp_feat_entry6/a> f">.4="lincode=node" clascurref">feat_num6/curref=ef="+code=	  " class6/a> numref">feat_num6/6/a> numref=)anet/dccp/feat.c#L417" id  L1521" class15"line" nam
  L421">.421615"li>152                   6a    6a h++.4ref">dccp_feat_entry6/a> s">.4="li[code=u8" class=curref">feat_num6/curref=ef="+code=	  " classstat(href="net/dccp/stat(="li])"net/dccp/feat.c#L412" id  L1522" class15"line" nam
  L422">.422615"li>152           }edccp_feat_ac rvation_failedef=""net/dccp/feat.c#L412" id  L1523" class15"line" nam
  L423">.423615"li>152                   6s}net/dccp/feat.c#L412" id  L1524" class15"line" nam
  L424">.424615"li>152           6a href="+a href="net/dccp hrsref">feat_num6/f hrsef="[code=u8" class=idxref">dccp_feat_idxef="][code=u8" class=curref">feat_num6/curref=ef="+code=	  " classis_ 6a href">u86/a> 6a is_ 6a h    ] =+ef="+code=entry" clacurref">feat_num6/curref=ef="+code=	  " class="sref">	  6/a>.6a href=""net/dccp/feat.c#L412" id  L15"5" class15"line" nam
  L425">.425615"li>152           if}net/dccp/feat.c#L412" id  L1526" class15"line" nam
  L426">.426615"li>152ref="net/dccp/feat.c#L347" id  L15"7" class15"line" nam
  L427">.427615"li>152           6ac="comment"> * F2r gen/*e43ature to activate, 2"
 2f  L15"8" class15.c#L317" id  L428">.426/15.c#>152 class="comment"> * dccp_fe tttttttt* Ac rvate il decreaser herdercof,index, so s at s e CCIDs arepalwayse43ature to activate, 2"
 2f  L15"9" class15.c#L317" id  L428">.426/15.c#>152 class="comment"> * @sk: fulttttttttwhac rvated as s e lntt _sp_or.. This;avoids s e cass;w erepa CCIDhr3ature to activate, 2"
 2f  L1530" class15.c#L317" id  L428">.426615.c#>153lclass="comment"> * @sk: fulttttttttwhreliesnel theminitiaeiss rel of,one;or mor(6_sp_or.s s at it dependse43ature to activate, 2"
 2f  L15.1" class15"line" nam
  L370">.374615"li>153 class="comment"> * @loca : ttttttttwhel (e.g. Send NDP Count, Send Ack Vector, andpAck Rs re6_sp_or.s)a href="net/dccp/feat.c#L355" id  L15.2" class15"line" nam
  L332">.332615"li>153 class="comment"> * @fva : tttttttttwne43ature to activate, 2"
 2f  L15.3" class15"line" nam
  L333">.333615"li>153             for +code=dccp_feat_idxref">dccp_feat_idxef="h"+code=FEAT_SP" cENCE_lass=SUPPORTED_MAXref">feat_num6/ENCE_lass=SUPPORTED_MAXef="; --code=sp" class=idxref">dccp_feat_idxef="h&="+=+0"he to activate, 2"
 2f  L15.4" class15"line" nam
  L334">.334615"li>153           6a href="+f="+code=dccp_feat___	ntry6/a> ac rvatehref="net/dccp/_
	ntry6/a> ac rvate="lincode=node" classkhref="net/dccp/skref=a+code=new" classidxref">dccp_feat_idxef=""+0a+a href="net/dccp hrsref">feat_num6/f hrsef="[code=u8" class=idxref">dccp_feat_idxef="][0]) ||net/dccp/feat.c#L412" id  L15.5" class15"line" nam
  L335">.335615"li>153           if (6a hreeeeecode=dccp_feat___	ntry6/a> ac rvatehref="net/dccp/_
	ntry6/a> ac rvate="lincode=node" classkhref="net/dccp/skref=a+code=new" classidxref">dccp_feat_idxef=""+1"+code=u8" class=p hrsref">feat_num6/f hrsef="[code=u8" class=idxref">dccp_feat_idxef="][1])) "net/dccp/feat.c#L417" id  L15.6" class15"line" nam
  L336">.336615"li>153   6a href="+aaaaaaaa (6a hrecode=dccp_feat_ENCE_CRITref">dccp_feat_ENCE_CRIT="linc="comment"> strer ">"Could not ac rvate %d"e43atura+code=new" classidxref">dccp_feat_idxef=")"net/dccp/feat.c#L412" id  L15.7" class15"line" nam
  L337">.337615"li>153           6a href="+++++++++lisoacode=u8" class=ac rvation_failedref">dccp_feat_ac rvation_failedef=""net/dccp/feat.c#L412" id  L15.8" class15"line" nam
  L338">.338615"li>153           6a href="+}net/dccp/feat.c#L412" id  L15.9" class15"line" nam
  L339">.339615"li>153 clasnet/dccp/feat.c#L412" id  L1540" class15"line" nam
  L340">.340615"li>154l          6ac="comment"> * F2r gen/* Clecom"p Changv opiq>
shwhich have beelhmonfirmed alreadh *ne43ature to activate, 2"
 2f  L15"1" class15"line" nam
  L341">.341615"li>154             code=u8" class=ef">nfor_each ss="s_safehref="net/dccp/ef">nfor_each ss="s_safe="lincode=node" clascurref">feat_num6/curref=a+a href="net/dccnex1ref">feat_num6/nex1ef="a+a href="net/dccp/ry"21ref">feat_num6/asry"21ef="a+a href="net/dccn/dcref">feat_num6/n/dcref=)e to activate, 2"
 2f  L15"2" class15"line" nam
  L342">.342615"li>154           }efeat_num6/curref=ef="+code=	  " classneeds_confirmref">feat_num6/needs_confirmref=)e to activate, 2"
 2f  L15"3" class15"line" nam
  L343">.343615"li>154                   6s        code=u8" class=	ntry6/a> ef">npo href="net/dccp/fntry6/a> ef">npo ="lincode=node" clascurref">feat_num6/curref=)"net/dccp/feat.c#L412" id  L1544" class15"line" nam
  L344">.344615"li>15"     net/dccp/feat.c#L412" id  L1545" class15"line" nam
  L345">.345615"li>1545          }ecode=u8" class=	ntrypr_debughref="net/dccp/cl2"ypr_debug="linc="comment"> strer ">"Ac rvation OK\n"e43atur)"net/dccp/feat.c#L412" id  L1546" class15"line" nam
  L346">.346615"li>154   6a href="+.347615"li>154 clase to activate, 2"
 2f  L1548" class15"line" nam
  L348">.348615"li>154 classode=u8" class=ac rvation_failedref">dccp_feat_ac rvation_failedef=":net/dccp/feat.c#L412" id  L1549" class15"line" nam
  L349">.349615"li>154           rec="comment"> * F2r gen/*e43ature to activate, 2"
 2f  L1550" class15"line" nam
  L350">.350615"li>155lclass="comment"> * @sk: fulttttttttwhWknmeecom"p everyther hs at may have beelhal 6a ted, sinc( href="net/dccp/feat.c#L355" id  L1551" class15"line" nam
  L351">.351615"li>155 class="comment"> * @loca : ttttttttwhit is;difficultmsoatrack at which stag.h# lists rel faileda href="net/dccp/feat.c#L355" id  L1552" class15"line" nam
  L352">.352615"li>155 class="comment"> * @fva : tttttttttw This;isnek, sinc( allhal 6a trel funciq>
shbelowmareprobusireref="net/dccp/feat.c#L348" id  L1553" class15"line" nam
  L353">.353615"li>155 class="comment"> * List mannnnnnnnn*nagainst .354615"li>155 class="comment"> * F2r genennnnnnnn*ne43ature to activate, 2"
 2f  L15"5" class15"line" nam
  L355">.355615"li>1555          }ecode=u8" class=ccidrhc
rx_deletehref="net/dccp/ccidrhc
rx_delete="lincode=node" clasc href="net/dccp/fp="lief="+code=	  " classcl2"s
hc
rx_ccidhref="net/dccp/cl2"s
hc
rx_ccidef="a+a href="net/dccskhref="net/dccp/skref=)"net/dccp/feat.c#L412" id  L15"6" class15"line" nam
  L356">.356615"li>1556          }ecode=dccp_feat_ccidrhc
tx_deletehref="net/dccp/ccidrhc
tx_delete="lincode=node" clasc href="net/dccp/fp="lief="+code=	  " classcl2"s
hc
tx_ccidhref="net/dccp/cl2"s
hc
tx_ccidef="a+a href="net/dccskhref="net/dccp/skref=)"net/dccp/feat.c#L412" id  L15"7" class15"line" nam
  L357">.357615"li>1557          }ecode=u8" class=	 href="net/dccp/fp="lief="+code=	  " classcl2"s
hc
rx_ccidhref="net/dccp/cl2"s
hc
rx_ccidef="hefcode=new" classe href="net/dccp/fp="lief="+code=	  " classcl2"s
hc
tx_ccidhref="net/dccp/cl2"s
hc
tx_ccidef="hefcode=new" classs="sref">NULL6/a>)e.358615"li>155           6acode=u8" class=	ntryackvec_freeref">feat_num6/	ntryackvec_free="lincode=node" clasc href="net/dccp/fp="lief="+code=	  " classcl2"s
hc
rx_ackvechref="net/dccp/cl2"s
hc
rx_ackvecref=)"net/dccp/feat.c#L412" id  L15"9" class15"line" nam
  L359">.359615"li>155           recode=	  " classc href="net/dccp/fp="lief="+code=	  " classcl2"s
hc
rx_ackvechref="net/dccp/cl2"s
hc
rx_ackvecref=hefcode=new" classs="sref">NULL6/a>)e.360615"li>1560            .361615"li>156     }net/dccp/feat.c#L412" id  L1562" class15"line" nam
  L362">.362615"li>156 clas


Themoriginae LXR softwarepby themet/dccp/fhttp://sourceforge.eat.projects/lxr">LXR * F2unithref="+this;experi2r gae versrel by et/dccp/fmailto:lxr@ Lux.nop/exr@ Lux.noref=.
exr. Lux.no kindly hosted by et/dccp/fhttp://www.redpill- Lpro.nop/Redpill L Lpro AShref"+providercof,L Luxhmonsulter andpoperaiq> shservices sinc( 1995.