summaryrefslogtreecommitdiff
path: root/www
diff options
context:
space:
mode:
authorryoon <ryoon>2012-04-13 18:50:48 +0000
committerryoon <ryoon>2012-04-13 18:50:48 +0000
commit2a72fac7b6fe47b84d02322a92f0b749b023b367 (patch)
tree51e37be287a6e18a7abdb19c97d6a35d192b7d1d /www
parentf57dd7af6748e74fd106132e2fd6206a5ea4097a (diff)
downloadpkgsrc-2a72fac7b6fe47b84d02322a92f0b749b023b367.tar.gz
Import apache-2.4.1 as www/apache24.
The Apache HTTP Server Project is an effort to develop and maintain an open-source HTTP server for various modern desktop and server operating systems, such as UNIX and Windows NT. The goal of this project is to provide a secure, efficient and extensible server which provides HTTP services in sync with the current HTTP standards. This package tracks 2.4.x release.
Diffstat (limited to 'www')
-rw-r--r--www/apache24/DESCR7
-rw-r--r--www/apache24/Makefile211
-rw-r--r--www/apache24/PLIST1409
-rw-r--r--www/apache24/buildlink3.mk27
-rw-r--r--www/apache24/distinfo15
-rw-r--r--www/apache24/files/apache.sh57
-rw-r--r--www/apache24/files/mkcert.sh914
-rw-r--r--www/apache24/options.mk59
-rw-r--r--www/apache24/patches/patch-aa146
-rw-r--r--www/apache24/patches/patch-ab15
-rw-r--r--www/apache24/patches/patch-ac12
-rw-r--r--www/apache24/patches/patch-ad31
-rw-r--r--www/apache24/patches/patch-ae59
-rw-r--r--www/apache24/patches/patch-ag16
-rw-r--r--www/apache24/patches/patch-ai19
-rw-r--r--www/apache24/patches/patch-al31
-rw-r--r--www/apache24/patches/patch-am13
-rw-r--r--www/apache24/patches/patch-aw15
18 files changed, 3056 insertions, 0 deletions
diff --git a/www/apache24/DESCR b/www/apache24/DESCR
new file mode 100644
index 00000000000..cf30b6520e6
--- /dev/null
+++ b/www/apache24/DESCR
@@ -0,0 +1,7 @@
+The Apache HTTP Server Project is an effort to develop and maintain an
+open-source HTTP server for various modern desktop and server operating
+systems, such as UNIX and Windows NT. The goal of this project is to
+provide a secure, efficient and extensible server which provides HTTP
+services in sync with the current HTTP standards.
+
+This package tracks 2.4.x release.
diff --git a/www/apache24/Makefile b/www/apache24/Makefile
new file mode 100644
index 00000000000..7f276b09c73
--- /dev/null
+++ b/www/apache24/Makefile
@@ -0,0 +1,211 @@
+# $NetBSD: Makefile,v 1.1.1.1 2012/04/13 18:50:48 ryoon Exp $
+#
+
+DISTNAME= httpd-2.4.1
+PKGNAME= ${DISTNAME:S/httpd/apache/}
+CATEGORIES= www
+MASTER_SITES= ${MASTER_SITE_APACHE:=httpd/} \
+ http://archive.apache.org/dist/httpd/ \
+ http://archive.eu.apache.org/dist/httpd/
+EXTRACT_SUFX= .tar.bz2
+
+MAINTAINER= ryoon@NetBSD.org
+HOMEPAGE= http://httpd.apache.org/
+COMMENT= Apache HTTP (Web) server, version 2.4
+LICENSE= apache-2.0
+
+PKG_DESTDIR_SUPPORT= user-destdir
+
+BUILD_DEFS+= IPV6_READY
+BUILD_DEFS+= VARBASE
+BUILD_DEFS+= APACHE_CUSTOM_CFLAGS
+
+GNU_CONFIGURE= yes
+USE_LIBTOOL= yes
+USE_TOOLS+= pax perl pkg-config
+
+CONFIGURE_ENV+= perlbin=${PERL5:Q}
+CONFIGURE_ENV+= ac_cv_path_RSYNC=/nonexistent
+CONFIGURE_ENV+= CFLAGS=${APACHE_CUSTOM_CFLAGS:M*:Q}
+
+CONFIGURE_ARGS+= --enable-layout=NetBSD
+CONFIGURE_ARGS+= --with-port=80
+CONFIGURE_ARGS+= --enable-so
+CONFIGURE_ARGS+= --enable-mods-shared=all
+
+CONFIGURE_ARGS+= --with-apr=${BUILDLINK_PREFIX.apr}
+CONFIGURE_ARGS+= --with-apr-util=${BUILDLINK_PREFIX.apr-util}
+
+.include "../../mk/bsd.prefs.mk"
+.include "../../devel/apr/buildlink3.mk"
+.include "../../devel/apr-util/buildlink3.mk"
+.include "../../devel/pcre/buildlink3.mk"
+.include "../../security/openssl/buildlink3.mk"
+.include "../../textproc/expat/buildlink3.mk"
+.include "../../mk/dlopen.buildlink3.mk"
+.include "../../mk/pthread.buildlink3.mk"
+
+CONFIGURE_ARGS+= --disable-include
+CONFIGURE_ARGS+= --disable-log-config
+CONFIGURE_ARGS+= --disable-env
+CONFIGURE_ARGS+= --disable-mime
+CONFIGURE_ARGS+= --disable-setenvif
+CONFIGURE_ARGS+= --disable-status
+CONFIGURE_ARGS+= --disable-autoindex
+CONFIGURE_ARGS+= --disable-asis
+CONFIGURE_ARGS+= --disable-cgi
+CONFIGURE_ARGS+= --disable-negotiation
+CONFIGURE_ARGS+= --disable-dir
+CONFIGURE_ARGS+= --disable-actions
+CONFIGURE_ARGS+= --disable-userdir
+CONFIGURE_ARGS+= --disable-alias
+
+DFLT_APACHE_MODULES+= all
+APACHE_MODULES?= ${DFLT_APACHE_MODULES}
+
+.include "options.mk"
+
+FIND_PREFIX:= APRDIR=apr
+.include "../../mk/find-prefix.mk"
+
+# LDAP support
+PLIST_VARS+= ldap
+.if exists(${APRDIR}/lib/apr-util-1/apr_ldap.la) || !empty(PKG_OPTIONS:Mapache-shared-modules)
+DFLT_APACHE_MODULES+= ldap authnz_ldap
+PLIST.ldap= yes
+.endif
+
+APACHE_USER?= www
+APACHE_GROUP?= www
+PKG_GROUPS= ${APACHE_GROUP}
+PKG_USERS= ${APACHE_USER}:${APACHE_GROUP}
+PKG_GROUPS_VARS= APACHE_GROUP
+PKG_USERS_VARS= APACHE_USER
+
+PKG_SYSCONFVAR= apache
+PKG_SYSCONFSUBDIR?= httpd
+EGDIR= ${PREFIX}/share/examples/httpd
+SBINDIR= ${PREFIX}/sbin
+CONF_FILES+= ${EGDIR}/httpd.conf ${PKG_SYSCONFDIR}/httpd.conf
+.for f in autoindex dav default info languages manual mpm \
+ multilang-errordoc ssl userdir vhosts
+CONF_FILES+= ${EGDIR}/extra/httpd-${f}.conf \
+ ${PKG_SYSCONFDIR}/httpd-${f}.conf
+.endfor
+CONF_FILES+= ${EGDIR}/magic ${PKG_SYSCONFDIR}/magic
+CONF_FILES+= ${EGDIR}/mime.types ${PKG_SYSCONFDIR}/mime.types
+RCD_SCRIPTS= apache
+
+REQD_DIRS= ${PREFIX}/share/httpd
+REQD_DIRS+= ${PREFIX}/share/httpd/htdocs
+OWN_DIRS= ${VARBASE}/log/httpd
+OWN_DIRS+= ${VARBASE}/db/httpd
+OWN_DIRS_PERMS+= ${VARBASE}/db/httpd/proxy ${APACHE_USER} ${APACHE_GROUP} 0755
+FIX_PERMS_SBIN= apachectl envvars-std
+FIX_PERMS_BIN= apxs dbmmanage mkcert
+FIX_MAN_PERMS= man1/htdbm.1 man1/htpasswd.1 man1/htdigest.1
+FIX_MAN_PERMS+= man1/dbmmanage.1 man8/httpd.8 man8/suexec.8
+FIX_MAN_PERMS+= man8/rotatelogs.8 man1/logresolve.1 man1/apxs.1
+FIX_MAN_PERMS+= man8/apachectl.8 man1/ab.1 man1/httxt2dbm.1
+
+# Fix paths in the apache manpages.
+SUBST_CLASSES+= man
+SUBST_STAGE.man= post-patch
+SUBST_MESSAGE.man= Fixing paths in man pages.
+SUBST_FILES.man= docs/man/*.1 docs/man/*.8
+SUBST_SED.man= -e 's,/usr/local/etc/apache,${PKG_SYSCONFDIR},'
+SUBST_SED.man+= -e 's,/path/to/apache/etc,${PKG_SYSCONFDIR},'
+SUBST_SED.man+= -e 's,/usr/local/apache2,${PREFIX}/share/httpd/htdocs,'
+SUBST_SED.man+= -e 's,/usr/web,${PREFIX}/share/httpd/htdocs,'
+
+SUBST_CLASSES+= paths
+SUBST_STAGE.paths= pre-configure
+SUBST_MESSAGE.paths= Fixing paths.
+SUBST_FILES.paths= config.layout Makefile.in support/apxs.in
+SUBST_SED.paths= -e "s|@PREFIX@|${PREFIX}|g"
+SUBST_SED.paths+= -e "s|@VARBASE@|${VARBASE}|g"
+SUBST_SED.paths+= -e "s|@SYSCONFDIR@|${PKG_SYSCONFDIR}|g"
+SUBST_SED.paths+= -e "s|@PAX@|${PAX}|g"
+SUBST_SED.paths+= -e "s|@LOCALBASE@|${PREFIX}|g"
+
+SUBST_CLASSES+= apr-lt
+SUBST_STAGE.apr-lt= post-configure
+SUBST_MESSAGE.apr-lt= Fixing libtool references.
+SUBST_FILES.apr-lt= build/config_vars.mk
+SUBST_SED.apr-lt= -e 's|^\(LIBTOOL =\) [^ ]*|\1 $$(SHELL) $$(top_builddir)/build/libtool|g'
+
+SUBST_CLASSES+= confs
+SUBST_STAGE.confs= post-configure
+SUBST_MESSAGE.confs= Fixing configuration files.
+SUBST_FILES.confs= docs/conf/httpd.conf
+SUBST_FILES.confs+= docs/conf/extra/httpd-ssl.conf
+SUBST_SED.confs= -e "s|${EGDIR}|${PKG_SYSCONFDIR}|g"
+SUBST_SED.confs+= -e "s|${PREFIX}/htdocs|${PREFIX}/share/httpd/htdocs|g"
+SUBST_SED.confs+= -e "s|${PREFIX}/conf|${PKG_SYSCONFDIR}|g"
+SUBST_SED.confs+= -e "s|logs/|${VARBASE}/log/httpd/|g"
+SUBST_SED.confs+= -e 's|/var/log/httpd/foo\.log|logs/foo.log/|g'
+SUBST_SED.confs+= -e 's|^\(User[ ]\).*|\1${APACHE_USER}|g'
+SUBST_SED.confs+= -e 's|^\(Group[ ]\).*|\1${APACHE_GROUP}|g'
+SUBST_SED.confs+= -e 's|^Listen \(.*\)|Listen 0.0.0.0:\1|g'
+
+# abs_srcdir in config_vars.mk is used during install so needs to reference
+# the work dir path, and by other packages such as ap2-fastcgi after install,
+# so we fix after install to reference the installed path
+SUBST_CLASSES+= abs_srcdir
+SUBST_STAGE.abs_srcdir= post-install
+SUBST_MESSAGE.abs_srcdir= Fixing abs_srcdir
+SUBST_FILES.abs_srcdir= ${DESTDIR}${PREFIX}/share/httpd/build/config_vars.mk
+SUBST_SED.abs_srcdir= -e 's|^\(abs_srcdir =\) .*|\1 ${PREFIX}/share/httpd|'
+
+REPLACE_PERL= docs/cgi-examples/printenv
+
+.if !empty(PKG_OPTIONS:Mapache-shared-modules)
+. include "../../devel/zlib/buildlink3.mk"
+CONFIGURE_ARGS+= --with-ssl=${BUILDLINK_PREFIX.openssl}
+CONFIGURE_ARGS+= --with-z=${BUILDLINK_PREFIX.zlib}
+.endif
+
+post-extract:
+ ${TOUCH} ${WRKSRC}/build/libtool
+ ${ECHO} "" >> ${WRKSRC}/docs/conf/extra/httpd-languages.conf.in
+
+post-build:
+ ${SED} "s#@PKG_SYSCONFDIR@#${PKG_SYSCONFDIR}#g" \
+ < ${FILESDIR}/mkcert.sh > ${WRKDIR}/mkcert
+
+INSTALL_TARGET= install-conf install
+INSTALL_MAKE_FLAGS+= sysconfdir="${EGDIR}"
+
+post-install:
+ ${LN} -sf ${APRDIR}/libexec/apr/libtool ${DESTDIR}${PREFIX}/share/httpd/build
+ ${LN} -sf ${SBINDIR}/envvars-std ${DESTDIR}${SBINDIR}/envvars
+
+ ${INSTALL_SCRIPT} ${WRKDIR}/mkcert ${DESTDIR}${PREFIX}/bin
+
+.for file in ${FIX_PERMS_SBIN}
+ ${CHOWN} ${BINOWN}:${BINGRP} ${DESTDIR}${PREFIX}/sbin/${file}
+ ${CHMOD} ${BINMODE} ${DESTDIR}${PREFIX}/sbin/${file}
+.endfor
+
+.for file in ${FIX_PERMS_BIN}
+ ${CHOWN} ${BINOWN}:${BINGRP} ${DESTDIR}${PREFIX}/bin/${file}
+ ${CHMOD} ${BINMODE} ${DESTDIR}${PREFIX}/bin/${file}
+.endfor
+
+ ${CHOWN} -h -R ${BINOWN}:${BINGRP} ${DESTDIR}${PREFIX}/share/httpd
+ ${CHOWN} -h -R ${BINOWN}:${BINGRP} ${DESTDIR}${PREFIX}/include/httpd
+ ${CHOWN} -h -R ${BINOWN}:${BINGRP} ${DESTDIR}${PREFIX}/lib/httpd
+ ${CHOWN} ${BINOWN}:${BINGRP} ${DESTDIR}${PREFIX}/libexec/cgi-bin/test-cgi
+ ${CHOWN} ${BINOWN}:${BINGRP} ${DESTDIR}${PREFIX}/libexec/cgi-bin/printenv
+
+.for file in ${FIX_MAN_PERMS}
+ ${CHOWN} ${MANOWN}:${MANGRP} ${DESTDIR}${PREFIX}/${PKGMANDIR}/${file}
+.endfor
+
+ ${CHMOD} -x ${DESTDIR}${PREFIX}/sbin/envvars-std
+.if exists(${DESTDIR}${PREFIX}/sbin/suexec)
+ ${CHMOD} -w ${DESTDIR}${PREFIX}/sbin/suexec
+.endif
+
+.include "../../mk/pthread.buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/www/apache24/PLIST b/www/apache24/PLIST
new file mode 100644
index 00000000000..06e45fe3ef5
--- /dev/null
+++ b/www/apache24/PLIST
@@ -0,0 +1,1409 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $
+bin/ab
+bin/apxs
+bin/dbmmanage
+bin/htdbm
+bin/htdigest
+bin/htpasswd
+bin/httxt2dbm
+bin/logresolve
+bin/mkcert
+include/httpd/ap_compat.h
+include/httpd/ap_config.h
+include/httpd/ap_config_auto.h
+include/httpd/ap_config_layout.h
+include/httpd/ap_expr.h
+include/httpd/ap_hooks.h
+include/httpd/ap_listen.h
+include/httpd/ap_mmn.h
+include/httpd/ap_mpm.h
+include/httpd/ap_provider.h
+include/httpd/ap_regex.h
+include/httpd/ap_regkey.h
+include/httpd/ap_release.h
+include/httpd/ap_slotmem.h
+include/httpd/ap_socache.h
+include/httpd/apache_noprobes.h
+include/httpd/heartbeat.h
+include/httpd/http_config.h
+include/httpd/http_connection.h
+include/httpd/http_core.h
+include/httpd/http_log.h
+include/httpd/http_main.h
+include/httpd/http_protocol.h
+include/httpd/http_request.h
+include/httpd/http_vhost.h
+include/httpd/httpd.h
+include/httpd/mod_auth.h
+include/httpd/mod_cache.h
+include/httpd/mod_cgi.h
+include/httpd/mod_core.h
+include/httpd/mod_dav.h
+include/httpd/mod_dbd.h
+include/httpd/mod_include.h
+include/httpd/mod_log_config.h
+include/httpd/mod_proxy.h
+include/httpd/mod_request.h
+include/httpd/mod_rewrite.h
+include/httpd/mod_session.h
+include/httpd/mod_so.h
+include/httpd/mod_ssl.h
+include/httpd/mod_status.h
+include/httpd/mod_unixd.h
+include/httpd/mod_watchdog.h
+include/httpd/mpm_common.h
+include/httpd/os.h
+include/httpd/scoreboard.h
+include/httpd/unixd.h
+include/httpd/util_cfgtree.h
+include/httpd/util_charset.h
+include/httpd/util_cookies.h
+include/httpd/util_ebcdic.h
+include/httpd/util_filter.h
+include/httpd/util_ldap.h
+include/httpd/util_md5.h
+include/httpd/util_mutex.h
+include/httpd/util_script.h
+include/httpd/util_time.h
+include/httpd/util_varbuf.h
+include/httpd/util_xml.h
+lib/httpd/httpd.exp
+lib/httpd/mod_access_compat.so
+lib/httpd/mod_allowmethods.so
+lib/httpd/mod_auth_basic.so
+lib/httpd/mod_auth_digest.so
+lib/httpd/mod_auth_form.so
+lib/httpd/mod_authn_anon.so
+lib/httpd/mod_authn_core.so
+lib/httpd/mod_authn_dbd.so
+lib/httpd/mod_authn_dbm.so
+lib/httpd/mod_authn_file.so
+lib/httpd/mod_authn_socache.so
+${PLIST.ldap}lib/httpd/mod_authnz_ldap.so
+lib/httpd/mod_authz_core.so
+lib/httpd/mod_authz_dbd.so
+lib/httpd/mod_authz_dbm.so
+lib/httpd/mod_authz_groupfile.so
+lib/httpd/mod_authz_host.so
+lib/httpd/mod_authz_owner.so
+lib/httpd/mod_authz_user.so
+lib/httpd/mod_buffer.so
+lib/httpd/mod_cache.so
+lib/httpd/mod_cache_disk.so
+${PLIST.worker}lib/httpd/mod_cgid.so
+lib/httpd/mod_charset_lite.so
+lib/httpd/mod_data.so
+lib/httpd/mod_dav.so
+lib/httpd/mod_dav_fs.so
+lib/httpd/mod_dav_lock.so
+lib/httpd/mod_dbd.so
+lib/httpd/mod_deflate.so
+lib/httpd/mod_dialup.so
+lib/httpd/mod_dumpio.so
+lib/httpd/mod_echo.so
+lib/httpd/mod_expires.so
+lib/httpd/mod_ext_filter.so
+lib/httpd/mod_file_cache.so
+lib/httpd/mod_filter.so
+lib/httpd/mod_headers.so
+lib/httpd/mod_heartbeat.so
+lib/httpd/mod_heartmonitor.so
+lib/httpd/mod_info.so
+lib/httpd/mod_lbmethod_bybusyness.so
+lib/httpd/mod_lbmethod_byrequests.so
+lib/httpd/mod_lbmethod_bytraffic.so
+lib/httpd/mod_lbmethod_heartbeat.so
+${PLIST.ldap}lib/httpd/mod_ldap.so
+lib/httpd/mod_log_debug.so
+lib/httpd/mod_log_forensic.so
+lib/httpd/mod_logio.so
+lib/httpd/mod_lua.so
+lib/httpd/mod_mime_magic.so
+lib/httpd/mod_proxy.so
+lib/httpd/mod_proxy_ajp.so
+lib/httpd/mod_proxy_balancer.so
+lib/httpd/mod_proxy_connect.so
+lib/httpd/mod_proxy_express.so
+lib/httpd/mod_proxy_fcgi.so
+lib/httpd/mod_proxy_fdpass.so
+lib/httpd/mod_proxy_ftp.so
+lib/httpd/mod_proxy_http.so
+lib/httpd/mod_proxy_scgi.so
+lib/httpd/mod_ratelimit.so
+lib/httpd/mod_reflector.so
+lib/httpd/mod_remoteip.so
+lib/httpd/mod_reqtimeout.so
+lib/httpd/mod_request.so
+lib/httpd/mod_rewrite.so
+lib/httpd/mod_sed.so
+lib/httpd/mod_session.so
+lib/httpd/mod_session_cookie.so
+lib/httpd/mod_session_dbd.so
+lib/httpd/mod_slotmem_plain.so
+lib/httpd/mod_slotmem_shm.so
+lib/httpd/mod_socache_dbm.so
+lib/httpd/mod_socache_memcache.so
+lib/httpd/mod_socache_shmcb.so
+lib/httpd/mod_speling.so
+lib/httpd/mod_ssl.so
+lib/httpd/mod_substitute.so
+lib/httpd/mod_unique_id.so
+lib/httpd/mod_unixd.so
+lib/httpd/mod_usertrack.so
+lib/httpd/mod_version.so
+lib/httpd/mod_vhost_alias.so
+lib/httpd/mod_watchdog.so
+libexec/cgi-bin/printenv
+libexec/cgi-bin/test-cgi
+man/man1/ab.1
+man/man1/apxs.1
+man/man1/dbmmanage.1
+man/man1/htdbm.1
+man/man1/htdigest.1
+man/man1/htpasswd.1
+man/man1/httxt2dbm.1
+man/man1/logresolve.1
+man/man8/apachectl.8
+man/man8/htcacheclean.8
+man/man8/httpd.8
+man/man8/rotatelogs.8
+man/man8/suexec.8
+sbin/apachectl
+sbin/checkgid
+sbin/envvars
+sbin/envvars-std
+sbin/fcgistarter
+sbin/htcacheclean
+sbin/httpd
+sbin/rotatelogs
+${PLIST.suexec}sbin/suexec
+share/examples/httpd/extra/httpd-autoindex.conf
+share/examples/httpd/extra/httpd-dav.conf
+share/examples/httpd/extra/httpd-default.conf
+share/examples/httpd/extra/httpd-info.conf
+share/examples/httpd/extra/httpd-languages.conf
+share/examples/httpd/extra/httpd-manual.conf
+share/examples/httpd/extra/httpd-mpm.conf
+share/examples/httpd/extra/httpd-multilang-errordoc.conf
+share/examples/httpd/extra/httpd-ssl.conf
+share/examples/httpd/extra/httpd-userdir.conf
+share/examples/httpd/extra/httpd-vhosts.conf
+share/examples/httpd/extra/proxy-html.conf
+share/examples/httpd/httpd.conf
+share/examples/httpd/magic
+share/examples/httpd/mime.types
+share/examples/rc.d/apache
+share/httpd/build/config.nice
+share/httpd/build/config_vars.mk
+share/httpd/build/instdso.sh
+share/httpd/build/library.mk
+share/httpd/build/libtool
+share/httpd/build/ltlib.mk
+share/httpd/build/mkdir.sh
+share/httpd/build/program.mk
+share/httpd/build/rules.mk
+share/httpd/build/special.mk
+share/httpd/error/HTTP_BAD_GATEWAY.html.var
+share/httpd/error/HTTP_BAD_REQUEST.html.var
+share/httpd/error/HTTP_FORBIDDEN.html.var
+share/httpd/error/HTTP_GONE.html.var
+share/httpd/error/HTTP_INTERNAL_SERVER_ERROR.html.var
+share/httpd/error/HTTP_LENGTH_REQUIRED.html.var
+share/httpd/error/HTTP_METHOD_NOT_ALLOWED.html.var
+share/httpd/error/HTTP_NOT_FOUND.html.var
+share/httpd/error/HTTP_NOT_IMPLEMENTED.html.var
+share/httpd/error/HTTP_PRECONDITION_FAILED.html.var
+share/httpd/error/HTTP_REQUEST_ENTITY_TOO_LARGE.html.var
+share/httpd/error/HTTP_REQUEST_TIME_OUT.html.var
+share/httpd/error/HTTP_REQUEST_URI_TOO_LARGE.html.var
+share/httpd/error/HTTP_SERVICE_UNAVAILABLE.html.var
+share/httpd/error/HTTP_UNAUTHORIZED.html.var
+share/httpd/error/HTTP_UNSUPPORTED_MEDIA_TYPE.html.var
+share/httpd/error/HTTP_VARIANT_ALSO_VARIES.html.var
+share/httpd/error/README
+share/httpd/error/contact.html.var
+share/httpd/error/include/bottom.html
+share/httpd/error/include/spacer.html
+share/httpd/error/include/top.html
+share/httpd/htdocs/index.html
+share/httpd/icons/README
+share/httpd/icons/README.html
+share/httpd/icons/a.gif
+share/httpd/icons/a.png
+share/httpd/icons/alert.black.gif
+share/httpd/icons/alert.black.png
+share/httpd/icons/alert.red.gif
+share/httpd/icons/alert.red.png
+share/httpd/icons/apache_pb.gif
+share/httpd/icons/apache_pb.png
+share/httpd/icons/apache_pb2.gif
+share/httpd/icons/apache_pb2.png
+share/httpd/icons/apache_pb2_ani.gif
+share/httpd/icons/back.gif
+share/httpd/icons/back.png
+share/httpd/icons/ball.gray.gif
+share/httpd/icons/ball.gray.png
+share/httpd/icons/ball.red.gif
+share/httpd/icons/ball.red.png
+share/httpd/icons/binary.gif
+share/httpd/icons/binary.png
+share/httpd/icons/binhex.gif
+share/httpd/icons/binhex.png
+share/httpd/icons/blank.gif
+share/httpd/icons/blank.png
+share/httpd/icons/bomb.gif
+share/httpd/icons/bomb.png
+share/httpd/icons/box1.gif
+share/httpd/icons/box1.png
+share/httpd/icons/box2.gif
+share/httpd/icons/box2.png
+share/httpd/icons/broken.gif
+share/httpd/icons/broken.png
+share/httpd/icons/burst.gif
+share/httpd/icons/burst.png
+share/httpd/icons/c.gif
+share/httpd/icons/c.png
+share/httpd/icons/comp.blue.gif
+share/httpd/icons/comp.blue.png
+share/httpd/icons/comp.gray.gif
+share/httpd/icons/comp.gray.png
+share/httpd/icons/compressed.gif
+share/httpd/icons/compressed.png
+share/httpd/icons/continued.gif
+share/httpd/icons/continued.png
+share/httpd/icons/dir.gif
+share/httpd/icons/dir.png
+share/httpd/icons/diskimg.gif
+share/httpd/icons/diskimg.png
+share/httpd/icons/down.gif
+share/httpd/icons/down.png
+share/httpd/icons/dvi.gif
+share/httpd/icons/dvi.png
+share/httpd/icons/f.gif
+share/httpd/icons/f.png
+share/httpd/icons/folder.gif
+share/httpd/icons/folder.open.gif
+share/httpd/icons/folder.open.png
+share/httpd/icons/folder.png
+share/httpd/icons/folder.sec.gif
+share/httpd/icons/folder.sec.png
+share/httpd/icons/forward.gif
+share/httpd/icons/forward.png
+share/httpd/icons/generic.gif
+share/httpd/icons/generic.png
+share/httpd/icons/generic.red.gif
+share/httpd/icons/generic.red.png
+share/httpd/icons/generic.sec.gif
+share/httpd/icons/generic.sec.png
+share/httpd/icons/hand.right.gif
+share/httpd/icons/hand.right.png
+share/httpd/icons/hand.up.gif
+share/httpd/icons/hand.up.png
+share/httpd/icons/icon.sheet.gif
+share/httpd/icons/icon.sheet.png
+share/httpd/icons/image1.gif
+share/httpd/icons/image1.png
+share/httpd/icons/image2.gif
+share/httpd/icons/image2.png
+share/httpd/icons/image3.gif
+share/httpd/icons/image3.png
+share/httpd/icons/index.gif
+share/httpd/icons/index.png
+share/httpd/icons/layout.gif
+share/httpd/icons/layout.png
+share/httpd/icons/left.gif
+share/httpd/icons/left.png
+share/httpd/icons/link.gif
+share/httpd/icons/link.png
+share/httpd/icons/movie.gif
+share/httpd/icons/movie.png
+share/httpd/icons/odf6odb.png
+share/httpd/icons/odf6odc.png
+share/httpd/icons/odf6odf.png
+share/httpd/icons/odf6odg.png
+share/httpd/icons/odf6odi.png
+share/httpd/icons/odf6odm.png
+share/httpd/icons/odf6odp.png
+share/httpd/icons/odf6ods.png
+share/httpd/icons/odf6odt.png
+share/httpd/icons/odf6otc.png
+share/httpd/icons/odf6otf.png
+share/httpd/icons/odf6otg.png
+share/httpd/icons/odf6oth.png
+share/httpd/icons/odf6oti.png
+share/httpd/icons/odf6otp.png
+share/httpd/icons/odf6ots.png
+share/httpd/icons/odf6ott.png
+share/httpd/icons/p.gif
+share/httpd/icons/p.png
+share/httpd/icons/patch.gif
+share/httpd/icons/patch.png
+share/httpd/icons/pdf.gif
+share/httpd/icons/pdf.png
+share/httpd/icons/pie0.gif
+share/httpd/icons/pie0.png
+share/httpd/icons/pie1.gif
+share/httpd/icons/pie1.png
+share/httpd/icons/pie2.gif
+share/httpd/icons/pie2.png
+share/httpd/icons/pie3.gif
+share/httpd/icons/pie3.png
+share/httpd/icons/pie4.gif
+share/httpd/icons/pie4.png
+share/httpd/icons/pie5.gif
+share/httpd/icons/pie5.png
+share/httpd/icons/pie6.gif
+share/httpd/icons/pie6.png
+share/httpd/icons/pie7.gif
+share/httpd/icons/pie7.png
+share/httpd/icons/pie8.gif
+share/httpd/icons/pie8.png
+share/httpd/icons/portal.gif
+share/httpd/icons/portal.png
+share/httpd/icons/ps.gif
+share/httpd/icons/ps.png
+share/httpd/icons/quill.gif
+share/httpd/icons/quill.png
+share/httpd/icons/right.gif
+share/httpd/icons/right.png
+share/httpd/icons/screw1.gif
+share/httpd/icons/screw1.png
+share/httpd/icons/screw2.gif
+share/httpd/icons/screw2.png
+share/httpd/icons/script.gif
+share/httpd/icons/script.png
+share/httpd/icons/small/back.gif
+share/httpd/icons/small/back.png
+share/httpd/icons/small/binary.gif
+share/httpd/icons/small/binary.png
+share/httpd/icons/small/binhex.gif
+share/httpd/icons/small/binhex.png
+share/httpd/icons/small/blank.gif
+share/httpd/icons/small/blank.png
+share/httpd/icons/small/broken.gif
+share/httpd/icons/small/broken.png
+share/httpd/icons/small/burst.gif
+share/httpd/icons/small/burst.png
+share/httpd/icons/small/comp1.gif
+share/httpd/icons/small/comp1.png
+share/httpd/icons/small/comp2.gif
+share/httpd/icons/small/comp2.png
+share/httpd/icons/small/compressed.gif
+share/httpd/icons/small/compressed.png
+share/httpd/icons/small/continued.gif
+share/httpd/icons/small/continued.png
+share/httpd/icons/small/doc.gif
+share/httpd/icons/small/doc.png
+share/httpd/icons/small/folder.gif
+share/httpd/icons/small/folder.png
+share/httpd/icons/small/folder2.gif
+share/httpd/icons/small/folder2.png
+share/httpd/icons/small/forward.gif
+share/httpd/icons/small/forward.png
+share/httpd/icons/small/generic.gif
+share/httpd/icons/small/generic.png
+share/httpd/icons/small/generic2.gif
+share/httpd/icons/small/generic2.png
+share/httpd/icons/small/generic3.gif
+share/httpd/icons/small/generic3.png
+share/httpd/icons/small/image.gif
+share/httpd/icons/small/image.png
+share/httpd/icons/small/image2.gif
+share/httpd/icons/small/image2.png
+share/httpd/icons/small/index.gif
+share/httpd/icons/small/index.png
+share/httpd/icons/small/key.gif
+share/httpd/icons/small/key.png
+share/httpd/icons/small/movie.gif
+share/httpd/icons/small/movie.png
+share/httpd/icons/small/patch.gif
+share/httpd/icons/small/patch.png
+share/httpd/icons/small/ps.gif
+share/httpd/icons/small/ps.png
+share/httpd/icons/small/rainbow.gif
+share/httpd/icons/small/rainbow.png
+share/httpd/icons/small/sound.gif
+share/httpd/icons/small/sound.png
+share/httpd/icons/small/sound2.gif
+share/httpd/icons/small/sound2.png
+share/httpd/icons/small/tar.gif
+share/httpd/icons/small/tar.png
+share/httpd/icons/small/text.gif
+share/httpd/icons/small/text.png
+share/httpd/icons/small/transfer.gif
+share/httpd/icons/small/transfer.png
+share/httpd/icons/small/unknown.gif
+share/httpd/icons/small/unknown.png
+share/httpd/icons/small/uu.gif
+share/httpd/icons/small/uu.png
+share/httpd/icons/sound1.gif
+share/httpd/icons/sound1.png
+share/httpd/icons/sound2.gif
+share/httpd/icons/sound2.png
+share/httpd/icons/sphere1.gif
+share/httpd/icons/sphere1.png
+share/httpd/icons/sphere2.gif
+share/httpd/icons/sphere2.png
+share/httpd/icons/svg.png
+share/httpd/icons/tar.gif
+share/httpd/icons/tar.png
+share/httpd/icons/tex.gif
+share/httpd/icons/tex.png
+share/httpd/icons/text.gif
+share/httpd/icons/text.png
+share/httpd/icons/transfer.gif
+share/httpd/icons/transfer.png
+share/httpd/icons/unknown.gif
+share/httpd/icons/unknown.png
+share/httpd/icons/up.gif
+share/httpd/icons/up.png
+share/httpd/icons/uu.gif
+share/httpd/icons/uu.png
+share/httpd/icons/uuencoded.gif
+share/httpd/icons/uuencoded.png
+share/httpd/icons/world1.gif
+share/httpd/icons/world1.png
+share/httpd/icons/world2.gif
+share/httpd/icons/world2.png
+share/httpd/icons/xml.png
+share/httpd/manual/BUILDING
+share/httpd/manual/LICENSE
+share/httpd/manual/bind.html
+share/httpd/manual/bind.html.de
+share/httpd/manual/bind.html.en
+share/httpd/manual/bind.html.fr
+share/httpd/manual/bind.html.ja.utf8
+share/httpd/manual/bind.html.ko.euc-kr
+share/httpd/manual/bind.html.tr.utf8
+share/httpd/manual/caching.html
+share/httpd/manual/caching.html.en
+share/httpd/manual/caching.html.fr
+share/httpd/manual/caching.html.tr.utf8
+share/httpd/manual/configuring.html
+share/httpd/manual/configuring.html.de
+share/httpd/manual/configuring.html.en
+share/httpd/manual/configuring.html.fr
+share/httpd/manual/configuring.html.ja.utf8
+share/httpd/manual/configuring.html.ko.euc-kr
+share/httpd/manual/configuring.html.tr.utf8
+share/httpd/manual/content-negotiation.html
+share/httpd/manual/content-negotiation.html.en
+share/httpd/manual/content-negotiation.html.fr
+share/httpd/manual/content-negotiation.html.ja.utf8
+share/httpd/manual/content-negotiation.html.ko.euc-kr
+share/httpd/manual/content-negotiation.html.tr.utf8
+share/httpd/manual/convenience.map
+share/httpd/manual/custom-error.html
+share/httpd/manual/custom-error.html.en
+share/httpd/manual/custom-error.html.es
+share/httpd/manual/custom-error.html.fr
+share/httpd/manual/custom-error.html.ja.utf8
+share/httpd/manual/custom-error.html.ko.euc-kr
+share/httpd/manual/custom-error.html.tr.utf8
+share/httpd/manual/developer/API.html
+share/httpd/manual/developer/API.html.en
+share/httpd/manual/developer/debugging.html
+share/httpd/manual/developer/debugging.html.en
+share/httpd/manual/developer/documenting.html
+share/httpd/manual/developer/documenting.html.en
+share/httpd/manual/developer/documenting.html.zh-cn
+share/httpd/manual/developer/filters.html
+share/httpd/manual/developer/filters.html.en
+share/httpd/manual/developer/hooks.html
+share/httpd/manual/developer/hooks.html.en
+share/httpd/manual/developer/index.html
+share/httpd/manual/developer/index.html.en
+share/httpd/manual/developer/index.html.zh-cn
+share/httpd/manual/developer/modules.html
+share/httpd/manual/developer/modules.html.en
+share/httpd/manual/developer/modules.html.ja.utf8
+share/httpd/manual/developer/new_api_2_4.html
+share/httpd/manual/developer/new_api_2_4.html.en
+share/httpd/manual/developer/output-filters.html
+share/httpd/manual/developer/output-filters.html.en
+share/httpd/manual/developer/request.html
+share/httpd/manual/developer/request.html.en
+share/httpd/manual/developer/thread_safety.html
+share/httpd/manual/developer/thread_safety.html.en
+share/httpd/manual/dns-caveats.html
+share/httpd/manual/dns-caveats.html.en
+share/httpd/manual/dns-caveats.html.fr
+share/httpd/manual/dns-caveats.html.ja.utf8
+share/httpd/manual/dns-caveats.html.ko.euc-kr
+share/httpd/manual/dns-caveats.html.tr.utf8
+share/httpd/manual/dso.html
+share/httpd/manual/dso.html.en
+share/httpd/manual/dso.html.fr
+share/httpd/manual/dso.html.ja.utf8
+share/httpd/manual/dso.html.ko.euc-kr
+share/httpd/manual/dso.html.tr.utf8
+share/httpd/manual/env.html
+share/httpd/manual/env.html.en
+share/httpd/manual/env.html.fr
+share/httpd/manual/env.html.ja.utf8
+share/httpd/manual/env.html.ko.euc-kr
+share/httpd/manual/env.html.tr.utf8
+share/httpd/manual/expr.html
+share/httpd/manual/expr.html.en
+share/httpd/manual/expr.html.fr
+share/httpd/manual/faq/index.html
+share/httpd/manual/faq/index.html.en
+share/httpd/manual/faq/index.html.fr
+share/httpd/manual/faq/index.html.tr.utf8
+share/httpd/manual/faq/index.html.zh-cn
+share/httpd/manual/filter.html
+share/httpd/manual/filter.html.en
+share/httpd/manual/filter.html.es
+share/httpd/manual/filter.html.fr
+share/httpd/manual/filter.html.ja.utf8
+share/httpd/manual/filter.html.ko.euc-kr
+share/httpd/manual/filter.html.tr.utf8
+share/httpd/manual/glossary.html
+share/httpd/manual/glossary.html.de
+share/httpd/manual/glossary.html.en
+share/httpd/manual/glossary.html.es
+share/httpd/manual/glossary.html.fr
+share/httpd/manual/glossary.html.ja.utf8
+share/httpd/manual/glossary.html.ko.euc-kr
+share/httpd/manual/glossary.html.tr.utf8
+share/httpd/manual/handler.html
+share/httpd/manual/handler.html.en
+share/httpd/manual/handler.html.es
+share/httpd/manual/handler.html.fr
+share/httpd/manual/handler.html.ja.utf8
+share/httpd/manual/handler.html.ko.euc-kr
+share/httpd/manual/handler.html.tr.utf8
+share/httpd/manual/handler.html.zh-cn
+share/httpd/manual/howto/access.html
+share/httpd/manual/howto/access.html.en
+share/httpd/manual/howto/auth.html
+share/httpd/manual/howto/auth.html.en
+share/httpd/manual/howto/auth.html.fr
+share/httpd/manual/howto/auth.html.ja.utf8
+share/httpd/manual/howto/auth.html.ko.euc-kr
+share/httpd/manual/howto/auth.html.tr.utf8
+share/httpd/manual/howto/cgi.html
+share/httpd/manual/howto/cgi.html.en
+share/httpd/manual/howto/cgi.html.fr
+share/httpd/manual/howto/cgi.html.ja.utf8
+share/httpd/manual/howto/cgi.html.ko.euc-kr
+share/httpd/manual/howto/htaccess.html
+share/httpd/manual/howto/htaccess.html.en
+share/httpd/manual/howto/htaccess.html.fr
+share/httpd/manual/howto/htaccess.html.ja.utf8
+share/httpd/manual/howto/htaccess.html.ko.euc-kr
+share/httpd/manual/howto/htaccess.html.pt-br
+share/httpd/manual/howto/index.html
+share/httpd/manual/howto/index.html.en
+share/httpd/manual/howto/index.html.ja.utf8
+share/httpd/manual/howto/index.html.ko.euc-kr
+share/httpd/manual/howto/index.html.zh-cn
+share/httpd/manual/howto/public_html.html
+share/httpd/manual/howto/public_html.html.en
+share/httpd/manual/howto/public_html.html.fr
+share/httpd/manual/howto/public_html.html.ja.utf8
+share/httpd/manual/howto/public_html.html.ko.euc-kr
+share/httpd/manual/howto/public_html.html.tr.utf8
+share/httpd/manual/howto/ssi.html
+share/httpd/manual/howto/ssi.html.en
+share/httpd/manual/howto/ssi.html.fr
+share/httpd/manual/howto/ssi.html.ja.utf8
+share/httpd/manual/howto/ssi.html.ko.euc-kr
+share/httpd/manual/images/apache_header.gif
+share/httpd/manual/images/caching_fig1.gif
+share/httpd/manual/images/caching_fig1.png
+share/httpd/manual/images/caching_fig1.tr.png
+share/httpd/manual/images/custom_errordocs.png
+share/httpd/manual/images/down.gif
+share/httpd/manual/images/favicon.ico
+share/httpd/manual/images/feather.gif
+share/httpd/manual/images/feather.png
+share/httpd/manual/images/filter_arch.png
+share/httpd/manual/images/filter_arch.tr.png
+share/httpd/manual/images/home.gif
+share/httpd/manual/images/index.gif
+share/httpd/manual/images/left.gif
+share/httpd/manual/images/mod_filter_new.gif
+share/httpd/manual/images/mod_filter_new.png
+share/httpd/manual/images/mod_filter_new.tr.png
+share/httpd/manual/images/mod_filter_old.gif
+share/httpd/manual/images/mod_rewrite_fig1.gif
+share/httpd/manual/images/mod_rewrite_fig1.png
+share/httpd/manual/images/mod_rewrite_fig2.gif
+share/httpd/manual/images/mod_rewrite_fig2.png
+share/httpd/manual/images/pixel.gif
+share/httpd/manual/images/rewrite_rule_flow.png
+share/httpd/manual/images/right.gif
+share/httpd/manual/images/ssl_intro_fig1.gif
+share/httpd/manual/images/ssl_intro_fig1.png
+share/httpd/manual/images/ssl_intro_fig2.gif
+share/httpd/manual/images/ssl_intro_fig2.png
+share/httpd/manual/images/ssl_intro_fig3.gif
+share/httpd/manual/images/ssl_intro_fig3.png
+share/httpd/manual/images/sub.gif
+share/httpd/manual/images/syntax_rewritecond.png
+share/httpd/manual/images/syntax_rewriterule.png
+share/httpd/manual/images/up.gif
+share/httpd/manual/index.html
+share/httpd/manual/index.html.da
+share/httpd/manual/index.html.de
+share/httpd/manual/index.html.en
+share/httpd/manual/index.html.es
+share/httpd/manual/index.html.fr
+share/httpd/manual/index.html.ja.utf8
+share/httpd/manual/index.html.ko.euc-kr
+share/httpd/manual/index.html.pt-br
+share/httpd/manual/index.html.tr.utf8
+share/httpd/manual/index.html.zh-cn
+share/httpd/manual/install.html
+share/httpd/manual/install.html.de
+share/httpd/manual/install.html.en
+share/httpd/manual/install.html.es
+share/httpd/manual/install.html.fr
+share/httpd/manual/install.html.ja.utf8
+share/httpd/manual/install.html.ko.euc-kr
+share/httpd/manual/install.html.tr.utf8
+share/httpd/manual/invoking.html
+share/httpd/manual/invoking.html.de
+share/httpd/manual/invoking.html.en
+share/httpd/manual/invoking.html.es
+share/httpd/manual/invoking.html.fr
+share/httpd/manual/invoking.html.ja.utf8
+share/httpd/manual/invoking.html.ko.euc-kr
+share/httpd/manual/invoking.html.tr.utf8
+share/httpd/manual/license.html
+share/httpd/manual/license.html.en
+share/httpd/manual/logs.html
+share/httpd/manual/logs.html.en
+share/httpd/manual/logs.html.fr
+share/httpd/manual/logs.html.ja.utf8
+share/httpd/manual/logs.html.ko.euc-kr
+share/httpd/manual/logs.html.tr.utf8
+share/httpd/manual/misc/index.html
+share/httpd/manual/misc/index.html.en
+share/httpd/manual/misc/index.html.fr
+share/httpd/manual/misc/index.html.ko.euc-kr
+share/httpd/manual/misc/index.html.tr.utf8
+share/httpd/manual/misc/index.html.zh-cn
+share/httpd/manual/misc/password_encryptions.html
+share/httpd/manual/misc/password_encryptions.html.en
+share/httpd/manual/misc/perf-tuning.html
+share/httpd/manual/misc/perf-tuning.html.en
+share/httpd/manual/misc/perf-tuning.html.fr
+share/httpd/manual/misc/perf-tuning.html.ko.euc-kr
+share/httpd/manual/misc/perf-tuning.html.tr.utf8
+share/httpd/manual/misc/relevant_standards.html
+share/httpd/manual/misc/relevant_standards.html.en
+share/httpd/manual/misc/relevant_standards.html.ko.euc-kr
+share/httpd/manual/misc/security_tips.html
+share/httpd/manual/misc/security_tips.html.en
+share/httpd/manual/misc/security_tips.html.fr
+share/httpd/manual/misc/security_tips.html.ko.euc-kr
+share/httpd/manual/misc/security_tips.html.tr.utf8
+share/httpd/manual/mod/core.html
+share/httpd/manual/mod/core.html.de
+share/httpd/manual/mod/core.html.en
+share/httpd/manual/mod/core.html.es
+share/httpd/manual/mod/core.html.fr
+share/httpd/manual/mod/core.html.ja.utf8
+share/httpd/manual/mod/core.html.tr.utf8
+share/httpd/manual/mod/directive-dict.html
+share/httpd/manual/mod/directive-dict.html.en
+share/httpd/manual/mod/directive-dict.html.ja.utf8
+share/httpd/manual/mod/directive-dict.html.ko.euc-kr
+share/httpd/manual/mod/directive-dict.html.tr.utf8
+share/httpd/manual/mod/directives.html
+share/httpd/manual/mod/directives.html.de
+share/httpd/manual/mod/directives.html.en
+share/httpd/manual/mod/directives.html.es
+share/httpd/manual/mod/directives.html.ja.utf8
+share/httpd/manual/mod/directives.html.ko.euc-kr
+share/httpd/manual/mod/directives.html.tr.utf8
+share/httpd/manual/mod/directives.html.zh-cn
+share/httpd/manual/mod/event.html
+share/httpd/manual/mod/event.html.en
+share/httpd/manual/mod/event.html.fr
+share/httpd/manual/mod/index.html
+share/httpd/manual/mod/index.html.de
+share/httpd/manual/mod/index.html.en
+share/httpd/manual/mod/index.html.es
+share/httpd/manual/mod/index.html.fr
+share/httpd/manual/mod/index.html.ja.utf8
+share/httpd/manual/mod/index.html.ko.euc-kr
+share/httpd/manual/mod/index.html.tr.utf8
+share/httpd/manual/mod/index.html.zh-cn
+share/httpd/manual/mod/mod_access_compat.html
+share/httpd/manual/mod/mod_access_compat.html.en
+share/httpd/manual/mod/mod_access_compat.html.fr
+share/httpd/manual/mod/mod_access_compat.html.ja.utf8
+share/httpd/manual/mod/mod_actions.html
+share/httpd/manual/mod/mod_actions.html.de
+share/httpd/manual/mod/mod_actions.html.en
+share/httpd/manual/mod/mod_actions.html.fr
+share/httpd/manual/mod/mod_actions.html.ja.utf8
+share/httpd/manual/mod/mod_actions.html.ko.euc-kr
+share/httpd/manual/mod/mod_alias.html
+share/httpd/manual/mod/mod_alias.html.en
+share/httpd/manual/mod/mod_alias.html.fr
+share/httpd/manual/mod/mod_alias.html.ja.utf8
+share/httpd/manual/mod/mod_alias.html.ko.euc-kr
+share/httpd/manual/mod/mod_alias.html.tr.utf8
+share/httpd/manual/mod/mod_allowmethods.html
+share/httpd/manual/mod/mod_allowmethods.html.en
+share/httpd/manual/mod/mod_asis.html
+share/httpd/manual/mod/mod_asis.html.en
+share/httpd/manual/mod/mod_asis.html.fr
+share/httpd/manual/mod/mod_asis.html.ja.utf8
+share/httpd/manual/mod/mod_asis.html.ko.euc-kr
+share/httpd/manual/mod/mod_auth_basic.html
+share/httpd/manual/mod/mod_auth_basic.html.en
+share/httpd/manual/mod/mod_auth_basic.html.fr
+share/httpd/manual/mod/mod_auth_basic.html.ja.utf8
+share/httpd/manual/mod/mod_auth_basic.html.ko.euc-kr
+share/httpd/manual/mod/mod_auth_digest.html
+share/httpd/manual/mod/mod_auth_digest.html.en
+share/httpd/manual/mod/mod_auth_digest.html.fr
+share/httpd/manual/mod/mod_auth_digest.html.ko.euc-kr
+share/httpd/manual/mod/mod_auth_form.html
+share/httpd/manual/mod/mod_auth_form.html.en
+share/httpd/manual/mod/mod_authn_anon.html
+share/httpd/manual/mod/mod_authn_anon.html.en
+share/httpd/manual/mod/mod_authn_anon.html.ja.utf8
+share/httpd/manual/mod/mod_authn_anon.html.ko.euc-kr
+share/httpd/manual/mod/mod_authn_core.html
+share/httpd/manual/mod/mod_authn_core.html.en
+share/httpd/manual/mod/mod_authn_core.html.fr
+share/httpd/manual/mod/mod_authn_dbd.html
+share/httpd/manual/mod/mod_authn_dbd.html.en
+share/httpd/manual/mod/mod_authn_dbm.html
+share/httpd/manual/mod/mod_authn_dbm.html.en
+share/httpd/manual/mod/mod_authn_dbm.html.ja.utf8
+share/httpd/manual/mod/mod_authn_dbm.html.ko.euc-kr
+share/httpd/manual/mod/mod_authn_file.html
+share/httpd/manual/mod/mod_authn_file.html.en
+share/httpd/manual/mod/mod_authn_file.html.fr
+share/httpd/manual/mod/mod_authn_file.html.ja.utf8
+share/httpd/manual/mod/mod_authn_file.html.ko.euc-kr
+share/httpd/manual/mod/mod_authn_socache.html
+share/httpd/manual/mod/mod_authn_socache.html.en
+share/httpd/manual/mod/mod_authnz_ldap.html
+share/httpd/manual/mod/mod_authnz_ldap.html.en
+share/httpd/manual/mod/mod_authnz_ldap.html.fr
+share/httpd/manual/mod/mod_authz_core.html
+share/httpd/manual/mod/mod_authz_core.html.en
+share/httpd/manual/mod/mod_authz_dbd.html
+share/httpd/manual/mod/mod_authz_dbd.html.en
+share/httpd/manual/mod/mod_authz_dbm.html
+share/httpd/manual/mod/mod_authz_dbm.html.en
+share/httpd/manual/mod/mod_authz_dbm.html.ko.euc-kr
+share/httpd/manual/mod/mod_authz_groupfile.html
+share/httpd/manual/mod/mod_authz_groupfile.html.en
+share/httpd/manual/mod/mod_authz_groupfile.html.ja.utf8
+share/httpd/manual/mod/mod_authz_groupfile.html.ko.euc-kr
+share/httpd/manual/mod/mod_authz_host.html
+share/httpd/manual/mod/mod_authz_host.html.en
+share/httpd/manual/mod/mod_authz_host.html.fr
+share/httpd/manual/mod/mod_authz_owner.html
+share/httpd/manual/mod/mod_authz_owner.html.en
+share/httpd/manual/mod/mod_authz_owner.html.fr
+share/httpd/manual/mod/mod_authz_owner.html.ja.utf8
+share/httpd/manual/mod/mod_authz_owner.html.ko.euc-kr
+share/httpd/manual/mod/mod_authz_user.html
+share/httpd/manual/mod/mod_authz_user.html.en
+share/httpd/manual/mod/mod_authz_user.html.fr
+share/httpd/manual/mod/mod_authz_user.html.ja.utf8
+share/httpd/manual/mod/mod_authz_user.html.ko.euc-kr
+share/httpd/manual/mod/mod_autoindex.html
+share/httpd/manual/mod/mod_autoindex.html.en
+share/httpd/manual/mod/mod_autoindex.html.fr
+share/httpd/manual/mod/mod_autoindex.html.ja.utf8
+share/httpd/manual/mod/mod_autoindex.html.ko.euc-kr
+share/httpd/manual/mod/mod_autoindex.html.tr.utf8
+share/httpd/manual/mod/mod_buffer.html
+share/httpd/manual/mod/mod_buffer.html.en
+share/httpd/manual/mod/mod_buffer.html.fr
+share/httpd/manual/mod/mod_cache.html
+share/httpd/manual/mod/mod_cache.html.en
+share/httpd/manual/mod/mod_cache.html.fr
+share/httpd/manual/mod/mod_cache.html.ja.utf8
+share/httpd/manual/mod/mod_cache.html.ko.euc-kr
+share/httpd/manual/mod/mod_cache_disk.html
+share/httpd/manual/mod/mod_cache_disk.html.en
+share/httpd/manual/mod/mod_cache_disk.html.fr
+share/httpd/manual/mod/mod_cache_disk.html.ja.utf8
+share/httpd/manual/mod/mod_cache_disk.html.ko.euc-kr
+share/httpd/manual/mod/mod_cern_meta.html
+share/httpd/manual/mod/mod_cern_meta.html.en
+share/httpd/manual/mod/mod_cern_meta.html.ko.euc-kr
+share/httpd/manual/mod/mod_cgi.html
+share/httpd/manual/mod/mod_cgi.html.en
+share/httpd/manual/mod/mod_cgi.html.ja.utf8
+share/httpd/manual/mod/mod_cgi.html.ko.euc-kr
+share/httpd/manual/mod/mod_cgid.html
+share/httpd/manual/mod/mod_cgid.html.en
+share/httpd/manual/mod/mod_cgid.html.ja.utf8
+share/httpd/manual/mod/mod_cgid.html.ko.euc-kr
+share/httpd/manual/mod/mod_charset_lite.html
+share/httpd/manual/mod/mod_charset_lite.html.en
+share/httpd/manual/mod/mod_charset_lite.html.ko.euc-kr
+share/httpd/manual/mod/mod_data.html
+share/httpd/manual/mod/mod_data.html.en
+share/httpd/manual/mod/mod_dav.html
+share/httpd/manual/mod/mod_dav.html.en
+share/httpd/manual/mod/mod_dav.html.ja.utf8
+share/httpd/manual/mod/mod_dav.html.ko.euc-kr
+share/httpd/manual/mod/mod_dav_fs.html
+share/httpd/manual/mod/mod_dav_fs.html.en
+share/httpd/manual/mod/mod_dav_fs.html.ja.utf8
+share/httpd/manual/mod/mod_dav_fs.html.ko.euc-kr
+share/httpd/manual/mod/mod_dav_lock.html
+share/httpd/manual/mod/mod_dav_lock.html.en
+share/httpd/manual/mod/mod_dav_lock.html.ja.utf8
+share/httpd/manual/mod/mod_dbd.html
+share/httpd/manual/mod/mod_dbd.html.en
+share/httpd/manual/mod/mod_deflate.html
+share/httpd/manual/mod/mod_deflate.html.en
+share/httpd/manual/mod/mod_deflate.html.fr
+share/httpd/manual/mod/mod_deflate.html.ja.utf8
+share/httpd/manual/mod/mod_deflate.html.ko.euc-kr
+share/httpd/manual/mod/mod_dialup.html
+share/httpd/manual/mod/mod_dialup.html.en
+share/httpd/manual/mod/mod_dir.html
+share/httpd/manual/mod/mod_dir.html.en
+share/httpd/manual/mod/mod_dir.html.fr
+share/httpd/manual/mod/mod_dir.html.ja.utf8
+share/httpd/manual/mod/mod_dir.html.ko.euc-kr
+share/httpd/manual/mod/mod_dir.html.tr.utf8
+share/httpd/manual/mod/mod_dumpio.html
+share/httpd/manual/mod/mod_dumpio.html.en
+share/httpd/manual/mod/mod_dumpio.html.ja.utf8
+share/httpd/manual/mod/mod_echo.html
+share/httpd/manual/mod/mod_echo.html.en
+share/httpd/manual/mod/mod_echo.html.fr
+share/httpd/manual/mod/mod_echo.html.ja.utf8
+share/httpd/manual/mod/mod_echo.html.ko.euc-kr
+share/httpd/manual/mod/mod_env.html
+share/httpd/manual/mod/mod_env.html.en
+share/httpd/manual/mod/mod_env.html.fr
+share/httpd/manual/mod/mod_env.html.ja.utf8
+share/httpd/manual/mod/mod_env.html.ko.euc-kr
+share/httpd/manual/mod/mod_env.html.tr.utf8
+share/httpd/manual/mod/mod_example.html
+share/httpd/manual/mod/mod_example.html.en
+share/httpd/manual/mod/mod_example.html.ko.euc-kr
+share/httpd/manual/mod/mod_expires.html
+share/httpd/manual/mod/mod_expires.html.en
+share/httpd/manual/mod/mod_expires.html.fr
+share/httpd/manual/mod/mod_expires.html.ja.utf8
+share/httpd/manual/mod/mod_expires.html.ko.euc-kr
+share/httpd/manual/mod/mod_ext_filter.html
+share/httpd/manual/mod/mod_ext_filter.html.en
+share/httpd/manual/mod/mod_ext_filter.html.ja.utf8
+share/httpd/manual/mod/mod_ext_filter.html.ko.euc-kr
+share/httpd/manual/mod/mod_file_cache.html
+share/httpd/manual/mod/mod_file_cache.html.en
+share/httpd/manual/mod/mod_file_cache.html.ko.euc-kr
+share/httpd/manual/mod/mod_filter.html
+share/httpd/manual/mod/mod_filter.html.en
+share/httpd/manual/mod/mod_headers.html
+share/httpd/manual/mod/mod_headers.html.en
+share/httpd/manual/mod/mod_headers.html.fr
+share/httpd/manual/mod/mod_headers.html.ja.utf8
+share/httpd/manual/mod/mod_headers.html.ko.euc-kr
+share/httpd/manual/mod/mod_heartbeat.html
+share/httpd/manual/mod/mod_heartbeat.html.en
+share/httpd/manual/mod/mod_heartmonitor.html
+share/httpd/manual/mod/mod_heartmonitor.html.en
+share/httpd/manual/mod/mod_ident.html
+share/httpd/manual/mod/mod_ident.html.en
+share/httpd/manual/mod/mod_ident.html.fr
+share/httpd/manual/mod/mod_ident.html.ja.utf8
+share/httpd/manual/mod/mod_ident.html.ko.euc-kr
+share/httpd/manual/mod/mod_imagemap.html
+share/httpd/manual/mod/mod_imagemap.html.en
+share/httpd/manual/mod/mod_imagemap.html.ko.euc-kr
+share/httpd/manual/mod/mod_include.html
+share/httpd/manual/mod/mod_include.html.en
+share/httpd/manual/mod/mod_include.html.ja.utf8
+share/httpd/manual/mod/mod_info.html
+share/httpd/manual/mod/mod_info.html.en
+share/httpd/manual/mod/mod_info.html.fr
+share/httpd/manual/mod/mod_info.html.ja.utf8
+share/httpd/manual/mod/mod_info.html.ko.euc-kr
+share/httpd/manual/mod/mod_isapi.html
+share/httpd/manual/mod/mod_isapi.html.en
+share/httpd/manual/mod/mod_isapi.html.ko.euc-kr
+share/httpd/manual/mod/mod_lbmethod_bybusyness.html
+share/httpd/manual/mod/mod_lbmethod_bybusyness.html.en
+share/httpd/manual/mod/mod_lbmethod_byrequests.html
+share/httpd/manual/mod/mod_lbmethod_byrequests.html.en
+share/httpd/manual/mod/mod_lbmethod_bytraffic.html
+share/httpd/manual/mod/mod_lbmethod_bytraffic.html.en
+share/httpd/manual/mod/mod_lbmethod_heartbeat.html
+share/httpd/manual/mod/mod_lbmethod_heartbeat.html.en
+share/httpd/manual/mod/mod_ldap.html
+share/httpd/manual/mod/mod_ldap.html.en
+share/httpd/manual/mod/mod_ldap.html.fr
+share/httpd/manual/mod/mod_log_config.html
+share/httpd/manual/mod/mod_log_config.html.en
+share/httpd/manual/mod/mod_log_config.html.ja.utf8
+share/httpd/manual/mod/mod_log_config.html.ko.euc-kr
+share/httpd/manual/mod/mod_log_config.html.tr.utf8
+share/httpd/manual/mod/mod_log_debug.html
+share/httpd/manual/mod/mod_log_debug.html.en
+share/httpd/manual/mod/mod_log_forensic.html
+share/httpd/manual/mod/mod_log_forensic.html.en
+share/httpd/manual/mod/mod_log_forensic.html.ja.utf8
+share/httpd/manual/mod/mod_log_forensic.html.tr.utf8
+share/httpd/manual/mod/mod_logio.html
+share/httpd/manual/mod/mod_logio.html.en
+share/httpd/manual/mod/mod_logio.html.ja.utf8
+share/httpd/manual/mod/mod_logio.html.ko.euc-kr
+share/httpd/manual/mod/mod_logio.html.tr.utf8
+share/httpd/manual/mod/mod_lua.html
+share/httpd/manual/mod/mod_lua.html.en
+share/httpd/manual/mod/mod_mime.html
+share/httpd/manual/mod/mod_mime.html.en
+share/httpd/manual/mod/mod_mime.html.ja.utf8
+share/httpd/manual/mod/mod_mime_magic.html
+share/httpd/manual/mod/mod_mime_magic.html.en
+share/httpd/manual/mod/mod_negotiation.html
+share/httpd/manual/mod/mod_negotiation.html.en
+share/httpd/manual/mod/mod_negotiation.html.fr
+share/httpd/manual/mod/mod_negotiation.html.ja.utf8
+share/httpd/manual/mod/mod_nw_ssl.html
+share/httpd/manual/mod/mod_nw_ssl.html.en
+share/httpd/manual/mod/mod_privileges.html
+share/httpd/manual/mod/mod_privileges.html.en
+share/httpd/manual/mod/mod_proxy.html
+share/httpd/manual/mod/mod_proxy.html.en
+share/httpd/manual/mod/mod_proxy.html.fr
+share/httpd/manual/mod/mod_proxy.html.ja.utf8
+share/httpd/manual/mod/mod_proxy_ajp.html
+share/httpd/manual/mod/mod_proxy_ajp.html.en
+share/httpd/manual/mod/mod_proxy_ajp.html.ja.utf8
+share/httpd/manual/mod/mod_proxy_balancer.html
+share/httpd/manual/mod/mod_proxy_balancer.html.en
+share/httpd/manual/mod/mod_proxy_balancer.html.ja.utf8
+share/httpd/manual/mod/mod_proxy_connect.html
+share/httpd/manual/mod/mod_proxy_connect.html.en
+share/httpd/manual/mod/mod_proxy_connect.html.ja.utf8
+share/httpd/manual/mod/mod_proxy_express.html
+share/httpd/manual/mod/mod_proxy_express.html.en
+share/httpd/manual/mod/mod_proxy_fcgi.html
+share/httpd/manual/mod/mod_proxy_fcgi.html.en
+share/httpd/manual/mod/mod_proxy_fdpass.html
+share/httpd/manual/mod/mod_proxy_fdpass.html.en
+share/httpd/manual/mod/mod_proxy_ftp.html
+share/httpd/manual/mod/mod_proxy_ftp.html.en
+share/httpd/manual/mod/mod_proxy_html.html
+share/httpd/manual/mod/mod_proxy_html.html.en
+share/httpd/manual/mod/mod_proxy_http.html
+share/httpd/manual/mod/mod_proxy_http.html.en
+share/httpd/manual/mod/mod_proxy_http.html.fr
+share/httpd/manual/mod/mod_proxy_scgi.html
+share/httpd/manual/mod/mod_proxy_scgi.html.en
+share/httpd/manual/mod/mod_ratelimit.html
+share/httpd/manual/mod/mod_ratelimit.html.en
+share/httpd/manual/mod/mod_reflector.html
+share/httpd/manual/mod/mod_reflector.html.en
+share/httpd/manual/mod/mod_remoteip.html
+share/httpd/manual/mod/mod_remoteip.html.en
+share/httpd/manual/mod/mod_remoteip.html.fr
+share/httpd/manual/mod/mod_reqtimeout.html
+share/httpd/manual/mod/mod_reqtimeout.html.en
+share/httpd/manual/mod/mod_request.html
+share/httpd/manual/mod/mod_request.html.en
+share/httpd/manual/mod/mod_request.html.tr.utf8
+share/httpd/manual/mod/mod_rewrite.html
+share/httpd/manual/mod/mod_rewrite.html.en
+share/httpd/manual/mod/mod_rewrite.html.fr
+share/httpd/manual/mod/mod_sed.html
+share/httpd/manual/mod/mod_sed.html.en
+share/httpd/manual/mod/mod_sed.html.fr
+share/httpd/manual/mod/mod_session.html
+share/httpd/manual/mod/mod_session.html.en
+share/httpd/manual/mod/mod_session_cookie.html
+share/httpd/manual/mod/mod_session_cookie.html.en
+share/httpd/manual/mod/mod_session_crypto.html
+share/httpd/manual/mod/mod_session_crypto.html.en
+share/httpd/manual/mod/mod_session_dbd.html
+share/httpd/manual/mod/mod_session_dbd.html.en
+share/httpd/manual/mod/mod_setenvif.html
+share/httpd/manual/mod/mod_setenvif.html.en
+share/httpd/manual/mod/mod_setenvif.html.fr
+share/httpd/manual/mod/mod_setenvif.html.ja.utf8
+share/httpd/manual/mod/mod_setenvif.html.ko.euc-kr
+share/httpd/manual/mod/mod_setenvif.html.tr.utf8
+share/httpd/manual/mod/mod_slotmem_plain.html
+share/httpd/manual/mod/mod_slotmem_plain.html.en
+share/httpd/manual/mod/mod_slotmem_shm.html
+share/httpd/manual/mod/mod_slotmem_shm.html.en
+share/httpd/manual/mod/mod_so.html
+share/httpd/manual/mod/mod_so.html.en
+share/httpd/manual/mod/mod_so.html.fr
+share/httpd/manual/mod/mod_so.html.ja.utf8
+share/httpd/manual/mod/mod_so.html.ko.euc-kr
+share/httpd/manual/mod/mod_so.html.tr.utf8
+share/httpd/manual/mod/mod_socache_dbm.html
+share/httpd/manual/mod/mod_socache_dbm.html.en
+share/httpd/manual/mod/mod_socache_dc.html
+share/httpd/manual/mod/mod_socache_dc.html.en
+share/httpd/manual/mod/mod_socache_memcache.html
+share/httpd/manual/mod/mod_socache_memcache.html.en
+share/httpd/manual/mod/mod_socache_shmcb.html
+share/httpd/manual/mod/mod_socache_shmcb.html.en
+share/httpd/manual/mod/mod_speling.html
+share/httpd/manual/mod/mod_speling.html.en
+share/httpd/manual/mod/mod_speling.html.ja.utf8
+share/httpd/manual/mod/mod_speling.html.ko.euc-kr
+share/httpd/manual/mod/mod_ssl.html
+share/httpd/manual/mod/mod_ssl.html.en
+share/httpd/manual/mod/mod_status.html
+share/httpd/manual/mod/mod_status.html.en
+share/httpd/manual/mod/mod_status.html.fr
+share/httpd/manual/mod/mod_status.html.ja.utf8
+share/httpd/manual/mod/mod_status.html.ko.euc-kr
+share/httpd/manual/mod/mod_status.html.tr.utf8
+share/httpd/manual/mod/mod_substitute.html
+share/httpd/manual/mod/mod_substitute.html.en
+share/httpd/manual/mod/mod_suexec.html
+share/httpd/manual/mod/mod_suexec.html.en
+share/httpd/manual/mod/mod_suexec.html.ja.utf8
+share/httpd/manual/mod/mod_suexec.html.ko.euc-kr
+share/httpd/manual/mod/mod_suexec.html.tr.utf8
+share/httpd/manual/mod/mod_unique_id.html
+share/httpd/manual/mod/mod_unique_id.html.en
+share/httpd/manual/mod/mod_unique_id.html.fr
+share/httpd/manual/mod/mod_unique_id.html.ja.utf8
+share/httpd/manual/mod/mod_unique_id.html.ko.euc-kr
+share/httpd/manual/mod/mod_unixd.html
+share/httpd/manual/mod/mod_unixd.html.en
+share/httpd/manual/mod/mod_unixd.html.tr.utf8
+share/httpd/manual/mod/mod_userdir.html
+share/httpd/manual/mod/mod_userdir.html.en
+share/httpd/manual/mod/mod_userdir.html.ja.utf8
+share/httpd/manual/mod/mod_userdir.html.ko.euc-kr
+share/httpd/manual/mod/mod_userdir.html.tr.utf8
+share/httpd/manual/mod/mod_usertrack.html
+share/httpd/manual/mod/mod_usertrack.html.en
+share/httpd/manual/mod/mod_version.html
+share/httpd/manual/mod/mod_version.html.en
+share/httpd/manual/mod/mod_version.html.ja.utf8
+share/httpd/manual/mod/mod_version.html.ko.euc-kr
+share/httpd/manual/mod/mod_vhost_alias.html
+share/httpd/manual/mod/mod_vhost_alias.html.en
+share/httpd/manual/mod/mod_vhost_alias.html.tr.utf8
+share/httpd/manual/mod/mod_watchdog.html
+share/httpd/manual/mod/mod_watchdog.html.en
+share/httpd/manual/mod/mod_xml2enc.html
+share/httpd/manual/mod/mod_xml2enc.html.en
+share/httpd/manual/mod/module-dict.html
+share/httpd/manual/mod/module-dict.html.en
+share/httpd/manual/mod/module-dict.html.ja.utf8
+share/httpd/manual/mod/module-dict.html.ko.euc-kr
+share/httpd/manual/mod/module-dict.html.tr.utf8
+share/httpd/manual/mod/mpm_common.html
+share/httpd/manual/mod/mpm_common.html.de
+share/httpd/manual/mod/mpm_common.html.en
+share/httpd/manual/mod/mpm_common.html.ja.utf8
+share/httpd/manual/mod/mpm_common.html.tr.utf8
+share/httpd/manual/mod/mpm_netware.html
+share/httpd/manual/mod/mpm_netware.html.en
+share/httpd/manual/mod/mpm_winnt.html
+share/httpd/manual/mod/mpm_winnt.html.de
+share/httpd/manual/mod/mpm_winnt.html.en
+share/httpd/manual/mod/mpm_winnt.html.ja.utf8
+share/httpd/manual/mod/mpmt_os2.html
+share/httpd/manual/mod/mpmt_os2.html.en
+share/httpd/manual/mod/prefork.html
+share/httpd/manual/mod/prefork.html.de
+share/httpd/manual/mod/prefork.html.en
+share/httpd/manual/mod/prefork.html.ja.utf8
+share/httpd/manual/mod/prefork.html.tr.utf8
+share/httpd/manual/mod/quickreference.html
+share/httpd/manual/mod/quickreference.html.de
+share/httpd/manual/mod/quickreference.html.en
+share/httpd/manual/mod/quickreference.html.es
+share/httpd/manual/mod/quickreference.html.ja.utf8
+share/httpd/manual/mod/quickreference.html.ko.euc-kr
+share/httpd/manual/mod/quickreference.html.tr.utf8
+share/httpd/manual/mod/quickreference.html.zh-cn
+share/httpd/manual/mod/worker.html
+share/httpd/manual/mod/worker.html.de
+share/httpd/manual/mod/worker.html.en
+share/httpd/manual/mod/worker.html.ja.utf8
+share/httpd/manual/mod/worker.html.tr.utf8
+share/httpd/manual/mpm.html
+share/httpd/manual/mpm.html.de
+share/httpd/manual/mpm.html.en
+share/httpd/manual/mpm.html.es
+share/httpd/manual/mpm.html.fr
+share/httpd/manual/mpm.html.ja.utf8
+share/httpd/manual/mpm.html.ko.euc-kr
+share/httpd/manual/mpm.html.tr.utf8
+share/httpd/manual/mpm.html.zh-cn
+share/httpd/manual/new_features_2_0.html
+share/httpd/manual/new_features_2_0.html.de
+share/httpd/manual/new_features_2_0.html.en
+share/httpd/manual/new_features_2_0.html.fr
+share/httpd/manual/new_features_2_0.html.ja.utf8
+share/httpd/manual/new_features_2_0.html.ko.euc-kr
+share/httpd/manual/new_features_2_0.html.pt-br
+share/httpd/manual/new_features_2_0.html.ru.koi8-r
+share/httpd/manual/new_features_2_0.html.tr.utf8
+share/httpd/manual/new_features_2_2.html
+share/httpd/manual/new_features_2_2.html.en
+share/httpd/manual/new_features_2_2.html.fr
+share/httpd/manual/new_features_2_2.html.ko.euc-kr
+share/httpd/manual/new_features_2_2.html.pt-br
+share/httpd/manual/new_features_2_2.html.tr.utf8
+share/httpd/manual/new_features_2_4.html
+share/httpd/manual/new_features_2_4.html.en
+share/httpd/manual/new_features_2_4.html.fr
+share/httpd/manual/new_features_2_4.html.tr.utf8
+share/httpd/manual/platform/ebcdic.html
+share/httpd/manual/platform/ebcdic.html.en
+share/httpd/manual/platform/ebcdic.html.ko.euc-kr
+share/httpd/manual/platform/index.html
+share/httpd/manual/platform/index.html.en
+share/httpd/manual/platform/index.html.ko.euc-kr
+share/httpd/manual/platform/index.html.zh-cn
+share/httpd/manual/platform/netware.html
+share/httpd/manual/platform/netware.html.en
+share/httpd/manual/platform/netware.html.ko.euc-kr
+share/httpd/manual/platform/perf-hp.html
+share/httpd/manual/platform/perf-hp.html.en
+share/httpd/manual/platform/perf-hp.html.ko.euc-kr
+share/httpd/manual/platform/rpm.html
+share/httpd/manual/platform/rpm.html.en
+share/httpd/manual/platform/win_compiling.html
+share/httpd/manual/platform/win_compiling.html.en
+share/httpd/manual/platform/win_compiling.html.ko.euc-kr
+share/httpd/manual/platform/windows.html
+share/httpd/manual/platform/windows.html.en
+share/httpd/manual/platform/windows.html.ko.euc-kr
+share/httpd/manual/programs/ab.html
+share/httpd/manual/programs/ab.html.en
+share/httpd/manual/programs/ab.html.ko.euc-kr
+share/httpd/manual/programs/ab.html.tr.utf8
+share/httpd/manual/programs/apachectl.html
+share/httpd/manual/programs/apachectl.html.en
+share/httpd/manual/programs/apachectl.html.ko.euc-kr
+share/httpd/manual/programs/apachectl.html.tr.utf8
+share/httpd/manual/programs/apxs.html
+share/httpd/manual/programs/apxs.html.en
+share/httpd/manual/programs/apxs.html.ko.euc-kr
+share/httpd/manual/programs/apxs.html.tr.utf8
+share/httpd/manual/programs/configure.html
+share/httpd/manual/programs/configure.html.en
+share/httpd/manual/programs/configure.html.ko.euc-kr
+share/httpd/manual/programs/configure.html.tr.utf8
+share/httpd/manual/programs/dbmmanage.html
+share/httpd/manual/programs/dbmmanage.html.en
+share/httpd/manual/programs/dbmmanage.html.ko.euc-kr
+share/httpd/manual/programs/dbmmanage.html.tr.utf8
+share/httpd/manual/programs/fcgistarter.html
+share/httpd/manual/programs/fcgistarter.html.en
+share/httpd/manual/programs/fcgistarter.html.tr.utf8
+share/httpd/manual/programs/htcacheclean.html
+share/httpd/manual/programs/htcacheclean.html.en
+share/httpd/manual/programs/htcacheclean.html.ko.euc-kr
+share/httpd/manual/programs/htcacheclean.html.tr.utf8
+share/httpd/manual/programs/htdbm.html
+share/httpd/manual/programs/htdbm.html.en
+share/httpd/manual/programs/htdbm.html.tr.utf8
+share/httpd/manual/programs/htdigest.html
+share/httpd/manual/programs/htdigest.html.en
+share/httpd/manual/programs/htdigest.html.ko.euc-kr
+share/httpd/manual/programs/htdigest.html.tr.utf8
+share/httpd/manual/programs/htpasswd.html
+share/httpd/manual/programs/htpasswd.html.en
+share/httpd/manual/programs/htpasswd.html.ko.euc-kr
+share/httpd/manual/programs/htpasswd.html.tr.utf8
+share/httpd/manual/programs/httpd.html
+share/httpd/manual/programs/httpd.html.en
+share/httpd/manual/programs/httpd.html.ko.euc-kr
+share/httpd/manual/programs/httpd.html.tr.utf8
+share/httpd/manual/programs/httxt2dbm.html
+share/httpd/manual/programs/httxt2dbm.html.en
+share/httpd/manual/programs/httxt2dbm.html.tr.utf8
+share/httpd/manual/programs/index.html
+share/httpd/manual/programs/index.html.en
+share/httpd/manual/programs/index.html.es
+share/httpd/manual/programs/index.html.ko.euc-kr
+share/httpd/manual/programs/index.html.tr.utf8
+share/httpd/manual/programs/index.html.zh-cn
+share/httpd/manual/programs/logresolve.html
+share/httpd/manual/programs/logresolve.html.en
+share/httpd/manual/programs/logresolve.html.ko.euc-kr
+share/httpd/manual/programs/logresolve.html.tr.utf8
+share/httpd/manual/programs/other.html
+share/httpd/manual/programs/other.html.en
+share/httpd/manual/programs/other.html.ko.euc-kr
+share/httpd/manual/programs/other.html.tr.utf8
+share/httpd/manual/programs/rotatelogs.html
+share/httpd/manual/programs/rotatelogs.html.en
+share/httpd/manual/programs/rotatelogs.html.ko.euc-kr
+share/httpd/manual/programs/rotatelogs.html.tr.utf8
+share/httpd/manual/programs/suexec.html
+share/httpd/manual/programs/suexec.html.en
+share/httpd/manual/programs/suexec.html.ko.euc-kr
+share/httpd/manual/programs/suexec.html.tr.utf8
+share/httpd/manual/rewrite/access.html
+share/httpd/manual/rewrite/access.html.en
+share/httpd/manual/rewrite/advanced.html
+share/httpd/manual/rewrite/advanced.html.en
+share/httpd/manual/rewrite/avoid.html
+share/httpd/manual/rewrite/avoid.html.en
+share/httpd/manual/rewrite/flags.html
+share/httpd/manual/rewrite/flags.html.en
+share/httpd/manual/rewrite/flags.html.fr
+share/httpd/manual/rewrite/htaccess.html
+share/httpd/manual/rewrite/htaccess.html.en
+share/httpd/manual/rewrite/index.html
+share/httpd/manual/rewrite/index.html.en
+share/httpd/manual/rewrite/index.html.fr
+share/httpd/manual/rewrite/index.html.tr.utf8
+share/httpd/manual/rewrite/index.html.zh-cn
+share/httpd/manual/rewrite/intro.html
+share/httpd/manual/rewrite/intro.html.en
+share/httpd/manual/rewrite/intro.html.fr
+share/httpd/manual/rewrite/proxy.html
+share/httpd/manual/rewrite/proxy.html.en
+share/httpd/manual/rewrite/remapping.html
+share/httpd/manual/rewrite/remapping.html.en
+share/httpd/manual/rewrite/rewrite_guide.html.fr
+share/httpd/manual/rewrite/rewrite_guide_advanced.html.fr
+share/httpd/manual/rewrite/rewritemap.html
+share/httpd/manual/rewrite/rewritemap.html.en
+share/httpd/manual/rewrite/tech.html
+share/httpd/manual/rewrite/tech.html.en
+share/httpd/manual/rewrite/tech.html.fr
+share/httpd/manual/rewrite/vhosts.html
+share/httpd/manual/rewrite/vhosts.html.en
+share/httpd/manual/sections.html
+share/httpd/manual/sections.html.en
+share/httpd/manual/sections.html.fr
+share/httpd/manual/sections.html.ja.utf8
+share/httpd/manual/sections.html.ko.euc-kr
+share/httpd/manual/sections.html.tr.utf8
+share/httpd/manual/server-wide.html
+share/httpd/manual/server-wide.html.en
+share/httpd/manual/server-wide.html.fr
+share/httpd/manual/server-wide.html.ja.utf8
+share/httpd/manual/server-wide.html.ko.euc-kr
+share/httpd/manual/server-wide.html.tr.utf8
+share/httpd/manual/sitemap.html
+share/httpd/manual/sitemap.html.de
+share/httpd/manual/sitemap.html.en
+share/httpd/manual/sitemap.html.es
+share/httpd/manual/sitemap.html.fr
+share/httpd/manual/sitemap.html.ja.utf8
+share/httpd/manual/sitemap.html.ko.euc-kr
+share/httpd/manual/sitemap.html.tr.utf8
+share/httpd/manual/sitemap.html.zh-cn
+share/httpd/manual/socache.html
+share/httpd/manual/socache.html.en
+share/httpd/manual/ssl/index.html
+share/httpd/manual/ssl/index.html.en
+share/httpd/manual/ssl/index.html.fr
+share/httpd/manual/ssl/index.html.ja.utf8
+share/httpd/manual/ssl/index.html.tr.utf8
+share/httpd/manual/ssl/index.html.zh-cn
+share/httpd/manual/ssl/ssl_compat.html
+share/httpd/manual/ssl/ssl_compat.html.en
+share/httpd/manual/ssl/ssl_compat.html.fr
+share/httpd/manual/ssl/ssl_faq.html
+share/httpd/manual/ssl/ssl_faq.html.en
+share/httpd/manual/ssl/ssl_faq.html.fr
+share/httpd/manual/ssl/ssl_howto.html
+share/httpd/manual/ssl/ssl_howto.html.en
+share/httpd/manual/ssl/ssl_howto.html.fr
+share/httpd/manual/ssl/ssl_intro.html
+share/httpd/manual/ssl/ssl_intro.html.en
+share/httpd/manual/ssl/ssl_intro.html.fr
+share/httpd/manual/ssl/ssl_intro.html.ja.utf8
+share/httpd/manual/stopping.html
+share/httpd/manual/stopping.html.de
+share/httpd/manual/stopping.html.en
+share/httpd/manual/stopping.html.es
+share/httpd/manual/stopping.html.fr
+share/httpd/manual/stopping.html.ja.utf8
+share/httpd/manual/stopping.html.ko.euc-kr
+share/httpd/manual/stopping.html.tr.utf8
+share/httpd/manual/style/build.properties
+share/httpd/manual/style/common.dtd
+share/httpd/manual/style/css/manual-chm.css
+share/httpd/manual/style/css/manual-loose-100pc.css
+share/httpd/manual/style/css/manual-print.css
+share/httpd/manual/style/css/manual-zip-100pc.css
+share/httpd/manual/style/css/manual-zip.css
+share/httpd/manual/style/css/manual.css
+share/httpd/manual/style/faq.dtd
+share/httpd/manual/style/lang.dtd
+share/httpd/manual/style/latex/atbeginend.sty
+share/httpd/manual/style/manualpage.dtd
+share/httpd/manual/style/modulesynopsis.dtd
+share/httpd/manual/style/sitemap.dtd
+share/httpd/manual/style/version.ent
+share/httpd/manual/suexec.html
+share/httpd/manual/suexec.html.en
+share/httpd/manual/suexec.html.fr
+share/httpd/manual/suexec.html.ja.utf8
+share/httpd/manual/suexec.html.ko.euc-kr
+share/httpd/manual/suexec.html.tr.utf8
+share/httpd/manual/upgrading.html
+share/httpd/manual/upgrading.html.en
+share/httpd/manual/upgrading.html.fr
+share/httpd/manual/urlmapping.html
+share/httpd/manual/urlmapping.html.en
+share/httpd/manual/urlmapping.html.fr
+share/httpd/manual/urlmapping.html.ja.utf8
+share/httpd/manual/urlmapping.html.ko.euc-kr
+share/httpd/manual/urlmapping.html.tr.utf8
+share/httpd/manual/vhosts/details.html
+share/httpd/manual/vhosts/details.html.en
+share/httpd/manual/vhosts/details.html.fr
+share/httpd/manual/vhosts/details.html.ko.euc-kr
+share/httpd/manual/vhosts/details.html.tr.utf8
+share/httpd/manual/vhosts/examples.html
+share/httpd/manual/vhosts/examples.html.en
+share/httpd/manual/vhosts/examples.html.fr
+share/httpd/manual/vhosts/examples.html.ja.utf8
+share/httpd/manual/vhosts/examples.html.ko.euc-kr
+share/httpd/manual/vhosts/examples.html.tr.utf8
+share/httpd/manual/vhosts/fd-limits.html
+share/httpd/manual/vhosts/fd-limits.html.en
+share/httpd/manual/vhosts/fd-limits.html.fr
+share/httpd/manual/vhosts/fd-limits.html.ja.utf8
+share/httpd/manual/vhosts/fd-limits.html.ko.euc-kr
+share/httpd/manual/vhosts/fd-limits.html.tr.utf8
+share/httpd/manual/vhosts/index.html
+share/httpd/manual/vhosts/index.html.de
+share/httpd/manual/vhosts/index.html.en
+share/httpd/manual/vhosts/index.html.fr
+share/httpd/manual/vhosts/index.html.ja.utf8
+share/httpd/manual/vhosts/index.html.ko.euc-kr
+share/httpd/manual/vhosts/index.html.tr.utf8
+share/httpd/manual/vhosts/index.html.zh-cn
+share/httpd/manual/vhosts/ip-based.html
+share/httpd/manual/vhosts/ip-based.html.en
+share/httpd/manual/vhosts/ip-based.html.fr
+share/httpd/manual/vhosts/ip-based.html.ja.utf8
+share/httpd/manual/vhosts/ip-based.html.ko.euc-kr
+share/httpd/manual/vhosts/ip-based.html.tr.utf8
+share/httpd/manual/vhosts/mass.html
+share/httpd/manual/vhosts/mass.html.en
+share/httpd/manual/vhosts/mass.html.fr
+share/httpd/manual/vhosts/mass.html.ko.euc-kr
+share/httpd/manual/vhosts/mass.html.tr.utf8
+share/httpd/manual/vhosts/name-based.html
+share/httpd/manual/vhosts/name-based.html.de
+share/httpd/manual/vhosts/name-based.html.en
+share/httpd/manual/vhosts/name-based.html.fr
+share/httpd/manual/vhosts/name-based.html.ja.utf8
+share/httpd/manual/vhosts/name-based.html.ko.euc-kr
+share/httpd/manual/vhosts/name-based.html.tr.utf8
+@pkgdir share/httpd/manual/style/xsl/util
+@pkgdir share/httpd/manual/style/lang
diff --git a/www/apache24/buildlink3.mk b/www/apache24/buildlink3.mk
new file mode 100644
index 00000000000..c23a14585e3
--- /dev/null
+++ b/www/apache24/buildlink3.mk
@@ -0,0 +1,27 @@
+# $NetBSD: buildlink3.mk,v 1.1.1.1 2012/04/13 18:50:48 ryoon Exp $
+
+BUILDLINK_TREE+= apache
+
+.if !defined(APACHE_BUILDLINK3_MK)
+APACHE_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.apache+= apache>=2.4.1
+BUILDLINK_ABI_DEPENDS.apache+= apache>=2.4.1
+BUILDLINK_PKGSRCDIR.apache?= ../../www/apache24
+BUILDLINK_DEPMETHOD.apache?= build
+.if defined(APACHE_MODULE)
+BUILDLINK_DEPMETHOD.apache+= full
+.endif
+USE_TOOLS+= perl # for "apxs"
+CONFIGURE_ENV+= APR_LIBTOOL=${LIBTOOL:Q} # make apxs use the libtool we specify
+MAKE_ENV+= APR_LIBTOOL=${LIBTOOL:Q}
+APXS?= ${BUILDLINK_PREFIX.apache}/bin/apxs
+.if defined(GNU_CONFIGURE)
+CONFIGURE_ARGS+= --with-apxs2=${APXS:Q}
+.endif
+
+.include "../../devel/apr/buildlink3.mk"
+.include "../../devel/apr-util/buildlink3.mk"
+.endif # APACHE_BUILDLINK3_MK
+
+BUILDLINK_TREE+= -apache
diff --git a/www/apache24/distinfo b/www/apache24/distinfo
new file mode 100644
index 00000000000..3eed0c9db9c
--- /dev/null
+++ b/www/apache24/distinfo
@@ -0,0 +1,15 @@
+$NetBSD: distinfo,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $
+
+SHA1 (httpd-2.4.1.tar.bz2) = 23beffce77529971e09d0fb1e760cadf80afa4e6
+RMD160 (httpd-2.4.1.tar.bz2) = 6d21d828028ce1cff8648fb29c8eb1b75fd96451
+Size (httpd-2.4.1.tar.bz2) = 4101303 bytes
+SHA1 (patch-aa) = 2d92b1340aaae40289421f164346348c6d7fe839
+SHA1 (patch-ab) = a3edcc20b7654e0446c7d442cda1510b23e5d324
+SHA1 (patch-ac) = 9f86d845df30316d22bce677a4b176f51007ba0d
+SHA1 (patch-ad) = 4c812b94af32e8493e0b17793a2d065003d32cc6
+SHA1 (patch-ae) = 5bd3bf54e792bf8a2916d7e1b49b1702b02c6903
+SHA1 (patch-ag) = 62a40901debb421dac7954362d4934297c54c0c6
+SHA1 (patch-ai) = 867ac81fd14b1bd6af048ec57390d915956e9568
+SHA1 (patch-al) = 02d9ade5aac4270182063d5ad413970c832ee911
+SHA1 (patch-am) = f14b260ffad2c7e8d26e5b614d4aeaf8506e195b
+SHA1 (patch-aw) = 43cd64df886853ef7b75b91ed20183f329fcc9df
diff --git a/www/apache24/files/apache.sh b/www/apache24/files/apache.sh
new file mode 100644
index 00000000000..d6bbd22cbf8
--- /dev/null
+++ b/www/apache24/files/apache.sh
@@ -0,0 +1,57 @@
+#!@RCD_SCRIPTS_SHELL@
+#
+# $NetBSD: apache.sh,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $
+#
+# PROVIDE: apache
+# REQUIRE: DAEMON
+# KEYWORD: shutdown
+#
+# You will need to set some variables in /etc/rc.conf to start Apache:
+#
+# apache=YES
+
+name="apache"
+
+if [ -f /etc/rc.subr ]
+then
+ . /etc/rc.subr
+
+ rcvar=$name
+ command="@PREFIX@/sbin/httpd"
+ command_args="-k start"
+ pidfile="@VARBASE@/run/httpd.pid"
+ required_files="@PKG_SYSCONFDIR@/httpd.conf"
+ extra_commands="reload"
+ reload_cmd="$command -k graceful"
+
+ load_rc_config $name
+ run_rc_command "$1"
+else
+ ctl_command="@PREFIX@/sbin/apachectl"
+
+ if [ ! -x ${ctl_command} ]; then
+ return
+ fi
+
+ case "$1" in
+ start)
+ @ECHO@ "Starting ${name}."
+ ${ctl_command} start
+ ;;
+ stop)
+ @ECHO@ "Stopping ${name}."
+ ${ctl_command} stop
+ ;;
+ reload)
+ ${ctl_command} graceful
+ ;;
+ restart)
+ "$0" stop
+ sleep 10
+ "$0" start
+ ;;
+ *)
+ ${ctl_command} "$1"
+ ;;
+ esac
+fi
diff --git a/www/apache24/files/mkcert.sh b/www/apache24/files/mkcert.sh
new file mode 100644
index 00000000000..6be1c77bc7c
--- /dev/null
+++ b/www/apache24/files/mkcert.sh
@@ -0,0 +1,914 @@
+#!/bin/sh
+##
+## mkcert.sh -- SSL Certificate Generation Utility
+## Copyright (c) 1998-2000 Ralf S. Engelschall, All Rights Reserved.
+##
+
+# parameters
+parameters=`getopt a:c:t:k:v $*`
+if [ $# = 0 ]; then
+ cat << EOF
+Usage:
+ mkcert.sh [-t type] [-a algo] [-c crtfile ] [-k keyfile] [-v]
+
+Options:
+ -t type Type of certificates to generate. Valid types are:
+ dummy self-signed Snake Oil cert
+ test test cert signed by Snake Oil CA
+ custom custom cert signed by own CA
+ existing existing cert
+
+ -a algo Signature algorithm for generated certificate. Valid
+ algorithms are RSA or DSA.
+
+ -c crtfile Path to an existing certificate
+
+ -k keyfile Path to an existing key file
+
+ -v Display the certificate and key, then exit.
+
+EOF
+ exit 2
+fi
+
+set -- $parameters
+for param
+do
+ case $param in
+ -a) algo=$2 ;;
+ -c) crt=$2 ;;
+ -t) type=$2 ;;
+ -k) key=$2 ;;
+ -v) view=1 ;;
+ --) break ;;
+ esac
+ shift
+done
+
+openssl="openssl"
+confdir=@PKG_SYSCONFDIR@
+
+# configuration
+sslcrtdir="$confdir/ssl.crt"
+sslcsrdir="$confdir/ssl.csr"
+sslkeydir="$confdir/ssl.key"
+sslprmdir="$confdir/ssl.prm"
+sslcrldir="$confdir/ssl.crl"
+
+if [ ! -d "${sslcrtdir}" ]; then
+ echo "Creating ${sslcrtdir}"
+ mkdir "${sslcrtdir}" || exit 1
+fi
+if [ ! -d "${sslcsrdir}" ]; then
+ echo "Creating ${sslcsrdir}"
+ mkdir "${sslcsrdir}" || exit 1
+fi
+if [ ! -d "${sslkeydir}" ]; then
+ echo "Creating ${sslkeydir}"
+ mkdir "${sslkeydir}" || exit 1
+fi
+if [ ! -d "${sslprmdir}" ]; then
+ echo "Creating ${sslprmdir}"
+ mkdir "${sslprmdir}" || exit 1
+fi
+if [ ! -d "${sslcrldir}" ]; then
+ echo "Creating ${sslcrldir}"
+ mkdir "${sslcrldir}" || exit 1
+fi
+
+# some optional terminal sequences
+case $TERM in
+ xterm|xterm*|vt220|vt220*)
+ T_MD=`echo dummy | awk '{ printf("%c%c%c%c", 27, 91, 49, 109); }'`
+ T_ME=`echo dummy | awk '{ printf("%c%c%c", 27, 91, 109); }'`
+ ;;
+ vt100|vt100*)
+ T_MD=`echo dummy | awk '{ printf("%c%c%c%c%c%c", 27, 91, 49, 109, 0, 0); }'`
+ T_ME=`echo dummy | awk '{ printf("%c%c%c%c%c", 27, 91, 109, 0, 0); }'`
+ ;;
+ default)
+ T_MD=''
+ T_ME=''
+ ;;
+esac
+
+# display header
+echo "${T_MD}SSL Certificate Generation Utility${T_ME} (mkcert.sh)"
+echo "Copyright (c) 1998-2000 Ralf S. Engelschall, All Rights Reserved."
+
+# on request view certificates only
+if [ ".$view" != . ]; then
+ if [ -f "$sslcrtdir/ca.crt" -a -f "$sslkeydir/ca.key" ]; then
+ echo ""
+ echo "${T_MD}CA X.509 Certificate${T_ME} [ca.crt]"
+ echo "______________________________________________________________________"
+ $openssl x509 -noout -text -in $sslcrtdir/ca.crt
+ echo ""
+ if [ ".`$openssl x509 -noout -text -in $sslcrtdir/ca.crt | grep 'Signature Algorithm' | grep -i RSA`" != . ]; then
+ echo "${T_MD}CA RSA Private Key${T_ME} [ca.key]"
+ echo "______________________________________________________________________"
+ $openssl rsa -noout -text -in $sslkeydir/ca.key
+ else
+ echo "${T_MD}CA DSA Private Key${T_ME} [ca.key]"
+ echo "______________________________________________________________________"
+ $openssl dsa -noout -text -in $sslkeydir/ca.key
+ fi
+ fi
+ if [ -f "$sslcrtdir/server.crt" -a -f "$sslkeydir/server.key" ]; then
+ echo ""
+ echo "${T_MD}Server X.509 Certificate${T_ME} [server.crt]"
+ echo "______________________________________________________________________"
+ $openssl x509 -noout -text -in $sslcrtdir/server.crt
+ echo ""
+ if [ ".`$openssl x509 -noout -text -in $sslcrtdir/server.crt | grep 'Signature Algorithm' | grep -i RSA`" != . ]; then
+ echo "${T_MD}Server RSA Private Key${T_ME} [server.key]"
+ echo "______________________________________________________________________"
+ $openssl rsa -noout -text -in $sslkeydir/server.key
+ else
+ echo "${T_MD}Server DSA Private Key${T_ME} [server.key]"
+ echo "______________________________________________________________________"
+ $openssl dsa -noout -text -in $sslkeydir/server.key
+ fi
+ fi
+ exit 0
+fi
+
+# find some random files
+# We will always generate a /tmp/randfile using /dev/urandom
+# before passing $randfile to openssl.
+randfiles='/tmp/randfile'
+for file in /var/log/messages /var/adm/messages /var/log/system.log /var/wtmp \
+ /kernel /kernel/genunix /vmunix /vmlinuz /mach /netbsd \
+ /etc/hosts /etc/group /etc/resolv.conf /bin/ls; do
+ if [ -r $file ]; then
+ if [ ".$randfiles" = . ]; then
+ randfiles="$file"
+ else
+ randfiles="${randfiles}:$file"
+ fi
+ fi
+done
+
+# initialize random file
+if [ -f $HOME/.rnd ]; then
+ RANDFILE="$HOME/.rnd"
+else
+ RANDFILE="/tmp/.mkcert.rnd"
+ (ps; date) >$RANDFILE
+fi
+export RANDFILE
+
+# canonicalize parameters
+case "x$type" in
+ x ) type=test ;;
+esac
+case "x$algo" in
+ xRSA|xrsa )
+ algo=RSA
+ ;;
+ xDSA|xdsa )
+ algo=DSA
+ ;;
+ x )
+ algo=choose
+ ;;
+ * ) echo "Unknown algorithm \'$algo' (use RSA or DSA!)" 1>&2
+ exit 1
+ ;;
+esac
+
+# processing
+case $type in
+
+ dummy)
+ echo ""
+ echo "${T_MD}Generating self-signed Snake Oil certificate [DUMMY]${T_ME}"
+ echo "______________________________________________________________________"
+ echo ""
+ if [ ".$algo" = .choose ]; then
+ algo=RSA
+ fi
+ if [ ".$algo" = .RSA ]; then
+ cp $sslcrtdir/snakeoil-rsa.crt $sslcrtdir/server.crt
+ (umask 077; cp $sslkeydir/snakeoil-rsa.key $sslkeydir/server.key)
+ else
+ cp $sslcrtdir/snakeoil-dsa.crt $sslcrtdir/server.crt
+ (umask 077; cp $sslkeydir/snakeoil-dsa.key $sslkeydir/server.key)
+ fi
+ echo "${T_MD}RESULT: Server Certification Files${T_ME}"
+ echo ""
+ echo "o ${T_MD}$confdir/ssl.key/server.key${T_ME}"
+ echo " The PEM-encoded $algo private key file which you configure"
+ echo " with the 'SSLCertificateKeyFile' directive (automatically done"
+ echo " when you install via APACI). ${T_MD}KEEP THIS FILE PRIVATE!${T_ME}"
+ echo ""
+ echo "o ${T_MD}$confdir/ssl.crt/server.crt${T_ME}"
+ echo " The PEM-encoded X.509 certificate file which you configure"
+ echo " with the 'SSLCertificateFile' directive (automatically done"
+ echo " when you install via APACI)."
+ echo ""
+ echo "WARNING: Do not use this for real-life/production systems"
+ echo ""
+ ;;
+
+ test)
+ echo ""
+ echo "${T_MD}Generating test certificate signed by Snake Oil CA [TEST]${T_ME}"
+ echo "WARNING: Do not use this for real-life/production systems"
+ if [ ".$algo" = .choose ]; then
+ echo "______________________________________________________________________"
+ echo ""
+ echo "${T_MD}STEP 0: Decide the signature algorithm used for certificate${T_ME}"
+ echo "The generated X.509 CA certificate can contain either"
+ echo "RSA or DSA based ingredients. Select the one you want to use."
+ def1=R def2=r def=RSA
+ prompt="Signature Algorithm ((R)SA or (D)SA) [$def1]:"
+ while [ 1 ]; do
+ echo dummy | awk '{ printf("%s", prompt); }' "prompt=$prompt"
+ read algo
+ if [ ".$algo" = ".$def1" -o ".$algo" = ".$def2" -o ".$algo" = . ]; then
+ algo=$def
+ break
+ elif [ ".$algo" = ".R" -o ".$algo" = ".r" ]; then
+ algo=RSA
+ break
+ elif [ ".$algo" = ".D" -o ".$algo" = ".d" ]; then
+ algo=DSA
+ break
+ else
+ echo "mkcert.sh:Warning: Invalid selection" 1>&2
+ fi
+ done
+ fi
+ if [ ".$algo" = ".DSA" ]; then
+ echo ""
+ echo "${T_MD}WARNING!${T_ME} You're generating a DSA based certificate/key pair."
+ echo " This implies that RSA based ciphers won't be available later,"
+ echo " which for your web server currently still means that mostly all"
+ echo " popular web browsers cannot connect to it. At least not until"
+ echo " you also generate an additional RSA based certificate/key pair"
+ echo " and configure them in parallel."
+ fi
+ echo "______________________________________________________________________"
+ echo ""
+ echo "${T_MD}STEP 1: Generating $algo private key (1024 bit) [server.key]${T_ME}"
+ (umask 077; head -500 /dev/urandom > randfile)
+ if [ ".$algo" = .RSA ]; then
+ if [ ".$randfiles" != . ]; then
+ $openssl genrsa -rand $randfiles -out $sslkeydir/server.key 1024
+ else
+ $openssl genrsa -out $sslkeydir/server.key 1024
+ fi
+ if [ $? -ne 0 ]; then
+ echo "mkcert.sh:Error: Failed to generate RSA private key" 1>&2
+ exit 1
+ fi
+ else
+ echo "Generating DSA private key via SnakeOil CA DSA parameters"
+ if [ ".$randfiles" != . ]; then
+ (umask 077
+ $openssl gendsa -rand $randfiles \
+ -out $sslkeydir/server.key \
+ $sslprmdir/snakeoil-ca-dsa.prm)
+ else
+ (umask 077
+ $openssl gendsa -out $sslkeydir/server.key \
+ $sslprmdir/snakeoil-ca-dsa.prm)
+ fi
+ if [ $? -ne 0 ]; then
+ echo "mkcert.sh:Error: Failed to generate DSA private key" 1>&2
+ exit 1
+ fi
+ fi
+ rm -f randfile
+ echo "______________________________________________________________________"
+ echo ""
+ echo "${T_MD}STEP 2: Generating X.509 certificate signing request [server.csr]${T_ME}"
+ cat >/tmp/.mkcert.cfg <<EOT
+[ req ]
+default_bits = 1024
+distinguished_name = req_DN
+[ req_DN ]
+countryName = "1. Country Name (2 letter code)"
+countryName_default = XY
+countryName_min = 2
+countryName_max = 2
+stateOrProvinceName = "2. State or Province Name (full name) "
+stateOrProvinceName_default = Snake Desert
+localityName = "3. Locality Name (eg, city) "
+localityName_default = Snake Town
+0.organizationName = "4. Organization Name (eg, company) "
+0.organizationName_default = Snake Oil, Ltd
+organizationalUnitName = "5. Organizational Unit Name (eg, section) "
+organizationalUnitName_default = Webserver Team
+commonName = "6. Common Name (eg, FQDN) "
+commonName_max = 64
+commonName_default = www.snakeoil.dom
+emailAddress = "7. Email Address (eg, name@FQDN)"
+emailAddress_max = 40
+emailAddress_default = www@snakeoil.dom
+EOT
+ $openssl req -config /tmp/.mkcert.cfg \
+ -new \
+ -key $sslkeydir/server.key \
+ -out $sslcsrdir/server.csr
+ if [ $? -ne 0 ]; then
+ echo "mkcert.sh:Error: Failed to generate certificate signing request" 1>&2
+ exit 1
+ fi
+ rm -f /tmp/.mkcert.cfg
+ prompt="8. Certificate Validity (days) [365]:"
+ echo dummy | awk '{ printf("%s", prompt); }' "prompt=$prompt"
+ read days
+ if [ ".$days" = . ]; then
+ days=365
+ fi
+ echo "______________________________________________________________________"
+ echo ""
+ echo "${T_MD}STEP 3: Generating X.509 certificate signed by Snake Oil CA [server.crt]${T_ME}"
+ echo dummy | awk '{ printf("%s", prompt); }' "prompt=Certificate Version (1 or 3) [3]:"
+ read certversion
+ extfile=""
+ if [ ".$certversion" = .3 -o ".$certversion" = . ]; then
+ extfile="-extfile /tmp/.mkcert.cfg"
+ cat >/tmp/.mkcert.cfg <<EOT
+extensions = x509v3
+[ x509v3 ]
+subjectAltName = email:copy
+nsComment = "mod_ssl generated test server certificate"
+nsCertType = server
+EOT
+ fi
+ if [ ! -f /tmp/.mkcert.serial ]; then
+ echo '01' >/tmp/.mkcert.serial
+ fi
+ if [ ".$algo" = .RSA ]; then
+ $openssl x509 $extfile \
+ -days $days \
+ -CAserial /tmp/.mkcert.serial \
+ -CA $sslcrtdir/snakeoil-ca-rsa.crt \
+ -CAkey $sslkeydir/snakeoil-ca-rsa.key \
+ -in $sslcsrdir/server.csr -req \
+ -out $sslcrtdir/server.crt
+ else
+ $openssl x509 $extfile \
+ -days $days \
+ -CAserial /tmp/.mkcert.serial \
+ -CA $sslcrtdir/snakeoil-ca-dsa.crt \
+ -CAkey $sslkeydir/snakeoil-ca-dsa.key \
+ -in $sslcsrdir/server.csr -req \
+ -out $sslcrtdir/server.crt
+ fi
+ if [ $? -ne 0 ]; then
+ echo "mkcert.sh:Error: Failed to generate X.509 certificate" 1>&2
+ exit 1
+ fi
+ rm -f /tmp/.mkcert.cfg
+ echo "Verify: matching certificate & key modulus"
+ modcrt=`$openssl x509 -noout -modulus -in $sslcrtdir/server.crt | sed -e 's;.*Modulus=;;'`
+ if [ ".$algo" = .RSA ]; then
+ modkey=`$openssl rsa -noout -modulus -in $sslkeydir/server.key | sed -e 's;.*Modulus=;;'`
+ else
+ modkey=`$openssl dsa -noout -modulus -in $sslkeydir/server.key | sed -e 's;.*Key=;;'`
+ fi
+ if [ ".$modcrt" != ".$modkey" ]; then
+ echo "mkcert.sh:Error: Failed to verify modulus on resulting X.509 certificate" 1>&2
+ exit 1
+ fi
+ echo "Verify: matching certificate signature"
+ if [ ".$algo" = .RSA ]; then
+ $openssl verify -CAfile $sslcrtdir/snakeoil-ca-rsa.crt $sslcrtdir/server.crt
+ else
+ $openssl verify -CAfile $sslcrtdir/snakeoil-ca-dsa.crt $sslcrtdir/server.crt
+ fi
+ if [ $? -ne 0 ]; then
+ echo "mkcert.sh:Error: Failed to verify signature on resulting X.509 certificate" 1>&2
+ exit 1
+ fi
+ echo "______________________________________________________________________"
+ echo ""
+ echo "${T_MD}STEP 4: Enrypting $algo private key with a pass phrase for security [server.key]${T_ME}"
+ echo "The contents of the server.key file (the generated private key) has to be"
+ echo "kept secret. So we strongly recommend you to encrypt the server.key file"
+ echo "with a Triple-DES cipher and a Pass Phrase."
+ while [ 1 ]; do
+ echo dummy | awk '{ printf("Encrypt the private key now? [Y/n]: "); }'
+ read rc
+ if [ ".$rc" = .n -o ".$rc" = .N ]; then
+ rc="n"
+ break
+ fi
+ if [ ".$rc" = .y -o ".$rc" = .Y -o ".$rc" = . ]; then
+ rc="y"
+ break
+ fi
+ done
+ if [ ".$rc" = .y ]; then
+ if [ ".$algo" = .RSA ]; then
+ (umask 077
+ $openssl rsa -des3 \
+ -in $sslkeydir/server.key \
+ -out $sslkeydir/server.key.crypt)
+ else
+ (umask 077
+ $openssl dsa -des3 \
+ -in $sslkeydir/server.key \
+ -out $sslkeydir/server.key.crypt)
+ fi
+ if [ $? -ne 0 ]; then
+ echo "mkcert.sh:Error: Failed to encrypt $algo private key" 1>&2
+ exit 1
+ fi
+ (umask 077; cp $sslkeydir/server.key.crypt $sslkeydir/server.key)
+ rm -f $sslkeydir/server.key.crypt
+ echo "Fine, you're using an encrypted $algo private key."
+ else
+ echo "Warning, you're using an unencrypted $algo private key."
+ echo "Please notice this fact and do this on your own risk."
+ fi
+ echo "______________________________________________________________________"
+ echo ""
+ echo "${T_MD}RESULT: Server Certification Files${T_ME}"
+ echo ""
+ echo "o ${T_MD}$confdir/ssl.key/server.key${T_ME}"
+ echo " The PEM-encoded $algo private key file which you configure"
+ echo " with the 'SSLCertificateKeyFile' directive (automatically done"
+ echo " when you install via APACI). ${T_MD}KEEP THIS FILE PRIVATE!${T_ME}"
+ echo ""
+ echo "o ${T_MD}$confdir/ssl.crt/server.crt${T_ME}"
+ echo " The PEM-encoded X.509 certificate file which you configure"
+ echo " with the 'SSLCertificateFile' directive (automatically done"
+ echo " when you install via APACI)."
+ echo ""
+ echo "o ${T_MD}$confdir/ssl.csr/server.csr${T_ME}"
+ echo " The PEM-encoded X.509 certificate signing request file which"
+ echo " you can send to an official Certificate Authority (CA) in order"
+ echo " to request a real server certificate (signed by this CA instead"
+ echo " of our demonstration-only Snake Oil CA) which later can replace"
+ echo " the $confdir/ssl.crt/server.crt file."
+ echo ""
+ echo "WARNING: Do not use this for real-life/production systems"
+ echo ""
+ ;;
+
+ custom)
+ echo ""
+ echo "${T_MD}Generating custom certificate signed by own CA [CUSTOM]${T_ME}"
+ if [ ".$algo" = .choose ]; then
+ echo "______________________________________________________________________"
+ echo ""
+ echo "${T_MD}STEP 0: Decide the signature algorithm used for certificates${T_ME}"
+ echo "The generated X.509 certificates can contain either"
+ echo "RSA or DSA based ingredients. Select the one you want to use."
+ def1=R def2=r def=RSA
+ prompt="Signature Algorithm ((R)SA or (D)SA) [$def1]:"
+ while [ 1 ]; do
+ echo dummy | awk '{ printf("%s", prompt); }' "prompt=$prompt"
+ read algo
+ if [ ".$algo" = ".$def1" -o ".$algo" = ".$def2" -o ".$algo" = . ]; then
+ algo=$def
+ break
+ elif [ ".$algo" = ".R" -o ".$algo" = ".r" ]; then
+ algo=RSA
+ break
+ elif [ ".$algo" = ".D" -o ".$algo" = ".d" ]; then
+ algo=DSA
+ break
+ else
+ echo "mkcert.sh:Warning: Invalid selection" 1>&2
+ fi
+ done
+ fi
+ if [ ".$algo" = ".DSA" ]; then
+ echo ""
+ echo "${T_MD}WARNING!${T_ME} You're generating DSA based certificate/key pairs."
+ echo " This implies that RSA based ciphers won't be available later,"
+ echo " which for your web server currently still means that mostly all"
+ echo " popular web browsers cannot connect to it. At least not until"
+ echo " you also generate an additional RSA based certificate/key pair"
+ echo " and configure them in parallel."
+ fi
+ echo "______________________________________________________________________"
+ echo ""
+ echo "${T_MD}STEP 1: Generating $algo private key for CA (1024 bit) [ca.key]${T_ME}"
+ (umask 077; head -500 /dev/urandom > randfile)
+ if [ ".$algo" = .RSA ]; then
+ if [ ".$randfiles" != . ]; then
+ $openssl genrsa -rand $randfiles -out $sslkeydir/ca.key 1024
+ else
+ $openssl genrsa -out $sslkeydir/ca.key 1024
+ fi
+ if [ $? -ne 0 ]; then
+ echo "mkcert.sh:Error: Failed to generate RSA private key" 1>&2
+ exit 1
+ fi
+ else
+ if [ ".$randfiles" != . ]; then
+ $openssl dsaparam -rand $randfiles -out $sslprmdir/ca.prm 1024
+ echo "Generating DSA private key:"
+ (umask 077
+ $openssl gendsa -rand $randfiles -out $sslkeydir/ca.key $sslprmdir/ca.prm)
+ else
+ $openssl dsaparam -out $sslprmdir/ca.prm 1024
+ echo "Generating DSA private key:"
+ (umask 077
+ $openssl gendsa -out $sslkeydir/ca.key $sslprmdir/ca.prm)
+ fi
+ if [ $? -ne 0 ]; then
+ echo "mkcert.sh:Error: Failed to generate DSA private key" 1>&2
+ exit 1
+ fi
+ fi
+ rm -f randfile
+ echo "______________________________________________________________________"
+ echo ""
+ echo "${T_MD}STEP 2: Generating X.509 certificate signing request for CA [ca.csr]${T_ME}"
+ cat >/tmp/.mkcert.cfg <<EOT
+[ req ]
+default_bits = 1024
+distinguished_name = req_DN
+[ req_DN ]
+countryName = "1. Country Name (2 letter code)"
+countryName_default = XY
+countryName_min = 2
+countryName_max = 2
+stateOrProvinceName = "2. State or Province Name (full name) "
+stateOrProvinceName_default = Snake Desert
+localityName = "3. Locality Name (eg, city) "
+localityName_default = Snake Town
+0.organizationName = "4. Organization Name (eg, company) "
+0.organizationName_default = Snake Oil, Ltd
+organizationalUnitName = "5. Organizational Unit Name (eg, section) "
+organizationalUnitName_default = Certificate Authority
+commonName = "6. Common Name (eg, CA name) "
+commonName_max = 64
+commonName_default = Snake Oil CA
+emailAddress = "7. Email Address (eg, name@FQDN)"
+emailAddress_max = 40
+emailAddress_default = ca@snakeoil.dom
+EOT
+ $openssl req -config /tmp/.mkcert.cfg \
+ -new \
+ -key $sslkeydir/ca.key \
+ -out $sslcsrdir/ca.csr
+ if [ $? -ne 0 ]; then
+ echo "mkcert.sh:Error: Failed to generate certificate signing request" 1>&2
+ exit 1
+ fi
+ rm -f /tmp/.mkcert.cfg
+ prompt="8. Certificate Validity (days) [365]:"
+ echo dummy | awk '{ printf("%s", prompt); }' "prompt=$prompt"
+ read days
+ if [ ".$days" = . ]; then
+ days=365
+ fi
+ echo "______________________________________________________________________"
+ echo ""
+ echo "${T_MD}STEP 3: Generating X.509 certificate for CA signed by itself [ca.crt]${T_ME}"
+ echo dummy | awk '{ printf("%s", prompt); }' "prompt=Certificate Version (1 or 3) [3]:"
+ read certversion
+ extfile=""
+ if [ ".$certversion" = .3 -o ".$certversion" = . ]; then
+ extfile="-extfile /tmp/.mkcert.cfg"
+ cat >/tmp/.mkcert.cfg <<EOT
+extensions = x509v3
+[ x509v3 ]
+subjectAltName = email:copy
+basicConstraints = CA:true,pathlen:0
+nsComment = "mod_ssl generated custom CA certificate"
+nsCertType = sslCA
+EOT
+ fi
+ $openssl x509 $extfile \
+ -days $days \
+ -signkey $sslkeydir/ca.key \
+ -in $sslcsrdir/ca.csr -req \
+ -out $sslcrtdir/ca.crt
+ if [ $? -ne 0 ]; then
+ echo "mkcert.sh:Error: Failed to generate self-signed CA certificate" 1>&2
+ exit 1
+ fi
+ rm -f /tmp/.mkcert.cfg
+ echo "Verify: matching certificate & key modulus"
+ modcrt=`$openssl x509 -noout -modulus -in $sslcrtdir/ca.crt | sed -e 's;.*Modulus=;;'`
+ if [ ".$algo" = .RSA ]; then
+ modkey=`$openssl rsa -noout -modulus -in $sslkeydir/ca.key | sed -e 's;.*Modulus=;;'`
+ else
+ modkey=`$openssl dsa -noout -modulus -in $sslkeydir/ca.key | sed -e 's;.*Key=;;'`
+ fi
+ if [ ".$modcrt" != ".$modkey" ]; then
+ echo "mkcert.sh:Error: Failed to verify modulus on resulting X.509 certificate" 1>&2
+ exit 1
+ fi
+ echo "Verify: matching certificate signature"
+ $openssl verify $sslcrtdir/ca.crt
+ if [ $? -ne 0 ]; then
+ echo "mkcert.sh:Error: Failed to verify signature on resulting X.509 certificate" 1>&2
+ exit 1
+ fi
+ echo "______________________________________________________________________"
+ echo ""
+ echo "${T_MD}STEP 4: Generating $algo private key for SERVER (1024 bit) [server.key]${T_ME}"
+ (umask 077; head -500 /dev/urandom > randfile)
+ if [ ".$algo" = .RSA ]; then
+ if [ ".$randfiles" != . ]; then
+ $openssl genrsa -rand $randfiles -out $sslkeydir/server.key 1024
+ else
+ $openssl genrsa -out $sslkeydir/server.key 1024
+ fi
+ if [ $? -ne 0 ]; then
+ echo "mkcert.sh:Error: Failed to generate RSA private key" 1>&2
+ exit 1
+ fi
+ else
+ if [ ".$randfiles" != . ]; then
+ (umask 077
+ $openssl gendsa -rand $randfiles \
+ -out $sslkeydir/server.key $sslprmdir/ca.prm)
+ else
+ (umask 077
+ $openssl gendsa -out $sslkeydir/server.key $sslprmdir/ca.prm)
+ fi
+ if [ $? -ne 0 ]; then
+ echo "mkcert.sh:Error: Failed to generate DSA private key" 1>&2
+ exit 1
+ fi
+ fi
+ rm -f randfile
+ echo "______________________________________________________________________"
+ echo ""
+ echo "${T_MD}STEP 5: Generating X.509 certificate signing request for SERVER [server.csr]${T_ME}"
+ cat >/tmp/.mkcert.cfg <<EOT
+[ req ]
+default_bits = 1024
+distinguished_name = req_DN
+[ req_DN ]
+countryName = "1. Country Name (2 letter code)"
+countryName_default = XY
+countryName_min = 2
+countryName_max = 2
+stateOrProvinceName = "2. State or Province Name (full name) "
+stateOrProvinceName_default = Snake Desert
+localityName = "3. Locality Name (eg, city) "
+localityName_default = Snake Town
+0.organizationName = "4. Organization Name (eg, company) "
+0.organizationName_default = Snake Oil, Ltd
+organizationalUnitName = "5. Organizational Unit Name (eg, section) "
+organizationalUnitName_default = Webserver Team
+commonName = "6. Common Name (eg, FQDN) "
+commonName_max = 64
+commonName_default = www.snakeoil.dom
+emailAddress = "7. Email Address (eg, name@fqdn)"
+emailAddress_max = 40
+emailAddress_default = www@snakeoil.dom
+EOT
+ $openssl req -config /tmp/.mkcert.cfg \
+ -new \
+ -key $sslkeydir/server.key \
+ -out $sslcsrdir/server.csr
+ if [ $? -ne 0 ]; then
+ echo "mkcert.sh:Error: Failed to generate certificate signing request" 1>&2
+ exit 1
+ fi
+ rm -f /tmp/.mkcert.cfg
+ prompt="8. Certificate Validity (days) [365]:"
+ echo dummy | awk '{ printf("%s", prompt); }' "prompt=$prompt"
+ read days
+ if [ ".$days" = . ]; then
+ days=365
+ fi
+ echo "______________________________________________________________________"
+ echo ""
+ echo "${T_MD}STEP 6: Generating X.509 certificate signed by own CA [server.crt]${T_ME}"
+ echo dummy | awk '{ printf("%s", prompt); }' "prompt=Certificate Version (1 or 3) [3]:"
+ read certversion
+ extfile=""
+ if [ ".$certversion" = .3 -o ".$certversion" = . ]; then
+ extfile="-extfile /tmp/.mkcert.cfg"
+ cat >/tmp/.mkcert.cfg <<EOT
+extensions = x509v3
+[ x509v3 ]
+subjectAltName = email:copy
+nsComment = "mod_ssl generated custom server certificate"
+nsCertType = server
+EOT
+ fi
+ if [ ! -f /tmp/.mkcert.serial ]; then
+ echo '01' >/tmp/.mkcert.serial
+ fi
+ $openssl x509 $extfile \
+ -days $days \
+ -CAserial /tmp/.mkcert.serial \
+ -CA $sslcrtdir/ca.crt \
+ -CAkey $sslkeydir/ca.key \
+ -in $sslcsrdir/server.csr -req \
+ -out $sslcrtdir/server.crt
+ if [ $? -ne 0 ]; then
+ echo "mkcert.sh:Error: Failed to generate X.509 certificate" 1>&2
+ exit 1
+ fi
+ rm -f /tmp/.mkcert.cfg
+ echo "Verify: matching certificate & key modulus"
+ modcrt=`$openssl x509 -noout -modulus -in $sslcrtdir/server.crt | sed -e 's;.*Modulus=;;'`
+ if [ ".$algo" = .RSA ]; then
+ modkey=`$openssl rsa -noout -modulus -in $sslkeydir/server.key | sed -e 's;.*Modulus=;;'`
+ else
+ modkey=`$openssl dsa -noout -modulus -in $sslkeydir/server.key | sed -e 's;.*Key=;;'`
+ fi
+ if [ ".$modcrt" != ".$modkey" ]; then
+ echo "mkcert.sh:Error: Failed to verify modulus on resulting X.509 certificate" 1>&2
+ exit 1
+ fi
+ echo "Verify: matching certificate signature"
+ $openssl verify -CAfile $sslcrtdir/ca.crt $sslcrtdir/server.crt
+ if [ $? -ne 0 ]; then
+ echo "mkcert.sh:Error: Failed to verify signature on resulting X.509 certificate" 1>&2
+ exit 1
+ fi
+ echo "______________________________________________________________________"
+ echo ""
+ echo "${T_MD}STEP 7: Enrypting $algo private key of CA with a pass phrase for security [ca.key]${T_ME}"
+ echo "The contents of the ca.key file (the generated private key) has to be"
+ echo "kept secret. So we strongly recommend you to encrypt the server.key file"
+ echo "with a Triple-DES cipher and a Pass Phrase."
+ while [ 1 ]; do
+ echo dummy | awk '{ printf("Encrypt the private key now? [Y/n]: "); }'
+ read rc
+ if [ ".$rc" = .n -o ".$rc" = .N ]; then
+ rc="n"
+ break
+ fi
+ if [ ".$rc" = .y -o ".$rc" = .Y -o ".$rc" = . ]; then
+ rc="y"
+ break
+ fi
+ done
+ if [ ".$rc" = .y ]; then
+ if [ ".$algo" = .RSA ]; then
+ (umask 077
+ $openssl rsa -des3 \
+ -in $sslkeydir/ca.key \
+ -out $sslkeydir/ca.key.crypt)
+ else
+ (umask 077
+ $openssl dsa -des3 \
+ -in $sslkeydir/ca.key \
+ -out $sslkeydir/ca.key.crypt)
+ fi
+ if [ $? -ne 0 ]; then
+ echo "mkcert.sh:Error: Failed to encrypt $algo private key" 1>&2
+ exit 1
+ fi
+ (umask 077; cp $sslkeydir/ca.key.crypt $sslkeydir/ca.key)
+ rm -f $sslkeydir/ca.key.crypt
+ echo "Fine, you're using an encrypted private key."
+ else
+ echo "Warning, you're using an unencrypted private key."
+ echo "Please notice this fact and do this on your own risk."
+ fi
+ echo "______________________________________________________________________"
+ echo ""
+ echo "${T_MD}STEP 8: Enrypting $algo private key of SERVER with a pass phrase for security [server.key]${T_ME}"
+ echo "The contents of the server.key file (the generated private key) has to be"
+ echo "kept secret. So we strongly recommend you to encrypt the server.key file"
+ echo "with a Triple-DES cipher and a Pass Phrase."
+ while [ 1 ]; do
+ echo dummy | awk '{ printf("Encrypt the private key now? [Y/n]: "); }'
+ read rc
+ if [ ".$rc" = .n -o ".$rc" = .N ]; then
+ rc="n"
+ break
+ fi
+ if [ ".$rc" = .y -o ".$rc" = .Y -o ".$rc" = . ]; then
+ rc="y"
+ break
+ fi
+ done
+ if [ ".$rc" = .y ]; then
+ if [ ".$algo" = .RSA ]; then
+ (umask 077
+ $openssl rsa -des3 \
+ -in $sslkeydir/server.key \
+ -out $sslkeydir/server.key.crypt)
+ else
+ (umask 077
+ $openssl dsa -des3 \
+ -in $sslkeydir/server.key \
+ -out $sslkeydir/server.key.crypt)
+ fi
+ if [ $? -ne 0 ]; then
+ echo "mkcert.sh:Error: Failed to encrypt $algo private key" 1>&2
+ exit 1
+ fi
+ (umask 077; cp $sslkeydir/server.key.crypt $sslkeydir/server.key)
+ rm -f $sslkeydir/server.key.crypt
+ echo "Fine, you're using an encrypted $algo private key."
+ else
+ echo "Warning, you're using an unencrypted $algo private key."
+ echo "Please notice this fact and do this on your own risk."
+ fi
+ echo "______________________________________________________________________"
+ echo ""
+ echo "${T_MD}RESULT: CA and Server Certification Files${T_ME}"
+ echo ""
+ echo "o ${T_MD}$confdir/ssl.key/ca.key${T_ME}"
+ echo " The PEM-encoded $algo private key file of the CA which you can"
+ echo " use to sign other servers or clients. ${T_MD}KEEP THIS FILE PRIVATE!${T_ME}"
+ echo ""
+ echo "o ${T_MD}$confdir/ssl.crt/ca.crt${T_ME}"
+ echo " The PEM-encoded X.509 certificate file of the CA which you use to"
+ echo " sign other servers or clients. When you sign clients with it (for"
+ echo " SSL client authentication) you can configure this file with the"
+ echo " 'SSLCACertificateFile' directive."
+ echo ""
+ echo "o ${T_MD}$confdir/ssl.key/server.key${T_ME}"
+ echo " The PEM-encoded $algo private key file of the server which you configure"
+ echo " with the 'SSLCertificateKeyFile' directive (automatically done"
+ echo " when you install via APACI). ${T_MD}KEEP THIS FILE PRIVATE!${T_ME}"
+ echo ""
+ echo "o ${T_MD}$confdir/ssl.crt/server.crt${T_ME}"
+ echo " The PEM-encoded X.509 certificate file of the server which you configure"
+ echo " with the 'SSLCertificateFile' directive (automatically done"
+ echo " when you install via APACI)."
+ echo ""
+ echo "o ${T_MD}$confdir/ssl.csr/server.csr${T_ME}"
+ echo " The PEM-encoded X.509 certificate signing request of the server file which"
+ echo " you can send to an official Certificate Authority (CA) in order"
+ echo " to request a real server certificate (signed by this CA instead"
+ echo " of our own CA) which later can replace the $confdir/ssl.crt/server.crt"
+ echo " file."
+ echo ""
+ echo "Congratulations that you establish your server with real certificates."
+ echo ""
+ ;;
+
+ existing)
+ echo ""
+ echo "${T_MD}Using existing custom certificate [EXISTING]${T_ME}"
+ echo "______________________________________________________________________"
+ echo ""
+ if [ ".$crt" = . ]; then
+ echo "mkcert.sh: No certificate file given" 1>&2
+ exit 1
+ fi
+ if [ ! -f "$crt" ]; then
+ echo "mkcert.sh: Cannot find certificate file: $crt" 1>&2
+ exit 1
+ fi
+ if [ $crt -ef $sslcrtdir/server.crt ]; then
+ mv -f $crt $crt.backup
+ crt="$crt.backup"
+ fi
+ if [ ".$key" != . ]; then
+ if [ ! -f "$key" ]; then
+ echo "mkcert.sh: Cannot find private key file: $key" 1>&2
+ exit 1
+ fi
+ if [ $key -ef $sslkeydir/server.key ]; then
+ mv -f $key $key.backup
+ key="$key.backup"
+ fi
+ cp $crt $sslcrtdir/server.crt
+ (umask 077; cp $key $sslkeydir/server.key)
+ else
+ if [ $crt -ef $sslcrtdir/server.crt ]; then
+ mv -f $crt $crt.backup
+ crt="$crt.backup"
+ fi
+ key=$crt
+ umask 077
+ touch $sslkeydir/server.key
+ sed -e '/-----BEGIN CERTIFICATE/,/-----END CERTIFICATE/p' -e '/.*/d' \
+ <$crt >$sslcrtdir/server.crt
+ sed -e '/-----BEGIN ... PRIVATE KEY/,/-----END ... PRIVATE KEY/p' -e '/.*/d' \
+ <$key >$sslkeydir/server.key
+ fi
+ $openssl x509 -noout -in $sslcrtdir/server.crt
+ if [ $? -ne 0 ]; then
+ echo "mkcert.sh:Error: Failed to check certificate contents: $crt" 1>&2
+ exit 1
+ fi
+ if [ ".`grep 'PRIVATE KEY' $sslkeydir/server.key | grep RSA`" != . ]; then
+ algo=RSA
+ else
+ algo=DSA
+ fi
+ echo "${T_MD}RESULT: Server Certification Files${T_ME}"
+ echo ""
+ echo "o ${T_MD}$confdir/ssl.key/server.key${T_ME}"
+ echo " The PEM-encoded $algo private key file which you configure"
+ echo " with the 'SSLCertificateKeyFile' directive (automatically done"
+ echo " when you install via APACI). ${T_MD}KEEP THIS FILE PRIVATE!${T_ME}"
+ echo ""
+ echo "o ${T_MD}$confdir/ssl.crt/server.crt${T_ME}"
+ echo " The PEM-encoded X.509 certificate file which you configure"
+ echo " with the 'SSLCertificateFile' directive (automatically done"
+ echo " when you install via APACI)."
+ echo ""
+ echo "Congratulations that you establish your server with real certificates."
+ echo ""
+ ;;
+
+esac
+
+##EOF##
diff --git a/www/apache24/options.mk b/www/apache24/options.mk
new file mode 100644
index 00000000000..ab6af53cd60
--- /dev/null
+++ b/www/apache24/options.mk
@@ -0,0 +1,59 @@
+# $NetBSD: options.mk,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $
+
+PKG_OPTIONS_VAR= PKG_OPTIONS.apache
+PKG_OPTIONS_REQUIRED_GROUPS= mpm
+PKG_OPTIONS_GROUP.mpm= apache-mpm-event apache-mpm-prefork apache-mpm-worker
+PKG_SUPPORTED_OPTIONS= suexec
+PKG_SUGGESTED_OPTIONS= apache-mpm-prefork
+
+.include "../../mk/bsd.options.mk"
+
+# Set the "Multi-Processing Model" used by Apache to handle requests.
+# Valid values are:
+# event multi-threaded based in worker, designed
+# to allow more requests to be served
+# simultaneously by passing off some processing
+# work to supporting threads.
+# BEWARE: does not work with SSL or input filters.
+# prefork non-threaded, pre-forking web server
+# worker hybrid multi-threaded multi-process web server
+#
+PLIST_VARS+= worker
+.if !empty(PKG_OPTIONS:Mapache-mpm-event)
+CONFIGURE_ARGS+= --with-mpm=event
+PLIST.worker= yes
+.elif !empty(PKG_OPTIONS:Mapache-mpm-worker)
+CONFIGURE_ARGS+= --with-mpm=worker
+PLIST.worker= yes
+.else
+CONFIGURE_ARGS+= --with-mpm=prefork
+.endif
+
+BUILD_DEFS+= APACHE_MODULES
+
+PLIST_VARS+= suexec
+.if !empty(PKG_OPTIONS:Msuexec)
+BUILD_DEFS+= APACHE_SUEXEC_PATH
+BUILD_DEFS+= APACHE_SUEXEC_DOCROOT APACHE_SUEXEC_LOGFILE
+
+APACHE_SUEXEC_DOCROOT?= ${PREFIX}/share/httpd/htdocs
+APACHE_SUEXEC_PATH= /bin:/usr/bin:${PREFIX}/bin:/usr/local/bin
+APACHE_SUEXEC_LOGFILE?= ${VARBASE}/log/httpd/suexec.log
+APACHE_SUEXEC_CONFIGURE_ARGS+= \
+ --with-suexec-bin=${PREFIX}/sbin/suexec \
+ --with-suexec-caller=${APACHE_USER} \
+ --with-suexec-safepath='${APACHE_SUEXEC_PATH:Q}' \
+ --with-suexec-docroot=${APACHE_SUEXEC_DOCROOT:Q} \
+ --with-suexec-logfile=${APACHE_SUEXEC_LOGFILE}
+
+. if !empty(PKG_OPTIONS:Mapache-shared-modules)
+CONFIGURE_ARGS+= --enable-modules="all suexec"
+. else
+APACHE_MODULES+= suexec
+. endif
+CONFIGURE_ARGS+= ${APACHE_SUEXEC_CONFIGURE_ARGS:M--with-suexec-*}
+BUILD_DEFS+= APACHE_SUEXEC_CONFIGURE_ARGS
+BUILD_TARGET= all suexec
+PLIST.suexec= yes
+SPECIAL_PERMS+= sbin/suexec ${REAL_ROOT_USER} ${APACHE_GROUP} 4510
+.endif
diff --git a/www/apache24/patches/patch-aa b/www/apache24/patches/patch-aa
new file mode 100644
index 00000000000..661187eaa04
--- /dev/null
+++ b/www/apache24/patches/patch-aa
@@ -0,0 +1,146 @@
+$NetBSD: patch-aa,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $
+
+--- Makefile.in.orig 2012-01-22 23:30:14.000000000 +0000
++++ Makefile.in
+@@ -4,7 +4,7 @@ CLEAN_SUBDIRS = test
+
+ PROGRAM_NAME = $(progname)
+ PROGRAM_SOURCES = modules.c
+-PROGRAM_LDADD = buildmark.o $(HTTPD_LDFLAGS) $(PROGRAM_DEPENDENCIES) $(PCRE_LIBS) $(EXTRA_LIBS) $(AP_LIBS) $(LIBS)
++PROGRAM_LDADD = buildmark.o $(HTTPD_LDFLAGS) $(DL_LDFLAGS) $(PROGRAM_DEPENDENCIES) $(PCRE_LIBS) $(EXTRA_LIBS) $(AP_LIBS) $(LIBS) $(DL_LIBS)
+ PROGRAM_PRELINK = $(COMPILE) -c $(top_srcdir)/server/buildmark.c
+ PROGRAM_DEPENDENCIES = \
+ server/libmain.la \
+@@ -14,7 +14,7 @@ PROGRAM_DEPENDENCIES = \
+
+ sbin_PROGRAMS = $(PROGRAM_NAME)
+ TARGETS = $(sbin_PROGRAMS) $(shared_build) $(other_targets)
+-INSTALL_TARGETS = install-conf install-htdocs install-error install-icons \
++INSTALL_TARGETS = install-htdocs install-error install-icons \
+ install-other install-cgi install-include install-suexec install-build \
+ install-man
+
+@@ -31,8 +31,8 @@ include $(top_srcdir)/build/program.mk
+
+ install-conf:
+ @echo Installing configuration files
+- @$(MKINSTALLDIRS) $(DESTDIR)$(sysconfdir) $(DESTDIR)$(sysconfdir)/extra
+- @$(MKINSTALLDIRS) $(DESTDIR)$(sysconfdir)/original/extra
++ @$(MKINSTALLDIRS) $(DESTDIR)$(sysconfdir)
++ @$(MKINSTALLDIRS) $(DESTDIR)$(sysconfdir)/extra
+ @cd $(top_srcdir)/docs/conf; \
+ for i in mime.types magic; do \
+ if test ! -f $(DESTDIR)$(sysconfdir)/$$i; then \
+@@ -78,7 +78,8 @@ install-conf:
+ -e 's#@@SSLPort@@#$(SSLPORT)#g' \
+ < $$i; \
+ fi \
+- ) > $(DESTDIR)$(sysconfdir)/original/$$i; \
++ ) > $(DESTDIR)$(sysconfdir)/$$i; \
++ if false; then \
+ chmod 0644 $(DESTDIR)$(sysconfdir)/original/$$i; \
+ file=$$i; \
+ if [ "$$i" = "httpd.conf" ]; then \
+@@ -88,13 +89,16 @@ install-conf:
+ $(INSTALL_DATA) $(DESTDIR)$(sysconfdir)/original/$$i $(DESTDIR)$(sysconfdir)/$$file; \
+ fi; \
+ fi; \
++ fi; \
+ done ; \
+ done ; \
+ if test -f "$(builddir)/envvars-std"; then \
+ cp -p envvars-std $(DESTDIR)$(sbindir); \
++ if false; then \
+ if test ! -f $(DESTDIR)$(sbindir)/envvars; then \
+ cp -p envvars-std $(DESTDIR)$(sbindir)/envvars ; \
+ fi ; \
++ fi ; \
+ fi
+
+ # Create a sanitized config_vars.mk
+@@ -112,7 +116,7 @@ install-build: build/config_vars.out
+ $(top_srcdir)/build/instdso.sh; do \
+ $(INSTALL_PROGRAM) $$f $(DESTDIR)$(installbuilddir); \
+ done
+- @$(INSTALL_DATA) build/config_vars.out $(DESTDIR)$(installbuilddir)/config_vars.mk
++ #@$(INSTALL_DATA) build/config_vars.out $(DESTDIR)$(installbuilddir)/config_vars.mk
+ @rm build/config_vars.out
+
+ htdocs-srcdir = $(top_srcdir)/docs/docroot
+@@ -137,48 +141,28 @@ dox:
+ doxygen $(top_srcdir)/docs/doxygen.conf
+
+ install-htdocs:
+- -@if [ -d $(DESTDIR)$(htdocsdir) ]; then \
+- echo "[PRESERVING EXISTING HTDOCS SUBDIR: $(DESTDIR)$(htdocsdir)]"; \
+- else \
+ echo Installing HTML documents ; \
+- $(MKINSTALLDIRS) $(DESTDIR)$(htdocsdir) ; \
+- if test -d $(htdocs-srcdir) && test "x$(RSYNC)" != "x" && test -x $(RSYNC) ; then \
+- $(RSYNC) --exclude .svn -rlpt --numeric-ids $(htdocs-srcdir)/ $(DESTDIR)$(htdocsdir)/; \
+- else \
+- test -d $(htdocs-srcdir) && (cd $(htdocs-srcdir) && cp -rp * $(DESTDIR)$(htdocsdir)) ; \
+- cd $(DESTDIR)$(htdocsdir) && find . -name ".svn" -type d -print | xargs rm -rf 2>/dev/null || true; \
+- fi; \
+- fi
++ $(MKINSTALLDIRS) $(DESTDIR)$(htdocsdir) ; \
++ test -d $(htdocs-srcdir) && (cd $(htdocs-srcdir) && \
++ @PAX@ -rwppm . $(DESTDIR)$(htdocsdir))
+
+ install-error:
+- -@if [ -d $(DESTDIR)$(errordir) ]; then \
+- echo "[PRESERVING EXISTING ERROR SUBDIR: $(DESTDIR)$(errordir)]"; \
+- else \
+ echo Installing error documents ; \
+ $(MKINSTALLDIRS) $(DESTDIR)$(errordir) ; \
+- cd $(top_srcdir)/docs/error && cp -rp * $(DESTDIR)$(errordir) ; \
+- test "x$(errordir)" != "x" && cd $(DESTDIR)$(errordir) && find . -name ".svn" -type d -print | xargs rm -rf 2>/dev/null || true; \
+- fi
++ cd $(top_srcdir)/docs/error && \
++ @PAX@ -rwppm . $(DESTDIR)$(errordir)
+
+ install-icons:
+- -@if [ -d $(DESTDIR)$(iconsdir) ]; then \
+- echo "[PRESERVING EXISTING ICONS SUBDIR: $(DESTDIR)$(iconsdir)]"; \
+- else \
+ echo Installing icons ; \
+ $(MKINSTALLDIRS) $(DESTDIR)$(iconsdir) ; \
+- cd $(top_srcdir)/docs/icons && cp -rp * $(DESTDIR)$(iconsdir) ; \
+- test "x$(iconsdir)" != "x" && cd $(DESTDIR)$(iconsdir) && find . -name ".svn" -type d -print | xargs rm -rf 2>/dev/null || true; \
+- fi
++ cd $(top_srcdir)/docs/icons && \
++ @PAX@ -rwppm . $(DESTDIR)$(iconsdir)
+
+ install-cgi:
+- -@if [ -d $(DESTDIR)$(cgidir) ];then \
+- echo "[PRESERVING EXISTING CGI SUBDIR: $(DESTDIR)$(cgidir)]"; \
+- else \
+ echo Installing CGIs ; \
+ $(MKINSTALLDIRS) $(DESTDIR)$(cgidir) ; \
+- cd $(top_srcdir)/docs/cgi-examples && cp -rp * $(DESTDIR)$(cgidir) ; \
+- test "x$(cgidir)" != "x" && cd $(DESTDIR)$(cgidir) && find . -name ".svn" -type d -print | xargs rm -rf 2>/dev/null || true; \
+- fi
++ cd $(top_srcdir)/docs/cgi-examples && \
++ @PAX@ -rwppm . $(DESTDIR)$(cgidir)
+
+ install-other:
+ @test -d $(DESTDIR)$(logfiledir) || $(MKINSTALLDIRS) $(DESTDIR)$(logfiledir)
+@@ -227,14 +211,10 @@ install-man:
+ @test -d $(DESTDIR)$(mandir)/man1 || $(MKINSTALLDIRS) $(DESTDIR)$(mandir)/man1
+ @test -d $(DESTDIR)$(mandir)/man8 || $(MKINSTALLDIRS) $(DESTDIR)$(mandir)/man8
+ @test -d $(DESTDIR)$(manualdir) || $(MKINSTALLDIRS) $(DESTDIR)$(manualdir)
+- @cp -p $(top_srcdir)/docs/man/*.1 $(DESTDIR)$(mandir)/man1
+- @cp -p $(top_srcdir)/docs/man/*.8 $(DESTDIR)$(mandir)/man8
+- @if test "x$(RSYNC)" != "x" && test -x $(RSYNC) ; then \
+- $(RSYNC) --exclude .svn -rlpt --numeric-ids $(top_srcdir)/docs/manual/ $(DESTDIR)$(manualdir)/; \
+- else \
+- cd $(top_srcdir)/docs/manual && cp -rp * $(DESTDIR)$(manualdir); \
+- cd $(DESTDIR)$(manualdir) && find . -name ".svn" -type d -print | xargs rm -rf 2>/dev/null || true; \
+- fi
++ $(BSD_INSTALL_MAN) $(top_srcdir)/docs/man/*.1 $(DESTDIR)$(mandir)/man1
++ $(BSD_INSTALL_MAN) $(top_srcdir)/docs/man/*.8 $(DESTDIR)$(mandir)/man8
++ cd $(top_srcdir)/docs/manual && \
++ @PAX@ -rwppm . $(DESTDIR)$(manualdir)
+
+ install-suexec:
+ @if test -f $(builddir)/support/suexec; then \
diff --git a/www/apache24/patches/patch-ab b/www/apache24/patches/patch-ab
new file mode 100644
index 00000000000..63967838faf
--- /dev/null
+++ b/www/apache24/patches/patch-ab
@@ -0,0 +1,15 @@
+$NetBSD: patch-ab,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $
+
+PR#27567
+
+--- server/mpm_common.c.orig 2011-12-05 00:08:01.000000000 +0000
++++ server/mpm_common.c
+@@ -256,7 +256,7 @@ AP_DECLARE(gid_t) ap_gname2id(const char
+ #ifndef HAVE_INITGROUPS
+ int initgroups(const char *name, gid_t basegid)
+ {
+-#if defined(_OSD_POSIX) || defined(OS2) || defined(WIN32) || defined(NETWARE)
++#if defined(_OSD_POSIX) || defined(OS2) || defined(WIN32) || defined(NETWARE) || defined(__INTERIX)
+ return 0;
+ #else
+ gid_t groups[NGROUPS_MAX];
diff --git a/www/apache24/patches/patch-ac b/www/apache24/patches/patch-ac
new file mode 100644
index 00000000000..c3b0dc55430
--- /dev/null
+++ b/www/apache24/patches/patch-ac
@@ -0,0 +1,12 @@
+$NetBSD: patch-ac,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $
+
+--- configure.orig 2012-02-13 13:41:00.000000000 +0000
++++ configure
+@@ -31766,7 +31766,6 @@ cat >>confdefs.h <<_ACEOF
+ _ACEOF
+
+
+-perlbin=`$ac_aux_dir/PrintPath perl`
+ if test "x$perlbin" = "x"; then
+ perlbin="/replace/with/path/to/perl/interpreter"
+ fi
diff --git a/www/apache24/patches/patch-ad b/www/apache24/patches/patch-ad
new file mode 100644
index 00000000000..d454f06266b
--- /dev/null
+++ b/www/apache24/patches/patch-ad
@@ -0,0 +1,31 @@
+$NetBSD: patch-ad,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $
+
+--- config.layout.orig 2012-02-02 12:05:28.000000000 +0000
++++ config.layout
+@@ -347,3 +347,26 @@
+ proxycachedir: ${localstatedir}/proxy
+ </Layout>
+
++# NetBSD (pkgsrc) layout
++<Layout NetBSD>
++ prefix: @PREFIX@
++ exec_prefix: ${prefix}
++ bindir: ${exec_prefix}/bin
++ sbindir: ${exec_prefix}/sbin
++ libexecdir: ${exec_prefix}/lib/httpd
++ mandir: ${prefix}/man
++ sysconfdir: @SYSCONFDIR@
++ datadir: ${prefix}/share/httpd
++ installbuilddir: ${datadir}/build
++ errordir: ${datadir}/error
++ iconsdir: ${datadir}/icons
++ htdocsdir: ${datadir}/htdocs
++ manualdir: ${datadir}/manual
++ cgidir: ${exec_prefix}/libexec/cgi-bin
++ includedir: ${prefix}/include/httpd
++ localstatedir: @VARBASE@
++ runtimedir: ${localstatedir}/run
++ logfiledir: ${localstatedir}/log/httpd
++ proxycachedir: ${localstatedir}/db/httpd/proxy
++</Layout>
++
diff --git a/www/apache24/patches/patch-ae b/www/apache24/patches/patch-ae
new file mode 100644
index 00000000000..6503a95b32b
--- /dev/null
+++ b/www/apache24/patches/patch-ae
@@ -0,0 +1,59 @@
+$NetBSD: patch-ae,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $
+
+--- docs/conf/httpd.conf.in.orig 2012-02-06 16:55:22.000000000 +0000
++++ docs/conf/httpd.conf.in
+@@ -361,42 +361,42 @@ LogLevel warn
+ # necessary.
+
+ # Server-pool management (MPM specific)
+-#Include @rel_sysconfdir@/extra/httpd-mpm.conf
++#Include @rel_sysconfdir@/httpd-mpm.conf
+
+ # Multi-language error messages
+-#Include @rel_sysconfdir@/extra/httpd-multilang-errordoc.conf
++#Include @rel_sysconfdir@/httpd-multilang-errordoc.conf
+
+ # Fancy directory listings
+-#Include @rel_sysconfdir@/extra/httpd-autoindex.conf
++#Include @rel_sysconfdir@/httpd-autoindex.conf
+
+ # Language settings
+-#Include @rel_sysconfdir@/extra/httpd-languages.conf
++#Include @rel_sysconfdir@/httpd-languages.conf
+
+ # User home directories
+-#Include @rel_sysconfdir@/extra/httpd-userdir.conf
++#Include @rel_sysconfdir@/httpd-userdir.conf
+
+ # Real-time info on requests and configuration
+-#Include @rel_sysconfdir@/extra/httpd-info.conf
++#Include @rel_sysconfdir@/httpd-info.conf
+
+ # Virtual hosts
+-#Include @rel_sysconfdir@/extra/httpd-vhosts.conf
++#Include @rel_sysconfdir@/httpd-vhosts.conf
+
+ # Local access to the Apache HTTP Server Manual
+-#Include @rel_sysconfdir@/extra/httpd-manual.conf
++#Include @rel_sysconfdir@/httpd-manual.conf
+
+ # Distributed authoring and versioning (WebDAV)
+-#Include @rel_sysconfdir@/extra/httpd-dav.conf
++#Include @rel_sysconfdir@/httpd-dav.conf
+
+ # Various default settings
+-#Include @rel_sysconfdir@/extra/httpd-default.conf
++#Include @rel_sysconfdir@/httpd-default.conf
+
+ # Configure mod_proxy_html to understand HTML4/XHTML1
+ <IfModule proxy_html_module>
+-Include @rel_sysconfdir@/extra/proxy-html.conf
++Include @rel_sysconfdir@/proxy-html.conf
+ </IfModule>
+
+ # Secure (SSL/TLS) connections
+-#Include @rel_sysconfdir@/extra/httpd-ssl.conf
++#Include @rel_sysconfdir@/httpd-ssl.conf
+ #
+ # Note: The following must must be present to support
+ # starting without SSL on platforms with no /dev/random equivalent
diff --git a/www/apache24/patches/patch-ag b/www/apache24/patches/patch-ag
new file mode 100644
index 00000000000..3a2bd780c36
--- /dev/null
+++ b/www/apache24/patches/patch-ag
@@ -0,0 +1,16 @@
+$NetBSD: patch-ag,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $
+
+--- support/Makefile.in.orig 2011-12-20 14:57:46.000000000 +0000
++++ support/Makefile.in
+@@ -31,9 +31,11 @@ install:
+ done
+ @if test -f "$(builddir)/envvars-std"; then \
+ cp -p envvars-std $(DESTDIR)$(sbindir); \
++ if false; then \
+ if test ! -f $(DESTDIR)$(sbindir)/envvars; then \
+ cp -p envvars-std $(DESTDIR)$(sbindir)/envvars ; \
+ fi ; \
++ fi ; \
+ fi
+
+ htpasswd_OBJECTS = htpasswd.lo
diff --git a/www/apache24/patches/patch-ai b/www/apache24/patches/patch-ai
new file mode 100644
index 00000000000..4e10f4237f7
--- /dev/null
+++ b/www/apache24/patches/patch-ai
@@ -0,0 +1,19 @@
+$NetBSD: patch-ai,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $
+
+--- support/apxs.in.orig 2010-06-22 17:12:44.000000000 +0000
++++ support/apxs.in
+@@ -352,8 +352,12 @@ if ($apr_major_version < 2) {
+ }
+ }
+
+-my $libtool = `$apr_config --apr-libtool`;
+-chomp($libtool);
++my $libtool = $ENV{'APR_LIBTOOL'};
++unless ($libtool) {
++ $libtool = `@LOCALBASE@/bin/apr-1-config --installbuilddir`;
++ chomp($libtool);
++ $libtool = "$libtool/libtool";
++}
+
+ my $apr_includedir = `$apr_config --includes`;
+ chomp($apr_includedir);
diff --git a/www/apache24/patches/patch-al b/www/apache24/patches/patch-al
new file mode 100644
index 00000000000..4541e971d8a
--- /dev/null
+++ b/www/apache24/patches/patch-al
@@ -0,0 +1,31 @@
+$NetBSD: patch-al,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $
+
+--- include/httpd.h.orig 2012-02-04 10:04:59.000000000 +0000
++++ include/httpd.h
+@@ -126,7 +126,7 @@ extern "C" {
+ #if defined(OS2) || defined(WIN32)
+ #define DEFAULT_ERRORLOG "logs/error.log"
+ #else
+-#define DEFAULT_ERRORLOG "logs/error_log"
++#define DEFAULT_ERRORLOG DEFAULT_REL_LOGFILEDIR "/error.log"
+ #endif
+ #endif /* DEFAULT_ERRORLOG */
+
+@@ -142,7 +142,7 @@ extern "C" {
+
+ /** The name of the server config file */
+ #ifndef SERVER_CONFIG_FILE
+-#define SERVER_CONFIG_FILE "conf/httpd.conf"
++#define SERVER_CONFIG_FILE DEFAULT_REL_SYSCONFDIR "/httpd.conf"
+ #endif
+
+ /** The default path for CGI scripts if none is currently set */
+@@ -220,7 +220,7 @@ extern "C" {
+
+ /** The name of the MIME types file */
+ #ifndef AP_TYPES_CONFIG_FILE
+-#define AP_TYPES_CONFIG_FILE "conf/mime.types"
++#define AP_TYPES_CONFIG_FILE DEFAULT_REL_SYSCONFDIR "/mime.types"
+ #endif
+
+ /*
diff --git a/www/apache24/patches/patch-am b/www/apache24/patches/patch-am
new file mode 100644
index 00000000000..978df9062a8
--- /dev/null
+++ b/www/apache24/patches/patch-am
@@ -0,0 +1,13 @@
+$NetBSD: patch-am,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $
+
+--- include/scoreboard.h.orig 2012-02-01 13:36:37.000000000 +0000
++++ include/scoreboard.h
+@@ -40,7 +40,7 @@ extern "C" {
+
+ /* Scoreboard file, if there is one */
+ #ifndef DEFAULT_SCOREBOARD
+-#define DEFAULT_SCOREBOARD "logs/apache_runtime_status"
++#define DEFAULT_SCOREBOARD DEFAULT_REL_RUNTIMEDIR "logs/apache_runtime_status"
+ #endif
+
+ /* Scoreboard info on a process is, for now, kept very brief ---
diff --git a/www/apache24/patches/patch-aw b/www/apache24/patches/patch-aw
new file mode 100644
index 00000000000..3b50c441a3b
--- /dev/null
+++ b/www/apache24/patches/patch-aw
@@ -0,0 +1,15 @@
+$NetBSD: patch-aw,v 1.1.1.1 2012/04/13 18:50:49 ryoon Exp $
+
+--- modules/metadata/mod_mime_magic.c.orig 2011-12-05 00:08:01.000000000 +0000
++++ modules/metadata/mod_mime_magic.c
+@@ -106,6 +106,10 @@
+ #include <utime.h>
+ #endif
+
++#ifdef __QNX__ /* naming conflict with <malloc.h> */
++#define mcheck mod_mime_magic_mcheck
++#endif
++
+ /*
+ * data structures and related constants
+ */