diff options
author | Gerrit Renker <gerrit@erg.abdn.ac.uk> | 2008-11-23 16:10:23 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-11-23 16:10:23 -0800 |
commit | 8c862c23e2563e6aedfc6c4aa6827cadb83f2414 (patch) | |
tree | 55550ae7c2b62e5b93a09487278db91c334d615a /net/dccp/feat.h | |
parent | d371056695ef993d36c57b73d654e66080377a9c (diff) | |
download | linux-exynos-8c862c23e2563e6aedfc6c4aa6827cadb83f2414.tar.gz linux-exynos-8c862c23e2563e6aedfc6c4aa6827cadb83f2414.tar.bz2 linux-exynos-8c862c23e2563e6aedfc6c4aa6827cadb83f2414.zip |
dccp: Header option insertion routine for feature-negotiation
The patch extends existing code:
* Confirm options divide into the confirmed value plus an optional preference
list for SP values. Previously only the preference list was echoed for SP
values, now the confirmed value is added as per RFC 4340, 6.1;
* length and sanity checks are added to avoid illegal memory (or NULL) access.
Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk>
Acked-by: Ian McDonald <ian.mcdonald@jandi.co.nz>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/dccp/feat.h')
-rw-r--r-- | net/dccp/feat.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/net/dccp/feat.h b/net/dccp/feat.h index f8e4878dfc28..7efb2025f6bf 100644 --- a/net/dccp/feat.h +++ b/net/dccp/feat.h @@ -141,4 +141,6 @@ extern void dccp_encode_value_var(const u64 value, u8 *to, const u8 len); extern u64 dccp_decode_value_var(const u8 *bf, const u8 len); extern int dccp_insert_option_mandatory(struct sk_buff *skb); +extern int dccp_insert_fn_opt(struct sk_buff *skb, u8 type, u8 feat, + u8 *val, u8 len, bool repeat_first); #endif /* _DCCP_FEAT_H */ |