mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-10 05:03:43 +01:00
make the buffer resize stuff work
and make listener connections not have bufs svn:r584
This commit is contained in:
parent
ee9e54b434
commit
58ec05877a
@ -45,8 +45,8 @@ static INLINE int buf_ensure_capacity(buf_t *buf, size_t capacity)
|
||||
new_len = buf->len*2;
|
||||
while (new_len < capacity)
|
||||
new_len *= 2;
|
||||
log_fn(LOG_DEBUG,"Growing buffer from %ld to %ld bytes.",
|
||||
buf->len, new_len);
|
||||
log_fn(LOG_DEBUG,"Growing buffer from %d to %d bytes.",
|
||||
(int)buf->len, (int)new_len);
|
||||
buf_resize(buf,new_len);
|
||||
return 0;
|
||||
}
|
||||
@ -63,9 +63,9 @@ static INLINE void buf_shrink_if_underfull(buf_t *buf) {
|
||||
new_len = buf->len / 2;
|
||||
while (buf->datalen < new_len/4 && new_len/2 > MIN_BUF_SHRINK_SIZE)
|
||||
new_len /= 2;
|
||||
log_fn(LOG_DEBUG,"Shrinking buffer from %ld to %ld bytes.",
|
||||
buf->len, new_len);
|
||||
buf_resize(buf->buf, new_len);
|
||||
log_fn(LOG_DEBUG,"Shrinking buffer from %d to %d bytes.",
|
||||
(int)buf->len, (int)new_len);
|
||||
buf_resize(buf, new_len);
|
||||
}
|
||||
|
||||
/* Remove the first 'n' bytes from buf.
|
||||
|
@ -80,8 +80,10 @@ connection_t *connection_new(int type) {
|
||||
memset(conn,0,sizeof(connection_t)); /* zero it out to start */
|
||||
|
||||
conn->type = type;
|
||||
conn->inbuf = buf_new();
|
||||
conn->outbuf = buf_new();
|
||||
if(!connection_is_listener(conn)) { /* listeners never use their buf */
|
||||
conn->inbuf = buf_new();
|
||||
conn->outbuf = buf_new();
|
||||
}
|
||||
|
||||
conn->timestamp_created = now;
|
||||
conn->timestamp_lastread = now;
|
||||
@ -93,8 +95,10 @@ connection_t *connection_new(int type) {
|
||||
void connection_free(connection_t *conn) {
|
||||
assert(conn);
|
||||
|
||||
buf_free(conn->inbuf);
|
||||
buf_free(conn->outbuf);
|
||||
if(!connection_is_listener(conn)) {
|
||||
buf_free(conn->inbuf);
|
||||
buf_free(conn->outbuf);
|
||||
}
|
||||
if(conn->address)
|
||||
free(conn->address);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user