busybox/include
Ron Yorston 7d1c7d8337 ash,hush: use HOME for tab completion and prompts
ash and hush correctly use the value of HOME for tilde expansion.
However the line editing code in libbb obtains the user's home
directory by calling getpwuid().  Thus tildes in tab completion
and prompts may be interpreted differently than in tilde expansion.

When the line editing code is invoked from a shell make it use the
shell's interpretation of tilde.  This is similar to how GNU readline
and bash collaborate.

function                                             old     new   delta
get_homedir_or_NULL                                   29      72     +43
optschanged                                          119     126      +7
hush_main                                           1204    1211      +7
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/0 up/down: 57/0)               Total: 57 bytes

v2: Always check for HOME before trying the password database:  this
    is what GNU readline does.

Signed-off-by: Ron Yorston <rmy@pobox.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2022-06-26 18:05:50 +02:00
..
.gitignore ash: allow shell scripts to be embedded in the binary 2018-11-01 10:15:13 +01:00
applet_metadata.h applet_tables: do not include libbb.h, that header ir for target builds 2011-03-28 01:23:38 +02:00
applets.h.sh modprobe-small: make applets individually selectable 2016-12-23 15:13:16 +01:00
applets.src.h Tweaks to build process for embedded scripts 2018-11-27 10:38:10 +01:00
ar_.h archival: avoid std namespace for local includes 2020-11-16 13:24:24 +01:00
bb_archive.h libarchive: remove duplicate forward declaration 2021-11-28 10:53:22 +01:00
bb_e2fs_defs.h lsattr: support more ext2 flags 2021-06-20 12:34:05 +02:00
busybox.h config: disentangle PREFER_APPLETS from SH_STANDALONE and SH_NOFORK 2016-07-22 18:48:38 +02:00
dump.h xxd: implement -i "C style output" 2021-06-18 00:59:17 +02:00
fix_u32.h *: make GNU licensing statement forms more regular 2010-08-16 20:14:46 +02:00
grp_.h libpwdgrp: use FAST_FUNC to make "matching ABI" optimization more likely to succeed 2015-01-02 22:31:07 +01:00
inet_common.h
libbb.h ash,hush: use HOME for tab completion and prompts 2022-06-26 18:05:50 +02:00
liblzo_interface.h lzop: code shrink 2018-02-01 01:41:31 +01:00
platform.h *: slap on a few ALIGN* where appropriate 2022-02-06 19:53:10 +01:00
pwd_.h libpwdgrp: use getpwent() instead of getpwent_r() 2015-02-07 21:21:02 +01:00
rtc_.h move ADJTIME_PATH define to header files 2020-12-17 20:53:43 +01:00
shadow_.h libpwdgrp: use FAST_FUNC to make "matching ABI" optimization more likely to succeed 2015-01-02 22:31:07 +01:00
unicode.h ash,hush: recheck LANG before every line input 2011-03-23 17:59:27 +01:00
usage.src.h httpd,telnetd: make default port configurable 2021-09-09 21:42:48 +02:00
volume_id.h blkid: if parameters are given, do not scan /dev 2012-03-03 15:09:07 +01:00
xatonum.h udhcp: finish support of classless static routes 2011-12-16 17:05:52 +01:00
xregex.h *: make GNU licensing statement forms more regular 2010-08-16 20:14:46 +02:00