diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2018-02-01 09:13:14 +0100 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2018-02-01 09:13:14 +0100 |
commit | d6f0f03b68fc4cf9ffb8006e192e36f0ebf51ea6 (patch) | |
tree | 24b4adf0a28b91dbcd014cf99527ca07d492003d | |
parent | 99ac1759dd429bd7995feff33dc683589c016c8e (diff) | |
download | busybox-w32-d6f0f03b68fc4cf9ffb8006e192e36f0ebf51ea6.tar.gz busybox-w32-d6f0f03b68fc4cf9ffb8006e192e36f0ebf51ea6.tar.bz2 busybox-w32-d6f0f03b68fc4cf9ffb8006e192e36f0ebf51ea6.zip |
libarchive: move bbunpack constants to bb_archive.h
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r-- | archival/bbunzip.c | 57 | ||||
-rw-r--r-- | archival/bzip2.c | 11 | ||||
-rw-r--r-- | archival/gzip.c | 10 | ||||
-rw-r--r-- | include/bb_archive.h | 15 |
4 files changed, 48 insertions, 45 deletions
diff --git a/archival/bbunzip.c b/archival/bbunzip.c index 944b397b3..a2ce0a13c 100644 --- a/archival/bbunzip.c +++ b/archival/bbunzip.c | |||
@@ -21,19 +21,6 @@ | |||
21 | #include "libbb.h" | 21 | #include "libbb.h" |
22 | #include "bb_archive.h" | 22 | #include "bb_archive.h" |
23 | 23 | ||
24 | /* Note: must be kept in sync with archival/lzop.c */ | ||
25 | enum { | ||
26 | OPT_STDOUT = 1 << 0, | ||
27 | OPT_FORCE = 1 << 1, | ||
28 | /* only some decompressors: */ | ||
29 | OPT_KEEP = 1 << 2, | ||
30 | OPT_VERBOSE = 1 << 3, | ||
31 | OPT_QUIET = 1 << 4, | ||
32 | OPT_DECOMPRESS = 1 << 5, | ||
33 | OPT_TEST = 1 << 6, | ||
34 | SEAMLESS_MAGIC = (1 << 31) * ENABLE_ZCAT * SEAMLESS_COMPRESSION, | ||
35 | }; | ||
36 | |||
37 | static | 24 | static |
38 | int open_to_or_warn(int to_fd, const char *filename, int flags, int mode) | 25 | int open_to_or_warn(int to_fd, const char *filename, int flags, int mode) |
39 | { | 26 | { |
@@ -72,7 +59,7 @@ int FAST_FUNC bbunpack(char **argv, | |||
72 | 59 | ||
73 | /* Open src */ | 60 | /* Open src */ |
74 | if (filename) { | 61 | if (filename) { |
75 | if (!(option_mask32 & SEAMLESS_MAGIC)) { | 62 | if (!(option_mask32 & BBUNPK_SEAMLESS_MAGIC)) { |
76 | if (stat(filename, &stat_buf) != 0) { | 63 | if (stat(filename, &stat_buf) != 0) { |
77 | err_name: | 64 | err_name: |
78 | bb_simple_perror_msg(filename); | 65 | bb_simple_perror_msg(filename); |
@@ -91,15 +78,15 @@ int FAST_FUNC bbunpack(char **argv, | |||
91 | xmove_fd(fd, STDIN_FILENO); | 78 | xmove_fd(fd, STDIN_FILENO); |
92 | } | 79 | } |
93 | } else | 80 | } else |
94 | if (option_mask32 & SEAMLESS_MAGIC) { | 81 | if (option_mask32 & BBUNPK_SEAMLESS_MAGIC) { |
95 | /* "clever zcat" on stdin */ | 82 | /* "clever zcat" on stdin */ |
96 | if (setup_unzip_on_fd(STDIN_FILENO, /*fail_if_not_compressed*/ 1)) | 83 | if (setup_unzip_on_fd(STDIN_FILENO, /*fail_if_not_compressed*/ 1)) |
97 | goto err; | 84 | goto err; |
98 | } | 85 | } |
99 | 86 | ||
100 | /* Special cases: test, stdout */ | 87 | /* Special cases: test, stdout */ |
101 | if (option_mask32 & (OPT_STDOUT|OPT_TEST)) { | 88 | if (option_mask32 & (BBUNPK_OPT_STDOUT|BBUNPK_OPT_TEST)) { |
102 | if (option_mask32 & OPT_TEST) | 89 | if (option_mask32 & BBUNPK_OPT_TEST) |
103 | if (open_to_or_warn(STDOUT_FILENO, bb_dev_null, O_WRONLY, 0)) | 90 | if (open_to_or_warn(STDOUT_FILENO, bb_dev_null, O_WRONLY, 0)) |
104 | xfunc_die(); | 91 | xfunc_die(); |
105 | filename = NULL; | 92 | filename = NULL; |
@@ -114,7 +101,7 @@ int FAST_FUNC bbunpack(char **argv, | |||
114 | } | 101 | } |
115 | 102 | ||
116 | /* -f: overwrite existing output files */ | 103 | /* -f: overwrite existing output files */ |
117 | if (option_mask32 & OPT_FORCE) { | 104 | if (option_mask32 & BBUNPK_OPT_FORCE) { |
118 | unlink(new_name); | 105 | unlink(new_name); |
119 | } | 106 | } |
120 | 107 | ||
@@ -126,12 +113,12 @@ int FAST_FUNC bbunpack(char **argv, | |||
126 | } | 113 | } |
127 | 114 | ||
128 | /* Check that the input is sane */ | 115 | /* Check that the input is sane */ |
129 | if (!(option_mask32 & OPT_FORCE) && isatty(STDIN_FILENO)) { | 116 | if (!(option_mask32 & BBUNPK_OPT_FORCE) && isatty(STDIN_FILENO)) { |
130 | bb_error_msg_and_die("compressed data not read from terminal, " | 117 | bb_error_msg_and_die("compressed data not read from terminal, " |
131 | "use -f to force it"); | 118 | "use -f to force it"); |
132 | } | 119 | } |
133 | 120 | ||
134 | if (!(option_mask32 & SEAMLESS_MAGIC)) { | 121 | if (!(option_mask32 & BBUNPK_SEAMLESS_MAGIC)) { |
135 | init_transformer_state(&xstate); | 122 | init_transformer_state(&xstate); |
136 | /*xstate.signature_skipped = 0; - already is */ | 123 | /*xstate.signature_skipped = 0; - already is */ |
137 | /*xstate.src_fd = STDIN_FILENO; - already is */ | 124 | /*xstate.src_fd = STDIN_FILENO; - already is */ |
@@ -145,7 +132,7 @@ int FAST_FUNC bbunpack(char **argv, | |||
145 | xfunc_die(); | 132 | xfunc_die(); |
146 | } | 133 | } |
147 | 134 | ||
148 | if (!(option_mask32 & OPT_STDOUT)) | 135 | if (!(option_mask32 & BBUNPK_OPT_STDOUT)) |
149 | xclose(STDOUT_FILENO); /* with error check! */ | 136 | xclose(STDOUT_FILENO); /* with error check! */ |
150 | 137 | ||
151 | if (filename) { | 138 | if (filename) { |
@@ -176,7 +163,7 @@ int FAST_FUNC bbunpack(char **argv, | |||
176 | } | 163 | } |
177 | /* Extreme bloat for gunzip compat */ | 164 | /* Extreme bloat for gunzip compat */ |
178 | /* Some users do want this info... */ | 165 | /* Some users do want this info... */ |
179 | if (ENABLE_DESKTOP && (option_mask32 & OPT_VERBOSE)) { | 166 | if (ENABLE_DESKTOP && (option_mask32 & BBUNPK_OPT_VERBOSE)) { |
180 | unsigned percent = status | 167 | unsigned percent = status |
181 | ? ((uoff_t)stat_buf.st_size * 100u / (unsigned long long)status) | 168 | ? ((uoff_t)stat_buf.st_size * 100u / (unsigned long long)status) |
182 | : 0; | 169 | : 0; |
@@ -188,7 +175,7 @@ int FAST_FUNC bbunpack(char **argv, | |||
188 | } | 175 | } |
189 | /* Delete _source_ file */ | 176 | /* Delete _source_ file */ |
190 | del = filename; | 177 | del = filename; |
191 | if (option_mask32 & OPT_KEEP) /* ... unless -k */ | 178 | if (option_mask32 & BBUNPK_OPT_KEEP) /* ... unless -k */ |
192 | del = NULL; | 179 | del = NULL; |
193 | } | 180 | } |
194 | if (del) | 181 | if (del) |
@@ -199,7 +186,7 @@ int FAST_FUNC bbunpack(char **argv, | |||
199 | } | 186 | } |
200 | } while (*argv && *++argv); | 187 | } while (*argv && *++argv); |
201 | 188 | ||
202 | if (option_mask32 & OPT_STDOUT) | 189 | if (option_mask32 & BBUNPK_OPT_STDOUT) |
203 | xclose(STDOUT_FILENO); /* with error check! */ | 190 | xclose(STDOUT_FILENO); /* with error check! */ |
204 | 191 | ||
205 | return exitcode; | 192 | return exitcode; |
@@ -389,9 +376,9 @@ int gunzip_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; | |||
389 | int gunzip_main(int argc UNUSED_PARAM, char **argv) | 376 | int gunzip_main(int argc UNUSED_PARAM, char **argv) |
390 | { | 377 | { |
391 | #if ENABLE_FEATURE_GUNZIP_LONG_OPTIONS | 378 | #if ENABLE_FEATURE_GUNZIP_LONG_OPTIONS |
392 | getopt32long(argv, "cfkvqdtn", gunzip_longopts); | 379 | getopt32long(argv, BBUNPK_OPTSTR "dtn", gunzip_longopts); |
393 | #else | 380 | #else |
394 | getopt32(argv, "cfkvqdtn"); | 381 | getopt32(argv, BBUNPK_OPTSTR "dtn"); |
395 | #endif | 382 | #endif |
396 | argv += optind; | 383 | argv += optind; |
397 | 384 | ||
@@ -400,7 +387,7 @@ int gunzip_main(int argc UNUSED_PARAM, char **argv) | |||
400 | * But if seamless magic is enabled, then we are much more clever. | 387 | * But if seamless magic is enabled, then we are much more clever. |
401 | */ | 388 | */ |
402 | if (ENABLE_ZCAT && (!ENABLE_GUNZIP || applet_name[1] == 'c')) | 389 | if (ENABLE_ZCAT && (!ENABLE_GUNZIP || applet_name[1] == 'c')) |
403 | option_mask32 |= OPT_STDOUT | SEAMLESS_MAGIC; | 390 | option_mask32 |= BBUNPK_OPT_STDOUT | BBUNPK_SEAMLESS_MAGIC; |
404 | 391 | ||
405 | return bbunpack(argv, unpack_gz_stream, make_new_name_gunzip, /*unused:*/ NULL); | 392 | return bbunpack(argv, unpack_gz_stream, make_new_name_gunzip, /*unused:*/ NULL); |
406 | } | 393 | } |
@@ -453,10 +440,10 @@ int gunzip_main(int argc UNUSED_PARAM, char **argv) | |||
453 | int bunzip2_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; | 440 | int bunzip2_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; |
454 | int bunzip2_main(int argc UNUSED_PARAM, char **argv) | 441 | int bunzip2_main(int argc UNUSED_PARAM, char **argv) |
455 | { | 442 | { |
456 | getopt32(argv, "cfkvqdt"); | 443 | getopt32(argv, BBUNPK_OPTSTR "dt"); |
457 | argv += optind; | 444 | argv += optind; |
458 | if (ENABLE_BZCAT && (!ENABLE_BUNZIP2 || applet_name[2] == 'c')) /* bzcat */ | 445 | if (ENABLE_BZCAT && (!ENABLE_BUNZIP2 || applet_name[2] == 'c')) /* bzcat */ |
459 | option_mask32 |= OPT_STDOUT; | 446 | option_mask32 |= BBUNPK_OPT_STDOUT; |
460 | 447 | ||
461 | return bbunpack(argv, unpack_bz2_stream, make_new_name_generic, "bz2"); | 448 | return bbunpack(argv, unpack_bz2_stream, make_new_name_generic, "bz2"); |
462 | } | 449 | } |
@@ -526,15 +513,15 @@ int bunzip2_main(int argc UNUSED_PARAM, char **argv) | |||
526 | int unlzma_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; | 513 | int unlzma_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; |
527 | int unlzma_main(int argc UNUSED_PARAM, char **argv) | 514 | int unlzma_main(int argc UNUSED_PARAM, char **argv) |
528 | { | 515 | { |
529 | IF_LZMA(int opts =) getopt32(argv, "cfkvqdt"); | 516 | IF_LZMA(int opts =) getopt32(argv, BBUNPK_OPTSTR "dt"); |
530 | # if ENABLE_LZMA | 517 | # if ENABLE_LZMA |
531 | /* lzma without -d or -t? */ | 518 | /* lzma without -d or -t? */ |
532 | if (applet_name[2] == 'm' && !(opts & (OPT_DECOMPRESS|OPT_TEST))) | 519 | if (applet_name[2] == 'm' && !(opts & (BBUNPK_OPT_DECOMPRESS|BBUNPK_OPT_TEST))) |
533 | bb_show_usage(); | 520 | bb_show_usage(); |
534 | # endif | 521 | # endif |
535 | /* lzcat? */ | 522 | /* lzcat? */ |
536 | if (ENABLE_LZCAT && applet_name[2] == 'c') | 523 | if (ENABLE_LZCAT && applet_name[2] == 'c') |
537 | option_mask32 |= OPT_STDOUT; | 524 | option_mask32 |= BBUNPK_OPT_STDOUT; |
538 | 525 | ||
539 | argv += optind; | 526 | argv += optind; |
540 | return bbunpack(argv, unpack_lzma_stream, make_new_name_generic, "lzma"); | 527 | return bbunpack(argv, unpack_lzma_stream, make_new_name_generic, "lzma"); |
@@ -594,15 +581,15 @@ int unlzma_main(int argc UNUSED_PARAM, char **argv) | |||
594 | int unxz_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; | 581 | int unxz_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; |
595 | int unxz_main(int argc UNUSED_PARAM, char **argv) | 582 | int unxz_main(int argc UNUSED_PARAM, char **argv) |
596 | { | 583 | { |
597 | IF_XZ(int opts =) getopt32(argv, "cfkvqdt"); | 584 | IF_XZ(int opts =) getopt32(argv, BBUNPK_OPTSTR "dt"); |
598 | # if ENABLE_XZ | 585 | # if ENABLE_XZ |
599 | /* xz without -d or -t? */ | 586 | /* xz without -d or -t? */ |
600 | if (applet_name[2] == '\0' && !(opts & (OPT_DECOMPRESS|OPT_TEST))) | 587 | if (applet_name[2] == '\0' && !(opts & (BBUNPK_OPT_DECOMPRESS|BBUNPK_OPT_TEST))) |
601 | bb_show_usage(); | 588 | bb_show_usage(); |
602 | # endif | 589 | # endif |
603 | /* xzcat? */ | 590 | /* xzcat? */ |
604 | if (ENABLE_XZCAT && applet_name[2] == 'c') | 591 | if (ENABLE_XZCAT && applet_name[2] == 'c') |
605 | option_mask32 |= OPT_STDOUT; | 592 | option_mask32 |= BBUNPK_OPT_STDOUT; |
606 | 593 | ||
607 | argv += optind; | 594 | argv += optind; |
608 | return bbunpack(argv, unpack_xz_stream, make_new_name_generic, "xz"); | 595 | return bbunpack(argv, unpack_xz_stream, make_new_name_generic, "xz"); |
diff --git a/archival/bzip2.c b/archival/bzip2.c index c3969a9e8..fa906150f 100644 --- a/archival/bzip2.c +++ b/archival/bzip2.c | |||
@@ -151,7 +151,8 @@ IF_DESKTOP(long long) int FAST_FUNC compressStream(transformer_state_t *xstate U | |||
151 | 151 | ||
152 | iobuf = xmalloc(2 * IOBUF_SIZE); | 152 | iobuf = xmalloc(2 * IOBUF_SIZE); |
153 | 153 | ||
154 | opt = option_mask32 >> (sizeof("cfkvq" IF_FEATURE_BZIP2_DECOMPRESS("dt") "zs") - 1); | 154 | opt = option_mask32 >> (BBUNPK_OPTSTRLEN IF_FEATURE_BZIP2_DECOMPRESS(+ 2) + 2); |
155 | /* skipped BBUNPK_OPTSTR, "dt" and "zs" bits */ | ||
155 | opt |= 0x100; /* if nothing else, assume -9 */ | 156 | opt |= 0x100; /* if nothing else, assume -9 */ |
156 | level = 0; | 157 | level = 0; |
157 | for (;;) { | 158 | for (;;) { |
@@ -205,17 +206,17 @@ int bzip2_main(int argc UNUSED_PARAM, char **argv) | |||
205 | */ | 206 | */ |
206 | 207 | ||
207 | opt = getopt32(argv, "^" | 208 | opt = getopt32(argv, "^" |
208 | /* Must match bbunzip's constants OPT_STDOUT, OPT_FORCE! */ | 209 | /* Must match BBUNPK_foo constants! */ |
209 | "cfkvq" IF_FEATURE_BZIP2_DECOMPRESS("dt") "zs123456789" | 210 | BBUNPK_OPTSTR IF_FEATURE_BZIP2_DECOMPRESS("dt") "zs123456789" |
210 | "\0" "s2" /* -s means -2 (compatibility) */ | 211 | "\0" "s2" /* -s means -2 (compatibility) */ |
211 | ); | 212 | ); |
212 | #if ENABLE_FEATURE_BZIP2_DECOMPRESS /* bunzip2_main may not be visible... */ | 213 | #if ENABLE_FEATURE_BZIP2_DECOMPRESS /* bunzip2_main may not be visible... */ |
213 | if (opt & (3 << 5)) /* -d and/or -t */ | 214 | if (opt & (BBUNPK_OPT_DECOMPRESS|BBUNPK_OPT_TEST)) /* -d and/or -t */ |
214 | return bunzip2_main(argc, argv); | 215 | return bunzip2_main(argc, argv); |
215 | #else | 216 | #else |
216 | /* clear "decompress" and "test" bits (or bbunpack() can get confused) */ | 217 | /* clear "decompress" and "test" bits (or bbunpack() can get confused) */ |
217 | /* in !BZIP2_DECOMPRESS config, these bits are -zs and are unused */ | 218 | /* in !BZIP2_DECOMPRESS config, these bits are -zs and are unused */ |
218 | option_mask32 = opt & ~(3 << 5); | 219 | option_mask32 = opt & ~(BBUNPK_OPT_DECOMPRESS|BBUNPK_OPT_TEST); |
219 | #endif | 220 | #endif |
220 | 221 | ||
221 | argv += optind; | 222 | argv += optind; |
diff --git a/archival/gzip.c b/archival/gzip.c index d6737b492..e3dd79291 100644 --- a/archival/gzip.c +++ b/archival/gzip.c | |||
@@ -2211,16 +2211,16 @@ int gzip_main(int argc UNUSED_PARAM, char **argv) | |||
2211 | 2211 | ||
2212 | /* Must match bbunzip's constants OPT_STDOUT, OPT_FORCE! */ | 2212 | /* Must match bbunzip's constants OPT_STDOUT, OPT_FORCE! */ |
2213 | #if ENABLE_FEATURE_GZIP_LONG_OPTIONS | 2213 | #if ENABLE_FEATURE_GZIP_LONG_OPTIONS |
2214 | opt = getopt32long(argv, "cfkv" IF_FEATURE_GZIP_DECOMPRESS("dt") "qn123456789", gzip_longopts); | 2214 | opt = getopt32long(argv, BBUNPK_OPTSTR IF_FEATURE_GZIP_DECOMPRESS("dt") "n123456789", gzip_longopts); |
2215 | #else | 2215 | #else |
2216 | opt = getopt32(argv, "cfkv" IF_FEATURE_GZIP_DECOMPRESS("dt") "qn123456789"); | 2216 | opt = getopt32(argv, BBUNPK_OPTSTR IF_FEATURE_GZIP_DECOMPRESS("dt") "n123456789"); |
2217 | #endif | 2217 | #endif |
2218 | #if ENABLE_FEATURE_GZIP_DECOMPRESS /* gunzip_main may not be visible... */ | 2218 | #if ENABLE_FEATURE_GZIP_DECOMPRESS /* gunzip_main may not be visible... */ |
2219 | if (opt & 0x30) // -d and/or -t | 2219 | if (opt & (BBUNPK_OPT_DECOMPRESS|BBUNPK_OPT_TEST)) /* -d and/or -t */ |
2220 | return gunzip_main(argc, argv); | 2220 | return gunzip_main(argc, argv); |
2221 | #endif | 2221 | #endif |
2222 | #if ENABLE_FEATURE_GZIP_LEVELS | 2222 | #if ENABLE_FEATURE_GZIP_LEVELS |
2223 | opt >>= ENABLE_FEATURE_GZIP_DECOMPRESS ? 8 : 6; /* drop cfkv[dt]qn bits */ | 2223 | opt >>= (BBUNPK_OPTSTRLEN IF_FEATURE_GZIP_DECOMPRESS(+ 2) + 1); /* drop cfkvq[dt]n bits */ |
2224 | if (opt == 0) | 2224 | if (opt == 0) |
2225 | opt = 1 << 6; /* default: 6 */ | 2225 | opt = 1 << 6; /* default: 6 */ |
2226 | opt = ffs(opt >> 4); /* Maps -1..-4 to [0], -5 to [1] ... -9 to [5] */ | 2226 | opt = ffs(opt >> 4); /* Maps -1..-4 to [0], -5 to [1] ... -9 to [5] */ |
@@ -2229,7 +2229,7 @@ int gzip_main(int argc UNUSED_PARAM, char **argv) | |||
2229 | max_lazy_match = gzip_level_config[opt].lazy2 * 2; | 2229 | max_lazy_match = gzip_level_config[opt].lazy2 * 2; |
2230 | nice_match = gzip_level_config[opt].nice2 * 2; | 2230 | nice_match = gzip_level_config[opt].nice2 * 2; |
2231 | #endif | 2231 | #endif |
2232 | option_mask32 &= 0xf; /* retain only -cfkv */ | 2232 | option_mask32 &= BBUNPK_OPTSTRMASK; /* retain only -cfkvq */ |
2233 | 2233 | ||
2234 | /* Allocate all global buffers (for DYN_ALLOC option) */ | 2234 | /* Allocate all global buffers (for DYN_ALLOC option) */ |
2235 | ALLOC(uch, G1.l_buf, INBUFSIZ); | 2235 | ALLOC(uch, G1.l_buf, INBUFSIZ); |
diff --git a/include/bb_archive.h b/include/bb_archive.h index d3a02cf18..8ed20d70e 100644 --- a/include/bb_archive.h +++ b/include/bb_archive.h | |||
@@ -250,6 +250,21 @@ int bbunpack(char **argv, | |||
250 | char* FAST_FUNC (*make_new_name)(char *filename, const char *expected_ext), | 250 | char* FAST_FUNC (*make_new_name)(char *filename, const char *expected_ext), |
251 | const char *expected_ext | 251 | const char *expected_ext |
252 | ) FAST_FUNC; | 252 | ) FAST_FUNC; |
253 | #define BBUNPK_OPTSTR "cfkvq" | ||
254 | #define BBUNPK_OPTSTRLEN 5 | ||
255 | #define BBUNPK_OPTSTRMASK ((1 << BBUNPK_OPTSTRLEN) - 1) | ||
256 | enum { | ||
257 | BBUNPK_OPT_STDOUT = 1 << 0, | ||
258 | BBUNPK_OPT_FORCE = 1 << 1, | ||
259 | /* only some decompressors: */ | ||
260 | BBUNPK_OPT_KEEP = 1 << 2, | ||
261 | BBUNPK_OPT_VERBOSE = 1 << 3, | ||
262 | BBUNPK_OPT_QUIET = 1 << 4, | ||
263 | /* not included in BBUNPK_OPTSTR: */ | ||
264 | BBUNPK_OPT_DECOMPRESS = 1 << 5, | ||
265 | BBUNPK_OPT_TEST = 1 << 6, | ||
266 | BBUNPK_SEAMLESS_MAGIC = (1 << 31) * ENABLE_ZCAT * SEAMLESS_COMPRESSION, | ||
267 | }; | ||
253 | 268 | ||
254 | void check_errors_in_children(int signo); | 269 | void check_errors_in_children(int signo); |
255 | #if BB_MMU | 270 | #if BB_MMU |