X-Git-Url: https://git.distorted.org.uk/u/mdw/putty/blobdiff_plain/6c434e1fed8a4549674a0f6d4c21f48db2027f24..64febabad88a23aab0c967d49a4f82ae1129fa63:/proxy.c diff --git a/proxy.c b/proxy.c index ccb1b5ef..cda7511d 100644 --- a/proxy.c +++ b/proxy.c @@ -378,7 +378,7 @@ Socket new_connection(SockAddr addr, char *hostname, SockAddr proxy_addr; char *proxy_canonical_name, *err; - ret = smalloc(sizeof(struct Socket_proxy_tag)); + ret = snew(struct Socket_proxy_tag); ret->fn = &socket_fn_table; ret->cfg = *cfg; /* STRUCTURE COPY */ ret->plug = plug; @@ -413,7 +413,7 @@ Socket new_connection(SockAddr addr, char *hostname, /* create the proxy plug to map calls from the actual * socket into our proxy socket layer */ - pplug = smalloc(sizeof(struct Plug_proxy_tag)); + pplug = snew(struct Plug_proxy_tag); pplug->fn = &plug_fn_table; pplug->proxy_socket = ret; @@ -579,7 +579,7 @@ int proxy_http_negotiate (Proxy_Socket p, int change) /* get the status line */ len = bufchain_size(&p->pending_input_data); assert(len > 0); /* or we wouldn't be here */ - data = smalloc(len); + data = snewn(len, char); bufchain_fetch(&p->pending_input_data, data, len); eol = get_line_end(data, len); @@ -627,7 +627,7 @@ int proxy_http_negotiate (Proxy_Socket p, int change) len = bufchain_size(&p->pending_input_data); assert(len > 0); /* or we wouldn't be here */ - data = smalloc(len); + data = snewn(len, char); datap = data; bufchain_fetch(&p->pending_input_data, data, len); @@ -695,6 +695,7 @@ int proxy_socks4_negotiate (Proxy_Socket p, int change) namelen = 0; sk_addrcopy(p->remote_addr, addr); } else { /* type == ADDRTYPE_NAME */ + assert(type == ADDRTYPE_NAME); sk_getaddr(p->remote_addr, hostname, lenof(hostname)); namelen = strlen(hostname) + 1; /* include the NUL */ addr[0] = addr[1] = addr[2] = 0; @@ -702,7 +703,7 @@ int proxy_socks4_negotiate (Proxy_Socket p, int change) } length = strlen(p->cfg.proxy_username) + namelen + 9; - command = (char*) smalloc(length); + command = snewn(length, char); strcpy(command + 8, p->cfg.proxy_username); command[0] = 4; /* version 4 */ @@ -999,7 +1000,8 @@ int proxy_socks5_negotiate (Proxy_Socket p, int change) len = 22; /* 4 hdr + 16 addr + 2 trailer */ command[3] = 4; /* IPv6 */ sk_addrcopy(p->remote_addr, command+4); - } else if (type == ADDRTYPE_NAME) { + } else { + assert(type == ADDRTYPE_NAME); command[3] = 3; sk_getaddr(p->remote_addr, command+5, 256); command[4] = strlen(command+5);