Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 179425 - net-firewall/ipp2p-0.8.2-r2 doesn't work with kernel 2.6.21
Summary: net-firewall/ipp2p-0.8.2-r2 doesn't work with kernel 2.6.21
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Alin Năstac (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: kernel-2.6.21
  Show dependency tree
 
Reported: 2007-05-22 13:29 UTC by Federico Cuello
Modified: 2007-05-22 20:20 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Changes ipt_*_match to xt_*_match (ipp2p.ipt-xt.patch,1.25 KB, patch)
2007-05-22 13:32 UTC, Federico Cuello
Details | Diff
Pragmatic fix (ipp2p-0.8.2-kernel-2.6.21.patch,2.02 KB, patch)
2007-05-22 19:10 UTC, Federico Cuello
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Federico Cuello 2007-05-22 13:29:34 UTC
Compilation of module fails with unresolved symbols.


Reproducible: Always

Steps to Reproduce:
1. emerge ipp2p
2. modprobe ipt_ipp2p

Actual Results:  
FATAL: Error inserting ipt_ipp2p (/lib/modules/2.6.21-gentoo-r1/ipp2p/ipt_ipp2p.ko): Unknown symbol in module, or unknown parameter (see dmesg)


Expected Results:  
Module loaded

dmesg shows:

ipt_ipp2p: Unknown symbol ipt_register_match
ipt_ipp2p: Unknown symbol ipt_unregister_match
Comment 1 Federico Cuello 2007-05-22 13:32:39 UTC
Created attachment 120001 [details, diff]
Changes ipt_*_match to xt_*_match

This patch fixes the unresolved symbols
Comment 2 Alin Năstac (RETIRED) gentoo-dev 2007-05-22 17:43:45 UTC
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!
Comment 3 Federico Cuello 2007-05-22 19:10:14 UTC
Created attachment 120021 [details, diff]
Pragmatic fix

You forgot to #define ipt_match xt_match.

;)
Comment 4 Alin Năstac (RETIRED) gentoo-dev 2007-05-22 19:37:44 UTC
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?
Comment 5 Federico Cuello 2007-05-22 19:46:06 UTC
(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
Comment 6 Alin Năstac (RETIRED) gentoo-dev 2007-05-22 20:20:17 UTC
Sorry about that.
The patch has been updated in cvs. Thanks again!