)]}'
{
  "log": [
    {
      "commit": "958dad705a8c2c191e4352547fc9950c4feaa9fb",
      "tree": "1c73bc42b0aafd48ea3b8317427939f3d4b970b7",
      "parents": [
        "344aca8ced2522074f799439e201226377d02dba"
      ],
      "author": {
        "name": "Chris Dearman",
        "email": "chris@mips.com",
        "time": "Mon Jul 23 17:30:04 2012 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jul 24 13:56:38 2012 -0700"
      },
      "message": "Fix implementation of generic atomic operations\n\nChange-Id: Ie1ea5aacc561e2d6d40125d2952ed0e9116b7b0d\n"
    },
    {
      "commit": "0351955a686fe4e0bf9f30780f78ff0e2402a6b0",
      "tree": "5ea391c49b5ceb7cb2e44e58be238f038bd32781",
      "parents": [
        "f6ee33cee717f9878d3a43bf76c35547649676d7"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "npelly@google.com",
        "time": "Thu Jul 19 13:50:55 2012 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jul 19 17:10:14 2012 -0700"
      },
      "message": "Update time.h for CLOCK_BOOTTIME.\n\n(cherry-pick of 8958a383296ea0e1cc106ae245c37671809ffd49)\n\nChange-Id: Ie8de6b32fa81566db53ad7e9fd4b197f4cede628\n"
    },
    {
      "commit": "fabddfe833097ecca92b3547a725879234780468",
      "tree": "5e268ebc6b635e7b4b167b08b235ee67b6789184",
      "parents": [
        "b0f0d4276d459a7a9c71c69d6fe6f0ae2f6bbd22",
        "6331db3fd251ddc350913cc1e8a7941740c25f63"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jul 16 09:39:24 2012 -0700"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jul 16 09:39:24 2012 -0700"
      },
      "message": "Merge \"limits.h: Include page.h when relying on PAGE_SIZE\""
    },
    {
      "commit": "c37fc1ab6a3ac3956a8c9ba3ac089d41969815ed",
      "tree": "8fd21828b1fc97423bbe5e3652513772260604f3",
      "parents": [
        "e1d909f71e183ac3d1e21af5bb1af35d30e9de5b"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri Jul 13 17:49:10 2012 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri Jul 13 17:58:37 2012 -0700"
      },
      "message": "FORTIFY_SOURCE: revert memcpy changes.\n\nPerformance regressions.  Hopefully this is a temporary\nrollback.\n\nBug: 6821003\nChange-Id: I84abbb89e1739d506b583f2f1668f31534127764\n"
    },
    {
      "commit": "9b6cc223a36835c4367a036d4cfeff14d25bc742",
      "tree": "8fcd143b253225860fbd817cdad02afac00f1be8",
      "parents": [
        "260bf8cfe00f83bc579dfe81c78b75bd9973f051"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri Jul 13 14:46:36 2012 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri Jul 13 14:49:33 2012 -0700"
      },
      "message": "FORTIFY_SOURCE: introduce __BIONIC_FORTIFY_UNKNOWN_SIZE macro\n\nReplace all occurances of \"(size_t) -1\" with a\n__BIONIC_FORTIFY_UNKNOWN_SIZE macro.\n\nChange-Id: I0b188f6cf31417d2dbef0e1bd759de3f9782873a\n"
    },
    {
      "commit": "260bf8cfe00f83bc579dfe81c78b75bd9973f051",
      "tree": "b8ff686500d30625cb9d5908ecba4895f20a1467",
      "parents": [
        "b2060b027c9eb2748895b53a0d69d40b52371a4e"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri Jul 13 11:27:06 2012 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri Jul 13 13:49:59 2012 -0700"
      },
      "message": "FORTIFY_SOURCE: strlen check.\n\nThis test is designed to detect code such as:\n\nint main() {\n  char buf[10];\n  memcpy(buf, \"1234567890\", sizeof(buf));\n  size_t len \u003d strlen(buf); // segfault here with _FORTIFY_SOURCE\n  printf(\"%d\\n\", len);\n  return 0;\n}\n\nor anytime strlen reads beyond an object boundary. This should\nhelp address memory leakage vulnerabilities and make other\nunrelated vulnerabilities harder to exploit.\n\nChange-Id: I354b425be7bef4713c85f6bab0e9738445e00182\n"
    },
    {
      "commit": "f3913b5b68347ce9a4cb17977df2c33f1e8f6000",
      "tree": "fae959e2f8c146b61eb43af80d9ae4918640d2c0",
      "parents": [
        "86a4fca0b473c49bcbcf2deb6b5822aa9ab9631e"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Jul 12 15:10:03 2012 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Jul 12 15:38:15 2012 -0700"
      },
      "message": "FORTIFY_SOURCE: enhanced memcpy protections.\n\nTwo changes:\n\n1) Detect memory read overruns.\n\nFor example:\n\nint main() {\n  char buf[10];\n  memcpy(buf, \"abcde\", sizeof(buf));\n  sprintf(\"%s\\n\", buf);\n}\n\nbecause \"abcde\" is only 6 bytes, copying 10 bytes from it is a bug.\nThis particular bug will be detected at compile time.  Other similar\nbugs may be detected at runtime.\n\n2) Detect overlapping buffers on memcpy()\n\nIt is a bug to call memcpy() on buffers which overlap. For\nexample, the following code is buggy:\n\n  char buf3[0x800];\n  char *first_half  \u003d \u0026buf3[0x400];\n  char *second_half \u003d \u0026buf3[1];\n  memset(buf3, 0, sizeof(buf3));\n  memcpy(first_half, second_half, 0x400);\n  printf(\"1: %s\\n\", buf3);\n\nWe now detect this at compile and run time.\n\nChange-Id: I092bd89f11f18e08e8a9dda0ca903aaea8e06d91\n"
    },
    {
      "commit": "6331db3fd251ddc350913cc1e8a7941740c25f63",
      "tree": "e9283ee8126ded7ce30d2d7a6f5fd4f66cc16ba2",
      "parents": [
        "5af97ca8514d9fb4175bff3a79abf26889b94530"
      ],
      "author": {
        "name": "Arun Raghavan",
        "email": "arun.raghavan@collabora.co.uk",
        "time": "Tue Jan 10 19:37:32 2012 +0530"
      },
      "committer": {
        "name": "Arun Raghavan",
        "email": "arun.raghavan@collabora.co.uk",
        "time": "Tue Jul 10 10:36:37 2012 +0530"
      },
      "message": "limits.h: Include page.h when relying on PAGE_SIZE\n\nlimits.h relies on PAGE_SIZE being defined without actually including\npage.h. Make sure this is included to avoid compilation failures.\n\nSigned-off-by: Arun Raghavan \u003carun.raghavan@collabora.co.uk\u003e\n"
    },
    {
      "commit": "8f08e1c902c726ac5230776c238e5edb6f51f440",
      "tree": "f9089c8166118cf92ec6882f8f269f9b7c255e2b",
      "parents": [
        "a099e8e7d35a0e740477f9362e9360b42b98d9cd",
        "a3e230d1fa9a5ed773a029e2acc6eb4f3e849ea3"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Mon Jul 09 12:55:32 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 09 12:55:32 2012 -0700"
      },
      "message": "Merge \"FORTIFY_SOURCE: Add openat, fix bug\""
    },
    {
      "commit": "a3e230d1fa9a5ed773a029e2acc6eb4f3e849ea3",
      "tree": "6f1dbd761142774dc7bed997d14ec4090c874880",
      "parents": [
        "2ddf77b37731dff3a271c1312fc0bef2e7d41473"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Mon Jul 02 12:24:42 2012 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Mon Jul 09 12:30:40 2012 -0700"
      },
      "message": "FORTIFY_SOURCE: Add openat, fix bug\n\nAdd fortify_source support for openat(). This change requires that\nan argument be supplied when using O_CREAT.\n\nFix unnecessary call to __open_2. If, at compile time, we know that\n\"flags\" is constant and DOESN\u0027T contain O_CREAT, the call to __open_2\nis useless.\n\nChange-Id: Ifcd29c4fb25e25656961d7552d672e161f0cfdbd\n"
    },
    {
      "commit": "965dbc6405aa2c3170270cfc53a8d4416444fddb",
      "tree": "7764d865c47bc84041f521ac11748ebe986a8871",
      "parents": [
        "2ddf77b37731dff3a271c1312fc0bef2e7d41473"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Jul 03 11:45:31 2012 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Mon Jul 09 09:57:18 2012 -0700"
      },
      "message": "FORTIFY_SOURCE: add fgets support.\n\nChange-Id: I8c3410a90c71a3336c4ac8581618fa9330edf5e3\n"
    },
    {
      "commit": "bd73eede4661298ddbdafa510c3af347683b5f60",
      "tree": "1f456b74c7ad4f9ca906c0f0d2b67c411a77ecf8",
      "parents": [
        "cb228fb4a91bdccfd974b8a4f45e2b6002e90728",
        "8118f62a7d3f1af1edb47e0bc2a49af1d523ae0f"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Wed Jun 27 12:56:52 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 27 12:56:52 2012 -0700"
      },
      "message": "Merge \"FORTIFY_SOURCE: add open() checks\""
    },
    {
      "commit": "cb228fb4a91bdccfd974b8a4f45e2b6002e90728",
      "tree": "bef755285588a49afc5344e0bedcab6de517b84e",
      "parents": [
        "b52e4385c403d18a68309e568ac729c787d900c4"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Jun 26 16:05:19 2012 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Jun 26 16:05:19 2012 -0700"
      },
      "message": "libc: cleanups\n\nPrefix private functions with underscores, to prevent name\nconflicts.\n\nUse __error__ instead of error, since occasionally programs will\ncreate their own \"#define error ...\".\n\nChange-Id: I7bb171df58aec5627e61896032a140db547fd95d\n"
    },
    {
      "commit": "8118f62a7d3f1af1edb47e0bc2a49af1d523ae0f",
      "tree": "c385eb2c8e0d083fbc9b8715d2f15b3ac0fc6908",
      "parents": [
        "b52e4385c403d18a68309e568ac729c787d900c4"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Jun 26 15:08:06 2012 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Jun 26 15:19:12 2012 -0700"
      },
      "message": "FORTIFY_SOURCE: add open() checks\n\nAdd a FORTIFY_SOURCE check which requires that you pass a\n\"mode\" argument when calling open(..., O_CREAT). If a mode isn\u0027t\npassed, then the file is created with \"undefined\" permissions.\n\nChange-Id: I4427be4f9ce170c69da01af5b00fb05b03613a28\n"
    },
    {
      "commit": "70f6901c3dbe6f09c7fc3ebdb18f715915635d70",
      "tree": "eb9e00e1e5e9c7a0c36d04cd17478945dce60d97",
      "parents": [
        "8df49ad2467ec2d48f94a925162185c34bf6e68b"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Jun 14 13:48:18 2012 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Jun 14 13:57:43 2012 -0700"
      },
      "message": "libc: make atoi, atol, and atoll pure functions\n\nChange-Id: Ib831c079c865929b6c91d42f35e117f2e974808f\n"
    },
    {
      "commit": "8df49ad2467ec2d48f94a925162185c34bf6e68b",
      "tree": "00161cd65c6292eebd000699534b554b2c52be0a",
      "parents": [
        "4442d512c66aa32a26fe2e652e55ad05249ea3da"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Wed Jun 13 16:57:27 2012 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Jun 14 12:52:42 2012 -0700"
      },
      "message": "FORTIFY_SOURCE: add strlcpy / strlcat support\n\nAdd strlcpy / strlcat support to FORTIFY_SOURCE. This allows\nus to do consistency checks on to ensure we don\u0027t overflow buffers\nwhen the compiler is able to tell us the size of the buffer we\u0027re\ndealing with.\n\nUnlike previous changes, this change DOES NOT use the compiler\u0027s\nbuiltin support. Instead, we do everything the compiler would\nnormally do.\n\nChange-Id: I47c099a911382452eafd711f8e9bfe7c2d0a0d22\n"
    },
    {
      "commit": "a5eaa02f623b14a50f965a7279c2a6ae9f78337f",
      "tree": "118594368871339c5e3756b999fc1dd6da82b71c",
      "parents": [
        "8c54c56723c9b6761e637c81e34b1bd8ee38cf59",
        "b27631b9aee760034ea4aecc5c052e880292c417"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Wed Jun 13 16:13:32 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 13 16:13:32 2012 -0700"
      },
      "message": "Merge \"Don\u0027t mark realloc with __attribute__((malloc))\""
    },
    {
      "commit": "b27631b9aee760034ea4aecc5c052e880292c417",
      "tree": "de164c8c7dda506f635464d2838d99b0a9df78e4",
      "parents": [
        "c2f1d215b1786520fa8c371caa97f062e0bfb513"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Wed Jun 13 15:43:14 2012 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Wed Jun 13 15:43:14 2012 -0700"
      },
      "message": "Don\u0027t mark realloc with __attribute__((malloc))\n\nAccording to\nhttp://gcc.gnu.org/onlinedocs/gcc/Function-Attributes.html\n\nrealloc should NOT be marked with __attribute__((malloc)). Quoting:\n\n   realloc-like functions do not have this property as the memory\n   pointed to does not have undefined content.\n\nFor reference, __mallocfunc is defined in sys/cdefs.h as:\n\n    #define __mallocfunc  __attribute__((malloc))\n\nChange-Id: I56083542ba92e4608dd7c55fb5596a138eb50cc9\n"
    },
    {
      "commit": "9b549c39c938f54680f282c21e6885f53254bfb0",
      "tree": "8bb4a40d6d9c7f265a58954572097eefa1c2da5e",
      "parents": [
        "c2f1d215b1786520fa8c371caa97f062e0bfb513"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Jun 12 15:59:04 2012 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Wed Jun 13 09:14:30 2012 -0700"
      },
      "message": "FORTIFY_SOURCE: add sprintf / vsprintf support\n\nsprintf FORTIFY_SOURCE protections are not available\non clang.\n\nAlso add various __attribute__s to stdio functions.\n\nChange-Id: I936d1f9e55fe53a68885c4524b7b59e68fed218d\n"
    },
    {
      "commit": "c2f1d215b1786520fa8c371caa97f062e0bfb513",
      "tree": "5fb4e8d1f40d5febb9b605d230654d60af8ed731",
      "parents": [
        "f525fb525b19e76ac9438b7fddeaa3312517a092",
        "cffdf6693ffb50d2a1258d955a162bca83038f25"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Jun 12 08:50:57 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 12 08:50:57 2012 -0700"
      },
      "message": "Merge \"FORTIFY_SOURCE: add snprintf, vsnprintf\""
    },
    {
      "commit": "20afd4e70c2f346d7cd03a7a3049f8de2d176d5c",
      "tree": "8aeff6389049ff13c1612e1ff1397d6232735926",
      "parents": [
        "571da80c58e13eac4d4fb29d38342879e5dede13",
        "e0961445124b5ff39412da32578e14e0d1f6afd6"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jun 11 17:41:10 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jun 11 17:41:10 2012 -0700"
      },
      "message": "am e0961445: Merge \"Remove the meaningless on Linux if_dl.h header.\"\n\n* commit \u0027e0961445124b5ff39412da32578e14e0d1f6afd6\u0027:\n  Remove the meaningless on Linux if_dl.h header.\n"
    },
    {
      "commit": "cffdf6693ffb50d2a1258d955a162bca83038f25",
      "tree": "205f5c66002cd0a5f064081142bf1b54507e9a4e",
      "parents": [
        "85b06f9365ae6776deb9fcf09f450f777ace9e34"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Mon Jun 11 15:50:57 2012 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Mon Jun 11 16:46:16 2012 -0700"
      },
      "message": "FORTIFY_SOURCE: add snprintf, vsnprintf\n\nAdd _FORTIFY_SOURCE support for snprintf, vsnprintf\n\nAt this time, we opt out of these protections for clang, as clang\ndoes not implement __builtin_va_arg_pack().\n\nhttp://clang.llvm.org/docs/UsersManual.html#c_unimpl_gcc\n\nChange-Id: I73ebe5ec8dad1dca8898a76d6afb693a25f75375\n"
    },
    {
      "commit": "c3d45b822cd7d7c359aceba9447a1619b5a2150b",
      "tree": "1afa490f38c1cf8437193de5511757275d683fc0",
      "parents": [
        "2b89f1e37df838e466d382fc602728930bad4c68"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jun 11 15:01:10 2012 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jun 11 15:13:37 2012 -0700"
      },
      "message": "Remove the meaningless on Linux if_dl.h header.\n\nThis was misleading \u0027configure\u0027 into thinking we actually support AF_LINK,\nbut we\u0027re Linux, so we don\u0027t, and we never implemented the functions we\ndeclared here either.\n\nReported to AOSP by Jun-ya Kato.\n\n(cherry-pick of 5056f1fad1187cd67729bb04ba72397d78256f03.)\n\nChange-Id: Ic67f674d2221497c8166994812bb5fc7f0831066\n"
    },
    {
      "commit": "5056f1fad1187cd67729bb04ba72397d78256f03",
      "tree": "eb7460d075a62b4257e475ec938b6f93bbd9e92a",
      "parents": [
        "f41855949d5f19e0fc1f8873278ae21c52dd5676"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jun 11 15:01:10 2012 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jun 11 15:01:10 2012 -0700"
      },
      "message": "Remove the meaningless on Linux if_dl.h header.\n\nThis was misleading \u0027configure\u0027 into thinking we actually support AF_LINK,\nbut we\u0027re Linux, so we don\u0027t, and we never implemented the functions we\ndeclared here either.\n\nReported to AOSP by Jun-ya Kato.\n\nChange-Id: I111f9887f3812469b411b9cf5124d9dd624f19f7\n"
    },
    {
      "commit": "71a18dd435e96564539b5af71b8ea5093a2109a1",
      "tree": "fd59c2a7cc23b663d090b0b8843a5d19c97df7d0",
      "parents": [
        "7d11009a970732ea18f8a0599d63c94eab9ec3f0"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Jun 07 14:01:26 2012 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Jun 07 14:19:52 2012 -0700"
      },
      "message": "_FORTIFY_SOURCE: add memset / bzero support\n\nAdd _FORTIFY_SOURCE support for the following functions:\n\n* memset\n* bzero\n\nMove the __BIONIC_FORTIFY_INLINE definition to cdefs.h so it\ncan be used from multiple header files.\n\nChange-Id: Iead4d5e35de6ec97786d58ee12573f9b11135bb7\n"
    },
    {
      "commit": "0a2301598c207fd1b50015984942fee5e8511593",
      "tree": "161496d8ec411c14f7f82990e82e970c7e328a2a",
      "parents": [
        "31431f454a9d3d3dde46de0e3c39cc409a39c436"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Mon Jun 04 15:20:25 2012 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Jun 05 15:44:31 2012 -0700"
      },
      "message": "libc: implement some FORTIFY_SOURCE functions\n\nAdd initial support for -D_FORTIFY_SOURCE to bionic for the\nfollowing functions:\n\n* memcpy\n* memmove\n* strcpy\n* strcat\n* strncpy\n* strncat\n\nThis change adds a new version of the above functions which passes\nthe size of the destination buffer to __builtin___*_chk.\n\nIf the compiler can determine, at compile time, that the destination\nbuffer is large enough, or the destination buffer can point to an object\nof unknown size, then the check call is bypassed.\n\nIf the compiler can\u0027t make a compile time decision, then it calls\nthe __*_chk() function, which does a runtime buffer size check\n\nThese options are only enabled if the code is compiled with\n-D_FORTIFY_SOURCE\u003d1 or 2, and only when optimizations are enabled.\n\nPlease see\n* http://gcc.gnu.org/onlinedocs/gcc/Object-Size-Checking.html\n* http://gcc.gnu.org/ml/gcc-patches/2004-09/msg02055.html\n\nfor additional details on FORTIFY_SOURCE.\n\nTesting: Compiled the entire Android tree with -D_FORTIFY_SOURCE\u003d1,\nand verified that everything appears to be working properly.\nAlso created a test buffer overflow, and verified that it was\ncaught by this change.\n\nChange-Id: I4fddb445bafe92b16845b22458d72e6dedd24fbc\n"
    },
    {
      "commit": "804147cb7d533f5635da6adc28fbca1467a3078b",
      "tree": "e8d5ccd983127300a139f1e7ec152cc8ed4ddc04",
      "parents": [
        "dbd5ecad26e39281bb83f97664bc32555c5c071a",
        "edb7cad9b764f029c5faac2750f749d3d84bd86a"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed May 09 20:10:14 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed May 09 20:10:14 2012 -0700"
      },
      "message": "am edb7cad9: Merge \"Actually set the header guard in \"linux-syscalls.h\".\"\n\n* commit \u0027edb7cad9b764f029c5faac2750f749d3d84bd86a\u0027:\n  Actually set the header guard in \"linux-syscalls.h\".\n"
    },
    {
      "commit": "1928523c870f7acd7f34870f4bb4ab9c6215bf7a",
      "tree": "bbdbca506d1716bcf4d06b0f0b461e15366a3710",
      "parents": [
        "e54089079b123b207e171c14b2b0dca23c9386f3"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed May 09 16:34:11 2012 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed May 09 16:34:11 2012 -0700"
      },
      "message": "Actually set the header guard in \"linux-syscalls.h\".\n\nSpotted while merging a MIPS change.\n\nChange-Id: I36fb5a07d0bba0c117e9fe9733957bd37ca4b4c0\n"
    },
    {
      "commit": "dbd5ecad26e39281bb83f97664bc32555c5c071a",
      "tree": "1d652ad548a322f09cb77e8f5fce98eb7892fbd0",
      "parents": [
        "58a00b4977b6fa073a8f56d94d741b1e4cb49856",
        "e54089079b123b207e171c14b2b0dca23c9386f3"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed May 09 13:53:37 2012 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed May 09 13:53:37 2012 -0700"
      },
      "message": "resolved conflicts for merge of e5408907 to jb-dev-plus-aosp\n\nChange-Id: If4c3f51bf87b28da8074be2e46ae772a374b266f\n"
    },
    {
      "commit": "1fa0d849576555577ffd9675677a3c95f21b754e",
      "tree": "20c015513cd03630c3fe81ddf9b36625c3b26310",
      "parents": [
        "7eb1cc23f8976a2062ba0cf92f030216a8e64e60"
      ],
      "author": {
        "name": "Raghu Gandham",
        "email": "raghu@mips.com",
        "time": "Fri Jan 27 17:51:42 2012 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed May 09 11:46:28 2012 -0700"
      },
      "message": "[MIPS] Add support for MIPS syscalls\n\nChange-Id: I4deba67e15c865c4c2db03064c04098a09828ea6\nSigned-off-by: Raghu Gandham \u003craghu@mips.com\u003e\nSigned-off-by: Chris Dearman \u003cchris@mips.com\u003e\n"
    },
    {
      "commit": "6baffed252d0efbce5a79f356c2f156f4f818996",
      "tree": "68679119ced92e19b1bfd505239fc8a2e2961efe",
      "parents": [
        "1e343cb119fde897b0eb6503f114edf20e9b3532"
      ],
      "author": {
        "name": "Ken Sumrall",
        "email": "ksumrall@android.com",
        "time": "Wed Dec 14 20:50:01 2011 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Apr 27 09:34:53 2012 -0700"
      },
      "message": "Add the posix_memalign(3) function to bionic\n\nThe posix_memalign(3) function is very similar to the traditional\nmemalign(3) function, but with better error reporting and a guarantee\nthat the memory it allocates can be freed.  In bionic, memalign(3)\nallocated memory can be freed, so posix_memalign(3) is just a wrapper\naround memalign(3).\n\nChange-Id: I62ee908aa5ba6b887d8446a00d8298d080a6a299\n"
    },
    {
      "commit": "4994deaef51d5fa1ac12e6160b47d9cbe3b2bc43",
      "tree": "83d2a1780ad295899ea3ed18dea561f107de76c8",
      "parents": [
        "7b8666e683e56549091b86fd7b9c421fd0124dbc",
        "d515ce465be909d830a39462c3f196b5d7f35c66"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Apr 16 09:09:04 2012 -0700"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Apr 16 09:09:05 2012 -0700"
      },
      "message": "Merge \"Bionic: Fix wrong prototype of system call clock_nanosleep\""
    },
    {
      "commit": "d515ce465be909d830a39462c3f196b5d7f35c66",
      "tree": "707c0067ad2351d96bba6fd19f14e04e5223514c",
      "parents": [
        "6bc18fa58849a4307cf6ddcfd526d9258e8175fc"
      ],
      "author": {
        "name": "Jack Ren",
        "email": "jack.ren@intel.com",
        "time": "Tue Apr 17 11:20:15 2012 +0800"
      },
      "committer": {
        "name": "Jack Ren",
        "email": "jack.ren@intel.com",
        "time": "Mon Apr 16 23:53:05 2012 +0800"
      },
      "message": "Bionic: Fix wrong prototype of system call clock_nanosleep\n\nIn bionic/libc/SYSCALLS.TXT, the prototype of system call\nclock_nanosleep is incorrect.\n\nAccording to man page:\nint clock_nanosleep(clockid_t clock_id, int flags,\n                    const struct timespec *request,\n                    struct timespec *remain);\n\nChange-Id: Ic44c6db3d632293aa17998035554eacd664c2d57\nSigned-off-by: Jin Wei \u003cwei.a.jin@intel.com\u003e\nSigned-off-by: Jack Ren \u003cjack.ren@intel.com\u003e\nSigned-off-by: Bruce Beare \u003cbruce.j.beare@intel.com\u003e\n"
    },
    {
      "commit": "41070dd15f2c5916dfc96da4c256dd04d7f9c837",
      "tree": "6900905494d40539c9b2fe1ea03f349fa24f4c5b",
      "parents": [
        "6bc18fa58849a4307cf6ddcfd526d9258e8175fc"
      ],
      "author": {
        "name": "Jack Ren",
        "email": "jack.ren@intel.com",
        "time": "Tue Apr 17 11:16:18 2012 +0800"
      },
      "committer": {
        "name": "Jack Ren",
        "email": "jack.ren@intel.com",
        "time": "Mon Apr 16 23:45:36 2012 +0800"
      },
      "message": "bionic: Fix wrong prototype of system call getresuid/getresgid\n\nIn bionic/libc/SYSCALLS.TXT, the prototypes of system call\ngetresuid/getresgid are incorrect.\n\nAccording to man page, they should be:\n    int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid);\n    int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid);\n\nChange-Id: I676098868bb05a9e1fe45419b234cf397626fdad\nSigned-off-by: Jin Wei \u003cwei.a.jin@intel.com\u003e\nSigned-off-by: Jack Ren \u003cjack.ren@intel.com\u003e\nSigned-off-by: Bruce Beare \u003cbruce.j.beare@intel.com\u003e\n"
    },
    {
      "commit": "f0ec06ba609a15cf9343aabd5b2486f9a8af9adb",
      "tree": "63612c38daa434ed182266d38a630914e6882933",
      "parents": [
        "e54cc75f5907684dfd7b1df89b39b4d8375e23a3"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Apr 13 14:56:25 2012 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Apr 13 15:45:42 2012 -0700"
      },
      "message": "Add faccessat to syscall list\n\nChange-Id: I427a18811089cb280769ac8da3ed8adc00a65a10\n"
    },
    {
      "commit": "891966d0209b17d27d8d1f7a94bc6404be93f7bf",
      "tree": "20719cfd7d01b542682746d730f78fb29fc715ca",
      "parents": [
        "1ca0b9d158f8d536a777fdb2cef6adadfea9c176",
        "a677907ee8ecca034318fdb97902fa73e7392c4f"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Wed Mar 21 14:40:41 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 21 14:40:41 2012 -0700"
      },
      "message": "Merge \"string.h: add __attribute__ ((pure)) to string functions\""
    },
    {
      "commit": "a677907ee8ecca034318fdb97902fa73e7392c4f",
      "tree": "e937fcefb5cc8719a7a388cfdb45c9425443ae20",
      "parents": [
        "aac0dc97a9ad91231fa89878e745548d693366c1"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Wed Mar 21 08:48:18 2012 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Wed Mar 21 08:54:54 2012 -0700"
      },
      "message": "string.h: add __attribute__ ((pure)) to string functions\n\ncdefs.h: Introduce the __purefunc attribute, which allows us to mark\ncertain functions as being \"pure\".\n\nhttp://gcc.gnu.org/onlinedocs/gcc/Function-Attributes.html\n\n  Many functions have no effects except the return value and their\n  return value depends only on the parameters and/or global variables.\n  Such a function can be subject to common subexpression elimination\n  and loop optimization just as an arithmetic operator would be.\n\nstring.h: Mark many commently used string functions as \"pure\", to\nallow for additional compiler optimizations.\n\nChange-Id: I42961f90f822b6dbcbc3fd72cdbe774a7adc8785\n"
    },
    {
      "commit": "21eab513e7eec280a7a8bcb9482a1a8b61e59442",
      "tree": "28ba8f7977161897ebddf533fb8e09755a6f35d7",
      "parents": [
        "adb6989786dcc7248d51a3a5a76221b93951f84a"
      ],
      "author": {
        "name": "Ben Cheng",
        "email": "bccheng@google.com",
        "time": "Tue Mar 13 23:04:57 2012 -0700"
      },
      "committer": {
        "name": "Ben Cheng",
        "email": "bccheng@google.com",
        "time": "Tue Mar 20 12:54:55 2012 -0700"
      },
      "message": "New additions/bug fixes required/found when porting perf.\n\nNew functions:\n\ttfind\n\ttsearch\n\ttdelete\n\ttwalk\n\ttdestroy (GNU extension)\n\nBug fix: the current implementation for realpath would crash\n\tif the second argument (resolved_path) is NULL.\n\nNew headers:\n\tar.h\n\tsearch.h\n\nChange-Id: Ib6c1e42fc186a6d597a6e5a9692b16acaa155804\n"
    },
    {
      "commit": "1a823691a21519014daf252691a314f0726d7c3a",
      "tree": "aaf44aebed27ae43e9a9e2682b22f42c99d7201a",
      "parents": [
        "654325de026a2ca5b76b8b40e576c959d8211fdc"
      ],
      "author": {
        "name": "Ben Cheng",
        "email": "bccheng@google.com",
        "time": "Tue Mar 13 12:28:40 2012 -0700"
      },
      "committer": {
        "name": "Ben Cheng",
        "email": "bccheng@google.com",
        "time": "Tue Mar 13 12:28:40 2012 -0700"
      },
      "message": "Update kernel headers and add syscall \"perf_event_open\"\n\nChange-Id: I43f12b727881df002a8524f2738586c043833bae\n"
    },
    {
      "commit": "9ec0f03a0d0b17bbb94ac0b9fef6add28a133c3a",
      "tree": "dde5e86b6ae51f92087a9034750c282e11884164",
      "parents": [
        "1fe109ecf3b1acd10d55091f3e0eed7efeca98f1"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Feb 28 10:40:00 2012 -0800"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Mon Mar 05 16:44:42 2012 -0800"
      },
      "message": "Add relro support\n\nAdd support for PT_GNU_RELRO. This allows the static linker to\nindicate that certain regions of memory should be marked as\n\"read-only\" after dynamic linking is complete.\n\nSee:\n  * http://www.akkadia.org/drepper/nonselsec.pdf (section 6)\n  * http://tk-blog.blogspot.com/2009/02/relro-not-so-well-known-memory.html\n\nNote that this change has no effect on Android right now, because\nwe don\u0027t compile our code with relro enabled.\n\nChange-Id: I6541f8775367e8558b4388f7d105b1ae6e8f046b\n"
    },
    {
      "commit": "51d22d7ea92e77f47accee59c99cb8157bf29fcb",
      "tree": "3f6150fbf5547ceb51749b3bea185341d7544563",
      "parents": [
        "7c38f53d1911e04acf6398921a7bd4444d585c2b",
        "afab5a703d30df613848cb30ab3ecceafd76102b"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Feb 29 19:08:49 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Feb 29 19:08:49 2012 -0800"
      },
      "message": "am afab5a70: Merge \"Eliminate duplicate constants\"\n\n* commit \u0027afab5a703d30df613848cb30ab3ecceafd76102b\u0027:\n  Eliminate duplicate constants\n"
    },
    {
      "commit": "9921947e6fa4547c10f68281fc1a7ad72e11cf56",
      "tree": "80ef6214f13ab93abd40160313cd38e89bb6c1b1",
      "parents": [
        "7f28e0b4501de7c4f8f627fd3e4be323d737ae82"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Feb 28 11:49:41 2012 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Feb 29 18:43:51 2012 -0800"
      },
      "message": "Eliminate duplicate constants\n\ninclude/elf.h contains basically the same values as\nlinux/auxvec.h. Eliminate dups.\n\ninclude/sys/exec_elf.h contains basically the same\nvalues as linux/elf.h. Eliminate dups.\n\nChange-Id: I66b8358161bb52223bb657f8f73ba28b324f4fa3\n"
    },
    {
      "commit": "7c38f53d1911e04acf6398921a7bd4444d585c2b",
      "tree": "8956d2f496db464333e6a18c8c3775e4c78857b7",
      "parents": [
        "17edd38f03300af28c89f9031dad177af8232c3a",
        "7f28e0b4501de7c4f8f627fd3e4be323d737ae82"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Feb 29 15:38:55 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Feb 29 15:38:55 2012 -0800"
      },
      "message": "am 7f28e0b4: Merge \"Clean up the remnants of SuperH support\"\n\n* commit \u00277f28e0b4501de7c4f8f627fd3e4be323d737ae82\u0027:\n  Clean up the remnants of SuperH support\n"
    },
    {
      "commit": "7f28e0b4501de7c4f8f627fd3e4be323d737ae82",
      "tree": "187c638706e047a1f9291409fe50834b81e50560",
      "parents": [
        "9c9b0fc7e1dff39baa8cdf2536be9776aa4af766",
        "b69060f1ae0bd14c93caed2d113a72cf81d98f1d"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Feb 29 14:39:41 2012 -0800"
      },
      "committer": {
        "name": "android code review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Feb 29 14:39:42 2012 -0800"
      },
      "message": "Merge \"Clean up the remnants of SuperH support\""
    },
    {
      "commit": "67e7a93844989a4ea4660e6cfb9613e486c6d352",
      "tree": "80c24f58ede5bdc1d7a1200f106bb4b0c84fcf0f",
      "parents": [
        "d638a500e96bdfec2bd3e34fc5545561b60cd9e6"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Feb 28 11:49:41 2012 -0800"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Wed Feb 29 11:21:53 2012 -0800"
      },
      "message": "Eliminate duplicate constants\n\ninclude/elf.h contains basically the same values as\nlinux/auxvec.h. Eliminate dups.\n\ninclude/sys/exec_elf.h contains basically the same\nvalues as linux/elf.h. Eliminate dups.\n\nChange-Id: I66b8358161bb52223bb657f8f73ba28b324f4fa3\n"
    },
    {
      "commit": "d6b58b03b8e046e0bd46d6d7e57290dcabe48860",
      "tree": "71ee46309e89bb83e7a78fb116730a71cd2df8ef",
      "parents": [
        "32c226d6ed6e1bf62e2bd46645905210bbf20989",
        "09049311a229c427f73e3e0ac873bf344b45aaf2"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 13 14:42:48 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 13 14:42:48 2012 -0800"
      },
      "message": "am 09049311: am cfff36df: am a60ff6c5: Merge \"libc: Define new symbol visibility macros\"\n\n* commit \u002709049311a229c427f73e3e0ac873bf344b45aaf2\u0027:\n  libc: Define new symbol visibility macros\n"
    },
    {
      "commit": "cfff36df2bebd95f2663b7b053c6308593c343dd",
      "tree": "d0f674e29737bd49d3ac8cd029962a5d64b58021",
      "parents": [
        "68fc85ffc05aca5cc187676bd1502c3c446046d9",
        "a60ff6c5b2ca76181b387d8c10aee22a2cbcf840"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Feb 13 14:25:53 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 13 14:25:53 2012 -0800"
      },
      "message": "am a60ff6c5: Merge \"libc: Define new symbol visibility macros\"\n\n* commit \u0027a60ff6c5b2ca76181b387d8c10aee22a2cbcf840\u0027:\n  libc: Define new symbol visibility macros\n"
    },
    {
      "commit": "b69060f1ae0bd14c93caed2d113a72cf81d98f1d",
      "tree": "3eb4e37e676fd676e35ff3d8eea3d532e3c23254",
      "parents": [
        "177a77067b6d3326dbcf88fd93d0664e48e27f9f"
      ],
      "author": {
        "name": "Raghu Gandham",
        "email": "raghu@mips.com",
        "time": "Thu Feb 09 15:58:46 2012 -0800"
      },
      "committer": {
        "name": "Raghu Gandham",
        "email": "raghu@mips.com",
        "time": "Thu Feb 09 15:58:46 2012 -0800"
      },
      "message": "Clean up the remnants of SuperH support\n"
    },
    {
      "commit": "f39a3fe67d7f1faa21a39ea8e1f57a6596c8cadb",
      "tree": "4b348d687db7a7a27af9840571ccbb8ff8dc847a",
      "parents": [
        "1625c7a837d73b6729f97edb32c497d289c0220c"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Feb 09 10:15:45 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Feb 09 10:15:45 2012 -0800"
      },
      "message": "Allow C++ to call fdprintf\n\nChange-Id: I1adb7b165ab9f62eaee4e7a9108e8b461350b347\n"
    },
    {
      "commit": "25b7a16a6ee73248192909862f03f95d2363ad14",
      "tree": "97d420779e6b79917ba5ac65b9bc182a8ceaa68d",
      "parents": [
        "b118b9c5cd6a99fd3368a01ee9de8849d869afc7",
        "c4cb87f367fc33b36c9988b4f42fc07876abccd1"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Feb 01 09:46:08 2012 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Feb 01 09:46:08 2012 -0800"
      },
      "message": "Merge c4cb87f3\n\nChange-Id: I4cc14eba43fde75a7702fdc7ad07d3d949e9c092\n"
    },
    {
      "commit": "c4cb87f367fc33b36c9988b4f42fc07876abccd1",
      "tree": "04772e71faec8bb3b1a4f35ac8c2e0d57e134ff3",
      "parents": [
        "cc12c74f7f65c571778989cd902eb5b9fa74fb11",
        "5b892aa7e581c0b247262a95d70db20991121afe"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Feb 01 07:12:13 2012 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Feb 01 07:12:13 2012 -0800"
      },
      "message": "Merge 5b892aa7\n\nChange-Id: Ic82bc2866bdb0c93822c94281301fa127fd4bb0c\n"
    },
    {
      "commit": "5fbf2e09921723cfdea75e83c1fac2080f0ad564",
      "tree": "e14922f0147869514be03fc3154c4576c68ef154",
      "parents": [
        "5b892aa7e581c0b247262a95d70db20991121afe"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@android.com",
        "time": "Mon Jan 23 15:15:30 2012 +0100"
      },
      "committer": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@android.com",
        "time": "Tue Jan 31 22:19:09 2012 +0100"
      },
      "message": "libc: Define new symbol visibility macros\n\nThis patch defines a few new macros that can be used to control the\nvisibility of symbols exported by the C library:\n\n- ENTRY_PRIVATE() can be used in assembly sources to indicate\n  that an assembler function should have \"hidden\" visibility, i.e.\n  will never be exported by the C library\u0027s shared library.\n\n  This is the equivalent of using __LIBC_HIDDEN__ for a C function,\n  but ENTRY_PRIVATE() works like ENTRY(), and must be used with\n  END() to tag the end of the function.\n\n- __LIBC_ABI_PUBLIC__ can be used to tag a C functions as being\n  part of the C library\u0027s public ABI. This is important for a\n  few functions that must be exposed by the NDK to maintain\n  binary compatibility.\n\n  Once a symbol has been tagged with this macro, it shall\n  *never* be removed from the library, even if it becomes\n  directly unused due to implementation changes\n  (e.g. __is_threaded).\n\n- __LIBC_ABI_PRIVATE__ can be used for C functions that should\n  always be exported by the C library because they are used by\n  other libraries in the platform, but should not be exposed\n  by the NDK. It is possible to remove such symbols from the\n  implementation if all callers are also modified.\n\n+ Add missing END() assembly macro for x86\n\nChange-Id: Ia96236ea0dbec41d57bea634b39d246b30e5e234\n"
    },
    {
      "commit": "70b1668a76d3b719ae690903ea790fda964a5458",
      "tree": "674232e6152fa67c0db8b07b0083bb3ac6c9bd8c",
      "parents": [
        "e80044455961005ac95e405c8d553f2418d8e50c"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Mon Jan 30 17:17:58 2012 +0100"
      },
      "committer": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@android.com",
        "time": "Tue Jan 31 20:28:23 2012 +0100"
      },
      "message": "remove obsolete SuperH support\n\nWe don\u0027t have a toolchain anymore, we don\u0027t have working original\nkernel headers, and nobody is maintaining this so there is really\nno point in keeping this here. Details of the patch:\n\n- removed code paths from Android.mk files related to the SuperH\n  architecture (\"sh\")\n\n- removed libc/arch-sh, linker/arch-sh, libc/kernel/arch-sh\n\n- simplified libc/SYSCALLS.TXT\n\n- simplified the scripts in libc/tools/ and libc/kernel/tools\n\nChange-Id: I26b0e1422bdc347489e4573e2fbec0e402f75560\n\nSigned-off-by: David \u0027Digit\u0027 Turner \u003cdigit@android.com\u003e\n"
    },
    {
      "commit": "73fa5fdaf9ec27741a17b0b793ff6890e6dcecd5",
      "tree": "6ea04b41beb695e792e21018b1e7c0ea6e79a5b5",
      "parents": [
        "d8545e2690c0c179f36c0e4a15c5589bdd6265ce",
        "2f80f07d8106782ac94b05f529c8cbb1fd1c6f64"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Jan 20 16:47:01 2012 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Jan 20 16:47:01 2012 -0800"
      },
      "message": "Merge 2f80f07d\n\nChange-Id: Iff51b8530dbee01499ba4af0ecd6ab837c8c94fb\n"
    },
    {
      "commit": "2f80f07d8106782ac94b05f529c8cbb1fd1c6f64",
      "tree": "9617b50e1bf6a35cbaf55cd0d5003595c41bc2c0",
      "parents": [
        "8eb948d8c8b66d8442a45d398db4e970fb3bf68b",
        "23f56bbb6ae053996dd821f29379aea0c7166055"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Jan 20 11:54:47 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jan 20 11:54:47 2012 -0800"
      },
      "message": "am 23f56bbb: Merge \"Add extended attribute (xattr) system call wrappers to bionic.\"\n\n* commit \u002723f56bbb6ae053996dd821f29379aea0c7166055\u0027:\n  Add extended attribute (xattr) system call wrappers to bionic.\n"
    },
    {
      "commit": "79fcc6948d139878b9ae0423c2fe804636433ad8",
      "tree": "e9750f58b22df996e11220a5bc7be5ccb3db0445",
      "parents": [
        "df49ebabfe58af3e5d5dd0016d17d109151d3da8",
        "208898ee776117f42815c2fcb15903b2781bf0aa"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Thu Jan 19 04:15:38 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 19 04:15:38 2012 -0800"
      },
      "message": "Merge \"libc: remove private declarations from \u003ctime.h\u003e and \u003cresolv.h\u003e\""
    },
    {
      "commit": "5eb686d105ebd7cea332fd1ef0bb3af9386e19f7",
      "tree": "3df9e137dcdcc8b78cb9ca78aee8c5de50316e87",
      "parents": [
        "e30e909363c5c706f394050d9cd00ce222caadbf"
      ],
      "author": {
        "name": "Stephen Smalley",
        "email": "sds@tycho.nsa.gov",
        "time": "Fri Jan 13 07:45:16 2012 -0500"
      },
      "committer": {
        "name": "Stephen Smalley",
        "email": "sds@tycho.nsa.gov",
        "time": "Wed Jan 18 08:02:23 2012 -0500"
      },
      "message": "Add extended attribute (xattr) system call wrappers to bionic.\n\nThe xattr system calls are required for the SE Android userspace in\norder to get and set file security contexts.  In particular, libselinux\nrequires these calls.\n\nChange-Id: I78f5eb3d8f3384aed0a5e7c6a6f001781d982017\n"
    },
    {
      "commit": "ea29cd5a4a0b1fc49a63a789ace1668283a6a280",
      "tree": "fe277d68df56dffaa54f7e9127b4f33970dbd32d",
      "parents": [
        "d6045cba4e572cf9ed0b87efddce93f3c4a80a8f"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Jan 17 17:21:33 2012 -0800"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Jan 17 17:28:42 2012 -0800"
      },
      "message": "Eliminate duplicate copies of constants.\n\nsys/personality.h and linux/personality.h contain mostly\nidentical contents. Eliminate dups.\n\nChange-Id: Ie786edcb5dca57af7ee5b5fdad2949369f1bc4e4\n"
    },
    {
      "commit": "d6045cba4e572cf9ed0b87efddce93f3c4a80a8f",
      "tree": "fe644600155a4aa33c0a66ca7129661dc80c0946",
      "parents": [
        "fc5ea79c5eec404c5790a74478255b8e2ad1e837"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Jan 17 15:56:26 2012 -0800"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Jan 17 15:56:26 2012 -0800"
      },
      "message": "Don\u0027t generate sys/linux-unistd.h\n\nlinux-unistd.h was here for reference purposes, but shouldn\u0027t\nhave been accessible to client code. Delete it.\n\nChange-Id: I60c264ff6ca489a48117914bdf6daa486737af8c\n"
    },
    {
      "commit": "023e5409df07a5d5ead6efb1825f6df92bcf50da",
      "tree": "fb62c1b226535e429cd337ec4114372c1a097649",
      "parents": [
        "697011d3c4d3bfb6b8b070ea9ac7c393b85f9f5e",
        "06f51ba1af2fafeec7fdfcba5d635bd001a31b3e"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Jan 17 13:09:53 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 17 13:09:53 2012 -0800"
      },
      "message": "am 06f51ba1: am f44de270: add personality() system call.\n\n* commit \u002706f51ba1af2fafeec7fdfcba5d635bd001a31b3e\u0027:\n  add personality() system call.\n"
    },
    {
      "commit": "06f51ba1af2fafeec7fdfcba5d635bd001a31b3e",
      "tree": "f8221ac70c84c7708a97e9963aa772e83f11923f",
      "parents": [
        "82c4be54da0825ebe74b524932c9db733419057a",
        "f44de270bba32c9b1b5eff8a34be07b10ddff238"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Jan 17 11:45:25 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 17 11:45:25 2012 -0800"
      },
      "message": "am f44de270: add personality() system call.\n\n* commit \u0027f44de270bba32c9b1b5eff8a34be07b10ddff238\u0027:\n  add personality() system call.\n"
    },
    {
      "commit": "f44de270bba32c9b1b5eff8a34be07b10ddff238",
      "tree": "79597af69be025eb643e495bf9a635077717cc8a",
      "parents": [
        "ecd0e95a0276c1ba72c7331f5e4617815f015f22"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri Jan 13 14:03:01 2012 -0800"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri Jan 13 15:50:40 2012 -0800"
      },
      "message": "add personality() system call.\n\nChange-Id: Ie899def8ea1d705930ed83adae1343c1353e7c57\n"
    },
    {
      "commit": "208898ee776117f42815c2fcb15903b2781bf0aa",
      "tree": "ad3cf092397fa7e398e37c65312e4675016a1da3",
      "parents": [
        "11f3d5a4319e6e37e5280cf187b3d173e1ac0adb"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Fri Jan 13 14:24:08 2012 +0100"
      },
      "committer": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Fri Jan 13 14:24:08 2012 +0100"
      },
      "message": "libc: remove private declarations from \u003ctime.h\u003e and \u003cresolv.h\u003e\n\nThis patch is used to remove private C library declarations from the\npublic headers (that are exported to the NDK). It should *only* be\nsubmitted after all other patches modifying the users of said\nprivate functions have been submitted to the tree, to avoid\nbreakages.\n\nChange-Id: I0a5e3014f8e3ac9ed8df86a5cdae506337c23252\n"
    },
    {
      "commit": "11f3d5a4319e6e37e5280cf187b3d173e1ac0adb",
      "tree": "8c67346daa2fab7c3b2a0ab62defbfbf5a53acd5",
      "parents": [
        "68d03fdbd8eb4d0e40dcdfbfa5e6c6dd931b467a"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Fri Jan 13 13:26:50 2012 +0100"
      },
      "committer": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Fri Jan 13 13:26:50 2012 +0100"
      },
      "message": "libc: Copy private C library declarations to private/\n\nThis patch is the first in a series that aims at cleaning up the\npublic C library headers (which end up being distributed with the NDK).\n\n\u003cresolv.h\u003e and \u003ctime.h\u003e contain declarations that should not be public.\nThey are used by other parts of the platform, but NDK applications should\nnot use or rely on them.\n\nSo copy them to private \u003cbionic_time.h\u003e and \u003cresolv_iface.h\u003e headers\nand use a guard macro to avoid conflicts when both headers are included\nat the same time.\n\nThe idea is that we\u0027re going to fix the other platform modules to\ninclude these private headers. After this is done, we will remove the\nduplicate definitions from \u003cresolv.h\u003e and \u003ctime.h\u003e\n\nChange-Id: I121c11936951c98ca7165e811126ed8a4a3a394d\n"
    },
    {
      "commit": "6519c8124ee9f2b1ed341cc683b78cf26809678d",
      "tree": "2dc3f350fa429f85e263ab913b534ac4dc7972ab",
      "parents": [
        "334379dadaf481785909367cfc26600514b6119c",
        "e30e909363c5c706f394050d9cd00ce222caadbf"
      ],
      "author": {
        "name": "Bruce Beare",
        "email": "bruce.j.beare@intel.com",
        "time": "Tue Jan 03 18:37:28 2012 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 03 18:37:28 2012 -0800"
      },
      "message": "am e30e9093: sreadahead: adding readahead system call into bionic libc\n\n* commit \u0027e30e909363c5c706f394050d9cd00ce222caadbf\u0027:\n  sreadahead: adding readahead system call into bionic libc\n"
    },
    {
      "commit": "e30e909363c5c706f394050d9cd00ce222caadbf",
      "tree": "33dcf8fcbca380db7910ff3519cfc4cf362ab917",
      "parents": [
        "a37f3729730e4e7345977915d67adc3eea93dfe4"
      ],
      "author": {
        "name": "Bruce Beare",
        "email": "bruce.j.beare@intel.com",
        "time": "Wed Jul 13 10:23:50 2011 -0700"
      },
      "committer": {
        "name": "Bruce Beare",
        "email": "bruce.j.beare@intel.com",
        "time": "Tue Jan 03 15:18:04 2012 -0800"
      },
      "message": "sreadahead: adding readahead system call into bionic libc\n\nAdd bionic libc to support readahead system call.\nThis is needed to enable sreadahead to work.\n\nChange-Id: I3856e1a3833db82e6cf42fd34af7631bd40cc723\nAuthor: Winson Yung \u003cwinson.w.yung@intel.com\u003e\nSigned-off-by: Bruce Beare \u003cbruce.j.beare@intel.com\u003e\n"
    },
    {
      "commit": "85aad909560508410101c18c6ecc6633df39c596",
      "tree": "1da341473c2090fa35afc5d22351603bd49ac79c",
      "parents": [
        "a5cb76bca00b1ce44a04687fb179809c12ea9cd3"
      ],
      "author": {
        "name": "Ken Sumrall",
        "email": "ksumrall@android.com",
        "time": "Wed Dec 14 20:50:01 2011 -0800"
      },
      "committer": {
        "name": "Ken Sumrall",
        "email": "ksumrall@android.com",
        "time": "Wed Dec 14 20:55:43 2011 -0800"
      },
      "message": "Add the posix_memalign(3) function to bionic\n\nThe posix_memalign(3) function is very similar to the traditional\nmemalign(3) function, but with better error reporting and a guarantee\nthat the memory it allocates can be freed.  In bionic, memalign(3)\nallocated memory can be freed, so posix_memalign(3) is just a wrapper\naround memalign(3).\n\nChange-Id: I62ee908aa5ba6b887d8446a00d8298d080a6a299\n"
    },
    {
      "commit": "de44d0b2bd32a2c2cc5e2ffb64f8356efd893bca",
      "tree": "7b83cab0619d43bef90d24e2590032759d5e1a7d",
      "parents": [
        "95a17848d3a96000f90cdbfc7ff922182f0003b3",
        "0fec6b9d88ee5a9e359b2208038f9806c0804538"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Tue Nov 22 02:10:06 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 22 02:10:06 2011 -0800"
      },
      "message": "Merge \"libc: provide atomic operations will full barriers for NDK apps.\""
    },
    {
      "commit": "95a17848d3a96000f90cdbfc7ff922182f0003b3",
      "tree": "8fff82284e51129617fd070f4bf904f4b70c8351",
      "parents": [
        "f638339d0955ec1d00580842604df7578c40833b",
        "10c8ce59a40a1d8ae8f49145eca365b364aabe58"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Nov 21 13:13:26 2011 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 21 13:13:26 2011 -0800"
      },
      "message": "Merge \"Add tgkill syscall.\""
    },
    {
      "commit": "10c8ce59a40a1d8ae8f49145eca365b364aabe58",
      "tree": "5157c1d270cda4e2933a0e7fedf8b5ed6b920f96",
      "parents": [
        "4b469eae40368913b2841b390dada6c58296c602"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Nov 18 15:17:07 2011 -0800"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Nov 18 16:40:48 2011 -0800"
      },
      "message": "Add tgkill syscall.\n\nUse tgkill instead of tkill to implement pthread_kill.\nThis is safer in the event that the thread has already terminated\nand its id has been reused by a different process.\n\nChange-Id: Ied715e11d7eadeceead79f33db5e2b5722954ac9\n"
    },
    {
      "commit": "0fec6b9d88ee5a9e359b2208038f9806c0804538",
      "tree": "09eeea71b53e27010352ac913e886459f2ed6c6c",
      "parents": [
        "b38522983712432ba143c046343ba4fa01baf7c8"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Wed Nov 16 17:37:15 2011 +0100"
      },
      "committer": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Wed Nov 16 17:37:15 2011 +0100"
      },
      "message": "libc: provide atomic operations will full barriers for NDK apps.\n\n__atomic_cmpxchg and other related atomic operations did not\nprovide memory barriers, which can be a problem for non-platform\ncode that links against them when it runs on multi-core devices.\n\nThis patch does two things to fix this:\n\n- It modifies the existing implementation of the functions\n  that are exported by the C library to always provide\n  full memory barriers. We need to keep them exported by\n  the C library to prevent breaking existing application\n  machine code.\n\n- It also modifies \u003csys/atomics.h\u003e to only export\n  always-inlined versions of the functions, to ensure that\n  any application code compiled against the new header will\n  not rely on the platform version of the functions.\n\n  This ensure that said machine code will run properly on\n  all multi-core devices.\n\nThis is based on the GCC built-in sync primitives.\n\nThe end result should be only slightly slower than the\nprevious implementation.\n\nNote that the platform code does not use these functions\nat all. A previous patch completely removed their usage in\nthe pthread and libstdc++ code.\n\n+ rename arch-arm/bionic/atomics_arm.S to futex_arm.S\n+ rename arch-x86/bionic/atomics_x86.S to futex_x86.S\n+ remove arch-x86/include/sys/atomics.h which already\n  provided inlined functions to the x86 platform.\n\nChange-Id: I752a594475090cf37fa926bb38209c2175dda539\n"
    },
    {
      "commit": "9831ad3ce6bd5b22da16a275ed67e7236eae3d1f",
      "tree": "2f5152add91760c209361fb918ad83a4f24b3502",
      "parents": [
        "4b469eae40368913b2841b390dada6c58296c602"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Mon Aug 29 21:43:46 2011 +0200"
      },
      "committer": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Tue Nov 15 13:16:42 2011 +0100"
      },
      "message": "libc: speed-up flockfile()/funlockfile()\n\nFor Honeycomb, we added proper file thread-safety for\nall FILE* operations. However, we did implement that by\nusing an out-of-band hash table to map FILE* pointers\nto phtread_mutex_t mutexes, because we couldn\u0027t change\nthe size of \u0027struct _sFILE\u0027 without breaking the ABI.\n\nIt turns out that our BSD-derived code already has\nsome support code to extend FILE* objects, so use it\ninstead. See libc/stdio/fileext.h\n\nThis patch gets rid of the hash table, and put the\nmutex directly into the sFILE extension.\n\nChange-Id: If1c3fe0a0a89da49c568e9a7560b7827737ff4d0\n"
    },
    {
      "commit": "bda5da074eab4bdf374e1f4a19d480c62c72f5ff",
      "tree": "87a4c2fd35e6b071476d4a5fd02aca7c61c6e3f9",
      "parents": [
        "00964912745f0bb7e081f84ddcc74940f973149f"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Sep 27 22:30:19 2011 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Sep 28 12:17:34 2011 -0700"
      },
      "message": "fix prototype of dladdr\n\nthis breaks C++ source code in particular.\n\nChange-Id: Ie06b5d31d23b5455e6950c470adc64dd5e7784df\n"
    },
    {
      "commit": "8f88cbedc1692def20298300a7df94ad1c536259",
      "tree": "24a5154d387b1d4cc319d9676f43f49384cc29d7",
      "parents": [
        "2d2dbd30243f4ffd1e0a10ade989e25d29f7f45c",
        "e0a4b67811981ab4c04c437b23c36ae42c444bce"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Mon Jun 27 14:14:07 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jun 27 14:14:07 2011 -0700"
      },
      "message": "am e0a4b678: am cc32fbc3: Merge \"Add support for a dns cache per interface\"\n\n* commit \u0027e0a4b67811981ab4c04c437b23c36ae42c444bce\u0027:\n  Add support for a dns cache per interface\n"
    },
    {
      "commit": "e0a4b67811981ab4c04c437b23c36ae42c444bce",
      "tree": "137c028de9ba33a51aa160e2bb219ca375b3a239",
      "parents": [
        "c643a4d4c71c2caaf016ab402fba99c1c9377567",
        "cc32fbc3050079aa020ac39afb1c84b5e72737a8"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Thu Jun 23 11:12:19 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 23 11:12:19 2011 -0700"
      },
      "message": "am cc32fbc3: Merge \"Add support for a dns cache per interface\"\n\n* commit \u0027cc32fbc3050079aa020ac39afb1c84b5e72737a8\u0027:\n  Add support for a dns cache per interface\n"
    },
    {
      "commit": "a94dc678fb2003eaf26e97c79140223035836272",
      "tree": "96285fc93d5e945122b58b84a19c59f2b1aee0a4",
      "parents": [
        "ff03fb25f7a7c6706f5de5006c36aac863be3a3e",
        "3398ee9c15278b90bc2934afca6bdf83b6b605e6"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Jun 22 10:58:38 2011 -0700"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Jun 22 14:34:39 2011 -0700"
      },
      "message": "Merge remote branch \u0027goog/dalvik-dev\u0027 into dalvik-dev-to-master\n\nChange-Id: I795687c11ca2e8443f7c8c264e209501dab9b2c9\n"
    },
    {
      "commit": "23d3e6b21b4b6debff87da8c6558495e564cc38e",
      "tree": "12c38b3f07f332621e4cedf34dd9ac118428b7d5",
      "parents": [
        "b127b1f208e67d74a7ee94ad2bd0ffb2fed3af6b"
      ],
      "author": {
        "name": "Mattias Falk",
        "email": "mattias.falk@sonyericsson.com",
        "time": "Mon Apr 04 16:12:35 2011 +0200"
      },
      "committer": {
        "name": "Johan Redestig",
        "email": "johan.redestig@sonyericsson.com",
        "time": "Wed Jun 08 15:39:29 2011 +0200"
      },
      "message": "Add support for a dns cache per interface\n\nInitial commit for dns cache per interface.\nAdded a type that holds a reference to a\ncache and name of associated interface,\naddress of interface, name server(s)\nassociated with an interface etc.\n\nNew functions to set default interface,\naddress of name servers etc.\n\nChange-Id: Ie991bc5592fd998409853d8bf77d7fe69035dac5\n"
    },
    {
      "commit": "09dc7fb1b893221776ef5d35d9aaecd07f95eceb",
      "tree": "38e9fd048cafde1a1e8bbcfa7aa8210db48b12f7",
      "parents": [
        "1952c8f43087511fa54ee30a71abf6965597384b",
        "b127b1f208e67d74a7ee94ad2bd0ffb2fed3af6b"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Jun 07 13:24:04 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 07 13:24:04 2011 -0700"
      },
      "message": "am b127b1f2: Merge \"libc: enable IPTOS_MINCOST, fixup gethostbyaddr() proto.\"\n\n* commit \u0027b127b1f208e67d74a7ee94ad2bd0ffb2fed3af6b\u0027:\n  libc: enable IPTOS_MINCOST, fixup gethostbyaddr() proto.\n"
    },
    {
      "commit": "cfaf49ddea18b0fb56887627bd0f1832cb0eb1c9",
      "tree": "4139abcc0998eb5499fbdc81e10ae974f9fceb75",
      "parents": [
        "fd88dd19f7f7f203004f9e43e9b71197a451ec44",
        "4aa321538afde20a632ed666f83f40f892505550"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@android.com",
        "time": "Tue Jun 07 10:49:32 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 07 10:49:32 2011 -0700"
      },
      "message": "am 4aa32153: am 2cae7967: Merge \"libc: Fix prctl() declaration.\"\n\n* commit \u00274aa321538afde20a632ed666f83f40f892505550\u0027:\n  libc: Fix prctl() declaration.\n"
    },
    {
      "commit": "4aa321538afde20a632ed666f83f40f892505550",
      "tree": "234af69149de574035abf0a58a6f39db2cef50ae",
      "parents": [
        "204d1f65dbfc6d5a14a90627d9d1efcfce8261ee",
        "2cae7967e6049e45eaef71207481b6f8b2456025"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@android.com",
        "time": "Mon Jun 06 12:27:10 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jun 06 12:27:10 2011 -0700"
      },
      "message": "am 2cae7967: Merge \"libc: Fix prctl() declaration.\"\n\n* commit \u00272cae7967e6049e45eaef71207481b6f8b2456025\u0027:\n  libc: Fix prctl() declaration.\n"
    },
    {
      "commit": "8a5123740750298433cce102f93cf5871985aa09",
      "tree": "9fd2025567af61dc64c2b23c9da6827f933bff46",
      "parents": [
        "b78220573a764f5955e4ace70e35f00edb41197a"
      ],
      "author": {
        "name": "JP Abgrall",
        "email": "jpa@google.com",
        "time": "Wed May 18 16:53:23 2011 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Jun 02 15:28:16 2011 -0700"
      },
      "message": "libc: enable IPTOS_MINCOST, fixup gethostbyaddr() proto.\n\nMake netinet/ip.h have IPTOS_MINCOST which matches what\n  kernel/common/linux/ip.h has to say.\nFixup gethostbyaddr() 1st arg to match what man has to say.\n\nChange-Id: Iff9647d4a46ea88b1fc32163eb69bb9b27cdf370\n"
    },
    {
      "commit": "c18d76f6eca570e8e69b0c70d01d49e69d903b2c",
      "tree": "881722638e2b4971b0c800d5142c187c2a3abedc",
      "parents": [
        "2cae7967e6049e45eaef71207481b6f8b2456025"
      ],
      "author": {
        "name": "Steinar H. Gunderson",
        "email": "sesse@google.com",
        "time": "Thu Jan 20 01:31:36 2011 +0100"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Jun 01 11:12:38 2011 -0700"
      },
      "message": "Add icmp6.h and ip6.h files from current NetBSD libc.\n\nChange-Id: I6b304dfbefaec74c5fb15b216f38d698a55f0642\n"
    },
    {
      "commit": "b083bb57f5cae6b1fa3fd756a2720a3de806da2b",
      "tree": "918c37c39340083d7737e56cea44903f54470555",
      "parents": [
        "9062a2369107eadb2b45973adc3246cba35640e6"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@android.com",
        "time": "Thu May 26 02:46:41 2011 +0200"
      },
      "committer": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@android.com",
        "time": "Thu May 26 02:46:41 2011 +0200"
      },
      "message": "libc: Fix prctl() declaration.\n\nThis change fixes the prctl() declaration to match GLibc, and allow us\nto build gcc-4.6 for Android (among other things). Note that this does\nnot change the source and binary interfaces.\n\nChange-Id: I3900c957f0da8b3548cbe9da8c41d50099dc19d6\n"
    },
    {
      "commit": "f8d02d24edd23dfb5028881105828cbf15e59310",
      "tree": "cdee1fb5572d890d7886fc4c63986efdb5616679",
      "parents": [
        "b609bfd0487291eff01876d4a25f2c7c13d49d03"
      ],
      "author": {
        "name": "JP Abgrall",
        "email": "jpa@google.com",
        "time": "Wed May 18 16:53:23 2011 -0700"
      },
      "committer": {
        "name": "JP Abgrall",
        "email": "jpa@google.com",
        "time": "Wed May 18 16:53:23 2011 -0700"
      },
      "message": "libc: enable IPTOS_MINCOST, fixup gethostbyaddr() proto.\n\nMake netinet/ip.h have IPTOS_MINCOST which matches what\n  kernel/common/linux/ip.h has to say.\nFixup gethostbyaddr() 1st arg to match what man has to say.\n\nChange-Id: Iff9647d4a46ea88b1fc32163eb69bb9b27cdf370\n"
    },
    {
      "commit": "bf018299bd556867ffcd573417c11f6c83f601cd",
      "tree": "374ace0548e37bdca78014a706472cd7d026211e",
      "parents": [
        "2848ca2c05fc30d1ff3405c9467605dce82c5d90"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri May 13 10:53:53 2011 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri May 13 10:54:34 2011 -0700"
      },
      "message": "Fix strerror(3) for errno 0.\n\nEveryone else\u0027s C library says \"Success\". We say \"Unknown error: 0\", which\nisn\u0027t really true.\n\nChange-Id: I9f9054779123eda996634e5f7a277789b6805809\n"
    },
    {
      "commit": "c5d8d36d4d816b1e443cf4766cf39968c0806802",
      "tree": "d26d8e10119e9fd6a9504d67c91a974608957802",
      "parents": [
        "5f133f3c4ddd6d43d8da6b3bcccb9a7477dd20b3"
      ],
      "author": {
        "name": "JP Abgrall",
        "email": "jpa@google.com",
        "time": "Tue Apr 05 11:48:52 2011 -0700"
      },
      "committer": {
        "name": "JP Abgrall",
        "email": "jpa@google.com",
        "time": "Tue Apr 05 11:48:52 2011 -0700"
      },
      "message": "add net/ethernet.h stub\n\n\nSome externals tend to use net/ethernet.h. Most of which is in net/if_ether.h.\n\nChange-Id: I465d18136b565e56a4bd6678238fe0afef25d913\n"
    },
    {
      "commit": "f5da2df1265fe14141c45a86fc706da657be7ab6",
      "tree": "fe5d8088a703d00141b1c7f8afd8944fc1f49505",
      "parents": [
        "bf90b57b442760b85a0af38792e6e2f8aa9e7826",
        "bfe04ea0e61c6905c1f6781097bddf07f843eb25"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@android.com",
        "time": "Wed Mar 30 16:38:29 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Mar 30 16:38:29 2011 -0700"
      },
      "message": "am bfe04ea0: am 8c6b848e: am 0e47a919: Merge \"libc: \u003csys/cdefs.h\u003e: Fix the use of __STDC_VERSION__ from C++\"\n\n* commit \u0027bfe04ea0e61c6905c1f6781097bddf07f843eb25\u0027:\n  libc: \u003csys/cdefs.h\u003e: Fix the use of __STDC_VERSION__ from C++\n"
    },
    {
      "commit": "bfe04ea0e61c6905c1f6781097bddf07f843eb25",
      "tree": "e65ca1887f81188ee0e72d8ede865bc78906ffad",
      "parents": [
        "aa8f50b404ab0b2c78833387551800fa8448afcd",
        "8c6b848e435b86db58179763da30008ac7d4c24a"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@android.com",
        "time": "Wed Mar 30 08:20:28 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Mar 30 08:20:28 2011 -0700"
      },
      "message": "am 8c6b848e: am 0e47a919: Merge \"libc: \u003csys/cdefs.h\u003e: Fix the use of __STDC_VERSION__ from C++\"\n\n* commit \u00278c6b848e435b86db58179763da30008ac7d4c24a\u0027:\n  libc: \u003csys/cdefs.h\u003e: Fix the use of __STDC_VERSION__ from C++\n"
    },
    {
      "commit": "01d14ab42967528dc77aa46f293f6a0c63ebc06c",
      "tree": "7b1f1e330fee8c6e01b0ebb01595279136e8b3f6",
      "parents": [
        "e3e4ac9237cb58884361566a25bdc5e394ed455a",
        "c913b28f20ffb147fca05fe9f8d582e0a915fa9c"
      ],
      "author": {
        "name": "Ken Sumrall",
        "email": "ksumrall@android.com",
        "time": "Thu Mar 24 22:35:11 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Mar 24 22:35:11 2011 -0700"
      },
      "message": "am c913b28f: am b130f004: am ae2d5ba3: Add support for the utimensat(2) syscall to bionic.\n\n* commit \u0027c913b28f20ffb147fca05fe9f8d582e0a915fa9c\u0027:\n  Add support for the utimensat(2) syscall to bionic.\n"
    },
    {
      "commit": "b130f00493f6ae3b2343e1caac002de528a45e41",
      "tree": "832506f069fca6e8eea42a49854b90c352a1761a",
      "parents": [
        "0b3c5c50f7bed92282783995bf6a7cc777fa9392",
        "ae2d5ba31412c4f382ef405000baa866f35dd736"
      ],
      "author": {
        "name": "Ken Sumrall",
        "email": "ksumrall@android.com",
        "time": "Thu Mar 24 22:31:40 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Mar 24 22:31:40 2011 -0700"
      },
      "message": "am ae2d5ba3: Add support for the utimensat(2) syscall to bionic.\n\n* commit \u0027ae2d5ba31412c4f382ef405000baa866f35dd736\u0027:\n  Add support for the utimensat(2) syscall to bionic.\n"
    },
    {
      "commit": "ae2d5ba31412c4f382ef405000baa866f35dd736",
      "tree": "54338fc3fa81d2ff665cf259570b7684c0453269",
      "parents": [
        "ec7e8cc9dddafc624cd28939c1a38ea336c89455"
      ],
      "author": {
        "name": "Ken Sumrall",
        "email": "ksumrall@android.com",
        "time": "Fri Mar 18 11:55:12 2011 -0700"
      },
      "committer": {
        "name": "Ken Sumrall",
        "email": "ksumrall@android.com",
        "time": "Thu Mar 24 18:18:48 2011 -0700"
      },
      "message": "Add support for the utimensat(2) syscall to bionic.\n\nThe kernel has supported this syscall for quite some time now,\nbut bionic did not.  Now that there is a need for it, let\u0027s\nadd it to bionic.\n\nChange-Id: Ifcef3e46f1438d79435b600c4e6063857ab16903\n"
    },
    {
      "commit": "8eda21baa54977e4d164a4174d06b6aa12115fb1",
      "tree": "3e82356d2091b24e520279d1095dba1bdedada4b",
      "parents": [
        "5a6f593b6197b96f980d9d45f9a981ef8705caf4"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@android.com",
        "time": "Thu Mar 17 10:56:25 2011 +0100"
      },
      "committer": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@android.com",
        "time": "Tue Mar 22 14:22:32 2011 +0100"
      },
      "message": "libc: \u003csys/cdefs.h\u003e: Fix the use of __STDC_VERSION__ from C++\n\nSee http://code.google.com/p/android/issues/detail?id\u003d14627 for context.\n\nChange-Id: Idb10b675667d0d6e64dcb1d382be11e45aa6f4c4\n"
    },
    {
      "commit": "f8e658cf6b9601e63d4b363ccee83ee4af1a78e4",
      "tree": "7bcc88d11743b3a35208588fba76ee2715cb9bea",
      "parents": [
        "d0d07712e5db42e66ea6b8a6940b8a4ba8579aab",
        "9a48b8e4196d23529e28f6965ad7a03d543922a2"
      ],
      "author": {
        "name": "Dmitry Shmidt",
        "email": "dimitrysh@google.com",
        "time": "Mon Mar 21 16:03:30 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 21 16:03:30 2011 -0700"
      },
      "message": "Merge \"Return back EAI_ADDRFAMILY definition needed for libnl-2.0\""
    },
    {
      "commit": "9a48b8e4196d23529e28f6965ad7a03d543922a2",
      "tree": "3c7ef26cdac01ce880d904ac24d96062a520d8aa",
      "parents": [
        "3224c08bd77043338ad6e9ecacbd4c118205e873"
      ],
      "author": {
        "name": "Dmitry Shmidt",
        "email": "dimitrysh@google.com",
        "time": "Mon Mar 21 14:45:35 2011 -0700"
      },
      "committer": {
        "name": "Dmitry Shmidt",
        "email": "dimitrysh@google.com",
        "time": "Mon Mar 21 14:45:35 2011 -0700"
      },
      "message": "Return back EAI_ADDRFAMILY definition needed for libnl-2.0\n\nChange-Id: I86e6ca8ad92da7a81ea4b659dd9fc9be2d6fd3c9\nSigned-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n"
    },
    {
      "commit": "0b3c5c50f7bed92282783995bf6a7cc777fa9392",
      "tree": "15889487a34373cb0c7695d68977cdaf8eef11a4",
      "parents": [
        "aa00ec1a2c6fa2bc06bfa16759d99e17a1d0b9b7"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Tue Mar 15 11:02:26 2011 +0900"
      },
      "committer": {
        "name": "The Android Automerger",
        "email": "android-build@android.com",
        "time": "Tue Mar 15 23:06:58 2011 -0700"
      },
      "message": "do not merge. Move property setting from libcutils to bionic.\n\nBackport I110b653a58f3\n\nAll the other property stuff is already here.  Property setting was\nonly in libcutils previously to leverage a utility function / constant\nor two.\n\nUnfortunately in the process of fixing a race condition we would\u0027ve\nhad to do break abstraction boundaries and put some libc-internal\ndetails into libcutils so instead of that we\u0027ll just move this\ninto bionic.\n\nAlong with Iee1ca9b7, this now passes:\n\n$ adb shell am instrument -w -e class android.os.SystemPropertiesTest \\\n  com.android.frameworks.coretests.systemproperties/android.test.InstrumentationTestRunner\n\n  Bug: 3511230\n\nChange-Id: I1b588db3344169621e1279ecc0b660cf4e1015d7\n"
    },
    {
      "commit": "ec7e8cc9dddafc624cd28939c1a38ea336c89455",
      "tree": "1bbea89a5334230a64b7e60b3b429f8cbc8d9069",
      "parents": [
        "2bb79ad9b5941ad11b7ccaa8147577cef69524b2"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Tue Mar 15 11:02:26 2011 +0900"
      },
      "committer": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Tue Mar 15 11:02:26 2011 +0900"
      },
      "message": "do not merge. Move property setting from libcutils to bionic.\n\nBackport I110b653a58f3\n\nAll the other property stuff is already here.  Property setting was\nonly in libcutils previously to leverage a utility function / constant\nor two.\n\nUnfortunately in the process of fixing a race condition we would\u0027ve\nhad to do break abstraction boundaries and put some libc-internal\ndetails into libcutils so instead of that we\u0027ll just move this\ninto bionic.\n\nAlong with Iee1ca9b7, this now passes:\n\n$ adb shell am instrument -w -e class android.os.SystemPropertiesTest \\\n  com.android.frameworks.coretests.systemproperties/android.test.InstrumentationTestRunner\n\n  Bug: 3511230\n\nChange-Id: I1b588db3344169621e1279ecc0b660cf4e1015d7\n"
    },
    {
      "commit": "4399df8f2ebd797e45bec81e6f22e4911b2c5686",
      "tree": "333595bb8060913140086592f30663e2b969749c",
      "parents": [
        "70828ae0ea33c8e2f3316a705b5da478a32f8498"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Thu Mar 10 15:52:49 2011 -0800"
      },
      "committer": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Mon Mar 14 16:53:18 2011 -0700"
      },
      "message": "Move property setting from libcutils to bionic.\n\nAll the other property stuff is already here.  Property setting was\nonly in libcutils previously to leverage a utility function / constant\nor two.\n\nUnfortunately in the process of fixing a race condition we would\u0027ve\nhad to do break abstraction boundaries and put some libc-internal\ndetails into libcutils so instead of that we\u0027ll just move this\ninto bionic.\n\nAlong with Iee1ca9b7, this now passes:\n\n$ adb shell am instrument -w -e class android.os.SystemPropertiesTest \\\n  com.android.frameworks.coretests.systemproperties/android.test.InstrumentationTestRunner\n\nBug: 3511230\nChange-Id: I110b653a58f312fbe069dca59892a877ae9bc911\n"
    },
    {
      "commit": "8d1f2e6ffc7230e4000e5352e5798095a1f6d428",
      "tree": "8f492cc8a3b65f58f97d87748f548dab5eeddfe1",
      "parents": [
        "448a1b9f1827cbebad69383ba3f09cc0be5b4986",
        "638608b11afbd255ddbd15e739f0f638791a4305"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@android.com",
        "time": "Mon Mar 14 10:53:11 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Mar 14 10:53:11 2011 -0700"
      },
      "message": "am 638608b1: am da8ea213: Merge \"libc: \u003cstdint.h\u003e: Don\\\u0027t make __STD_CONSTANT_MACROS available if only __STD_LIMIT_MACROS is defined.\"\n\n* commit \u0027638608b11afbd255ddbd15e739f0f638791a4305\u0027:\n  libc: \u003cstdint.h\u003e: Don\u0027t make __STD_CONSTANT_MACROS available if only __STD_LIMIT_MACROS is defined.\n"
    },
    {
      "commit": "448a1b9f1827cbebad69383ba3f09cc0be5b4986",
      "tree": "0e90640b373788691e646740783ae0b19061e5f5",
      "parents": [
        "3134b56bb077d9dce1a8d49ac805878baef33603",
        "b299039d060eb5f523c05e4f9b6934a6b897a54f"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@android.com",
        "time": "Mon Mar 14 10:53:09 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Mar 14 10:53:09 2011 -0700"
      },
      "message": "am b299039d: am e6e2ba1d: Merge \"libc: \u003cpthread.h\u003e: Replace \\\u0027#if __cplusplus\\\u0027 by \\\u0027#ifdef __cplusplus\\\u0027\"\n\n* commit \u0027b299039d060eb5f523c05e4f9b6934a6b897a54f\u0027:\n  libc: \u003cpthread.h\u003e: Replace \u0027#if __cplusplus\u0027 by \u0027#ifdef __cplusplus\u0027\n"
    },
    {
      "commit": "3134b56bb077d9dce1a8d49ac805878baef33603",
      "tree": "243505a3c65f348e56b5312678ac1345b2f58a0d",
      "parents": [
        "b868a32df691c5deee1ce2f40878419e3c49d1a3",
        "0d6bbc7af091ee05dd032492ae594c263404e4aa"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@android.com",
        "time": "Fri Mar 11 15:40:21 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Mar 11 15:40:21 2011 -0800"
      },
      "message": "am 0d6bbc7a: am dfe6eda5: Merge \"libc: \u003cstdint.h\u003e: fix typo in INTMAX_C()/UINTMAX_C() definition\"\n\n* commit \u00270d6bbc7af091ee05dd032492ae594c263404e4aa\u0027:\n  libc: \u003cstdint.h\u003e: fix typo in INTMAX_C()/UINTMAX_C() definition\n"
    }
  ],
  "next": "b868a32df691c5deee1ce2f40878419e3c49d1a3"
}
