]> git.sur5r.net Git - openldap/commitdiff
New version management code
authorKurt Zeilenga <kurt@openldap.org>
Sat, 29 Mar 2003 16:45:42 +0000 (16:45 +0000)
committerKurt Zeilenga <kurt@openldap.org>
Sat, 29 Mar 2003 16:45:42 +0000 (16:45 +0000)
back-bdb cache/dbcache fixes
oidm destroy fix

28 files changed:
build/lib.mk
build/mkrelease
build/mkvers.bat [new file with mode: 0755]
build/mkversion
build/mod.mk
build/top.mk
build/version.h [new file with mode: 0644]
build/version.sh
build/version.var [new file with mode: 0644]
clients/tools/Makefile.in
clients/tools/ldapcompare.c
clients/tools/ldapcompare.dsp
clients/tools/ldapdelete.dsp
clients/tools/ldapmodify.dsp
clients/tools/ldapmodrdn.dsp
clients/tools/ldappasswd.dsp
clients/tools/ldapsearch.dsp
clients/tools/ldapwhoami.dsp
include/setup.mak
servers/slapd/Makefile.in
servers/slapd/back-bdb/back-bdb.h
servers/slapd/back-bdb/cache.c
servers/slapd/back-bdb/dbcache.c
servers/slapd/back-bdb/init.c
servers/slapd/oidm.c
servers/slapd/operation.c
servers/slapd/proto-slap.h
servers/slurpd/Makefile.in

index 6a4527c8c1197fff3f918f4a53cb60ad421a8da4..0f84b2016edc789e03bacb8d06b3e857e43da5aa 100644 (file)
@@ -9,10 +9,12 @@
 
 all-common: $(LIBRARY) $(PROGRAMS)
 
-version.c: $(OBJS)
+version.c: Makefile
        $(RM) $@
        $(MKVERSION) $(LIBRARY) > $@
 
+version.o version.lo: version.c $(OBJS)
+
 install-common: FORCE
 
 lint: lint-local FORCE
index 906a78ab8920145741974d4e3138be2a5fb069f0..bbbcca4d910696896e5bee6db7455744b6e25c9d 100755 (executable)
@@ -42,7 +42,7 @@ if test ! -e $RELNAME/build/version.sh ; then
        exit 1
 fi
 
-. $RELNAME/build/version.sh
+eval `$RELNAME/build/version.sh`
 
 tar cf $RELNAME.tar $RELNAME
 gzip -9 -c $RELNAME.tar > $RELNAME.tgz
