src/server/daemon/vfs.c

changeset 66
74babc0082b7
parent 63
66442f81f823
child 67
50505dc3f8a6
equal deleted inserted replaced
65:14722c5f8856 66:74babc0082b7
39 static UcxMap *vfs_map; 39 static UcxMap *vfs_map;
40 40
41 static VFS_IO sys_file_io = { 41 static VFS_IO sys_file_io = {
42 sys_file_read, 42 sys_file_read,
43 sys_file_write, 43 sys_file_write,
44 sys_file_seek,
44 sys_file_close 45 sys_file_close
45 }; 46 };
46 47
47 static VFS_DIRIO sys_dir_io = { 48 static VFS_DIRIO sys_dir_io = {
48 sys_dir_read, 49 sys_dir_read,
445 return read(fd->fd, buf, nbyte); 446 return read(fd->fd, buf, nbyte);
446 } 447 }
447 448
448 ssize_t sys_file_write(SYS_FILE fd, const void *buf, size_t nbyte) { 449 ssize_t sys_file_write(SYS_FILE fd, const void *buf, size_t nbyte) {
449 return write(fd->fd, buf, nbyte); 450 return write(fd->fd, buf, nbyte);
451 }
452
453 off_t sys_file_seek(SYS_FILE fd, off_t offset, int whence) {
454 return lseek(fd->fd, offset, whence);
450 } 455 }
451 456
452 void sys_file_close(SYS_FILE fd) { 457 void sys_file_close(SYS_FILE fd) {
453 close(fd->fd); 458 close(fd->fd);
454 } 459 }
504 509
505 NSAPI_PUBLIC int system_fwrite(SYS_FILE fd, const void *buf, int nbyte) { 510 NSAPI_PUBLIC int system_fwrite(SYS_FILE fd, const void *buf, int nbyte) {
506 return fd->io->write(fd, buf, nbyte); 511 return fd->io->write(fd, buf, nbyte);
507 } 512 }
508 513
514 NSAPI_PUBLIC off_t system_lseek(SYS_FILE fd, off_t offset, int whence) {
515 return fd->io->seek(fd, offset, whence);
516 }
517
509 NSAPI_PUBLIC int system_fclose(SYS_FILE fd) { 518 NSAPI_PUBLIC int system_fclose(SYS_FILE fd) {
510 vfs_close(fd); 519 vfs_close(fd);
511 return 0; 520 return 0;
512 } 521 }

mercurial