diff options
author | Arnaldo Carvalho de Melo <acme@ghostprotocols.net> | 2005-10-11 00:24:20 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2005-10-11 00:24:20 -0400 |
commit | 777b25a2fea7129222eb11fba55c0a67982383ff (patch) | |
tree | 51e4a429fc09a8401371e47db9845d119408e576 | |
parent | 061cb4a0ec34a6e3069d5a1b3c547e55a71498c5 (diff) |
[CCID]: Check if ccid is NULL in the hc_[tr]x_exit functions
For consistency with ccid_exit and to fix a bug when
IP_DCCP_UNLOAD_HACK is enabled as the control sock is not associated
to any CCID.
Signed-off-by: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | net/dccp/ccid.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/dccp/ccid.h b/net/dccp/ccid.h index 21e55142dcd3..c37eeeaf5c6e 100644 --- a/net/dccp/ccid.h +++ b/net/dccp/ccid.h | |||
@@ -110,14 +110,14 @@ static inline int ccid_hc_tx_init(struct ccid *ccid, struct sock *sk) | |||
110 | 110 | ||
111 | static inline void ccid_hc_rx_exit(struct ccid *ccid, struct sock *sk) | 111 | static inline void ccid_hc_rx_exit(struct ccid *ccid, struct sock *sk) |
112 | { | 112 | { |
113 | if (ccid->ccid_hc_rx_exit != NULL && | 113 | if (ccid != NULL && ccid->ccid_hc_rx_exit != NULL && |
114 | dccp_sk(sk)->dccps_hc_rx_ccid_private != NULL) | 114 | dccp_sk(sk)->dccps_hc_rx_ccid_private != NULL) |
115 | ccid->ccid_hc_rx_exit(sk); | 115 | ccid->ccid_hc_rx_exit(sk); |
116 | } | 116 | } |
117 | 117 | ||
118 | static inline void ccid_hc_tx_exit(struct ccid *ccid, struct sock *sk) | 118 | static inline void ccid_hc_tx_exit(struct ccid *ccid, struct sock *sk) |
119 | { | 119 | { |
120 | if (ccid->ccid_hc_tx_exit != NULL && | 120 | if (ccid != NULL && ccid->ccid_hc_tx_exit != NULL && |
121 | dccp_sk(sk)->dccps_hc_tx_ccid_private != NULL) | 121 | dccp_sk(sk)->dccps_hc_tx_ccid_private != NULL) |
122 | ccid->ccid_hc_tx_exit(sk); | 122 | ccid->ccid_hc_tx_exit(sk); |
123 | } | 123 | } |