aboutsummaryrefslogtreecommitdiff
path: root/src/or/channeltls.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/or/channeltls.c')
-rw-r--r--src/or/channeltls.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/or/channeltls.c b/src/or/channeltls.c
index 719a153dd6..90ad1e679f 100644
--- a/src/or/channeltls.c
+++ b/src/or/channeltls.c
@@ -741,7 +741,7 @@ static int
channel_tls_num_cells_writeable_method(channel_t *chan)
{
size_t outbuf_len;
- int n;
+ ssize_t n;
channel_tls_t *tlschan = BASE_CHAN_TO_TLS(chan);
size_t cell_network_size;
@@ -753,8 +753,11 @@ channel_tls_num_cells_writeable_method(channel_t *chan)
/* Get the number of cells */
n = CEIL_DIV(OR_CONN_HIGHWATER - outbuf_len, cell_network_size);
if (n < 0) n = 0;
+#if SIZEOF_SIZE_T > SIZEOF_INT
+ if (n > INT_MAX) n = INT_MAX;
+#endif
- return n;
+ return (int)n;
}
/**