30a86ebc7a
Don't follow symlinks. Suggestion from Jann Horn. Also, add O_CLOEXEC. This prevents file descriptor leakage should this code ever run in a multithreaded environment. I'm not sure if either of these changes actually address any security concerns, but it's harmless, so go ahead and add it. Bug: 15675141 Change-Id: I7ba4e9d10439b7150f59759b54e3ad8ccba411e3 |
||
---|---|---|
adb | ||
adf | ||
cpio | ||
debuggerd | ||
fastboot | ||
fastbootd | ||
fs_mgr | ||
gpttool | ||
healthd | ||
include | ||
init | ||
libbacktrace | ||
libcutils | ||
libdiskconfig | ||
libion | ||
liblog | ||
libmemtrack | ||
libmincrypt | ||
libnetutils | ||
libpixelflinger | ||
libsparse | ||
libsuspend | ||
libsync | ||
libsysutils | ||
libusbhost | ||
libutils | ||
libziparchive | ||
libzipfile | ||
lmkd | ||
logcat | ||
logd | ||
logwrapper | ||
mkbootimg | ||
netcfg | ||
reboot | ||
rootdir | ||
run-as | ||
sdcard | ||
toolbox | ||
.gitignore | ||
Android.mk | ||
CleanSpec.mk | ||
MODULE_LICENSE_APACHE2 | ||
NOTICE | ||
README | ||
ThirdPartyProject.prop |
README
The system/ directory is intended for pieces of the world that are the core of the embedded linux platform at the heart of Android. These essential bits are required for basic booting, operation, and debugging. They should not depend on libraries outside of system/... (some of them do currently -- they need to be updated or changed) and they should not be required for the simulator build. The license for all these pieces should be clean (Apache2, BSD, or MIT). Currently system/bluetooth/... and system/extra/... have some pieces with GPL/LGPL licensed code. Assorted Issues: - pppd depends on libutils for logging - pppd depends on libcrypt/libcrypto - init, linker, debuggerd, toolbox, usbd depend on libcutils - should probably rename bionic to libc