Changeset f77c1c9 in mainline for uspace/app


Ignore:
Timestamp:
2017-12-08T21:03:35Z (8 years ago)
Author:
Jiří Zárevúcky <zarevucky.jiri@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
c19a5a59
Parents:
c1694b6b
git-author:
Jiří Zárevúcky <zarevucky.jiri@…> (2017-12-07 19:44:55)
git-committer:
Jiří Zárevúcky <zarevucky.jiri@…> (2017-12-08 21:03:35)
Message:

Return VFS handles separately from error codes.

Location:
uspace/app
Files:
16 edited

Legend:

Unmodified
Added
Removed
  • uspace/app/bdsh/cmds/modules/cat/cat.c

    rc1694b6b rf77c1c9  
    195195                /* Allow storing the whole UTF-8 character. */
    196196                blen = STR_BOUNDS(1);
    197         } else
    198                 fd = vfs_lookup_open(fname, WALK_REGULAR, MODE_READ);
     197        } else {
     198                int rc = vfs_lookup_open(fname, WALK_REGULAR, MODE_READ, &fd);
     199                if (rc != EOK) {
     200                        fd = -1;
     201                }
     202        }
    199203       
    200204        if (fd < 0) {
  • uspace/app/bdsh/cmds/modules/cmp/cmp.c

    rc1694b6b rf77c1c9  
    8080
    8181        for (int i = 0; i < 2; i++) {
    82                 fd[i] = vfs_lookup_open(fn[i], WALK_REGULAR, MODE_READ);
    83                 if (fd[i] < 0) {
    84                         rc = fd[i];
     82                rc = vfs_lookup_open(fn[i], WALK_REGULAR, MODE_READ, &(fd[i]));
     83                if (rc != EOK) {
    8584                        printf("Unable to open %s\n", fn[i]);
    8685                        goto end;
  • uspace/app/bdsh/cmds/modules/cp/cp.c

    rc1694b6b rf77c1c9  
    394394                printf("Copying %s to %s\n", src, dest);
    395395
    396         fd1 = vfs_lookup_open(src, WALK_REGULAR, MODE_READ);
    397         if (fd1 < 0) {
     396        rc = vfs_lookup_open(src, WALK_REGULAR, MODE_READ, &fd1);
     397        if (rc != EOK) {
    398398                printf("Unable to open source file %s\n", src);
    399399                return -1;
    400400        }
    401401
    402         fd2 = vfs_lookup_open(dest, WALK_REGULAR | WALK_MAY_CREATE, MODE_WRITE);
    403         if (fd2 < 0) {
     402        rc = vfs_lookup_open(dest, WALK_REGULAR | WALK_MAY_CREATE, MODE_WRITE, &fd2);
     403        if (rc != EOK) {
    404404                printf("Unable to open destination file %s\n", dest);
    405405                vfs_put(fd1);
  • uspace/app/bdsh/cmds/modules/mkfile/mkfile.c

    rc1694b6b rf77c1c9  
    163163        file_name = argv[optind];
    164164
    165         fd = vfs_lookup_open(file_name, WALK_REGULAR | WALK_MUST_CREATE, MODE_WRITE);
    166         if (fd < 0) {
     165        rc = vfs_lookup_open(file_name, WALK_REGULAR | WALK_MUST_CREATE, MODE_WRITE, &fd);
     166        if (rc != EOK) {
    167167                printf("%s: failed to create file %s.\n", cmdname, file_name);
    168168                return CMD_FAILURE;
  • uspace/app/bdsh/cmds/modules/rm/rm.c

    rc1694b6b rf77c1c9  
    149149        }
    150150
    151         fd = vfs_lookup(path, WALK_REGULAR);
    152         if (fd >= 0) {
     151        if (vfs_lookup(path, WALK_REGULAR, &fd) == EOK) {
    153152                vfs_put(fd);
    154153                return RM_FILE;
  • uspace/app/bdsh/cmds/modules/touch/touch.c

    rc1694b6b rf77c1c9  
    123123                if ((!no_create) ||
    124124                    ((no_create) && (vfs_stat_path(buff, &file_stat) == EOK))) {
    125                         fd = vfs_lookup(buff, WALK_REGULAR | WALK_MAY_CREATE);
     125                        int rc = vfs_lookup(buff, WALK_REGULAR | WALK_MAY_CREATE, &fd);
     126                        if (rc != EOK) {
     127                                fd = -1;
     128                        }
    126129                }
    127130               
  • uspace/app/bdsh/exec.c

    rc1694b6b rf77c1c9  
    5858        int fd;
    5959
    60         fd = vfs_lookup_open(f, WALK_REGULAR, MODE_READ);
    61         if (fd >= 0) {
     60        int rc = vfs_lookup_open(f, WALK_REGULAR, MODE_READ, &fd);
     61        if (rc == EOK) {
    6262                vfs_put(fd);
    6363                return 0;
  • uspace/app/getterm/getterm.c

    rc1694b6b rf77c1c9  
    6565        *stream = NULL;
    6666       
    67         int oldfd = vfs_lookup_open(path, WALK_REGULAR, mode);
    68         if (oldfd < 0)
     67        int oldfd;
     68        int rc = vfs_lookup_open(path, WALK_REGULAR, mode, &oldfd);
     69        if (rc != EOK)
    6970                return;
    7071       
    7172        if (oldfd != fd) {
    72                 if (vfs_clone(oldfd, fd, false) != fd)
     73                int newfd;
     74                if (vfs_clone(oldfd, fd, false, &newfd) != EOK)
    7375                        return;
    7476               
     77                assert(newfd == fd);
     78
    7579                if (vfs_put(oldfd))
    7680                        return;
  • uspace/app/redir/redir.c

    rc1694b6b rf77c1c9  
    5959        *stream = NULL;
    6060       
    61         int oldfd = vfs_lookup_open(path, WALK_REGULAR | flags, mode);
    62         if (oldfd < 0)
     61        int oldfd;
     62        int rc = vfs_lookup_open(path, WALK_REGULAR | flags, mode, &oldfd);
     63        if (rc != EOK)
    6364                return;
    6465       
    6566        if (oldfd != fd) {
    66                 if (vfs_clone(oldfd, fd, false) != fd)
     67                int newfd;
     68                if (vfs_clone(oldfd, fd, false, &newfd) != EOK)
    6769                        return;
    6870               
     71                assert(newfd == fd);
     72
    6973                if (vfs_put(oldfd))
    7074                        return;
  • uspace/app/sysinst/futil.c

    rc1694b6b rf77c1c9  
    6363        printf("Copy '%s' to '%s'.\n", srcp, destp);
    6464
    65         sf = vfs_lookup_open(srcp, WALK_REGULAR, MODE_READ);
    66         if (sf < 0)
    67                 return EIO;
    68 
    69         df = vfs_lookup_open(destp, WALK_REGULAR | WALK_MAY_CREATE, MODE_WRITE);
    70         if (df < 0)
     65        rc = vfs_lookup_open(srcp, WALK_REGULAR, MODE_READ, &sf);
     66        if (rc != EOK)
     67                return EIO;
     68
     69        rc = vfs_lookup_open(destp, WALK_REGULAR | WALK_MAY_CREATE, MODE_WRITE, &df);
     70        if (rc != EOK)
    7171                return EIO;
    7272
     
    8787
    8888        rc = vfs_put(df);
    89         if (rc < 0)
     89        if (rc != EOK)
    9090                return EIO;
    9191
     
    167167        struct stat st;
    168168
    169         sf = vfs_lookup_open(srcp, WALK_REGULAR, MODE_READ);
    170         if (sf < 0)
     169        rc = vfs_lookup_open(srcp, WALK_REGULAR, MODE_READ, &sf);
     170        if (rc != EOK)
    171171                return ENOENT;
    172172
  • uspace/app/taskdump/elf_core.c

    rc1694b6b rf77c1c9  
    123123        }
    124124
    125         fd = vfs_lookup_open(file_name, WALK_REGULAR | WALK_MAY_CREATE,
    126             MODE_WRITE);
    127         if (fd < 0) {
    128                 printf("Failed opening file.\n");
     125        rc = vfs_lookup_open(file_name, WALK_REGULAR | WALK_MAY_CREATE,
     126            MODE_WRITE, &fd);
     127        if (rc != EOK) {
     128                printf("Failed opening file '%s': %s.\n", file_name, str_error(rc));
    129129                free(p_hdr);
    130130                return ENOENT;
  • uspace/app/taskdump/symtab.c

    rc1694b6b rf77c1c9  
    8282                return ENOMEM;
    8383
    84         fd = vfs_lookup_open(file_name, WALK_REGULAR, MODE_READ);
    85         if (fd < 0) {
    86                 printf("failed opening file\n");
     84        rc = vfs_lookup_open(file_name, WALK_REGULAR, MODE_READ, &fd);
     85        if (rc != EOK) {
     86                printf("failed opening file '%s': %s\n", file_name, str_error(rc));
    8787                free(stab);
    8888                return ENOENT;
  • uspace/app/tester/mm/pager1.c

    rc1694b6b rf77c1c9  
    4949        TPRINTF("Creating temporary file...\n");
    5050
    51         fd = vfs_lookup_open(TEST_FILE, WALK_REGULAR | WALK_MAY_CREATE,
    52             MODE_READ | MODE_WRITE);
    53         if (fd < 0)
     51        rc = vfs_lookup_open(TEST_FILE, WALK_REGULAR | WALK_MAY_CREATE,
     52            MODE_READ | MODE_WRITE, &fd);
     53        if (rc != EOK)
    5454                return NULL;
    5555        (void) vfs_unlink_path(TEST_FILE);
  • uspace/app/tester/vfs/vfs1.c

    rc1694b6b rf77c1c9  
    7373        rc = vfs_link_path(TEST_DIRECTORY, KIND_DIRECTORY, NULL);
    7474        if (rc != EOK) {
    75                 TPRINTF("rc=%d\n", rc);
     75                TPRINTF("rc=%s\n", str_error_name(rc));
    7676                return "vfs_link_path() failed";
    7777        }
    7878        TPRINTF("Created directory %s\n", TEST_DIRECTORY);
    7979       
    80         int fd0 = vfs_lookup_open(TEST_FILE, WALK_REGULAR | WALK_MAY_CREATE,
    81             MODE_READ | MODE_WRITE);
    82         if (fd0 < 0)
     80        int fd0;
     81        rc = vfs_lookup_open(TEST_FILE, WALK_REGULAR | WALK_MAY_CREATE,
     82            MODE_READ | MODE_WRITE, &fd0);
     83        if (rc != EOK)
    8384                return "vfs_lookup_open() failed";
    8485        TPRINTF("Created file %s (fd=%d)\n", TEST_FILE, fd0);
  • uspace/app/viewer/viewer.c

    rc1694b6b rf77c1c9  
    109109static bool img_load(const char *fname, surface_t **p_local_surface)
    110110{
    111         int fd = vfs_lookup_open(fname, WALK_REGULAR, MODE_READ);
    112         if (fd < 0)
     111        int fd;
     112        int rc = vfs_lookup_open(fname, WALK_REGULAR, MODE_READ, &fd);
     113        if (rc != EOK)
    113114                return false;
    114115       
    115116        struct stat stat;
    116         int rc = vfs_stat(fd, &stat);
     117        rc = vfs_stat(fd, &stat);
    117118        if (rc != EOK) {
    118119                vfs_put(fd);
  • uspace/app/websrv/websrv.c

    rc1694b6b rf77c1c9  
    265265        }
    266266       
    267         fd = vfs_lookup_open(fname, WALK_REGULAR, MODE_READ);
    268         if (fd < 0) {
     267        rc = vfs_lookup_open(fname, WALK_REGULAR, MODE_READ, &fd);
     268        if (rc != EOK) {
    269269                rc = send_response(conn, msg_not_found);
    270270                goto out;
Note: See TracChangeset for help on using the changeset viewer.