This is the mail archive of the
cygwin-patches@cygwin.com
mailing list for the Cygwin project.
Re: gethostbyname() problem?
- From: Christopher Faylor <cgf-no-personal-reply-please at cygwin dot com>
- To: cygwin-patches at cygwin dot com
- Date: Sun, 6 Feb 2005 18:44:58 -0500
- Subject: Re: gethostbyname() problem?
- References: <200502051240.j15CevQ32345@webmail.web-mania.com> <4205D6D1.70D38D40@dessent.net> <20050206110530.GR19096@cygbert.vinschen.de> <20050206230129.GA3512@efn.org>
- Reply-to: cygwin-patches at cygwin dot com
On Sun, Feb 06, 2005 at 03:01:29PM -0800, Yitzchak Scott-Thoennes wrote:
>On Sun, Feb 06, 2005 at 12:05:30PM +0100, Corinna Vinschen wrote:
>> On Feb 6 00:35, Brian Dessent wrote:
>> > - static int a, b, c, d;
>> > + static int a, b, c, d, n;
>> >
>> > sig_dispatch_pending ();
>> > if (check_null_str_errno (name))
>> > return NULL;
>> >
>> > - if (sscanf (name, "%d.%d.%d.%d", &a, &b, &c, &d) == 4)
>> > + if (sscanf (name, "%d.%d.%d.%d%n", &a, &b, &c, &d, &n) == 4 && (unsigned)n == strlen (name))
>>
>> Thanks for the patch, Brian. Do you also have a nice ChangeLog entry
>> for me?
>
>I've always done this like below; then the n==strlen(name) check isn't
>needed (since the ==4 verifies that %c wasn't used). Even using the
>%n, there's no reason to make n static, is there?
There has been no reason to make a, b, c, d static either AFAICT.
This whole function is frightfully non-reentrant, but I knew that.
cgf