Subversion Repositories HelenOS

Rev

Go to most recent revision | Hide changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff Changes
4587 5485 d 0 h jermar /trunk/uspace/ Implement stat() and VFS_IN_STAT.
Modify bdsh() to use stat() during ls.
In devfs, allow lookups that don't
specify one of L_FILE and L_DIRECTORY.
 
/trunk/uspace/app/bdsh/cmds/modules/ls/ls.c
/trunk/uspace/app/bdsh/cmds/modules/ls/ls.h
/trunk/uspace/lib/libc/generic/vfs/vfs.c
/trunk/uspace/lib/libc/include/sys/stat.h
/trunk/uspace/srv/fs/devfs/devfs_ops.c
/trunk/uspace/srv/vfs/vfs_ops.c
4585 5485 d 3 h jermar /trunk/uspace/ Introduce VFS_IN_FSTAT and VFS_OUT_STAT.
Provide libc fstat() and devfs_stat().
This functionality replaces VFS_IN_NODE
and VFS_IN/OUT_DEVICE. FAT and TMPFS
still do not implement this and VFS_IN_STAT
and stat() need implementation as well.
 
/trunk/uspace/lib/libc/generic/vfs/vfs.c
/trunk/uspace/lib/libc/include/ipc/vfs.h
/trunk/uspace/lib/libc/include/sys/stat.h
/trunk/uspace/srv/fs/devfs/devfs.c
/trunk/uspace/srv/fs/devfs/devfs_ops.c
/trunk/uspace/srv/fs/devfs/devfs_ops.h
/trunk/uspace/srv/fs/fat/fat.c
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_ops.c
/trunk/uspace/srv/fs/tmpfs/tmpfs.c
/trunk/uspace/srv/fs/tmpfs/tmpfs.h
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
/trunk/uspace/srv/vfs/vfs.c
/trunk/uspace/srv/vfs/vfs.h
/trunk/uspace/srv/vfs/vfs_ops.c
4584 5485 d 8 h jermar /trunk/uspace/ Separate the VFS input and output protocols.  
/trunk/uspace/app/trace/trace.c
/trunk/uspace/lib/libc/generic/vfs/vfs.c
/trunk/uspace/lib/libc/include/ipc/console.h
/trunk/uspace/lib/libc/include/ipc/vfs.h
/trunk/uspace/lib/libfs/libfs.c
/trunk/uspace/srv/console/console.c
/trunk/uspace/srv/fs/devfs/devfs.c
/trunk/uspace/srv/fs/fat/fat.c
/trunk/uspace/srv/fs/tmpfs/tmpfs.c
/trunk/uspace/srv/vfs/vfs.c
/trunk/uspace/srv/vfs/vfs_lookup.c
/trunk/uspace/srv/vfs/vfs_node.c
/trunk/uspace/srv/vfs/vfs_ops.c
4508 5505 d 9 h decky /trunk/uspace/lib/libc/ keep a list of open files to support proper cleanup  
/trunk/uspace/lib/libc/generic/io/io.c
/trunk/uspace/lib/libc/generic/libc.c
/trunk/uspace/lib/libc/generic/task.c
/trunk/uspace/lib/libc/generic/vfs/vfs.c
/trunk/uspace/lib/libc/include/stdio.h
/trunk/uspace/lib/libc/include/vfs/vfs.h
4492 5509 d 12 h jermar /trunk/uspace/ inode_t -> fdi_node_t  
/trunk/uspace/lib/libc/generic/io/io.c
/trunk/uspace/lib/libc/generic/loader.c
/trunk/uspace/lib/libc/generic/task.c
/trunk/uspace/lib/libc/generic/vfs/vfs.c
/trunk/uspace/lib/libc/include/loader/loader.h
/trunk/uspace/lib/libc/include/loader/pcb.h
/trunk/uspace/lib/libc/include/vfs/vfs.h
/trunk/uspace/srv/loader/main.c
4491 5509 d 23 h decky /trunk/uspace/ rename libc's fs_node_t to inode_t to avoid type conflict with VFS  
/trunk/uspace/lib/libc/generic/io/io.c
/trunk/uspace/lib/libc/generic/loader.c
/trunk/uspace/lib/libc/generic/task.c
/trunk/uspace/lib/libc/generic/vfs/vfs.c
/trunk/uspace/lib/libc/include/loader/loader.h
/trunk/uspace/lib/libc/include/loader/pcb.h
/trunk/uspace/lib/libc/include/vfs/vfs.h
/trunk/uspace/srv/loader/main.c
4482 5510 d 2 h decky /trunk/uspace/lib/libc/ I/O subsystem overhaul:
- add more POSIX-like file and stream functions (with real functionality of stdin, stdout, stderr)
- cleanup console access methods (now generic to any console-like device)
- remove unsafe stream functions
- add special open_node(), fd_node(), fd_phone() (file) and fopen_node(), fnode(), fphone() (stream) functions for HelenOS-specific I/O operations
 
