crypto/srp/srp_vfy.c:314: error: INTEGER_OVERFLOW_L2
  ([0, 2147483646] + 4):signed32 by call to `SRP_user_pwd_set_sv`.
Showing all 11 steps of the trace


crypto/srp/srp_vfy.c:268:18: Call
266.       error_code = SRP_ERR_VBASE_INCOMPLETE_FILE;
267.   
268.       if ((tmpdb = TXT_DB_read(in, DB_NUMBER)) == NULL)
                        ^
269.           goto err;
270.   

crypto/txt_db/txt_db.c:55:5: Assignment
  53.       add = (num + 1) * sizeof(char *);
  54.       buf->data[size - 1] = '\0';
  55.       offset = 0;
            ^
  56.       for (;;) {
  57.           if (offset != 0) {

crypto/srp/srp_vfy.c:314:22: Call
312.   
313.                   error_code = SRP_ERR_VBASE_BN_LIB;
314.                   if (!SRP_user_pwd_set_sv
                            ^
315.                       (user_pwd, pp[DB_srpsalt], pp[DB_srpverifier]))
316.                       goto err;

crypto/srp/srp_vfy.c:84:1: Parameter `v->strlen`
  82.   }
  83.   
  84. > static int SRP_user_pwd_set_sv(SRP_user_pwd *vinfo, const char *s,
  85.                                  const char *v)
  86.   {

crypto/srp/srp_vfy.c:93:11: Call
  91.       vinfo->s = NULL;
  92.   
  93.       len = t_fromb64(tmp, sizeof(tmp), v);
                  ^
  94.       if (len < 0)
  95.           return 0;

crypto/srp/srp_vfy.c:25:1: Parameter `src->strlen`
    23.    * Convert a base64 string into raw byte array representation.
    24.    */
    25. > static int t_fromb64(unsigned char *a, size_t alen, const char *src)
    26.   {
    27.       size_t size = strlen(src);

crypto/srp/srp_vfy.c:27:5: Assignment
    25.   static int t_fromb64(unsigned char *a, size_t alen, const char *src)
    26.   {
    27.       size_t size = strlen(src);
              ^
    28.   
    29.       /* Four bytes in src become three bytes output. */

crypto/srp/srp_vfy.c:33:12: Call
    31.           return -1;
    32.   
    33.       return EVP_DecodeBlock(a, (unsigned char *)src, (int)size);
                     ^
    34.   }
    35.   

crypto/evp/encode.c:351:1: <LHS trace>
349.   }
350.   
351. > int EVP_DecodeBlock(unsigned char *t, const unsigned char *f, int n)
352.   {
353.       int i, ret = 0, a, b, c, d;

crypto/evp/encode.c:351:1: Parameter `n`
      349.   }
      350.   
      351. > int EVP_DecodeBlock(unsigned char *t, const unsigned char *f, int n)
      352.   {
      353.       int i, ret = 0, a, b, c, d;

crypto/evp/encode.c:372:24: Binary operation: ([0, 2147483646] + 4):signed32 by call to `SRP_user_pwd_set_sv` 
      370.           return (-1);
      371.   
      372.       for (i = 0; i < n; i += 4) {
                                    ^
      373.           a = conv_ascii2bin(*(f++));
      374.           b = conv_ascii2bin(*(f++));
