[PATCH] ngx_pstrdup() and ngx_copy() problems
Maxim Konovalov
maxim at nginx.com
Tue Dec 22 14:51:13 UTC 2015
On 12/22/15 5:47 PM, Maxim Dounin wrote:
> Hello!
>
> On Tue, Dec 22, 2015 at 05:21:26PM +0300, Sergey Matveychuk wrote:
>
>> Hi.
>>
>> * It looks like strings are supposed to finish with '\0' char to be
>> compatible with C strings. So ngx_pstrdup() must allocate and copy len+1,
>> not just len.
>>
>> * ngx_copy() returns different values for different preprocessor conditions.
>>
>> PS. I have no idea how trac.nginx.org works. I tried to fill a ticket, but
>> it just lost.
>
> Trac works fine, and I've just replied to you in the ticket.
> Here is a copy of the response:
>
> No, your assumptions are wrong. Strings in nginx are not expected
> to be null-terminated in general. The ngx_pstrdup() function is
>From Emiller's guide:
Note: an ngx_str_t is a struct with a data element, which is a
string, and a len element, which is the length of that string. Nginx
uses this data structure most places you'd expect a string.
http://www.evanmiller.org/nginx-modules-guide.html
[...]
--
Maxim Konovalov
More information about the nginx-devel
mailing list