Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 2 May 2011 07:06:32 -0700
From:      Artem Belevich <art@freebsd.org>
To:        Robert Schulze <rs@bytecamp.net>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: [LIBC] Modfied Version of sscanf
Message-ID:  <BANLkTim_WhRdWi8RbuubxQm4kD27V17h9g@mail.gmail.com>
In-Reply-To: <4DBEAAD5.7040906@bytecamp.net>
References:  <C9E46C77.389%moeller.akt@googlemail.com> <4DBEAAD5.7040906@bytecamp.net>

next in thread | previous in thread | raw e-mail | index | archive | help

On Mon, May 2, 2011 at 6:00 AM, Robert Schulze <rs@bytecamp.net> wrote:
> Hi,
>
> Am 02.05.2011 14:13, schrieb Martin Möller:
>>
>> Criteria:
>>     o Receive the value of<resource>
>>     o Check the Environment: Is<resource>  really sourrounded by 'GET '
>> and
>>       'HTTP/1.1' ?!
>
> these quite simple criteria might be matched by code like this one:
>
> char *ptr=NULL;
> char *res=NULL;
> if(strstr(str,"GET ")==str) /* "GET " at beginning? */
>        {
>        ptr=(str+4);
>        if(ptr && (ptr=strstr(ptr," HTTP/1.1"))) /* find end of res */
>                {
>                *ptr=0; /* temp delimiter */
>                res=strdup(ptr);
>                *ptr=' '; /* restore original value of str */
>                }
>        }

Bzzt!

Try it on "GET blah_HTTP/1.1.1.1.1.1_whatever HTTP/1.1"

>
> res is the value of <resource>, or NULL.
>

Second problem -- res on success will always be "" as you've just did *ptr=0.

--Artem

> with kind regards,
> Robert Schulze
> _______________________________________________
> freebsd-hackers@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
> To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@freebsd.org"
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?BANLkTim_WhRdWi8RbuubxQm4kD27V17h9g>