/bionic/tests/ |
D | libgen_basename_test.cpp | 30 static const char* gnu_basename(const char* in) { in gnu_basename() argument 31 return basename(in); in gnu_basename() 42 static char* posix_basename(char* in) { in posix_basename() argument 43 return basename(in); in posix_basename() 50 static void __TestGnuBasename(const char* in, const char* expected_out, int line) { in __TestGnuBasename() argument 52 const char* out = gnu_basename(in); in __TestGnuBasename() 53 ASSERT_STREQ(expected_out, out) << "(" << line << "): " << in << std::endl; in __TestGnuBasename() 54 ASSERT_EQ(0, errno) << "(" << line << "): " << in << std::endl; in __TestGnuBasename() 58 static void __TestPosixBasename(const char* in, const char* expected_out, int line) { in __TestPosixBasename() argument 59 char* writable_in = (in != nullptr) ? strdup(in) : nullptr; in __TestPosixBasename() [all …]
|
D | libgen_test.cpp | 22 static void TestDirname(const char* in, const char* expected_out) { in TestDirname() argument 23 char* writable_in = (in != nullptr) ? strdup(in) : nullptr; in TestDirname() 26 ASSERT_STREQ(expected_out, out) << in; in TestDirname() 27 ASSERT_EQ(0, errno) << in; in TestDirname() 43 static void TestBasename(const char* in, const char* expected_out, int expected_rc, in TestBasename() argument 46 int rc = basename_r(in, buf, buf_size); in TestBasename() 47 ASSERT_EQ(expected_rc, rc) << in; in TestBasename() 49 ASSERT_STREQ(expected_out, buf) << in; in TestBasename() 51 ASSERT_EQ(expected_errno, errno) << in; in TestBasename() 54 static void TestDirname(const char* in, const char* expected_out, int expected_rc, in TestDirname() argument [all …]
|
D | iconv_test.cpp | 60 char* in = const_cast<char*>(utf8); in TEST() local 61 size_t in_bytes = strlen(in); in TEST() 66 EXPECT_EQ(0U, iconv(c, &in, &in_bytes, &out, &out_bytes)); in TEST() 86 char* in = const_cast<char*>(utf8); in TEST() local 87 size_t in_bytes = strlen(in); in TEST() 95 EXPECT_EQ(2U, iconv(c, &in, &in_bytes, &out, &out_bytes)); in TEST() 115 char* in = const_cast<char*>(utf8); in TEST() local 116 size_t in_bytes = strlen(in); in TEST() 124 EXPECT_EQ(static_cast<size_t>(-1), iconv(c, &in, &in_bytes, &out, &out_bytes)); in TEST() 143 char* in = const_cast<char*>(utf8); in TEST() local [all …]
|
D | NOTICE | 4 you may not use this file except in compliance with the License. 9 Unless required by applicable law or agreed to in writing, software 20 you may not use this file except in compliance with the License. 25 Unless required by applicable law or agreed to in writing, software 36 Redistribution and use in source and binary forms, with or without 41 * Redistributions in binary form must reproduce the above copyright 42 notice, this list of conditions and the following disclaimer in 64 you may not use this file except in compliance with the License. 69 Unless required by applicable law or agreed to in writing, software 80 you may not use this file except in compliance with the License. [all …]
|
/bionic/docs/ |
D | status.md | 7 for changes related to native code loading in various Android releases. 13 You can see the current status with respect to POSIX in the form of tests: 42 and apps should use icu4c (or do their i18n work in Java) instead. 51 Run `./libc/tools/check-symbols-glibc.py` in bionic/ for the current 58 New libc functions in U (API level 34): 60 * `memset_explicit` in <string.h> (C23 addition). 61 * `__freadahead` in <stdio_ext.h> (in musl but not glibc). 63 `posix_spawn_file_actions_addfchdir_np` in <spawn.h> (in musl/glibc 66 New libc behavior in U (API level 34): 67 * Support for `%b` and `%B` in the printf/wprintf family, `%b` in the [all …]
|
D | fdtrack.md | 5 fdtrack is a file descriptor leak checker added to Android in API level 30. 7 fdtrack consists of two parts: a set of hooks in bionic to register a callback 12 bionic provides a header in the `bionic_libc_platform_headers` header_lib at <[bionic/fdtrack.h](ht… 15 called at any point in order to start capturing events, but be sure to properly 32 don't use it in code that can be used on multiple platform versions.) 39 spawning a thread that regularly checks the count of fds in the process, turns 41 This dumps the output to logcat, which will be available in both the tombstone 45 There are multiple methods to unwind in Android: 55 * Slow - infeasible to be used always in latency-sensitive processes 66 * Chasing the frame pointer will often result in multiple frames inside the
|
D | NOTICE | 36 "Work" shall mean the work of authorship, whether in Source or 38 copyright notice that is included in or attached to the work 39 (an example is provided in the Appendix below). 41 "Derivative Works" shall mean any work, whether in Source or Object 52 submitted to Licensor for inclusion in the Work by the copyright owner 61 designated in writing by the copyright owner as "Not a Contribution." 72 Work and such Derivative Works in Source or Object form. 77 (except as stated in this section) patent license to make, have made, 84 cross-claim or counterclaim in a lawsuit) alleging that the Work 91 Work or Derivative Works thereof in any medium, with or without [all …]
|
D | clang_fortify_anatomy.md | 2 *determined that it'd be good to hold in Bionic's docs, too. Due to the* 4 *Bionic's libc, rather than the live code in Bionic. Same for Clang.* 12 actually works in Bionic at the time of writing. Other FORTIFY implementations 13 that target Clang should use very similar mechanics. This document exists in part 20 common library functions. Textually, these extensions exist purely in libc, but 21 all implementations of FORTIFY rely heavily on C language extensions in order 26 - Buffer overruns in functions where pointers+sizes are passed (e.g., `memcpy`, 29 out-of-bounds bits in `umask`). 38 because FORTIFY has significant flexibility in what it considers to be an 47 since FORTIFY's design for both Clang and GCC relies on optimizations in order [all …]
|
/bionic/libc/kernel/uapi/linux/ |
D | vboxguest.h | 44 } in; member 62 } in; member 74 } in; member 99 } in; member 109 } in; member 123 } in; member 134 } in; member 146 } in; member 170 } in; member
|
/bionic/libc/ |
D | SECCOMP_BLOCKLIST_COMMON.TXT | 1 # This file is used to populate seccomp's allowlist policy in combination with SYSCALLS.TXT. 5 # Any entry in the blocklist must be in the syscalls file and not be in the allowlist file
|
D | NOTICE | 4 Redistribution and use in source and binary forms, with or without 9 2. Redistributions in binary form must reproduce the above copyright 10 notice, this list of conditions and the following disclaimer in the 31 Redistribution and use in source and binary forms, with or without 35 * Redistributions in binary form must reproduce the above copyright 36 notice, this list of conditions and the following disclaimer in the 72 Redistribution and use in source and binary forms, with or without 77 2. Redistributions in binary form must reproduce the above copyright 78 notice, this list of conditions and the following disclaimer in the 101 Redistribution and use in source and binary forms, with or without [all …]
|
D | SECCOMP_ALLOWLIST_COMMON.TXT | 1 # This file is used to populate seccomp's allowlist policy in combination with SYSCALLS.TXT. 40 # (Potentially) useful new syscalls which we don't yet use in bionic. 43 # Since Linux 2.5, not in glibc. 49 # Since Linux 3.14, not in glibc. 52 # Since Linux 3.19, not in glibc (and not really needed to implement fexecve). 54 # Since Linux 4.3, not in glibc. Probed for and conditionally used by ART. 56 # Since Linux 5.1, not in glibc. Not used by bionic, and not likely ever 57 # to be (because the last thing anyone needs is a new 32-bit ABI in the 76 # Since Linux 5.4, not in glibc. Probed for and conditionally used by ART.
|
D | SECCOMP_PRIORITY.TXT | 1 # This file is used to populate seccomp's allowlist policy in combination with SYSCALLS.TXT. 6 # The syscalls below are prioritized above other syscalls when checking seccomp policy, in 7 # the order of appearance in this file.
|
/bionic/benchmarks/ |
D | NOTICE | 4 you may not use this file except in compliance with the License. 9 Unless required by applicable law or agreed to in writing, software 20 you may not use this file except in compliance with the License. 25 Unless required by applicable law or agreed to in writing, software 36 you may not use this file except in compliance with the License. 41 Unless required by applicable law or agreed to in writing, software 52 you may not use this file except in compliance with the License. 57 Unless required by applicable law or agreed to in writing, software 68 you may not use this file except in compliance with the License. 73 Unless required by applicable law or agreed to in writing, software [all …]
|
D | README.md | 19 By default, `bionic-benchmarks` runs all of the benchmarks in alphabetical order. Pass 20 `--benchmark_filter=getpid` to run just the benchmarks with "getpid" in their name. 29 Suites are stored in the `suites/` directory and can be chosen with the command line flag 33 searches for the XML file in the `suites/` directory. If it doesn't exist in that directory, then 57 To make small changes in runs, you can also schedule benchmarks by passing in their name and a 61 Note that benchmarks will run normally if extra arguments are passed in, and it will fail 62 with a segfault if too few are passed in. 66 For the sake of brevity, multiple runs can be scheduled in one XML element by putting one of the 67 following in the args field: 75 Definitions for these can be found in bionic_benchmarks.cpp, and example usages can be found in [all …]
|
/bionic/ |
D | README.md | 23 `cos(3)` in a separate library to save space in the days before shared 46 jump to `fopen(3)`, say, it lands in the right place). 58 ## What's in libc/? 68 # because it's architecture-specific. There will be a .mk file in here that 69 # drags in all the architecture-specific files. 87 # in external/kernel-headers/. These files must not be edited directly. The 109 # in our world. The *-compat.h files are automatically included 118 # current upstream source in one of the upstream directories or by 149 The answer is probably "yes" if the system call has a wrapper in at 153 users in different projects, and there isn't a more specific higher-level [all …]
|
D | android-changes-for-ndk-developers.md | 4 loading in various Android releases. 11 for details about changes in stack unwinding (crash dumps) between 33 increase your target API level will appear in logcat when that library 43 Until it was [fixed](https://issuetracker.google.com/36950617) in 48 [fixed](https://issuetracker.google.com/36935779) in JB-MR2, the 50 to topologically sort your libraries and load them in reverse order. 70 in that order. For API 23 and later, for any given library, the dynamic 89 ## RTLD_LOCAL (Available in API level >= 23) 92 correctly in API 23 and later. Note that RTLD_LOCAL is the default, 99 ## GNU hashes (Availible in API level >= 23) [all …]
|
/bionic/linker/ |
D | NOTICE | 4 Redistribution and use in source and binary forms, with or without 9 * Redistributions in binary form must reproduce the above copyright 10 notice, this list of conditions and the following disclaimer in 32 Redistribution and use in source and binary forms, with or without 37 * Redistributions in binary form must reproduce the above copyright 38 notice, this list of conditions and the following disclaimer in 60 Redistribution and use in source and binary forms, with or without 65 * Redistributions in binary form must reproduce the above copyright 66 notice, this list of conditions and the following disclaimer in 88 Redistribution and use in source and binary forms, with or without [all …]
|
/bionic/libm/ |
D | NOTICE | 47 algorithms are contained in the original files. 173 you may not use this file except in compliance with the License. 178 Unless required by applicable law or agreed to in writing, software 189 Redistribution and use in source and binary forms, with or without 194 2. Redistributions in binary form must reproduce the above copyright 195 notice, this list of conditions and the following disclaimer in the 215 you may not use this file except in compliance with the License. 220 Unless required by applicable law or agreed to in writing, software 231 Redistribution and use in source and binary forms, with or without 236 * Redistributions in binary form must reproduce the above copyright [all …]
|
/bionic/libc/kernel/android/ |
D | README.md | 2 exist in android kernels, but have not been upstreamed into the regular 12 scsi headers and haven't substantially updated them in 15 years. The 13 musl libc project has a similar set of definitions in its scsi headers. 15 These files are actually maintained in `external/kernel-headers/modified/scsi/`.
|
/bionic/build/ |
D | NOTICE | 36 "Work" shall mean the work of authorship, whether in Source or 38 copyright notice that is included in or attached to the work 39 (an example is provided in the Appendix below). 41 "Derivative Works" shall mean any work, whether in Source or Object 52 submitted to Licensor for inclusion in the Work by the copyright owner 61 designated in writing by the copyright owner as "Not a Contribution." 72 Work and such Derivative Works in Source or Object form. 77 (except as stated in this section) patent license to make, have made, 84 cross-claim or counterclaim in a lawsuit) alleging that the Work 91 Work or Derivative Works thereof in any medium, with or without [all …]
|
/bionic/apex/ |
D | NOTICE | 36 "Work" shall mean the work of authorship, whether in Source or 38 copyright notice that is included in or attached to the work 39 (an example is provided in the Appendix below). 41 "Derivative Works" shall mean any work, whether in Source or Object 52 submitted to Licensor for inclusion in the Work by the copyright owner 61 designated in writing by the copyright owner as "Not a Contribution." 72 Work and such Derivative Works in Source or Object form. 77 (except as stated in this section) patent license to make, have made, 84 cross-claim or counterclaim in a lawsuit) alleging that the Work 91 Work or Derivative Works thereof in any medium, with or without [all …]
|
/bionic/tools/ |
D | NOTICE | 4 you may not use this file except in compliance with the License. 9 Unless required by applicable law or agreed to in writing, software 20 you may not use this file except in compliance with the License. 25 Unless required by applicable law or agreed to in writing, software
|
/bionic/libdl/ |
D | NOTICE | 4 you may not use this file except in compliance with the License. 9 Unless required by applicable law or agreed to in writing, software 20 you may not use this file except in compliance with the License. 25 Unless required by applicable law or agreed to in writing, software
|
/bionic/libc/bionic/ |
D | signal.cpp | 81 SigSetConverter in, out; in sigblock() local 82 sigemptyset(&in.sigset); in sigblock() 83 in.bsd = mask; in sigblock() 84 if (sigprocmask(SIG_BLOCK, &in.sigset, &out.sigset) == -1) return -1; in sigblock() 250 SigSetConverter in, out; in sigsetmask() local 251 sigemptyset(&in.sigset); in sigsetmask() 252 in.bsd = mask; in sigsetmask() 253 if (sigprocmask(SIG_SETMASK, &in.sigset, &out.sigset) == -1) return -1; in sigsetmask()
|