OSDN Git Service

android-x86/external-busybox.git
5 years agoAndroid: fix building errors of pie-x86 pie-x86 android-x86-9.0-r1 android-x86-9.0-r2
Chih-Wei Huang [Wed, 27 Feb 2019 11:03:07 +0000 (19:03 +0800)]
Android: fix building errors of pie-x86

5 years agoAndroid: don't define functions already in BIONIC_O oreo-x86 android-x86-8.1-r2 android-x86-8.1-r3 android-x86-8.1-r4 android-x86-8.1-r5 android-x86-8.1-r6
Chih-Wei Huang [Wed, 27 Feb 2019 10:59:44 +0000 (18:59 +0800)]
Android: don't define functions already in BIONIC_O

6 years agoAndroid: fix building issues of oreo-x86 android-x86-8.1-r1
Chih-Wei Huang [Fri, 4 May 2018 10:25:08 +0000 (18:25 +0800)]
Android: fix building issues of oreo-x86

To build with gcc, we have to add external/busybox to the variable
INTERNAL_LOCAL_CLANG_EXCEPTION_PROJECTS.

Add -fno-stack-protector to avoid missing __stack_chk_fail_local
issue.

6 years agoAndroid: add fbset nougat-x86 android-x86-7.1-r2 android-x86-7.1-r3 android-x86-7.1-r4 android-x86-7.1-r5
Chih-Wei Huang [Tue, 1 May 2018 04:44:14 +0000 (12:44 +0800)]
Android: add fbset

This is a tool to show and modify frame buffer device settings.

6 years agoAndroid: don't use clang to build busybox
Chih-Wei Huang [Tue, 1 May 2018 00:56:08 +0000 (08:56 +0800)]
Android: don't use clang to build busybox

The clang is buggy to build busybox. Use gcc instead.
This avoids top crashing.

6 years agoRemove lspci android-x86-7.1-r1
Chih-Wei Huang [Wed, 10 Jan 2018 08:48:02 +0000 (16:48 +0800)]
Remove lspci

6 years agoAndroid: fix improper usage of $(local-intermediates-dir)
Chih-Wei Huang [Mon, 25 Dec 2017 08:01:47 +0000 (16:01 +0800)]
Android: fix improper usage of $(local-intermediates-dir)

The macro $(local-intermediates-dir) should not be used in the recipes
since it depends on LOCAL_MODULE and LOCAL_MODULE_CLASS which are not
well-defined in the recipes. Use $(intermediates-dir-for) instead.

Besides, we should not remove the whole intermediates dir. Otherwise
the import_includes in that dir may be removed. It causes other errors.

6 years agoAndroid: quiet some warnings multiwindow-oreo
Chih-Wei Huang [Tue, 19 Sep 2017 04:25:59 +0000 (12:25 +0800)]
Android: quiet some warnings

To avoid tons of such warnings:

In file included from external/busybox/shell/ash.c:45:
In file included from external/busybox/include/busybox.h:8:
external/busybox/include/libbb.h:1379:120: warning: stdcall calling convention ignored on variadic function [-Wignored-attributes]
int ioctl_or_perror(int fd, unsigned request, void *argp, const char *fmt,...) __attribute__ ((format (printf, 4, 5))) FAST_FUNC;
                                                                                                                       ^

6 years agoFix building issues on Android 8.0
Chih-Wei Huang [Fri, 8 Sep 2017 11:30:00 +0000 (19:30 +0800)]
Fix building issues on Android 8.0

6 years agoAndroid: refine bionic branch switches
Chih-Wei Huang [Fri, 8 Sep 2017 11:18:30 +0000 (19:18 +0800)]
Android: refine bionic branch switches

6 years agoAndroid: change the generated path
Chih-Wei Huang [Fri, 8 Sep 2017 11:18:15 +0000 (19:18 +0800)]
Android: change the generated path

Move all generated files to $(local-generated-sources-dir).

6 years agoAndroid: minor cleanup
Chih-Wei Huang [Fri, 8 Sep 2017 11:17:48 +0000 (19:17 +0800)]
Android: minor cleanup

Remove unnecessary lines.

7 years agoFix building issues on Android 7.0
Chih-Wei Huang [Wed, 17 Aug 2016 14:21:38 +0000 (22:21 +0800)]
Fix building issues on Android 7.0

