We alloc exactly the number of parameters in parse_line_action.
When these parameters are for execve, which request the argv
terminated by a NULL, it may fail randomly, depends on what
is there after the end of the buffer we allocated
Extend the buffer to hold one more pointer, and make sure
it is NULL to fix this bug.
Change-Id: I180df8be3502f51f81a6abb6ebf5c156eb59c9fc
Signed-off-by: Ethan <ethan.too@gmail.com>
This should be much nicer than peppering init.rc with chown/chmod
directives.
Also, remove some dead code and obsolete comments.
Change-Id: I10895f10a9cf2f1226c8d12976cd3db3743da9ec
Merge commit '6713a2e0c659be9d992e75ab420da5680f522658' into gingerbread-plus-aosp
* commit '6713a2e0c659be9d992e75ab420da5680f522658':
Fix USB endianness bugs on Linux.
Merge commit '81347d2764b32ec7224d4e2ab3348103816400b2' into gingerbread-plus-aosp
* commit '81347d2764b32ec7224d4e2ab3348103816400b2':
adb: Improved detection of big endian architecture
The fields device->idVendor and device->idProduct should not be
converted from little endian to native byteorder, because the
kernel has in fact done so already!
On the other hand, the descriptors read using raw ioctl:s in
register_device() do need to be converted.
Change-Id: I5fe08b626b14ead56a592b68d026690e343c2656
Instead of testing for the (compiler specific) define
__ppc__ explicitly, use the define HAVE_BIG_ENDIAN provided by
AndroidConfig.h. That way, it should work on all big endian
systems.
Change-Id: Ic4d62afcefce4c8ad5716178ebfcb2b055ac73ce
Merge commit 'd02e521d79a49471b3f1dc3717e842948df64789' into gingerbread-plus-aosp
* commit 'd02e521d79a49471b3f1dc3717e842948df64789':
adb: Add support for Philips's USB vendor ID
Merge commit '89aff1d22662c64cc2de384e7e2c699e4d1d5d47' into gingerbread-plus-aosp
* commit '89aff1d22662c64cc2de384e7e2c699e4d1d5d47':
Add Asus USB vendor ID to adb.
Merge commit '8e0e372a388434a0553810e2b958e59a26a6bd96' into gingerbread-plus-aosp
* commit '8e0e372a388434a0553810e2b958e59a26a6bd96':
Set PROT_EXEC on the whole pixelflinger code cache.
The pointer difference between word pointers is a number
of words, and it needs to be multiplied by the size of a word
to get a proper byte size.
Without this, we tend to see crashes when the code crosses
a page boundary.
Bug: 3026204
Bug: 3097482
Change-Id: I37776d26d5afcdb1da71680de02fbb95e6548371
Merge commit '9cd8057b6e8f5fc1254a4ed19e8127b5091b5dce' into gingerbread-plus-aosp
* commit '9cd8057b6e8f5fc1254a4ed19e8127b5091b5dce':
Define HAVE_STAT_ST_MTIM and disable it under MinGW/Cygwin.
This is used by build\libs\host\CopyFile.c
Also define HAVE_PRINTF_ZD since printf %zd is not
supported on MinGW/Cygwin.
This is used by frmk/base/libs/utils/ZipFileRO.cpp
Change-Id: I570ac5dd0a5b256ee67ad62433f1226597da3ea4
Merge commit '83c6b052918178033875e7ea54ca746cf7303f87' into gingerbread-plus-aosp
* commit '83c6b052918178033875e7ea54ca746cf7303f87':
Print out the signal code along with signal number and address.
ZipFileRO uses pread() to guarantee atomic reads at an offset, so use
the HAVE_PREAD flag to trigger off of. The only platform that doesn't
implement it directly is Windows.
Change-Id: Ic927611dc45b75ff8f672ed59afee5be1ad07ab4
Merge commit '912ff85b035e0e6bc109812c1ea5661ea4df5967' into gingerbread-plus-aosp
* commit '912ff85b035e0e6bc109812c1ea5661ea4df5967':
init: Add support for SOCK_SEQPACKET socket type
Merge commit '2f7b72f9e8d06c80957cdf384d23d3bf5bd5ce5c' into gingerbread-plus-aosp
* commit '2f7b72f9e8d06c80957cdf384d23d3bf5bd5ce5c':
netstat should include /proc/net/tcp6 and /proc/net/udp6 data
Merge commit 'd55f0adfb5ec4202ad5bd5d188e66c0f6a27b0aa' into gingerbread-plus-aosp
* commit 'd55f0adfb5ec4202ad5bd5d188e66c0f6a27b0aa':
Qualify the source argument of atomic loads as a const pointer.
Merge commit 'f62b23f2c1540221621024c850fdf615dda0c903' into gingerbread-plus-aosp
* commit 'f62b23f2c1540221621024c850fdf615dda0c903':
Add new USB vendor IDs.
Merge commit '6490257d116c35d3da927ee7b91179dde64ef713' into gingerbread-plus-aosp
* commit '6490257d116c35d3da927ee7b91179dde64ef713':
Make netd restart when system server hangs on it.
netd has been seen hanging (cause suspected but unconfirmed)
which then brings down the system server which blocks forever
on its main thread trying to connect to netd with its hung
event loop.
This then results in an infinite watchdog runtime restart loop
because the situation never improves: netd is still borked.
Instead, we should kill netd and give it another chance when
the system server dies.
Bug: 3018996
Bug: 3017876
Change-Id: Ibf9ecf0ffcb78e48c38e5167f21cbeefe0e2a47f