diff --git a/build/mkvers.bat b/build/mkvers.bat
new file mode 100755 (executable)
index 0000000..fb943c6
--- /dev/null
@@ -0,0 +1,18 @@
+:: $OpenLDAP$
+:: Copyright 1998-2003 The OpenLDAP Foundation
+:: COPYING RESTRICTIONS APPLY.  See COPYRIGHT File in top level directory
+:: of this package for details.
+::
+:: Create a version.c file from build/version.h
+::
+
+:: usage: mkvers.bat <path/version.h>, <version.c>, <appname>, <static>
+
+copy %1 %2
+(echo. ) >> %2
+(echo #include "portable.h") >> %2
+(echo. ) >> %2
+(echo %4 const char __Version[] =) >> %2
+(echo "@(#) $" OPENLDAP_PACKAGE ": %3 " OPENLDAP_VERSION) >> %2
+(echo " (" __DATE__ " " __TIME__ ") $\n") >> %2
+(echo "\t%USERNAME%@%COMPUTERNAME% %CD:\=/%\n";) >> %2
index 052a962416ff02b14869e5239e9b710f9bf39012..efa6e65050d2eb3f03a6cd32196f7004b78f8534 100755 (executable)
@@ -42,7 +42,6 @@ if test $# != 1 ; then
 fi
 
 APPLICATION=$1
-WHEN=`date`
 WHOWHERE="$USER@`uname -n`:`pwd`"
 
 cat << __EOF__
@@ -56,6 +55,6 @@ static const char copyright[] =
 "COPYING RESTRICTIONS APPLY\n";
 
 $static $const char $SYMBOL[] =
-"@(#) \$$PACKAGE: $APPLICATION $VERSION ($WHEN) \$\n\t$WHOWHERE\n";
+"@(#) \$$PACKAGE: $APPLICATION $VERSION (" __DATE__ " " __TIME__ ") \$\n\t$WHOWHERE\n";
 
 __EOF__
index f8778179f6cd2070f0ee69672b80a65e8a019c22..0ccd2e424ca7967f1f04793b4444daf26c2ef21c 100644 (file)
@@ -22,10 +22,12 @@ all-no lint-no 5lint-no depend-no install-no: FORCE
 
 all-common: all-$(BUILD_MOD)
 
-version.c: $(OBJS)
+version.c: Makefile
        $(RM) $@
        $(MKVERSION) $(LIBBASE) > $@
 
+version.lo: version.c $(OBJS)
+
 $(LIBRARY): version.lo
        $(LTLINK_MOD) -module -o $@ $(OBJS) version.lo $(LINK_LIBS)
 
index 32de10d5a22eb9b26af385eaec87ed63b4494882..bcfb0d6088490359c6db74c51c36fa35b63132fb 100644 (file)
@@ -66,7 +66,7 @@ LIBVERSION = @OPENLDAP_LIBVERSION@
 LTVERSION = -version-info $(LIBVERSION)
 
 # libtool --only flag for libraries: platform specific
-NT_LTONLY_LIB = --only-$(BUILD_LIBS_DYNAMIC)
+NT_LTONLY_LIB = --only-$(BUILD_LIBS_DYNAMIC)
 LTONLY_LIB = $(@PLAT@_LTONLY_LIB)
 
 # libtool --only flag for modules: depends on linkage of module
diff --git a/build/version.h b/build/version.h
new file mode 100644 (file)
index 0000000..dc6dd39
--- /dev/null
@@ -0,0 +1,9 @@
+/*
+ * Copyright 1998-2003 The OpenLDAP Foundation
+ * COPYING RESTRICTIONS APPLY.  See COPYRIGHT file in top level directory
+ * of this package for details.
+ */
+
+static const char copyright[] =
+"Copyright 1998-2003 The OpenLDAP Foundation\n"
+"COPYING RESTRICTIONS APPLY\n";
index a6af31658d2278c82a0e9b0fcc3a663cd0956742..f2cf16fea07b2b02bfab5f0239cc84b23eaa110a 100755 (executable)
@@ -4,13 +4,8 @@
 ## COPYING RESTRICTIONS APPLY.  See COPYRIGHT File in top level directory
 ## of this package for details.
 #
-ol_package=OpenLDAP
-ol_major=2
-ol_minor=1
-ol_patch=X
-ol_api_inc=20116
-ol_api_lib=2:116:0
-ol_release_date="03-15-2003"
+DIR=`dirname $0`
+. $DIR/version.var
 
 if test $ol_patch != X ; then
        ol_version=${ol_major}.${ol_minor}.${ol_patch}
diff --git a/build/version.var b/build/version.var
new file mode 100644 (file)
index 0000000..6a13192
--- /dev/null
@@ -0,0 +1,13 @@
+#! /bin/sh
+# $OpenLDAP$
+## Copyright 2000-2003 The OpenLDAP Foundation
+## COPYING RESTRICTIONS APPLY.  See COPYRIGHT File in top level directory
+## of this package for details.
+#
+ol_package=OpenLDAP
+ol_major=2
+ol_minor=1
+ol_patch=X
+ol_api_inc=20116
+ol_api_lib=2:116:0
+ol_release_date="03-15-2003"
index 7685d1292e8bcf550544ad588a425f4322f8b082..4106c7f5ed570e9e0f473ebadafe315ff0a7ca36 100644 (file)
@@ -43,34 +43,47 @@ ldapwhoami: ldwversion.o
 ldapcompare: ldcversion.o
        $(LTLINK) -o $@ ldapcompare.o common.o ldcversion.o $(LIBS)
 
-ldsversion.c: ldapsearch.o common.o $(XLIBS)
+ldsversion.c: Makefile
        @-$(RM) $@
        $(MKVERSION) $(MKVOPTS) ldapsearch > $@
 
-ldmversion.c: ldapmodify.o common.o $(XLIBS)
+ldsversion.o: ldapsearch.o common.o $(XLIBS)
+
+ldmversion.c: Makefile
        @-$(RM) $@
        $(MKVERSION) $(MKVOPTS) ldapmodify > $@
 
-lddversion.c: ldapdelete.o common.o $(XLIBS)
+ldmversion.o: ldapmodify.o common.o $(XLIBS)
+
+lddversion.c: Makefile
        @-$(RM) $@
        $(MKVERSION) $(MKVOPTS) ldapdelete > $@
 
-ldpversion.c: ldappasswd.o common.o $(XLIBS)
+lddversion.o: ldapdelete.o common.o $(XLIBS)
+
+ldpversion.c: Makefile
        @-$(RM) $@
        $(MKVERSION) $(MKVOPTS) ldappasswd > $@
 
-ldrversion.c: ldapmodrdn.o common.o $(XLIBS)
+ldpversion.o: ldappasswd.o common.o $(XLIBS)
+
+ldrversion.c: Makefile
        @-$(RM) $@
        $(MKVERSION) $(MKVOPTS) ldapmodrdn > $@
 
-ldwversion.c: ldapwhoami.o common.o $(XLIBS)
+ldrversion.o: ldapmodrdn.o common.o $(XLIBS)
+
+ldwversion.c: Makefile
        @-$(RM) $@
        $(MKVERSION) $(MKVOPTS) ldapwhoami > $@
 
-ldcversion.c: ldapcompare.o common.o $(XLIBS)
+ldwversion.o: ldapwhoami.o common.o $(XLIBS)
+
+ldcversion.c: Makefile
        @-$(RM) $@
        $(MKVERSION) $(MKVOPTS) ldapcompare > $@
 
+ldcversion.o: ldapcompare.o common.o $(XLIBS)
 
 install-local: FORCE
        -$(MKDIR) $(DESTDIR)$(bindir)
index 18ea6efee7efa535efd181589a801297dab23932..ec865bf8453c10a16536767a5ee81025a3b8a40d 100644 (file)
@@ -28,7 +28,6 @@
 
 #include <ldap.h>
 
-#include "ldif.h"
 #include "lutil.h"
 #include "lutil_ldap.h"
 #include "ldap_defaults.h"
@@ -159,9 +158,6 @@ main( int argc, char **argv )
                }
        }
 
