<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ds.git/include, branch 573889</title>
<subtitle>Unnamed repository; edit this file to name it for gitweb.</subtitle>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/edewata/public_git/ds.git/'/>
<entry>
<title>Bug 630090 - (cov#11974) Remove unused ACL functions</title>
<updated>2010-09-09T17:18:59+00:00</updated>
<author>
<name>Nathan Kinder</name>
<email>nkinder@redhat.com</email>
</author>
<published>2010-09-09T17:18:59+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/edewata/public_git/ds.git/commit/?id=d88253df42157df3d112122c3551b0969e9ce8a0'/>
<id>d88253df42157df3d112122c3551b0969e9ce8a0</id>
<content type='text'>
Coverity flagged a memory corruption issue in an old unused
ACL function.  It is best to just remove these unused functions.
The functions removed are:

  ACL_ParseFile
  ACL_WriteFile
  ACL_WriteString
  ACL_Decompose
  acl_to_str_*
  acl_decompose_*
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Coverity flagged a memory corruption issue in an old unused
ACL function.  It is best to just remove these unused functions.
The functions removed are:

  ACL_ParseFile
  ACL_WriteFile
  ACL_WriteString
  ACL_Decompose
  acl_to_str_*
  acl_decompose_*
</pre>
</div>
</content>
</entry>
<entry>
<title>fix compiler warnings - unused vars/funcs, invalid casts</title>
<updated>2010-09-01T23:08:30+00:00</updated>
<author>
<name>Rich Megginson</name>
<email>rmeggins@redhat.com</email>
</author>
<published>2010-09-01T03:17:30+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/edewata/public_git/ds.git/commit/?id=ea408efe551ad837b08423f6d32b5433ab8dfe2b'/>
<id>ea408efe551ad837b08423f6d32b5433ab8dfe2b</id>
<content type='text'>
This commit fixes many compiler warnings, mostly for things like unused
variables, functions, goto labels.
One place was using csngen_free instead of csn_free.  A couple of places
were using casts incorrectly, and several places needed some casts added.
Tested on: RHEL5 x86_64, Fedora 14 x86_64
Reviewed by: nkinder (Thanks!)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This commit fixes many compiler warnings, mostly for things like unused
variables, functions, goto labels.
One place was using csngen_free instead of csn_free.  A couple of places
were using casts incorrectly, and several places needed some casts added.
Tested on: RHEL5 x86_64, Fedora 14 x86_64
Reviewed by: nkinder (Thanks!)
</pre>
</div>
</content>
</entry>
<entry>
<title>Bug 610119 - fix coverify Defect Type: Null pointer dereferences issues 12167 - 12199</title>
<updated>2010-08-23T18:07:31+00:00</updated>
<author>
<name>Endi S. Dewata</name>
<email>edewata@redhat.com</email>
</author>
<published>2010-07-07T00:18:19+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/edewata/public_git/ds.git/commit/?id=9020d0a1ba5766ae40d0aefe8b4b46e0e6903ee6'/>
<id>9020d0a1ba5766ae40d0aefe8b4b46e0e6903ee6</id>
<content type='text'>
https://bugzilla.redhat.com/show_bug.cgi?id=610119
Resolves: bug 610119
Bug description: Fix coverify Defect Type: Null pointer dereferences issues 12167 - 12199
Fix description: Catch possible NULL pointer in LASDnsBuild().
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://bugzilla.redhat.com/show_bug.cgi?id=610119
Resolves: bug 610119
Bug description: Fix coverify Defect Type: Null pointer dereferences issues 12167 - 12199
Fix description: Catch possible NULL pointer in LASDnsBuild().
</pre>
</div>
</content>
</entry>
<entry>
<title>Bug 616500 - fix coverity Defect Type: Resource leaks issues</title>
<updated>2010-08-20T21:55:12+00:00</updated>
<author>
<name>Noriko Hosoi</name>
<email>nhosoi@redhat.com</email>
</author>
<published>2010-08-20T21:55:12+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/edewata/public_git/ds.git/commit/?id=d5b15931ee65d248ab43c9a7ba2fac44fec00c31'/>
<id>d5b15931ee65d248ab43c9a7ba2fac44fec00c31</id>
<content type='text'>
CID 12094 - 12136

https://bugzilla.redhat.com/show_bug.cgi?id=616500

coverity 12125
Comment:
This function (ldapu_certinfo_save) is not used - just get rid of it
Removing unused functions from lib/ldaputil/certmap.c
  ldapu_certinfo_save, ldapu_certinfo_modify, ldapu_certinfo_delete
Also, removing obsolete test codes: lib/ldaputil/utest.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
CID 12094 - 12136

https://bugzilla.redhat.com/show_bug.cgi?id=616500

coverity 12125
Comment:
This function (ldapu_certinfo_save) is not used - just get rid of it
Removing unused functions from lib/ldaputil/certmap.c
  ldapu_certinfo_save, ldapu_certinfo_modify, ldapu_certinfo_delete
Also, removing obsolete test codes: lib/ldaputil/utest.
</pre>
</div>
</content>
</entry>
<entry>
<title>609255 - fix coverity Defect Type: Memory - illegal accesses issues</title>
<updated>2010-07-08T00:17:19+00:00</updated>
<author>
<name>Noriko Hosoi</name>
<email>nhosoi@redhat.com</email>
</author>
<published>2010-07-01T18:39:47+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/edewata/public_git/ds.git/commit/?id=e9a26dca776e3d812ae634fb6d3f2836499d7356'/>
<id>e9a26dca776e3d812ae634fb6d3f2836499d7356</id>
<content type='text'>
https://bugzilla.redhat.com/show_bug.cgi?id=609255

12241 Triaged Unassigned Bug Minor Fix Required
delete_acl_from_file(char *, char *…) ds/lib/libaccess/acltools.cpp

12242 UNINIT Triaged Unassigned Bug Minor Fix Required
get_acl_from_file(char *, char *, ACLListHandle **…) ds/lib/libaccess/acltools.cpp

12243 UNINIT Triaged Unassigned Bug Minor Fix Required
ACL_FileGetNameList() ds/lib/libaccess/acltools.cpp

12244 UNINIT Triaged Unassigned Bug Minor Fix Required
ACL_FileGetNameList() ds/lib/libaccess/acltools.cpp

12245 UNINIT Triaged Unassigned Bug Minor Fix Required
rename_acl_in_file(char *, char *, char *…) ds/lib/libaccess/acltools.cpp

12246 UNINIT Triaged Unassigned Bug Minor Fix Required
append_acl_to_file(char *, char *, char *…) ds/lib/libaccess/acltools.cpp

12247 UNINIT Triaged Unassigned Bug Minor Fix Required
append_acl_to_file(char *, char *, char *…) ds/lib/libaccess/acltools.cpp

Comment:
ACL_FileRenameAcl, ACL_FileDeleteAcl, ACL_FileGetAcl, ACL_FileSetAcl,
ACL_FileMergeAcl, ACL_FileMergeFile and their helper functions are
not used.  These functions and their helper functions plus libaccess
test programs under the directory ./utest are eliminated.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://bugzilla.redhat.com/show_bug.cgi?id=609255

12241 Triaged Unassigned Bug Minor Fix Required
delete_acl_from_file(char *, char *…) ds/lib/libaccess/acltools.cpp

12242 UNINIT Triaged Unassigned Bug Minor Fix Required
get_acl_from_file(char *, char *, ACLListHandle **…) ds/lib/libaccess/acltools.cpp

12243 UNINIT Triaged Unassigned Bug Minor Fix Required
ACL_FileGetNameList() ds/lib/libaccess/acltools.cpp

12244 UNINIT Triaged Unassigned Bug Minor Fix Required
ACL_FileGetNameList() ds/lib/libaccess/acltools.cpp

12245 UNINIT Triaged Unassigned Bug Minor Fix Required
rename_acl_in_file(char *, char *, char *…) ds/lib/libaccess/acltools.cpp

12246 UNINIT Triaged Unassigned Bug Minor Fix Required
append_acl_to_file(char *, char *, char *…) ds/lib/libaccess/acltools.cpp

12247 UNINIT Triaged Unassigned Bug Minor Fix Required
append_acl_to_file(char *, char *, char *…) ds/lib/libaccess/acltools.cpp

Comment:
ACL_FileRenameAcl, ACL_FileDeleteAcl, ACL_FileGetAcl, ACL_FileSetAcl,
ACL_FileMergeAcl, ACL_FileMergeFile and their helper functions are
not used.  These functions and their helper functions plus libaccess
test programs under the directory ./utest are eliminated.
</pre>
</div>
</content>
</entry>
<entry>
<title>Bug 611850  - fix coverity Defect Type: Error handling issues</title>
<updated>2010-07-06T23:41:20+00:00</updated>
<author>
<name>Rich Megginson</name>
<email>rmeggins@redhat.com</email>
</author>
<published>2010-07-06T22:47:45+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/edewata/public_git/ds.git/commit/?id=85eb9216d5d4163139a90432084452cf81c8444e'/>
<id>85eb9216d5d4163139a90432084452cf81c8444e</id>
<content type='text'>
https://bugzilla.redhat.com/show_bug.cgi?id=611850
Resolves: bug 611850
Bug Description: fix coverity Defect Type: Error handling issues
Reviewed by: nhosoi (Thanks!)
Branch: HEAD
Fix Description: Check the error return from the functions.  In some cases,
I was able to figure out that the calling function should perform additional
error handling (return early, goto error label), but in general the code
just logs an appropriate error message and continues.  I was able to get
rid of some more libacl code.  I removed an unused variable from modify.c
Platforms tested: RHEL5 x86_64
Flag Day: no
Doc impact: no
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://bugzilla.redhat.com/show_bug.cgi?id=611850
Resolves: bug 611850
Bug Description: fix coverity Defect Type: Error handling issues
Reviewed by: nhosoi (Thanks!)
Branch: HEAD
Fix Description: Check the error return from the functions.  In some cases,
I was able to figure out that the calling function should perform additional
error handling (return early, goto error label), but in general the code
just logs an appropriate error message and continues.  I was able to get
rid of some more libacl code.  I removed an unused variable from modify.c
Platforms tested: RHEL5 x86_64
Flag Day: no
Doc impact: no
</pre>
</div>
</content>
</entry>
<entry>
<title>Bug 610177  - fix coverity Defect Type: Uninitialized variables issues</title>
<updated>2010-07-06T16:32:03+00:00</updated>
<author>
<name>Rich Megginson</name>
<email>rmeggins@redhat.com</email>
</author>
<published>2010-07-01T17:39:02+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/edewata/public_git/ds.git/commit/?id=4a103859b7100bc30046ecba3efca2e8f0b09c7d'/>
<id>4a103859b7100bc30046ecba3efca2e8f0b09c7d</id>
<content type='text'>
https://bugzilla.redhat.com/show_bug.cgi?id=610177
Resolves: bug 610177
Bug Description: fix coverity Defect Type: Uninitialized variables issues
Reviewed by: nhosoi (Thanks!)
Branch: HEAD
Fix Description: Initialize variables to 0, NULL, or an appropriate error
code.  Got rid of the unused lexer code.
Platforms tested: RHEL5 x86_64
Flag Day: no
Doc impact: no
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://bugzilla.redhat.com/show_bug.cgi?id=610177
Resolves: bug 610177
Bug Description: fix coverity Defect Type: Uninitialized variables issues
Reviewed by: nhosoi (Thanks!)
Branch: HEAD
Fix Description: Initialize variables to 0, NULL, or an appropriate error
code.  Got rid of the unused lexer code.
Platforms tested: RHEL5 x86_64
Flag Day: no
Doc impact: no
</pre>
</div>
</content>
</entry>
<entry>
<title>problems linking with -z defs</title>
<updated>2010-02-25T17:14:48+00:00</updated>
<author>
<name>Rich Megginson</name>
<email>rmeggins@redhat.com</email>
</author>
<published>2010-02-25T15:46:32+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/edewata/public_git/ds.git/commit/?id=2cc5ac4e6de01c75d3b974146fde7f41a77b0268'/>
<id>2cc5ac4e6de01c75d3b974146fde7f41a77b0268</id>
<content type='text'>
https://bugzilla.redhat.com/show_bug.cgi?id=506206
Resolves: bug 506206
Bug Description: problems linking with -z defs
Reviewed by: nhosoi (Thanks!)
Branch: HEAD
Fix Description: Some platforms (debian) and some build checking tools
(rpmlint, others) link with -z defs to look for any undefined references at
link time.  We had several of these in various directory server objects.
1) all of the plugins need to link against libslapd.la
2) most of the plugins need to link against ldapcsdk and nspr
3) the pwdstorage plugin needs to link against LIBCRYPT, which is platform
dependent
4) various other link fixes
Platforms tested: RHEL5 x86_64
Flag Day: yes - autotool file changes
Doc impact: no
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://bugzilla.redhat.com/show_bug.cgi?id=506206
Resolves: bug 506206
Bug Description: problems linking with -z defs
Reviewed by: nhosoi (Thanks!)
Branch: HEAD
Fix Description: Some platforms (debian) and some build checking tools
(rpmlint, others) link with -z defs to look for any undefined references at
link time.  We had several of these in various directory server objects.
1) all of the plugins need to link against libslapd.la
2) most of the plugins need to link against ldapcsdk and nspr
3) the pwdstorage plugin needs to link against LIBCRYPT, which is platform
dependent
4) various other link fixes
Platforms tested: RHEL5 x86_64
Flag Day: yes - autotool file changes
Doc impact: no
</pre>
</div>
</content>
</entry>
<entry>
<title>OpenLDAP support</title>
<updated>2009-07-07T14:32:42+00:00</updated>
<author>
<name>Rich Megginson</name>
<email>rmeggins@redhat.com</email>
</author>
<published>2009-07-06T18:11:01+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/edewata/public_git/ds.git/commit/?id=209521323f731daad54682fd98715f7b22c88c78'/>
<id>209521323f731daad54682fd98715f7b22c88c78</id>
<content type='text'>
These changes allow the server to be built with OpenLDAP (2.4.17+). A brief summary of the changes:
* #defines not provided by OpenLDAP were copied into slapi-plugin.h and protected with #ifndef blocks
* where it made sense, I created slapi wrapper functions for things like URL and LDIF processing to abstract way the differences in the APIs
* I created a new file utf8.c which contains the UTF8 functions from MozLDAP - this is only compiled when using OpenLDAP
* I tried to clean up the code - use the _ext versions of LDAP functions everywhere since the older versions should be considered deprecated
* I removed some unused code
NOTE that this should still be considered a work in progress since it depends on functionality not yet present in a released version of OpenLDAP, for NSS crypto and for the LDIF public API.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
These changes allow the server to be built with OpenLDAP (2.4.17+). A brief summary of the changes:
* #defines not provided by OpenLDAP were copied into slapi-plugin.h and protected with #ifndef blocks
* where it made sense, I created slapi wrapper functions for things like URL and LDIF processing to abstract way the differences in the APIs
* I created a new file utf8.c which contains the UTF8 functions from MozLDAP - this is only compiled when using OpenLDAP
* I tried to clean up the code - use the _ext versions of LDAP functions everywhere since the older versions should be considered deprecated
* I removed some unused code
NOTE that this should still be considered a work in progress since it depends on functionality not yet present in a released version of OpenLDAP, for NSS crypto and for the LDIF public API.
</pre>
</div>
</content>
</entry>
<entry>
<title>Bug Description: Need to address 64-bit compiler warnings - part 1</title>
<updated>2008-10-08T17:29:05+00:00</updated>
<author>
<name>Rich Megginson</name>
<email>rmeggins@redhat.com</email>
</author>
<published>2008-10-08T17:29:05+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/edewata/public_git/ds.git/commit/?id=b3797a8704696ed77b69a042e75ce5553e24b68b'/>
<id>b3797a8704696ed77b69a042e75ce5553e24b68b</id>
<content type='text'>
Reviewed by: nhosoi (Thanks!)
Fix Description: The intptr_t and uintptr_t are types which are defined as integer types that are the same size as the pointer (void *) type.  On the platforms we currently support, this is the same as long and unsigned long, respectively (ILP32 and LP64).  However, intptr_t and uintptr_t are more portable.  These can be used to assign a value passed as a void * to get an integer value, then "cast down" to an int or PRBool, and vice versa.  This seems to be a common idiom in other applications where values must be passed as void *.
For the printf/scanf formats, there is a standard header called inttypes.h which defines formats to use for various 64 bit quantities, so that you don't need to figure out if you have to use %lld or %ld for a 64-bit value - you just use PRId64 which is set to the correct value.  I also assumed that size_t is defined as the same size as a pointer so I used the PRIuPTR format macro for size_t.
I removed many unused variables and some unused functions.
I put parentheses around assignments in conditional expressions to tell the compiler not to complain about them.
I cleaned up some #defines that were defined more than once.
I commented out some unused goto labels.
Some of our header files shared among several source files define static variables.  I made it so that those variables are not defined unless a macro is set in the source file.  This avoids a lot of unused variable warnings.
I added some return values to functions that were declared as returning a value but did not return a value.  In all of these cases no one was checking the return value anyway.
I put explicit parentheses around cases like this: expr || expr &amp;&amp; expr - the &amp;&amp; has greater precedence than the ||.  The compiler complains because it wants you to make sure you mean expr || (expr &amp;&amp; expr), not (expr || expr) &amp;&amp; expr.
I cleaned up several places where the compiler was complaining about possible use of uninitialized variables.  There are still a lot of these cases remaining.
There are a lot of warnings like this:
lib/ldaputil/certmap.c:1279: warning: dereferencing type-punned pointer will break strict-aliasing rules
These are due to our use of void ** to pass in addresses of addresses of structures.  Many of these are calls to slapi_ch_free, but many are not - they are cases where we do not know what the type is going to be and may have to cast and modify the structure or pointer.  I started replacing the calls to slapi_ch_free with slapi_ch_free_string, but there are many many more that need to be fixed.
The dblayer code also contains a fix for https://bugzilla.redhat.com/show_bug.cgi?id=463991 - instead of checking for dbenv-&gt;foo_handle to see if a db "feature" is enabled, instead check the flags passed to open the dbenv.  This works for bdb 4.2 through bdb 4.7 and probably other releases as well.
Platforms tested: RHEL5 x86_64, Fedora 8 i386
Flag Day: no
Doc impact: no
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Reviewed by: nhosoi (Thanks!)
Fix Description: The intptr_t and uintptr_t are types which are defined as integer types that are the same size as the pointer (void *) type.  On the platforms we currently support, this is the same as long and unsigned long, respectively (ILP32 and LP64).  However, intptr_t and uintptr_t are more portable.  These can be used to assign a value passed as a void * to get an integer value, then "cast down" to an int or PRBool, and vice versa.  This seems to be a common idiom in other applications where values must be passed as void *.
For the printf/scanf formats, there is a standard header called inttypes.h which defines formats to use for various 64 bit quantities, so that you don't need to figure out if you have to use %lld or %ld for a 64-bit value - you just use PRId64 which is set to the correct value.  I also assumed that size_t is defined as the same size as a pointer so I used the PRIuPTR format macro for size_t.
I removed many unused variables and some unused functions.
I put parentheses around assignments in conditional expressions to tell the compiler not to complain about them.
I cleaned up some #defines that were defined more than once.
I commented out some unused goto labels.
Some of our header files shared among several source files define static variables.  I made it so that those variables are not defined unless a macro is set in the source file.  This avoids a lot of unused variable warnings.
I added some return values to functions that were declared as returning a value but did not return a value.  In all of these cases no one was checking the return value anyway.
I put explicit parentheses around cases like this: expr || expr &amp;&amp; expr - the &amp;&amp; has greater precedence than the ||.  The compiler complains because it wants you to make sure you mean expr || (expr &amp;&amp; expr), not (expr || expr) &amp;&amp; expr.
I cleaned up several places where the compiler was complaining about possible use of uninitialized variables.  There are still a lot of these cases remaining.
There are a lot of warnings like this:
lib/ldaputil/certmap.c:1279: warning: dereferencing type-punned pointer will break strict-aliasing rules
These are due to our use of void ** to pass in addresses of addresses of structures.  Many of these are calls to slapi_ch_free, but many are not - they are cases where we do not know what the type is going to be and may have to cast and modify the structure or pointer.  I started replacing the calls to slapi_ch_free with slapi_ch_free_string, but there are many many more that need to be fixed.
The dblayer code also contains a fix for https://bugzilla.redhat.com/show_bug.cgi?id=463991 - instead of checking for dbenv-&gt;foo_handle to see if a db "feature" is enabled, instead check the flags passed to open the dbenv.  This works for bdb 4.2 through bdb 4.7 and probably other releases as well.
Platforms tested: RHEL5 x86_64, Fedora 8 i386
Flag Day: no
Doc impact: no
</pre>
</div>
</content>
</entry>
</feed>
