diff --git a/src/bin/login/main.c b/src/bin/login/main.c index 9055f3f..b3964f1 100644 --- a/src/bin/login/main.c +++ b/src/bin/login/main.c @@ -111,27 +111,44 @@ gets((char *)&userName); printf("Password: "); pgets((char *)&passWord); + printf("a"); for (i=0x0;i<(4096/sizeof(struct passwd));i++) { + printf("b"); if (0x0 == strcmp(userName,data[i].username)) { + printf("c"); if (0x0 == strcmp(passWord,data[i].password)) { + printf("d"); shellPid = fork(); if (shellPid == 0x0) { + printf("e"); if (setuid(data[i].uid) != 0x0) { printf("Set UID Failed\n"); } + printf("f"); if (setgid(data[i].gid) != 0x0) { printf("Set GID Failed\n"); } - if ((fd = fopen("sys:/motd","r")) == 0x0) { + printf("g"); + fd = 0x0; + printf("g.-1"); + fd = fopen("sys:/motd","r"); + printf("g.-2"); + //if ((fd = fopen("sys:/motd","r")) == 0x0) { + if (fd == 0x0) { printf("No MOTD"); } else { + printf("g.1"); fread(data2,384,1,fd); + printf("g.2"); printf("%s\n",data2); } + printf("h"); fclose(fd); + printf("i"); //chdir(data[i].path); chdir("sys:/"); + printf("j"); exec(data[i].shell,0x0,0x0); printf("Error: Problem Starting Shell\n"); exit(-1); diff --git a/src/lib/libc_old/stdio/fopen.c b/src/lib/libc_old/stdio/fopen.c index 1e08585..1e34488 100644 --- a/src/lib/libc_old/stdio/fopen.c +++ b/src/lib/libc_old/stdio/fopen.c @@ -32,6 +32,7 @@ FILE *fopen(const char *file,const char *mode) { FILE *fp = malloc(sizeof(FILE)); + printf("PICA"); fp->fd = 0x0; asm volatile( "int %0\n" @@ -42,6 +43,9 @@ /*** $Log$ + Revision 1.2 2005/10/12 00:13:36 reddawg + Removed + Revision 1.1.1.1 2005/09/26 17:22:54 reddawg no message diff --git a/src/lib/libc_old/stdlib/malloc.c b/src/lib/libc_old/stdlib/malloc.c index c2269c2..3f0d0e5 100644 --- a/src/lib/libc_old/stdlib/malloc.c +++ b/src/lib/libc_old/stdlib/malloc.c @@ -103,6 +103,8 @@ int i = 0x0; len = MALLOC_ALIGN(len); + + printf("MALLOC"); if (len == 0x0) { return(0x0); @@ -285,6 +287,9 @@ /*** $Log$ + Revision 1.2 2005/10/12 00:13:36 reddawg + Removed + Revision 1.1.1.1 2005/09/26 17:22:57 reddawg no message diff --git a/src/sys/init/main.c b/src/sys/init/main.c index 4a0b242..d01b33d 100644 --- a/src/sys/init/main.c +++ b/src/sys/init/main.c @@ -1,5 +1,5 @@ /***************************************************************************************** - Copyright (c) 2002-2004 The UbixOS Project + Copyright (c) 2002-2004, 2005 The UbixOS Project All rights reserved. Redistribution and use in source and binary forms, with or without modification, are @@ -55,12 +55,12 @@ *****************************************************************************************/ ubixDescriptorTable(ubixGDT,9) { {dummy:0}, - ubixStandardDescriptor(0x0, 0xFFFFF, (dCode + dRead + dBig + dBiglim)), - ubixStandardDescriptor(0x0, 0xFFFFF, (dData + dWrite + dBig + dBiglim)), - ubixStandardDescriptor(0x0, 0xFFFFF, (dLdt)), + ubixStandardDescriptor(0x0000, 0xFFFFF, (dCode + dRead + dBig + dBiglim)), + ubixStandardDescriptor(0x0000, 0xFFFFF, (dData + dWrite + dBig + dBiglim)), + ubixStandardDescriptor(0x0000, 0xFFFFF, (dLdt)), ubixStandardDescriptor(0x4200, (sizeof(struct tssStruct)), (dTss + dDpl3)), - ubixStandardDescriptor(0x0, 0xFFFFF, (dCode + dWrite + dBig + dBiglim + dDpl3)), - ubixStandardDescriptor(0x0, 0xFFFFF, (dData + dWrite + dBig + dBiglim + dDpl3)), + ubixStandardDescriptor(0x0000, 0xFFFFF, (dCode + dWrite + dBig + dBiglim + dDpl3)), + ubixStandardDescriptor(0x0000, 0xFFFFF, (dData + dWrite + dBig + dBiglim + dDpl3)), ubixStandardDescriptor(0x4200, (sizeof(struct tssStruct)), (dTss)), ubixStandardDescriptor(0x6200, (sizeof(struct tssStruct)), (dTss)), }; diff --git a/src/sys/lists.c b/src/sys/lists.c deleted file mode 100644 index c833fd0..0000000 --- a/src/sys/lists.c +++ /dev/null @@ -1,242 +0,0 @@ -#include -#include - -#define IN -#define STATUS_FAILURE -1 -#define STATUS_SUCCESS 0 - -typedef struct _item_t Item_t; -typedef struct _list_t List_t; -struct _item_t -{ - Item_t *Previous; - Item_t *Next; -}; - -struct _list_t -{ - Item_t *First; - Item_t *Last; -}; - - -/* checked */ -List_t * -InitializeList() -{ - List_t * TList; - - TList = malloc(sizeof *TList); - TList->First = NULL; - TList->Last = NULL; - return TList; -} - -/* checked */ -Item_t * -CreateItem() -{ - Item_t * p; - p = malloc(sizeof *p); - p->Next = NULL; - p->Previous = NULL; - p->Priority = 0; - return p; -} - - -/* checked */ -int -InsertItemAtFront( IN List_t * TList, - IN Item_t * kItem) -{ - if(TList->First == NULL) - { - TList->First = kItem; - TList->Last = kItem; - kItem->Previous = NULL; - kItem->Next = NULL; - } - else - { - Item_t * FirstItem; - - FirstItem = TList->First; - kItem->Next = FirstItem; - TList->First = kItem; - FirstItem->Previous = kItem; - - - } - return STATUS_SUCCESS; -} - - - -/* checked */ -int -SetItemPriority( IN Item_t * kItem, - IN PRIORITY Priority) -{ - kItem->Priority = Priority; - return STATUS_SUCCESS; -} - - -/* checked */ -int -InsertItemBetweenItems( IN List_t * TList, - IN Item_t * Previous, - IN Item_t * Next, - IN Item_t * Insert) -{ - - if(Previous == NULL || Next == NULL) - return STATUS_FAILURE; - else - { - Previous->Next = Insert; - Next->Previous = Insert; - Insert->Previous = Previous; - Insert->Next = Next; - - } - - return STATUS_SUCCESS; -} - - -/* checked */ -int -RemoveItem( IN List_t * TList, - IN Item_t * kItem) -{ - kItem->Previous->Next = kItem->Next; - kItem->Next->Previous = kItem->Previous; - kItem->Previous = NULL; - kItem->Next = NULL; - return STATUS_SUCCESS; -} - -/* checked */ -int -DestroyItemsInList(IN List_t * ItemList) -{ - Item_t * z, tmp; - - z = ItemList->Last; - while(z != NULL) - { - tmp = z->Previous; - MmFreeFromNonPagedPool(z); - z = tmp; - } - ItemList->First = NULL; - ItemList->Last = NULL; - - return STATUS_SUCCESS; -} - - - -NTSTATUS -DestroyItemList(IN List_t * ItemList) -{ - MmFreeFromNonPagedPool(ItemList); - return STATUS_SUCCESS; -} - -/* checked */ -Item_t * -GetFirstItem(IN List_t * kItem) -{ - return kItem->First; -} - -/* checked */ -Item_t * -GetLastItem(IN List_t * kItem) -{ - return kItem->Last; -} - -/* checked */ -List_t * -RemoveItemListBetweenItems( IN Item_t * Previous, - IN Item_t * Next) -{ - List_t * NewList; - - NewList = InitializeList(); - - NewList->First = Previous->Next; - NewList->Last = Next->Previous; - - NewList->First->Previous = NULL; - NewList->Last->Next = NULL; - - Previous->Next = Next; - Next->Previous = Previous; - - return NewList; -} - - -/* checked */ -void -InsertItemListBetweenItems( IN Item_t * Previous, - IN Item_t * Next, - IN List_t * Insert) -{ - assert(Previous != NULL); - assert(Next != NULL); - - Previous->Next = Insert->First; - Next->Previous = Insert->Last; - Insert->First->Previous = Previous; - Insert->Last->Next = Next; - return STATUS_SUCCESS; -} - - - -int -main() -{ - List_t * High; - Item_t * a,b,c,d,e,z; - - High = InitializeList(); - - a = CreateItem(); - b = CreateItem(); - c = CreateItem(); - d = CreateItem(); - e = CreateItem(); - - SetItemPriority(a, 1); - SetItemPriority(b, 2); - SetItemPriority(c, 3); - SetItemPriority(d, 4); - SetItemPriority(e, 5); - - InsertItemAtFront(High, a); - InsertItemAtFront(High, b); - InsertItemAtFront(High, c); - InsertItemAtFront(High, d); - InsertItemAtFront(High, e); - - - z = High->Last; - while(z != NULL) - { - printf("Priority! equals %d\n", z->Priority); - z = z->Previous; - } - - - - - - return 0; -} diff --git a/src/sys/vfs/file.c b/src/sys/vfs/file.c index 9b30794..e54d882 100644 --- a/src/sys/vfs/file.c +++ b/src/sys/vfs/file.c @@ -122,7 +122,7 @@ void sysFopen(const char *file,char *flags,userFileDescriptor *userFd) { if (userFd == NULL) kprintf("Error: userFd == NULL, File: %s, Line: %i\n",__FILE__,__LINE__); - + kprintf("W"); userFd->fd = fopen(file,flags); if (userFd->fd != 0x0) { userFd->fdSize = userFd->fd->size;