ipv4: Constrain UFO fragment sizes to multiples of 8 bytes

2016-06-06 Thread Steven Caron
d if=/dev/zero count=1 bs=16384 of=/export/test # On the one with UFO=off (e1000) dd if=/mnt/import/test count=1 bs=1496 of=/dev/null # get Input/output error Regards, Steven Caron  Designer, GENWare  500 Palladium Dr. Suite 2100| Ottawa ON, K2V 1C2   office: +1.343.883.2345  |  steven.caron.genband.com

PATCH [0/1] ipv4: Prevent malformed UFO fragments in ip_append_page

2016-06-10 Thread Steven Caron
Hi Hannes, It's a very simple patch which was already included in the original email. The patch is from Linux 4.7-rc1. net/ipv4/ip_output.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) Thanks, Steven

PATCH [1/1] ipv4: Prevent malformed UFO fragments in ip_append_page

2016-06-10 Thread Steven Caron
As the ip fragment offset field counts 8-byte chunks, non-final ip fragments must be multiples of 8 bytes of payload. Depending on the mtu and ip option sizes, ip_append_page wasn't respecting this, notably when running NFS under UDP. diff --git a/net/ipv4/ip_output.c b/net/ipv4/ip_output.c inde

[PATCH v1 1/1] ipv4: Prevent malformed UFO fragments in ip_append_page

2016-06-13 Thread Steven Caron
As the ip fragment offset field counts 8-byte chunks, non-final ip fragments must be multiples of 8 bytes of payload. Depending on the mtu and ip option sizes, ip_append_page wasn't respecting this, notably when running NFS under UDP. Signed-off-by: Steven Caron --- diff --git a/net

[PATCH v1 0/1] ipv4: Prevent malformed UFO fragments in ip_append_page

2016-06-13 Thread Steven Caron
Resubmitting with signoff. This is a fix for malformed UFO packets seen when using NFS over UDP. It's in the same vein as and complements d9be4f7a6f5a8da3. net/ipv4/ip_output.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) Thanks, Steven

ipv4: detection of bootable network devices is broken in IP-Config

2017-09-18 Thread Steven Caron
The procedure below from ipconfig.c assumes that "?" updates user_dev_name[0]. I think that falls under undefined use of the result as an lvalue. It works when I explicitly assign the result of the operation back to user_dev_name[0]. static bool __init ic_is_init_dev(struct net_device *dev) {