8 years agoAndroid: add the headers for string functions prototypes marshmallow-x86 android-x86-6.0-r1 android-x86-6.0-r2 android-x86-6.0-r3
Chih-Wei Huang [Thu, 15 Oct 2015 16:57:28 +0000 (00:57 +0800)]
Android: add the headers for string functions prototypes

Fix the building errors on Android 6.0 64-bit targets.

Signed-off-by: Chih-Wei Huang <cwhuang@linux.org.tw>
8 years agolsusb: add -v option to show bDeviceClass and DEVNAME
Chih-Wei Huang [Sun, 14 Jul 2013 14:43:22 +0000 (22:43 +0800)]
lsusb: add -v option to show bDeviceClass and DEVNAME

8 years agoxlseek: large file support
Chih-Wei Huang [Thu, 9 Jun 2011 06:57:44 +0000 (14:57 +0800)]
xlseek: large file support

This fixes the issue that mke2fs can't format large disks.

8 years agoFix busybox building
Iftekhar Rifat [Thu, 8 Oct 2015 12:12:54 +0000 (18:12 +0600)]
Fix busybox building

Change-Id: Icba1e069deb0f86ecc2cef3d6e008dc22660c788

8 years agoEnlarge android config for copy buffer
Keith Mok [Fri, 25 Sep 2015 19:48:13 +0000 (12:48 -0700)]
Enlarge android config for copy buffer

The copy buffer config is 4k currently which is too small
to be efficient on emmc. Enlarge it to 64k, makes cp
doubles the performance.

SAMBAR-434

Change-Id: Id315b910eb570f07b8c90fe4acbea270762b15e8

8 years agoDefine a writeable CONFDIR for iproute.
Sreeram Ramachandran [Tue, 8 Jul 2014 03:07:01 +0000 (20:07 -0700)]
Define a writeable CONFDIR for iproute.

Currently, the CONFDIR defaults to /etc/iproute2, which is on a read-only
filesystem. We plan to write some files at runtime to this directory, so we need
to point it at a read-write filesystem.

Note that nothing in Android actually uses (populates) the current CONFDIR
(/etc/iproute2). It doesn't even exist on the default system image. In other
words, this change doesn't break anything.

Change-Id: I69deb1a64d5d6647470823405bf0cc55b24b22de
Signed-off-by: Michael Bestas <mikeioannina@gmail.com>
JIRA: CYAN-6759

8 years agoiproute - Don't hardcode the path to config files
Christoph J. Thompson [Thu, 1 Mar 2012 06:44:43 +0000 (06:44 +0000)]
iproute - Don't hardcode the path to config files

Allows using an alternate path for config files.

Change-Id: I6fb6b2d9a4b05a7dce145574760b2a4d442377f9
Signed-off-by: Christoph J. Thompson <cjsthompson@gmail.com>
Signed-off-by: Michael Bestas <mikeioannina@gmail.com>
JIRA: CYAN-6759

9 years agoAndroid: simplify BUSYBOX_CROSS_COMPILER_PREFIX
Chih-Wei Huang [Thu, 19 Mar 2015 14:50:16 +0000 (15:50 +0100)]
Android: simplify BUSYBOX_CROSS_COMPILER_PREFIX

The original definition is complicated and won't work
if not build from a lunch environment.

The simplified definition should work for all archs
in all situations.

Change-Id: I961c46942b80e516bc89d41afe6e0fa28611e8de
Signed-off-by: bmc08gt <brandon.mcansh@gmail.com>
9 years agomount: address a couple crashes
Dan Pasanen [Thu, 5 Mar 2015 22:08:44 +0000 (16:08 -0600)]
mount: address a couple crashes

Change-Id: I3f978f40eb77d7679decf4a33b5c655ebb74d979

9 years agomount: respect a user-specified fstype
Dan Pasanen [Thu, 12 Feb 2015 02:35:23 +0000 (20:35 -0600)]
mount: respect a user-specified fstype

* Don't attempt to auto-detect the filesystem type using blkid
  if the user has specifically specified a type

Change-Id: Icebbc3189fc59af9fe52e12b693f3b7ae516e2c7

9 years agoget_devname: fix a couple warnings
Tanguy Pruvot [Wed, 18 Feb 2015 19:48:30 +0000 (13:48 -0600)]
get_devname: fix a couple warnings

Change-Id: I0dd2b109cbe015f30905169a573368716c2a73c5

9 years agomount: use blkid to determine fstype
Dan Pasanen [Thu, 5 Feb 2015 17:00:35 +0000 (11:00 -0600)]
mount: use blkid to determine fstype

* Add a function to volume_id that returns an fstype for a
  given device.

