Skip to content

Commit 30a38c5

Browse files
committed
Fix vtsn.len type #269
1 parent dd6930c commit 30a38c5

3 files changed

+3
-3
lines changed

src/ngx_http_vhost_traffic_status_dump.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -393,7 +393,7 @@ ngx_http_vhost_traffic_status_dump_restore(ngx_event_t *ev)
393393
/* read: data */
394394
offset += n;
395395
n = ngx_read_file(&file, buf, vtsn.len, offset);
396-
if (n != vtsn.len) {
396+
if (n >= 0 && vtsn.len <= SSIZE_MAX && n != (ssize_t) vtsn.len) {
397397
ngx_log_debug2(NGX_LOG_DEBUG_HTTP, ev->log, 0,
398398
"dump_restore::ngx_read_file() read:%z, data:%z failed",
399399
n, vtsn.len);

src/ngx_http_vhost_traffic_status_node.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ typedef struct {
100100
#endif
101101

102102
ngx_http_vhost_traffic_status_node_upstream_t stat_upstream;
103-
u_short len;
103+
size_t len;
104104
u_char data[1];
105105
} ngx_http_vhost_traffic_status_node_t;
106106

src/ngx_http_vhost_traffic_status_shm.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ ngx_http_vhost_traffic_status_shm_add_node(ngx_http_request_t *r,
148148
vtsn = (ngx_http_vhost_traffic_status_node_t *) &node->color;
149149

150150
node->key = hash;
151-
vtsn->len = (u_short) key->len;
151+
vtsn->len = key->len;
152152
ngx_http_vhost_traffic_status_node_init(r, vtsn);
153153
vtsn->stat_upstream.type = type;
154154
ngx_memcpy(vtsn->data, key->data, key->len);

0 commit comments

Comments
 (0)