test/ct_test.c:523: error: INTEGER_OVERFLOW_L1
  ([-oo, 0] - 1):unsigned64 by call to `SCT_new_from_base64`.
Showing all 8 steps of the trace


test/ct_test.c:515:5: Array declaration
513.       const char log_id[] = "3xwuwRUAlFJHqWFoMl3cXHlZ6PfG04j8AC4LvT9012Q=";
514.       const uint64_t timestamp = 1;
515.       const char extensions[] = "";
           ^
516.       const char signature[] = "BAMARzBAMiBIL2dRrzXbplQ2vh/WZA89v5pBQpSVkkUwKI+j5"
517.               "eI+BgIhAOTtwNs6xXKx4vXoq2poBlOYfc9BAn3+/6EFUZ2J7b8I";

test/ct_test.c:523:11: Call
521.   
522.       fixture.sct_list = sk_SCT_new_null();
523.       sct = SCT_new_from_base64(SCT_VERSION_V1, log_id,
                 ^
524.                                 CT_LOG_ENTRY_TYPE_X509, timestamp,
525.                                 extensions, signature);

crypto/ct/ct_b64.c:60:1: Parameter `extensions_base64->strlen`
  58.   }
  59.   
  60. > SCT *SCT_new_from_base64(unsigned char version, const char *logid_base64,
  61.                            ct_log_entry_type_t entry_type, uint64_t timestamp,
  62.                            const char *extensions_base64,

crypto/ct/ct_b64.c:93:14: Call
  91.       dec = NULL;
  92.   
  93.       declen = ct_base64_decode(extensions_base64, &dec);
                     ^
  94.       if (declen < 0) {
  95.           CTerr(CT_F_SCT_NEW_FROM_BASE64, X509_R_BASE64_DECODE_ERROR);

crypto/ct/ct_b64.c:24:1: <LHS trace>
22.    * the caller. Do not provide a pre-allocated string in |out|.
23.    */
24. > static int ct_base64_decode(const char *in, unsigned char **out)
25.   {
26.       size_t inlen = strlen(in);

crypto/ct/ct_b64.c:24:1: Parameter `in->strlen`
    22.    * the caller. Do not provide a pre-allocated string in |out|.
    23.    */
    24. > static int ct_base64_decode(const char *in, unsigned char **out)
    25.   {
    26.       size_t inlen = strlen(in);

crypto/ct/ct_b64.c:26:5: Assignment
    24.   static int ct_base64_decode(const char *in, unsigned char **out)
    25.   {
    26.       size_t inlen = strlen(in);
              ^
    27.       int outlen;
    28.       unsigned char *outbuf = NULL;

crypto/ct/ct_b64.c:49:12: Binary operation: ([-oo, 0] - 1):unsigned64 by call to `SCT_new_from_base64` 
    47.   
    48.       /* Subtract padding bytes from |outlen| */
    49.       while (in[--inlen] == '=') {
                     ^
    50.           --outlen;
    51.       }
