Summary: | net-firewall/ipp2p-0.8.2-r2 doesn't work with kernel 2.6.21 | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Federico Cuello <fedux> |
Component: | Current packages | Assignee: | Alin Năstac (RETIRED) <mrness> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | eradicator |
Priority: | High | ||
Version: | 2006.1 | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 176188 | ||
Attachments: |
Changes ipt_*_match to xt_*_match
Pragmatic fix |
Description
Federico Cuello
2007-05-22 13:29:34 UTC
Created attachment 120001 [details, diff]
Changes ipt_*_match to xt_*_match
This patch fixes the unresolved symbols
Fixed in -r3, but not exactly as you proposed. I'm sure other ipt_* defines will be removed soon, therefore I preferred a more pragmatic approach. Although this is a violation of our policies, the package has been revbumped with the same stable keywords. The old revision had another minor issue on kernels >= 2.6.18, so I decided to preserve keyword status. Thanks! Created attachment 120021 [details, diff]
Pragmatic fix
You forgot to #define ipt_match xt_match.
;)
but you fix didn't had it and looks like 2.6.21 still defines ipt_match! are you sure my fix doesn't work for you? (In reply to comment #4) > but you fix didn't had it and looks like 2.6.21 still defines ipt_match! > are you sure my fix doesn't work for you? > Yes, I'm sure. My first patch had it here: @@ -843,7 +843,7 @@ } -static struct ipt_match ipp2p_match = { +static struct xt_match ipp2p_match = { #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0) { NULL, NULL }, "ipp2p", , and the new patch works ok. These is the result of the -r3 patch: make[1]: Entering directory `/usr/src/linux-2.6.21-gentoo-r1' CC [M] /var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.o /var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.c:856: error: variable 'ipp2p_match' has initializer but incomplete type /var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.c:870: error: unknown field 'name' specified in initializer /var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.c:870: warning: excess elements in struct initializer /var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.c:870: warning: (near initialization for 'ipp2p_match') /var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.c:871: error: unknown field 'match' specified in initializer /var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.c:871: warning: excess elements in struct initializer /var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.c:871: warning: (near initialization for 'ipp2p_match') /var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.c:872: error: unknown field 'family' specified in initializer /var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.c:872: warning: excess elements in struct initializer /var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.c:872: warning: (near initialization for 'ipp2p_match') /var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.c:873: error: unknown field 'matchsize' specified in initializer /var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.c:873: warning: excess elements in struct initializer /var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.c:873: warning: (near initialization for 'ipp2p_match') /var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.c:874: error: unknown field 'checkentry' specified in initializer /var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.c:874: warning: excess elements in struct initializer /var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.c:874: warning: (near initialization for 'ipp2p_match') /var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.c:875: error: unknown field 'me' specified in initializer /var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.c:875: warning: excess elements in struct initializer /var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.c:875: warning: (near initialization for 'ipp2p_match') /var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.c: In function 'init': /var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.c:883: warning: passing argument 1 of 'xt_register_match' from incompatible pointer type /var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.c: In function 'fini': /var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.c:888: warning: passing argument 1 of 'xt_unregister_match' from incompatible pointer type make[2]: *** [/var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2/ipt_ipp2p.o] Error 1 make[1]: *** [_module_/var/tmp/portage/net-firewall/ipp2p-0.8.2-r3/work/ipp2p-0.8.2] Error 2 make[1]: Leaving directory `/usr/src/linux-2.6.21-gentoo-r1' make: *** [ipt_ipp2p.ko] Error 2 Sorry about that. The patch has been updated in cvs. Thanks again! |