Граф коммитов

213 Коммитов

Автор SHA1 Сообщение Дата
anton.bobrov%sun.com e868831aa5 Bug 355244 merging Sun and Mozilla libssldap 2006-10-10 13:37:35 +00:00
nkinder%redhat.com 7d1c4e3d1d 355742 - Changed search order for sasl.h to simplify build 2006-10-06 17:50:26 +00:00
richm%stanfordalumni.org 0390b62676 checked in test script instead of real one 2006-10-06 02:59:48 +00:00
richm%stanfordalumni.org a1f147131c Bug: 355434
Description: Change LDAP C SDK version to 6
Fix Description: Change the version to major 6, minor 0, and submin/patch 0.  The change is in various places in the build makefiles and header files.  The shared lib suffix is now 60 (from 50).
In a somewhat unrelated change, the configure script had to change to allow
building with the RPM spec %configure macro on rhel/fedora.  That macro
defines --host, --build, and --target, and defines --host different than
--target.  This caused configure to think it was doing a cross compilation.
Instead, the correct cross compilation trigger is if --host is specified and
it is different than --build.  However, the mozilla builds expect to be able
to pass in --host different than --target, so all of these different
combinations had to be accomodated.
2006-10-05 23:01:43 +00:00
richm%stanfordalumni.org 7654c90cd7 Bug: 348366
Description: ber_printf support for O format
Fix Description: When calling ber_printf with the 'O' format, the corresponding argument must be a struct berval *.  If the bval argument is NULL, nothing is written (i.e. it is safe to use a NULL here).  Otherwise, bval->bv_len bytes from bval->bv_val will be written to the output.
2006-10-04 14:46:28 +00:00
richm%stanfordalumni.org f4a6bf3d6b Bug: 339298
Description: Merge sun libprldap changes on to trunk
Fix Description: Pretty much the same as the fixes made for bugs 352519 352673 on the sun_merge_branch_20060523, this just merges those changes on to the trunk.  One additional change is the removal of an unused variable.
2006-10-04 14:37:27 +00:00
richm%stanfordalumni.org 1edab7d4ef Bug: 339298
Description: Merge sun_merge_branch_20060523 changes into trunk.
Fix Description: I had to change re_encode_request to use the new ber types.  Other than that, these merges are basically the sasl, ipv6, and ber types code already committed to the sun merge branch.
2006-10-03 20:43:42 +00:00
richm%stanfordalumni.org a29ecb0502 Bug: 348926
Description: Memleak: ldap_start_tls_s should free oidptr and dataptr
Fix Description: Just omit oidptr and dataptr and pass NULL for those arguments to ldap_extended_operation_s().
Bug: 348927
Description: Memleak: ldaptls_complete should free hostlist
Fix Description: Instead of returning directly from early error conditions, just goto the error handling code, and let that code free hostlist and do the other cleanup.  I had to make sure all relevant variables were initialized to NULL in order for cleanup to work properly.
2006-08-17 19:21:03 +00:00
richm%stanfordalumni.org da48ce19cd Bug: 347033
Description: The client must call ldapssl_enable_clientauth before the first operation.  This means before ldap_start_tls_s in the case of startTLS.  However, the certname and keypassword (if any) are stored in the connection context.  ldapssl_enable_clientauth will now allocate and store this connection context if it doesn't already exist, then set the certname and keypassword.
2006-08-04 14:05:38 +00:00
richm%stanfordalumni.org ed47a40064 Bug: 332159
Fix Description: Free lfdp->lfd_curval - it is now allocated in ldap_getfirstfilter() as a copy of the value passed in to that function.
2006-08-02 22:42:54 +00:00
richm%stanfordalumni.org dd56216f2b Bug: 332159
Fix Description: Make a copy of the value parameter passed into ldap_getfirstfilter() and store it in lfd_curval.  Free it in the LDAPFiltDesc free function.
2006-08-02 22:40:59 +00:00
richm%stanfordalumni.org f8a1eec78e Bug: 347033
Fix Description: Using the -Z flag sets the secure option, but using -ZZ (use starttls) does not.  The code in several places uses a test like if (secure || isZZ) to see if it has to perform some sort of ssl/tls related initialization.  The one place that was missed was before the call to PinArgRegistration() which was just if (secure).
2006-08-02 20:05:36 +00:00
richm%stanfordalumni.org 85e64ad979 Bug: 201483
Fix Description: Replaced PK11_FindCertFromNickname() with CERT_FindUserCertByUsage(), using a cert usage of SSL Client.  This should only find certs that are used for SSL Clients, which is the type of cert we want in this context (as opposed to e.g. an email signing cert).  The LDAPSSLSessionInfo* ssip is passed now as the context argument.  Moved calling PK11_SetPasswordFunc before CERT_FindUserCertByUsage() in case CERT_FindUserCertByUsage() needs it for some reason.
2006-08-02 20:00:42 +00:00
richm%stanfordalumni.org 51f4a2a5e4 Bug: 300482
Fix Description: First look for a return of < 0 from ldap_count_entries, and return LDAP_PARAM_ERROR in that case (in both keysort and multisort).  Then, if count < 2, there is nothing to sort, so just return 0.
2006-08-01 16:40:31 +00:00
richm%stanfordalumni.org 74356e6d35 Bug: 346575
Fix Description: The default now is to not use RPATH when building shared libraries and executables.  The configure flag --with-rpath[=dir] has been added.  The dir is optional, and a default will be used if not given.
2006-08-01 15:47:14 +00:00
richm%stanfordalumni.org f1f22d3455 Bug: 323064
Fix Description: If there is a scope given in the reference/referral URL, use it.  Otherwise, if the URL is for a search reference (continuation reference) result, comply with RFC4511 section 4.5.3 concerning scope.  Otherwise, parse the scope from the original request and just use it.
Note that this fix does not address support for filters in referrals/references.  Support for filters will require a great deal more changes.  The current version of openldap (2.3.x) does not support filters, so this fix at least brings us up to par with openldap with respect to this feature.
2006-08-01 14:57:38 +00:00
richm%stanfordalumni.org 2af36c017f new - helps build RPM packages 2006-06-22 22:11:46 +00:00
richm%stanfordalumni.org 737094fd8d remove from head 2006-05-19 20:27:03 +00:00
richm%stanfordalumni.org aeb8a170b9 Initial import of the Sun C SDK back into mozilla 2006-05-19 20:17:48 +00:00
cls%seawood.org e723d0e1c2 Properly quote m4 macro definitions.
Thanks to Patrick Welche <pw-fb@newn.cam.ac.uk> for the patch.
Bug #298457 r=cls
2006-05-16 05:39:16 +00:00
richm%stanfordalumni.org d105e63963 Bug: 334561
Description: Clean up spec file for RPM build
Fix Description: Make the spec files use the conventions used by the Fedora/Red Hat packaging system
2006-05-11 14:51:02 +00:00
richm%stanfordalumni.org adeeba1cb8 Bug: 334763
Description: Fix build to allow building command line tools without svrcore
Fix Description: Should allow the command line tools to be built without svrcore.  Also fixed the problem with system svrcore.
2006-05-11 14:48:34 +00:00
richm%stanfordalumni.org 97c356a610 Bug: 337210
Description: ber_scanf sometimes gives incorrect return code on 64-bit
Fix: ber_get_boolean needs to get the return value of ber_get_int as an unsigned long and return that unsigned long value
2006-05-11 14:40:48 +00:00
richm%stanfordalumni.org fc920093d2 fix for bug 330255 - sasl bind does not respect LDAP_OPT_RECONNECT option
add some more invalid parameter checking to the ldap bind routines
When reconnecting, do not use the previous binddn and password
2006-04-20 02:16:25 +00:00
richm%stanfordalumni.org 22f84eb8ea only link with svrcore if HAVE_SVRCORE is set 2006-04-19 03:03:54 +00:00
richm%stanfordalumni.org b21649c298 generate configure using autoconf-2.13 2006-04-18 18:33:23 +00:00
richm%stanfordalumni.org 3e04746b1b Fix for bug 333406
I had made a change to make 64 bit builds the default on those platforms that
support 64 bit binaries.  However, the expected behavior for other mozilla
components is that you have to explicitly use --enable-64bit to make a 64
bit binary, and default to 32 bit binaries.  So, I made mozldap work like the
other components.
2006-04-11 21:12:58 +00:00
richm%stanfordalumni.org fea1eebb01 bug 327864
LDAP C-SDK support for Mac cross builds
Add a new configure option --with-macos-sdk=dir
2006-02-22 18:59:31 +00:00
richm%stanfordalumni.org 3bcf4f26e7 On HP-UX, we should not link against the libraries we depend on at runtime because it puts explicit version dependencies into the shared library we are creating. This makes it impossible to upgrade to a new version of nspr or nss. 2006-02-16 23:08:22 +00:00
richm%stanfordalumni.org 835adfc463 use = for sh string tests, not == 2006-02-15 00:33:08 +00:00
richm%stanfordalumni.org 72c0b5bc3f use SVRCORE_LIBS instead of SVRCORE_LIB_PATH 2006-02-14 21:51:42 +00:00
richm%stanfordalumni.org a705f22c0e Use SVRCORE_LIBS not SVRCORE_LIB_PATH 2006-02-14 21:49:10 +00:00
richm%stanfordalumni.org 100c150a17 bug 292793
Allow build on Mac OSX
1) There is no RPATH on Darwin, so undefine the RPATH macros before linking
2) Have to use g++ to link
3) The iconv functions are in libiconv
2006-02-10 23:14:00 +00:00
richm%stanfordalumni.org 6af1ffbe3e bug 325625
This fix allows the trunk ldap c sdk build to be used to build the mozilla client.  I was able to use this to build the mozilla 1_8 branch of thunderbird on Fedora Core 4.  Addressbook and typedown addressing work fine.
The gist of the fix is to completely ignore svrcore if not specified, and to imply --with-nspr if --with-mozilla is specified.  If not specified, the client build uses $(DIST)/include/nspr and $(DIST)/lib for the locations of the NSPR files.
2006-02-10 23:08:16 +00:00
richm%stanfordalumni.org b6944c6a11 Whoops - only use name.lib if OS_ARCH is WINNT 2006-02-04 01:32:39 +00:00
richm%stanfordalumni.org d007966ad2 bug 301035 and bug 325518
Enable autoconf build on Windows with cygwin and free MSVC compiler + SDK
1) Don't set the -lsvrcore in SVRCORE_LIBS in configure - instead, do it the
way we do the NSPR and NSS libs, in build.mk
2) For the component LINK macros, use name.lib instead of -lname on Windows
3) The new free MSVC compiler does not have lib.exe - add an autoconf test for
the lib program and use link /lib if missing
4) If using MSVC (which expects DOS style absolute paths) and cygwin (which
uses unix style abs. paths), use cygpath -m on all user supplied paths to make
sure they are in the correct format for cl and link.  It's better to do this
during configure rather than depend on cygwin_wrapper which is much, much
slower.
5) Don't link with the odbc libs (Why did we ever need these!?!??!?)
6) The free MSVC doesn't include afxwin.h, so use the other header files
instead
7) Add libutil to the Windows build, including getting rid of the old Makefile
and adding a new Makefile.in for the autoconf build (the Makefile.client
remains)
8) getopt.c doesn't need lber.h

