| 167 | #define RSA_DECLARE_DECODED_OPTIONAL_BN_MEMBER(member) DECL_DECODED_BN_MEMBER_OPTIONAL(member, "RSA") |
| 168 | |
| 169 | StringRef bigNumToBase64Url(Arena& arena, const BIGNUM* bn) { |
| 170 | auto len = BN_num_bytes(bn); |
| 171 | auto buf = new (arena) uint8_t[len]; |
| 172 | ::BN_bn2bin(bn, buf); |
| 173 | return base64url::encode(arena, StringRef(buf, len)); |
| 174 | } |
| 175 | |
| 176 | Optional<PublicOrPrivateKey> parseEcP256Key(StringRef b64x, StringRef b64y, Optional<StringRef> b64d, int keyIndex) { |
| 177 | auto arena = Arena(); |
no test coverage detected