#include <nameserver.h> #include <tools.h> int ActualWhoIS(AP* Args){ asm volatile ("swi 9\n\t"); register int r0 asm ("r0"); int R = r0; return R; } int WhoIs(char* Name) { NSReqMsg SendMsg, ReplyMsg; int Status; AP Args; SendMsg.MsgType = WhoIs; stringCopy(SendMsg.Msg, Name, NS_MESSAGE_MAX_LENGTH); Args.arg0 = SendMsg; Args.arg1 = sizeof(NSMsg); Args.arg2 = ReplyMsg; Args.arg3 = sizeof(NSMsg); Status = ActualWhoIS(&Args) if (Status == sizeof(NSMsg)) return ReplyMsg.TaskID; // TODO FIXME TODO else return NAMESERVER_TID_INVALID; } int ActualRegAS(AP* Args){ asm volatile ("swi 10\n\t"); register int r0 asm ("r0"); int R = r0; return R; } int RegisterAs (char* Name) { NSReqMsg SendMsg, ReplyMsg; int Status; AP Args; SendMsg.MsgType = RegisterAs; stringCopy(SendMsg.Msg, Name, NS_MESSAGE_MAX_LENGTH); Args.arg0 = SendMsg; Args.arg1 = sizeof(NSMsg); Args.arg2 = ReplyMsg; Args.arg3 = sizeof(NSMsg); Status = ActualRegAS(&Args); if (Status == sizeof(NSMsg)) return SUCCESS; else return NAMESERVER_TID_INVALID; }