/trunk/uspace/lib/libc/generic/io/console.c
/trunk/uspace/lib/libc/generic/io/klog.c
/trunk/uspace/lib/libc/include/io/color.h
/trunk/uspace/lib/libc/include/io/console.h
/trunk/uspace/lib/libc/include/io/keycode.h
/trunk/uspace/lib/libc/include/io/klog.h
/trunk/uspace/lib/libc/include/io/style.h
/trunk/uspace/lib/libc/generic/console.c
/trunk/uspace/lib/libc/generic/io/fprintf.c
/trunk/uspace/lib/libc/generic/io/sprintf.c
/trunk/uspace/lib/libc/generic/io/stdio.c
/trunk/uspace/lib/libc/generic/io/stream.c
/trunk/uspace/lib/libc/generic/io/vsprintf.c
/trunk/uspace/lib/libc/generic/kbd.c
/trunk/uspace/lib/libc/include/console
/trunk/uspace/lib/libc/include/console.h
/trunk/uspace/lib/libc/include/io/io.h
/trunk/uspace/lib/libc/include/io/stream.h
/trunk/uspace/lib/libc/include/kbd
/trunk/uspace/lib/libc/Makefile
/trunk/uspace/lib/libc/generic/io/asprintf.c
/trunk/uspace/lib/libc/generic/io/io.c
/trunk/uspace/lib/libc/generic/io/printf.c
/trunk/uspace/lib/libc/generic/io/printf_core.c
/trunk/uspace/lib/libc/generic/io/snprintf.c
/trunk/uspace/lib/libc/generic/io/vprintf.c
/trunk/uspace/lib/libc/generic/io/vsnprintf.c
/trunk/uspace/lib/libc/generic/vfs/vfs.c
/trunk/uspace/lib/libc/include/dirent.h
/trunk/uspace/lib/libc/include/fcntl.h
/trunk/uspace/lib/libc/include/fibril.h
/trunk/uspace/lib/libc/include/io/printf_core.h
/trunk/uspace/lib/libc/include/stdio.h
/trunk/uspace/lib/libc/include/unistd.h
/trunk/uspace/lib/libc/include/vfs/vfs.h
4401 5526 d 2 h svoboda /trunk/uspace/ C binding for devmap. Gets rid of duplicate code.  
/trunk/uspace/lib/libc/generic/devmap.c
/trunk/uspace/lib/libc/include/devmap.h
/trunk/uspace/app/tester/devmap/devmap1.c
/trunk/uspace/lib/libblock/libblock.c
/trunk/uspace/lib/libc/Makefile
/trunk/uspace/lib/libc/generic/vfs/vfs.c
/trunk/uspace/lib/libc/include/ipc/devmap.h
/trunk/uspace/lib/libc/include/vfs/vfs.h
/trunk/uspace/srv/rd/rd.c
/trunk/uspace/srv/vfs/vfs.h
4305 5556 d 6 h jermar /trunk/uspace/ Support mount options.
Let tmpfs decide whether to start empty or restored a TMPFS dump based on the mount option.
 
