Diff markup
001 001
002 002
003 003
004 004
005 005
006 006
007 007
008 008
009 009
010 010
011 011
012 012
013 013
014 014
015 015
016 016
017 017
018 018
019 #include <libc.h> 019 #include <libc.h>
020 #include <debug.h> 020 #include <debug.h>
021 !! 021 #include <drivers/devices.h>
>> 022 #include "fstest_utils.h"
022 023
023 024
024 025
025 !! 026
026 027
027 028
028 int main() 029 int main()
029 { 030 {
030 bochs_printf("init: Welcome in userland !\n" 031 bochs_printf("init: Welcome in userland !\n");
031 032
032 !! 033
>> 034
>> 035 TEST_EXPECT_CONDITION(mkdir("/dev", S_IRWXALL), RETVAL == 0);
>> 036 TEST_EXPECT_CONDITION(mknod("/dev/zero", S_IRUSR | S_IWUSR,
>> 037 S_IFCHR, SOS_CHARDEV_ZERO_MAJOR, SOS_CHARDEV_ZERO_MINOR), RETVAL == 0);
>> 038 TEST_EXPECT_CONDITION(mknod("/dev/null", S_IRUSR | S_IWUSR,
>> 039 S_IFCHR, SOS_CHARDEV_ZERO_MAJOR, SOS_CHARDEV_NULL_MINOR), RETVAL == 0);
>> 040 TEST_EXPECT_CONDITION(mknod("/dev/kmem", S_IRUSR | S_IWUSR,
>> 041 S_IFCHR, SOS_CHARDEV_MEM_MAJOR, SOS_CHARDEV_KMEM_MINOR), RETVAL == 0);
>> 042 TEST_EXPECT_CONDITION(mknod("/dev/mem", S_IRUSR | S_IWUSR,
>> 043 S_IFCHR, SOS_CHARDEV_MEM_MAJOR, SOS_CHARDEV_PHYSMEM_MINOR), RETVAL == 0);
>> 044 TEST_EXPECT_CONDITION(mknod("/dev/tty", S_IRUSR | S_IWUSR,
>> 045 S_IFCHR, SOS_CHARDEV_TTY_MAJOR, SOS_CHARDEV_CONSOLE_MINOR), RETVAL == 0);
>> 046 TEST_EXPECT_CONDITION(mknod("/dev/ttyS", S_IRUSR | S_IWUSR,
>> 047 S_IFCHR, SOS_CHARDEV_TTY_MAJOR, SOS_CHARDEV_SERIAL_MINOR), RETVAL == 0);
>> 048
>> 049 ls("/", 1, 1);
>> 050
>> 051
>> 052 TEST_EXPECT_CONDITION(open("/dev/tty", O_RDWR), RETVAL == 0);
>> 053 TEST_EXPECT_CONDITION(open("/dev/tty", O_RDWR), RETVAL == 1);
>> 054 TEST_EXPECT_CONDITION(open("/dev/tty", O_RDWR), RETVAL == 2);
>> 055
033 if (fork() == 0) 056 if (fork() == 0)
034 exec("fstest"); !! 057 exec ("shell");
>> 058
>> 059 close (2);
>> 060 close (1);
>> 061 close (0);
>> 062
>> 063
>> 064 TEST_EXPECT_CONDITION(open("/dev/ttyS", O_RDWR), RETVAL == 0);
>> 065 TEST_EXPECT_CONDITION(open("/dev/ttyS", O_RDWR), RETVAL == 1);
>> 066 TEST_EXPECT_CONDITION(open("/dev/ttyS", O_RDWR), RETVAL == 2);
035 067
036 if (fork() == 0) 068 if (fork() == 0)
037 exec("banner"); !! 069 exec ("shell");
>> 070
>> 071 close (2);
>> 072 close (1);
>> 073 close (0);
>> 074
038 075
039 bochs_printf("init: The end\n"); 076 bochs_printf("init: The end\n");
040 return 0; 077 return 0;
041 } 078 }