* During mount, if the fstype is auto, or blkid disagrees
  with the given fstype, trust blkid's determination of the
  filesystem type and run with it.

Change-Id: I357cbb5d255a30a27152a06de5328b2ef14553f9

9 years agoAndroid: fix for 32/64 __set_errno libc change
Tanguy Pruvot [Sun, 9 Nov 2014 08:10:51 +0000 (09:10 +0100)]
Android: fix for 32/64 __set_errno libc change

this export in libc is only present for 32 bit targets
for compatibility issues with the published NDK

Change-Id: I3ddab7d7f3c409cf7732ca23f23d3080fd6861a3

9 years agoAndroid: Fix for 64bit arm and x86_64 targets
Tanguy Pruvot [Fri, 7 Nov 2014 11:33:48 +0000 (12:33 +0100)]
Android: Fix for 64bit arm and x86_64 targets

tested on kitkat arm and lollipop x86_64/arm64

Change-Id: I6049c7d935f08db51bea8f3fb98fe025171f2ef9

9 years agoDefault to L's bionic
Ricardo Cerqueira [Wed, 5 Nov 2014 22:58:13 +0000 (22:58 +0000)]
Default to L's bionic

9 years agobusybox: restore mac/linux bash compat.
Tanguy Pruvot [Tue, 2 Sep 2014 05:00:11 +0000 (07:00 +0200)]
busybox: restore mac/linux bash compat.

previous commit was merged too fast.

Change-Id: I2573ce6074e988bae0cd2157fcdf1269f6b1ac99

9 years agobusybox: Use 'gsed' in Mac builds
Diogo Ferreira [Mon, 1 Sep 2014 14:43:20 +0000 (15:43 +0100)]
busybox: Use 'gsed' in Mac builds

Mac builds were broken because its sed implementation is not compatible
with some of the features used in this script. We already require gsed
for the Android build on Mac so this changes the script to take that
into account.

Change-Id: I37c10f8c543bdaf2c84409dacfaeccd24eb152d7

9 years agoMerge "[x86] Android 4.4.4 for x86 needs new implementation of "security_compute_rela...
Tanguy Pruvot [Tue, 2 Sep 2014 04:41:41 +0000 (04:41 +0000)]
Merge "[x86] Android 4.4.4 for x86 needs new implementation of "security_compute_relabel"" into cm-11.0

9 years agoNew BIONIC_L(Android-L) has own support for STPCPY
HazouPH [Mon, 25 Aug 2014 12:25:27 +0000 (14:25 +0200)]
New BIONIC_L(Android-L) has own support for STPCPY

The new BIONIC for android L preview has own support for STPCPY for all
arches. This patch removes inbuilt STPCPY support from busybox when BIONIC_L
is defined.

Change-Id: I189a4489450ca11eddd5b3f49a29f1fe46d0157a

9 years ago[x86] Android 4.4.4 for x86 needs new implementation of "security_compute_relabel"
HazouPH [Tue, 19 Aug 2014 21:28:38 +0000 (23:28 +0200)]
[x86] Android 4.4.4 for x86 needs new implementation of "security_compute_relabel"

Change-Id: I2e15f58f11c9ee74ed8e1b7bf731efd881b890d9

9 years agodmesg: rework color feature, compat. with more
Tanguy Pruvot [Sun, 10 Aug 2014 12:34:51 +0000 (14:34 +0200)]
dmesg: rework color feature, compat. with more

when used with less or more, the colors were not in
the same buffer, resulting blocs of colors.

Also, reset color numbers to the 16 ANSI ones.

Reduce the diff with busybox to be able to send the patch.
This is the first full busybox aosp feature with the new build system

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

9 years agoAndroid: typo in busybox folder
Tanguy Pruvot [Sun, 10 Aug 2014 11:24:35 +0000 (13:24 +0200)]
Android: typo in busybox folder

That was a remains of a test when the folder doesnt exists

Change-Id: If1989dc774ae7c6a8a94692ada6c321f67b5f4d9

9 years agoAndroid: clean only objects, not the folders
Tanguy Pruvot [Wed, 6 Aug 2014 23:10:32 +0000 (01:10 +0200)]
Android: clean only objects, not the folders

Some users building with a high number of threads
reported to me problems regarding the import_includes folder.

So, only delete objects files (.o) and keep import_includes

Change-Id: Ibf3ac818ff2bcf00bdf4f5243112001e2b2e15ef

