mod_cfgldap can be used to keep VirtualHost configuration of the Apache web server in a LDAP directory and to make changes visible in nearly realtime. WWW: http://modcfgldap.sourceforge.net/ How-To-Repeat: N/A.
Fix compilation on -STABLE. Noticed and partially submitted by: Tom M=FCller-Kortkamp <tmueko [at] komm= unity [dot] net> # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # mod_cfg_ldap # mod_cfg_ldap/Makefile # mod_cfg_ldap/distinfo # mod_cfg_ldap/pkg-descr # mod_cfg_ldap/pkg-plist # mod_cfg_ldap/files # mod_cfg_ldap/files/patch-mod_cfg_ldap.c # echo c - mod_cfg_ldap mkdir -p mod_cfg_ldap > /dev/null 2>&1 echo x - mod_cfg_ldap/Makefile sed 's/^X//' >mod_cfg_ldap/Makefile << 'END-of-mod_cfg_ldap/Makefile' X# New ports collection makefile for: mod_cfg_ldap X# Date created: Sun Oct 19 X# Whom: Clement Laforet <sheepkiller@cultdeadsheep.org> X# X# $FreeBSD$ X# X XPORTNAME=3D mod_cfg_ldap XPORTVERSION=3D 1.0 XCATEGORIES=3D www XMASTER_SITES=3D ${MASTER_SITE_SOURCEFORGE} XMASTER_SITE_SUBDIR=3D ${PORTNAME:S/_//g} XDIST_SUBDIR=3D apache X XMAINTAINER=3D sheepkiller@cultdeadsheep.org XCOMMENT=3D Allows you to keep your virtual host configuration in a LDAP di= rectory X XBUILD_DEPENDS=3D ${LOCALBASE}/sbin/apxs:${PORTSDIR}/www/apache2 XRUN_DEPENDS=3D ${BUILD_DEPENDS} X XUSE_OPENLDAP=3D YES X XAPXS?=3D ${LOCALBASE}/sbin/apxs XLDAP_INC?=3D ${LOCALBASE}/include XLDAP_LIB?=3D ${LOCALBASE}/lib -lldap X XDOCS_FILES=3D AUTHORS cfg_ldap.conf ChangeLog COPYING INSTALL \ X mod_cfg_ldap.schema README TODO X Xdo-build: X @(cd ${WRKSRC} && ${APXS} -I ${LDAP_INC} -L ${LDAP_LIB} -c ${PORTNAME}.c) X Xdo-install: X @(cd ${WRKSRC} && ${APXS} -n ${PORTNAME:S/mod_//} -A -i ${PORTNAME}.la) X.if !defined (NOPORTDOCS) X @${MKDIR} ${DOCSDIR} X. for f in ${DOCS_FILES} X @${INSTALL_DATA} ${WRKSRC}/${f} ${DOCSDIR} X. endfor X.endif X X.include <bsd.port.mk> END-of-mod_cfg_ldap/Makefile echo x - mod_cfg_ldap/distinfo sed 's/^X//' >mod_cfg_ldap/distinfo << 'END-of-mod_cfg_ldap/distinfo' XMD5 (apache/mod_cfg_ldap-1.0.tar.gz) =3D 8e556a9cff882cb616db322f74f20355 END-of-mod_cfg_ldap/distinfo echo x - mod_cfg_ldap/pkg-descr sed 's/^X//' >mod_cfg_ldap/pkg-descr << 'END-of-mod_cfg_ldap/pkg-descr' Xmod_cfgldap can be used to keep VirtualHost configuration of the Apache we= b=20 Xserver in a LDAP directory and to make changes visible in nearly realtime. X XWWW: http://modcfgldap.sourceforge.net/ END-of-mod_cfg_ldap/pkg-descr echo x - mod_cfg_ldap/pkg-plist sed 's/^X//' >mod_cfg_ldap/pkg-plist << 'END-of-mod_cfg_ldap/pkg-plist' Xlibexec/apache2/mod_cfg_ldap.so X@exec %D/sbin/apxs -e -A -n cfg_ldap %D/%f X%%PORTDOCS%%%%DOCSDIR%%/AUTHORS X%%PORTDOCS%%%%DOCSDIR%%/cfg_ldap.conf X%%PORTDOCS%%%%DOCSDIR%%/ChangeLog X%%PORTDOCS%%%%DOCSDIR%%/COPYING X%%PORTDOCS%%%%DOCSDIR%%/INSTALL X%%PORTDOCS%%%%DOCSDIR%%/mod_cfg_ldap.schema X%%PORTDOCS%%%%DOCSDIR%%/README X%%PORTDOCS%%%%DOCSDIR%%/TODO X%%PORTDOCS%%@dirrm %%DOCSDIR%% X@unexec echo "=3D=3D=3D> If you do not plan on reinstalling mod_cfg_ldap,= you must manually remove"; echo "=3D=3D=3D> references to it in httpd.con= f." END-of-mod_cfg_ldap/pkg-plist echo c - mod_cfg_ldap/files mkdir -p mod_cfg_ldap/files > /dev/null 2>&1 echo x - mod_cfg_ldap/files/patch-mod_cfg_ldap.c sed 's/^X//' >mod_cfg_ldap/files/patch-mod_cfg_ldap.c << 'END-of-mod_cfg_ld= ap/files/patch-mod_cfg_ldap.c' X--- mod_cfg_ldap.c.orig Mon Nov 17 15:06:22 2003 X+++ mod_cfg_ldap.c Mon Nov 17 15:08:22 2003 X@@ -85,11 +85,11 @@ X cfg_ldap_init_ldap (apr_pool_t * p, server_rec * s) X { X cfg_ldap_cfg *cfg; X+ int rc; X cfg =3D X (cfg_ldap_cfg *) ap_get_module_config (s->module_config, X &cfg_ldap_module); X=20 X- int rc; X ld =3D ldap_init (cfg->hostname, LDAP_PORT); X rc =3D ldap_simple_bind_s (ld, cfg->username, cfg->password); X=20 X@@ -154,22 +154,30 @@ X cfg_ldap_read_vhost_from_ldap (apr_pool_t * p, server_rec * s, char *host= name) X { X cfg_ldap_cfg *cfg; X+ cfg_ldap_vhost *vhost; X+ char *filter; X+ int rc,count; X+ LDAPMessage *res; X+ LDAPMessage *entry; X+ char *attr; X+ BerElement *ber; X+ char **val =3D NULL; X+ char *vhost_name =3D NULL; X+ char *vhost_admin =3D NULL; X+ char *vhost_docroot =3D NULL; X+ X cfg =3D X (cfg_ldap_cfg *) ap_get_module_config (s->module_config, X &cfg_ldap_module); X=20 X- cfg_ldap_vhost *vhost; X vhost =3D (cfg_ldap_vhost *) apr_pcalloc (p, sizeof (cfg_ldap_vhost)); X vhost->timestamp =3D apr_time_now (); X vhost->name =3D CFG_LDAP_NO_SUCH_VHOST; X=20 X- char *filter; X filter =3D X apr_pstrcat (p, "(|(apacheServerName=3D", hostname, ")(apacheServerAl= ias=3D", X hostname, "))", NULL); X=20 X- int rc; X- LDAPMessage *res; X rc =3D ldap_search_s (ld, cfg->basedn, LDAP_SCOPE_SUBTREE, filter, X (char **) &attrs, 0, &res); X=20 X@@ -185,10 +193,9 @@ X return vhost; X } X=20 X- LDAPMessage *entry; X entry =3D ldap_first_entry (ld, res); X=20 X- int count =3D ldap_count_entries (ld, res); X+ count =3D ldap_count_entries (ld, res); X if (count =3D=3D 0) X { X return vhost; X@@ -199,13 +206,6 @@ X "cfg_ldap: more than one entry for %s", hostname); X return vhost; X } X- X- char *attr; X- BerElement *ber; X- char **val =3D NULL; X- char *vhost_name =3D NULL; X- char *vhost_admin =3D NULL; X- char *vhost_docroot =3D NULL; X=20 X for (attr =3D ldap_first_attribute (ld, entry, &ber); X attr !=3D NULL; attr =3D ldap_next_attribute (ld, entry, ber)) END-of-mod_cfg_ldap/files/patch-mod_cfg_ldap.c exit
Responsible Changed From-To: freebsd-ports-bugs->clement It's my PR.
State Changed From-To: open->closed port added.