mirror of
https://git.savannah.gnu.org/git/tar.git
synced 2026-04-23 18:10:43 +00:00
Prefer idx_t to size_t in xheader.c
* src/xheader.c (x_obstack_grow, x_obstack_blank) (xheader_format_name, xheader_ghdr_name, xheader_write) (struct xhdr_tab, locate_handler, decode_record, decx, decg) (xheader_read, xattr_encode_keyword, xheader_print_n) (xheader_string_end, dummy_decoder, atime_decoder, gid_decoder) (gname_decoder, linkpath_decoder, ctime_decoder, mtime_decoder) (path_decoder, sparse_path_decoder, size_decoder, uid_decoder) (uname_decoder, sparse_size_decoder, sparse_numblocks_decoder) (sparse_offset_coder, sparse_offset_decoder) (sparse_numbytes_coder, sparse_numbytes_decoder) (sparse_map_decoder, dumpdir_decoder, volume_label_decoder) (volume_size_decoder, volume_offset_decoder) (volume_filename_decoder, xattr_selinux_decoder) (xattr_acls_a_decoder, xattr_acls_d_decoder, xattr_coder) (xattr_decoder, sparse_major_decoder, sparse_minor_decoder): Prefer idx_t to size_t.
This commit is contained in:
196
src/xheader.c
196
src/xheader.c
@@ -52,7 +52,7 @@ static intmax_t global_header_count;
|
||||
/* Interface functions to obstacks */
|
||||
|
||||
static void
|
||||
x_obstack_grow (struct xheader *xhdr, const char *ptr, size_t length)
|
||||
x_obstack_grow (struct xheader *xhdr, const char *ptr, idx_t length)
|
||||
{
|
||||
obstack_grow (xhdr->stk, ptr, length);
|
||||
xhdr->size += length;
|
||||
@@ -66,7 +66,7 @@ x_obstack_1grow (struct xheader *xhdr, char c)
|
||||
}
|
||||
|
||||
static void
|
||||
x_obstack_blank (struct xheader *xhdr, size_t length)
|
||||
x_obstack_blank (struct xheader *xhdr, idx_t length)
|
||||
{
|
||||
obstack_blank (xhdr->stk, length);
|
||||
xhdr->size += length;
|
||||
@@ -257,7 +257,6 @@ char *
|
||||
xheader_format_name (struct tar_stat_info *st, const char *fmt, intmax_t n)
|
||||
{
|
||||
char *buf;
|
||||
size_t len;
|
||||
char *q;
|
||||
const char *p;
|
||||
char *dirp = NULL;
|
||||
@@ -268,7 +267,7 @@ xheader_format_name (struct tar_stat_info *st, const char *fmt, intmax_t n)
|
||||
char nbuf[INTMAX_STRSIZE_BOUND];
|
||||
char const *nptr = NULL;
|
||||
|
||||
len = 0;
|
||||
idx_t len = 0;
|
||||
for (p = fmt; *p; p++)
|
||||
{
|
||||
if (*p == '%' && p[1])
|
||||
@@ -399,16 +398,16 @@ xheader_ghdr_name (void)
|
||||
{
|
||||
if (!globexthdr_name)
|
||||
{
|
||||
size_t len;
|
||||
const char *global_header_template
|
||||
= header_template[pax_global_header][posixly_correct];
|
||||
const char *tmp = getenv ("TMPDIR");
|
||||
if (!tmp)
|
||||
tmp = "/tmp";
|
||||
len = strlen (tmp) + strlen (global_header_template) + 1;
|
||||
globexthdr_name = xmalloc (len);
|
||||
strcpy(globexthdr_name, tmp);
|
||||
strcat(globexthdr_name, global_header_template);
|
||||
idx_t tmplen = strlen (tmp);
|
||||
idx_t templatesize = strlen (global_header_template) + 1;
|
||||
globexthdr_name = ximalloc (tmplen + templatesize);
|
||||
char *p = mempcpy (globexthdr_name, tmp, tmplen);
|
||||
memcpy (p, global_header_template, templatesize);
|
||||
}
|
||||
|
||||
return xheader_format_name (NULL, globexthdr_name, global_header_count + 1);
|
||||
@@ -417,11 +416,7 @@ xheader_ghdr_name (void)
|
||||
void
|
||||
xheader_write (char type, char *name, time_t t, struct xheader *xhdr)
|
||||
{
|
||||
union block *header;
|
||||
size_t size;
|
||||
char *p;
|
||||
|
||||
size = xhdr->size;
|
||||
idx_t size = xhdr->size;
|
||||
switch (type)
|
||||
{
|
||||
case XGLTYPE:
|
||||
@@ -434,21 +429,17 @@ xheader_write (char type, char *name, time_t t, struct xheader *xhdr)
|
||||
t = exthdr_mtime;
|
||||
break;
|
||||
}
|
||||
header = start_private_header (name, size, t);
|
||||
union block *header = start_private_header (name, size, t);
|
||||
header->header.typeflag = type;
|
||||
|
||||
simple_finish_header (header);
|
||||
|
||||
p = xhdr->buffer;
|
||||
char *p = xhdr->buffer;
|
||||
|
||||
do
|
||||
{
|
||||
size_t len;
|
||||
|
||||
header = find_next_block ();
|
||||
len = BLOCKSIZE;
|
||||
if (len > size)
|
||||
len = size;
|
||||
idx_t len = min (size, BLOCKSIZE);
|
||||
memcpy (header->buffer, p, len);
|
||||
if (len < BLOCKSIZE)
|
||||
memset (header->buffer + len, 0, BLOCKSIZE - len);
|
||||
@@ -544,7 +535,7 @@ struct xhdr_tab
|
||||
char const *keyword;
|
||||
void (*coder) (struct tar_stat_info const *, char const *,
|
||||
struct xheader *, void const *data);
|
||||
void (*decoder) (struct tar_stat_info *, char const *, char const *, size_t);
|
||||
void (*decoder) (struct tar_stat_info *, char const *, char const *, idx_t);
|
||||
int flags;
|
||||
bool prefix; /* select handler comparing prefix only */
|
||||
};
|
||||
@@ -564,7 +555,7 @@ locate_handler (char const *keyword)
|
||||
for (p = xhdr_tab; p->keyword; p++)
|
||||
if (p->prefix)
|
||||
{
|
||||
size_t kwlen = strlen (p->keyword);
|
||||
idx_t kwlen = strlen (p->keyword);
|
||||
if (strncmp (p->keyword, keyword, kwlen) == 0 && keyword[kwlen] == '.')
|
||||
return p;
|
||||
}
|
||||
@@ -606,7 +597,7 @@ xheader_protected_keyword_p (const char *keyword)
|
||||
static bool
|
||||
decode_record (struct xheader *xhdr,
|
||||
char **ptr,
|
||||
void (*handler) (void *, char const *, char const *, size_t),
|
||||
void (*handler) (void *, char const *, char const *, idx_t),
|
||||
void *data)
|
||||
{
|
||||
char *start = *ptr;
|
||||
@@ -684,7 +675,7 @@ run_override_list (struct keyword_list *kp, struct tar_stat_info *st)
|
||||
}
|
||||
|
||||
static void
|
||||
decx (void *data, char const *keyword, char const *value, size_t size)
|
||||
decx (void *data, char const *keyword, char const *value, idx_t size)
|
||||
{
|
||||
struct xhdr_tab const *t;
|
||||
struct tar_stat_info *st = data;
|
||||
@@ -729,7 +720,7 @@ xheader_decode (struct tar_stat_info *st)
|
||||
|
||||
static void
|
||||
decg (void *data, char const *keyword, char const *value,
|
||||
MAYBE_UNUSED size_t size)
|
||||
MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
struct keyword_list **kwl = data;
|
||||
struct xhdr_tab const *tab = locate_handler (keyword);
|
||||
@@ -783,12 +774,12 @@ xheader_store (char const *keyword, struct tar_stat_info *st,
|
||||
void
|
||||
xheader_read (struct xheader *xhdr, union block *p, off_t size)
|
||||
{
|
||||
size_t j = 0;
|
||||
idx_t j = 0;
|
||||
|
||||
if (size < 0)
|
||||
size = 0; /* Already diagnosed. */
|
||||
|
||||
size_t size_plus_1;
|
||||
idx_t size_plus_1;
|
||||
if (ckd_add (&size_plus_1, size, BLOCKSIZE + 1))
|
||||
xalloc_die ();
|
||||
size = size_plus_1 - 1;
|
||||
@@ -799,14 +790,10 @@ xheader_read (struct xheader *xhdr, union block *p, off_t size)
|
||||
|
||||
do
|
||||
{
|
||||
size_t len = size;
|
||||
|
||||
if (len > BLOCKSIZE)
|
||||
len = BLOCKSIZE;
|
||||
|
||||
if (!p)
|
||||
paxfatal (0, _("Unexpected EOF in archive"));
|
||||
|
||||
idx_t len = min (size, BLOCKSIZE);
|
||||
memcpy (&xhdr->buffer[j], p->buffer, len);
|
||||
set_next_block_after (p);
|
||||
|
||||
@@ -828,66 +815,55 @@ xheader_read (struct xheader *xhdr, union block *p, off_t size)
|
||||
(http://lists.gnu.org/archive/html/bug-tar/2012-10/msg00017.html)
|
||||
*/
|
||||
static char *
|
||||
xattr_encode_keyword(const char *keyword)
|
||||
xattr_encode_keyword (char const *keyword)
|
||||
{
|
||||
static char *encode_buffer = NULL;
|
||||
static size_t encode_buffer_size = 0;
|
||||
size_t bp; /* keyword/buffer pointers */
|
||||
static idx_t encode_buffer_size = 0;
|
||||
|
||||
if (!encode_buffer)
|
||||
for (idx_t bp = 0; ; )
|
||||
{
|
||||
encode_buffer_size = 256;
|
||||
encode_buffer = xmalloc (encode_buffer_size);
|
||||
if (encode_buffer_size < bp + 3 /* enough for URL encoding also.. */)
|
||||
encode_buffer = xpalloc (encode_buffer, &encode_buffer_size, 3, -1, 1);
|
||||
|
||||
char c = *keyword++;
|
||||
switch (c)
|
||||
{
|
||||
case '%':
|
||||
memcpy (encode_buffer + bp, "%25", 3);
|
||||
bp += 3;
|
||||
break;
|
||||
|
||||
case '=':
|
||||
memcpy (encode_buffer + bp, "%3D", 3);
|
||||
bp += 3;
|
||||
break;
|
||||
|
||||
default:
|
||||
encode_buffer[bp++] = c;
|
||||
if (!c)
|
||||
return encode_buffer;
|
||||
break;
|
||||
}
|
||||
}
|
||||
else
|
||||
*encode_buffer = 0;
|
||||
|
||||
for (bp = 0; *keyword != 0; ++bp, ++keyword)
|
||||
{
|
||||
char c = *keyword;
|
||||
|
||||
if (bp + 3 /* enough for URL encoding also.. */ >= encode_buffer_size)
|
||||
{
|
||||
encode_buffer = x2realloc (encode_buffer, &encode_buffer_size);
|
||||
}
|
||||
|
||||
if (c == '%')
|
||||
{
|
||||
strcpy (encode_buffer + bp, "%25");
|
||||
bp += 2;
|
||||
}
|
||||
else if (c == '=')
|
||||
{
|
||||
strcpy (encode_buffer + bp, "%3D");
|
||||
bp += 2;
|
||||
}
|
||||
else
|
||||
encode_buffer[bp] = c;
|
||||
}
|
||||
|
||||
encode_buffer[bp] = 0;
|
||||
|
||||
return encode_buffer;
|
||||
}
|
||||
|
||||
static void
|
||||
xheader_print_n (struct xheader *xhdr, char const *keyword,
|
||||
char const *value, size_t vsize)
|
||||
char const *value, idx_t vsize)
|
||||
{
|
||||
size_t p;
|
||||
size_t n = 0;
|
||||
char nbuf[UINTMAX_STRSIZE_BOUND];
|
||||
idx_t p;
|
||||
idx_t n = 0;
|
||||
char nbuf[INTMAX_STRSIZE_BOUND];
|
||||
char const *np;
|
||||
size_t len, klen;
|
||||
|
||||
keyword = xattr_encode_keyword (keyword);
|
||||
klen = strlen (keyword);
|
||||
len = klen + vsize + 3; /* ' ' + '=' + '\n' */
|
||||
idx_t klen = strlen (keyword);
|
||||
idx_t len = klen + vsize + 3; /* ' ' + '=' + '\n' */
|
||||
|
||||
do
|
||||
{
|
||||
p = n;
|
||||
np = umaxtostr (len + p, nbuf);
|
||||
np = imaxtostr (len + p, nbuf);
|
||||
n = nbuf + sizeof nbuf - 1 - np;
|
||||
}
|
||||
while (n != p);
|
||||
@@ -957,7 +933,6 @@ xheader_string_end (struct xheader *xhdr, char const *keyword)
|
||||
uintmax_t len;
|
||||
uintmax_t p;
|
||||
uintmax_t n = 0;
|
||||
size_t size;
|
||||
char nbuf[UINTMAX_STRSIZE_BOUND];
|
||||
char const *np;
|
||||
char *cp;
|
||||
@@ -977,7 +952,7 @@ xheader_string_end (struct xheader *xhdr, char const *keyword)
|
||||
while (n != p);
|
||||
|
||||
p = strlen (keyword) + n + 2;
|
||||
size = p;
|
||||
idx_t size = p;
|
||||
if (size != p)
|
||||
{
|
||||
paxerror (0,
|
||||
@@ -1136,7 +1111,7 @@ static void
|
||||
dummy_decoder (MAYBE_UNUSED struct tar_stat_info *st,
|
||||
MAYBE_UNUSED char const *keyword,
|
||||
MAYBE_UNUSED char const *arg,
|
||||
MAYBE_UNUSED size_t size)
|
||||
MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -1151,7 +1126,7 @@ static void
|
||||
atime_decoder (struct tar_stat_info *st,
|
||||
char const *keyword,
|
||||
char const *arg,
|
||||
MAYBE_UNUSED size_t size)
|
||||
MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
struct timespec ts;
|
||||
if (decode_time (&ts, arg, keyword))
|
||||
@@ -1170,7 +1145,7 @@ static void
|
||||
gid_decoder (struct tar_stat_info *st,
|
||||
char const *keyword,
|
||||
char const *arg,
|
||||
MAYBE_UNUSED size_t size)
|
||||
MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
intmax_t u;
|
||||
if (decode_signed_num (&u, arg, TYPE_MINIMUM (gid_t),
|
||||
@@ -1189,7 +1164,7 @@ static void
|
||||
gname_decoder (struct tar_stat_info *st,
|
||||
MAYBE_UNUSED char const *keyword,
|
||||
char const *arg,
|
||||
MAYBE_UNUSED size_t size)
|
||||
MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
decode_string (&st->gname, arg);
|
||||
}
|
||||
@@ -1205,7 +1180,7 @@ static void
|
||||
linkpath_decoder (struct tar_stat_info *st,
|
||||
MAYBE_UNUSED char const *keyword,
|
||||
char const *arg,
|
||||
MAYBE_UNUSED size_t size)
|
||||
MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
decode_string (&st->link_name, arg);
|
||||
}
|
||||
@@ -1221,7 +1196,7 @@ static void
|
||||
ctime_decoder (struct tar_stat_info *st,
|
||||
char const *keyword,
|
||||
char const *arg,
|
||||
MAYBE_UNUSED size_t size)
|
||||
MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
struct timespec ts;
|
||||
if (decode_time (&ts, arg, keyword))
|
||||
@@ -1240,7 +1215,7 @@ static void
|
||||
mtime_decoder (struct tar_stat_info *st,
|
||||
char const *keyword,
|
||||
char const *arg,
|
||||
MAYBE_UNUSED size_t size)
|
||||
MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
struct timespec ts;
|
||||
if (decode_time (&ts, arg, keyword))
|
||||
@@ -1270,7 +1245,7 @@ static void
|
||||
path_decoder (struct tar_stat_info *st,
|
||||
MAYBE_UNUSED char const *keyword,
|
||||
char const *arg,
|
||||
MAYBE_UNUSED size_t size)
|
||||
MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
if (! st->sparse_name_done)
|
||||
raw_path_decoder (st, arg);
|
||||
@@ -1280,7 +1255,7 @@ static void
|
||||
sparse_path_decoder (struct tar_stat_info *st,
|
||||
MAYBE_UNUSED char const *keyword,
|
||||
char const *arg,
|
||||
MAYBE_UNUSED size_t size)
|
||||
MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
st->sparse_name_done = true;
|
||||
raw_path_decoder (st, arg);
|
||||
@@ -1297,7 +1272,7 @@ static void
|
||||
size_decoder (struct tar_stat_info *st,
|
||||
char const *keyword,
|
||||
char const *arg,
|
||||
MAYBE_UNUSED size_t size)
|
||||
MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
uintmax_t u;
|
||||
if (decode_num (&u, arg, TYPE_MAXIMUM (off_t), keyword))
|
||||
@@ -1316,7 +1291,7 @@ static void
|
||||
uid_decoder (struct tar_stat_info *st,
|
||||
char const *keyword,
|
||||
char const *arg,
|
||||
MAYBE_UNUSED size_t size)
|
||||
MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
intmax_t u;
|
||||
if (decode_signed_num (&u, arg, TYPE_MINIMUM (uid_t),
|
||||
@@ -1335,7 +1310,7 @@ static void
|
||||
uname_decoder (struct tar_stat_info *st,
|
||||
MAYBE_UNUSED char const *keyword,
|
||||
char const *arg,
|
||||
MAYBE_UNUSED size_t size)
|
||||
MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
decode_string (&st->uname, arg);
|
||||
}
|
||||
@@ -1351,7 +1326,7 @@ static void
|
||||
sparse_size_decoder (struct tar_stat_info *st,
|
||||
char const *keyword,
|
||||
char const *arg,
|
||||
MAYBE_UNUSED size_t size)
|
||||
MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
uintmax_t u;
|
||||
if (decode_num (&u, arg, TYPE_MAXIMUM (off_t), keyword))
|
||||
@@ -1373,7 +1348,7 @@ static void
|
||||
sparse_numblocks_decoder (struct tar_stat_info *st,
|
||||
char const *keyword,
|
||||
char const *arg,
|
||||
MAYBE_UNUSED size_t size)
|
||||
MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
uintmax_t u;
|
||||
if (decode_num (&u, arg, SIZE_MAX, keyword))
|
||||
@@ -1388,7 +1363,7 @@ static void
|
||||
sparse_offset_coder (struct tar_stat_info const *st, char const *keyword,
|
||||
struct xheader *xhdr, void const *data)
|
||||
{
|
||||
size_t const *pi = data;
|
||||
idx_t const *pi = data;
|
||||
code_num (st->sparse_map[*pi].offset, keyword, xhdr);
|
||||
}
|
||||
|
||||
@@ -1396,7 +1371,7 @@ static void
|
||||
sparse_offset_decoder (struct tar_stat_info *st,
|
||||
char const *keyword,
|
||||
char const *arg,
|
||||
MAYBE_UNUSED size_t size)
|
||||
MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
uintmax_t u;
|
||||
if (decode_num (&u, arg, TYPE_MAXIMUM (off_t), keyword))
|
||||
@@ -1413,7 +1388,7 @@ static void
|
||||
sparse_numbytes_coder (struct tar_stat_info const *st, char const *keyword,
|
||||
struct xheader *xhdr, void const *data)
|
||||
{
|
||||
size_t const *pi = data;
|
||||
idx_t const *pi = data;
|
||||
code_num (st->sparse_map[*pi].numbytes, keyword, xhdr);
|
||||
}
|
||||
|
||||
@@ -1421,7 +1396,7 @@ static void
|
||||
sparse_numbytes_decoder (struct tar_stat_info *st,
|
||||
char const *keyword,
|
||||
char const *arg,
|
||||
MAYBE_UNUSED size_t size)
|
||||
MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
uintmax_t u;
|
||||
if (decode_num (&u, arg, TYPE_MAXIMUM (off_t), keyword))
|
||||
@@ -1438,7 +1413,7 @@ static void
|
||||
sparse_map_decoder (struct tar_stat_info *st,
|
||||
char const *keyword,
|
||||
char const *arg,
|
||||
MAYBE_UNUSED size_t size)
|
||||
MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
bool offset = true;
|
||||
struct sp_array e;
|
||||
@@ -1517,9 +1492,9 @@ static void
|
||||
dumpdir_decoder (struct tar_stat_info *st,
|
||||
MAYBE_UNUSED char const *keyword,
|
||||
char const *arg,
|
||||
size_t size)
|
||||
idx_t size)
|
||||
{
|
||||
st->dumpdir = xmalloc (size);
|
||||
st->dumpdir = ximalloc (size);
|
||||
memcpy (st->dumpdir, arg, size);
|
||||
}
|
||||
|
||||
@@ -1535,7 +1510,7 @@ static void
|
||||
volume_label_decoder (MAYBE_UNUSED struct tar_stat_info *st,
|
||||
MAYBE_UNUSED char const *keyword,
|
||||
char const *arg,
|
||||
MAYBE_UNUSED size_t size)
|
||||
MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
decode_string (&volume_label, arg);
|
||||
}
|
||||
@@ -1552,7 +1527,7 @@ volume_size_coder (MAYBE_UNUSED struct tar_stat_info const *st,
|
||||
static void
|
||||
volume_size_decoder (MAYBE_UNUSED struct tar_stat_info *st,
|
||||
char const *keyword,
|
||||
char const *arg, MAYBE_UNUSED size_t size)
|
||||
char const *arg, MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
uintmax_t u;
|
||||
if (decode_num (&u, arg, TYPE_MAXIMUM (uintmax_t), keyword))
|
||||
@@ -1572,7 +1547,7 @@ volume_offset_coder (MAYBE_UNUSED struct tar_stat_info const *st,
|
||||
static void
|
||||
volume_offset_decoder (MAYBE_UNUSED struct tar_stat_info *st,
|
||||
char const *keyword,
|
||||
char const *arg, MAYBE_UNUSED size_t size)
|
||||
char const *arg, MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
uintmax_t u;
|
||||
if (decode_num (&u, arg, TYPE_MAXIMUM (uintmax_t), keyword))
|
||||
@@ -1583,7 +1558,7 @@ static void
|
||||
volume_filename_decoder (MAYBE_UNUSED struct tar_stat_info *st,
|
||||
MAYBE_UNUSED char const *keyword,
|
||||
char const *arg,
|
||||
MAYBE_UNUSED size_t size)
|
||||
MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
decode_string (&continued_file_name, arg);
|
||||
}
|
||||
@@ -1598,7 +1573,7 @@ xattr_selinux_coder (struct tar_stat_info const *st, char const *keyword,
|
||||
static void
|
||||
xattr_selinux_decoder (struct tar_stat_info *st,
|
||||
MAYBE_UNUSED char const *keyword, char const *arg,
|
||||
MAYBE_UNUSED size_t size)
|
||||
MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
decode_string (&st->cntx_name, arg);
|
||||
}
|
||||
@@ -1613,7 +1588,7 @@ xattr_acls_a_coder (struct tar_stat_info const *st , char const *keyword,
|
||||
static void
|
||||
xattr_acls_a_decoder (struct tar_stat_info *st,
|
||||
MAYBE_UNUSED char const *keyword,
|
||||
char const *arg, size_t size)
|
||||
char const *arg, idx_t size)
|
||||
{
|
||||
st->acls_a_ptr = xmemdup (arg, size + 1);
|
||||
st->acls_a_len = size;
|
||||
@@ -1629,7 +1604,7 @@ xattr_acls_d_coder (struct tar_stat_info const *st , char const *keyword,
|
||||
static void
|
||||
xattr_acls_d_decoder (struct tar_stat_info *st,
|
||||
MAYBE_UNUSED char const *keyword, char const *arg,
|
||||
size_t size)
|
||||
idx_t size)
|
||||
{
|
||||
st->acls_d_ptr = xmemdup (arg, size + 1);
|
||||
st->acls_d_len = size;
|
||||
@@ -1639,7 +1614,8 @@ static void
|
||||
xattr_coder (struct tar_stat_info const *st, char const *keyword,
|
||||
struct xheader *xhdr, void const *data)
|
||||
{
|
||||
size_t n = *(size_t *)data;
|
||||
idx_t const *idx_data = data;
|
||||
idx_t n = *idx_data;
|
||||
xheader_print_n (xhdr, keyword,
|
||||
st->xattr_map.xm_map[n].xval_ptr,
|
||||
st->xattr_map.xm_map[n].xval_len);
|
||||
@@ -1647,7 +1623,7 @@ xattr_coder (struct tar_stat_info const *st, char const *keyword,
|
||||
|
||||
static void
|
||||
xattr_decoder (struct tar_stat_info *st,
|
||||
char const *keyword, char const *arg, size_t size)
|
||||
char const *keyword, char const *arg, idx_t size)
|
||||
{
|
||||
char *xkey;
|
||||
|
||||
@@ -1672,7 +1648,7 @@ static void
|
||||
sparse_major_decoder (struct tar_stat_info *st,
|
||||
char const *keyword,
|
||||
char const *arg,
|
||||
MAYBE_UNUSED size_t size)
|
||||
MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
uintmax_t u;
|
||||
if (decode_num (&u, arg, INTMAX_MAX, keyword))
|
||||
@@ -1690,7 +1666,7 @@ static void
|
||||
sparse_minor_decoder (struct tar_stat_info *st,
|
||||
char const *keyword,
|
||||
char const *arg,
|
||||
MAYBE_UNUSED size_t size)
|
||||
MAYBE_UNUSED idx_t size)
|
||||
{
|
||||
uintmax_t u;
|
||||
if (decode_num (&u, arg, INTMAX_MAX, keyword))
|
||||
|
||||
Reference in New Issue
Block a user