/trunk/uspace/app/init/init.c
/trunk/uspace/app/tester/vfs/vfs1.c
/trunk/uspace/lib/libc/generic/vfs/vfs.c
/trunk/uspace/lib/libc/include/vfs/vfs.h
/trunk/uspace/srv/fs/fat/fat_ops.c
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
/trunk/uspace/srv/vfs/vfs.h
/trunk/uspace/srv/vfs/vfs_ops.c
4302 5556 d 8 h jermar /trunk/uspace/ Make IPC_M_PING part of the VFS_MOUNT protocol again.  
/trunk/uspace/lib/libc/generic/vfs/vfs.c
/trunk/uspace/srv/vfs/vfs_ops.c
4280 5560 d 2 h svoboda /trunk/uspace/lib/libc/ strcat() -> str_append().  
/trunk/uspace/lib/libc/generic/string.c
/trunk/uspace/lib/libc/generic/vfs/vfs.c
/trunk/uspace/lib/libc/include/string.h
4268 5564 d 14 h svoboda /trunk/uspace/ str_cpy() and str_ncpy() in userspace. Nuke strcpy() and strncpy().  
/trunk/uspace/app/bdsh/cmds/modules/ls/ls.c
/trunk/uspace/app/tetris/scores.c
/trunk/uspace/app/tetris/tetris.c
/trunk/uspace/lib/libc/generic/loader.c
/trunk/uspace/lib/libc/generic/string.c
/trunk/uspace/lib/libc/generic/vfs/vfs.c
/trunk/uspace/lib/libc/include/string.h
/trunk/uspace/srv/fs/fat/fat_ops.c
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
4266 5564 d 23 h svoboda /trunk/uspace/ strdup() -> str_dup()  
/trunk/uspace/app/bdsh/cmds/modules/ls/ls.c
/trunk/uspace/app/bdsh/cmds/modules/mkdir/mkdir.c
/trunk/uspace/app/bdsh/cmds/modules/touch/touch.c
/trunk/uspace/app/bdsh/exec.c
/trunk/uspace/app/bdsh/input.c
/trunk/uspace/app/tetris/scores.c
/trunk/uspace/app/tetris/tetris.c
/trunk/uspace/lib/libc/generic/string.c
/trunk/uspace/lib/libc/generic/vfs/vfs.c
/trunk/uspace/lib/libc/include/string.h
4257 5566 d 3 h svoboda /trunk/uspace/ More replacements.  
/trunk/uspace/lib/libc/generic/vfs/vfs.c
/trunk/uspace/srv/devmap/devmap.c
4256 5566 d 3 h svoboda /trunk/uspace/lib/libc/generic/ Replace some uses of old string functions in C library.  
/trunk/uspace/lib/libc/generic/loader.c
/trunk/uspace/lib/libc/generic/sysinfo.c
/trunk/uspace/lib/libc/generic/task.c
/trunk/uspace/lib/libc/generic/thread.c
/trunk/uspace/lib/libc/generic/vfs/vfs.c
4002 5603 d 4 h decky /trunk/uspace/lib/libc/ add IPC_FLAG_BLOCKING for generic IPC blocking operations
add ipc_connect_me_to_blocking() for blocking connections
mount() has new flags argument
get_cons_phone() -> get_console_phone()
add common console_wait()
simplify vfs_connect() using blocking connection
add blocking support for device_get_handle()
swap VFS_MOUNT arguments, and blocking mount support
 
