ftpd: add optional support for authentication

function                                             old     new   delta
cmdio_get_cmd_and_arg                                  -     237    +237
get_passwd                                             -      97     +97
check_password                                         -      82     +82
ftpd_main                                           2297    2178    -119
ask_and_check_password_extended                      206      84    -122
------------------------------------------------------------------------------
(add/remove: 3/0 grow/shrink: 0/2 up/down: 416/-241)          Total: 175 bytes

Signed-off-by: Morten Kvistgaard <MK@pch-engineering.dk>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
update config for 1.23

busybox-full: add ping6, whois and arping, fatattr

Add also script and scriptreplay applets

Usage :
/ # script -t /data/local/script.test 2>/data/local/script.timing
/ # scriptreplay /data/local/script.timing /data/local/script.test

Change-Id: I89deac5161f93278fc477b57632eb717947075cd
android: add missing mempcpy function

Change-Id: I9ae3f0820825d1b1ae37c505d535819452e02c53
android: backport pty implementation from aosp/master

This is not (yet) in l-preview branch but on master
The only way to prevent duplicated includes was to
test the existence of a new constant added after
l-preview bionic source release.

Also use compatible hasmntopt() return type
(swapon/off compilation warnings)

Signed-off-by: Tanguy Pruvot <tanguy.pruvot@gmail.com>

Change-Id: I4ee6e7752eab84de4566ae86a90171b8241fcaea
Fix remaining bionic warnings

Tested on arm and x86 (kitkat),
aosp/master has some other ones

Also update the readme and android.h

Change-Id: I170b16f2e091b99f971fb518bf0106c0e92adfdd
android: on prepare, clean all intermediates

This was requested to me to prevent no clobbered builds failures
on busybox config changes.

Change-Id: I1bdf2948e0669b1de567381eb809f576e8f1eef5
mktemp: include libc mktemp, safe in busybox

This commit remove the last warning in busybox,
and prevent users to try to use mkstemp which has not
the right behavior.

Change-Id: I5aaae8044769bb1893f2430287d72b3abbee796c
Android.mk: prevent warnings on make prepare

Add "+" to allow a new job

touch import_includes to prevent problems with -jN

Change-Id: Iea3cd527842a8bd770ff56fce01bcd0ff2d0db83
selinux: implement missing selinux functions

checkPasswdAccess() is deprecated
http://linux.die.net/man/3/selinux_check_passwd_access

also, ensure context is initialized in run_shell()

Note: these stubs are just compatible with busybox source code
Should be enhanced, or implemented in libselinux...

Change-Id: I22ea2679191d5c0887b6ef8c77f09a032c226876
Android: update busybox def PATH and cron folder

remove /usr/bin, add /vendor/bin, like official path

config folder was badly set to debian style cron.d
but busybox variant is a bit different :

  mkdir /etc/crontabs
  echo "* * * * * log CRON!" > /etc/crontabs/`whoami`
  crond -f

Change-Id: I0b9af08a557a952b5074da3231f32433f447f558
android: clearenv should not set environ to NULL

Remove the old internal clearenv() function which is
no more required (exported in libc)

Change-Id: I357f6a3b057c366761b481c09b471d7c53d7a419
mktemp: warning fix for x86 and l-preview

mktemp is almost not used in busybox, so rename
the function in the mktemp applet to prevent bionic
warning on include.

Change-Id: I4332d3b957aafd6174eb7fe098b099eae779d3c9
Bionic changes for tty related applets

Tested (but applets not included/enabled)
getty, login, su, passwd, mkpasswd, cryptpw

Sample /etc/passwd required before 'passwd' :
root:x:0:0:root:/:/system/xbin/bash

busybox su allow to change current user, if you are root
Example: "busybox su shell -c /system/xbin/bash"

busybox login allow also to do that :
Example: "busybox login shell"

getpwnam() returns now an empty string in passwd member
instead of null, busybox often check directly pw->pw_passwd[0]

Update also selinux related stubs after tests on x86 4.4.2,
l-preview and aosp/master

If you want to include these applets, here is the required
source list to add in busybox-full.sources :

 libbb/correct_password.c libbb/pw_encrypt.c libbb/update_passwd.c
 loginutils/getty.c loginutils/login.c loginutils/su.c
 loginutils/passwd.c loginutils/chpasswd.c loginutils/cryptpw.c

And the config flags to add :

 CONFIG_GETTY=y
 CONFIG_LOGIN=y
 CONFIG_FEATURE_NOLOGIN=y
 CONFIG_PASSWD=y
 CONFIG_CRYPTPW=y
 CONFIG_CHPASSWD=y
 CONFIG_SU=y
 CONFIG_FEATURE_SU_CHECKS_SHELLS=y

Signed-off-by: Tanguy Pruvot <tanguy.pruvot@gmail.com>

Change-Id: I96ee64f0872856fad6b3ff299faafad6451da556
android: fix building errors with Android L

Tested OK with Android L PDK LRW17D.

The asm files are regenerated by Android L gensyscalls.py.

syscalls: restore compatibilty with current branch

on arm __NR_stime constant is undefined in asm/unistd.h

add also BIONIC_L define for assembly files (syscalls)
tested on arm and x86 (not on mips)

Signed-off-by: Tanguy Pruvot <tanguy.pruvot@gmail.com>

Change-Id: If5b6a6d3f8b4c10339f8e7b0bf340d02c1cf26cb
Test some tty related applets (getty, login, su)

and passwd, mkpasswd, cryptpw

Change-Id: I96ee64f0872856fad6b3ff299faafad6451da556
Android.mk: toggle l-preview config flag

Change-Id: I4465b88a0337f5f267d501a94b2f71f8ef07b318