X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Modules%2FIPStack%2Fmain.c;h=6fe92f4548c7447c8b7390e42519a114c9911c51;hb=54746c855c6e2fe42fde9f93b0ce3f41aeefc2e5;hp=e3803208bd585648e74e69189a31a4e4283df65e;hpb=156885e938b60fee9d061d989ae7711c9aeea493;p=tpg%2Facess2.git diff --git a/Modules/IPStack/main.c b/Modules/IPStack/main.c index e3803208..6fe92f45 100644 --- a/Modules/IPStack/main.c +++ b/Modules/IPStack/main.c @@ -97,7 +97,7 @@ int IPStack_Install(char **Arguments) */ int IPStack_AddFile(tSocketFile *File) { - Log("IPStack_AddFile: %s", File->Name); + Log_Log("IPStack", "Added file '%s'", File->Name); File->Next = gIP_FileTemplates; gIP_FileTemplates = File; return 0; @@ -268,6 +268,7 @@ static const char *casIOCtls_Iface[] = { "get_address", "set_address", "getset_subnet", "get_gateway", "set_gateway", + "get_device", "ping", NULL }; @@ -465,11 +466,23 @@ int IPStack_Iface_IOCtl(tVFS_Node *Node, int ID, void *Data) } break; + /* + * get_device + * - Gets the name of the attached device + */ + case 10: + if( Data == NULL ) + LEAVE_RET('i', iface->Adapter->DeviceLen); + if( !CheckMem( Data, iface->Adapter->DeviceLen+1 ) ) + LEAVE_RET('i', -1); + strcpy( Data, iface->Adapter->Device ); + return iface->Adapter->DeviceLen; + /* * ping * - Send an ICMP Echo */ - case 10: + case 11: switch(iface->Type) { case 0: @@ -588,6 +601,7 @@ tAdapter *IPStack_GetAdapter(char *Path) // Fill Structure strcpy( dev->Device, Path ); dev->NRef = 1; + dev->DeviceLen = strlen(Path); // Open Device dev->DeviceFD = VFS_Open( dev->Device, VFS_OPENFLAG_READ|VFS_OPENFLAG_WRITE );