9 years agoandroid: remove syscalls implemented in libbb
Tanguy Pruvot [Wed, 6 Aug 2014 13:38:40 +0000 (15:38 +0200)]
android: remove syscalls implemented in libbb

We missed the addition of libbb/missing_syscalls.c in 1.21

This also fix 'busybox date -s "2014-08-06 14:15:15"'
(tested in recovery too)

Change-Id: I2a1297e894638f000734b15757100c2d48984ed3

9 years agoandroid: fix building errors with Android L
Chih-Wei Huang [Wed, 30 Jul 2014 09:04:54 +0000 (17:04 +0800)]
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

9 years agoBionic changes for tty related applets
Tanguy Pruvot [Fri, 1 Aug 2014 03:36:56 +0000 (05:36 +0200)]
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

9 years agomktemp: warning fix for x86 and l-preview
Tanguy Pruvot [Tue, 5 Aug 2014 13:13:56 +0000 (15:13 +0200)]
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

9 years agoandroid: clearenv should not set environ to NULL
Tanguy Pruvot [Tue, 5 Aug 2014 11:13:28 +0000 (13:13 +0200)]
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

9 years agoAndroid: update busybox def PATH and cron folder
Tanguy Pruvot [Tue, 5 Aug 2014 06:35:55 +0000 (08:35 +0200)]
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

9 years agoselinux: implement missing selinux functions
Tanguy Pruvot [Tue, 5 Aug 2014 08:52:43 +0000 (10:52 +0200)]
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

9 years agoAndroid.mk: prevent warnings on make prepare
Tanguy Pruvot [Tue, 5 Aug 2014 09:24:28 +0000 (11:24 +0200)]
Android.mk: prevent warnings on make prepare

Add "+" to allow a new job

touch import_includes to prevent problems with -jN

Change-Id: Iea3cd527842a8bd770ff56fce01bcd0ff2d0db83

9 years agomktemp: include libc mktemp, safe in busybox
Tanguy Pruvot [Tue, 5 Aug 2014 06:14:29 +0000 (08:14 +0200)]
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

9 years agoandroid: on prepare, clean all intermediates
Tanguy Pruvot [Tue, 5 Aug 2014 04:04:46 +0000 (06:04 +0200)]
android: on prepare, clean all intermediates

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

Change-Id: I1bdf2948e0669b1de567381eb809f576e8f1eef5

9 years agoFix remaining bionic warnings
Tanguy Pruvot [Thu, 31 Jul 2014 03:51:18 +0000 (05:51 +0200)]
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

9 years agoandroid: backport pty implementation from aosp/master
Tanguy Pruvot [Thu, 31 Jul 2014 03:49:11 +0000 (05:49 +0200)]
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

9 years agoMakefile: remove warnings on initial version check
Tanguy Pruvot [Wed, 30 Jul 2014 10:58:37 +0000 (12:58 +0200)]
Makefile: remove warnings on initial version check

Android.mk is using a SUBMAKE variable which is only
used to get busybox version as a CFLAG. This one has
the -s (--silent) makeflag. So ignore the KBUILD_OUTPUT
default value if this flag is present.

Change-Id: Ifcc11d148d6707a8c301b3d2ba0370b91215647e

9 years agoAndroid: final cleanup of new build system
Tanguy Pruvot [Thu, 24 Jul 2014 21:21:48 +0000 (23:21 +0200)]
Android: final cleanup of new build system

Rename hidden config files to busybox-<profile>.config

Set also KBUILD_OUTPUT to prevent generation of files in src dir,
if local make without O= is made (which create host code)

That do not force the rebuild of config files, except with mm -B

With the help of Chih-Wei Huang <cwhuang@linux.org.tw>

Change-Id: Ic6bc2bc7177b1f266b9c0d1ccdfb925c1aa00d46
Signed-off-by: Tanguy Pruvot <tanguy.pruvot@gmail.com>
9 years agoroute: remove useless ipv6 header
Tanguy Pruvot [Wed, 23 Jul 2014 20:18:27 +0000 (22:18 +0200)]
route: remove useless ipv6 header

Change-Id: I4cb0f232be6b7060e9a1bd66b4946060911405de

9 years agoselinux: remove dependency on libsepol static lib
Tanguy Pruvot [Wed, 23 Jul 2014 18:20:10 +0000 (20:20 +0200)]
selinux: remove dependency on libsepol static lib

runcon applet is including flask.h for constants

the only one required is SECCLASS_PROCESS (2)

