Implement IPv4 stack and ip app (AI)
- Created src/ipv4.h: IPv4 header struct, protocol numbers, checksum, address conversion (ipv4_aton/ntoa), send/receive/routing API, protocol handler registration - Created src/ipv4.c: packet construction with header checksum, simple routing (direct subnet + gateway), incoming packet validation and dispatch to registered protocol handlers - Created apps/ip/ip.c: displays network interface config from /sys/net (MAC, link, IP, netmask, gateway); supports 'ip set' to configure interface via sysfs writes - Added ipv4.c to kernel build, kernel calls ipv4_init() at boot - Tested: clean boot, IPv4 initialized, ip app in CPIO
This commit is contained in:
@@ -71,7 +71,7 @@ Once a task is completed, it should be checked off.
|
||||
- [x] Create a network driver for the NE2000 NIC.
|
||||
- [x] Create a network driver for the 3C509B NIC. It should only support RJ45 and 10base-T.
|
||||
- [x] Create an ethernet subsytsem. Each ethernet device should be shown as a character device with the name `ethN`.
|
||||
- [ ] Create a IPv4 stack. Create the `ip` app that shows curernt IPv4 configuration. It should read this information from `/sys`
|
||||
- [x] Create a IPv4 stack. Create the `ip` app that shows curernt IPv4 configuration. It should read this information from `/sys`
|
||||
- [ ] Create a ARP subsystem. Create the `arp` command that shows current ARP tables. Again, this info should be found in `/sys`
|
||||
- [ ] Create a DHCP subsystem. Create the `dhcp` command to show current DHCP status information.
|
||||
- [ ] Create a UDP and TCP stack.
|
||||
|
||||
Reference in New Issue
Block a user