Page MenuHomeFreeBSD

D46097.diff
No OneTemporary

D46097.diff

diff --git a/bin/pax/cpio.c b/bin/pax/cpio.c
--- a/bin/pax/cpio.c
+++ b/bin/pax/cpio.c
@@ -274,13 +274,13 @@
*/
if (cpio_id(buf, sizeof(HD_CPIO)) < 0)
return(-1);
+ memset(arcn, 0, sizeof *arcn);
hd = (HD_CPIO *)buf;
/*
* byte oriented cpio (posix) does not have padding! extract the octal
* ascii fields from the header
*/
- arcn->pad = 0L;
arcn->sb.st_dev = (dev_t)asc_ul(hd->c_dev, sizeof(hd->c_dev), OCT);
arcn->sb.st_ino = (ino_t)asc_ul(hd->c_ino, sizeof(hd->c_ino), OCT);
arcn->sb.st_mode = (mode_t)asc_ul(hd->c_mode, sizeof(hd->c_mode), OCT);
@@ -309,8 +309,6 @@
/*
* no link name to read for this file
*/
- arcn->ln_nlen = 0;
- arcn->ln_name[0] = '\0';
return(com_rd(arcn));
}
@@ -555,8 +553,8 @@
return(-1);
}
+ memset(arcn, 0, sizeof *arcn);
hd = (HD_VCPIO *)buf;
- arcn->pad = 0L;
/*
* extract the hex ascii fields from the header
@@ -603,8 +601,6 @@
/*
* we have a valid header (not a link)
*/
- arcn->ln_nlen = 0;
- arcn->ln_name[0] = '\0';
arcn->pad = VCPIO_PAD(arcn->sb.st_size);
return(com_rd(arcn));
}
@@ -851,7 +847,7 @@
if (bcpio_id(buf, sizeof(HD_BCPIO)) < 0)
return(-1);
- arcn->pad = 0L;
+ memset(arcn, 0, sizeof *arcn);
hd = (HD_BCPIO *)buf;
if (swp_head) {
/*
@@ -913,8 +909,6 @@
/*
* we have a valid header (not a link)
*/
- arcn->ln_nlen = 0;
- arcn->ln_name[0] = '\0';
arcn->pad = BCPIO_PAD(arcn->sb.st_size);
return(com_rd(arcn));
}
diff --git a/bin/pax/tar.c b/bin/pax/tar.c
--- a/bin/pax/tar.c
+++ b/bin/pax/tar.c
@@ -367,9 +367,9 @@
*/
if (tar_id(buf, BLKMULT) < 0)
return(-1);
+ memset(arcn, 0, sizeof *arcn);
arcn->org_name = arcn->name;
arcn->sb.st_nlink = 1;
- arcn->pat = NULL;
/*
* copy out the name and values in the stat buffer
@@ -396,8 +396,6 @@
* to encode this as a directory
*/
pt = &(arcn->name[arcn->nlen - 1]);
- arcn->pad = 0;
- arcn->skip = 0;
switch(hd->linkflag) {
case SYMTYPE:
/*
@@ -434,8 +432,6 @@
arcn->type = PAX_DIR;
arcn->sb.st_mode |= S_IFDIR;
arcn->sb.st_nlink = 2;
- arcn->ln_name[0] = '\0';
- arcn->ln_nlen = 0;
break;
case AREGTYPE:
case REGTYPE:
@@ -443,8 +439,6 @@
/*
* If we have a trailing / this is a directory and NOT a file.
*/
- arcn->ln_name[0] = '\0';
- arcn->ln_nlen = 0;
if (*pt == '/') {
/*
* it is a directory, set the mode for -v printing
@@ -721,10 +715,9 @@
*/
if (ustar_id(buf, BLKMULT) < 0)
return(-1);
+ memset(arcn, 0, sizeof *arcn);
arcn->org_name = arcn->name;
arcn->sb.st_nlink = 1;
- arcn->pat = NULL;
- arcn->nlen = 0;
hd = (HD_USTAR *)buf;
/*
@@ -771,15 +764,6 @@
if (uid_name(hd->uname, &(arcn->sb.st_uid)) < 0)
arcn->sb.st_uid = (uid_t)asc_ul(hd->uid, sizeof(hd->uid), OCT);
- /*
- * set the defaults, these may be changed depending on the file type
- */
- arcn->ln_name[0] = '\0';
- arcn->ln_nlen = 0;
- arcn->pad = 0;
- arcn->skip = 0;
- arcn->sb.st_rdev = (dev_t)0;
-
/*
* set the mode and PAX type according to the typeflag in the header
*/

File Metadata

Mime Type
text/plain
Expires
Thu, Nov 21, 1:57 AM (21 h, 29 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
14751958
Default Alt Text
D46097.diff (3 KB)

Event Timeline