platform_system_core/adb
Nick Kralevich 65b8d749f7 Standarize on VFS_CAP_REVISION_2
In https://github.com/torvalds/linux/commit/8db6c34f1dbc8 , namespaced
file capabilities were introduced. That change updated VFS_CAP_REVISION
from VFS_CAP_REVISION_2 to VFS_CAP_REVISION_3.

Android code is written assuming v2 capabilities, and the code will
break if we naively try to treat a v2 structure as a v3 structure.
So don't even try.

Android kernels prior to v4.14 will not support this extended capability
structure, so attempting to set such capabilities will ultimately fail.

With 8db6c34f1dbc8, it appears that attempting to read a v3 capabilities
xattr will always downgrade the capability to a v2 capability, so it
really doesn't make sense to look for a v3 capability.

Android capabilities are only created at /system and /vendor filesystem
creation time by host tools. Android processes, within or outside a
namespace, are not permitted CAP_SETFCAP
(https://android-review.googlesource.com/c/platform/system/sepolicy/+/547801/1/public/domain.te
line 1101). So we should never have to deal with a v3 capability other
than those that might appear on the /system / /vendor partition at a
future date by a future author.

Bug: 69617725
Test: build/test/boot/CTS passes
Change-Id: I0378b3f1195dc62dbeb771944ab378c881441118
2017-11-27 14:17:42 -08:00
..
client adb: cleanup some portions of client usb interfaces 2017-10-13 07:31:49 -07:00
daemon Don't include the build number in the adbd binary. 2017-11-07 10:57:36 -08:00
sysdeps adb: don't try to resolve 'localhost' 2017-04-12 16:07:49 -07:00
.clang-format Remove extraneous .clang-format files 2017-03-14 14:06:31 -07:00
adb.cpp adb: remove SendConnectOnHost. 2017-10-02 14:38:03 -07:00
adb.h adb: clang-format for adb.h and client/usb_windows.cpp 2017-10-13 07:31:49 -07:00
adb_auth.h adb: rationalize types. 2016-10-06 14:50:02 -07:00
adb_auth_host.cpp Stop writing NUL bytes in adbkey.pub. 2017-05-01 16:05:16 -07:00
adb_client.cpp adb: allow selection of a specific transport. 2017-08-21 14:15:06 -07:00
adb_client.h adb: allow selection of a specific transport. 2017-08-21 14:15:06 -07:00
adb_io.cpp adb: increase the shell command length limit. 2017-06-16 18:01:11 -07:00
adb_io.h
adb_io_test.cpp
adb_listeners.cpp adb: fix erase-remove_if idiom. 2017-10-20 18:03:48 -07:00
adb_listeners.h adb: move all cleanup to a function with defined ordering. 2017-05-09 14:32:47 -07:00
adb_listeners_test.cpp
adb_mdns.h Add mDNS device discovery for adb client 2017-03-07 14:45:51 -08:00
adb_trace.cpp adb: fix two device offline problems. 2017-04-20 10:14:59 -07:00
adb_trace.h adb: fix two device offline problems. 2017-04-20 10:14:59 -07:00
adb_unique_fd.h adb: extract the adb-specific unique_fd out into its own header. 2016-09-01 15:49:06 -07:00
adb_utils.cpp Indicate that a packet was truncated. 2017-06-27 13:26:14 -07:00
adb_utils.h Give a clear error message if we can't start the server. 2017-06-20 14:21:41 -07:00
adb_utils_test.cpp adb: allow symlinks to directories in directory_exists. 2017-03-23 16:19:55 -07:00
adbd_auth.cpp adbd: add logging to troubleshoot usb issues. 2017-07-26 11:08:15 -07:00
Android.bp Create build target to pull adb test scripts. 2017-05-23 10:42:59 -07:00
Android.mk Merge "Revert "adbd: lessen security constraints when the device is unlocked"" 2017-08-31 08:27:33 +00:00
bugreport.cpp Merge "Don't preserve file attributes when pulling bugreport file..." 2017-08-22 22:41:26 +00:00
bugreport.h adb: allow selection of a specific transport. 2017-08-21 14:15:06 -07:00
bugreport_test.cpp Merge "Don't preserve file attributes when pulling bugreport file..." 2017-08-22 22:41:26 +00:00
commandline.cpp Fix adb tcpip tests. 2017-08-23 15:43:34 -07:00
commandline.h adb: allow selection of a specific transport. 2017-08-21 14:15:06 -07:00
console.cpp adb: add helper to get the ~/.android directory. 2016-09-01 15:43:22 -07:00
CPPLINT.cfg
diagnose_usb.cpp Improve udev failure diagnostics. 2017-05-05 12:50:16 -07:00
diagnose_usb.h
fdevent.cpp adb: add fdevent_run_on_main_thread. 2017-05-04 16:03:12 -07:00
fdevent.h adb: add fdevent_run_on_main_thread. 2017-05-04 16:03:12 -07:00
fdevent_test.cpp adb: add fdevent_run_on_main_thread. 2017-05-04 16:03:12 -07:00
fdevent_test.h adb: add fdevent_run_on_main_thread. 2017-05-04 16:03:12 -07:00
file_sync_client.cpp adb: Use kernel aio for functionfs. 2017-08-10 15:12:47 -07:00
file_sync_service.cpp Standarize on VFS_CAP_REVISION_2 2017-11-27 14:17:42 -08:00
file_sync_service.h Add --sync support to push. 2017-05-19 11:09:58 -07:00
framebuffer_service.cpp Send color space information with screenshots 2017-05-31 19:13:47 -07:00
jdwp_service.cpp adb: switch the jdwp control socket to SOCK_SEQPACKET. 2017-03-20 13:37:13 -07:00
line_printer.cpp adb: add missing newline when printing transfer rate. 2016-08-04 14:56:53 -07:00
line_printer.h
MODULE_LICENSE_APACHE2
NOTICE adb: append the libwinpthread COPYING to adb's NOTICE. 2017-03-08 21:27:59 -08:00
OVERVIEW.TXT
protocol.txt Precise command constants on adb/protoxol.txt 2016-08-30 01:30:12 +02:00
remount_service.cpp adb: replacing fs_mgr_read_fstab() with fs_mgr_read_fstab_default() 2017-03-11 09:37:56 +08:00
remount_service.h
security_log_tags.h
services.cpp adbd: improve thread names. 2017-09-28 16:45:24 -07:00
services.h
SERVICES.TXT
set_verity_enable_state_service.cpp DO NOT MERGE ANYWHERE Add comments and code about ro.boot.slot back 2017-11-10 16:20:27 -08:00
shell_service.cpp Set $HOSTNAME in adbd. 2017-10-03 08:44:27 -07:00
shell_service.h
shell_service_protocol.cpp
shell_service_protocol_test.cpp adb: fix undefined behavior 2016-10-19 19:39:44 -07:00
shell_service_test.cpp
socket.h adb: reformat comments. 2017-09-13 14:05:21 -07:00
socket_spec.cpp adb: parse tcp socket specs with base::ParseNetAddress. 2016-09-20 13:55:43 -07:00
socket_spec.h adb: parse tcp socket specs with base::ParseNetAddress. 2016-09-20 13:55:43 -07:00
socket_spec_test.cpp adb: parse tcp socket specs with base::ParseNetAddress. 2016-09-20 13:55:43 -07:00
socket_test.cpp adb: kill adb_thread_{create, join, detach, exit}. 2017-04-12 17:12:32 -07:00
sockets.cpp adb: add lock to remove_socket. 2017-09-13 14:05:39 -07:00
sockets.dia
SYNC.TXT
sysdeps.h Fix reference to out of scope local in adb_thread_setname. 2017-08-02 20:34:06 +00:00
sysdeps_test.cpp adb: enable -Wthread-safety on linux/darwin. 2017-05-03 14:28:21 -07:00
sysdeps_unix.cpp
sysdeps_win32.cpp Revert "adb: check our socketpair ends in our win32 emulation." 2017-03-30 13:12:37 -07:00
sysdeps_win32_test.cpp adb: add script to trace adbd. 2016-12-13 14:31:17 -08:00
test_adb.py Fix adb tcpip tests. 2017-08-23 15:43:34 -07:00
test_device.py Move GetDeviceTest from adb's test_device.py to adb package. 2017-11-08 14:39:06 -08:00
trace.sh adb: add script to trace adbd. 2016-12-13 14:31:17 -08:00
transport.cpp adb: remove SendConnectOnHost. 2017-10-02 14:38:03 -07:00
transport.h adb: remove SendConnectOnHost. 2017-10-02 14:38:03 -07:00
transport_local.cpp Merge "adbd: optionally use qemud pipe without ro.kernel.qemu" am: b3c363f32c am: 516ee2445d 2017-06-12 21:53:42 +00:00
transport_mdns.cpp adb: initialize mDNS asynchronously. 2017-05-04 16:03:12 -07:00
transport_mdns_unsupported.cpp Don't include mDNS support on platforms other than Linux 2017-03-07 14:45:52 -08:00
transport_test.cpp adb: fix two device offline problems. 2017-04-20 10:14:59 -07:00
transport_usb.cpp adb: remove SendConnectOnHost. 2017-10-02 14:38:03 -07:00
usb.h adb: move all cleanup to a function with defined ordering. 2017-05-09 14:32:47 -07:00