summaryrefslogtreecommitdiff
path: root/include/bb_archive.h
diff options
context:
space:
mode:
authorRon Yorston2018-11-02 14:14:31 +0100
committerDenys Vlasenko2018-11-02 14:14:51 +0100
commitc339c7f7b393fbcd51b0f96df837baa1edad7fd8 (patch)
tree3fa49732a3426e0666ba732da7e4182db7dc66ca /include/bb_archive.h
parent0df289f427da6279e3ca198d14e90015c079af44 (diff)
downloadbusybox-c339c7f7b393fbcd51b0f96df837baa1edad7fd8.zip
busybox-c339c7f7b393fbcd51b0f96df837baa1edad7fd8.tar.gz
libarchive: add a function to unpack embedded data
Similar code to unpack embedded data is used to decompress usage messages, embedded scripts and the config file (in the non-default bbconfig applet). Moving this code to a common function reduces the size of the default build and hides more of the internals of libarchive. function old new delta unpack_bz2_data - 135 +135 bb_show_usage 137 157 +20 get_script_content 32 47 +15 unpack_scripts 119 - -119 unpack_usage_messages 124 - -124 ------------------------------------------------------------------------------ (add/remove: 1/2 grow/shrink: 2/0 up/down: 170/-243) Total: -73 bytes Signed-off-by: Ron Yorston <rmy@pobox.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'include/bb_archive.h')
-rw-r--r--include/bb_archive.h7
1 files changed, 1 insertions, 6 deletions
diff --git a/include/bb_archive.h b/include/bb_archive.h
index d202233..561dd0c 100644
--- a/include/bb_archive.h
+++ b/include/bb_archive.h
@@ -214,12 +214,7 @@ const llist_t *find_list_entry(const llist_t *list, const char *filename) FAST_F
const llist_t *find_list_entry2(const llist_t *list, const char *filename) FAST_FUNC;
/* A bit of bunzip2 internals are exposed for compressed help support: */
-typedef struct bunzip_data bunzip_data;
-int start_bunzip(void *, bunzip_data **bdp, int in_fd, const void *inbuf, int len) FAST_FUNC;
-/* NB: read_bunzip returns < 0 on error, or the number of *unfilled* bytes
- * in outbuf. IOW: on EOF returns len ("all bytes are not filled"), not 0: */
-int read_bunzip(bunzip_data *bd, char *outbuf, int len) FAST_FUNC;
-void dealloc_bunzip(bunzip_data *bd) FAST_FUNC;
+char *unpack_bz2_data(const char *packed, int packed_len, int unpacked_len) FAST_FUNC;
/* Meaning and direction (input/output) of the fields are transformer-specific */
typedef struct transformer_state_t {