Import ap-auth-mysql 4.3.1, Apache module for user authentication

using information stored in a MySQL database.

Based on pkgwip package done by cube@, thanks a lot!

Package should support both Apache 1.x and 2.x, but only Apache 1.x
tested at the moment.
This commit is contained in:
jdolecek 2004-07-16 11:28:19 +00:00
parent a708cb4b29
commit 17387554d5
11 changed files with 394 additions and 2 deletions

View file

@ -1,4 +1,4 @@
$NetBSD: CHANGES,v 1.6570 2004/07/16 07:47:53 adam Exp $
$NetBSD: CHANGES,v 1.6571 2004/07/16 11:31:42 jdolecek Exp $
Changes to the packages collection and infrastructure in 2004:
@ -3409,3 +3409,4 @@ Changes to the packages collection and infrastructure in 2004:
Added xyame-038 [wiz 2004-07-16]
Added libosip2-2.0.9 [xtraeme 2004-07-16]
Updated gd to 2.0.27 [adam 2004-07-16]
Added ap-auth-mysql-4.3.1 [jdolecek 2004-07-16]

View file

@ -1,4 +1,4 @@
# $NetBSD: Makefile,v 1.330 2004/07/08 19:43:44 erh Exp $
# $NetBSD: Makefile,v 1.331 2004/07/16 11:31:42 jdolecek Exp $
#
COMMENT= Packages related to the World Wide Web
@ -12,6 +12,7 @@ SUBDIR+= ap-access-referer
SUBDIR+= ap-aolserver
SUBDIR+= ap-auth-cookie
SUBDIR+= ap-auth-ldap
SUBDIR+= ap-auth-mysql
SUBDIR+= ap-auth-pam
SUBDIR+= ap-auth-pgsql
SUBDIR+= ap-auth-postgresql

2
www/ap-auth-mysql/DESCR Normal file
View file

@ -0,0 +1,2 @@
A module for the Apache web server which enables HTTP authentication
against information stored in a MySQL database.

View file

@ -0,0 +1,9 @@
===========================================================================
$NetBSD: MESSAGE,v 1.1.1.1 2004/07/16 11:28:19 jdolecek Exp $
In order to use this module in your Apache installation, you need to
add the following to your httpd.conf file:
LoadModule auth_mysql_module ${PREFIX}/lib/httpd/mod_auth_mysql.so
===========================================================================

View file

@ -0,0 +1,33 @@
# $NetBSD: Makefile,v 1.1.1.1 2004/07/16 11:28:19 jdolecek Exp $
#
DISTNAME= libapache-mod-auth-mysql_4.3.1
PKGNAME= ${DISTNAME:S/libapache-mod/ap/:S/_/-/}
WRKSRC= ${WRKDIR}/${DISTNAME:S/_/-/}
CATEGORIES= www databases security
MASTER_SITES= ${MASTER_SITE_DEBIAN:=pool/main/liba/libapache-mod-auth-mysql/}
MAINTAINER= tech-pkg@NetBSD.org
HOMEPAGE= http://packages.debian.org/unstable/web/libapache-mod-auth-mysql.html
COMMENT= Apache module to allow authentication against a MySQL database
USE_BUILDLINK3= yes
GNU_CONFIGURE= yes
CONFIGURE_ARGS+= --with-mysql-includes=${BUILDLINK_PREFIX.mysql-client}/include/mysql \
--with-mysql-libs=${BUILDLINK_PREFIX.mysql-client}/lib/mysql
CPPFLAGS+= -I${BUILDLINK_PREFIX.mysql-client}/include/mysql
LDFLAGS+= -lmysqlclient -L${BUILDLINK_PREFIX.mysql-client}/lib/mysql \
-Wl,${RPATH_FLAG} -Wl,${BUILDLINK_PREFIX.mysql-client}/lib/mysql
APACHE_MODULE_NAME= mod_auth_mysql.so
post-install:
${INSTALL_DATA_DIR} ${PREFIX}/share/doc/mod_auth_mysql
${INSTALL_DATA} ${WRKSRC}/DIRECTIVES ${PREFIX}/share/doc/mod_auth_mysql
${INSTALL_DATA} ${WRKSRC}/USAGE ${PREFIX}/share/doc/mod_auth_mysql
.include "../../databases/mysql-client/buildlink3.mk"
.include "../../www/apache/module.mk"
.include "../../mk/bsd.pkg.mk"

