-BUILD_NUM = 1510
+BUILD_NUM = 1511
// Scan Array\r
for( i = 0; i < giRegInterps; i++ )\r
{\r
- if(strcmp(gsaRegInterps[i], path) == 0)\r
+ if(strcmp(gsaRegInterps[i], Path) == 0)\r
return gsaRegInterps[i];\r
}\r
\r
Uint addr;\r
int i;\r
\r
- ENTER("sfile", file);\r
+ ENTER("sfile", File);\r
\r
// Sanity Check Argument\r
- if(file == NULL) {\r
+ if(File == NULL) {\r
LEAVE('n');\r
return 0;\r
}\r
\r
// Get True File Path\r
- sTruePath = VFS_GetTruePath(file);\r
+ sTruePath = VFS_GetTruePath(File);\r
if(sTruePath == NULL) {\r
LEAVE('n');\r
return 0;\r
tIPv6Header *hdr = Buffer;
if(Length < sizeof(tIPv6Header)) return;
- if(hdr->Version != 6) return;
+ if( ((hdr->Head >> (20+8)) & 0xF) != 6 )
+ return;
+
+ Log("[IPv6 ] hdr = {");
+ Log("[IPv6 ] .Version = %i", (hdr->Head >> (20+8)) & 0xF );
+ Log("[IPv6 ] .TrafficClass = %i", (hdr->Head >> (20)) & 0xFF );
+ Log("[IPv6 ] .FlowLabel = %i", hdr->Head & 0xFFFFF );
+ Log("[IPv6 ] .PayloadLength = 0x%04x", ntohs(hdr->PayloadLength) );
+ Log("[IPv6 ] .NextHeader = 0x%02x", hdr->NextHeader );
+ Log("[IPv6 ] .HopLimit = 0x%02x", hdr->HopLimit );
+ Log("[IPv6 ] .Source = %04x:%04x:%04x:%04x:%04x:%04x:%04x:%04x", hdr->Source );
+ Log("[IPv6 ] .Destination = %04x:%04x:%04x:%04x:%04x:%04x:%04x:%04x", hdr->Destination );
+ Log("[IPv6 ] }");
+
}
/**
struct sIPv6Header
{
+ #if 1
+ // High 4: Version
+ // Next: Traffic Class
+ // Low 20: Flow Label
+ Uint32 Head;
+ #else
struct {
unsigned Version: 4;
unsigned TrafficClass: 8;
unsigned FlowLabel: 20;
};
+ #endif
Uint16 PayloadLength;
Uint8 NextHeader; // Type of payload data
Uint8 HopLimit;
extern void TCP_Initialise();
extern int IPv4_Initialise();
extern int IPv4_Ping(tInterface *Iface, tIPv4 Addr);
+extern int IPv6_Initialise();
+//extern int IPv6_Ping(tInterface *Iface, tIPv6 Addr);
// === PROTOTYPES ===
int IPStack_Install(char **Arguments);
{
int i = 0;
- // Install Handlers
+ // Layer 2 - Data Link Layer
ARP_Initialise();
+ // Layer 3 - Network Layer
IPv4_Initialise();
+ IPv6_Initialise();
+ // Layer 4 - Transport Layer
TCP_Initialise();
UDP_Initialise();