[DCCP]: Add test function for data packets
This adds a function which returns `true' when an skb
contains one of the packet
types specified in [RFC 4340, 7.7] as `data packet'.
NB - Resisted the temptation to define
int dccp_non_data_packet(skb) { return
!dccp_data_packet(skb); },
since maybe someone will define new packet types.
Signed-off-by: Gerrit Renker <gerrit erg.abdn.ac.uk>
---
net/dccp/dccp.h | 12 ++++++++++++
1 file changed, 12 insertions(+)
--- a/net/dccp/dccp.h
+++ b/net/dccp/dccp.h
 -321,6
+321,7  struct dccp_skb_cb {
#define DCCP_SKB_CB(__skb) ((struct dccp_skb_cb
*)&((__skb)->cb[0]))
+/* RFC 4340, sec. 7.7 */
static inline int dccp_non_data_packet(const struct sk_buff
*skb)
{
const __u8 type = DCCP_SKB_CB(skb)->dccpd_type;
 -333,6
+334,17  static inline int dccp_non_data_packet(c
type == DCCP_PKT_SYNCACK;
}
+/* RFC 4340, sec. 7.7 */
+static inline int dccp_data_packet(const struct sk_buff
*skb)
+{
+ const __u8 type = DCCP_SKB_CB(skb)->dccpd_type;
+
+ return type == DCCP_PKT_DATA ||
+ type == DCCP_PKT_DATAACK ||
+ type == DCCP_PKT_REQUEST ||
+ type == DCCP_PKT_RESPONSE;
+}
+
static inline int dccp_packet_without_ack(const struct
sk_buff *skb)
{
const __u8 type = DCCP_SKB_CB(skb)->dccpd_type;
-
To unsubscribe from this list: send the line
"unsubscribe dccp" in
the body of a message to majordomo vger.kernel.org
More majordomo info at http://vge
r.kernel.org/majordomo-info.html
|