5
www/ap-auth-mysql/PLIST Normal file
View file

@ -0,0 +1,5 @@
@comment $NetBSD: PLIST,v 1.1.1.1 2004/07/16 11:28:19 jdolecek Exp $
lib/httpd/mod_auth_mysql.so
share/doc/mod_auth_mysql/DIRECTIVES
share/doc/mod_auth_mysql/USAGE
@dirrm share/doc/mod_auth_mysql

View file

@ -0,0 +1,8 @@
$NetBSD: distinfo,v 1.1.1.1 2004/07/16 11:28:19 jdolecek Exp $
SHA1 (libapache-mod-auth-mysql_4.3.1.tar.gz) = c5563028ed6574fd087944ac0507009dfc14b749
Size (libapache-mod-auth-mysql_4.3.1.tar.gz) = 56247 bytes
SHA1 (patch-aa) = c18f857317b5838c955ddfea501961e0e2a88e76
SHA1 (patch-ab) = 0afe885fc1d1b5461b0423eef347fd72511be907
SHA1 (patch-ac) = fb32367d7b77a3df6728f2ad93a7c46e76a0e454
SHA1 (patch-ad) = ea796e555cc2e52af424e2e70484692656095858

View file

@ -0,0 +1,10 @@
$NetBSD: patch-aa,v 1.1.1.1 2004/07/16 11:28:19 jdolecek Exp $
--- config.h.in.orig 2004-05-11 04:32:13.000000000 +0200
+++ config.h.in 2004-07-16 12:36:49.000000000 +0200
@@ -47,3 +47,5 @@
/* Define to empty if `const' does not conform to ANSI C. */
#undef const
+
+#undef HAVE_LIBCRYPT

View file

