)]}'
{
  "commit": "1ce2ec71c3e5563fcebc08bbe67ad5f11add02d8",
  "tree": "a2325abceb076322846e02baaa19f2c43b755e19",
  "parents": [
    "7f7599a7264ddde9c720db49135ec919593789e2"
  ],
  "author": {
    "name": "David Benjamin",
    "email": "davidben@google.com",
    "time": "Sun Nov 27 18:34:32 2022 -0500"
  },
  "committer": {
    "name": "Boringssl LUCI CQ",
    "email": "boringssl-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Tue Nov 29 20:02:20 2022 +0000"
  },
  "message": "Give cipher tests a common entrypoint.\n\nThe main FileTest callback didn\u0027t support invalid ciphertexts, while the\nWycheproof one did but reimplemented a lot of logic to discover\nvariations.\n\nRework this a bit so we have a single TestCipher function that\u0027s\nagnostic to the FileTest setup. The Operation enum gains a\nkInvalidDecrypt mode to specify that the ciphertext is invalid. As part\nof this, we tighten up the test\n\nThis is to make the later changes easier:\n\n1. We don\u0027t have any negative tests for EVP_CIPHER\u0027s tag check at all!\n   We only test it for EVP_AEAD right now. Now TestCipher can express\n   this.\n\n2. The weird EVP_Cipher API has no tests. It has a weird calling\n   convention that was easier to test if calling code knew whether to\n   expect success or failure. Previously, kInvalidDecrypt was\n   implemented by checking if DoCipher failed, which makes it harder to\n   embed success/failure-specific assertions.\n\nAlong the way, I\u0027ve made each function responsible for running through\nthe input once, with separate TestCipherAPI and TestLowLevelAPI helpers.\nOtherwise we have to reset the spans and keep track of the state of\nintermediate values.\n\nBug: 494\nChange-Id: Ieab87c0c76586aefeb596cc90edd4910ff1b962f\nReviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/55387\nCommit-Queue: David Benjamin \u003cdavidben@google.com\u003e\nReviewed-by: Adam Langley \u003cagl@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "1cbda56356fb969285c7a5256507c040598bf93c",
      "old_mode": 33188,
      "old_path": "crypto/cipher_extra/cipher_test.cc",
      "new_id": "dc8516ac185e8a923b4c2a0b0fd55920825735d0",
      "new_mode": 33188,
      "new_path": "crypto/cipher_extra/cipher_test.cc"
    }
  ]
}
