G/Evening...
On 2/06/2011 3:45 PM, William A. Rowe Jr. wrote:
On 6/1/2011 12:35 PM, William A. Rowe Jr. wrote:
On 6/1/2011 7:11 AM, NormW wrote:
Have httpd-trunk now building again for NetWare, but sent that diff to GK for
his critical
eye, as it took a bit more hacking for success.
Sounds like a plan, committed the test fixes, thanks again!
You know what, better idea; let's quell the failed build alerts please,
go ahead and share what you have already and let's get that committed.
This is trunk, it is commit-then-review :) When GK has cycles I'm sure
he'll review this in his email box or from svn.
Hmmm. He _is_ busy of late; as long as no one barfs at him or me if
changed later.
Try this cluster then keep fingers crossed... :-) (me that is)
Index: modules/ldap/ap_ldap_rebind.c
===================================================================
--- modules/ldap/ap_ldap_rebind.c (revision 1130425)
+++ modules/ldap/ap_ldap_rebind.c (working copy)
@@ -42,14 +42,6 @@
};
typedef struct ap_ldap_rebind_entry ap_ldap_rebind_entry_t;
-
-#ifdef NETWARE
-#define get_apd \
- APP_DATA* apd = (APP_DATA*)get_app_data(gLibId); \
- ap_ldap_xref_lock = (apr_thread_mutex_t *)apd->gs_ldap_xref_lock; \
- xref_head = (ap_ldap_rebind_entry_t *)apd->gs_xref_head;
-#endif
-
#if APR_HAS_THREADS
static apr_thread_mutex_t *ap_ldap_xref_lock = NULL;
#endif
@@ -71,10 +63,6 @@
{
apr_status_t retcode = APR_SUCCESS;
-#ifdef NETWARE
- get_apd
-#endif
-
#if APR_HAS_THREADS
/* run after apr_thread_mutex_create cleanup */
apr_pool_cleanup_register(pool, &ap_ldap_xref_lock,
ap_ldap_pool_cleanup_set_null,
@@ -97,10 +85,6 @@
apr_status_t retcode = APR_SUCCESS;
ap_ldap_rebind_entry_t *new_xref;
-#ifdef NETWARE
- get_apd
-#endif
-
new_xref = (ap_ldap_rebind_entry_t *)apr_pcalloc(pool,
sizeof(ap_ldap_rebind_entry_t));
if (new_xref) {
new_xref->pool = pool;
@@ -152,10 +136,6 @@
ap_ldap_rebind_entry_t *tmp_xref, *prev = NULL;
apr_status_t retcode = 0;
-#ifdef NETWARE
- get_apd
-#endif
-
#if APR_HAS_THREADS
retcode = apr_thread_mutex_lock(ap_ldap_xref_lock);
if (retcode != APR_SUCCESS) {
@@ -206,10 +186,6 @@
{
ap_ldap_rebind_entry_t *tmp_xref, *match = NULL;
-#ifdef NETWARE
- get_apd
-#endif
-
#if APR_HAS_THREADS
apr_thread_mutex_lock(ap_ldap_xref_lock);
#endif
Index: modules/ldap/NWGNUmakefile
===================================================================
--- modules/ldap/NWGNUmakefile (revision 1130425)
+++ modules/ldap/NWGNUmakefile (working copy)
@@ -171,6 +171,10 @@
# Paths must all use the '/' character
#
FILES_nlm_objs = \
+ $(OBJDIR)/ap_ldap_init.o \
+ $(OBJDIR)/ap_ldap_option.o \
+ $(OBJDIR)/ap_ldap_url.o \
+ $(OBJDIR)/ap_ldap_rebind.o \
$(OBJDIR)/util_ldap.o \
$(OBJDIR)/util_ldap_cache.o \
$(OBJDIR)/util_ldap_cache_mgr.o \
Index: modules/aaa/NWGNUauthnzldap
===================================================================
--- modules/aaa/NWGNUauthnzldap (revision 1130425)
+++ modules/aaa/NWGNUauthnzldap (working copy)
@@ -189,6 +189,7 @@
aprlib \
libc \
lldapsdk \
+ utilldap \
$(EOLIST)
#
@@ -210,6 +211,7 @@
# Any additional imports go here
#
FILES_nlm_Ximports = \
+ ap_ldap_url_parse \
util_ldap_connection_find \
util_ldap_connection_close \
util_ldap_cache_checkuserid \
Index: include/ap_ldap.hnw
===================================================================
--- include/ap_ldap.hnw (revision 1130425)
+++ include/ap_ldap.hnw (working copy)
@@ -51,9 +51,6 @@
#define LDAP_DECLARE_DATA __declspec(dllimport)
#endif
-/* this will be defined if LDAP support was compiled into apr-util */
-#define AP_HAS_LDAP 1
-
/* identify the LDAP toolkit used */
#define AP_HAS_NETSCAPE_LDAPSDK 0
#define AP_HAS_SOLARIS_LDAPSDK 0
@@ -63,7 +60,26 @@
#define AP_HAS_MICROSOFT_LDAPSDK 0
#define AP_HAS_OTHER_LDAPSDK 0
+/*
+ * For ldap function calls that input a size limit on the number of
returned elements
+ * Some SDKs do not have the define for LDAP_DEFAULT_LIMIT (-1) or
LDAP_NO_LIMIT (0)
+ * LDAP_DEFAULT_LIMIT is preferred as it allows inheritance from
whatever the SDK
+ * or process is configured for.
+ */
+/* Novell SDK defines LDAP_DEFAULT_SIZELIMIT */
+#define LDAP_DEFAULT_LIMIT LDAP_DEFAULT_SIZELIMIT
+#ifdef LDAP_DEFAULT_LIMIT
+#define AP_LDAP_SIZELIMIT LDAP_DEFAULT_LIMIT
+#else
+#ifdef LDAP_NO_LIMIT
+#define AP_LDAP_SIZELIMIT LDAP_NO_LIMIT
+#endif
+#endif
+#ifndef AP_LDAP_SIZELIMIT
+#define AP_LDAP_SIZELIMIT 0 /* equivalent to LDAP_NO_LIMIT, and what
goes on the wire */
+#endif
+
/*
* Handle the case when LDAP is enabled
*/
Index: build/NWGNUenvironment.inc
===================================================================
--- build/NWGNUenvironment.inc (revision 1130425)
+++ build/NWGNUenvironment.inc (working copy)
@@ -304,7 +304,12 @@
endif
endif
-# Add support for building IPV6 alongside
+# Add LDAP protocol support
+ifneq "$(LDAPSDK)" ""
+DEFINES += -DAP_HAS_LDAP=1
+endif
+
+# Add IPV6 protocol support
ifneq "$(IPV6)" ""
DEFINES += -DNW_BUILD_IPV6
# INCDIRS := $(NOVELLLIBC)/include/winsock/IPV6;$(INCDIRS)
@@ -357,12 +362,12 @@
APRUTIL = $(subst \,/,$(APU_WORK))
APBUILD = $(SRC)/build
STDMOD = $(SRC)/modules
+LDAP = $(SRC)/modules/ldap
HTTPD = $(SRC)/modules/http
DAV = $(SRC)/modules/dav
NWOS = $(SRC)/os/netware
SERVER = $(SRC)/server
SUPMOD = $(SRC)/support
-APULDAP = $(APRUTIL)/ldap
XML = $(APRUTIL)/xml
APRTEST = $(APR)/test
PCRE = $(PCRESRC)
@@ -375,7 +380,6 @@
APRLIB = $(APR)/$(OBJDIR)/aprlib.lib
APRUTLIB = $(APRUTIL)/$(OBJDIR)/aprutil.lib
-APULDAPLIB = $(APULDAP)/$(OBJDIR)/apuldap.lib
STMODLIB = $(STDMOD)/$(OBJDIR)/stdmod.lib
PCRELIB = $(SRC)/$(OBJDIR)/pcre.lib
NWOSLIB = $(NWOS)/$(OBJDIR)/netware.lib
Index: build/make_nw_export.awk
===================================================================
--- build/make_nw_export.awk (revision 1130425)
+++ build/make_nw_export.awk (working copy)
@@ -29,8 +29,8 @@
#/ap_some_name/{next}
/ap_mpm_pod_/{next}
-/^[ \t]*(AP|DAV)([RU]|_CORE)?_DECLARE[^(]*[(][^)]*[)]([^ ]* )*[^(]+[(]/ {
- sub("[ \t]*(AP|DAV)([RU]|_CORE)?_DECLARE[^(]*[(][^)]*[)][ \t]*", "")
+/^[ \t]*(AP|DAV|LDAP)([RU]|_CORE)?_DECLARE[^(]*[(][^)]*[)]([^ ]*
)*[^(]+[(]/ {
+ sub("[ \t]*(AP|DAV|LDAP)([RU]|_CORE)?_DECLARE[^(]*[(][^)]*[)][
\t]*", "")
sub("[(].*", "")
sub("([^ ]* (^([ \t]*[(])))+", "")
add_symbol($0)
Index: build/NWGNUtail.inc
===================================================================
--- build/NWGNUtail.inc (revision 1130425)
+++ build/NWGNUtail.inc (working copy)
@@ -135,7 +135,7 @@
@echo $(DL)$(foreach incdir,$(strip $(subst
;,$(SPACE),$(INCDIRS))),-I$(incdir))$(DL)>> $@
endif
ifneq "$(strip $(DEFINES))" ""
- @echo $(DL)$(DEFINES)$(DL)>> $@
+ @echo $(DL)$(DEFINES)$(DL) >> $@
endif
ifneq "$(strip $(XDEFINES))" ""
@echo $(DL)$(XDEFINES)$(DL)>> $@
Index: build/NWGNUmakefile
===================================================================
--- build/NWGNUmakefile (revision 1130425)
+++ build/NWGNUmakefile (working copy)
@@ -18,6 +18,7 @@
FILES_prebuild_headers = \
$(SRC)/include/ap_config_layout.h \
+ $(SRC)/include/ap_ldap.h \
$(NWOS)/test_char.h \
$(PCRE)/config.h \
$(PCRE)/pcre.h \
@@ -44,7 +45,7 @@
@echo $(DL)-EP$(DL)>> $@
@echo $(DL)-nosyspath$(DL)>> $@
@echo $(DL)-w nocmdline$(DL)>> $@
- @echo $(DL)$(DEFINES)$(DL)>> $@
+ @echo $(DL)$(DEFINES)$(DL) >> $@
@echo $(DL)-I$(SRC)/include$(DL)>> $@
@echo $(DL)-I$(HTTPD)$(DL)>> $@
@echo $(DL)-I$(STDMOD)/aaa$(DL)>> $@
@@ -59,6 +60,10 @@
@echo Creating $@
$(call COPY,$<,$@)
+$(SRC)/include/ap_ldap.h: $(SRC)/include/ap_ldap.hnw
+ @echo Creating $@
+ $(call COPY,$<,$@)
+
$(PCRE)/%.h: $(PCRE)/%.h.generic
@echo Creating $@
$(call COPY,$<,$@)
HTH,
Norm