> On 16 May 2019, at 17:18, thierry bordaz <[email protected]> wrote:
> 
> Hi William,
> 
> It looks to me that attr_syntax_create overwrite the allocated asi with one 
> it allocates itself based on provided params.
> In short I think attr_syntax_creates allocates for you the syntaxinfo, you do 
> not need to provide one.
> 

AHHHHh how did I miss this!!! I was staring attr_syntax_create for most of the 
morning yesterday! 

Anyway, thank you, I have fixed that up - back to writing tests now ... 

> best regards
> thierry
> On 5/16/19 8:17 AM, William Brown wrote:
>> https://pagure.io/389-ds-base/pull-request/50379
>> 
>> 
>> This code is not yet ready to be merged. I'm currently having a problem with 
>> freeing the attrsyntaxinfo struct as part of the test.
>> 
>> If the code is as is I get:
>> 
>> 
>> =================================================================
>> ==98363==ERROR: LeakSanitizer: detected memory leaks
>> 
>> Direct leak of 160 byte(s) in 1 object(s) allocated from:
>>     #0 0x7fbc40e28538 in calloc (/usr/lib64/libasan.so.5+0xec538)
>>     #1 0x7fbc40a34be6 in slapi_ch_calloc 
>> /home/william/development/389ds/ds/ldap/servers/slapd/ch_malloc.c:175
>>     #2 0x40499c in attr_syntax_add_from_name 
>> /home/william/development/389ds/ds/test/libslapd/schema/filter_validate.c:25
>>     #3 0x404b22 in test_libslapd_schema_filter_validate_simple 
>> /home/william/development/389ds/ds/test/libslapd/schema/filter_validate.c:56
>>     #4 0x7fbc40d340d8  (/usr/lib64/libcmocka.so.0+0x50d8)
>> 
>> Objects leaked above:
>> 0x60e000000d60 (160 bytes)
>> 
>> Direct leak of 160 byte(s) in 1 object(s) allocated from:
>>     #0 0x7fbc40e28538 in calloc (/usr/lib64/libasan.so.5+0xec538)
>>     #1 0x7fbc40a34be6 in slapi_ch_calloc 
>> /home/william/development/389ds/ds/ldap/servers/slapd/ch_malloc.c:175
>>     #2 0x40499c in attr_syntax_add_from_name 
>> /home/william/development/389ds/ds/test/libslapd/schema/filter_validate.c:25
>>     #3 0x404b0f in test_libslapd_schema_filter_validate_simple 
>> /home/william/development/389ds/ds/test/libslapd/schema/filter_validate.c:55
>>     #4 0x7fbc40d340d8  (/usr/lib64/libcmocka.so.0+0x50d8)
>> 
>> Objects leaked above:
>> 0x60e000000ba0 (160 bytes)
>> 
>> SUMMARY: AddressSanitizer: 320 byte(s) leaked in 2 allocation(s).
>> 
>> However, if I free *a and *b, with attr_syntax_free, or slapi_ch_free, I get 
>> a double free error. The size of 160 bytes correlates to the sizeof(struct 
>> attrsyntaxinfo) but looking in gdb during attr_syntax_delete, the 
>> attr_syntax_free is called on asi as provided.
>> 
>> So I'm not 100% sure what's going wrong here, but I'm not thoroughly 
>> experienced in this part of the code, so feedback would be really helpful 
>> about this resource issue.
>> 
>> Thanks! 
>> 
>> —
>> Sincerely,
>> 
>> William Brown
>> 
>> Senior Software Engineer, 389 Directory Server
>> SUSE Labs
>> _______________________________________________
>> 389-devel mailing list -- 
>> [email protected]
>> 
>> To unsubscribe send an email to 
>> [email protected]
>> 
>> Fedora Code of Conduct: 
>> https://getfedora.org/code-of-conduct.html
>> 
>> List Guidelines: 
>> https://fedoraproject.org/wiki/Mailing_list_guidelines
>> 
>> List Archives: 
>> https://lists.fedoraproject.org/archives/list/[email protected]
> 

—
Sincerely,

William Brown

Senior Software Engineer, 389 Directory Server
SUSE Labs
_______________________________________________
389-devel mailing list -- [email protected]
To unsubscribe send an email to [email protected]
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/[email protected]

Reply via email to