From: laforge Date: Sat, 5 Nov 2005 15:29:47 +0000 (+0000) Subject: - fix endianness of ip address / port numbers X-Git-Tag: ulogd-2.0.0beta2~267 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e183f8f67990c8083ba8593c8a0c620ad8ecf65b;p=thirdparty%2Fulogd2.git - fix endianness of ip address / port numbers - fix segfault due to missing priv_size --- diff --git a/input/flow/ulogd_inpflow_NFCT.c b/input/flow/ulogd_inpflow_NFCT.c index c6f639f..9ce4218 100644 --- a/input/flow/ulogd_inpflow_NFCT.c +++ b/input/flow/ulogd_inpflow_NFCT.c @@ -118,10 +118,10 @@ static int propagate_ct_flow(struct ulogd_pluginstance *upi, { struct ulogd_key *ret = upi->output; - ret[0].u.value.ui32 = ct->tuple[dir].src.v4; + ret[0].u.value.ui32 = htonl(ct->tuple[dir].src.v4); ret[0].flags |= ULOGD_RETF_VALID; - ret[1].u.value.ui32 = ct->tuple[dir].dst.v4; + ret[1].u.value.ui32 = htonl(ct->tuple[dir].dst.v4); ret[1].flags |= ULOGD_RETF_VALID; ret[2].u.value.ui8 = ct->tuple[dir].protonum; @@ -132,9 +132,9 @@ static int propagate_ct_flow(struct ulogd_pluginstance *upi, case IPPROTO_UDP: case IPPROTO_SCTP: /* FIXME: DCCP */ - ret[3].u.value.ui16 = ct->tuple[dir].l4src.tcp.port; + ret[3].u.value.ui16 = htons(ct->tuple[dir].l4src.tcp.port); ret[3].flags |= ULOGD_RETF_VALID; - ret[4].u.value.ui16 = ct->tuple[dir].l4dst.tcp.port; + ret[4].u.value.ui16 = htons(ct->tuple[dir].l4dst.tcp.port); ret[4].flags |= ULOGD_RETF_VALID; break; case IPPROTO_ICMP: @@ -242,7 +242,7 @@ static int destructor_nfct(struct ulogd_pluginstance *pi) } static struct ulogd_plugin nfct_plugin = { - .name = "CTNL", + .name = "NFCT", .input = { .type = ULOGD_DTYPE_SOURCE, }, @@ -256,6 +256,7 @@ static struct ulogd_plugin nfct_plugin = { .configure = NULL, .start = &constructor_nfct, .stop = &destructor_nfct, + .priv_size = sizeof(struct nfct_pluginstance), }; void __attribute__ ((constructor)) init(void);