Change-Id: Ia57abc21b291e7cbf81fdd031baaa5ac4436cbc8

9 years agodarwin: fix make prepare, force prebuilt host compiler
Tanguy Pruvot [Wed, 23 Jul 2014 16:33:23 +0000 (18:33 +0200)]
darwin: fix make prepare, force prebuilt host compiler

also fix relative TARGET_OUT_INTERMEDIATES path on aosp/master

Change-Id: Ie26850726898dcd101eac88d29691a06a94648c5

9 years agoandroid: fix simple path for cm, add note for later
Tanguy Pruvot [Tue, 22 Jul 2014 16:56:44 +0000 (18:56 +0200)]
android: fix simple path for cm, add note for later

current AOSP (master) seems a bit different regarding
the variable $(TARGET_OUT_INTERMEDIATES)

Change-Id: I4a92743124950fadffcbff2b88f455db09a45d9e

9 years agoandroid: fix makefile to build on AOSP
Tanguy Pruvot [Tue, 22 Jul 2014 16:49:41 +0000 (18:49 +0200)]
android: fix makefile to build on AOSP

relative path seems could be buggy on aosp,
also some remains in include could make problems.

Change-Id: I4fcbf1bb8d7588d670e2fc5f8beb71397175c8bb

9 years agoRework busybox build process, remove compressed includes
Tanguy Pruvot [Mon, 21 Jul 2014 18:02:03 +0000 (20:02 +0200)]
Rework busybox build process, remove compressed includes

Like the kernel, use an output folder to generate includes

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

9 years agoandroid: add a switch to handle Android L
Tanguy Pruvot [Thu, 3 Jul 2014 09:34:01 +0000 (11:34 +0200)]
android: add a switch to handle Android L

restore support of wait3()
librpc: inet_makeaddr() is now in bionic

nslookup modified (_res is now hidden in libc dns)
tested on kitkat and built on l-preview

Note:
 With static version built on l-preview,
 nslookup doesnt work on kitkat due to a new socket flag
 named SOCK_CLOEXEC (0x80000), bacon kernel could be
 incompatible with this socket option (to check) or
 dnsproxyd could be not compatible.

 To be tested on a real Android 5.0 build later...

Change-Id: I109bcb6764e84c14c7fc890a6014326238fdf26f
Signed-off-by: Tanguy Pruvot <tanguy.pruvot@gmail.com>
9 years agobusybox-full: tune some config flags
Tanguy Pruvot [Tue, 1 Jul 2014 10:19:19 +0000 (12:19 +0200)]
busybox-full: tune some config flags

nslookup: enable VERBOSE_RESOLUTION_ERRORS

lzop: enable high compression support (7-9)

adds only 4K to busybox-full (arm)

Change-Id: I994fb45c6f7c7d07bb843429b42f25bb8192e4da

9 years agolzop: add overflow check
Denys Vlasenko [Mon, 30 Jun 2014 08:14:34 +0000 (10:14 +0200)]
lzop: add overflow check

See CVE-2014-4607
http://www.openwall.com/lists/oss-security/2014/06/26/20

function                                             old     new   delta
lzo1x_decompress_safe                               1010    1031     +21

Change-Id: I98acf36d2474a722759cad25c31bf1c486c00e61
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
9 years agobusybox-full: enable some new applets
Tanguy Pruvot [Sun, 22 Jun 2014 21:11:57 +0000 (23:11 +0200)]
busybox-full: enable some new applets

 chvt, deallocvt, fgconsole
 findfs, hwclock, lspci, nmeter
 openvt, rdate, setkeycodes, smemcap

 also enable swapon -p priority, and wc large support

 Unsymlinked: switch_root (only useful in static version)

 setkeycodes can be used to map usb keyboard special keys
 or on devices like tablet pcs with special keys

 Tested on x86 and arm targets

Change-Id: Ib0655715897f4088a81efb4ca74731b60c14ac23

9 years agotar: fix prototype typo, not for android config
Tanguy Pruvot [Sun, 22 Jun 2014 21:10:08 +0000 (23:10 +0200)]
tar: fix prototype typo, not for android config

Change-Id: I18875e8e8dae4858766d7ddf5b57c11cd8d0823b

9 years agostat: fix printing selinux context and null-dereference
Michael Gernoth [Fri, 20 Jun 2014 11:53:24 +0000 (13:53 +0200)]
stat: fix printing selinux context and null-dereference

busybox stat tries to always print the selinux context, even if it
is not requested which leads to a segmentation fault due to
dereferencing a null-pointer.