/trunk/uspace/lib/libc/generic/console.c
/trunk/uspace/lib/libc/generic/io/stream.c
/trunk/uspace/lib/libc/generic/ipc.c
/trunk/uspace/lib/libc/generic/kbd.c
/trunk/uspace/lib/libc/generic/vfs/vfs.c
/trunk/uspace/lib/libc/include/async.h
/trunk/uspace/lib/libc/include/io/stream.h
/trunk/uspace/lib/libc/include/ipc/ipc.h
/trunk/uspace/lib/libc/include/ipc/services.h
/trunk/uspace/lib/libc/include/vfs/vfs.h
3747 5669 d 2 h svoboda /trunk/uspace/ Put console IPC method numbers under libc.  
/trunk/uspace/lib/libc/include/ipc/console.h
/trunk/uspace/app/tester/console/console1.c
/trunk/uspace/app/tetris/input.c
/trunk/uspace/app/tetris/screen.c
/trunk/uspace/app/trace/trace.c
/trunk/uspace/lib/libc/Makefile
/trunk/uspace/lib/libc/generic/io/stream.c
/trunk/uspace/lib/libc/generic/vfs/vfs.c
/trunk/uspace/srv/console/console.c
/trunk/uspace/srv/console/console.h
3488 5747 d 2 h svoboda /trunk/uspace/ Fix assorted warnings.  
/trunk/uspace/app/tester/ipc/send_sync.c
/trunk/uspace/app/tester/tester.c
/trunk/uspace/lib/libc/generic/ipc.c
/trunk/uspace/lib/libc/generic/smc.c
/trunk/uspace/lib/libc/generic/time.c
/trunk/uspace/lib/libc/generic/tls.c
/trunk/uspace/lib/libc/generic/vfs/canonify.c
/trunk/uspace/lib/libc/generic/vfs/vfs.c
/trunk/uspace/lib/libc/include/ipc/ipc.h
/trunk/uspace/srv/vfs/vfs.c
/trunk/uspace/srv/vfs/vfs_ops.c
3464 5766 d 6 h jermar /trunk/uspace/lib/libc/generic/vfs/ chdir() must always return a value.  
/trunk/uspace/lib/libc/generic/vfs/vfs.c
3328 5801 d 11 h jermar /trunk/uspace/lib/libc/generic/vfs/ Fix off-by-one bug in absolutize().  
/trunk/uspace/lib/libc/generic/vfs/vfs.c
3313 5803 d 2 h jermar /trunk/uspace/lib/libc/generic/vfs/ When read() fails, return the actual error.  
/trunk/uspace/lib/libc/generic/vfs/vfs.c
3306 5805 d 11 h jermar /trunk/uspace/lib/libc/ Fix handling of relative paths in task_spawn().  
/trunk/uspace/lib/libc/generic/task.c
/trunk/uspace/lib/libc/generic/vfs/vfs.c
/trunk/uspace/lib/libc/include/vfs/vfs.h
3292 5806 d 5 h jermar /trunk/uspace/lib/libc/generic/vfs/ Fix absolutize() wrt. to relative paths.  
/trunk/uspace/lib/libc/generic/vfs/vfs.c
3255 5808 d 12 h jermar /trunk/uspace/ Fix the VFS protocol so that the client can determine that VFS_MOUNT failed due
to a request to mount an unregistered file system.
 
/trunk/uspace/lib/libc/generic/vfs/vfs.c
/trunk/uspace/srv/vfs/vfs_ops.c
3246 5811 d 4 h jermar /trunk/ cstyle  
/trunk/kernel/generic/src/lib/rd.c
/trunk/uspace/lib/libc/generic/vfs/vfs.c
3214 5841 d 9 h svoboda /trunk/uspace/lib/libc/generic/vfs/ Fix missing rc check in libc _open()  
/trunk/uspace/lib/libc/generic/vfs/vfs.c
3077 5875 d 7 h decky /trunk/uspace/lib/libc/generic/vfs/ mount: resolve device using devmap  
/trunk/uspace/lib/libc/generic/vfs/vfs.c
2771 5959 d 1 h jermar /trunk/uspace/lib/libc/generic/vfs/ Simplify the libc procedure needed to convert a user-supplied path to an
absolute canonical path.
 
