)]}'
{
  "commit": "facdeb5b20def33a8e2a823ef4a29441468be8a8",
  "tree": "a36910f8b80441531bebb7f0a4b1825af469962c",
  "parents": [
    "bb89e9fb76c7b05c85485f039da9e8692b8a006b"
  ],
  "author": {
    "name": "Fabian Meumertzheim",
    "email": "fabian@meumertzhe.im",
    "time": "Thu Dec 02 18:49:00 2021 +0100"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Thu Dec 02 12:49:00 2021 -0500"
  },
  "message": "Support UBSan for local fuzzing (#187)\n\nWith Jazzer supporting full UBSan as of\r\nhttps://github.com/CodeIntelligenceTesting/jazzer/pull/169\r\nas well as a much simpler way to link the UBSan C++ runtime via the flag\r\nused in #186, UBSan can now be supported in local mode without\r\nintroducing additional complexity.\r\n\r\nThe list of enabled UBSan checks is taken from OSS-Fuzz.\r\n\r\nThe commit also adds tests to verify that both C++ and Java fuzz tests\r\nsupport the UBSan C++ checks without linker errors.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "0083a810629ba056562b7fd37c07c869230e3c67",
      "old_mode": 33188,
      "old_path": ".bazelrc",
      "new_id": "10430bd4d755953845f2bb66daf8516be3fbf887",
      "new_mode": 33188,
      "new_path": ".bazelrc"
    },
    {
      "type": "modify",
      "old_id": "3e5b54059f70f316087c282295e5b403ba2dfbc5",
      "old_mode": 33188,
      "old_path": "README.md",
      "new_id": "1c9e343ebdd380f30c0048c918ba1a470629700f",
      "new_mode": 33188,
      "new_path": "README.md"
    },
    {
      "type": "modify",
      "old_id": "f3528278cd8ebe742826653de7dd4f158ceb0de9",
      "old_mode": 33188,
      "old_path": "docs/guide.md",
      "new_id": "42868d80a9d2252f448084b39f0751bc7df731dc",
      "new_mode": 33188,
      "new_path": "docs/guide.md"
    },
    {
      "type": "modify",
      "old_id": "b8afd15e48595e92ed0ee399ed216b45158fdefa",
      "old_mode": 33188,
      "old_path": "examples/BUILD",
      "new_id": "65219ca351f8a098b9b85d4148fa4a2ce93ac860",
      "new_mode": 33188,
      "new_path": "examples/BUILD"
    },
    {
      "type": "modify",
      "old_id": "4dc1352bfd6270da33dc45c96800e7c6e642792c",
      "old_mode": 33188,
      "old_path": "examples/java/BUILD",
      "new_id": "5c23abef5f5eb8fed92a3432e6712bb67616c441",
      "new_mode": 33188,
      "new_path": "examples/java/BUILD"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2735f7b3813eb54c2e1ef7d1351a92fd15b83a7d",
      "new_mode": 33188,
      "new_path": "examples/java/com/example/NativeUbsanFuncPtrFuzzTest.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7950ee009d464278401345aeb3f39c918a6cfc46",
      "new_mode": 33188,
      "new_path": "examples/java/com/example/NativeUbsanFuncPtrFuzzTest.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "1f5346401bd3df85993b1a1186b0abb2970ed0ba",
      "new_mode": 33188,
      "new_path": "examples/java/com/example/NativeUbsanFuncPtrFuzzTest.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "9adfc88e97cbf98a330456a68f8363f6b48b56dc",
      "new_mode": 33188,
      "new_path": "examples/ubsan_function_ptr_fuzz_test.cc"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "aa6ca66b21b159092cc9182254cc8ddccbd7c843",
      "new_mode": 33188,
      "new_path": "examples/ubsan_int_overflow_fuzz_test.cc"
    },
    {
      "type": "modify",
      "old_id": "224e47a07ff0c9f6af0e984ca69d01f3f4c6dc26",
      "old_mode": 33188,
      "old_path": "fuzzing/BUILD",
      "new_id": "d7087ecdfbe71b0228e25a5d3b3a9c0702897fca",
      "new_mode": 33188,
      "new_path": "fuzzing/BUILD"
    },
    {
      "type": "modify",
      "old_id": "f6be90508c32f2cd8427ccd11e2267d997c289e3",
      "old_mode": 33188,
      "old_path": "fuzzing/instrum_opts.bzl",
      "new_id": "b4971554816946d27704d06ee03a4055b195a279",
      "new_mode": 33188,
      "new_path": "fuzzing/instrum_opts.bzl"
    },
    {
      "type": "modify",
      "old_id": "53f4886636186470c7bf456f61ec57bac710a6e4",
      "old_mode": 33188,
      "old_path": "fuzzing/private/BUILD",
      "new_id": "3eb5186205e49268e7052530e3eb8f3abba22c73",
      "new_mode": 33188,
      "new_path": "fuzzing/private/BUILD"
    },
    {
      "type": "modify",
      "old_id": "a3376ea753950ce638ee62417981b3343e37db98",
      "old_mode": 33188,
      "old_path": "fuzzing/private/fuzz_test.bzl",
      "new_id": "96f9c74b5301d25adca4b38cd212b71d35e87412",
      "new_mode": 33188,
      "new_path": "fuzzing/private/fuzz_test.bzl"
    },
    {
      "type": "modify",
      "old_id": "1b04184446b9a16ecb9d691cfbce2da3767733c6",
      "old_mode": 33188,
      "old_path": "fuzzing/private/instrum_opts.bzl",
      "new_id": "a2f21a91d1e4bb1779c5a4cd365b0e1221850638",
      "new_mode": 33188,
      "new_path": "fuzzing/private/instrum_opts.bzl"
    }
  ]
}