This also changes the format-string used to print the context to
so it actually produces useful output.

Change-Id: Idfe15c931840457f357f860e560fca5b0480ad6f

9 years agoandroid-x86: fix building warnings of kitkat-x86
Tanguy Pruvot [Thu, 29 May 2014 13:47:17 +0000 (15:47 +0200)]
android-x86: fix building warnings of kitkat-x86

works also on arm platform, so...

Author:    Chih-Wei Huang <cwhuang@linux.org.tw>
Change-Id: Ic3ade475c5b92de26623e277170c71c49f9e41de

9 years agounzip: set ENABLE_DESKTOP to allow unpacking signed Android OTAs
Steven Luo [Tue, 20 May 2014 09:08:00 +0000 (02:08 -0700)]
unzip: set ENABLE_DESKTOP to allow unpacking signed Android OTAs

Without this flag set, attempting to use BusyBox unzip to unpack a
signed Android OTA results in the error

unzip: zip flags 1 and 8 are not supported

Set ENABLE_DESKTOP for the unzip code to enable the necessary feature.

Change-Id: I3f764bde678311a8d3de787ea503f9cc793337a3

9 years agoselinux: enable support for bionic, add applets in config
Tanguy Pruvot [Fri, 16 May 2014 18:01:11 +0000 (20:01 +0200)]
selinux: enable support for bionic, add applets in config

require libsepol package (mm in external/libsepol or add package)

Tested applets:
  getenforce, setenforce, sestatus, selinuxenabled, ls -Z, tar -c,
  getsebool, setsebool,
  runcon, matchpathcon, chcon, restorecon, setfiles

Notes:
  matchpathcon selabel_lookup was broken by the incompatible regexec
  which is now in bionic libc (netbsd part), libselinux linkage used
  busybox one, so a rename of internal regex functions was required

  recovery will not use bb_regex lib, so regex commands could not
  work exactly like xbin or static ones (sed/less/expr/awk/pgrep)
  this is already the case, and can be changed by including libregex
  package in recovery + ifdef in xregex.h

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

9 years agotar: only include selinux context with -p opt
Tanguy Pruvot [Thu, 29 May 2014 15:04:08 +0000 (17:04 +0200)]
tar: only include selinux context with -p opt

Change-Id: I22134071cca5ac9fd66cff2cd1ddd09ff3d5c1bb

9 years agotar: add selinux context support on create
Tanguy Pruvot [Sat, 17 May 2014 15:27:40 +0000 (17:27 +0200)]
tar: add selinux context support on create

No flag is required for the moment, it will add them
to the tar if selinux is enabled on the machine.

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

9 years agobionic: some new type warnings fixes
Tanguy Pruvot [Sat, 17 May 2014 15:30:48 +0000 (17:30 +0200)]
bionic: some new type warnings fixes

Change-Id: I5f829e5918fb0960bb9670deac54c1fe0184550f

10 years agotouch -h: quickfix for bionic
Tanguy Pruvot [Sat, 5 Oct 2013 10:34:16 +0000 (12:34 +0200)]
touch -h: quickfix for bionic

Change-Id: I7821c039214bad2741baeb9177d31e22495583d8

10 years agoupdate config for 1.22.1, add F2FS volume_id support
Tanguy Pruvot [Sun, 6 Apr 2014 19:26:14 +0000 (21:26 +0200)]
update config for 1.22.1, add F2FS volume_id support

Change-Id: I5a80246222448c238ef48a0eb6d906f011f3f43d

10 years agozcat: complain if input is not compressed
Denys Vlasenko [Sun, 2 Feb 2014 01:06:38 +0000 (02:06 +0100)]
zcat: complain if input is not compressed

function                                             old     new   delta
buffer_fill_and_print                                178     191     +13
varvalue                                             735     743      +8
bbunpack                                             747     755      +8
open_zipped                                           85      89      +4
xmalloc_open_zipped_read_close                        61      63      +2
get_addr_1                                           240     242      +2
fbsplash_main                                       1228    1230      +2
pstree_main                                          322     321      -1
builtin_type                                         121     119      -2
do_load                                              954     926     -28
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 7/3 up/down: 39/-31)              Total: 8 bytes

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agolibbb: open_zipped() should not fail on non-compressed files
Denys Vlasenko [Mon, 27 Jan 2014 12:02:18 +0000 (13:02 +0100)]
libbb: open_zipped() should not fail on non-compressed files

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agonc: fix option bit positions. Closes 6926
Denys Vlasenko [Wed, 26 Feb 2014 12:58:59 +0000 (13:58 +0100)]
nc: fix option bit positions. Closes 6926

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agoiplink: fix build with kernel versions prior to 2.6.23
Eugene Rudoy [Wed, 22 Jan 2014 10:49:46 +0000 (11:49 +0100)]
iplink: fix build with kernel versions prior to 2.6.23

