|
@@ -871,11 +871,13 @@ tor_tls_get_n_raw_bytes(tor_tls_t *tls, size_t *n_read, size_t *n_written)
|
|
|
unsigned long r, w;
|
|
|
r = BIO_number_read(SSL_get_rbio(tls->ssl));
|
|
|
w = BIO_number_written(SSL_get_wbio(tls->ssl));
|
|
|
+
|
|
|
/* We are ok with letting these unsigned ints go "negative" here:
|
|
|
* If we wrapped around, this should still give us the right answer, unless
|
|
|
* we wrapped around by more than ULONG_MAX since the last time we called
|
|
|
* this function.
|
|
|
*/
|
|
|
+
|
|
|
*n_read = (size_t)(r - tls->last_read_count);
|
|
|
*n_written = (size_t)(w - tls->last_write_count);
|
|
|
tls->last_read_count = r;
|