LDAPSunMerge: Difference between revisions
		
		
		
		
		
		Jump to navigation
		Jump to search
		
				
		
		
	
|  (Added analysis of tools source directory differences) | No edit summary | ||
| Line 1: | Line 1: | ||
| This page is to track the work to merge the Sun LDAP C SDK codebase back into mozilla. | This page is to track the work to merge the Sun LDAP C SDK codebase back into mozilla. | ||
| === liblber === | |||
| * Sun is using ber typedefs for the ber tags, lengths, sizes, and they are using the same typedefs as OpenLDAP uses (e.g. see /usr/include/lber_types.h on a linux system).  This will help with OpenLDAP compatability. | |||
| * decode.c - Sun added explicit boundary checking for bad ber lengths, and explicit freeing of allocated buffers upon ber failures | |||
| * in io.c - Sun has a slightly different implementation of BerRead, as well as several other improvements in ber i/o (tunable buffer size, ber stats, and much more) | |||
| * nsldap_ber_realloc - The Sun version keeps track of the number of reallocs | |||
| === libldap === | |||
| * abandon.c - Quite a bit of work on abandon ops in Sun branch. | |||
| * authzidctrl.c - New file in Sun branch. | |||
| * cache.c - Simple printf format type difference (%d vs. %ld). Looks to be newer in Moz tip. | |||
| * charray.c - Looks to be newer code in Moz tip. | |||
| * cldap.c - Simple LDAP version const difference. | |||
| * compat.c - Sun branch implments nsldapi_compat_strlcpy.  Moz tip has an HPUX11 specific ifdef. | |||
| * control.c - Sun branch uses new ber types. | |||
| * disptmpl.c - Two refactored functions, nsldapi_free_strarray and nsldapi_next_line_tokens. Not sure which code is more recent. | |||
| * dsparse.c - Use of refactored functions nsldapi_free_strarray and nsldapi_next_line_tokens. | |||
| * error.c - Both sides have some general cleanup.  Moz tip adds checking for availability of snprintf before using it.  Sun branch adds some frees and has better variable initialization. | |||
| * extendop.c - Sun branch uses new ber types.  Differences in a ber_printf section.  Both very similar, but a few minor differences around an empty ber value.  Need to look into this closer to see which is better. | |||
| * getattr.c - Sun branch uses new ber types. | |||
| * getdn.c - Sun branch has a few small changes.  It has better variable initialization and uses a flag for finding the beginning quote when parsing. | |||
| * getdxbyname.c - Moz tip has some additional error checking. | |||
| * geteffectiverightsctrl.c - New file in Sun branch. | |||
| * getfilter.c - Use of refactored functions nsldapi_free_strarray and nsldapi_next_line_tokens.  Moz tip adds checking for availability of snprintf before using it. | |||
| * getoption.c - Sun branch adds SASL options plus LDAP_OPT_NOREBIND and LDAP_X_OPT_SOCKBUF.  Moz tip has LDAP_OPT_EXTRA_THREAD_FN_PTRS. | |||
| * globals.c - New file in Sun branch. | |||
| * ldap-int.h - Moz tip has more platform specific ifdefs.  Sun branch has some FD_SETSIZE and SASL changes.  Various other refactoring, etc. | |||
| * Makefile.client - Sun branch adds new source files, SASL linking and includes.  A few other differences. | |||
| * Makefile.in - A whole bunch of differences related to the changes in Makefile.client. | |||
| * memcache.c - Some differences in hash_result use.  Moz tip seems to be clearer code that does the same thing, but we need to look closer.  Moz tip also has some additional casting, etc. | |||
| * open.c - Sun branch has new SASL code.  A bunch of platform ifdefs around pthreads between the two code bases. | |||
| * os-ip.c - Sun branch has new SASL code.  Moz tip looks to have some newer Windows related code and a bunch of ifdef NSLDAPI_AVOID_OS_SOCKETS code that the Sun branch doesn't have. | |||
| * psearch.c - Sun branch uses new ber types. | |||
| * pwmodext.c - New file in Sun branch. | |||
| * pwpctrl.c - New file in Sun branch. | |||
| * request.c - Lots of differences here.  We'll need to go through this very closely. | |||
| * result.c - Lots of differences here.  We'll need to go through this very closely. | |||
| * sasl.c - New file in Sun branch. | |||
| * saslbind.c - Sun branch adds some code to deal with controls.  Also uses new ber types. | |||
| * search.c - Refactoring of ldap_put_filter vs. put_filter. | |||
| * setoption.c - Sun branch adds new SASL code and NOREBIND option.  A few other minor differences. | |||
| * sortctrl.c - Sun branch uses new ber types. | |||
| * srchpref.c - Uses refactored functions nsldapi_free_strarray and nsldapi_next_line_tokens. | |||
| * svrcore.c - New file in Sun branch | |||
| * test.c - Moz tip code looks newer. | |||
| * uactrl.c - New file in Sun branch. | |||
| * unbind.c - Sun branch adds new SASL code.  Also a ber flush difference. | |||
| * url.c - Sun branch exposes nsldapi_url_parse as ldap_url_parse_no_defaults. | |||
| * utf8.c - Small variable initialization difference.  Moz tip looks more correct. | |||
| * vlistctrl.c - Small variable type difference.  Moz tip looks more correct. | |||
| * whoami.c - New file in Sun branch. | |||
| === tools === | |||
| * common.c - Moz tip has some ARGPIN stuff and some platform ifdefs.  Sun has some SASL code.  Differences around pwpolicy and TLS/SSL/FORTEZZA.  The diffs are large for this file, so we'll need to go through it closely. | |||
| * convutf8.c - Moz tip uses iconv while Sun branch uses ICU.  Moz tip also has some Windows specific stuff.  We need to go through this closely. | |||
| * fileurl.c - A few minor differences with file url parsing.  Should be an easy merge. | |||
| * ldapcmp.c - A few function return type differences.  Moz tip looks more correct at first glance.  Moz tip also appears to have a few fixes for things such as specifying multiple host arguments. | |||
| * ldapcompare.c - A few minor differences.  Should be an easy merge. | |||
| * ldapdelete.c - Sun branch appears to have some new code, but a comment indicates that it broke iDS.  We should review this before merging. | |||
| * ldapmodify.c - Some minor fixes appear to be in the Moz tip.  Very little new from the Sun branch.  Should be an easy merge. | |||
| * ldapmodrdn.c - Minor difference in the way main is defined.  Sun branch is more clear. | |||
| * ldappasswd.c - New file in Sun branch. | |||
| * ldapsearch.c - A few function return type differences, casting, usage message differences, and SASL option differences.  A small amount of ICU vs. iconv related stuff.  Sun branch has some get effective rights stuff.  We'll need to go through this closely. | |||
| * ldaptool.h - Sun branch has some get effective rights, password related code, and linked-list structures that appear to be used for recursive entry deletion by ldapdelete. | |||
| * ldaptool-sasl.c - New file in Sun branch. | |||
| * ldaptool-sasl.h - New file in Sun branch. | |||
| * list.c - New file in Sun branch. | |||
| * list.h - New file in Sun branch. | |||
| * Makefile.client - General build differences for SASL, ICU, svrcore, new source files, platform stuff, etc. | |||
| * Options.txt - Command-line options.  Mozilla tip look more up-to-date.  I'm not sure if this file was kept in sync with the actual options used in the Sun branch. | |||
| * tools.mak - New file in Sun branch. | |||
Revision as of 23:14, 25 May 2006
This page is to track the work to merge the Sun LDAP C SDK codebase back into mozilla.
liblber
- Sun is using ber typedefs for the ber tags, lengths, sizes, and they are using the same typedefs as OpenLDAP uses (e.g. see /usr/include/lber_types.h on a linux system). This will help with OpenLDAP compatability.
- decode.c - Sun added explicit boundary checking for bad ber lengths, and explicit freeing of allocated buffers upon ber failures
- in io.c - Sun has a slightly different implementation of BerRead, as well as several other improvements in ber i/o (tunable buffer size, ber stats, and much more)
- nsldap_ber_realloc - The Sun version keeps track of the number of reallocs
libldap
- abandon.c - Quite a bit of work on abandon ops in Sun branch.
- authzidctrl.c - New file in Sun branch.
- cache.c - Simple printf format type difference (%d vs. %ld). Looks to be newer in Moz tip.
- charray.c - Looks to be newer code in Moz tip.
- cldap.c - Simple LDAP version const difference.
- compat.c - Sun branch implments nsldapi_compat_strlcpy. Moz tip has an HPUX11 specific ifdef.
- control.c - Sun branch uses new ber types.
- disptmpl.c - Two refactored functions, nsldapi_free_strarray and nsldapi_next_line_tokens. Not sure which code is more recent.
- dsparse.c - Use of refactored functions nsldapi_free_strarray and nsldapi_next_line_tokens.
- error.c - Both sides have some general cleanup. Moz tip adds checking for availability of snprintf before using it. Sun branch adds some frees and has better variable initialization.
- extendop.c - Sun branch uses new ber types. Differences in a ber_printf section. Both very similar, but a few minor differences around an empty ber value. Need to look into this closer to see which is better.
- getattr.c - Sun branch uses new ber types.
- getdn.c - Sun branch has a few small changes. It has better variable initialization and uses a flag for finding the beginning quote when parsing.
- getdxbyname.c - Moz tip has some additional error checking.
- geteffectiverightsctrl.c - New file in Sun branch.
- getfilter.c - Use of refactored functions nsldapi_free_strarray and nsldapi_next_line_tokens. Moz tip adds checking for availability of snprintf before using it.
- getoption.c - Sun branch adds SASL options plus LDAP_OPT_NOREBIND and LDAP_X_OPT_SOCKBUF. Moz tip has LDAP_OPT_EXTRA_THREAD_FN_PTRS.
- globals.c - New file in Sun branch.
- ldap-int.h - Moz tip has more platform specific ifdefs. Sun branch has some FD_SETSIZE and SASL changes. Various other refactoring, etc.
- Makefile.client - Sun branch adds new source files, SASL linking and includes. A few other differences.
- Makefile.in - A whole bunch of differences related to the changes in Makefile.client.
- memcache.c - Some differences in hash_result use. Moz tip seems to be clearer code that does the same thing, but we need to look closer. Moz tip also has some additional casting, etc.
- open.c - Sun branch has new SASL code. A bunch of platform ifdefs around pthreads between the two code bases.
- os-ip.c - Sun branch has new SASL code. Moz tip looks to have some newer Windows related code and a bunch of ifdef NSLDAPI_AVOID_OS_SOCKETS code that the Sun branch doesn't have.
- psearch.c - Sun branch uses new ber types.
- pwmodext.c - New file in Sun branch.
- pwpctrl.c - New file in Sun branch.
- request.c - Lots of differences here. We'll need to go through this very closely.
- result.c - Lots of differences here. We'll need to go through this very closely.
- sasl.c - New file in Sun branch.
- saslbind.c - Sun branch adds some code to deal with controls. Also uses new ber types.
- search.c - Refactoring of ldap_put_filter vs. put_filter.
- setoption.c - Sun branch adds new SASL code and NOREBIND option. A few other minor differences.
- sortctrl.c - Sun branch uses new ber types.
- srchpref.c - Uses refactored functions nsldapi_free_strarray and nsldapi_next_line_tokens.
- svrcore.c - New file in Sun branch
- test.c - Moz tip code looks newer.
- uactrl.c - New file in Sun branch.
- unbind.c - Sun branch adds new SASL code. Also a ber flush difference.
- url.c - Sun branch exposes nsldapi_url_parse as ldap_url_parse_no_defaults.
- utf8.c - Small variable initialization difference. Moz tip looks more correct.
- vlistctrl.c - Small variable type difference. Moz tip looks more correct.
- whoami.c - New file in Sun branch.
tools
- common.c - Moz tip has some ARGPIN stuff and some platform ifdefs. Sun has some SASL code. Differences around pwpolicy and TLS/SSL/FORTEZZA. The diffs are large for this file, so we'll need to go through it closely.
- convutf8.c - Moz tip uses iconv while Sun branch uses ICU. Moz tip also has some Windows specific stuff. We need to go through this closely.
- fileurl.c - A few minor differences with file url parsing. Should be an easy merge.
- ldapcmp.c - A few function return type differences. Moz tip looks more correct at first glance. Moz tip also appears to have a few fixes for things such as specifying multiple host arguments.
- ldapcompare.c - A few minor differences. Should be an easy merge.
- ldapdelete.c - Sun branch appears to have some new code, but a comment indicates that it broke iDS. We should review this before merging.
- ldapmodify.c - Some minor fixes appear to be in the Moz tip. Very little new from the Sun branch. Should be an easy merge.
- ldapmodrdn.c - Minor difference in the way main is defined. Sun branch is more clear.
- ldappasswd.c - New file in Sun branch.
- ldapsearch.c - A few function return type differences, casting, usage message differences, and SASL option differences. A small amount of ICU vs. iconv related stuff. Sun branch has some get effective rights stuff. We'll need to go through this closely.
- ldaptool.h - Sun branch has some get effective rights, password related code, and linked-list structures that appear to be used for recursive entry deletion by ldapdelete.
- ldaptool-sasl.c - New file in Sun branch.
- ldaptool-sasl.h - New file in Sun branch.
- list.c - New file in Sun branch.
- list.h - New file in Sun branch.
- Makefile.client - General build differences for SASL, ICU, svrcore, new source files, platform stuff, etc.
- Options.txt - Command-line options. Mozilla tip look more up-to-date. I'm not sure if this file was kept in sync with the actual options used in the Sun branch.
- tools.mak - New file in Sun branch.