Whether or not to send Ack Vector options (sec. 11.5).
 
 tx_ccid = 2
-       Default CCID for the sender-receiver half-connection.
+       Default CCID for the sender-receiver half-connection. Depending on the
+       choice of CCID, the Send Ack Vector feature is enabled automatically.
 
 rx_ccid = 2
-       Default CCID for the receiver-sender half-connection.
+       Default CCID for the receiver-sender half-connection; see tx_ccid.
 
 seq_window = 100
        The initial sequence window (sec. 7.5.2).
 
   * Will be used to pass the state from dccp_request_sock to dccp_sock.
   *
   * @dccpms_sequence_window - Sequence Window Feature (section 7.5.2)
-  * @dccpms_ccid - Congestion Control Id (CCID) (section 10)
   * @dccpms_send_ack_vector - Send Ack Vector Feature (section 11.5)
   * @dccpms_send_ndp_count - Send NDP Count Feature (7.7.2)
   * @dccpms_pending - List of features being negotiated
   */
 struct dccp_minisock {
        __u64                   dccpms_sequence_window;
-       __u8                    dccpms_rx_ccid;
-       __u8                    dccpms_tx_ccid;
        __u8                    dccpms_send_ack_vector;
        __u8                    dccpms_send_ndp_count;
        struct list_head        dccpms_pending;
 
 
 EXPORT_SYMBOL_GPL(ccid_new);
 
-struct ccid *ccid_hc_rx_new(unsigned char id, struct sock *sk, gfp_t gfp)
-{
-       return ccid_new(id, sk, 1, gfp);
-}
-
-EXPORT_SYMBOL_GPL(ccid_hc_rx_new);
-
-struct ccid *ccid_hc_tx_new(unsigned char id,struct sock *sk,  gfp_t gfp)
-{
-       return ccid_new(id, sk, 0, gfp);
-}
-
-EXPORT_SYMBOL_GPL(ccid_hc_tx_new);
-
 static void ccid_delete(struct ccid *ccid, struct sock *sk, int rx)
 {
        struct ccid_operations *ccid_ops;
 
 extern struct ccid *ccid_new(unsigned char id, struct sock *sk, int rx,
                             gfp_t gfp);
 
-extern struct ccid *ccid_hc_rx_new(unsigned char id, struct sock *sk,
-                                  gfp_t gfp);
-extern struct ccid *ccid_hc_tx_new(unsigned char id, struct sock *sk,
-                                  gfp_t gfp);
-
 static inline int ccid_get_current_rx_ccid(struct dccp_sock *dp)
 {
        struct ccid *ccid = dp->dccps_hc_rx_ccid;
 
        INIT_LIST_HEAD(&dmsk->dccpms_pending);  /* XXX no longer used */
        INIT_LIST_HEAD(&dmsk->dccpms_conf);     /* XXX no longer used */
 
-       /* CCID L */
-       rc = __feat_register_sp(&dp->dccps_featneg, DCCPF_CCID, 1, 0,
-                               &dmsk->dccpms_tx_ccid, 1);
-       if (rc)
-               goto out;
-
-       /* CCID R */
-       rc = __feat_register_sp(&dp->dccps_featneg, DCCPF_CCID, 0, 0,
-                               &dmsk->dccpms_rx_ccid, 1);
-       if (rc)
-               goto out;
-
        /* Ack ratio */
        rc = __feat_register_nn(&dp->dccps_featneg, DCCPF_ACK_RATIO, 0,
                                dp->dccps_l_ack_ratio);
-out:
        return rc;
 }
 
 
 void dccp_minisock_init(struct dccp_minisock *dmsk)
 {
        dmsk->dccpms_sequence_window = sysctl_dccp_feat_sequence_window;
-       dmsk->dccpms_rx_ccid         = sysctl_dccp_feat_rx_ccid;
-       dmsk->dccpms_tx_ccid         = sysctl_dccp_feat_tx_ccid;
        dmsk->dccpms_send_ack_vector = sysctl_dccp_feat_send_ack_vector;
        dmsk->dccpms_send_ndp_count  = sysctl_dccp_feat_send_ndp_count;
 }