diff options
author | Nick Mathewson <nickm@torproject.org> | 2017-08-08 11:54:44 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2017-09-05 13:57:51 -0400 |
commit | cddac959e7fb5729956a5250351e0fa1289d719f (patch) | |
tree | 1b00d23198966670ff7b1c3a25a4b2538ef7c350 | |
parent | 234c5015f1536bc51fe5f87c5b7c1072d3f9dbd2 (diff) | |
download | tor-cddac959e7fb5729956a5250351e0fa1289d719f.tar.gz tor-cddac959e7fb5729956a5250351e0fa1289d719f.zip |
Replace buf->datalen usage in proto_*.c with buf_datalen() call.
This lets us remove BUFFERS_PRIVATE from two of the modules.
-rw-r--r-- | src/or/proto_cell.c | 5 | ||||
-rw-r--r-- | src/or/proto_control0.c | 3 | ||||
-rw-r--r-- | src/or/proto_http.c | 4 | ||||
-rw-r--r-- | src/or/proto_socks.c | 14 |
4 files changed, 12 insertions, 14 deletions
diff --git a/src/or/proto_cell.c b/src/or/proto_cell.c index 9e5cdff423..4c86b7e4d0 100644 --- a/src/or/proto_cell.c +++ b/src/or/proto_cell.c @@ -4,7 +4,6 @@ * Copyright (c) 2007-2017, The Tor Project, Inc. */ /* See LICENSE for licensing information */ -#define BUFFERS_PRIVATE // XXXX remove. #include "or.h" #include "buffers.h" #include "proto_cell.h" @@ -56,7 +55,7 @@ fetch_var_cell_from_buf(buf_t *buf, var_cell_t **out, int linkproto) const int circ_id_len = get_circ_id_size(wide_circ_ids); const unsigned header_len = get_var_cell_header_size(wide_circ_ids); *out = NULL; - if (buf->datalen < header_len) + if (buf_datalen(buf) < header_len) return 0; peek_from_buf(hdr, header_len, buf); @@ -65,7 +64,7 @@ fetch_var_cell_from_buf(buf_t *buf, var_cell_t **out, int linkproto) return 0; length = ntohs(get_uint16(hdr + circ_id_len + 1)); - if (buf->datalen < (size_t)(header_len+length)) + if (buf_datalen(buf) < (size_t)(header_len+length)) return 1; result = var_cell_new(length); result->command = command; diff --git a/src/or/proto_control0.c b/src/or/proto_control0.c index 4c505fa6f9..5478d07e46 100644 --- a/src/or/proto_control0.c +++ b/src/or/proto_control0.c @@ -4,7 +4,6 @@ * Copyright (c) 2007-2017, The Tor Project, Inc. */ /* See LICENSE for licensing information */ -#define BUFFERS_PRIVATE // XXXX remove. #include "or.h" #include "buffers.h" #include "proto_control0.h" @@ -14,7 +13,7 @@ int peek_buf_has_control0_command(buf_t *buf) { - if (buf->datalen >= 4) { + if (buf_datalen(buf) >= 4) { char header[4]; uint16_t cmd; peek_from_buf(header, sizeof(header), buf); diff --git a/src/or/proto_http.c b/src/or/proto_http.c index 2ba3f93ab6..a47644a30a 100644 --- a/src/or/proto_http.c +++ b/src/or/proto_http.c @@ -58,7 +58,7 @@ fetch_from_buf_http(buf_t *buf, crlf_offset = buf_find_string_offset(buf, "\r\n\r\n", 4); if (crlf_offset > (int)max_headerlen || - (crlf_offset < 0 && buf->datalen > max_headerlen)) { + (crlf_offset < 0 && buf_datalen(buf) > max_headerlen)) { log_debug(LD_HTTP,"headers too long."); return -1; } else if (crlf_offset < 0) { @@ -72,7 +72,7 @@ fetch_from_buf_http(buf_t *buf, headerlen = crlf_offset + 4; headers = buf->head->data; - bodylen = buf->datalen - headerlen; + bodylen = buf_datalen(buf) - headerlen; log_debug(LD_HTTP,"headerlen %d, bodylen %d.", (int)headerlen, (int)bodylen); if (max_headerlen <= headerlen) { diff --git a/src/or/proto_socks.c b/src/or/proto_socks.c index 20804455c8..f1728bde36 100644 --- a/src/or/proto_socks.c +++ b/src/or/proto_socks.c @@ -116,7 +116,7 @@ fetch_from_buf_socks(buf_t *buf, socks_request_t *req, ssize_t n_drain; size_t want_length = 128; - if (buf->datalen < 2) /* version and another byte */ + if (buf_datalen(buf) < 2) /* version and another byte */ return 0; do { @@ -133,8 +133,8 @@ fetch_from_buf_socks(buf_t *buf, socks_request_t *req, else if (n_drain > 0) buf_remove_from_front(buf, n_drain); - } while (res == 0 && buf->head && want_length < buf->datalen && - buf->datalen >= 2); + } while (res == 0 && buf->head && want_length < buf_datalen(buf) && + buf_datalen(buf) >= 2); return res; } @@ -154,11 +154,11 @@ fetch_ext_or_command_from_buf(buf_t *buf, ext_or_cmd_t **out) char hdr[EXT_OR_CMD_HEADER_SIZE]; uint16_t len; - if (buf->datalen < EXT_OR_CMD_HEADER_SIZE) + if (buf_datalen(buf) < EXT_OR_CMD_HEADER_SIZE) return 0; peek_from_buf(hdr, sizeof(hdr), buf); len = ntohs(get_uint16(hdr+2)); - if (buf->datalen < (unsigned)len + EXT_OR_CMD_HEADER_SIZE) + if (buf_datalen(buf) < (unsigned)len + EXT_OR_CMD_HEADER_SIZE) return 0; *out = ext_or_cmd_new(len); (*out)->cmd = ntohs(get_uint16(hdr)); @@ -526,7 +526,7 @@ parse_socks(const char *data, size_t datalen, socks_request_t *req, log_warn(LD_APP,"socks4: Destaddr too long. Rejecting."); return -1; } - // tor_assert(next < buf->cur+buf->datalen); + // tor_assert(next < buf->cur+buf_datalen(buf)); if (log_sockstype) log_notice(LD_APP, @@ -591,7 +591,7 @@ fetch_from_buf_socks_client(buf_t *buf, int state, char **reason) { ssize_t drain = 0; int r; - if (buf->datalen < 2) + if (buf_datalen(buf) < 2) return 0; buf_pullup(buf, MAX_SOCKS_MESSAGE_LEN); |