libbb: introduce and use print_flags().

Mostly by Natanael Copa <natanael.copa AT gmail.com>

function                                             old     new   delta
print_e2flags                                          -     189    +189
print_flags_separated                                  -      86     +86
static.flag_labels                                     -      60     +60
static.dma_wmode_masks                                 -      32     +32
static.flag_masks                                      -      28     +28
static.arp_labels                                      -      16     +16
static.arp_masks                                       -      12     +12
ls_main                                              836     843      +7
...
popstring                                            140     134      -6
arp_show                                             740     708     -32
print_flags                                          189      25    -164
ipaddr_list_or_flush                                2396    2170    -226
process_dev                                         5306    4706    -600
------------------------------------------------------------------------------
(add/remove: 10/0 grow/shrink: 5/10 up/down: 458/-1043)      Total: -585 bytes
   text    data     bss     dec     hex filename
 810564     624    7060  818248   c7c48 busybox_old
 810002     624    7060  817686   c7a16 busybox_unstripped
This commit is contained in:
Denis Vlasenko
2008-06-07 15:10:29 +00:00
parent f0d6c25586
commit 53354ac47d
11 changed files with 77 additions and 76 deletions

View File

@@ -192,7 +192,7 @@ static const char e2attr_flags_lname[] =
"Top_of_Directory_Hierarchies" "\0"
/* Another trailing NUL is added by compiler */;
void print_flags(FILE *f, unsigned long flags, unsigned options)
void print_e2flags(FILE *f, unsigned long flags, unsigned options)
{
const uint32_t *fv;
const char *fn;

View File

@@ -31,7 +31,7 @@ int fgetsetflags(const char *name, unsigned long *get_flags, unsigned long set_f
/* Must be 1 for compatibility with `int long_format'. */
#define PFOPT_LONG 1
/* Print file attributes on an ext2 file system */
void print_flags(FILE *f, unsigned long flags, unsigned options);
void print_e2flags(FILE *f, unsigned long flags, unsigned options);
extern const uint32_t e2attr_flags_value[];
extern const char e2attr_flags_sname[];

View File

@@ -45,10 +45,10 @@ static void list_attributes(const char *name)
if (option_mask32 & OPT_PF_LONG) {
printf("%-28s ", name);
print_flags(stdout, fsflags, PFOPT_LONG);
print_e2flags(stdout, fsflags, PFOPT_LONG);
bb_putchar('\n');
} else {
print_flags(stdout, fsflags, 0);
print_e2flags(stdout, fsflags, 0);
printf(" %s\n", name);
}

View File

@@ -13,7 +13,7 @@
#define EXT3_FEATURE_INCOMPAT_EXTENTS 0x0040
#endif
/* `options' for print_flags() */
/* `options' for print_e2flags() */
#define PFOPT_LONG 1 /* Must be 1 for compatibility with `int long_format'. */

View File

@@ -56,10 +56,10 @@ static void list_attributes(const char *name)
if (flags & OPT_PF_LONG) {
printf("%-28s ", name);
print_flags(stdout, fsflags, PFOPT_LONG);
print_e2flags(stdout, fsflags, PFOPT_LONG);
bb_putchar('\n');
} else {
print_flags(stdout, fsflags, 0);
print_e2flags(stdout, fsflags, 0);
printf(" %s\n", name);
}