}
/*
- * Return values are as per SSL_read(), i.e.
- * >0 The number of read bytes
- * 0 Failure (not retryable)
- * <0 Failure (may be retryable)
+ * Return values are as per SSL_read()
*/
static int read_n(SSL *s, unsigned int n, unsigned int max,
unsigned int extend)
# endif
if (i <= 0) {
s->s2->rbuf_left += newb;
- return -1;
+ return i;
}
newb += i;
}
}
/*
- * Return values are as per SSL_write(), i.e.
- * >0 The number of read bytes
- * 0 Failure (not retryable)
- * <0 Failure (may be retryable)
+ * Return values are as per SSL_write()
*/
static int write_pending(SSL *s, const unsigned char *buf, unsigned int len)
{
s->rwstate = SSL_NOTHING;
return (s->s2->wpend_ret);
} else if (i <= 0)
- return -1;
+ return i;
s->s2->wpend_off += i;
s->s2->wpend_len -= i;
}