Bug 234174 - netfilter modules and proc fs entries renamed
Summary: netfilter modules and proc fs entries renamed
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: kernel
Version: 6
Hardware: x86_64
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Kernel Maintainer List
QA Contact: Brian Brock
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2007-03-27 15:48 UTC by Marco Colombo
Modified: 2007-11-30 22:12 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2007-03-27 16:00:32 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
Modules and proc fs now (10.02 KB, text/plain)
2007-03-27 17:43 UTC, Marco Colombo
no flags Details
Old paths and names (9.89 KB, text/plain)
2007-03-27 17:46 UTC, Marco Colombo
no flags Details

Description Marco Colombo 2007-03-27 15:48:52 UTC
Description of problem:
Netfilter kernel modules have been moved _and_ renamed. Same for proc fs related
entries.

Version-Release number of selected component (if applicable):
kernel-2.6.20-1.2933.fc6

How reproducible:
Always

Steps to Reproduce:
1. find /proc/sys/net | fgrep netfilter
2. modprobe ip_conntrack
  
Actual results:
Many modules now have a different name, proc entries even a different path,
breaking user scripts and maybe even /etc/sysconfig/iptables-config
I should point out that mine (untouched) contains a reference to
ip_conntrack_netbios_ns now named nf_conntrack_netbios_ns.

Expected results:
Modules named and proc entries (it affects sysctl "paths" as well) should not
change.

Additional info:
This is nothing hard to handle, if you recover for initial panic... however,
this is security related, some firewall scripts of mine did break.

sysctl -w net.ipv4.netfilter.ip_conntrack_max=NNN

becomes:

sysctl -w net.netfilter.nf_conntrack_max=NNNNN

Even ip_nat_ftp became nf_nat_ftp.

Comment 1 Chuck Ebbert 2007-03-27 16:00:32 UTC
The sysctl and proc entries will be backwards-compatible in upcoming
releases.

For the module renaming there's not much we can do -- the upstream
kernel firewall code was rewritten.


Comment 2 Marco Colombo 2007-03-27 17:43:32 UTC
Created attachment 151056 [details]
Modules and proc fs now

New paths and names

Comment 3 Marco Colombo 2007-03-27 17:46:04 UTC
Created attachment 151057 [details]
Old paths and names

Old paths and names

Comment 4 Marco Colombo 2007-03-27 17:47:32 UTC
# fgrep conntrack /etc/sysconfig/iptables-config
IPTABLES_MODULES="ip_conntrack_netbios_ns"

Annoying, at least. I understand the upstream issue, but this is something that
shouln't happen in a stable serie, IMHO. Anyway, from the distro user
standpoint, I expect a kernel update to bring almost no visibile changes to
userspace.

Well we can live with it, but I think an update for iptables-1.3.5-1.2.1 is due,
too, as for any userspace packages that somehow uses the old names.

Or, ideally, the kernel rpm should look into obvious places (e.g.
/etc/sysconfig/iptables-config, /etc/sysctl.conf) and do some perl -pie magic.

I performed the update on a test host, but I do have a couple of production
firewalls with, say, ip_nat_ftp there because it's actually needed.

I created two attachments with the new and old paths, for reference.


Comment 5 Marco Colombo 2007-04-01 12:48:55 UTC
Ok, I've searched more.

It turned out that the old names for modules should work. I've been reported
that on other systems that happens, so I guess there's something wrong with
mine. The kernel package contains /lib/modules/`uname -r`/modules.alias with
correctly maps the old named to the new ones, so you can do "modprobe
ip_conntrack_ftp" and it works. The only issue is if you parse "lsmod" output in
order to see if a module is loaded or not, but that's definitely a minor issue
(you'd better test for the functionality you need rather than for a certain
kernel module being loaded anyway).

So this part is actually NOTABUG.

As for the /proc and sysctl interfaces, there's a kernel compile configuration
flag, CONFIG_NF_CONNTRACK_PROC_COMPAT, which turns on compatibily mode. This
flag is disabled in the last kernel updates (2.6.20 ones).

According to Chuck, this will be fixed in upcoming updates. So I'm changing this
bug status to "NEXTRELEASE", which I find more appropriate. Thanks Chuck for you
prompt answer, and sorry for the fuss.


Note You need to log in before you can comment on or make changes to this bug.