[patch] Re: ARP entry in /proc wrong?

From: David Ford (david@kalifornia.com)
Date: Fri Sep 22 2000 - 13:03:22 EST


Attached is a patch.

-d

his dad wrote:

> Linux 2.4.0-test6 i386
>
> I've just put a manual arp entry in for 192.168.56.1.
>
> arp -n does not show it.
>
> /proc/arp
>
> has the following line
>
> 192.168.56.10x1 0xc <etc>
>
> where the ipaddress and the HWtype are jammed against each other.
>
> dare i suggest this might be a bug?
>
> Regards
>
> hisdad
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> Please read the FAQ at http://www.tux.org/lkml/

--
"The difference between 'involvement' and 'commitment' is like an
eggs-and-ham breakfast: the chicken was 'involved' - the pig was
'committed'."

--- net/ipv4/arp.c.orig Fri Aug 4 18:18:49 2000 +++ net/ipv4/arp.c Fri Sep 22 10:56:01 2000 @@ -1025,6 +1025,7 @@ char hbuffer[HBUFFERLEN]; int i,j,k; const char hexbuf[] = "0123456789ABCDEF"; + char abuf[16]; size = sprintf(buffer,"IP address HW type Flags HW address Mask Device\n"); @@ -1063,20 +1064,15 @@ } #endif - { - char tbuf[16]; - sprintf(tbuf, "%u.%u.%u.%u", NIPQUAD(*(u32*)n->primary_key)); - - size = sprintf(buffer+len, "%-16s 0x%-10x0x%-10x%s", - tbuf, - hatype, - arp_state_to_flags(n), - hbuffer); - - size += sprintf(buffer+len+size, - " %-8s %s\n", - "*", dev->name); - } + size = sprintf(buffer+len, "%-16s 0x%-10x0x%-10x%s", + in_ntoa2(*(u32*)n->primary_key, abuf), + hatype, + arp_state_to_flags(n), + hbuffer); + + size += sprintf(buffer+len+size, + " %-8s %s\n", + "*", dev->name); read_unlock(&n->lock); @@ -1099,14 +1095,14 @@ struct net_device *dev = n->dev; int hatype = dev ? dev->type : 0; - size = sprintf(buffer+len, - "%u.%u.%u.%u0x%-10x0x%-10x%s", - NIPQUAD(*(u32*)n->key), + size = sprintf(buffer+len, "%-16s 0x%-10x0x%-10x%s", + in_ntoa2(*(u32*)n->key, abuf), hatype, ATF_PUBL|ATF_PERM, "00:00:00:00:00:00"); + size += sprintf(buffer+len+size, - " %-17s %s\n", + " %-8s %s\n", "*", dev ? dev->name : "*"); len += size;


- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sat Sep 23 2000 - 21:00:27 EST