)]}'
{
  "log": [
    {
      "commit": "2e8e5e60b6ecbcfe2110242e41b9ec5340b11cf5",
      "tree": "8810a00e508e0dd698d23f513432fff2e513e87e",
      "parents": [
        "ee1c45f88f5fcd1b1d43c325e0de366cc3d0ce36"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Thu Apr 20 12:58:31 2017 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Thu Apr 20 16:57:25 2017 -0700"
      },
      "message": "DO NOT MERGE: The future is now.\n\n__INTRODUCED_IN_FUTURE -\u003e __INTRODUCED_IN(26)\n\nBug: http://b/37437368\nTest: treehugger\nChange-Id: I601a23da83b65a0cd582cc840ed3856a9031b673\n(cherry picked from commit cb302f932a3532f1484e1e70894e9b1199384283)\n"
    },
    {
      "commit": "95b59c520b24aabcdc63b93a3f1eaf73e57a3afe",
      "tree": "76e43d9ec4f387c5774508c9e6c9d728a21c8052",
      "parents": [
        "9fc52deab1c6bec6a37860242eafe1ae4c205e44"
      ],
      "author": {
        "name": "Daniel Micay",
        "email": "danielmicay@gmail.com",
        "time": "Mon Feb 13 17:27:59 2017 -0800"
      },
      "committer": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Tue Feb 14 15:50:28 2017 -0800"
      },
      "message": "add fortified implementations of send/sendto\n\nBug: None\nTest: Bullhead builds+boots; CtsBionicTestCases passes.\nChange-Id: I2f137a100f679f7f2145d84b2f29ddd3e96a36ae\n"
    },
    {
      "commit": "156d5a8ae93c6515919dd6706481991c7c0dc600",
      "tree": "babd491737f6965d7c6910869b435e5e47cf7cdc",
      "parents": [
        "e86a8d605b3df0c396e23ee02933c76d7040a73b"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Fri Feb 10 13:56:22 2017 -0800"
      },
      "committer": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Fri Feb 10 18:14:43 2017 -0800"
      },
      "message": "Match __bos0 to __pass_object_size0 in FORTIFY\n\npass_object_size(N) forwards the result of __builtin_object_size(param,\nN) to a function. So, a function that looks like:\n\n  size_t foo(void *const p __pass_object_size) { return __bos0(p); }\n  int bar \u003d foo(baz);\n\nwould effectively be turned into\n\n  size_t foo(void *const p, size_t sz) { return sz; }\n  int bar \u003d foo(baz, __bos(baz)); // note that this is not __bos0\n\nThis is bad, since if we\u0027re using __bos0, we want more relaxed\nobjectsize checks.\n\n__bos0 should be more permissive than __bos in all cases, so this\nchange Should Be Fine™.\n\nThis change also makes GCC and clang share another function\u0027s\nimplementation (recv). I just realized we need to add special\ndiagnostic-related overloads bits for clang to it, but I can do that in\nanother patch.\n\nBug: None\nTest: Bullhead builds and boots; CtsBionicTestCases passes.\nChange-Id: I6818d0041328ab5fd0946a1e57321a977c1e1250\n"
    },
    {
      "commit": "7cc779f15c524e1622f7d5b1c7e82e6ffc6677fd",
      "tree": "0f995c0878649447ef160e727505ae81495dcdde",
      "parents": [
        "2bfb8c9180603bac97dca2d8e359f71bb11f7126"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Thu Feb 09 00:00:31 2017 -0800"
      },
      "committer": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Thu Feb 09 15:49:32 2017 -0800"
      },
      "message": "libc: add clang FORTIFY support\n\nThis patch adds clang-style FORTIFY to Bionic. For more information on\nFORTIFY, please see https://goo.gl/8HS2dW . This implementation works\nfor versions of clang that don\u0027t support diagnose_if, so please see the\n\"without diagnose_if\" sections. We plan to swap to a diagnose_if-based\nFORTIFY later this year (since it doesn\u0027t really add any features; it\njust simplifies the implementation a lot, and it gives us much prettier\ndiagnostics)\n\nBug: 32073964\nTest: Builds on angler, bullhead, marlin, sailfish. Bionic CTS tests\npass on Angler and Bullhead.\n\nChange-Id: I607aecbeee81529709b1eee7bef5b0836151eb2b\n"
    },
    {
      "commit": "8d7687143843c4fe8c8e79ea8abbc2d6b9c889f2",
      "tree": "bd70977eb4df7035a737812f95323e4b184051e1",
      "parents": [
        "e54c49050368cda50aa98af653e80f660467e246"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Dec 13 15:29:58 2016 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Dec 13 15:29:58 2016 -0800"
      },
      "message": "Update socket constants.\n\nThis corresponds to Linux 4.10.\n\nBug: N/A\nTest: builds\nChange-Id: Ia7135c9fec181613b79726d1b16867133cdefd04\n"
    },
    {
      "commit": "5bc78c8bcd0c1e634c04029309ede3ec05f2d424",
      "tree": "ba41f009cdf5fb27c766b4efe05c4cbb566d2a85",
      "parents": [
        "8945d5e43a25737f3f888a90742cc918b1124a05"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Nov 16 11:35:43 2016 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Nov 16 16:55:42 2016 -0800"
      },
      "message": "Add and use constants for the Android API levels.\n\nTest: bionic tests still pass\nChange-Id: If1b619cfc9db1d3f5d91f14f2ace71058dca0c4a\n"
    },
    {
      "commit": "11f0e10c4911e39733145194ee78bb65d684fff4",
      "tree": "71bfdcc267ac751fdb1455dc5e36f59cf4b92039",
      "parents": [
        "299040420652498575ddfc7516a16ac5f835c132"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Sep 08 16:12:09 2016 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Sep 08 16:13:28 2016 -0700"
      },
      "message": "Provide an inline __cmsg_nxthdr.\n\nThis was defined as an inline in the legacy NDK headers. Keep that\nhere until we can get it into libandroid_support.\n\nTest: make checkbuild\nBug: http://b/30465923\nChange-Id: I62393b58e4fba3bc7337cc5ecf4ae1590b0e9917\n"
    },
    {
      "commit": "2b9605fec499b24bcbe9ff408b934455b4d85e57",
      "tree": "5c28dce3dcf1a0d0a2ec699821c8448e8192505a",
      "parents": [
        "228e747b6c40da2945310cda214b829f7de8cb60"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Aug 16 13:37:24 2016 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Aug 16 13:37:24 2016 -0700"
      },
      "message": "Fix various \u003csys/socket.h\u003e prototypes.\n\nhttp://pubs.opengroup.org/onlinepubs/9699919799/basedefs/sys_socket.h.html\n\nInterestingly, recvmmsg/sendmmsg do actually return int, unlike their\nrecv/recvmsg/sendv/sendvmsg siblings.\n\nThe generated assembler stubs don\u0027t actually change.\n\nChange-Id: If71cd02431903774de9bbce77fbedf6b03f90c0f\n"
    },
    {
      "commit": "8197aca7f2110fa764c1aecd005d878d8ddd3a3c",
      "tree": "574da9846618e33411c5ba2a03ca31c0add87155",
      "parents": [
        "166f875eabdd2b7c508fc4ed1789a0d37fb1bdce"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Aug 12 09:20:07 2016 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Aug 12 09:20:07 2016 -0700"
      },
      "message": "Fix recvfrom prototype.\n\nhttp://pubs.opengroup.org/onlinepubs/9699919799/functions/recvfrom.html\n\nChange-Id: Iba203c74045c88e53e28c2e0c8bc1f9ac63ce23e\n"
    },
    {
      "commit": "dfa6bbb54bd9ab2a71df4c066427ea804608e20b",
      "tree": "41b5baebfa354e4530ca190031789362c31de785",
      "parents": [
        "ed9e6a41c92c9552be84ecc126e29b4604eee246"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Aug 02 15:08:32 2016 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Aug 05 16:33:32 2016 -0700"
      },
      "message": "Guard fortify inlines with __ANDROID_API__.\n\nTest: make checkbuild with libc ndk_library patches applied\nChange-Id: Ic5e248994c4f2702b0f4d6dfeda787187ea86017\n"
    },
    {
      "commit": "3b2096a9d6edd74622b94cacc76b77100f919b84",
      "tree": "1e5db3202e110172e7db1ced6d87cf8ceca7ed0b",
      "parents": [
        "7101c48f20f2f19dd1d314d23251fb52995a0870"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 22 18:57:12 2016 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 22 18:57:12 2016 -0700"
      },
      "message": "Remove unnecessary \u0027extern\u0027s.\n\nChange-Id: Iba2b3fb6ff88e504f1657b915120ae43d58a1e03\n"
    },
    {
      "commit": "508d292f8deb2933914b0ceef56908cdd4ee589f",
      "tree": "e740e08d5709b42c3198d9345771dfc2f9903fd5",
      "parents": [
        "91f33cd5ae3f09b7d2e614f5d0809037c1708db1"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jul 21 16:38:43 2016 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jul 21 16:38:43 2016 -0700"
      },
      "message": "Only define sa_family_t once.\n\nChange-Id: Icf700910c836d22c8a27ad026ec8af11697edd5a\n"
    },
    {
      "commit": "14adff1cfa06a3d4d3281a9bf7848b556d84c20d",
      "tree": "ce1fb2867f69e49f57d0bbe8a9099b09beda0c19",
      "parents": [
        "5a3d5cac642f9e58b2c510eab23789fb4fc3a753"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Fri Apr 29 12:00:55 2016 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Fri Apr 29 16:39:50 2016 -0700"
      },
      "message": "Add versioning information to symbols.\n\nBug: http://b/28178111\nChange-Id: I46bf95accd819f4521afb1173d8badcc5e9df31c\n"
    },
    {
      "commit": "c7ca8f3a6332638021b9ae99e1ce15739350ee98",
      "tree": "82175ecf36020d225af3736ff91828a89b624773",
      "parents": [
        "3f3f6c526b2d8f47df7462df0c0071c391cc7b4d"
      ],
      "author": {
        "name": "Greg Hackmann",
        "email": "ghackmann@google.com",
        "time": "Thu Jan 28 11:07:26 2016 -0800"
      },
      "committer": {
        "name": "Greg Hackmann",
        "email": "ghackmann@google.com",
        "time": "Tue Feb 02 00:28:35 2016 +0000"
      },
      "message": "socket.h: update AF_* constants\n\nChange-Id: I8ca219fa429ca8d8f872ed1db98275cd1a06f00b\nSigned-off-by: Greg Hackmann \u003cghackmann@google.com\u003e\n"
    },
    {
      "commit": "d75abb9614b04c3da3104099752726f9d1c6d8c7",
      "tree": "e3e64f1300f96712b7cedf4a61e1299a48486111",
      "parents": [
        "cd0ed2f174d9015da5ae7206bc4c5190cd0bb51e"
      ],
      "author": {
        "name": "Greg Hackmann",
        "email": "ghackmann@google.com",
        "time": "Tue Aug 25 17:45:46 2015 -0700"
      },
      "committer": {
        "name": "Greg Hackmann",
        "email": "ghackmann@google.com",
        "time": "Fri Sep 18 13:37:53 2015 -0700"
      },
      "message": "Fix SOCK_* flag definitions\n\nMIPS and the rest of the world only disagree on the first two SOCK_*\nconstants, so restructure the #ifdef accordingly.\n\nAs a deliberate side effect, this fixes SOCK_DCCP being missing on\nnon-MIPS platforms.\n\nChange-Id: I2267008f1121a7eebe1ed9097afab6e612bce7f0\nSigned-off-by: Greg Hackmann \u003cghackmann@google.com\u003e\n"
    },
    {
      "commit": "268af26359c8f1c87585e26d2763e3a3a63f8714",
      "tree": "7b1f9d3473be16d6ad3208195e28fc3ce1dee29c",
      "parents": [
        "1c7b84ca0095e0dc4da8434e9e0c59cd2326f763"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Sep 11 09:47:27 2015 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Sep 11 09:47:27 2015 -0700"
      },
      "message": "CMSG_DATA should return an unsigned char*.\n\nhttp://pubs.opengroup.org/onlinepubs/9699919799/basedefs/sys_socket.h.html\n\u003e CMSG_DATA(cmsg)\n\u003e    If the argument is a pointer to a cmsghdr structure, this macro\n\u003e    shall return an unsigned character pointer to the data array\n\u003e    associated with the cmsghdr structure.\n\nChange-Id: I3f89ba19cbca4e6727abc65a2bbcd59267892ba8\n"
    },
    {
      "commit": "658727e111ed6dee7be5239494f0764f7b1b02f8",
      "tree": "253051956500d39d0a9e8d282aacebe78dc21def",
      "parents": [
        "eeb9aa02b7f307a1d9b80731dd69ef9dd2f47e47"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Oct 07 11:10:36 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Oct 07 16:46:47 2014 -0700"
      },
      "message": "Inline helpers need to be exported unmangled.\n\n__open_2() is used by the fortify implementation of open(2) in\nfcntl.h, and as such needs an unmangled C name. For some reason\n(inlining?), this doesn\u0027t cause problems at the default optimization\nlevel, but does for -O0.\n\nThe rest of these didn\u0027t cause build failures, but they look suspect\nand probably will, we just haven\u0027t caught them yet.\n\nBug: 17784968\nChange-Id: I7391a7a8999ee204eaf6abd14a3d5373ea419d5b\n"
    },
    {
      "commit": "2cfb4e8e2e217ef0e4140dcbf9b3da809781158c",
      "tree": "19a83c3a73ba3c613de106fd1b6ae8e83f75d3d4",
      "parents": [
        "2b6cdb5e459661727c99e81660c7c3df5cdbe024"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Aug 18 14:45:42 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Aug 18 14:45:42 2014 -0700"
      },
      "message": "Improve \u003csys/cdefs.h\u003e.\n\nFix and use __RENAME (and lose ___RENAME --- two underscores should be\nenough for anybody). This was the point of this change, because I want\nto use __RENAME to support the two basename variants and the two\nstrerror_r variants.\n\nLose a bunch of macros that weren\u0027t being used.\n\nLose three dead files from the DNS code.\n\nChange-Id: I3ef645c566b16a52217bc2e68c7d54b37c7c9522\n"
    },
    {
      "commit": "8a3d1ca183e19d849728318fe8b0d36856fa000f",
      "tree": "cf1501291aa53c434adbdcfa5dab9e52421d0844",
      "parents": [
        "6bf42ddc7962dec56840eb370bfe7b0469a4efb1"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jul 17 17:10:02 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jul 17 17:10:02 2014 -0700"
      },
      "message": "Remove SIOCKILLADDR from \u003csys/socket.h\u003e.\n\nChange-Id: I6b64a9abe01c786a9ec26aee1517cb981a4860fb\n"
    },
    {
      "commit": "2ba2888cac2f04daff7bbaf032d0df7a095b00c3",
      "tree": "d34ec98c0c25c770e8f81cafa8732ec661851e08",
      "parents": [
        "57a5b3380a8834ecb4a32d01433a3127454443d7"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 11 21:10:15 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 11 21:11:21 2014 -0700"
      },
      "message": "Define SIOCKILLADDR which isn\u0027t in the common kernel uapi headers.\n\nChange-Id: I8760950d13a9625aa543e76bc9d6cd86ac782c2e\n"
    },
    {
      "commit": "096b4eb752aa7a5392875cb2f2faf0d67c676ac1",
      "tree": "f4e6339d039abf2f1bd0eeee32f0116ad3cb1d7c",
      "parents": [
        "54e9dc02138838fdb7a89e62467c369e3cf1f41f"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Jun 19 18:16:17 2014 +0100"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Jun 24 11:53:06 2014 +0100"
      },
      "message": "Prefix cmsg_nxthdr with \"__\".\n\nThis brings us on par with glibc.\n\nTo avoid breaking clients, temporary keep cmsg_nxthdr until the next NDK\nrefresh.\n\nBug: 15822452\nChange-Id: I24c24e68c31f4f2b8f3d2df7acd575cb75174173\n"
    },
    {
      "commit": "ff64831b0965c16c95c9f81a148f30a6ef3a6c64",
      "tree": "8dbd07fa5ed8323b98063427eaa8b72a4ac49102",
      "parents": [
        "38687593141ca4a4072210417877590e44a10b0c"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Apr 07 20:39:20 2014 +0300"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Apr 09 00:55:24 2014 +0300"
      },
      "message": "Use glibc structure for __cmsg_nxthdr.\n\nBug: 13418328\nChange-Id: I7e656b373e53e80d708325321e48dcedacf5086d\n"
    },
    {
      "commit": "9cea3775056d0a8d04d49c3983440b89d82a462b",
      "tree": "7efc58da446fa759651030322662f6f853cf8020",
      "parents": [
        "557942ac58f08675473460b1802b43473c467172"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Mar 31 11:23:39 2014 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Mar 31 11:23:39 2014 -0700"
      },
      "message": "Small accept4 fixes.\n\nPut the accept4 test in the sorted order, and put the accept4 define in\nsorted order.\n\nAlso add the missing SYS_RECVMMSG and SYS_SENDMMSG defines.\n\nChange-Id: Iba55354975e0d5027dbee53f6de752c2df719493\n"
    },
    {
      "commit": "bc475bc8d1d202baa48f6c9829fe1cced9122332",
      "tree": "20940f846ec40d52c5517d28b6e96abab9180301",
      "parents": [
        "ecbf00bda2fcee65e4e6385772022529ffeeed91",
        "8f2a30a92ab6981cccbc1a9e17b738f7542ae33f"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Mar 26 19:40:59 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 26 19:40:59 2014 +0000"
      },
      "message": "Merge \"Add accept4() syscall\""
    },
    {
      "commit": "8f2a30a92ab6981cccbc1a9e17b738f7542ae33f",
      "tree": "a0ec364f2362051c4d06569ee5706c3165808b78",
      "parents": [
        "c8fc4ddc183060aa979185d5a6845f26beb1a733"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Wed Mar 26 15:50:01 2014 +0200"
      },
      "committer": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Wed Mar 26 15:50:01 2014 +0200"
      },
      "message": "Add accept4() syscall\n\nAdd accept4() using SYSCALLS.TXT and gensyscall\n\nChange-Id: I6f19f29144186d15d46423e10f2cc4b4223719c6\n"
    },
    {
      "commit": "f1de90b3a26d6ec46c0f1c741ef93509fe69f942",
      "tree": "b80cd059473878fdbb83ec9440ae827ebc98f237",
      "parents": [
        "849e162d3bedc5ca61bdf15486268b253b9f4e93"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Mar 19 17:40:23 2014 +0000"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Mar 25 17:07:37 2014 +0000"
      },
      "message": "Clean up CMSG_*HDR in \u003csys/socket.h\u003e\n\nRemoved __CMSG_NXTHDR, __CMSG_FIRSTHDR and cmsg_nxthdr.\n\nBug: 13418328\nChange-Id: I6b1ed58b41b3f37d41e070c4f222b5bfa512bc48\n"
    },
    {
      "commit": "247dc91889ffc8b71fc3371edba9d834afab96ab",
      "tree": "5e7fc130a6cfee3b122b0689eaeab4a2094272c8",
      "parents": [
        "a3056591960f9d9f646135ee20804cc1a9e41106"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Mar 10 17:17:01 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Mar 10 17:17:01 2014 -0700"
      },
      "message": "Take ownership of various simple syscall wrappers.\n\nNone of these trivial functions is something we\u0027re going to get from BSD.\n\nChange-Id: Iee1d1281b73db67da5ec303da7a49748121464bf\n"
    },
    {
      "commit": "a8b1eb3fcf13fab029a16fa3b6636218a64c4583",
      "tree": "d36173147fe379d5b636503743b6fe37455322a0",
      "parents": [
        "2ec592c338f5c5021f127e92212d156cd909c617"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 28 17:59:29 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 28 17:59:29 2014 -0800"
      },
      "message": "Fix build.\n\nChange-Id: I71cde79263d5f5a8382865b8151f65c5c05ea17b\n"
    },
    {
      "commit": "6ff0c75c838e73d2aeccc0102ab58a7b865172ca",
      "tree": "664bed83a31a736af22e3ac37ff36b14e809724c",
      "parents": [
        "000ffd8ab0b4112173ce319869f4111f08fbe975"
      ],
      "author": {
        "name": "Guillaume Ranquet",
        "email": "guillaumex.ranquet@intel.com",
        "time": "Mon Feb 10 13:11:29 2014 +0100"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 27 14:29:01 2014 -0800"
      },
      "message": "Add recvmmsg and sendmmsg syscalls.\n\nAlso add the corresponding constant, struct, and function declarations\nto \u003csys/socket.h\u003e, and perfunctory tests so we know that the symbols\nactually exist.\n\nSigned-off-by: Guillaume Ranquet \u003cguillaumex.ranquet@intel.com\u003e\nChange-Id: Ib0d854239d3716be90ad70973c579aff4895a4f7\n"
    },
    {
      "commit": "9f87a0b285128542a221f2b69d3b959a4e33c054",
      "tree": "6854c64ecb95a5d048e7880b6493f7448a402ccc",
      "parents": [
        "e163a3986aa7d1c67fe3274eb9204812be0a6245"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 07 14:55:58 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 07 14:55:58 2014 -0800"
      },
      "message": "Remove \u003csys/_types.h\u003e.\n\nBug: 12213562\nChange-Id: I0d10664f9da60739bdbad0408be0dd61eea3c1fe\n"
    },
    {
      "commit": "43d2137af0e2f65b7febf4414e10b979aa0007bf",
      "tree": "4527e7ee3fc5b092b1309bdb6d76e2ecde6b1a3f",
      "parents": [
        "70cf2077619cd2d177756e2bb1cf3fbf870ef355"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Mon Oct 14 16:48:26 2013 +0300"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Oct 17 13:32:32 2013 -0700"
      },
      "message": "Add SOCK_CLOEXEC and SOCK_NONBLOCK socket flags.\n\nSOCK_CLOEXEC is used to atomically set close-on-exec flag for the new\ndescriptor(s), and SOCK_NONBLOCK is used to mark descriptor(s) as\nnon-blocking.\n\nChange-Id: I8ba6a70543d23759e3ddcc7ff9c21b567184d681\n"
    },
    {
      "commit": "60f4f9a5b99a0a66817f50edfc2194a49f8b5146",
      "tree": "13900546cac13512fd4dfd37d3f9e98606c750d2",
      "parents": [
        "759111cadf84f337f98177259d9e3f9d39c9eea9"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Sep 24 16:32:07 2013 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Sep 24 16:45:01 2013 -0700"
      },
      "message": "libc: fortify recvfrom()\n\nFortify calls to recv() and recvfrom().\n\nWe use __bos0 to match glibc\u0027s behavior, and because I haven\u0027t\ntested using __bos.\n\nChange-Id: Iad6ae96551a89af17a9c347b80cdefcf2020c505\n"
    },
    {
      "commit": "d73c0b300e2dbaa4cc59f87fc1435661e5e1c736",
      "tree": "5b8137a8949482e82e150494cfe11d73538e1dac",
      "parents": [
        "f0036944a13a76dddda70347032128d4a27081d6"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jan 03 16:25:47 2013 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jan 03 16:25:47 2013 -0800"
      },
      "message": "Add AF_CAN and PF_CAN (and other missing families).\n\nChange-Id: I2c183a6f5f7a7e81e87dad85d8c9aff9c43ed33a\n"
    },
    {
      "commit": "86ec05acc9df3098c4e99e5b3ad85dcef66712c7",
      "tree": "722c7b99116ebf1af2032b2daf9e3c428386a65d",
      "parents": [
        "666d06fee9e1d2e1401a4b42d94d01e8f38ad1a5"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Sep 11 19:03:02 2012 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Sep 12 12:30:22 2012 -0700"
      },
      "message": "Update the kernel headers to match external/kernel-headers.\n\nNote that the Linux kernel handed over responsibility for most of the\nsocket constants to glibc some time ago. Someone had updated our\nexternal/kernel-headers file but not regenerated the bionic headers,\nso this change copies the missing stuff from the old bionic \u003clinux/socket.h\u003e\ninto \u003csys/socket.h\u003e. This is what glibc does.\n\nI\u0027ve hacked a few of the other files to #include \u003csys/socket.h\u003e for\nbackward compatibility, but even so this requires numerous other\nchanges to switch people over from direct inclusion of \u003clinux/...\u003e headers.\n\nChange-Id: I0e4af64e631d3cef911a31d90f2f806e058278a0\n"
    },
    {
      "commit": "6437eac15a5b595ab26ef51834509c44695eb7e4",
      "tree": "b83b9dcd1a4e4f2c78054878fe7b9136761cb95b",
      "parents": [
        "52f3ee962b384bf247638adb653f0024ce92a895"
      ],
      "author": {
        "name": "Raghu Gandham",
        "email": "raghu@mips.com",
        "time": "Thu Aug 02 16:50:10 2012 -0700"
      },
      "committer": {
        "name": "Raghu Gandham",
        "email": "raghu@mips.com",
        "time": "Thu Aug 02 18:03:54 2012 -0700"
      },
      "message": "MIPS support to sys/ headers\n\nChange-Id: I32207a1d918e4842da341f6b242ae39c69a83b03\n"
    },
    {
      "commit": "1dc9e472e19acfe6dc7f41e429236e7eef7ceda1",
      "tree": "3be0c520fae17689bbf5584e1136fb820caef26f",
      "parents": [
        "1767f908af327fa388b1c66883760ad851267013"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 19:28:35 2009 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 19:28:35 2009 -0800"
      },
      "message": "auto import from //depot/cupcake/@135843\n"
    },
    {
      "commit": "1767f908af327fa388b1c66883760ad851267013",
      "tree": "4b825dc642cb6eb9a060e54bf8d69288fbee4904",
      "parents": [
        "a799b53f10e5a6fd51fef4436cfb7ec99836a516"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 18:28:13 2009 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 18:28:13 2009 -0800"
      },
      "message": "auto import from //depot/cupcake/@135843\n"
    },
    {
      "commit": "4e468ed2eb86a2406e14f1eca82072ee501d05fd",
      "tree": "4e05b3c66eef86531e464521a3bf96a1864d4bf5",
      "parents": [
        "a27d2baa0c1a2ec70f47ea9199b1dd6762c8a349"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Dec 17 18:03:48 2008 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Dec 17 18:03:48 2008 -0800"
      },
      "message": "Code drop from //branches/cupcake/...@124589\n"
    },
    {
      "commit": "a27d2baa0c1a2ec70f47ea9199b1dd6762c8a349",
      "tree": "defd1cc07d16ad2f3b21154114e092d11c94c5bb",
      "parents": [],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Oct 21 07:00:00 2008 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Oct 21 07:00:00 2008 -0700"
      },
      "message": "Initial Contribution\n"
    }
  ]
}
