Ignore:
File:
1 edited

Legend:

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

    r39330200 r8e3498b  
    2828
    2929#include <errno.h>
    30 #include <str_error.h>
    3130#include <stdio.h>
    3231#include <stdlib.h>
     
    8079static dentry_type_t get_type(const char *path)
    8180{
    82         vfs_stat_t s;
    83 
    84         errno_t r = vfs_stat_path(path, &s);
     81        struct stat s;
     82
     83        int r = vfs_stat_path(path, &s);
    8584
    8685        if (r != EOK)
     
    176175}
    177176
    178 static errno_t do_copy(const char *src, const char *dest,
     177static int do_copy(const char *src, const char *dest,
    179178    size_t blen, int vb, int recursive, int force, int interactive)
    180179{
    181         errno_t rc = EOK;
     180        int rc = EOK;
    182181        char dest_path[PATH_MAX];
    183182        char src_path[PATH_MAX];
     
    266265
    267266                /* call copy_file and exit */
    268                 if (copy_file(src, dest_path, blen, vb) < 0) {
    269                         rc = EIO;
    270                 }
     267                rc = (copy_file(src, dest_path, blen, vb) < 0);
    271268
    272269        } else if (src_type == TYPE_DIR) {
     
    340337                 */
    341338                while ((dp = readdir(dir))) {
    342                         vfs_stat_t src_s;
    343                         vfs_stat_t dest_s;
     339                        struct stat src_s;
     340                        struct stat dest_s;
    344341
    345342                        char src_dent[PATH_MAX];
     
    388385        int fd1, fd2;
    389386        size_t rbytes, wbytes;
    390         errno_t rc;
     387        int rc;
    391388        off64_t total;
    392389        char *buff = NULL;
    393390        aoff64_t posr = 0, posw = 0;
    394         vfs_stat_t st;
     391        struct stat st;
    395392
    396393        if (vb)
    397394                printf("Copying %s to %s\n", src, dest);
    398395
    399         rc = vfs_lookup_open(src, WALK_REGULAR, MODE_READ, &fd1);
    400         if (rc != EOK) {
     396        fd1 = vfs_lookup_open(src, WALK_REGULAR, MODE_READ);
     397        if (fd1 < 0) {
    401398                printf("Unable to open source file %s\n", src);
    402399                return -1;
    403400        }
    404401
    405         rc = vfs_lookup_open(dest, WALK_REGULAR | WALK_MAY_CREATE, MODE_WRITE, &fd2);
    406         if (rc != EOK) {
     402        fd2 = vfs_lookup_open(dest, WALK_REGULAR | WALK_MAY_CREATE, MODE_WRITE);
     403        if (fd2 < 0) {
    407404                printf("Unable to open destination file %s\n", dest);
    408405                vfs_put(fd1);
     
    435432
    436433        if (rc != EOK) {
    437                 printf("\nError copying %s: %s\n", src, str_error(rc));
    438                 return -1;
     434                printf("\nError copying %s, (%d)\n", src, rc);
     435                return rc;
    439436        }
    440437
     
    444441        if (buff)
    445442                free(buff);
    446         if (rc != EOK) {
    447                 return -1;
    448         } else {
    449                 return 0;
    450         }
     443        return rc;
    451444}
    452445
     
    479472        int force = 0, interactive = 0;
    480473        int c, opt_ind;
    481         errno_t ret;
     474        int64_t ret;
    482475
    483476        con = console_init(stdin, stdout);
Note: See TracChangeset for help on using the changeset viewer.