Hi

The commit http://git.buildroot.org/busybox/commit/?id=1396221d5a741ef8e1e8abca88836b341a3cab84 breaks modprobe/insmod with spaces inside the parameters.

When calling
   modprobe -v iptable_filter forward='1 2'
the old version did
   init_module(0x499838, 5306, "\"forward=1 2\" ") = 0
while the new version does
init_module(0x491838, 5306, "forward=1 2 ") = -1 ENOENT (No such file or directory)
And dmesg says
   iptable_filter: Unknown parameter `2'

The kernel considers the '2' after the space to be the name of another parameter and not part of the value of forward. From the comments, this change seems intentional, but I don't see any advantage of this patch. Actually it seems obvious that the kernel can't recognize parameters with spaces after this patch. If it's just about code size, using the quotes always should also be possible.

Now obviously I don't want to load iptable_filter with a space in the parameters, but it's a module that is commonly available for testing. The actual module is for a specific hardware and the vendor doesn't even provide the source to the module.

Ralf Friedl
_______________________________________________
busybox mailing list
[email protected]
http://lists.busybox.net/mailman/listinfo/busybox

Reply via email to