List Info

Thread: libnetfilter_conntrack: Fix getters for big-endian




libnetfilter_conntrack: Fix getters for big-endian
country flaguser name
United States
2007-08-14 02:18:20
The getters have to point to the right sized types, otherwise they don't work on big-endian. Signed-off-by: Philip Craig snapgear.com> Index: libnetfilter_conntrack/src/conntrack/api.c =================================================================== --- libnetfilter_conntrack.orig/src/conntrack/api.c 2007-08-14 15:48:07.000000000 +1000 +++ libnetfilter_conntrack/src/conntrack/api.c 2007-08-14 16:00:02.000000000 +1000 -304,7 +304,7 u_int8_t nfct_get_attr_u8(const struct nf_conntrack *ct, const enum nf_conntrack_attr type) { - const int *ret = nfct_get_attr(ct, type); + const u_int8_t *ret = nfct_get_attr(ct, type); return ret == NULL ? 0 : *ret; } -320,7 +320,7 u_int16_t nfct_get_attr_u16(const struct nf_conntrack *ct, const enum nf_conntrack_attr type) { - const int *ret = nfct_get_attr(ct, type); + const u_int16_t *ret = nfct_get_attr(ct, type); return ret == NULL ? 0 : *ret; } -336,7 +336,7 u_int32_t nfct_get_attr_u32(const struct nf_conntrack *ct, const enum nf_conntrack_attr type) { - const int *ret = nfct_get_attr(ct, type); + const u_int32_t *ret = nfct_get_attr(ct, type); return ret == NULL ? 0 : *ret; } Index: libnetfilter_conntrack/src/expect/api.c =================================================================== --- libnetfilter_conntrack.orig/src/expect/api.c 2007-08-14 15:48:07.000000000 +1000 +++ libnetfilter_conntrack/src/expect/api.c 2007-08-14 16:00:02.000000000 +1000 -264,7 +264,7 u_int8_t nfexp_get_attr_u8(const struct nf_expect *exp, const enum nf_expect_attr type) { - const int *ret = nfexp_get_attr(exp, type); + const u_int8_t *ret = nfexp_get_attr(exp, type); return ret == NULL ? 0 : *ret; } -280,7 +280,7 u_int16_t nfexp_get_attr_u16(const struct nf_expect *exp, const enum nf_expect_attr type) { - const int *ret = nfexp_get_attr(exp, type); + const u_int16_t *ret = nfexp_get_attr(exp, type); return ret == NULL ? 0 : *ret; } -296,7 +296,7 u_int32_t nfexp_get_attr_u32(const struct nf_expect *exp, const enum nf_expect_attr type) { - const int *ret = nfexp_get_attr(exp, type); + const u_int32_t *ret = nfexp_get_attr(exp, type); return ret == NULL ? 0 : *ret; }
  Approximate file size 2324 bytes
Re: libnetfilter_conntrack: Fix getters for big-endian
country flaguser name
Spain
2007-09-02 03:50:26
Philip Craig wrote:
> The getters have to point to the right sized types,
otherwise
> they don't work on big-endian.

Applied, thanks Philip. Sorry for the delay, I just arrived
from Argentina.

-- 
"Será preciso viajar por los ojos de los idiotas"
-- Poeta en Nueva York
-- Federico García Lorca.


[1-2]

about | contact  Other archives ( Real Estate discussion Medical topics )