Signed-off-by: Eugene Rudoy <gene.devel@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agolibbb: fix parsing of "10101010" date/time form
Denys Vlasenko [Tue, 21 Jan 2014 06:58:18 +0000 (07:58 +0100)]
libbb: fix parsing of "10101010" date/time form

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agoash: in bash compat mode, always export $SHLVL
Denys Vlasenko [Tue, 7 Jan 2014 15:12:48 +0000 (16:12 +0100)]
ash: in bash compat mode, always export $SHLVL

function                                             old     new   delta
ash_main                                            1437    1442      +5

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agolibarchive: open_zipped() does not need to check extensions for e.g. gzip
Denys Vlasenko [Fri, 10 Jan 2014 13:06:57 +0000 (13:06 +0000)]
libarchive: open_zipped() does not need to check extensions for e.g. gzip

We only need to check for signature-less extensions,
currently only .lzma. The rest can be happily autodetected.

This fixes "zcat FILE_WITHOUT_GZ_EXT" case, among others.

Change-Id: I2d52e398e2422265ba2ef530f9b2edfb20affc6f
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agoMerge branch '1_22_stable' of git://git.busybox.net/busybox into 1.22
Ricardo Cerqueira [Fri, 4 Apr 2014 17:09:03 +0000 (18:09 +0100)]
Merge branch '1_22_stable' of git://git.busybox.net/busybox into 1.22

Change-Id: I670b5234b100649bdf916f69f99e76048e2ec82c

10 years agoApply post-1.22.0 patches, bump version to 1.22.1
Denys Vlasenko [Mon, 20 Jan 2014 02:41:48 +0000 (03:41 +0100)]
Apply post-1.22.0 patches, bump version to 1.22.1

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agoBump version to 1.22.0
Denys Vlasenko [Tue, 31 Dec 2013 23:42:11 +0000 (00:42 +0100)]
Bump version to 1.22.0

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agotestsuite: remove forgotten debug hack
Denys Vlasenko [Tue, 31 Dec 2013 22:25:46 +0000 (23:25 +0100)]
testsuite: remove forgotten debug hack

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agofix failures found by randomconfig builds
Denys Vlasenko [Tue, 31 Dec 2013 22:22:36 +0000 (23:22 +0100)]
fix failures found by randomconfig builds

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agotestsuite: disable tests for no longer supported bbox-specific date formats
Denys Vlasenko [Tue, 31 Dec 2013 17:57:39 +0000 (18:57 +0100)]
testsuite: disable tests for no longer supported bbox-specific date formats

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agoadduser: check whether run with no USERNAME. Closes 6728
Denys Vlasenko [Fri, 20 Dec 2013 19:45:02 +0000 (20:45 +0100)]
adduser: check whether run with no USERNAME. Closes 6728

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agotestsuite: fix false positives for du
Denys Vlasenko [Fri, 20 Dec 2013 01:55:16 +0000 (02:55 +0100)]
testsuite: fix false positives for du

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agobuild system: fix make gconfig
Daniel Borca [Thu, 19 Dec 2013 03:43:24 +0000 (04:43 +0100)]
build system: fix make gconfig

Was getting "undefined reference to symbol 'dlsym@@GLIBC_2.2.5'".

Signed-off-by: Daniel Borca <dborca@yahoo.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agosed: accept s///i as a synonym for s///I ("ignore case")
David A. Wheeler [Fri, 6 Dec 2013 01:42:17 +0000 (20:42 -0500)]
sed: accept s///i as a synonym for s///I ("ignore case")

Signed-off-by: David A. Wheeler <dwheeler@dwheeler.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agohostname: do not use gethostbyname() for "hostname -s"
Michael Tokarev [Tue, 17 Dec 2013 18:13:45 +0000 (19:13 +0100)]
hostname: do not use gethostbyname() for "hostname -s"

There's no reason to call gethostbyname() on the value returned
by uname() when asked just for a short name of a host.  This may
also be wrong, when uname is set to one value, but in /etc/hosts
(or elsewhere) the "canonical" name is different.  This is often
the case for localhost entry in /etc/hosts:

  127.0.0.1     localhost       myname

