This breaks slapi-nis. https://git.fedorahosted.org/cgit/slapi-nis.git/tree/src/back-sch.c#n581
dn: cn=ng1,cn=ng,cn=compat,cn=accounts,dc=example,dc=com objectClass: nisNetgroup memberNisNetgroup: ng2 memberNisNetgroup: ng3 memberNisNetgroup: ng3
becomes
dn: cn=ng1,cn=ng,cn=compat,cn=accounts,dc=example,dc=com objectClass: nisNetgroup memberNisNetgroup: ng3
but it should be dn: cn=ng1,cn=ng,cn=compat,cn=accounts,dc=example,dc=com objectClass: nisNetgroup memberNisNetgroup: ng2 memberNisNetgroup: ng3
That is, slapi_str2entry should just throw out the duplicate ng3 value and keep the ng2 value
valgrind errors and leaks fixed by patch slapd.vg.22729
ack
In valueset_relace_valuearray_ext() if you use PASSIN for slapi_valueset_add_attr_valuearray_ext and it returns an error, wouldn't then slapi_valueset_free(vs_new); valuearray_free(&valstoreplace); potentially contain double frees ? I think the call to slapi_valueset_add_attr_valuearray_ext misses also the DUPCHECK flag, depending on the dupcheck parameter.
0001-Ticket-47455-valgrind-value-mem-leaks-uninit-mem-usa.patch 0001-Ticket-47455-valgrind-value-mem-leaks-uninit-mem-usa.patch
Sorry, one more question ...
I see some slapi_valueset_add_attr_valuearray_ext called with SLAPI_VALUE_FLAG_PASSIN in entrywsi.c where the return value is not being checked... I guess we can assume there's no chance to see any error occurs there?
Replying to [comment:5 nhosoi]:
Sorry, one more question ... I see some slapi_valueset_add_attr_valuearray_ext called with SLAPI_VALUE_FLAG_PASSIN in entrywsi.c where the return value is not being checked... I guess we can assume there's no chance to see any error occurs there?
There are no errors returned when using PASSIN. The only time errors are returned is with the DUPCHECK flag - then an error will be returned if a duplicate is found.
Thanks, Rich!
To ssh://git.fedorahosted.org/git/389/ds.git df53a87..5633e12 389-ds-base-1.3.1 -> 389-ds-base-1.3.1 commit 5633e125a462fa174186d1a8adba3ee00c43e3cd Author: Rich Megginson rmeggins@redhat.com Date: Mon Jul 29 15:06:03 2013 -0600 ed89524..39648c7 master -> master commit 39648c727d0b29e6f208cb9a698a54ab1c4be2fe Author: Rich Megginson rmeggins@redhat.com Date: Mon Jul 29 15:06:03 2013 -0600
fcf4154..aae4989 389-ds-base-1.3.1 -> 389-ds-base-1.3.1 commit aae49897bb513f39718b2040136031c3b59ce6a5 Author: Rich Megginson rmeggins@redhat.com Date: Wed Jul 31 18:21:42 2013 -0600 91c2c57..39f5eda master -> master commit 39f5eda237ec35a0ca43b46a09f6abbd76ea0341 Author: Rich Megginson rmeggins@redhat.com Date: Wed Jul 31 18:21:42 2013 -0600
suggested fix, definitely needs to be reviewed dup.patch
fix for netgroups 0001-Ticket-47455-valgrind-value-mem-leaks-uninit-mem-usa.patch 0001-Ticket-47455-valgrind-value-mem-leaks-uninit-mem-usa.2.patch
To ssh://git.fedorahosted.org/git/389/ds.git 060c05c..6357ced 389-ds-base-1.3.1 -> 389-ds-base-1.3.1 commit 6357ced2e4380def053966e849eac45e44009662 Author: Rich Megginson rmeggins@redhat.com Date: Thu Sep 5 19:45:44 2013 -0600 ba00d48..3adc242 master -> master commit 3adc242bcc8c6d0d05d5d9773f32b4f81afb6e6d Author: Rich Megginson rmeggins@redhat.com Date: Thu Sep 5 19:45:44 2013 -0600
git patch file (1.2.11) -- Backported the valueset.c part for Ticket #346 "version 4 Slow ldapmodify operation time for large quantities of multi-valued attribute values" 0005-Ticket-47455-valgrind-value-mem-leaks-uninit-mem-usa.patch
Ticket has been cloned to Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1109363
Metadata Update from @rmeggins: - Issue assigned to rmeggins - Issue set to the milestone: 1.3.1.8
389-ds-base is moving from Pagure to Github. This means that new issues and pull requests will be accepted only in 389-ds-base's github repository.
This issue has been cloned to Github and is available here: - https://github.com/389ds/389-ds-base/issues/792
If you want to receive further updates on the issue, please navigate to the github issue and click on subscribe button.
subscribe
Thank you for understanding. We apologize for all inconvenience.
Metadata Update from @spichugi: - Issue close_status updated to: wontfix (was: Fixed)