X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Modules%2FIPStack%2Fipv4.h;h=2c3e1cae865cd3f479d7949c0e3d55883b6607e5;hb=58c7107eb0a5ae254c135f2eaa6263751f1ebe67;hp=b092becb0541200aefba315ba6c140a7e66e4d8e;hpb=0f48b41ce8edd3b6d549d641b35901e4b51a5132;p=tpg%2Facess2.git diff --git a/Modules/IPStack/ipv4.h b/Modules/IPStack/ipv4.h index b092becb..2c3e1cae 100644 --- a/Modules/IPStack/ipv4.h +++ b/Modules/IPStack/ipv4.h @@ -28,7 +28,7 @@ struct sIPv4Header } __attribute__((packed)); Uint8 FragOffHi; // Number of 8-byte blocks from the original start - Uint8 TTL; // Max number of hops effectively + Uint8 TTL; // Max number of hops, effectively Uint8 Protocol; Uint16 HeaderChecksum; // One's Complement Sum of the entire header must equal zero @@ -39,12 +39,14 @@ struct sIPv4Header } __attribute__((packed)); #define IP4PROT_ICMP 1 -#define IP4PROT_TCP 6 -#define IP4PROT_UDP 17 +#define IP4PROT_TCP 6 +#define IP4PROT_UDP 17 #define IPV4_ETHERNET_ID 0x0800 // === FUNCTIONS === extern int IPv4_RegisterCallback(int ID, tIPCallback Callback); +extern Uint16 IPv4_Checksum(const void *Buf, size_t Length); +extern int IPv4_SendPacket(tInterface *Iface, tIPv4 Address, int Protocol, int ID, int Length, const void *Data); #endif