)]}'
{
  "commit": "5d74463301bbfebc24f99fe232b922260d36ea90",
  "tree": "8a8f7d82d86ecc8bf6472398a1cbec84eac83be5",
  "parents": [
    "7361ee42cfff6039585c49a82e4b585cb633d5e3"
  ],
  "author": {
    "name": "Brian Smith",
    "email": "brian@briansmith.org",
    "time": "Mon Jun 15 14:42:37 2020 -0500"
  },
  "committer": {
    "name": "CQ bot account: commit-bot@chromium.org",
    "email": "commit-bot@chromium.org",
    "time": "Tue Jun 30 15:04:06 2020 +0000"
  },
  "message": "Use |crypto_word_t| and |size_t| more consistently in ECC scalar recoding.\n\nUse |crypto_word_t| as the type for secret values in scalar recoding.\nUse |size_t| as the type of array indexes in scalar recoding. Use\nexplicit casts where a larger type is (losslessly) truncated to a\nsmaller type. With this change, |uint64_t| is no longer used in the\np256.c when building in 32-bit mode, |unsigned| is not used in any of\nthe affected modules, and |uint8_t| and |char| are no longer used for\nsecret values in the ECC recoding.\n\nWhen given the choice of doing non-array-indexing arithmetic (e.g. shifts)\non |size_t| values or |crypto_word_t| values, prefer doing it on\n|crypto_word_t| values. More generally, try to use |size_t| only for\nsizes and array indexes.\n\nThis is part of a bigger project to minimize the use of types other than\n|crypto_word_t| for secret values. This is also part of a larger project\nmake the ECC code more consistent.\n\nAvoid changing the loop indexing in the P-256 scalar multiplication from\n|int| to |size_t|. The P-224 code does use |size_t| but it is less clear\nthan the P-256 code where |i - 1| results in a negative/underflowed\nvalue when |i| is zero.\n\nChange-Id: I78cb404455c2340a4f8c9688d36c0d425bfcc50b\nReviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/41685\nReviewed-by: David Benjamin \u003cdavidben@google.com\u003e\nCommit-Queue: David Benjamin \u003cdavidben@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "836d3ca2cbd40ec388a27dfb1d49c0dc6e5b12a3",
      "old_mode": 33188,
      "old_path": "crypto/fipsmodule/ec/internal.h",
      "new_id": "18aabb0ca42697f0ec986480b23f8f9ab6a64fb7",
      "new_mode": 33188,
      "new_path": "crypto/fipsmodule/ec/internal.h"
    },
    {
      "type": "modify",
      "old_id": "c106de0db215e3254aae6e214baa64c44ef777be",
      "old_mode": 33188,
      "old_path": "crypto/fipsmodule/ec/p224-64.c",
      "new_id": "da4308c0be07ed89266a5c047fe0303c7d312871",
      "new_mode": 33188,
      "new_path": "crypto/fipsmodule/ec/p224-64.c"
    },
    {
      "type": "modify",
      "old_id": "973130f2e27f55cc339d9f5f7d3a62de717ab7f8",
      "old_mode": 33188,
      "old_path": "crypto/fipsmodule/ec/p256-x86_64.c",
      "new_id": "29ae1936f8d550b520523f165104e42e4556fc51",
      "new_mode": 33188,
      "new_path": "crypto/fipsmodule/ec/p256-x86_64.c"
    },
    {
      "type": "modify",
      "old_id": "9355ac1910bd6fd9910a4600ec470a60735b2ffd",
      "old_mode": 33188,
      "old_path": "crypto/fipsmodule/ec/p256.c",
      "new_id": "9f5694c233194ea819b93d9d3cb213b8034f5cd1",
      "new_mode": 33188,
      "new_path": "crypto/fipsmodule/ec/p256.c"
    },
    {
      "type": "modify",
      "old_id": "127e2b3f6ff4d57bcf1cbbdf8e227180cfa35b96",
      "old_mode": 33188,
      "old_path": "crypto/fipsmodule/ec/simple_mul.c",
      "new_id": "0e6384ecd9bb327ea367cf02ff7355ce74347936",
      "new_mode": 33188,
      "new_path": "crypto/fipsmodule/ec/simple_mul.c"
    },
    {
      "type": "modify",
      "old_id": "4f39f18bf45c5e4fdb895020ec1e2170958abe9c",
      "old_mode": 33188,
      "old_path": "crypto/fipsmodule/ec/util.c",
      "new_id": "c4323f2f9d88ebff32402e7a6853f37783d8d1db",
      "new_mode": 33188,
      "new_path": "crypto/fipsmodule/ec/util.c"
    }
  ]
}
