#include "include/adapters.h"
// === CONSTANTS ===
-//! Default timeout value, 30 seconds
-#define DEFAULT_TIMEOUT (30*1000)
+//! Default timeout value, 5 seconds
+#define DEFAULT_TIMEOUT (5*1000)
// === IMPORTS ===
extern int IPv4_Ping(tInterface *Iface, tIPv4 Addr);
iface->Next = NULL;
iface->Type = 0; // Unset type
iface->Address = iface->Name + nameLen + 1; // Address
+ memset(&iface->Route, 0, sizeof(iface->Route));
iface->Route.Network = iface->Address + IPStack_GetAddressSize(-1);
iface->Route.NextHop = iface->Route.Network + IPStack_GetAddressSize(-1);
* - Gets the name of the attached device
*/
case 8:
- Log_Error("IPStack", "TODO: Reimplement interface.ioctl(get_device)");
-// if( iface->Adapter == NULL )
+ if( iface->Adapter == NULL )
LEAVE_RET('i', 0);
-// 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 );
-// LEAVE_RET('i', iface->Adapter->DeviceLen);
+ char *name = Adapter_GetName(iface->Adapter);
+ int len = strlen(name);
+ if( Data ) {
+ if( !CheckMem( Data, len+1 ) ) {
+ free(name);
+ LEAVE_RET('i', -1);
+ }
+ strcpy( Data, name );
+ }
+ free(name);
+ LEAVE_RET('i', len);
/*
* ping