X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Modules%2FIPStack%2Fipstack.h;h=20f645cf1dc6f209536f428ab4896b25af4a1c4a;hb=d5834686ad14b66420060192445f06bce85db389;hp=43953942276a31ee2b8d99ddc54736d43d0e6157;hpb=34dbc845a86903c0b531216b166a4d596255bc9a;p=tpg%2Facess2.git diff --git a/Modules/IPStack/ipstack.h b/Modules/IPStack/ipstack.h index 43953942..20f645cf 100644 --- a/Modules/IPStack/ipstack.h +++ b/Modules/IPStack/ipstack.h @@ -17,6 +17,12 @@ typedef struct sSocketFile tSocketFile; typedef void (*tIPCallback)(tInterface *Interface, void *Address, int Length, void *Buffer); +enum eInterfaceTypes { + AF_NULL, + AF_INET4 = 4, // tIPv4 + AF_INET6 = 6 // tIPv6 +}; + union uIPv4 { Uint32 L; Uint8 B[4]; @@ -38,6 +44,8 @@ struct sInterface { tAdapter *Adapter; int TimeoutDelay; // Time in miliseconds before a packet times out int Type; // 0 for disabled, 4 for IPv4 and 6 for IPv6 + + //TODO: Remove explicit mentions of IPv4/IPv6 and make more general union { struct { tIPv6 Address; @@ -96,5 +104,6 @@ static const tMacAddr cMAC_BROADCAST = {{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF}}; #define ntohl(v) BigEndian32(v) extern int IPStack_AddFile(tSocketFile *File); +extern int IPStack_GetAddressSize(int AddressType); #endif