Changeset a6fc88a in mainline for uspace/app


Ignore:
Timestamp:
2017-04-03T21:15:17Z (9 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
8fe46a0
Parents:
ea4a3f0
Message:

Let vfs_link() and vfs_link_path() return the linked file handle

Add an output argument to both vfs_link() and vfs_link_path() so that the
client may receive the file handle of the linked file or directory. This
makes it easy to work with the new file or directory as it is ready to be
opened or in case of a directory to use it as a parent for further
operations without the need for additional vfs_lookup().

Location:
uspace/app
Files:
6 edited

Legend:

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

    rea4a3f0 ra6fc88a  
    294294                                merge_paths(dest_path, PATH_MAX, src_dirname);
    295295
    296                                 if (vfs_link_path(dest_path, KIND_DIRECTORY) != EOK) {
     296                                if (vfs_link_path(dest_path, KIND_DIRECTORY,
     297                                    NULL) != EOK) {
    297298                                        printf("Unable to create "
    298299                                            "dest directory %s\n", dest_path);
     
    308309                         * e.g. cp -r /src /data/new_dir_src
    309310                         */
    310                         if (vfs_link_path(dest_path, KIND_DIRECTORY) != EOK) {
     311                        if (vfs_link_path(dest_path, KIND_DIRECTORY,
     312                            NULL) != EOK) {
    311313                                printf("Unable to create "
    312314                                    "dest directory %s\n", dest_path);
  • uspace/app/bdsh/cmds/modules/mkdir/mkdir.c

    rea4a3f0 ra6fc88a  
    9696
    9797        if (!create_parents) {
    98                 ret = vfs_link_path(path, KIND_DIRECTORY);
     98                ret = vfs_link_path(path, KIND_DIRECTORY, NULL);
    9999                if (ret != EOK) {
    100100                        cli_error(CL_EFAIL, "%s: could not create %s (%s)",
     
    135135                        path[prev_off] = 0;
    136136
    137                         ret = vfs_link_path(path, KIND_DIRECTORY);
     137                        ret = vfs_link_path(path, KIND_DIRECTORY, NULL);
    138138                        if (ret != EOK && ret != EEXIST) {
    139139                                cli_error(CL_EFAIL, "%s: could not create %s (%s)",
     
    146146                }
    147147                /* Create the final directory. */
    148                 ret = vfs_link_path(path, KIND_DIRECTORY);
     148                ret = vfs_link_path(path, KIND_DIRECTORY, NULL);
    149149                if (ret != EOK) {
    150150                        cli_error(CL_EFAIL, "%s: could not create %s (%s)",
  • uspace/app/sysinst/futil.c

    rea4a3f0 ra6fc88a  
    128128                } else if (s.is_directory) {
    129129                        printf("Create directory '%s'\n", destp);
    130                         rc = vfs_link_path(destp, KIND_DIRECTORY);
     130                        rc = vfs_link_path(destp, KIND_DIRECTORY, NULL);
    131131                        if (rc != EOK)
    132132                                return EIO;
  • uspace/app/sysinst/sysinst.c

    rea4a3f0 ra6fc88a  
    174174                return EIO;
    175175
    176         rc = vfs_link_path(MOUNT_POINT, KIND_DIRECTORY);
     176        rc = vfs_link_path(MOUNT_POINT, KIND_DIRECTORY, NULL);
    177177        if (rc != EOK)
    178178                return rc;
     
    213213
    214214        printf("sysinst_copy_boot_files(): create CD mount point\n");
    215         rc = vfs_link_path(CD_MOUNT_POINT, KIND_DIRECTORY);
     215        rc = vfs_link_path(CD_MOUNT_POINT, KIND_DIRECTORY, NULL);
    216216        if (rc != EOK)
    217217                return rc;
  • uspace/app/tester/vfs/vfs1.c

    rea4a3f0 ra6fc88a  
    7171        int rc;
    7272
    73         rc = vfs_link_path(TEST_DIRECTORY, KIND_DIRECTORY);
     73        rc = vfs_link_path(TEST_DIRECTORY, KIND_DIRECTORY, NULL);
    7474        if (rc != EOK) {
    7575                TPRINTF("rc=%d\n", rc);
  • uspace/app/untar/main.c

    rea4a3f0 ra6fc88a  
    105105        int rc;
    106106
    107         rc = vfs_link_path(header->filename, KIND_DIRECTORY);
     107        rc = vfs_link_path(header->filename, KIND_DIRECTORY, NULL);
    108108        if (rc != EOK) {
    109109                if (rc != EEXIST) {
Note: See TracChangeset for help on using the changeset viewer.