867de4336b
This includes the following changes: - Support for poking ARP entries into the local table is now built in, so the arptab.c module I hacked together is no longer needed. - rarp_process() and rarp_reply() now accept a len argument which is passed down from rarp_loop() which tells rarp_reply() exactly how long the original RARP frame was. (Usually, it's 60 bytes, which is the minimum.) Previously, the length was calculated using the sum of sizeof(struct ether_header) + sizeof(struct ether_arp) (plus the ethernet frame header, I think). The result was a total packet length of 42 bytes. Now, rarp_reply() sends out packets that are the same size as those it recieves (60 bytes). This agrees with the behavior of rarpd on SunOS (as observed with tcpdump). The unused extra bytes are zeroed. |
||
---|---|---|
.. | ||
Makefile | ||
rarpd.8 | ||
rarpd.c |