With this content of /etc/hosts, and uname being set to myname,
busybox hostname -s will return localhost, while regular
hostname utility returns myname.

Fix this by not calling gethostbyname() for the simple
'hostname -s' use.

Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agowget: user-friendly fallback to http
Lauri Kasanen [Tue, 17 Dec 2013 18:03:41 +0000 (19:03 +0100)]
wget: user-friendly fallback to http

GNU wget: wget google.com // ok
bb before: wget google.com // wget: not an http or ftp url

function                                             old     new   delta
parse_url                                            317     339     +22

Signed-off-by: Lauri Kasanen <curaga@operamail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agokill[all[5]]: code shrink
Denys Vlasenko [Mon, 16 Dec 2013 16:45:44 +0000 (17:45 +0100)]
kill[all[5]]: code shrink

function                                             old     new   delta
kill_main                                            992     947     -45

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agokillall5: return 2 if no processes got killed
Uros Vampl [Mon, 16 Dec 2013 16:44:58 +0000 (17:44 +0100)]
killall5: return 2 if no processes got killed

function                                             old     new   delta
kill_main                                            943     992     +49

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agodo not fail build if MAXSYMLINKS isn't defined
Michael Tokarev [Mon, 9 Dec 2013 10:45:01 +0000 (14:45 +0400)]
do not fail build if MAXSYMLINKS isn't defined

This is needed for, eg, hurd, which is known to have no constraints.

Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agoexpand: use printable_string instead of hard-coding implementation
Michael Tokarev [Mon, 9 Dec 2013 12:09:35 +0000 (16:09 +0400)]
expand: use printable_string instead of hard-coding implementation

function                                             old     new   delta
expand_main                                          709     690     -19

Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agontpd: speed up resyncing if our clock is seriously off
Denys Vlasenko [Sun, 8 Dec 2013 15:11:04 +0000 (16:11 +0100)]
ntpd: speed up resyncing if our clock is seriously off

function                                             old     new   delta
recv_and_process_peer_pkt                            892     922     +30

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agontpd: do not invalidate datapoints after step
Denys Vlasenko [Sat, 7 Dec 2013 16:29:03 +0000 (17:29 +0100)]
ntpd: do not invalidate datapoints after step

Used to set p->filter_datapoint[i].d_dispersion = MAXDISP
and clear reachable bits, but this proved to be too agressive:
after step (tested with suspinding laptop for ~30 secs),
this caused all previous data to be considered invalid,
making us needing to collect full ~8 datapoins per peer
after step in order to start trusting them.
In turn, this was making poll interval decrease even after
step was done. (Poll interval decreases already before step
in this scenario, because we see large offsets and end up with
no good peer to select).

function                                             old     new   delta
reset_peer_stats                                     157     139     -18

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agontpd: comment out "spike detection" code
Denys Vlasenko [Wed, 4 Dec 2013 16:12:11 +0000 (17:12 +0100)]
ntpd: comment out "spike detection" code

function                                             old     new   delta
update_local_clock                                   982     835    -147

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agontpd: promote log level 3 to production
Denys Vlasenko [Wed, 4 Dec 2013 15:32:09 +0000 (16:32 +0100)]
ntpd: promote log level 3 to production

Without it, peer selection logic is hard to debug

function                                             old     new   delta
update_local_clock                                   861     982    +121
select_and_cluster                                   962    1065    +103
common_ping_main                                    1788    1821     +33
huft_build                                          1287    1296      +9
chpst_main                                           708     704      -4
INET6_resolve                                        127     119      -8
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 4/2 up/down: 266/-12)           Total: 254 bytes

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agontpd: let user know if spike was detected
Denys Vlasenko [Wed, 4 Dec 2013 12:19:04 +0000 (13:19 +0100)]
ntpd: let user know if spike was detected

function                                             old     new   delta
update_local_clock                                   861     943     +82

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agoUse unsigned printf/scanf conversion where more appropriate
Denys Vlasenko [Fri, 29 Nov 2013 15:45:45 +0000 (16:45 +0100)]
Use unsigned printf/scanf conversion where more appropriate

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
10 years agofix assorted unused code and wrong format specs found by cppchekc (bug 6716)
Denys Vlasenko [Fri, 29 Nov 2013 15:43:33 +0000 (16:43 +0100)]
fix assorted unused code and wrong format specs found by cppchekc (bug 6716)

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>