summaryrefslogtreecommitdiffstats
path: root/src/net/arp.c
Commit message (Collapse)AuthorAgeFilesLines
* Add untested support for UNDI transmit and receive.Michael Brown2007-07-021-2/+1Star
|
* pkbuff->iobuf changeoverMichael Brown2007-05-191-17/+17
| | | | | | | | Achieved via Perl using: perl -pi -e 's/pk_buff/io_buffer/g; s/Packet buffer/I\/O buffer/ig; ' \ -e 's/pkbuff\.h/iobuf.h/g; s/pkb_/iob_/g; s/_pkb/_iob/g; ' \ -e 's/pkb/iobuf/g; s/PKB/IOB/g;'
* Add "name" field to struct device to allow human-readable hardware deviceMichael Brown2007-01-101-2/+2
| | | | | | | | | | | names. Add "dev" pointer in struct net_device to tie network interfaces back to a hardware device. Force natural alignment of data types in __table() macros. This seems to prevent gcc from taking the unilateral decision to occasionally increase their alignment (which screws up the table packing).
* We don't actually have a stdio.h header file. Our printf() functions areMichael Brown2006-09-271-1/+0Star
| | | | | | | | defined in vsprintf.h. (This may change, since vsprintf.h is a non-standard name, but for now it's the one to use.) There should be no need to include vsprintf.h just for DBG() statements, since include/compiler.h forces it in for a debug build anyway.
* added stdio.h to includes for DBG compilationMarty Connor2006-09-271-0/+1
|
* Remove _PROTOCOL macros for gcc 3.2 compatibilityMarty Connor2006-08-091-3/+1Star
|
* Simplify RX data path.Michael Brown2006-06-181-15/+41
| | | | | | | | | | Kill off the static single net device and move to proper dynamic registration (which we need with the new device model). Break the (flawed) assumption that all network-layer protocols can use ARP; such network-layer protocols (i.e. IPv4) must now register as an ARP protocol using ARP_NET_PROTOCOL() and provide a single method for checking the existence of a local network-layer address.
* Simplify TX datapath.Michael Brown2006-06-161-44/+21Star
|
* Change semantics of network API so that packet-absorbing calls *always*Michael Brown2006-04-291-7/+7
| | | | | | | | | | | take ownership of the packet, rather than doing so only if they return success. This breaks semantic compatibility with Linux's hard_start_xmit() method, but means that we don't have to worry so much about error cases. Split mechanism of processing received packets (net_rx_process()) out from policy (net_step()), preparatory to putting net_step() in a separate object.
* Network layer now works as a proof of conceptMichael Brown2006-04-281-9/+43
|
* D'ohMichael Brown2006-04-251-1/+1
|
* Network API now allows for multiple network devices (although theMichael Brown2006-04-241-84/+107
| | | | | | | | | | | | | implementation allows for only one, and does so without compromising on the efficiency of static allocation). Link-layer protocols are cleanly separated from the device drivers. Network-layer protocols are cleanly separated from individual network devices. Link-layer and network-layer protocols are cleanly separated from each other.
* Remove the concept of the media-independent link-layer header and replaceMichael Brown2006-04-191-27/+20Star
| | | | | it with metadata in the pkb structure. This is required since UNDI will want to be able to parse the link-layer header without destroying it.
* First version. ARP protocol independence in less than the size of uIP'sMichael Brown2006-04-191-0/+244
Ethernet-and-IPv4-only ARP module. :)