> 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]
