diff options
-rw-r--r-- | net/dccp/ipv4.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/net/dccp/ipv4.c b/net/dccp/ipv4.c index f8df565e89c8..2ab6f0e6cd62 100644 --- a/net/dccp/ipv4.c +++ b/net/dccp/ipv4.c | |||
@@ -1041,12 +1041,6 @@ int dccp_v4_init_sock(struct sock *sk) | |||
1041 | dccp_options_init(&dp->dccps_options); | 1041 | dccp_options_init(&dp->dccps_options); |
1042 | do_gettimeofday(&dp->dccps_epoch); | 1042 | do_gettimeofday(&dp->dccps_epoch); |
1043 | 1043 | ||
1044 | if (dp->dccps_options.dccpo_send_ack_vector) { | ||
1045 | dp->dccps_hc_rx_ackvec = dccp_ackvec_alloc(GFP_KERNEL); | ||
1046 | if (dp->dccps_hc_rx_ackvec == NULL) | ||
1047 | return -ENOMEM; | ||
1048 | } | ||
1049 | |||
1050 | /* | 1044 | /* |
1051 | * FIXME: We're hardcoding the CCID, and doing this at this point makes | 1045 | * FIXME: We're hardcoding the CCID, and doing this at this point makes |
1052 | * the listening (master) sock get CCID control blocks, which is not | 1046 | * the listening (master) sock get CCID control blocks, which is not |
@@ -1055,6 +1049,11 @@ int dccp_v4_init_sock(struct sock *sk) | |||
1055 | * setsockopt(CCIDs-I-want/accept). -acme | 1049 | * setsockopt(CCIDs-I-want/accept). -acme |
1056 | */ | 1050 | */ |
1057 | if (likely(!dccp_ctl_socket_init)) { | 1051 | if (likely(!dccp_ctl_socket_init)) { |
1052 | if (dp->dccps_options.dccpo_send_ack_vector) { | ||
1053 | dp->dccps_hc_rx_ackvec = dccp_ackvec_alloc(GFP_KERNEL); | ||
1054 | if (dp->dccps_hc_rx_ackvec == NULL) | ||
1055 | return -ENOMEM; | ||
1056 | } | ||
1058 | dp->dccps_hc_rx_ccid = ccid_init(dp->dccps_options.dccpo_rx_ccid, | 1057 | dp->dccps_hc_rx_ccid = ccid_init(dp->dccps_options.dccpo_rx_ccid, |
1059 | sk); | 1058 | sk); |
1060 | dp->dccps_hc_tx_ccid = ccid_init(dp->dccps_options.dccpo_tx_ccid, | 1059 | dp->dccps_hc_tx_ccid = ccid_init(dp->dccps_options.dccpo_tx_ccid, |