From e0fb5af798a1b7723e228ffc7c67e38babc883c6 Mon Sep 17 00:00:00 2001 From: "/C=DE/ST=Berlin/L=Berlin/O=Netfilter Project/OU=Development/CN=pablo/emailAddress=pablo@netfilter.org" Date: Fri, 28 Oct 2005 19:25:03 +0000 Subject: Fix alignment issues --- src/libnetfilter_conntrack.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/libnetfilter_conntrack.c b/src/libnetfilter_conntrack.c index cbef0db..32a3827 100644 --- a/src/libnetfilter_conntrack.c +++ b/src/libnetfilter_conntrack.c @@ -424,9 +424,8 @@ static int nfct_conntrack_netlink_handler(struct nfct_handle *cth, struct nlmsghdr *nlh, void *arg) { struct nfgenmsg *nfmsg; - int min_len = sizeof(struct nfgenmsg) + sizeof(struct nlmsghdr); struct nfattr *attr = NFM_NFA(NLMSG_DATA(nlh)); - int attrlen = nlh->nlmsg_len - NLMSG_ALIGN(min_len); + int attrlen = NLMSG_LENGTH(nlh->nlmsg_len) - NFNL_HEADER_LEN; struct nfct_conntrack ct; unsigned int flags = 0; int type = NFNL_MSG_TYPE(nlh->nlmsg_type), ret = 0; @@ -435,7 +434,7 @@ static int nfct_conntrack_netlink_handler(struct nfct_handle *cth, nfmsg = NLMSG_DATA(nlh); - if (nlh->nlmsg_len < min_len) + if (NLMSG_LENGTH(nlh->nlmsg_len) < NFNL_HEADER_LEN) return -EINVAL; while (NFA_OK(attr, attrlen)) { @@ -666,9 +665,8 @@ static int nfct_expect_netlink_handler(struct nfct_handle *cth, struct nlmsghdr *nlh, void *arg) { struct nfgenmsg *nfmsg; - int min_len = sizeof(struct nfgenmsg) + sizeof(struct nlmsghdr); struct nfattr *attr = NFM_NFA(NLMSG_DATA(nlh)); - int attrlen = nlh->nlmsg_len - NLMSG_ALIGN(min_len); + int attrlen = NLMSG_LENGTH(nlh->nlmsg_len) - NFNL_HEADER_LEN; struct nfct_expect exp; int type = NFNL_MSG_TYPE(nlh->nlmsg_type), ret = 0; @@ -676,7 +674,7 @@ static int nfct_expect_netlink_handler(struct nfct_handle *cth, nfmsg = NLMSG_DATA(nlh); - if (nlh->nlmsg_len < min_len) + if (NLMSG_LENGTH(nlh->nlmsg_len) < NFNL_HEADER_LEN) return -EINVAL; while (NFA_OK(attr, attrlen)) { -- cgit v1.2.3