@ -0,0 +1,30 @@
$NetBSD: patch-ab,v 1.1.1.1 2004/07/16 11:28:19 jdolecek Exp $
--- configure.ac.orig 2003-09-24 01:39:03.000000000 +0200
+++ configure.ac
@@ -84,11 +84,14 @@ AC_SUBST(build_opts, "$mysql_includes $m
# Checks for header files.
AC_CHECK_HEADERS([crypt.h])
+AC_CHECK_LIB([crypt], [crypt])
-if test -n $HAVE_CRYPT_H; then
+if test -n $HAVE_CRYPT_H -a $HAVE_LIBCRYPT; then
AC_TRY_RUN(
[
+#ifdef HAVE_CRYPT_H
#include <crypt.h>
+#endif
#include <string.h>
int main()
@@ -101,7 +104,9 @@ AC_DEFINE(CRYPT_MD5),
,,)
AC_TRY_RUN(
[
+#ifdef HAVE_CRYPT_H
#include <crypt.h>
+#endif
#include <string.h>
int main()

View file

@ -0,0 +1,261 @@
$NetBSD: patch-ac,v 1.1.1.1 2004/07/16 11:28:19 jdolecek Exp $
--- configure.orig 2004-05-11 07:19:18.000000000 +0200
+++ configure 2004-07-16 12:40:48.000000000 +0200
@@ -953,7 +953,7 @@
else
echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
fi
- cd "$ac_popdir"
+ cd $ac_popdir
done
fi
@@ -1886,7 +1886,8 @@
cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
@@ -1944,7 +1945,8 @@
cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
@@ -2060,7 +2062,8 @@
cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
@@ -2114,7 +2117,8 @@
cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
@@ -2159,7 +2163,8 @@
cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
@@ -2203,7 +2208,8 @@
cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
@@ -2282,7 +2288,8 @@
cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
@@ -2765,7 +2772,8 @@
cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
@@ -2935,7 +2943,8 @@
cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
@@ -3002,7 +3011,8 @@
cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
@@ -3118,7 +3128,81 @@
done
-if test -n $HAVE_CRYPT_H; then
+echo "$as_me:$LINENO: checking for crypt in -lcrypt" >&5
+echo $ECHO_N "checking for crypt in -lcrypt... $ECHO_C" >&6
+if test "${ac_cv_lib_crypt_crypt+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lcrypt $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char crypt ();
+int
+main ()
+{
+crypt ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_lib_crypt_crypt=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_lib_crypt_crypt=no
+fi
+rm -f conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:$LINENO: result: $ac_cv_lib_crypt_crypt" >&5
+echo "${ECHO_T}$ac_cv_lib_crypt_crypt" >&6
+if test $ac_cv_lib_crypt_crypt = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_LIBCRYPT 1
+_ACEOF
+
+ LIBS="-lcrypt $LIBS"
+
+fi
+
+
+if test -n $HAVE_CRYPT_H -a $HAVE_LIBCRYPT; then
if test "$cross_compiling" = yes; then
{ { echo "$as_me:$LINENO: error: cannot run test program while cross compiling
See \`config.log' for more details." >&5
@@ -3133,7 +3217,9 @@
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
+#ifdef HAVE_CRYPT_H
#include <crypt.h>
+#endif
#include <string.h>
int main()
@@ -3181,7 +3267,9 @@
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
+#ifdef HAVE_CRYPT_H
#include <crypt.h>
+#endif
#include <string.h>
int main()
@@ -3294,7 +3382,8 @@
cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
@@ -3366,7 +3455,8 @@
cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
@@ -4187,6 +4277,11 @@
+ if test x"$ac_file" != x-; then
+ { echo "$as_me:$LINENO: creating $ac_file" >&5
+echo "$as_me: creating $ac_file" >&6;}
+ rm -f "$ac_file"
+ fi
# Let's still pretend it is `configure' which instantiates (i.e., don't
# use $as_me), people would be surprised to read:
# /* config.h. Generated by config.status. */
@@ -4225,12 +4320,6 @@
fi;;
esac
done` || { (exit 1); exit 1; }
-
- if test x"$ac_file" != x-; then
- { echo "$as_me:$LINENO: creating $ac_file" >&5
-echo "$as_me: creating $ac_file" >&6;}
- rm -f "$ac_file"
- fi
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF
sed "$ac_vpsub

View file

@ -0,0 +1,32 @@
$NetBSD: patch-ad,v 1.1.1.1 2004/07/16 11:28:19 jdolecek Exp $
--- mod_auth_mysql.c.orig 2003-11-18 13:59:00.000000000 +0100
+++ mod_auth_mysql.c
@@ -62,7 +62,7 @@ static int auth_db_override = 1;
#define CRYPT_MD5_ENCRYPTION_FLAG 1<<3
#endif
#define PHP_MD5_ENCRYPTION_FLAG 1<<4
-#ifdef HAVE_CRYPT_H
+#if defined(HAVE_CRYPT_H) || defined(HAVE_LIBCRYPT)
#define CRYPT_ENCRYPTION_FLAG 1<<5
#endif
@@ -94,7 +94,7 @@ static int check_crypt_MD5_encryption(co
}
#endif
-#ifdef HAVE_CRYPT_H
+#if defined(HAVE_CRYPT_H) || defined(HAVE_LIBCRYPT)
static int check_crypt_encryption(const char *passwd, char *enc_passwd)
{
return (!strcmp(crypt(passwd, enc_passwd), enc_passwd));
@@ -165,7 +165,9 @@ encryption_type_entry supported_encrypti
#if CRYPT_MD5
{ "Crypt_MD5", check_crypt_MD5_encryption, CRYPT_MD5_ENCRYPTION_FLAG },
#endif
+#if defined(HAVE_CRYPT_H) || defined(HAVE_LIBCRYPT)
{ "Crypt", check_crypt_encryption, CRYPT_ENCRYPTION_FLAG },
+#endif
{ "PHP_MD5", check_PHP_MD5_encryption, PHP_MD5_ENCRYPTION_FLAG },
/* add additional encryption types below */
{ NULL, NULL, 0 }