I wonder why this didn’t just use ~root. There’s no way to disable
tilde expansion in Busybox ash, so ~root should always be available.
It would certainly be more elegant and reliable than this shell
function, unless there’s a fear that the root user might not be named
root. Given that there’s probably a guarantee that this script is
executed as root (whatever its name may be), ~/ ought to be safe.

Philip Prindeville wrote:
> Has this been tested where root isn't the first entry in /etc/passwd?
>
> Because there's no requirement for the entries to be sorted on uid...
>
>
> On 2/7/11 5:01 PM, [email protected] wrote:
>>
>> Author: acinonyx
>> Date: 2011-02-08 02:01:17 +0100 (Tue, 08 Feb 2011)
>> New Revision: 25417
>>
>> Modified:
>>    trunk/package/busybox/files/telnet
>> Log:
>> [package] busybox: get root home dir from /etc/passwd in telnet init
>> script (thanks tripolar)
>>
>> Modified: trunk/package/busybox/files/telnet
>> ===================================================================
>> --- trunk/package/busybox/files/telnet  2011-02-08 00:05:48 UTC (rev
>> 25416)
>> +++ trunk/package/busybox/files/telnet  2011-02-08 01:01:17 UTC (rev
>> 25417)
>> @@ -10,9 +10,16 @@
>>        test -n "${pwd#!}"
>>  }
>>
>> +get_root_home() {
>> +       local homedir=$([ -f "$1" ]&&  cat "$1")
>> +       homedir="${homedir#*:*:0:0:*:}"
>> +
>> +       echo "${homedir%%:*}"
>> +}
>> +
>>  has_ssh_pubkey() {
>>        ( /etc/init.d/dropbear enabled 2>  /dev/null&&  grep -qs "^ssh-"
>> /etc/dropbear/authorized_keys ) || \
>> -       ( /etc/init.d/sshd enabled 2>  /dev/null&&  grep -qs "^ssh-"
>> /root/.ssh/authorized_keys )
>> +       ( /etc/init.d/sshd enabled 2>  /dev/null&&  grep -qs "^ssh-"
>> "$(get_root_home /etc/passwd)"/.ssh/authorized_keys )
>>  }
>>
>>  start() {
>
> _______________________________________________
> openwrt-devel mailing list
> [email protected]
> https://lists.openwrt.org/mailman/listinfo/openwrt-devel
>
_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to