- Rich Felker writes: fix invalid printf format strings
http://busybox.net/lists/busybox/2006-March/019568.html text data bss dec hex filename 900619 10316 1038724 1949659 1dbfdb busybox.oorig 900603 10316 1038724 1949643 1dbfcb busybox
This commit is contained in:
parent
abaef6565e
commit
d409c3a2f7
@ -400,7 +400,7 @@ static int do_statfs(char const *filename, char const *format)
|
|||||||
#else
|
#else
|
||||||
|
|
||||||
format = (flags & OPT_TERSE
|
format = (flags & OPT_TERSE
|
||||||
? "%s %Lx %lu "
|
? "%s %llx %lu "
|
||||||
: " File: \"%s\"\n"
|
: " File: \"%s\"\n"
|
||||||
" ID: %-8Lx Namelen: %-7lu ");
|
" ID: %-8Lx Namelen: %-7lu ");
|
||||||
printf(format,
|
printf(format,
|
||||||
|
@ -173,7 +173,7 @@ int main(int argc, char **argv)
|
|||||||
perror(argv[0]);
|
perror(argv[0]);
|
||||||
|
|
||||||
bytes = blkid_get_dev_size(fd);
|
bytes = blkid_get_dev_size(fd);
|
||||||
printf("Device %s has %Ld 1k blocks.\n", argv[1], bytes >> 10);
|
printf("Device %s has %lld 1k blocks.\n", argv[1], bytes >> 10);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -33,8 +33,8 @@ const char *make_human_readable_str(unsigned long long size,
|
|||||||
{
|
{
|
||||||
/* The code will adjust for additional (appended) units. */
|
/* The code will adjust for additional (appended) units. */
|
||||||
static const char zero_and_units[] = { '0', 0, 'k', 'M', 'G', 'T' };
|
static const char zero_and_units[] = { '0', 0, 'k', 'M', 'G', 'T' };
|
||||||
static const char fmt[] = "%Lu";
|
static const char fmt[] = "%llu";
|
||||||
static const char fmt_tenths[] = "%Lu.%d%c";
|
static const char fmt_tenths[] = "%llu.%d%c";
|
||||||
|
|
||||||
static char str[21]; /* Sufficient for 64 bit unsigned integers. */
|
static char str[21]; /* Sufficient for 64 bit unsigned integers. */
|
||||||
|
|
||||||
@ -74,7 +74,7 @@ const char *make_human_readable_str(unsigned long long size,
|
|||||||
if ( frac >= 5 ) {
|
if ( frac >= 5 ) {
|
||||||
++val;
|
++val;
|
||||||
}
|
}
|
||||||
f = "%Lu%*c" /* fmt_no_tenths */ ;
|
f = "%llu%*c" /* fmt_no_tenths */ ;
|
||||||
frac = 1;
|
frac = 1;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -1038,23 +1038,23 @@ static char *get_name(char *name, char *p)
|
|||||||
* args. */
|
* args. */
|
||||||
|
|
||||||
/* static const char * const ss_fmt[] = { */
|
/* static const char * const ss_fmt[] = { */
|
||||||
/* "%Ln%Lu%lu%lu%lu%lu%ln%ln%Ln%Lu%lu%lu%lu%lu%lu", */
|
/* "%lln%llu%lu%lu%lu%lu%ln%ln%lln%llu%lu%lu%lu%lu%lu", */
|
||||||
/* "%Lu%Lu%lu%lu%lu%lu%ln%ln%Lu%Lu%lu%lu%lu%lu%lu", */
|
/* "%llu%llu%lu%lu%lu%lu%ln%ln%llu%llu%lu%lu%lu%lu%lu", */
|
||||||
/* "%Lu%Lu%lu%lu%lu%lu%lu%lu%Lu%Lu%lu%lu%lu%lu%lu%lu" */
|
/* "%llu%llu%lu%lu%lu%lu%lu%lu%llu%llu%lu%lu%lu%lu%lu%lu" */
|
||||||
/* }; */
|
/* }; */
|
||||||
|
|
||||||
/* Lie about the size of the int pointed to for %n. */
|
/* Lie about the size of the int pointed to for %n. */
|
||||||
#if INT_MAX == LONG_MAX
|
#if INT_MAX == LONG_MAX
|
||||||
static const char * const ss_fmt[] = {
|
static const char * const ss_fmt[] = {
|
||||||
"%n%Lu%u%u%u%u%n%n%n%Lu%u%u%u%u%u",
|
"%n%llu%u%u%u%u%n%n%n%llu%u%u%u%u%u",
|
||||||
"%Lu%Lu%u%u%u%u%n%n%Lu%Lu%u%u%u%u%u",
|
"%llu%llu%u%u%u%u%n%n%llu%llu%u%u%u%u%u",
|
||||||
"%Lu%Lu%u%u%u%u%u%u%Lu%Lu%u%u%u%u%u%u"
|
"%llu%llu%u%u%u%u%u%u%llu%llu%u%u%u%u%u%u"
|
||||||
};
|
};
|
||||||
#else
|
#else
|
||||||
static const char * const ss_fmt[] = {
|
static const char * const ss_fmt[] = {
|
||||||
"%n%Lu%lu%lu%lu%lu%n%n%n%Lu%lu%lu%lu%lu%lu",
|
"%n%llu%lu%lu%lu%lu%n%n%n%llu%lu%lu%lu%lu%lu",
|
||||||
"%Lu%Lu%lu%lu%lu%lu%n%n%Lu%Lu%lu%lu%lu%lu%lu",
|
"%llu%llu%lu%lu%lu%lu%n%n%llu%llu%lu%lu%lu%lu%lu",
|
||||||
"%Lu%Lu%lu%lu%lu%lu%lu%lu%Lu%Lu%lu%lu%lu%lu%lu%lu"
|
"%llu%llu%lu%lu%lu%lu%lu%lu%llu%llu%lu%lu%lu%lu%lu%lu"
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@ -1748,7 +1748,7 @@ static void print_bytes_scaled(unsigned long long ull, const char *end)
|
|||||||
#endif
|
#endif
|
||||||
} while (i);
|
} while (i);
|
||||||
|
|
||||||
printf("X bytes:%Lu (%Lu.%u %sB)%s", ull, int_part, frac_part, ext, end);
|
printf("X bytes:%llu (%llu.%u %sB)%s", ull, int_part, frac_part, ext, end);
|
||||||
}
|
}
|
||||||
|
|
||||||
static const char * const ife_print_flags_strs[] = {
|
static const char * const ife_print_flags_strs[] = {
|
||||||
@ -1989,23 +1989,23 @@ static void ife_print(struct interface *ptr)
|
|||||||
*/
|
*/
|
||||||
printf(" ");
|
printf(" ");
|
||||||
|
|
||||||
printf(_("RX packets:%Lu errors:%lu dropped:%lu overruns:%lu frame:%lu\n"),
|
printf("RX packets:%llu errors:%lu dropped:%lu overruns:%lu frame:%lu\n",
|
||||||
ptr->stats.rx_packets, ptr->stats.rx_errors,
|
ptr->stats.rx_packets, ptr->stats.rx_errors,
|
||||||
ptr->stats.rx_dropped, ptr->stats.rx_fifo_errors,
|
ptr->stats.rx_dropped, ptr->stats.rx_fifo_errors,
|
||||||
ptr->stats.rx_frame_errors);
|
ptr->stats.rx_frame_errors);
|
||||||
if (can_compress)
|
if (can_compress)
|
||||||
printf(_(" compressed:%lu\n"),
|
printf(" compressed:%lu\n",
|
||||||
ptr->stats.rx_compressed);
|
ptr->stats.rx_compressed);
|
||||||
printf(" ");
|
printf(" ");
|
||||||
printf(_("TX packets:%Lu errors:%lu dropped:%lu overruns:%lu carrier:%lu\n"),
|
printf("TX packets:%llu errors:%lu dropped:%lu overruns:%lu carrier:%lu\n",
|
||||||
ptr->stats.tx_packets, ptr->stats.tx_errors,
|
ptr->stats.tx_packets, ptr->stats.tx_errors,
|
||||||
ptr->stats.tx_dropped, ptr->stats.tx_fifo_errors,
|
ptr->stats.tx_dropped, ptr->stats.tx_fifo_errors,
|
||||||
ptr->stats.tx_carrier_errors);
|
ptr->stats.tx_carrier_errors);
|
||||||
printf(_(" collisions:%lu "), ptr->stats.collisions);
|
printf(" collisions:%lu "), ptr->stats.collisions;
|
||||||
if (can_compress)
|
if (can_compress)
|
||||||
printf(_("compressed:%lu "), ptr->stats.tx_compressed);
|
printf("compressed:%lu ", ptr->stats.tx_compressed);
|
||||||
if (ptr->tx_queue_len != -1)
|
if (ptr->tx_queue_len != -1)
|
||||||
printf(_("txqueuelen:%d "), ptr->tx_queue_len);
|
printf("txqueuelen:%d ", ptr->tx_queue_len);
|
||||||
printf("\n R");
|
printf("\n R");
|
||||||
print_bytes_scaled(ptr->stats.rx_bytes, " T");
|
print_bytes_scaled(ptr->stats.rx_bytes, " T");
|
||||||
print_bytes_scaled(ptr->stats.tx_bytes, "\n");
|
print_bytes_scaled(ptr->stats.tx_bytes, "\n");
|
||||||
|
Loading…
Reference in New Issue
Block a user