I verified that these changes also build on Win2k with MSVC 6 SP 3.  I also changed the copyright in the new Makefile.in as suggested by Mark Smith.
2006-02-03 19:28:32 +00:00
richm%stanfordalumni.org dd4682e73a bug 324529
When the malloc fails in the 'v' or 'V' ber_scanf case, we need to break out of the loop and return with an LBER_DEFAULT code.  Also, in the realloc case, we need to save a copy of the old pointer and use either ber_svecfree ('v' case) or ber_bvecfree ('V' case) to clean up the memory.

bug 324525
If the malloc is done to allocate the *bv, but then an lber error is
encountered while doing the ber_skip_tag (due to a bad or malicious client),
the bv->bv_val is set to a random value.  If you then try to use ber_bvfree to
free the bv, it may call free on this uninitialized value, and badness ensues.
I think the proper fix is for ber_get_stringal to set (*bv)->bv_val to NULL and
(*bv)->bv_len to 0 just after the malloc.
2006-02-03 15:55:46 +00:00
richm%stanfordalumni.org 3c45c5ca52 bug 310521
also part of 301035 and 325518

Use $(srcdir) as the location for the .ex file
2006-02-03 15:36:14 +00:00
richm%stanfordalumni.org cbf147e4be fix nss version checking - add svrcore to pkg-config file - fix the way libraries and their symlinks are installed 2006-02-02 17:08:07 +00:00
richm%stanfordalumni.org 928b952409 Even though using --with-system-svrcore, still need to add -lsvrcore to
SVRCORE_LIBS even though we don't need to add the -L/path
2006-01-31 22:52:18 +00:00
richm%stanfordalumni.org a89ef6b382 Change --system-svrcore to --with-system-svrcore 2006-01-31 22:43:15 +00:00
richm%stanfordalumni.org d6a9f5bfb4 Use --system-svrcore with configure to force the build to use svrcore from /usr/include and /usr/lib 2006-01-31 22:08:06 +00:00
richm%stanfordalumni.org d5ba4e2d30 svrcore is installed in /usr/lib and /usr/include, so if the user specifies --system-svrcore
to configure, we can just assume we don't have to do any work to figure out the additional
paths to add to the include and lib paths.
2006-01-31 22:04:14 +00:00
richm%stanfordalumni.org 9ca6e8930c svrcore is installed in /usr/lib and /usr/include, so if the user specifies --system-svrcore
to configure, we can just assume we don't have to do any work to figure out the additional
paths to add to the include and lib paths.
2006-01-31 21:58:13 +00:00
richm%stanfordalumni.org 7ba86f9b3a bug 208655 - just needed to set the two_hosts argument for ldaptool_process_args in ldapcmp.c to pickup both hosts and ports 2006-01-18 23:19:42 +00:00
richm%stanfordalumni.org a47977f13f bug 184968 - only perform terminal manipulation if stdin is a terminal 2006-01-18 23:11:48 +00:00
richm%stanfordalumni.org 66fa3fd912 bug 322576
1) +DSblended can be omitted entirely - it's the default on IA, and ignored on
PA
2) +DD64 is supported on both IA and PA for B.11.23
3) The $ORIGIN linker flag should be added to any B.11.11 or later linker - the
patch to the linker to support this on B.11.11 is pretty old and should be
applied by any customer wanting a supported HP-UX system.  If for some reason
they don't have the patch, the presence of $ORIGIN just causes a couple of
extra path lookups that fail - no big deal.
2006-01-18 19:38:33 +00:00
richm%stanfordalumni.org 971400d4f8 Bug 323307
There were only a few places that needed to be changed.  I needed to change the
order of c++ and cc detection around in configure - it seems that if you do the
cross compilation stuff first, it messes up the "regular" case, which is the
more important one.  In order for the GNU_CC tests to work, you must define
CC=gcc and CXX=g++ on the configure command line.  If building 64 bit, you must
also specify CFLAGS=-m64 and CXXFLAGS=-m64.  I also removed the extra arguments
for static library building as they were not only not necessary but they were
also making the build abort.
2006-01-18 03:46:52 +00:00
richm%stanfordalumni.org 0b500db9b0 bug 323374
Mem and resource leaks in ldapsinit.c
1) I'm pretty sure the reference to socket should be fd instead.  I don't know
why it compiled with socket in there . . . note to self: read compiler warnings
. . .
2) The cert returned by SSL_PeerCertificate is "dup"ed, so we need to call
CERT_DestroyCertificate to release it otherwise we'll leak references.
3) The hostname returned by SSL_RevealURL is strduped and must be freed.
Reviewed by Mark and Pete (Thanks!)
2006-01-17 14:53:57 +00:00
richm%stanfordalumni.org 7d8320ff17 bug 323188: Link order is important when building executables
It also seems to be important in certain cases when using g++
to build shared libraries.
I was having weird errors building the CLUs on linux x86_64.  These turned out to be due to the incorrect ordering of objects on the link line.

The LINK_EXE macro already has everything needed - it is not necessary to
supply extra libs in the form of the LDTOOLS_LIBS.  Just specify them in the
correct order in EXTRA_LIBS.  You don't need to set EXTRA_LIBS for every
platform - on *nix platforms, they are all the same, so just define them in a
common place in the correct order.  Use PLATFORMLIBS to specify platform
dependent libs.

The one tricky thing is that LINK_EXE expects OBJS to have all of the objects.
This works if you only build one executable per makefile, but this makefile
builds several, so you need to get the executable specific .obj file in the
link line as well.  I suppose I could have used target specific variable
assignment to OBJS, but that seemed messy to me, so I just added a $(filter ..)
to the LINK_EXE command which will add all of the .obj files specified in the
executable link target dependency list to the link line.  The filter is to
filter out libraries and other dependencies, which are usually specified
elsewhere.  This seems to work on linux x86_64 and HP IPF 64 just fine.
2006-01-13 15:35:45 +00:00