-       if ( debug )
-               ldif_debug = debug;
-
        ld = tool_conn_setup( 0, 0 );
 
        if ( pw_file || want_bindpw ) {
index ab31707cdc08a276a693a4c5c7d431a6275367b8..3100f9c4ba4af2329034bc25cee3dda6fc878651 100644 (file)
@@ -37,8 +37,8 @@ RSC=rc.exe
 
 # PROP BASE Use_MFC 0
 # PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "ldapdele"
-# PROP BASE Intermediate_Dir "ldapdele"
+# PROP BASE Output_Dir "ldapcomp"
+# PROP BASE Intermediate_Dir "ldapcomp"
 # PROP BASE Ignore_Export_Lib 0
 # PROP BASE Target_Dir ""
 # PROP Use_MFC 0
@@ -55,15 +55,15 @@ BSC32=bscmake.exe
 # ADD BASE BSC32 /nologo
 # ADD BSC32 /nologo
 LINK32=link.exe
-# ADD BASE LINK32 oldap32.lib olber32.lib olutil32.lib ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept /libpath:"..\..\libraries\Debug"
+# ADD BASE LINK32 oldap32.lib olber32.lib olutil32.lib ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
 # ADD LINK32 libsasl.lib ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept /libpath:"..\..\SDebug"
 
 !ELSEIF  "$(CFG)" == "ldapcompare - Win32 Single Release"
 
 # PROP BASE Use_MFC 0
 # PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "ldapdel0"
-# PROP BASE Intermediate_Dir "ldapdel0"
+# PROP BASE Output_Dir "ldapcom0"
+# PROP BASE Intermediate_Dir "ldapcom0"
 # PROP BASE Ignore_Export_Lib 0
 # PROP BASE Target_Dir ""
 # PROP Use_MFC 0
@@ -80,15 +80,15 @@ BSC32=bscmake.exe
 # ADD BASE BSC32 /nologo
 # ADD BSC32 /nologo
 LINK32=link.exe
-# ADD BASE LINK32 oldap32.lib olber32.lib olutil32.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /libpath:"..\..\libraries\Release"
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib sasl.lib libsasl.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /out:"SRelease/ldapcompare.exe" /libpath:"..\..\SRelease"
+# ADD BASE LINK32 oldap32.lib olber32.lib olutil32.lib ws2_32.lib /nologo /subsystem:console /machine:I386
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib sasl.lib libsasl.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /libpath:"..\..\SRelease"
 
 !ELSEIF  "$(CFG)" == "ldapcompare - Win32 Debug"
 
 # PROP BASE Use_MFC 0
 # PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "ldapdel1"
-# PROP BASE Intermediate_Dir "ldapdel1"
+# PROP BASE Output_Dir "ldapcom1"
+# PROP BASE Intermediate_Dir "ldapcom1"
 # PROP BASE Ignore_Export_Lib 0
 # PROP BASE Target_Dir ""
 # PROP Use_MFC 0
@@ -105,15 +105,15 @@ BSC32=bscmake.exe
 # ADD BASE BSC32 /nologo
 # ADD BSC32 /nologo
 LINK32=link.exe
-# ADD BASE LINK32 ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept /libpath:"..\..\libraries\Debug"
+# ADD BASE LINK32 ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
 # ADD LINK32 libsasl.lib ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept /libpath:"..\..\Debug"
 
 !ELSEIF  "$(CFG)" == "ldapcompare - Win32 Release"
 
 # PROP BASE Use_MFC 0
 # PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "ldapdel2"
-# PROP BASE Intermediate_Dir "ldapdel2"
+# PROP BASE Output_Dir "ldapcom2"
+# PROP BASE Intermediate_Dir "ldapcom2"
 # PROP BASE Ignore_Export_Lib 0
 # PROP BASE Target_Dir ""
 # PROP Use_MFC 0
@@ -130,8 +130,8 @@ BSC32=bscmake.exe
 # ADD BASE BSC32 /nologo
 # ADD BSC32 /nologo
 LINK32=link.exe
-# ADD BASE LINK32 ws2_32.lib /nologo /subsystem:console /machine:I386 /out:"Release/ldapcompare.exe" /libpath:"..\..\libraries\Release"
-# ADD LINK32 sasl.lib libsasl.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /out:"Release/ldapcompare.exe" /libpath:"..\..\Release"
+# ADD BASE LINK32 ws2_32.lib /nologo /subsystem:console /machine:I386
+# ADD LINK32 sasl.lib libsasl.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /libpath:"..\..\Release"
 
 !ENDIF 
 
@@ -148,6 +148,57 @@ SOURCE=.\common.c
 # Begin Source File
 
 SOURCE=.\ldapcompare.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\ldcversion.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\..\build\version.h
+
+USERDEP__VERSI="common.c"      "ldapcompare.c" "$(OUTDIR)\oldap32.lib" "$(OUTDIR)\olber32.lib" "$(OUTDIR)\oldif32.lib" "$(OUTDIR)\olutil32.lib"
+InputDir=..\..\build
+InputPath=..\..\build\version.h
+
+!IF  "$(CFG)" == "ldapcompare - Win32 Single Debug"
+
+# Begin Custom Build
+
+"ldcversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) ldcversion.c ldapcompare /**/
+
+# End Custom Build
+
+!ELSEIF  "$(CFG)" == "ldapcompare - Win32 Single Release"
+
+# Begin Custom Build
+
+"ldcversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) ldcversion.c ldapcompare /**/
+
+# End Custom Build
+
+!ELSEIF  "$(CFG)" == "ldapcompare - Win32 Release"
+
+# Begin Custom Build
+
+"ldcversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) ldcversion.c ldapcompare /**/
+
+# End Custom Build
+
+!ELSEIF  "$(CFG)" == "ldapcompare - Win32 Debug"
+
+# Begin Custom Build
+
+"ldcversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) ldcversion.c ldapcompare /**/
+
+# End Custom Build
+
+!ENDIF 
+
 # End Source File
 # End Target
 # End Project
index c136d67c8a08be01b2ea034e5000c1b87ae01b84..38576cc1359efce49a654ecb152e1be774e3e713 100644 (file)
@@ -55,7 +55,7 @@ BSC32=bscmake.exe
 # ADD BASE BSC32 /nologo
 # ADD BSC32 /nologo
 LINK32=link.exe
-# ADD BASE LINK32 oldap32.lib olber32.lib olutil32.lib ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept /libpath:"..\..\libraries\Debug"
+# ADD BASE LINK32 oldap32.lib olber32.lib olutil32.lib ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
 # ADD LINK32 libsasl.lib ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept /libpath:"..\..\SDebug"
 
 !ELSEIF  "$(CFG)" == "ldapdelete - Win32 Single Release"
@@ -80,8 +80,8 @@ BSC32=bscmake.exe
 # ADD BASE BSC32 /nologo
 # ADD BSC32 /nologo
 LINK32=link.exe
-# ADD BASE LINK32 oldap32.lib olber32.lib olutil32.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /libpath:"..\..\libraries\Release"
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib sasl.lib libsasl.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /out:"SRelease/ldapdelete.exe" /libpath:"..\..\SRelease"
+# ADD BASE LINK32 oldap32.lib olber32.lib olutil32.lib ws2_32.lib /nologo /subsystem:console /machine:I386
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib sasl.lib libsasl.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /libpath:"..\..\SRelease"
 
 !ELSEIF  "$(CFG)" == "ldapdelete - Win32 Debug"
 
@@ -105,7 +105,7 @@ BSC32=bscmake.exe
 # ADD BASE BSC32 /nologo
 # ADD BSC32 /nologo
 LINK32=link.exe
-# ADD BASE LINK32 ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept /libpath:"..\..\libraries\Debug"
+# ADD BASE LINK32 ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
 # ADD LINK32 libsasl.lib ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept /libpath:"..\..\Debug"
 
 !ELSEIF  "$(CFG)" == "ldapdelete - Win32 Release"
@@ -130,8 +130,8 @@ BSC32=bscmake.exe
 # ADD BASE BSC32 /nologo
 # ADD BSC32 /nologo
 LINK32=link.exe
-# ADD BASE LINK32 ws2_32.lib /nologo /subsystem:console /machine:I386 /out:"Release/ldapdelete.exe" /libpath:"..\..\libraries\Release"
-# ADD LINK32 sasl.lib libsasl.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /out:"Release/ldapdelete.exe" /libpath:"..\..\Release"
+# ADD BASE LINK32 ws2_32.lib /nologo /subsystem:console /machine:I386
+# ADD LINK32 sasl.lib libsasl.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /libpath:"..\..\Release"
 
 !ENDIF 
 
@@ -148,6 +148,57 @@ SOURCE=.\common.c
 # Begin Source File
 
 SOURCE=.\ldapdelete.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\lddversion.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\..\build\version.h
+
+USERDEP__VERSI="common.c"      "ldapdelete.c"  "$(OUTDIR)\oldap32.lib" "$(OUTDIR)\olber32.lib" "$(OUTDIR)\olutil32.lib"
+InputDir=..\..\build
+InputPath=..\..\build\version.h
+
+!IF  "$(CFG)" == "ldapdelete - Win32 Single Debug"
+
+# Begin Custom Build
+
+"lddversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) lddversion.c ldapdelete /**/
+
+# End Custom Build
+
+!ELSEIF  "$(CFG)" == "ldapdelete - Win32 Single Release"
+
+# Begin Custom Build
+
+"lddversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) lddversion.c ldapdelete /**/
+
+# End Custom Build
+
+!ELSEIF  "$(CFG)" == "ldapdelete - Win32 Release"
+
+# Begin Custom Build
+
+"lddversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) lddversion.c ldapdelete /**/
+
+# End Custom Build
+
+!ELSEIF  "$(CFG)" == "ldapdelete - Win32 Debug"
+
+# Begin Custom Build
+
+"lddversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) lddversion.c ldapdelete /**/
+
+# End Custom Build
+
+!ENDIF 
+
 # End Source File
 # End Target
 # End Project
index ffa4e68df826bf48d4ab0091b99a58d5206b3444..9c4264405a7a25baa2122e6bc6aa0ce6a8821293 100644 (file)
@@ -55,8 +55,8 @@ BSC32=bscmake.exe
 # ADD BASE BSC32 /nologo
 # ADD BSC32 /nologo
 LINK32=link.exe
-# ADD BASE LINK32 oldap32.lib olber32.lib oldif32.lib olutil32.lib ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept /libpath:"..\..\libraries\Debug"
-# ADD LINK32 libsasl.lib ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /out:"SDebug/ldapmodify.exe" /pdbtype:sept /libpath:"..\..\SDebug"
+# ADD BASE LINK32 oldap32.lib olber32.lib oldif32.lib olutil32.lib ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
+# ADD LINK32 libsasl.lib ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept /libpath:"..\..\SDebug"
 
 !ELSEIF  "$(CFG)" == "ldapmodify - Win32 Single Release"
 
@@ -80,8 +80,8 @@ BSC32=bscmake.exe
 # ADD BASE BSC32 /nologo
 # ADD BSC32 /nologo
 LINK32=link.exe
-# ADD BASE LINK32 oldap32.lib olber32.lib oldif32.lib olutil32.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /libpath:"..\..\libraries\Release"
-# ADD LINK32 sasl.lib libsasl.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /out:"SRelease/ldapmodify.exe" /libpath:"..\..\SRelease"
+# ADD BASE LINK32 oldap32.lib olber32.lib oldif32.lib olutil32.lib ws2_32.lib /nologo /subsystem:console /machine:I386
+# ADD LINK32 sasl.lib libsasl.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /libpath:"..\..\SRelease"
 
 !ELSEIF  "$(CFG)" == "ldapmodify - Win32 Debug"
 
@@ -105,8 +105,8 @@ BSC32=bscmake.exe
 # ADD BASE BSC32 /nologo
 # ADD BSC32 /nologo
 LINK32=link.exe
-# ADD BASE LINK32 ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /out:"Release/ldapmodify.exe" /pdbtype:sept /libpath:"..\..\libraries\Debug"
-# ADD LINK32 libsasl.lib ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /out:"Debug/ldapmodify.exe" /pdbtype:sept /libpath:"..\..\Debug"
+# ADD BASE LINK32 ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
+# ADD LINK32 libsasl.lib ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept /libpath:"..\..\Debug"
 
 !ELSEIF  "$(CFG)" == "ldapmodify - Win32 Release"
 
@@ -130,8 +130,8 @@ BSC32=bscmake.exe
 # ADD BASE BSC32 /nologo
 # ADD BSC32 /nologo
 LINK32=link.exe
-# ADD BASE LINK32 ws2_32.lib /nologo /subsystem:console /machine:I386 /out:"Release/ldapmodify.exe" /libpath:"..\..\libraries\Release"
-# ADD LINK32 sasl.lib libsasl.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /out:"Release/ldapmodify.exe" /libpath:"..\..\Release"
+# ADD BASE LINK32 ws2_32.lib /nologo /subsystem:console /machine:I386
+# ADD LINK32 sasl.lib libsasl.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /libpath:"..\..\Release"
 
 !ENDIF 
 
@@ -148,6 +148,57 @@ SOURCE=.\common.c
 # Begin Source File
 
 SOURCE=.\ldapmodify.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\ldmversion.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\..\build\version.h
+
+USERDEP__VERSI="common.c"      "ldapmodify.c"  "$(OUTDIR)\oldap32.lib" "$(OUTDIR)\olber32.lib" "$(OUTDIR)\oldif32.lib" "$(OUTDIR)\olutil32.lib"
+InputDir=..\..\build
+InputPath=..\..\build\version.h
+
+!IF  "$(CFG)" == "ldapmodify - Win32 Single Debug"
+
+# Begin Custom Build
+
+"ldmversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) ldmversion.c ldapmodify /**/
+
+# End Custom Build
+
+!ELSEIF  "$(CFG)" == "ldapmodify - Win32 Single Release"
+
+# Begin Custom Build
+
+"ldmversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) ldmversion.c ldapmodify /**/
+
+# End Custom Build
+
+!ELSEIF  "$(CFG)" == "ldapmodify - Win32 Release"
+
+# Begin Custom Build
+
+"ldmversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) ldmversion.c ldapmodify /**/
+
+# End Custom Build
+
+!ELSEIF  "$(CFG)" == "ldapmodify - Win32 Debug"
+
+# Begin Custom Build
+
+"ldmversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) ldmversion.c ldapmodify /**/
+
+# End Custom Build
+
+!ENDIF 
+
 # End Source File
 # End Target
 # End Project
index d1304ce84cad6127c3781bae6e0cb3e1af1b1459..2e346502dbbed51328936aef7f69ee7b446c02c5 100644 (file)
@@ -55,7 +55,7 @@ BSC32=bscmake.exe
 # ADD BASE BSC32 /nologo
 # ADD BSC32 /nologo
 LINK32=link.exe
-# ADD BASE LINK32 oldap32.lib olber32.lib olutil32.lib ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept /libpath:"..\..\libraries\Debug"
+# ADD BASE LINK32 oldap32.lib olber32.lib olutil32.lib ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
 # ADD LINK32 libsasl.lib ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept /libpath:"..\..\SDebug"
 
 !ELSEIF  "$(CFG)" == "ldapmodrdn - Win32 Single Release"
@@ -80,8 +80,8 @@ BSC32=bscmake.exe
 # ADD BASE BSC32 /nologo
 # ADD BSC32 /nologo
 LINK32=link.exe
-# ADD BASE LINK32 oldap32.lib olber32.lib olutil32.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /libpath:"..\..\libraries\Release"
-# ADD LINK32 sasl.lib libsasl.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /out:"Release/ldapmodrdn.exe" /libpath:"..\..\SRelease"
+# ADD BASE LINK32 oldap32.lib olber32.lib olutil32.lib ws2_32.lib /nologo /subsystem:console /machine:I386
+# ADD LINK32 sasl.lib libsasl.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /libpath:"..\..\SRelease"
 
 !ELSEIF  "$(CFG)" == "ldapmodrdn - Win32 Debug"
 
@@ -105,7 +105,7 @@ BSC32=bscmake.exe
 # ADD BASE BSC32 /nologo
 # ADD BSC32 /nologo
 LINK32=link.exe
-# ADD BASE LINK32 ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept /libpath:"..\..\libraries\Debug"
+# ADD BASE LINK32 ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
 # ADD LINK32 libsasl.lib ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept /libpath:"..\..\Debug"
 
 !ELSEIF  "$(CFG)" == "ldapmodrdn - Win32 Release"
@@ -130,8 +130,8 @@ BSC32=bscmake.exe
 # ADD BASE BSC32 /nologo
 # ADD BSC32 /nologo
 LINK32=link.exe
-# ADD BASE LINK32 ws2_32.lib /nologo /subsystem:console /machine:I386 /out:"Release/ldapmodrdn.exe" /libpath:"..\..\libraries\Release"
-# ADD LINK32 sasl.lib libsasl.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /out:"Release/ldapmodrdn.exe" /libpath:"..\..\Release"
+# ADD BASE LINK32 ws2_32.lib /nologo /subsystem:console /machine:I386
+# ADD LINK32 sasl.lib libsasl.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /libpath:"..\..\Release"
 
 !ENDIF 
 
@@ -148,6 +148,57 @@ SOURCE=.\common.c
 # Begin Source File
 
 SOURCE=.\ldapmodrdn.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\ldrversion.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\..\build\version.h
+
+USERDEP__VERSI="common.c"      "ldapmodrdn.c"  "$(OUTDIR)\oldap32.lib" "$(OUTDIR)\olber32.lib" "$(OUTDIR)\olutil32.lib"
+InputDir=..\..\build
+InputPath=..\..\build\version.h
+
+!IF  "$(CFG)" == "ldapmodrdn - Win32 Single Debug"
+
+# Begin Custom Build
+
+"ldrversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) ldrversion.c ldapmodrdn /**/
+
+# End Custom Build
+
+!ELSEIF  "$(CFG)" == "ldapmodrdn - Win32 Single Release"
+
+# Begin Custom Build
+
+"ldrversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) ldrversion.c ldapmodrdn /**/
+
+# End Custom Build
+
+!ELSEIF  "$(CFG)" == "ldapmodrdn - Win32 Release"
+
+# Begin Custom Build
+
+"ldrversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) ldrversion.c ldapmodrdn /**/
+
+# End Custom Build
+
+!ELSEIF  "$(CFG)" == "ldapmodrdn - Win32 Debug"
+
+# Begin Custom Build
+
+"ldrversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) ldrversion.c ldapmodrdn /**/
+
+# End Custom Build
+
+!ENDIF 
+
 # End Source File
 # End Target
 # End Project
index 7aa142c7d4dd224d1743db149348ff92e13fe6aa..397025a784e808dca1ed8c57aed16c50a785cc4c 100644 (file)
@@ -144,6 +144,57 @@ SOURCE=.\common.c
 # Begin Source File
 
 SOURCE=.\ldappasswd.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\ldpversion.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\..\build\version.h
+
+USERDEP__VERSI="common.c"      "ldappasswd.c"  "$(OUTDIR)\oldap32.lib" "$(OUTDIR)\olber32.lib" "$(OUTDIR)\olutil32.lib"
+InputDir=..\..\build
+InputPath=..\..\build\version.h
+
+!IF  "$(CFG)" == "ldappasswd - Win32 Single Debug"
+
+# Begin Custom Build
+
+"ldpversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) ldpversion.c ldappasswd /**/
+
+# End Custom Build
+
+!ELSEIF  "$(CFG)" == "ldappasswd - Win32 Single Release"
+
+# Begin Custom Build
+
+"ldpversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) ldpversion.c ldappasswd /**/
+
+# End Custom Build
+
+!ELSEIF  "$(CFG)" == "ldappasswd - Win32 Release"
+
+# Begin Custom Build
+
+"ldpversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) ldpversion.c ldappasswd /**/
+
+# End Custom Build
+
+!ELSEIF  "$(CFG)" == "ldappasswd - Win32 Debug"
+
+# Begin Custom Build
+
+"ldpversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) ldpversion.c ldappasswd /**/
+
+# End Custom Build
+
+!ENDIF 
+
 # End Source File
 # End Target
 # End Project
index de7f3e97234e4b8a859477450dc54ec60fa2d9a2..51a30bb4557f89bd125ffeec2bf599586fde9f02 100644 (file)
@@ -55,7 +55,7 @@ BSC32=bscmake.exe
 # ADD BASE BSC32 /nologo
 # ADD BSC32 /nologo
 LINK32=link.exe
-# ADD BASE LINK32 oldap32.lib olber32.lib oldif32.lib olutil32.lib ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept /libpath:"..\..\libraries\Debug"
+# ADD BASE LINK32 oldap32.lib olber32.lib oldif32.lib olutil32.lib ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
 # ADD LINK32 libsasl.lib ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept /libpath:"..\..\SDebug"
 
 !ELSEIF  "$(CFG)" == "ldapsearch - Win32 Single Release"
@@ -80,7 +80,7 @@ BSC32=bscmake.exe
 # ADD BASE BSC32 /nologo
 # ADD BSC32 /nologo
 LINK32=link.exe
-# ADD BASE LINK32 oldap32.lib olber32.lib oldif32.lib olutil32.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /libpath:"..\..\libraries\Release"
+# ADD BASE LINK32 oldap32.lib olber32.lib oldif32.lib olutil32.lib ws2_32.lib /nologo /subsystem:console /machine:I386
 # ADD LINK32 sasl.lib libsasl.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /libpath:"..\..\SRelease"
 
 !ELSEIF  "$(CFG)" == "ldapsearch - Win32 Release"
@@ -105,7 +105,7 @@ BSC32=bscmake.exe
 # ADD BASE BSC32 /nologo
 # ADD BSC32 /nologo
 LINK32=link.exe
-# ADD BASE LINK32 ws2_32.lib /nologo /subsystem:console /machine:I386 /out:"Release/ldapsearch.exe" /libpath:"..\..\libraries\SRelease"
+# ADD BASE LINK32 ws2_32.lib /nologo /subsystem:console /machine:I386
 # ADD LINK32 sasl.lib libsasl.lib ws2_32.lib /nologo /subsystem:console /machine:I386 /libpath:"..\..\Release"
 
 !ELSEIF  "$(CFG)" == "ldapsearch - Win32 Debug"
@@ -130,7 +130,7 @@ BSC32=bscmake.exe
 # ADD BASE BSC32 /nologo
 # ADD BSC32 /nologo
 LINK32=link.exe
-# ADD BASE LINK32 ws2_32.lib /nologo /subsystem:console /machine:I386 /out:"Release/ldapsearch.exe" /libpath:"..\..\libraries\SRelease"
+# ADD BASE LINK32 ws2_32.lib /nologo /subsystem:console /machine:I386
 # ADD LINK32 libsasl.lib ws2_32.lib /nologo /subsystem:console /incremental:yes /debug /machine:I386 /libpath:"..\..\Debug"
 
 !ENDIF 
@@ -148,6 +148,57 @@ SOURCE=.\common.c
 # Begin Source File
 
 SOURCE=.\ldapsearch.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\ldsversion.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\..\build\version.h
+
+USERDEP__VERSI="common.c"      "ldapsearch.c"  "$(OUTDIR)\oldap32.lib" "$(OUTDIR)\olber32.lib" "$(OUTDIR)\oldif32.lib" "$(OUTDIR)\olutil32.lib"
+InputDir=..\..\build
+InputPath=..\..\build\version.h
+
+!IF  "$(CFG)" == "ldapsearch - Win32 Single Debug"
+
+# Begin Custom Build
+
+"ldsversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) ldsversion.c ldapsearch /**/
+
+# End Custom Build
+
+!ELSEIF  "$(CFG)" == "ldapsearch - Win32 Single Release"
+
+# Begin Custom Build
+
+"ldsversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) ldsversion.c ldapsearch /**/
+
+# End Custom Build
+
+!ELSEIF  "$(CFG)" == "ldapsearch - Win32 Release"
+
+# Begin Custom Build
+
+"ldsversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) ldsversion.c ldapsearch /**/
+
+# End Custom Build
+
+!ELSEIF  "$(CFG)" == "ldapsearch - Win32 Debug"
+
+# Begin Custom Build
+
+"ldsversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) ldsversion.c ldapsearch /**/
+
+# End Custom Build
+
+!ENDIF 
+
 # End Source File
 # End Target
 # End Project
index c4bdaa014a9db5b18059ec48115808238347932b..a0521f7cbe5bb3b02739e1766f63fdc32062e66e 100644 (file)
@@ -37,8 +37,8 @@ RSC=rc.exe
 
 # PROP BASE Use_MFC 0
 # PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "ldappass"
-# PROP BASE Intermediate_Dir "ldappass"
+# PROP BASE Output_Dir "ldapwhoa"
+# PROP BASE Intermediate_Dir "ldapwhoa"
 # PROP BASE Target_Dir ""
 # PROP Use_MFC 0
 # PROP Use_Debug_Libraries 0
@@ -61,8 +61,8 @@ LINK32=link.exe
 
 # PROP BASE Use_MFC 0
 # PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "ldappas0"
-# PROP BASE Intermediate_Dir "ldappas0"
+# PROP BASE Output_Dir "ldapwho0"
+# PROP BASE Intermediate_Dir "ldapwho0"
 # PROP BASE Target_Dir ""
 # PROP Use_MFC 0
 # PROP Use_Debug_Libraries 1
@@ -144,6 +144,57 @@ SOURCE=.\common.c
 # Begin Source File
 
 SOURCE=.\ldapwhoami.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\ldwversion.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\..\build\version.h
+
+USERDEP__VERSI="common.c"      "ldapwhoami.c"  "$(OUTDIR)\oldap32.lib" "$(OUTDIR)\olber32.lib" "$(OUTDIR)\olutil32.lib"
+InputDir=..\..\build
+InputPath=..\..\build\version.h
+
+!IF  "$(CFG)" == "ldapwhoami - Win32 Single Debug"
+
+# Begin Custom Build
+
+"ldwversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) ldwversion.c ldapwhoami /**/
+
+# End Custom Build
+
+!ELSEIF  "$(CFG)" == "ldapwhoami - Win32 Single Release"
+
+# Begin Custom Build
+
+"ldwversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) ldwversion.c ldapwhoami /**/
+
+# End Custom Build
+
+!ELSEIF  "$(CFG)" == "ldapwhoami - Win32 Release"
+
+# Begin Custom Build
+
+"ldwversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) ldwversion.c ldapwhoami /**/
+
+# End Custom Build
+
+!ELSEIF  "$(CFG)" == "ldapwhoami - Win32 Debug"
+
+# Begin Custom Build
+
+"ldwversion.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+       $(InputDir)\mkvers.bat $(InputPath) ldwversion.c ldapwhoami /**/
+
+# End Custom Build
+
+!ENDIF 
+
 # End Source File
 # End Target
 # End Project
index 1a4c8de9167995430b1ae2c3f1e60415649bb071..532acae501d9673482e0a224f0c2abe05935805e 100644 (file)
@@ -4,6 +4,20 @@
 # COPYING RESTRICTIONS APPLY, see COPYRIGHT file
 #
 
+!include ../build/version.var
+
+!if "$(ol_patch)" != "X"
+ol_version=$(ol_major).$(ol_minor).$(ol_patch)
+ol_type=Release
+!elseif "$(ol_minor)" != "X"
+ol_version=$(ol_major).$(ol_minor).$(ol_patch)
+ol_type=Engineering
+!else
+ol_version=$(ol_major).$(ol_minor)
+ol_type=Devel
+!endif
+ol_string="$(ol_package) $(ol_version)-$(ol_type)"
+
 .SUFFIXES: .nt
 
 .nt.h:
@@ -17,4 +31,25 @@ setup.txt: lber_types.h ldap_config.h ldap_features.h portable.h setup.mak
 lber_types.h: lber_types.nt
 ldap_config.h: ldap_config.nt
 ldap_features.h: ldap_features.nt
+
+# note - the edlin script has non-printable characters:
+# you must use a Ctrl-C to terminate the (i)nput command
 portable.h: portable.nt
+       echo Setting up $(ol_string)...
+       copy portable.nt portable.h
+       edlin portable.h < <<
+1,#sOPENLDAP_PACKAGE
+d
+i
+#define OPENLDAP_PACKAGE "$(ol_package)"
+\ 3
+
+1,#sOPENLDAP_VERSION
+d
+i
+#define OPENLDAP_VERSION "$(ol_version)"
+\ 3
+
+e
+<<NOKEEP
+
index 1c589266cc9382448ffff67646f7893aa8007019..98c2015e0c7f18cc10d79ad5de63f2bd73a8f6c5 100644 (file)
@@ -275,10 +275,12 @@ libbackends.a: .backend
        fi
        @ls -l libbackends.a; echo ""
 
-version.c: $(OBJS) $(SLAPD_LIBDEPEND) 
+version.c: Makefile
        @-$(RM) $@
        $(MKVERSION) -s -n Versionstr slapd > $@
 
+version.o: version.c $(OBJS) $(SLAPD_LIBDEPEND) 
+
 depend-local-srv: FORCE
        @for i in back-* shell-backends tools; do \
                if test -d $$i -a -f $$i/Makefile ; then \
index 50f400688b750fb23f6e9c4d0f0fb490b077622c..d5e2627423aaa3ed1030d23cd7b551f03ad1d7c5 100644 (file)
@@ -110,7 +110,6 @@ struct bdb_info {
 
        int                     bi_ndatabases;
        struct bdb_db_info **bi_databases;
-       ldap_pvt_thread_mutex_t bi_database_mutex;
        int             bi_db_opflags;  /* db-specific flags */
 
        slap_mask_t     bi_defaultmask;
index d7ebd7ba1b02eea4bbbfaa8da30972f2712b6838..7bbabf84571a75545cdcc0e7081bfdba481bf8a4 100644 (file)
@@ -1143,16 +1143,24 @@ bdb_locker_id( Operation *op, DB_ENV *env, int *locker )
 {
        int i, rc, lockid;
        void *data;
+       void *ctx;
 
-       if ( !env || !op || !locker ) return -1;
+       if ( !env || !locker ) return -1;
+
+       /* If no op was provided, try to find the ctx anyway... */
+       if ( op ) {
+               ctx = op->o_threadctx;
+       } else {
+               ctx = ldap_pvt_thread_pool_context( &connection_pool );
+       }
 
        /* Shouldn't happen unless we're single-threaded */
-       if ( !op->o_threadctx ) {
+       if ( !ctx ) {
                *locker = 0;
                return 0;
        }
 
-       if ( ldap_pvt_thread_pool_getkey( op->o_threadctx, env, &data, NULL ) ) {
+       if ( ldap_pvt_thread_pool_getkey( ctx, env, &data, NULL ) ) {
                for ( i=0, rc=1; rc != 0 && i<4; i++ ) {
                        rc = XLOCK_ID( env, &lockid );
                        if (rc) ldap_pvt_thread_yield();
@@ -1161,7 +1169,7 @@ bdb_locker_id( Operation *op, DB_ENV *env, int *locker )
                        return rc;
                }
                data = (void *)lockid;
-               if ( ( rc = ldap_pvt_thread_pool_setkey( op->o_threadctx, env,
+               if ( ( rc = ldap_pvt_thread_pool_setkey( ctx, env,
                        data, bdb_locker_id_free ) ) ) {
                        XLOCK_ID_FREE( env, lockid );
 #ifdef NEW_LOGGING
index 5a07911d6d45a8369354008d7513c188464056bc..603815b929fe89e3d0bf64dd394b5e75cba8cf56 100644 (file)
@@ -56,6 +56,9 @@ bdb_db_cache(
        struct bdb_info *bdb = (struct bdb_info *) be->be_private;
        struct bdb_db_info *db;
        char *file;
+       DBT lockobj;
+       DB_LOCK lock;
+       u_int32_t locker = 0;
 
        *dbout = NULL;
 
@@ -66,19 +69,33 @@ bdb_db_cache(
                }
        }
 
-       ldap_pvt_thread_mutex_lock( &bdb->bi_database_mutex );
+       lockobj.data = "bdb_db_cache";
+       lockobj.size = sizeof("bdb_db_cache");
+
+       if (tid) {
+               locker = TXN_ID( tid );
+       } else {
+#ifdef BDB_REUSE_LOCKERS
+#define        op      NULL    /* implicit arg in LOCK_ID */
+#endif
+               rc = LOCK_ID( bdb->bi_dbenv, &locker );
+               if (rc) return rc;
+       }
+       rc = LOCK_GET( bdb->bi_dbenv, locker, 0, &lockobj,
+               DB_LOCK_WRITE, &lock );
+       if (rc) return rc;
 
        /* check again! may have been added by another thread */
        for( i=BDB_NDB; bdb->bi_databases[i]; i++ ) {
                if( !strcmp( bdb->bi_databases[i]->bdi_name, name) ) {
                        *dbout = bdb->bi_databases[i]->bdi_db;
-                       ldap_pvt_thread_mutex_unlock( &bdb->bi_database_mutex );
+                       LOCK_PUT( bdb->bi_dbenv, &lock);
                        return 0;
                }
        }
 
        if( i >= BDB_INDICES ) {
-               ldap_pvt_thread_mutex_unlock( &bdb->bi_database_mutex );
+               LOCK_PUT( bdb->bi_dbenv, &lock);
                return -1;
        }
 
@@ -97,7 +114,7 @@ bdb_db_cache(
                        "bdb_db_cache: db_create(%s) failed: %s (%d)\n",
                        bdb->bi_dbenv_home, db_strerror(rc), rc );
 #endif
-               ldap_pvt_thread_mutex_unlock( &bdb->bi_database_mutex );
+               LOCK_PUT( bdb->bi_dbenv, &lock);
                return rc;
        }
 
@@ -131,7 +148,7 @@ bdb_db_cache(
                        "bdb_db_cache: db_open(%s) failed: %s (%d)\n",
                        name, db_strerror(rc), rc );
 #endif
-               ldap_pvt_thread_mutex_unlock( &bdb->bi_database_mutex );
+               LOCK_PUT( bdb->bi_dbenv, &lock);
                return rc;
        }
 
@@ -141,6 +158,6 @@ bdb_db_cache(
 
        *dbout = db->bdi_db;
 
-       ldap_pvt_thread_mutex_unlock( &bdb->bi_database_mutex );
+       LOCK_PUT( bdb->bi_dbenv, &lock );
        return 0;
 }
index 039934c474f5f1e9ae015add97a882a53fb202ad..4b25f121244bd2a08ff71d612c516737c0335945 100644 (file)
@@ -98,7 +98,6 @@ bdb_db_init( BackendDB *be )
        LDAP_LIST_INIT (&bdb->psearch_list);
 #endif
 
-       ldap_pvt_thread_mutex_init( &bdb->bi_database_mutex );
        ldap_pvt_thread_mutex_init( &bdb->bi_lastid_mutex );
        ldap_pvt_thread_mutex_init( &bdb->bi_cache.lru_mutex );
        ldap_pvt_thread_rdwr_init ( &bdb->bi_cache.c_rwlock );
@@ -525,7 +524,6 @@ bdb_db_destroy( BackendDB *be )
        ldap_pvt_thread_rdwr_destroy ( &bdb->bi_cache.c_rwlock );
        ldap_pvt_thread_mutex_destroy( &bdb->bi_cache.lru_mutex );
        ldap_pvt_thread_mutex_destroy( &bdb->bi_lastid_mutex );
-       ldap_pvt_thread_mutex_destroy( &bdb->bi_database_mutex );
 
        ch_free( bdb );
        be->be_private = NULL;
index 89895ad6c3b3e0d1d5c9c3278bdbbab495214617..50ec78137916fcc033e49ac6e7ea00eec279aeab 100644 (file)
@@ -73,15 +73,14 @@ void
 oidm_destroy()
 {
        OidMacro *om;
-
        while( !LDAP_SLIST_EMPTY( &om_list )) {
                om = LDAP_SLIST_FIRST( &om_list );
+               LDAP_SLIST_REMOVE_HEAD( &om_list, som_next );
 
                ldap_charray_free(om->som_names);
                free(om->som_oid.bv_val);
                free(om);
                
-               LDAP_SLIST_REMOVE_HEAD( &om_list, som_next );
        }
 }
 
index 499c884eaeb3484a4358a5eb1a880695d83977ef..9199e3310c4c53843d63e053eb0670558e560942 100644 (file)
 static ldap_pvt_thread_mutex_t slap_op_mutex;
 static LDAP_STAILQ_HEAD(s_o, slap_op)  slap_free_ops;
 
-void slap_op_init()
+void slap_op_init(void)
 {
        ldap_pvt_thread_mutex_init( &slap_op_mutex );
        LDAP_STAILQ_INIT(&slap_free_ops);
 }
 
-void slap_op_destroy()
+void slap_op_destroy(void)
 {
        Operation *o;
 
index c9b34ecba09473a1ee1a77bb46f2a86434ebd8e0..94afcff34b3af914d68ae2a936ee3451e4ed3e07 100644 (file)
@@ -720,6 +720,8 @@ LDAP_SLAPD_F (int) parse_oidm LDAP_P((
 /*
  * operation.c
  */
+LDAP_SLAPD_F (void) slap_op_init LDAP_P(( void ));
+LDAP_SLAPD_F (void) slap_op_destroy LDAP_P(( void ));
 LDAP_SLAPD_F (void) slap_op_free LDAP_P(( Operation *op ));
 LDAP_SLAPD_F (Operation *) slap_op_alloc LDAP_P((
        BerElement *ber, ber_int_t msgid,
index b44f3b40ef904e7ef1829a5cdc80bb223d756908..78844afe00f84a76750423475b235b674dbda97c 100644 (file)
@@ -42,10 +42,12 @@ slurpd:     version.o
 sslurpd:       version.o
        $(LTLINK) -static -o $@ $(OBJS) version.o $(LIBS)
 
-version.c: $(OBJS) $(SLURPD_L)
+version.c: Makefile
        @-$(RM) $@
        $(MKVERSION) slurpd > $@
 
+version.o: version.c $(OBJS) $(SLURPD_L)
+
 install-local-srv: FORCE
        -$(MKDIR) $(DESTDIR)$(libexecdir)
        @-$(INSTALL) -m 700 -d $(DESTDIR)$(localstatedir)/openldap-slurp