From: Patrick McHardy Date: Thu, 24 Jan 2008 12:28:08 +0000 (+0100) Subject: Fix nfnl_queue_msg_get_packetid() return type X-Git-Tag: libnl2_0~139 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=ca0988a2a793bf06381ef1237178df6115b34c80;p=thirdparty%2Flibnl.git Fix nfnl_queue_msg_get_packetid() return type [LIBNL]: Fix nfnl_queue_msg_get_packetid() return type The packet-ID is a 32 bit value, but nfnl_queue_msg_get_packetid() returns an uint16_t. Makes queueing fail after 2^16 packets. Signed-off-by: Patrick McHardy --- diff --git a/include/netlink/netfilter/queue_msg.h b/include/netlink/netfilter/queue_msg.h index daf7b3c..bb63236 100644 --- a/include/netlink/netfilter/queue_msg.h +++ b/include/netlink/netfilter/queue_msg.h @@ -41,7 +41,7 @@ extern uint8_t nfnl_queue_msg_get_family(const struct nfnl_queue_msg *); extern void nfnl_queue_msg_set_packetid(struct nfnl_queue_msg *, uint32_t); extern int nfnl_queue_msg_test_packetid(const struct nfnl_queue_msg *); -extern uint16_t nfnl_queue_msg_get_packetid(const struct nfnl_queue_msg *); +extern uint32_t nfnl_queue_msg_get_packetid(const struct nfnl_queue_msg *); extern void nfnl_queue_msg_set_hwproto(struct nfnl_queue_msg *, uint16_t); extern int nfnl_queue_msg_test_hwproto(const struct nfnl_queue_msg *); diff --git a/lib/netfilter/queue_msg_obj.c b/lib/netfilter/queue_msg_obj.c index f86d6f6..476d920 100644 --- a/lib/netfilter/queue_msg_obj.c +++ b/lib/netfilter/queue_msg_obj.c @@ -227,7 +227,7 @@ int nfnl_queue_msg_test_packetid(const struct nfnl_queue_msg *msg) return !!(msg->ce_mask & QUEUE_MSG_ATTR_PACKETID); } -uint16_t nfnl_queue_msg_get_packetid(const struct nfnl_queue_msg *msg) +uint32_t nfnl_queue_msg_get_packetid(const struct nfnl_queue_msg *msg) { return msg->queue_msg_packetid; }