Re: SOCK5 crash+fix

Gisle Vanem <[email protected]>
Newsgroups gmane.comp.web.lynx.devel
Message-ID <[email protected]>
Thomas Dickey wrote:

> Subject: Re: [Lynx-dev] ..on SOCKS5 support
> ...
> +        p1 = NULL;
> +
> +        protocol = HTSprintf0(NULL, gettext("(for %s at %s) SOCKS5"),
> +                protocol, socks5_host);
> +    }
>                                                                                  
> +#ifndef INET6
> 
> HTSprintf0 expects to have the address of a pointer in which it
> can return a pointer to newly-allocated memory.

'HTSprintf0(NULL,..)' looks okay to me, but crashes
on some condition anyway. Some Runtime-Checks that gets
confused (?).

Anyway, this works better.
  int len = snprintf(NULL, 0, gettext("(for %s at %s) SOCKS5"), protocol, socks5_host);
  socks5_protocol = malloc (len+1);
  if (!socks5_protocol)
      outofmem(__FILE__, "malloc");
  snprintf(socks5_buf, len, gettext("(for %s at %s) SOCKS5"), protocol, socks5_host);
  protocol = socks5_protocol;

and I'm happy with that.

-- 
--gv
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.