aboutsummaryrefslogtreecommitdiffstats
path: root/net/dccp/feat.h
diff options
context:
space:
mode:
authorGerrit Renker <gerrit@erg.abdn.ac.uk>2008-11-17 01:51:23 -0500
committerDavid S. Miller <davem@davemloft.net>2008-11-17 01:51:23 -0500
commit49aebc66d6b896f9c7c5739d85c4548c00015aa7 (patch)
tree0b12afdd2e742c3eb481aef8d2adcb7b1aeca9f1 /net/dccp/feat.h
parent0c1168398ecbfacbb27203b281bde20ec9f78017 (diff)
dccp: Deprecate old setsockopt framework
The previous setsockopt interface, which passed socket options via struct dccp_so_feat, is complicated/difficult to use. Continuing to support it leads to ugly code since the old approach did not distinguish between NN and SP values. This patch removes the old setsockopt interface and replaces it with two new functions to register NN/SP values for feature negotiation. These are essentially wrappers around the internal __feat_register functions, with checking added to avoid * wrong usage (type); * changing values while the connection is in progress. Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/dccp/feat.h')
-rw-r--r--net/dccp/feat.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/net/dccp/feat.h b/net/dccp/feat.h
index 232c653e69c5..4d172822df17 100644
--- a/net/dccp/feat.h
+++ b/net/dccp/feat.h
@@ -111,8 +111,9 @@ static inline void dccp_feat_debug(const u8 type, const u8 feat, const u8 val)
111#define dccp_feat_debug(type, feat, val) 111#define dccp_feat_debug(type, feat, val)
112#endif /* CONFIG_IP_DCCP_DEBUG */ 112#endif /* CONFIG_IP_DCCP_DEBUG */
113 113
114extern int dccp_feat_change(struct dccp_minisock *dmsk, u8 type, u8 feature, 114extern int dccp_feat_register_sp(struct sock *sk, u8 feat, u8 is_local,
115 u8 *val, u8 len, gfp_t gfp); 115 u8 const *list, u8 len);
116extern int dccp_feat_register_nn(struct sock *sk, u8 feat, u64 val);
116extern int dccp_feat_change_recv(struct sock *sk, u8 type, u8 feature, 117extern int dccp_feat_change_recv(struct sock *sk, u8 type, u8 feature,
117 u8 *val, u8 len); 118 u8 *val, u8 len);
118extern int dccp_feat_confirm_recv(struct sock *sk, u8 type, u8 feature, 119extern int dccp_feat_confirm_recv(struct sock *sk, u8 type, u8 feature,