busybox/archival/libarchive
Denys Vlasenko 4f2ef4a836 ash: allow shell scripts to be embedded in the binary
To assist in the deployment of shell scripts it may be convenient
to embed them in the BusyBox binary.

'Embed scripts in the binary' takes any files in the directory
'embed', concatenates them with null separators, compresses them
and embeds them in the binary.

When scripts are embedded in the binary, scripts can be run as
'busybox SCRIPT [ARGS]' or by usual (sym)link mechanism.

embed/nologin is provided as an example.

function                                             old     new   delta
packed_scripts                                         -     123    +123
unpack_scripts                                         -      87     +87
ash_main                                            1103    1171     +68
run_applet_and_exit                                   78     128     +50
get_script_content                                     -      32     +32
script_names                                           -      10     +10
expmeta                                              663     659      -4
------------------------------------------------------------------------------
(add/remove: 4/0 grow/shrink: 2/1 up/down: 370/-4)            Total: 366 bytes

Signed-off-by: Ron Yorston <rmy@pobox.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-11-01 10:15:13 +01:00
..
bz bzip2: expose tuning knob for faster/smaller code 2018-02-07 01:33:25 +01:00
unxz Spelling fixes in comments, documentation, tests and examples 2017-04-17 16:13:32 +02:00
common.c whitespace and comment format fixes, no code changes 2017-10-05 14:40:24 +02:00
data_align.c whitespace and comment format fixes, no code changes 2017-10-05 14:40:24 +02:00
data_extract_all.c tar: fix interaction of delayed symlink and hardlink creation 2018-05-22 17:34:31 +02:00
data_extract_to_command.c libbb: new function bb_die_memory_exhausted 2018-04-01 19:59:37 +02:00
data_extract_to_stdout.c whitespace and comment format fixes, no code changes 2017-10-05 14:40:24 +02:00
data_skip.c whitespace and comment format fixes, no code changes 2017-10-05 14:40:24 +02:00
decompress_bunzip2.c bzip2: fix two crashes on corrupted archives 2018-04-08 20:05:04 +02:00
decompress_gunzip.c bzip2: fix two crashes on corrupted archives 2018-04-08 20:05:04 +02:00
decompress_uncompress.c whitespace and comment format fixes, no code changes 2017-10-05 15:33:28 +02:00
decompress_unlzma.c unlzma: close another SEGV possibility 2018-05-25 17:03:46 +02:00
decompress_unxz.c libbb: commonalize a bit of little-endian CRC32 table generation code 2018-02-01 10:56:19 +01:00
filter_accept_all.c whitespace and comment format fixes, no code changes 2017-10-05 14:40:24 +02:00
filter_accept_list_reassign.c whitespace and comment format fixes, no code changes 2017-10-05 14:40:24 +02:00
filter_accept_list.c whitespace and comment format fixes, no code changes 2017-10-05 14:40:24 +02:00
filter_accept_reject_list.c whitespace and comment format fixes, no code changes 2017-10-05 14:40:24 +02:00
find_list_entry.c whitespace and comment format fixes, no code changes 2017-10-05 14:40:24 +02:00
get_header_ar.c tar: fix interaction of delayed symlink and hardlink creation 2018-05-22 17:34:31 +02:00
get_header_cpio.c whitespace and comment format fixes, no code changes 2017-10-05 15:33:28 +02:00
get_header_tar_bz2.c whitespace and comment format fixes, no code changes 2017-10-05 14:40:24 +02:00
get_header_tar_gz.c whitespace and comment format fixes, no code changes 2017-10-05 14:40:24 +02:00
get_header_tar_lzma.c whitespace and comment format fixes, no code changes 2017-10-05 14:40:24 +02:00
get_header_tar_xz.c whitespace and comment format fixes, no code changes 2017-10-05 14:40:24 +02:00
get_header_tar.c tar: accomodate non-terminated tar.chksum fields as seen from github.com 2018-01-27 19:04:08 +01:00
header_list.c rename archive.h to bb_archive.h. no code changes 2011-09-22 12:45:14 +02:00
header_skip.c rename archive.h to bb_archive.h. no code changes 2011-09-22 12:45:14 +02:00
header_verbose_list.c whitespace and comment format fixes, no code changes 2017-10-05 14:40:24 +02:00
init_handle.c whitespace and comment format fixes, no code changes 2017-10-05 14:40:24 +02:00
Kbuild.src ash: allow shell scripts to be embedded in the binary 2018-11-01 10:15:13 +01:00
liblzo.h lzop: add overflow check 2014-06-30 10:14:34 +02:00
lzo1x_1.c rename archival/libunarchive -> archival/libarchive; move bz/ into it 2010-11-03 02:38:31 +01:00
lzo1x_1o.c rename archival/libunarchive -> archival/libarchive; move bz/ into it 2010-11-03 02:38:31 +01:00
lzo1x_9x.c Removes stray empty line from code 2015-07-13 03:25:46 +02:00
lzo1x_c.c whitespace cleanup. no code changes 2013-01-14 15:57:44 +01:00
lzo1x_d.c lzop: code shrink 2018-02-01 01:41:31 +01:00
open_transformer.c whitespace and comment format fixes, no code changes 2017-10-05 14:40:24 +02:00
seek_by_jump.c whitespace and comment format fixes, no code changes 2017-10-05 14:40:24 +02:00
seek_by_read.c whitespace and comment format fixes, no code changes 2017-10-05 14:40:24 +02:00
unpack_ar_archive.c whitespace and comment format fixes, no code changes 2017-10-05 14:40:24 +02:00
unsafe_prefix.c whitespace and comment format fixes, no code changes 2017-10-05 14:40:24 +02:00
unsafe_symlink_target.c tar: fix interaction of delayed symlink and hardlink creation 2018-05-22 17:34:31 +02:00