[BACK]Return to symlinks.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / rsync

Diff for /src/usr.bin/rsync/symlinks.c between version 1.3 and 1.4

version 1.3, 2019/02/11 21:41:22 version 1.4, 2019/05/08 20:00:25
Line 38 
Line 38 
   
         for (sz = MAXPATHLEN; ; sz *= 2) {          for (sz = MAXPATHLEN; ; sz *= 2) {
                 if ((pp = realloc(buf, sz + 1)) == NULL) {                  if ((pp = realloc(buf, sz + 1)) == NULL) {
                         ERR(sess, "realloc");                          ERR("realloc");
                         free(buf);                          free(buf);
                         return NULL;                          return NULL;
                 }                  }
                 buf = pp;                  buf = pp;
   
                 if ((nsz = readlink(path, buf, sz)) == -1) {                  if ((nsz = readlink(path, buf, sz)) == -1) {
                         ERR(sess, "%s: readlink", path);                          ERR("%s: readlink", path);
                         free(buf);                          free(buf);
                         return NULL;                          return NULL;
                 } else if (nsz == 0) {                  } else if (nsz == 0) {
                         ERRX(sess, "%s: empty link", path);                          ERRX("%s: empty link", path);
                         free(buf);                          free(buf);
                         return NULL;                          return NULL;
                 } else if ((size_t)nsz < sz)                  } else if ((size_t)nsz < sz)
Line 77 
Line 77 
   
         for (sz = MAXPATHLEN; ; sz *= 2) {          for (sz = MAXPATHLEN; ; sz *= 2) {
                 if ((pp = realloc(buf, sz + 1)) == NULL) {                  if ((pp = realloc(buf, sz + 1)) == NULL) {
                         ERR(sess, "realloc");                          ERR("realloc");
                         free(buf);                          free(buf);
                         return NULL;                          return NULL;
                 }                  }
                 buf = pp;                  buf = pp;
   
                 if ((nsz = readlinkat(fd, path, buf, sz)) == -1) {                  if ((nsz = readlinkat(fd, path, buf, sz)) == -1) {
                         ERR(sess, "%s: readlinkat", path);                          ERR("%s: readlinkat", path);
                         free(buf);                          free(buf);
                         return NULL;                          return NULL;
                 } else if (nsz == 0) {                  } else if (nsz == 0) {
                         ERRX(sess, "%s: empty link", path);                          ERRX("%s: empty link", path);
                         free(buf);                          free(buf);
                         return NULL;                          return NULL;
                 } else if ((size_t)nsz < sz)                  } else if ((size_t)nsz < sz)

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.4