/trunk/uspace/lib/libc/generic/vfs/vfs.c
2763 5961 d 4 h jermar /trunk/uspace/ Support for rename().  
/trunk/uspace/app/tester/vfs/vfs1.c
/trunk/uspace/lib/libc/generic/vfs/vfs.c
/trunk/uspace/lib/libc/include/stdio.h
/trunk/uspace/lib/libfs/libfs.c
/trunk/uspace/lib/libfs/libfs.h
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
/trunk/uspace/srv/vfs/vfs.c
/trunk/uspace/srv/vfs/vfs.h
/trunk/uspace/srv/vfs/vfs_lookup.c
/trunk/uspace/srv/vfs/vfs_ops.c
2761 5962 d 10 h jermar /trunk/uspace/lib/libc/generic/vfs/ mkdir() and _unlink() should return the real return code.  
/trunk/uspace/lib/libc/generic/vfs/vfs.c
2755 5967 d 21 h jermar /trunk/uspace/ Add support for relative paths: chdir() and getcwd().  
/trunk/uspace/lib/libc/include/vfs/vfs.h
/trunk/uspace/lib/libc/include/vfs.h
/trunk/uspace/app/tester/vfs/vfs1.c
/trunk/uspace/lib/libc/generic/vfs/vfs.c
/trunk/uspace/lib/libc/include/errno.h
/trunk/uspace/lib/libc/include/unistd.h
/trunk/uspace/lib/libc/include/vfs/canonify.h
2753 5968 d 0 h jermar /trunk/uspace/ Move canonify() to libc so that it can be used also on the libc side.  
/trunk/uspace/lib/libc/generic/vfs
/trunk/uspace/lib/libc/generic/vfs/canonify.c
/trunk/uspace/lib/libc/generic/vfs/vfs.c
/trunk/uspace/lib/libc/include/vfs
/trunk/uspace/lib/libc/include/vfs/canonify.h
/trunk/uspace/lib/libc/generic/vfs.c
/trunk/uspace/lib/libc/Makefile
/trunk/uspace/srv/vfs/vfs_lookup.c
2741 5978 d 1 h jermar /trunk/uspace/lib/libc/generic/ Prevent read() and write() from returning an uninitialized error return value.  
/trunk/uspace/lib/libc/generic/vfs.c
2735 5982 d 5 h jermar /trunk/uspace/ Support for rmdir(), unlink() and the respective VFS operations.  
/trunk/uspace/lib/libc/generic/vfs.c
/trunk/uspace/lib/libc/include/unistd.h
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
/trunk/uspace/srv/vfs/vfs.c
/trunk/uspace/srv/vfs/vfs.h
/trunk/uspace/srv/vfs/vfs_ops.c
2734 5982 d 7 h jermar /trunk/uspace/ Support for close().  
/trunk/uspace/lib/libc/generic/vfs.c
/trunk/uspace/lib/libc/include/errno.h
/trunk/uspace/srv/vfs/vfs.c
/trunk/uspace/srv/vfs/vfs.h
/trunk/uspace/srv/vfs/vfs_ops.c
2710 6003 d 3 h jermar /trunk/uspace/ VFS_WRITE and tmpfs_write fixes.  
/trunk/uspace/app/tester/vfs/vfs1.c
/trunk/uspace/lib/libc/generic/vfs.c
/trunk/uspace/srv/fs/tmpfs/tmpfs.c
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
/trunk/uspace/srv/vfs/vfs_ops.c
2707 6003 d 7 h jermar /trunk/uspace/ Support for mkdir().  
/trunk/uspace/lib/libc/include/sys/stat.h
/trunk/uspace/app/tester/vfs/vfs1.c
/trunk/uspace/lib/libc/generic/vfs.c
/trunk/uspace/lib/libc/include/sys/types.h
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
/trunk/uspace/srv/vfs/vfs.c
/trunk/uspace/srv/vfs/vfs.h
/trunk/uspace/srv/vfs/vfs_lookup.c
/trunk/uspace/srv/vfs/vfs_ops.c
2700 6011 d 8 h jermar /trunk/uspace/ Introduce the notion of lflag (i.e. lookup flags) to support the ability to
limit the scope of VFS node types that can be opened by open() and opendir(). In
the future, lflag will also specify actions for VFS_LOOKUP handlers that will be
carried out in situations such as the VFS node is not found (e.g. implementation
of mkdir() and open() with O_CREAT in oflag).
 
/trunk/uspace/lib/libc/generic/vfs.c
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
/trunk/uspace/srv/vfs/vfs.h
/trunk/uspace/srv/vfs/vfs_lookup.c
/trunk/uspace/srv/vfs/vfs_ops.c
2699 6011 d 22 h jermar /trunk/uspace/ Finish implementation of readdir(). Functions from this family are implemented
via using file descriptors for directories. For example, readdir() is
implemented as read() from an open directory. Of course, FS implementations
must understand that they are asked to read a directory and behave accordingly.
 
/trunk/uspace/app/tester/vfs/vfs1.c
/trunk/uspace/lib/libc/generic/vfs.c
/trunk/uspace/lib/libc/include/dirent.h
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
2694 6017 d 1 h jermar /trunk/uspace/lib/libc/ Add opendir(), rewinddir(), closedir() and some prototypes and stubs. Add dirent.h.  
/trunk/uspace/lib/libc/include/dirent.h
/trunk/uspace/lib/libc/generic/vfs.c
/trunk/uspace/lib/libc/include/unistd.h