Bug 58256 - [new port] www/mod_cfg_ldap: Allows you to keep your virtual host configuration in a LDAP directory
Summary: [new port] www/mod_cfg_ldap: Allows you to keep your virtual host configurati...
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: Clement Laforet
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-10-19 21:20 UTC by Clement Laforet
Modified: 2004-01-09 00:53 UTC (History)
1 user (show)

See Also:


Attachments
mod_cfg_ldap.shar (2.83 KB, text/plain)
2003-10-19 21:20 UTC, Clement Laforet
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Clement Laforet 2003-10-19 21:20:08 UTC
	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.
Comment 1 Clement Laforet 2003-11-17 14:26:50 UTC
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
Comment 2 Clement Laforet freebsd_committer freebsd_triage 2003-12-17 14:42:58 UTC
Responsible Changed
From-To: freebsd-ports-bugs->clement

It's my PR.
Comment 3 Clement Laforet freebsd_committer freebsd_triage 2004-01-09 00:53:09 UTC
State Changed
From-To: open->closed

port added.