void IPStack_Adapter_Del(void *Handle);
// --- VFS API ---
int Adapter_ReadDir(tVFS_Node *Node, int Pos, char Name[FILENAME_MAX]);
-tVFS_Node *Adapter_FindDir(tVFS_Node *Node, const char *Name);
+tVFS_Node *Adapter_FindDir(tVFS_Node *Node, const char *Name, Uint Flags);
int Adapter_DirIOCtl(tVFS_Node *Node, int Num, void *Data);
int Adapter_IOCtl(tVFS_Node *Node, int Num, void *Data);
// --- "Internal" (IPStack) API ---
gpIP_AdapterList_Last->Next = ret;
gpIP_AdapterList_Last = ret;
Mutex_Release( &glIP_Adapters );
-
+
+ Log_Log("IPStack", "Adapter %i: %s %02x:%02x:%02x:%02x:%02x:%02x",
+ ret->Index, Type->Name,
+ ret->HWAddr[0], ret->HWAddr[1], ret->HWAddr[2],
+ ret->HWAddr[3], ret->HWAddr[4], ret->HWAddr[5]
+ );
+
// Watch the adapter for incoming packets
- tTID tid = Proc_SpawnWorker(Adapter_int_WatchThread, ret);
- if(tid < 0) {
+ void *worker = Proc_SpawnWorker(Adapter_int_WatchThread, ret);
+ if(!worker) {
Log_Warning("IPStack", "Unable to create watcher thread for %p", ret);
}
return -EINVAL;
}
-tVFS_Node *Adapter_FindDir(tVFS_Node *Node, const char *Name)
+tVFS_Node *Adapter_FindDir(tVFS_Node *Node, const char *Name, Uint Flags)
{
tAdapter *a = Adapter_GetByName(Name);
if(!a)
{
Handle->Type->SendPacket( Handle->CardHandle, Buffer );
}
+
+ IPStack_Buffer_DestroyBuffer(Buffer);
}
// --- Helpers ---