{"push_id":1668020018,"size":4,"distinct_size":4,"ref":"refs/heads/bionic","head":"d7d01ac274e82fe76f1d03a5ea918f27a90be9de","before":"4a81b2f1e6fbd0ab782a76897f9a6e83c7593095","commits":[{"sha":"354bf393ef9575c1db792bb81a7684292b0db08b","author":{"name":"Tom Marshall","email":"1262307cc1bdcf44594471c15dbc89db1915b3dd@cyngn.com"},"message":"bionic: Teach fnmatch(3) to handle UTF-8 characters in patterns\n\nThis is NOT comprehensive UTF-8 support.  It is just a quick hack to\nmake alternation work in bracket expressions so that the system file\nmanager can find files with non-ASCII names in root mode.  Bracket\nexpressions that contain non-ASCII ranges are explicitly avoided to\navoid the complexities of unicode collation rules.\n\nThings like the following will now work:\n\n\tfnmatch(\"те[с][т].jpg\", \"тест.jpg\", 0);\n\tfnmatch(\"test[αβγ].txt\", \"testβ.txt\", 0);\n\nThings like the following will still fail:\n\n\tfnmatch(\"тес[а-я].txt\", \"тест.txt\", 0);\n\nJira: CYNGNOS-2336\n\nChange-Id: If38dc6692bc22d20128b0cd8a7632754a496d7fb","distinct":true,"url":"https://api.github.com/repos/AdrianDC/aosp_development_sony8960_test/commits/354bf393ef9575c1db792bb81a7684292b0db08b"},{"sha":"d8f8bf2c1e85559e174c56ca17e82ca23a62434a","author":{"name":"Tom Marshall","email":"1262307cc1bdcf44594471c15dbc89db1915b3dd@cyngn.com"},"message":"bionic: Sort and cache hosts file data for fast lookup\n\nThe hosts file is normally searched linearly.  This is very slow when\nthe file is large.  To mitigate this, read the hosts file and sort the\nentries in an in-memory cache.  When an address is requested via\ngethostbyname or getaddrinfo, binary search the cache.\n\nIn case where the cache is not available, return a suitable error code\nand fall back to the existing lookup code.\n\nThis has been written to behave as much like the existing lookup code as\npossible.  But note bionic and glibc differ in behavior for some corner\ncases.  Choose the most standard compliant behavior for these where\npossible.  Otherwise choose the behavior that seems most reasonable.\n\nChange-Id: I3b322883cbc48b0d76a0ce9d149b59faaac1dc58","distinct":true,"url":"https://api.github.com/repos/AdrianDC/aosp_development_sony8960_test/commits/d8f8bf2c1e85559e174c56ca17e82ca23a62434a"},{"sha":"7ee042fcdd452b7420450006812672abadf8f08e","author":{"name":"Tom Marshall","email":"1262307cc1bdcf44594471c15dbc89db1915b3dd@cyngn.com"},"message":"bionic: Let popen fall back to /sbin/sh\n\nminivold in recovery uses popen, where /system/bin/sh is not available.\n\nChange-Id: I2136b0ca4188b7b44416f5d79492fc006382d4ad","distinct":true,"url":"https://api.github.com/repos/AdrianDC/aosp_development_sony8960_test/commits/7ee042fcdd452b7420450006812672abadf8f08e"},{"sha":"d7d01ac274e82fe76f1d03a5ea918f27a90be9de","author":{"name":"Adrian DC","email":"12dd3edf19778ce3ff671afff1f3c7743019c997@gmail.com"},"message":"linker: Add support for dynamic SHIM libraries\n\nlinker: Add support for dynamic \"shim\" libs\n\nAdd a new environment variable\n\nLD_SHIM_LIBS\n\nthat is a colon (\":\") separated list of vertical bar (\"|\") separated pairs.\nThe pairs are the name for a soinfo reference (executable or shared library)\nfollowed by the name of the shim library to load.  For example:\n\nLD_SHIM_LIBS=rmt_storage|libshim_ioprio.so:/system/lib/libicuuv.so|libshim_icu53.so\n\nwill instruct the linker to load the dynamic library libshim_ioprio.so\nwhenver rmt_storage is executed [*] and will load libshim_icu53.so whenever\nany executable or other shared library links against /system/lib/libicuuv.so.\n\nThere are no restrictions against circular references.  In this example,\nlibshim_icu53.so can link against libicuuv.so which provides a simple and\nconvenient means of adding compatibility symbols.\n\n[*] Note that the absolute path is not available to the linker and therefore\nusing the name of executables does depend on the invocation and therefore\nshould only be used if absolutely necessary.  That is, running\n/system/bin/rmt_storage would not load any shim libs in this example because\nit does not match the name of the invocation of the command.\n\nIf you have trouble determining the sonames being loaded, you can also set\nthe environment variable LD_DEBUG=1 which will cause additional information\nto be logged to help trace the detection of the shim libs.\n\nChange-Id: I0ef80fa466167f7bcb7dac90842bef1c3cf879b6\n\nlinker: Fix the fact that shim libs do not properly call constructors\n\nChange-Id: I34333e13443a154e675b853fa41442351bc4243a\n\nlinker: Don't try to walk the g_active_shim_libs when doing dlsym\n\nThis is a bug in the original shim_lib implementation which was\ndoing the shim lib resolution both when loading the libraries\nand when doing the dynamic symbol resolution.\n\nChange-Id: Ib2df0498cf551b3bbd37d7c351410b9908eb1795\n\nRevert \"Revert \"linker: Reset the active shim libs each time we do a dlopen\"\"\n\nThis reverts commit fd0140b028dedabc572f4659cc015edfeee3cd60.\n\nChange-Id: I42b3acfcdc6b84251a396b9e42604bb5685196bd\n\nMake shim lib load failure non-fatal.\n\nInstead, print an appropriate warning message. Aborting symbol\nresolution on shim lib load failure leads to weird symbol lookup\nfailures, because symbols in libraries referenced after the one loading\nthe shim won't be loaded anymore without a log message stating why that\nhappened.\n\nChange-Id: Ic3ad7095ddae7ea1039cb6a18603d5cde8a16143\n\nbionic: Do not allow LD_SHIM_LIBS for setuid executables\n\nThat's really not safe...\n\nChange-Id: If79af951830966fc21812cd0f60a8998a752a941\n\nbionic: linker: Load shim libs *before* the self-linked libs\n\nBy loading them earlier, this allows us to override a symbol in\na library that is being directly linked.\n\nI believe this explains why some people have had problems shimming\none lib but when the changet he shim to be against a different\nlib it magically works.\n\nIt also makes it possible to override some symbols that were\nnearly impossible to override before this change.  For example, it is\npretty much impossible to override a symbol in libutils without\nthis change because it's loaded almost everywhere so no matter\nwhere you try to place the shimming, it will be too late and\nthe other symbol will have priority.\n\nIn particularly, this is necessary to be able to correctly\nshim the VectorImpl symbols for dlx.\n\nChange-Id: I461ca416bc288e28035352da00fde5f34f8d9ffa\n\nlinker: Allow text-relocs for x86 (only)\n\nThis effectively reverts\n\nhttps://android.googlesource.com/platform/bionic/+/e4ad91f86a47b39612e030a162f4793cb3421d31%5E%21/#F0\n\nfor x86 platforms.  Unfortunately, this seems like it is required\nif we are going to support ffmpeg.  The ffmpeg team decreed that they\nrequire text relocations for x86 (only) and that they would not\nfix the fact that android 6.0 makes ffmpeg unusable on x86:\n\nhttps://trac.ffmpeg.org/ticket/4928\n\nChange-Id: I68397f4d62f4f6acd8e0d41b7ecdc115969b890a\n\nbionic: Teach fnmatch(3) to handle UTF-8 characters in patterns\n\nThis is NOT comprehensive UTF-8 support.  It is just a quick hack to\nmake alternation work in bracket expressions so that the system file\nmanager can find files with non-ASCII names in root mode.  Bracket\nexpressions that contain non-ASCII ranges are explicitly avoided to\navoid the complexities of unicode collation rules.\n\nThings like the following will now work:\n\n\tfnmatch(\"те[с][т].jpg\", \"тест.jpg\", 0);\n\tfnmatch(\"test[αβγ].txt\", \"testβ.txt\", 0);\n\nThings like the following will still fail:\n\n\tfnmatch(\"тес[а-я].txt\", \"тест.txt\", 0);\n\nJira: CYNGNOS-2336\n\nChange-Id: If38dc6692bc22d20128b0cd8a7632754a496d7fb\n\nbionic: Sort and cache hosts file data for fast lookup\n\nThe hosts file is normally searched linearly.  This is very slow when\nthe file is large.  To mitigate this, read the hosts file and sort the\nentries in an in-memory cache.  When an address is requested via\ngethostbyname or getaddrinfo, binary search the cache.\n\nIn case where the cache is not available, return a suitable error code\nand fall back to the existing lookup code.\n\nThis has been written to behave as much like the existing lookup code as\npossible.  But note bionic and glibc differ in behavior for some corner\ncases.  Choose the most standard compliant behavior for these where\npossible.  Otherwise choose the behavior that seems most reasonable.\n\nChange-Id: I3b322883cbc48b0d76a0ce9d149b59faaac1dc58\n\nlinker: Update find_library call for shimlibs\n\ncommits 0cdef7e7f3c6837b56a969120d9098463d1df8d8\n\"Respect caller DT_RUNPATH in dlopen().\"\nand 42d5fcb9f494eb45de3b6bf759f4a18076e84728\n\"Introducing linker namespaces\"\nadded new arguments to find_library, add them here.\n\nChange-Id: I8f35a45b00d14f8b2ce01a0a96d2dc7759be04a6\n\nlinker: Update LD_SHIM_LIBS parser function\n\n * Upgrade the code using the same changes as\n    42d5fcb9f494eb45de3b6bf759f4a18076e84728\n    bda20e78f0f314dbbf0f0bbcf0740cf2d6a4b85e\n\nChange-Id: Ic8be0871945bd9feccd0f94a6770f3cc78a70a0f\n\nInject shim libs as if they were DT_NEEDED.\n\nThe previous separate approach had one flaw: If the shim lib requires\nanother lib that's already loaded, find_library_internal() would return\nthe previously loaded copy, but the later load action would fail as the\nELF reader map of the initial loading round was already discarded and\nthus a new ElfReader instance for the soinfo instance was created, which\ndidn't know about the previous reading/loading state.\n\nChange-Id: Ib224dbd35d114197097e3dee14a077cc9130fedb\n\nlinker: Make platform text relocations denial enabled by default\n\n * msm8960 variant to support relocations by default\n\n * Partial revert \"Remove textrels support for platform libs\"\n    commit 8068786ae67835291521e52f39c695e40f3ad20d.\n\nChange-Id: I994ab1a600a0b237b496ceebe2dd54febc28a6bd\n\nlinker: load shims prior to dt_needed check\n\nThis allows shims to override existing symbols, not just\ninject new symbols.\n\nChange-Id: Ib9216bcc651d8d38999c593babb94d76dc1dbc95","distinct":true,"url":"https://api.github.com/repos/AdrianDC/aosp_development_sony8960_test/commits/d7d01ac274e82fe76f1d03a5ea918f27a90be9de"}]}
{"actor":{"display_login":"AdrianDC"}}