From: wessels <> Date: Fri, 21 Aug 1998 02:38:46 +0000 (+0000) Subject: use dynamic allocation for request->url X-Git-Tag: SQUID_3_0_PRE1~2831 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=7d97d03c11e74ba34433cdfdb4fed3f2137fc298;p=thirdparty%2Fsquid.git use dynamic allocation for request->url --- diff --git a/test-suite/tcp-banger2.c b/test-suite/tcp-banger2.c index bef8f32bb9..1fc0cdd950 100644 --- a/test-suite/tcp-banger2.c +++ b/test-suite/tcp-banger2.c @@ -113,7 +113,7 @@ struct _f { }; struct _request { int fd; - char url[8192]; + char *url; char method[16]; char requestbodyfile[256]; char buf[READ_BUF_SZ * 2 + 1]; @@ -130,6 +130,14 @@ int nfds = 0; int maxfd = 0; +static void +free_request(struct _request *r) +{ + if (r->url) + free(r->url); + free(r); +} + char * mkrfc850(t) time_t *t; @@ -265,7 +273,7 @@ reply_done(int fd, void *data) fprintf(trace_file, "%s %s %s %d 0x%lx\n", r->method, r->url, r->requestbodyfile, r->bodysize, r->sum); } - free(r); + free_request(r); } struct _request * @@ -314,7 +322,8 @@ request(char *urlin) checksum = "-"; r = calloc(1, sizeof *r); assert(r != NULL); - strcpy(r->url, url); + r->url = strdup(url); + assert(r->url); strcpy(r->method, method); strcpy(r->requestbodyfile, file); r->fd = s; @@ -373,7 +382,7 @@ request(char *urlin) if ((len2 = write(s, msg, len)) != len) { close(s); perror("write request"); - free(r); + free_request(r); return NULL; } else total_bytes_written += len2; @@ -383,7 +392,7 @@ request(char *urlin) if (len2 < 0) { perror("write body"); close(s); - free(r); + free_request(r); } } if (len < 0) {