You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by fu...@apache.org on 2019/07/08 15:19:05 UTC

svn commit: r1862754 [9/9] - in /subversion/branches/swig-py3: ./ build/ac-macros/ build/generator/ doc/ doc/programmer/ notes/ notes/shelving/ subversion/bindings/cxx/ subversion/bindings/cxxhl/ subversion/bindings/javahl/native/ subversion/bindings/j...

Modified: subversion/branches/swig-py3/tools/dev/build-svn-deps-win.pl
URL: http://svn.apache.org/viewvc/subversion/branches/swig-py3/tools/dev/build-svn-deps-win.pl?rev=1862754&r1=1862753&r2=1862754&view=diff
==============================================================================
--- subversion/branches/swig-py3/tools/dev/build-svn-deps-win.pl (original)
+++ subversion/branches/swig-py3/tools/dev/build-svn-deps-win.pl Mon Jul  8 15:19:03 2019
@@ -92,7 +92,7 @@ our $SERF_VER = '1.3.6';
 our $NEON_VER = '0.29.6';
 
 # Sources for files to download
-our $AWK_URL = 'http://www.cs.princeton.edu/~bwk/btl.mirror/awk95.exe';
+our $AWK_URL = 'https://www.cs.princeton.edu/~bwk/btl.mirror/awk95.exe';
 our $HTTPD_URL;
 our $APR_URL;
 our $APU_URL;
@@ -168,17 +168,17 @@ sub set_svn_ver_defaults {
 # Any variables with defaults that reference other values
 # should be set here.  This defers setting of the default until runtime in these cases.
 sub set_defaults {
-  set_default(\$HTTPD_URL, "http://archive.apache.org/dist/httpd/httpd-$HTTPD_VER.tar.bz2");
-  set_default(\$APR_URL, "http://archive.apache.org/dist/apr/apr-$APR_VER.tar.bz2");
-  set_default(\$APU_URL, "http://archive.apache.org/dist/apr/apr-util-$APU_VER.tar.bz2");
-  set_default(\$API_URL, "http://archive.apache.org/dist/apr/apr-iconv-$API_VER.tar.bz2");
-  set_default(\$ZLIB_URL, "http://sourceforge.net/projects/libpng/files/zlib/$ZLIB_VER/zlib" . remove_dots($ZLIB_VER) . '.zip');
-  set_default(\$OPENSSL_URL, "http://www.openssl.org/source/openssl-$OPENSSL_VER.tar.gz");
+  set_default(\$HTTPD_URL, "https://archive.apache.org/dist/httpd/httpd-$HTTPD_VER.tar.bz2");
+  set_default(\$APR_URL, "https://archive.apache.org/dist/apr/apr-$APR_VER.tar.bz2");
+  set_default(\$APU_URL, "https://archive.apache.org/dist/apr/apr-util-$APU_VER.tar.bz2");
+  set_default(\$API_URL, "https://archive.apache.org/dist/apr/apr-iconv-$API_VER.tar.bz2");
+  set_default(\$ZLIB_URL, "https://sourceforge.net/projects/libpng/files/zlib/$ZLIB_VER/zlib" . remove_dots($ZLIB_VER) . '.zip');
+  set_default(\$OPENSSL_URL, "https://www.openssl.org/source/openssl-$OPENSSL_VER.tar.gz");
   set_default(\$PCRE_URL, "ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-$PCRE_VER.zip");
-  set_default(\$BDB_URL, "http://download.oracle.com/berkeley-db/db-5.3.21.zip");
-  set_default(\$SQLITE_URL, "http://www.sqlite.org/2013/sqlite-amalgamation-$SQLITE_VER.zip");
+  set_default(\$BDB_URL, "https://download.oracle.com/berkeley-db/db-5.3.21.zip");
+  set_default(\$SQLITE_URL, "https://www.sqlite.org/2013/sqlite-amalgamation-$SQLITE_VER.zip");
   set_default(\$SERF_URL, "https://archive.apache.org/dist/serf/serf-$SERF_VER.zip");
-  set_default(\$NEON_URL, "http://www.webdav.org/neon/neon-$NEON_VER.tar.gz");
+  set_default(\$NEON_URL, "https://www.webdav.org/neon/neon-$NEON_VER.tar.gz");
   set_default(\$INSTDIR, $TOPDIR);
   set_default(\$BLDDIR, "$TOPDIR\\build");
   set_default(\$SRCDIR, "$TOPDIR\\sources");

Modified: subversion/branches/swig-py3/tools/dev/unix-build/Makefile.svn
URL: http://svn.apache.org/viewvc/subversion/branches/swig-py3/tools/dev/unix-build/Makefile.svn?rev=1862754&r1=1862753&r2=1862754&view=diff
==============================================================================
--- subversion/branches/swig-py3/tools/dev/unix-build/Makefile.svn (original)
+++ subversion/branches/swig-py3/tools/dev/unix-build/Makefile.svn Mon Jul  8 15:19:03 2019
@@ -101,7 +101,8 @@ APR_VER		= 1.5.2
 APR_ICONV_VER	= 1.2.1
 GNU_ICONV_VER	= 1.15
 APR_UTIL_VER	= 1.5.4
-HTTPD_VER	= 2.2.32
+PCRE_VER	= 8.41
+HTTPD_VER	= 2.4.37
 NEON_VER	= 0.30.2
 SERF_VER	= 1.3.9
 SERF_OLD_VER	= 0.3.1
@@ -121,6 +122,7 @@ GNU_ICONV_DIST	= libiconv-$(GNU_ICONV_VE
 NEON_DIST	= neon-$(NEON_VER).tar.gz
 SQLITE_DIST	= sqlite-autoconf-$(SQLITE_VER).tar.gz
 CYRUS_SASL_DIST	= cyrus-sasl-$(CYRUS_SASL_VER).tar.gz
+PCRE_DIST	= pcre-$(PCRE_VER).tar.gz
 HTTPD_DIST	= httpd-$(HTTPD_VER).tar.gz
 LIBMAGIC_DIST	= file-$(LIBMAGIC_VER).tar.gz
 RUBY_DIST	= ruby-$(RUBY_VER).tar.gz
@@ -133,7 +135,8 @@ LZ4_DIST	= lz4-$(LZ4_VER).tar.gz
 SHA256_${BDB_DIST} = f14fd96dd38915a1d63dcb94a63fbb8092334ceba6b5060760427096f631263e
 SHA256_${APR_ICONV_DIST} = 19381959d50c4a5f3b9c84d594a5f9ffb3809786919b3058281f4c87e1f4b245
 SHA256_${GNU_ICONV_DIST} = ccf536620a45458d26ba83887a983b96827001e92a13847b45e4925cc8913178
-SHA256_${HTTPD_DIST} = b6e1528779f99c301d6438d89ae892a311619b43a39f16297f9eabd4a8d16cb8
+SHA256_${PCRE_DIST} = 244838e1f1d14f7e2fa7681b857b3a8566b74215f28133f14a8f5e59241b682c
+SHA256_${HTTPD_DIST} = aa97a834a32d51974be8d8a013b561e28d327387cb1da2c3c2762acd0146aabd
 SHA256_${NEON_DIST} = db0bd8cdec329b48f53a6f00199c92d5ba40b0f015b153718d1b15d3d967fbca
 SHA256_${CYRUS_SASL_DIST} = 418c16e6240a4f9b637cbe3d62937b9675627bad27c622191d47de8686fe24fe
 SHA256_${SQLITE_DIST} = 65cc0c3e9366f50c0679c5ccd31432cea894bc4a3e8947dabab88c8693263615
@@ -161,6 +164,7 @@ endef
 DISTFILES	= $(DISTDIR)/$(NEON_DIST) \
 		$(DISTDIR)/$(SERF_DIST) \
 		$(DISTDIR)/$(SQLITE_DIST) \
+		$(DISTDIR)/$(PCRE_DIST) \
 		$(DISTDIR)/$(HTTPD_DIST) \
 		$(DISTDIR)/$(APR_ICONV_DIST) \
 		$(DISTDIR)/$(GNU_ICONV_DIST) \
@@ -180,6 +184,7 @@ APR_URL		= https://svn.apache.org/repos/
 APR_ICONV_URL	= https://archive.apache.org/dist/apr/$(APR_ICONV_DIST)
 GNU_ICONV_URL	= https://ftp.gnu.org/pub/gnu/libiconv/$(GNU_ICONV_DIST)
 APR_UTIL_URL	= https://svn.apache.org/repos/asf/apr/apr-util
+PCRE_URL	= https://ftp.pcre.org/pub/pcre/$(PCRE_DIST)
 HTTPD_URL	= https://archive.apache.org/dist/httpd/$(HTTPD_DIST)
 #NEON_URL	= http://webdav.org/neon/$(NEON_DIST)
 NEON_URL	= http://ftp.openbsd.org/pub/OpenBSD/distfiles/$(NEON_DIST)
@@ -201,6 +206,7 @@ APR_SRCDIR	= $(SRCDIR)/apr-$(APR_VER)
 APR_ICONV_SRCDIR	= $(SRCDIR)/apr-iconv-$(APR_ICONV_VER)
 GNU_ICONV_SRCDIR	= $(SRCDIR)/libiconv-$(GNU_ICONV_VER)
 APR_UTIL_SRCDIR	= $(SRCDIR)/apr-util-$(APR_UTIL_VER)
+PCRE_SRCDIR	= $(SRCDIR)/pcre-$(PCRE_VER)
 HTTPD_SRCDIR	= $(SRCDIR)/httpd-$(HTTPD_VER)
 NEON_SRCDIR	= $(SRCDIR)/neon-$(NEON_VER)
 SERF_SRCDIR	= $(SRCDIR)/serf-$(SERF_VER)
@@ -220,6 +226,7 @@ APR_OBJDIR	= $(OBJDIR)/apr-$(APR_VER)
 APR_ICONV_OBJDIR	= $(OBJDIR)/apr-iconv-$(APR_ICONV_VER)
 GNU_ICONV_OBJDIR	= $(OBJDIR)/libiconv-$(GNU_ICONV_VER)
 APR_UTIL_OBJDIR	= $(OBJDIR)/apr-util-$(APR_UTIL_VER)
+PCRE_OBJDIR	= $(OBJDIR)/pcre-$(PCRE_VER)
 HTTPD_OBJDIR	= $(OBJDIR)/httpd-$(HTTPD_VER)
 NEON_OBJDIR	= $(OBJDIR)/neon-$(NEON_VER)
 SERF_OBJDIR	= $(OBJDIR)/serf-$(SERF_VER)
@@ -257,19 +264,19 @@ PKG_CONFIG_PATH=$(PREFIX)/apr/lib/pkgcon
 .PHONY: all reset clean nuke fetch
 
 all: dirs-create bdb-install apr-install iconv-install apr-util-install \
-	httpd-install neon-install serf-install serf-old-install \
+	pcre-install httpd-install neon-install serf-install serf-old-install \
 	sqlite-install cyrus-sasl-install libmagic-install \
 	ruby-install bz2-install python-install gettext-install \
 	lz4-install svn-install svn-bindings-install
 
 # Use these to start a build from the beginning.
 reset: dirs-reset bdb-reset apr-reset iconv-reset apr-util-reset \
-	httpd-reset neon-reset serf-reset serf-old-reset sqlite-reset \
-	cyrus-sasl-reset libmagic-reset ruby-reset python-reset \
+	pcre-reset httpd-reset neon-reset serf-reset serf-old-reset \
+	sqlite-reset cyrus-sasl-reset libmagic-reset ruby-reset python-reset \
 	bz2-reset gettext-reset lz4-reset svn-reset
 
 # Use to save disk space.
-clean: bdb-clean apr-clean iconv-clean apr-util-clean httpd-clean \
+clean: bdb-clean apr-clean iconv-clean apr-util-clean pcre-clean httpd-clean \
 	neon-clean serf-clean serf-old-clean sqlite-clean cyrus-sasl-clean \
 	libmagic-clean ruby-clean bz2-clean python-clean gettext-clean \
 	lz4-clean svn-clean
@@ -632,6 +639,53 @@ $(APR_UTIL_OBJDIR)/.installed: $(APR_UTI
 	touch $@
 
 #######################################################################
+# pcre
+#######################################################################
+
+pcre-retrieve:	$(PCRE_OBJDIR)/.retrieved
+pcre-configure:	$(PCRE_OBJDIR)/.configured
+pcre-compile:	$(PCRE_OBJDIR)/.compiled
+pcre-install:	$(PCRE_OBJDIR)/.installed
+pcre-reset:
+	$(foreach f, .retrieved .configured .compiled .installed, \
+		rm -f $(PCRE_OBJDIR)/$(f);)
+
+pcre-clean:
+	-(cd $(PCRE_OBJDIR) && env MAKEFLAGS= make clean)
+
+# fetch distfile for pcre
+$(DISTDIR)/$(PCRE_DIST):
+	cd $(DISTDIR) && $(FETCH_CMD) $(PCRE_URL)
+
+# retrieve pcre
+$(PCRE_OBJDIR)/.retrieved: $(DISTDIR)/$(PCRE_DIST)
+	$(call do_check_sha256,$(PCRE_DIST))
+	[ -d $(PCRE_OBJDIR) ] || mkdir -p $(PCRE_OBJDIR)
+	tar -C $(SRCDIR) -zxf $(DISTDIR)/$(PCRE_DIST)
+	touch $@
+
+# configure pcre
+$(PCRE_OBJDIR)/.configured: $(PCRE_OBJDIR)/.retrieved
+	cd $(PCRE_OBJDIR) \
+		&& env CFLAGS="-g $(PROFILE_CFLAGS)" \
+		CC=$(CC) CXX=$(CXX) \
+		GREP="`which grep`" \
+		PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) \
+		$(PCRE_SRCDIR)/configure \
+		--prefix=$(PREFIX)/pcre
+	touch $@
+
+# compile pcre
+$(PCRE_OBJDIR)/.compiled: $(PCRE_OBJDIR)/.configured
+	(cd $(PCRE_OBJDIR) && env MAKEFLAGS= make -j${MAKE_JOBS})
+	touch $@
+
+# install pcre
+$(PCRE_OBJDIR)/.installed: $(PCRE_OBJDIR)/.compiled
+	(cd $(PCRE_OBJDIR) && env MAKEFLAGS= make install)
+	touch $@
+
+#######################################################################
 # httpd
 #######################################################################
 
@@ -646,104 +700,50 @@ httpd-reset:
 
 httpd-clean:
 	-(cd $(HTTPD_OBJDIR) && env MAKEFLAGS= make clean)
-	-rm ${HTTPD_OBJDIR}/chil-engine.diff
-	-rm ${HTTPD_OBJDIR}/ssl-set-state.diff
-	-rm ${HTTPD_OBJDIR}/acinclude.diff
+	rm -f $(HTTPD_OBJDIR)/mod-proxy-no-threads-2.4.diff
+	rm -f $(HTTPD_OBJDIR)/ssl-init-proxy-certs.diff
 
 # fetch distfile for httpd
 $(DISTDIR)/$(HTTPD_DIST):
 	cd $(DISTDIR) && $(FETCH_CMD) $(HTTPD_URL)
 
-$(HTTPD_OBJDIR)/chil-engine.diff:
-	mkdir -p $(dir $@)
-	echo > $@.tmp '--- modules/ssl/ssl_engine_init.c.orig	Mon Apr 14 13:20:57 2014'
-	echo >>$@.tmp '+++ modules/ssl/ssl_engine_init.c	Mon Apr 14 13:21:22 2014'
-	echo >>$@.tmp '@@ -406,9 +406,11 @@ void ssl_init_Engine(server_rec *s, apr_pool_t *p)'
-	echo >>$@.tmp '             ssl_die();'
-	echo >>$@.tmp '         }'
-	echo >>$@.tmp ' '
-	echo >>$@.tmp '+#ifdef ENGINE_CTRL_CHIL_SET_FORKCHECK'
-	echo >>$@.tmp '         if (strEQ(mc->szCryptoDevice, "chil")) {'
-	echo >>$@.tmp '             ENGINE_ctrl(e, ENGINE_CTRL_CHIL_SET_FORKCHECK, 1, 0, 0);'
-	echo >>$@.tmp '         }'
-	echo >>$@.tmp '+#endif'
-	echo >>$@.tmp ' '
-	echo >>$@.tmp '         if (!ENGINE_set_default(e, ENGINE_METHOD_ALL)) {'
-	echo >>$@.tmp '             ap_log_error(APLOG_MARK, APLOG_ERR, 0, s,'
-	mv -f $@.tmp $@
-
-$(HTTPD_OBJDIR)/ssl-set-state.diff:
-	mkdir -p $(dir $@)
-	echo > $@.tmp '--- modules/ssl/ssl_toolkit_compat.h.orig	Fri Feb  3 10:47:33 2017'
-	echo >>$@.tmp '+++ modules/ssl/ssl_toolkit_compat.h	Fri Feb  3 10:52:17 2017'
-	echo >>$@.tmp '@@ -84,7 +84,9 @@'
-	echo >>$@.tmp ' #define SSL_get_state(ssl) SSL_state(ssl)'
-	echo >>$@.tmp ' #endif'
-	echo >>$@.tmp ' '
-	echo >>$@.tmp '+#ifndef HAVE_SSL_SET_STATE'
-	echo >>$@.tmp ' #define SSL_set_state(ssl,val) (ssl)->state = val'
-	echo >>$@.tmp '+#endif'
-	echo >>$@.tmp ' '
-	echo >>$@.tmp ' #define MODSSL_BIO_CB_ARG_TYPE const char'
-	echo >>$@.tmp ' #define MODSSL_CRYPTO_CB_ARG_TYPE const char'
-	mv -f $@.tmp $@
-
-$(HTTPD_OBJDIR)/acinclude.diff:
+$(HTTPD_OBJDIR)/ssl-init-proxy-certs.diff:
 	mkdir -p $(dir $@)
-	echo >$@.tmp '--- acinclude.m4.orig	Fri Feb  3 11:05:08 2017'
-	echo >>$@.tmp '+++ acinclude.m4	Fri Feb  3 11:05:15 2017'
-	echo >>$@.tmp '@@ -455,6 +455,7 @@'
-	echo >>$@.tmp '     AC_CHECK_HEADERS([openssl/engine.h])'
-	echo >>$@.tmp '     AC_CHECK_FUNCS([SSLeay_version SSL_CTX_new], [], [liberrors="yes"])'
-	echo >>$@.tmp '     AC_CHECK_FUNCS([ENGINE_init ENGINE_load_builtin_engines])'
-	echo >>$@.tmp '+    AC_CHECK_FUNCS(SSL_set_state)'
-	echo >>$@.tmp '   else'
-	echo >>$@.tmp '     AC_CHECK_FUNCS([SSLC_library_version SSL_CTX_new], [], [liberrors="yes"])'
-	echo >>$@.tmp '     AC_CHECK_FUNCS(SSL_set_state)'
+	echo > $@.tmp '--- modules/ssl/ssl_engine_init.c.orig	Sun Dec 16 13:34:14 2018'
+	echo >> $@.tmp '+++ modules/ssl/ssl_engine_init.c	Sun Dec 16 13:34:59 2018'
+	echo >> $@.tmp '@@ -1492,7 +1492,7 @@'
+	echo >> $@.tmp '     X509_STORE_CTX *sctx;'
+	echo >> $@.tmp '     X509_STORE *store = SSL_CTX_get_cert_store(mctx->ssl_ctx);'
+	echo >> $@.tmp ' '
+	echo >> $@.tmp '-#if OPENSSL_VERSION_NUMBER >= 0x1010100fL'
+	echo >> $@.tmp '+#if OPENSSL_VERSION_NUMBER >= 0x1010100fL && !defined(LIBRESSL_VERSION_NUMBER)'
+	echo >> $@.tmp '     /* For OpenSSL >=1.1.1, turn on client cert support which is'
+	echo >> $@.tmp '      * otherwise turned off by default (by design).'
+	echo >> $@.tmp '      * https://github.com/openssl/openssl/issues/6933 */'
 	mv -f $@.tmp $@
 
-# fix build without APR_HAS_THREADS (broken by r1750836)
-ifneq ($(THREADING),yes)
-HTTPD_REVERT_1750836_CMD = (cd $(HTTPD_SRCDIR)/modules/proxy && svn diff -c-1750836 https://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x/modules/proxy/proxy_util.c | patch)
-else
-HTTPD_REVERT_1750836_CMD = true
-endif
+$(HTTPD_OBJDIR)/mod-proxy-no-threads-2.4.diff:
+	cd $(HTTPD_OBJDIR) && $(FETCH_CMD) https://stsp.name/mod-proxy-no-threads-2.4.diff
 
 # retrieve httpd
 $(HTTPD_OBJDIR)/.retrieved: $(DISTDIR)/$(HTTPD_DIST) \
-	$(HTTPD_OBJDIR)/chil-engine.diff $(HTTPD_OBJDIR)/ssl-set-state.diff \
-	$(HTTPD_OBJDIR)/acinclude.diff
+	$(HTTPD_OBJDIR)/ssl-init-proxy-certs.diff \
+	$(HTTPD_OBJDIR)/mod-proxy-no-threads-2.4.diff
 	$(call do_check_sha256,$(HTTPD_DIST))
 	[ -d $(HTTPD_OBJDIR) ] || mkdir -p $(HTTPD_OBJDIR)
 	tar -C $(SRCDIR) -zxf $(DISTDIR)/$(HTTPD_DIST)
-	cd $(HTTPD_SRCDIR) && patch -p0 < $(HTTPD_OBJDIR)/chil-engine.diff
-	cd $(HTTPD_SRCDIR) && patch -p0 < $(HTTPD_OBJDIR)/ssl-set-state.diff
-	cd $(HTTPD_SRCDIR) && patch -p0 < $(HTTPD_OBJDIR)/acinclude.diff
-	cp $(HTTPD_SRCDIR)/modules/ssl/ssl_toolkit_compat.h \
-		$(HTTPD_SRCDIR)/modules/ssl/ssl_toolkit_compat.h.orig
-	sed '/^#define HAVE_SSL_RAND_EGD/d' \
-		< $(HTTPD_SRCDIR)/modules/ssl/ssl_toolkit_compat.h.orig \
-		> $(HTTPD_SRCDIR)/modules/ssl/ssl_toolkit_compat.h
-	cp $(HTTPD_SRCDIR)/modules/ssl/ssl_engine_vars.c \
-		$(HTTPD_SRCDIR)/modules/ssl/ssl_engine_vars.c.orig
-	sed 's/^\(#if (OPENSSL_VERSION_NUMBER >= 0x00908000)\)$$/\1 \&\& !defined(OPENSSL_NO_COMP)/' \
-		< $(HTTPD_SRCDIR)/modules/ssl/ssl_engine_vars.c.orig \
-		> $(HTTPD_SRCDIR)/modules/ssl/ssl_engine_vars.c
-	cp $(HTTPD_SRCDIR)/modules/ssl/ssl_engine_init.c \
-		$(HTTPD_SRCDIR)/modules/ssl/ssl_engine_init.c.orig
-	$(foreach f,  ssl_engine_init.c ssl_util_ssl.c ssl_util_ssl.h, \
-		cp $(HTTPD_SRCDIR)/modules/ssl/${f}  $(HTTPD_SRCDIR)/modules/ssl/${f}.orig; \
-		sed 's/SSL_CTX_use_certificate_chain/_SSL_CTX_use_certificate_chain/' \
-		< $(HTTPD_SRCDIR)/modules/ssl/${f}.orig \
-		> $(HTTPD_SRCDIR)/modules/ssl/${f};\
-	)
-	$(HTTPD_REVERT_1750836_CMD)
+	(cd $(HTTPD_SRCDIR) && patch -p0 < $(HTTPD_OBJDIR)/ssl-init-proxy-certs.diff)
+	(cd $(HTTPD_SRCDIR) && patch -p0 < $(HTTPD_OBJDIR)/mod-proxy-no-threads-2.4.diff)
+	(cd $(HTTPD_SRCDIR) && svn diff -cr1849590 https://svn.apache.org/repos/asf/httpd/httpd/trunk | patch -p0)
+	(cd $(HTTPD_SRCDIR) && svn diff -cr1663375 https://svn.apache.org/repos/asf/httpd/httpd/trunk | patch -p0)
 	touch $@
 
 # configure httpd
 $(HTTPD_OBJDIR)/.configured: $(HTTPD_OBJDIR)/.retrieved \
-	$(APR_UTIL_OBJDIR)/.installed
-	cd $(HTTPD_SRCDIR) && ./buildconf
+	$(APR_UTIL_OBJDIR)/.installed $(PCRE_OBJDIR)/.installed
+	cd $(HTTPD_SRCDIR) && ./buildconf \
+		--with-apr="$(PREFIX)/apr/bin/apr-1-config" \
+		--with-apr-util="$(PREFIX)/apr/bin/apu-1-config"
 	cd $(HTTPD_OBJDIR) \
 		&& env CFLAGS="-g $(PROFILE_CFLAGS) -DAPR_POOL_DEBUG" \
 		CC=$(CC) CXX=$(CXX) \
@@ -751,13 +751,16 @@ $(HTTPD_OBJDIR)/.configured: $(HTTPD_OBJ
 		PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) \
 		$(HTTPD_SRCDIR)/configure \
 		--prefix=$(PREFIX)/httpd \
-		--enable-maintainer-mode \
+		--with-mpm=prefork \
 		--enable-ssl \
 		--enable-dav \
 		--enable-proxy \
-		--with-mpm=prefork \
-		--with-apr="$(PREFIX)/apr" \
-		--with-apr-util="$(PREFIX)/apr"
+		--disable-md \
+		--disable-http2 \
+		--disable-brotli \
+		--with-apr="$(PREFIX)/apr/bin/apr-1-config" \
+		--with-apr-util="$(PREFIX)/apr/bin/apu-1-config" \
+		--with-pcre="$(PREFIX)/pcre"
 	touch $@
 
 # compile httpd
@@ -776,19 +779,28 @@ $(HTTPD_CONF):
 	echo > $@.tmp '# httpd config for use with mod_dav_svn'
 	echo >>$@.tmp 'ServerRoot "$(PREFIX)/httpd"'
 	echo >>$@.tmp 'Listen localhost:8080'
+	echo >>$@.tmp 'LoadModule unixd_module modules/mod_unixd.so'
+	echo >>$@.tmp 'LoadModule alias_module modules/mod_alias.so'
+	echo >>$@.tmp 'LoadModule access_compat_module modules/mod_access_compat.so'
+	echo >>$@.tmp 'LoadModule authn_core_module modules/mod_authn_core.so'
+	echo >>$@.tmp 'LoadModule authn_file_module modules/mod_authn_file.so'
+	echo >>$@.tmp 'LoadModule authz_core_module modules/mod_authz_core.so'
+	echo >>$@.tmp 'LoadModule authz_user_module modules/mod_authz_user.so'
+	echo >>$@.tmp 'LoadModule authz_groupfile_module modules/mod_authz_groupfile.so'
+	echo >>$@.tmp 'LoadModule auth_basic_module modules/mod_auth_basic.so'
+	echo >>$@.tmp 'LoadModule dav_module modules/mod_dav.so'
 	echo >>$@.tmp 'LoadModule dav_svn_module modules/svn-$(WC)/mod_dav_svn.so'
 	echo >>$@.tmp 'LoadModule authz_svn_module modules/svn-$(WC)/mod_authz_svn.so'
 	echo >>$@.tmp 'DocumentRoot "$(PREFIX)/httpd/htdocs"'
 	echo >>$@.tmp '<Directory />'
 	echo >>$@.tmp '    Options FollowSymLinks'
 	echo >>$@.tmp '    AllowOverride None'
-	echo >>$@.tmp '    Order deny,allow'
-	echo >>$@.tmp '    Deny from all'
+	echo >>$@.tmp '    Require all denied'
 	echo >>$@.tmp '</Directory>'
 	echo >>$@.tmp '<Location /repos>'
 	echo >>$@.tmp '    DAV svn'
 	echo >>$@.tmp '    SVNPath /tmp/svn-sandbox/repos'
-	echo >>$@.tmp '    Allow from localhost'
+	echo >>$@.tmp '    Require ip localhost'
 	echo >>$@.tmp '</Location>'
 	mv -f $@.tmp $@
 
@@ -1742,6 +1754,16 @@ $(HTTPD_CHECK_CONF): $(MOD_DONTDOTHAT_CO
 	echo > $@.tmp '# httpd config for make check'
 	echo >>$@.tmp 'ServerRoot "$(PREFIX)/httpd"'
 	echo >>$@.tmp 'Listen localhost:$(HTTPD_CHECK_PORT)'
+	echo >>$@.tmp 'LoadModule unixd_module modules/mod_unixd.so'
+	echo >>$@.tmp 'LoadModule alias_module modules/mod_alias.so'
+	echo >>$@.tmp 'LoadModule access_compat_module modules/mod_access_compat.so'
+	echo >>$@.tmp 'LoadModule authn_core_module modules/mod_authn_core.so'
+	echo >>$@.tmp 'LoadModule authn_file_module modules/mod_authn_file.so'
+	echo >>$@.tmp 'LoadModule authz_core_module modules/mod_authz_core.so'
+	echo >>$@.tmp 'LoadModule authz_user_module modules/mod_authz_user.so'
+	echo >>$@.tmp 'LoadModule authz_groupfile_module modules/mod_authz_groupfile.so'
+	echo >>$@.tmp 'LoadModule auth_basic_module modules/mod_auth_basic.so'
+	echo >>$@.tmp 'LoadModule dav_module modules/mod_dav.so'
 	echo >>$@.tmp 'LoadModule dav_svn_module $(MOD_DAV_SVN)'
 	echo >>$@.tmp 'LoadModule authz_svn_module $(MOD_AUTHZ_SVN)'
 	echo >>$@.tmp 'LoadModule dontdothat_module $(MOD_DONTDOTHAT)'
@@ -1750,8 +1772,7 @@ $(HTTPD_CHECK_CONF): $(MOD_DONTDOTHAT_CO
 	echo >>$@.tmp '<Directory />'
 	echo >>$@.tmp '    Options FollowSymLinks'
 	echo >>$@.tmp '    AllowOverride None'
-	echo >>$@.tmp '    Order deny,allow'
-	echo >>$@.tmp '    Allow from all'
+	echo >>$@.tmp '    Require all granted'
 	echo >>$@.tmp '</Directory>'
 	echo >>$@.tmp '<Location /svn-test-work/repositories>'
 	echo >>$@.tmp '    DAV svn'
@@ -1783,11 +1804,26 @@ ifeq ($(USE_AUTHZ_SHORT_CIRCUIT),yes)
 	echo >>$@.tmp '    SVNPathAuthz short_circuit'
 endif
 	echo >>$@.tmp '</Location>'
+	echo >>$@.tmp '<Location /svn-test-work/local_tmp/trojan>'
+	echo >>$@.tmp '    DAV svn'
+	echo >>$@.tmp '    SVNPath $(SVN_WC)/subversion/tests/cmdline/svn-test-work/local_tmp/trojan'
+	echo >>$@.tmp '    AuthzSVNAccessFile $(SVN_WC)/subversion/tests/cmdline/svn-test-work/authz'
+	echo >>$@.tmp '    AuthType Basic'
+	echo >>$@.tmp '    AuthName "Subversion Repository"'
+	echo >>$@.tmp '    AuthUserFile $(HTTPD_CHECK_USERS)'
+	echo >>$@.tmp '    Require valid-user'
+ifeq ($(USE_HTTPV1),yes)
+	echo >>$@.tmp '    SVNAdvertiseV2Protocol off'
+endif
+ifeq ($(USE_AUTHZ_SHORT_CIRCUIT),yes)
+	echo >>$@.tmp '    SVNPathAuthz short_circuit'
+endif
+	echo >>$@.tmp '</Location>'
 	echo >>$@.tmp '# This Location lets you access repositories dropped in /tmp/'
 	echo >>$@.tmp '<Location /svn>'
 	echo >>$@.tmp '    DAV svn'
 	echo >>$@.tmp '    SVNParentPath /tmp'
-	echo >>$@.tmp '    Allow from all'
+	echo >>$@.tmp '    Require all granted'
 	echo >>$@.tmp '    #AuthType Basic'
 	echo >>$@.tmp '    #AuthName "Subversion Repository"'
 	echo >>$@.tmp '    #AuthUserFile $(HTTPD_CHECK_USERS)'
@@ -1828,7 +1864,7 @@ endif
 	echo >>$@.tmp '    Require all granted'
 	echo >>$@.tmp '  </IfModule>'
 	echo >>$@.tmp '  <IfModule !mod_authz_core.c>'
-	echo >>$@.tmp '    Allow from all'
+	echo >>$@.tmp '    Requite all granted'
 	echo >>$@.tmp '  </IfModule>'
 ifeq ($(USE_AUTHZ_SHORT_CIRCUIT),yes)
 	echo >>$@.tmp '    SVNPathAuthz short_circuit'
@@ -1846,7 +1882,7 @@ endif
 	echo >>$@.tmp '  AuthName          "Subversion Repository"'
 	echo >>$@.tmp '  AuthUserFile      $(HTTPD_CHECK_USERS)'
 	echo >>$@.tmp '  Require           valid-user'
-	echo >>$@.tmp '  Satisfy Any'
+	echo >>$@.tmp '  Satisfy           Any'
 ifeq ($(USE_AUTHZ_SHORT_CIRCUIT),yes)
 	echo >>$@.tmp '    SVNPathAuthz short_circuit'
 endif
@@ -1936,7 +1972,7 @@ endif
 	echo >>$@.tmp '<IfModule mod_authz_core.c>'
 	echo >>$@.tmp '  <Location /authz-test-work/sallrany>'
 	echo >>$@.tmp '    DAV               svn'
-	echo >>$@.tmp '    SVNParentPath     $($SVN_WC)/subversion/tests/cmdline/svn-test-work/local_tmp'
+	echo >>$@.tmp '    SVNParentPath     $(SVN_WC)/subversion/tests/cmdline/svn-test-work/local_tmp'
 	echo >>$@.tmp '    AuthzSVNAccessFile $(SVN_WC)/subversion/tests/cmdline/svn-test-work/authz'
 ifeq ($(USE_HTTPV1),yes)
 	echo >>$@.tmp '    SVNAdvertiseV2Protocol off'
@@ -1979,7 +2015,7 @@ endif
 	echo >>$@.tmp '</IfModule>'
 	echo >>$@.tmp 'RedirectMatch permanent ^/svn-test-work/repositories/REDIRECT-PERM-(.*)$$ /svn-test-work/repositories/$$1'
 	echo >>$@.tmp 'RedirectMatch ^/svn-test-work/repositories/REDIRECT-TEMP-(.*)$$ /svn-test-work/repositories/$$1'
-	echo >>$@.tmp 'Include "conf/$(SVN_REL_WC)*-custom.conf"'
+	echo >>$@.tmp 'IncludeOptional "conf/$(SVN_REL_WC)*-custom.conf"'
 	echo >> $@.tmp '#SVNInMemoryCacheSize 0'
 	echo >> $@.tmp '#SVNCacheTextDeltas Off'
 	echo >> $@.tmp '#SVNCacheRevProps Off'
@@ -1990,6 +2026,16 @@ $(HTTPD_PROXY_CONF): $(HTTPD_CHECK_CONF)
 	echo > $@.tmp '# httpd config for a write-through proxy'
 	echo >>$@.tmp 'ServerRoot "$(PREFIX)/httpd"'
 	echo >>$@.tmp 'Listen localhost:$(HTTPD_PROXY_PORT)'
+	echo >>$@.tmp 'LoadModule unixd_module modules/mod_unixd.so'
+	echo >>$@.tmp 'LoadModule alias_module modules/mod_alias.so'
+	echo >>$@.tmp 'LoadModule access_compat_module modules/mod_access_compat.so'
+	echo >>$@.tmp 'LoadModule authn_core_module modules/mod_authn_core.so'
+	echo >>$@.tmp 'LoadModule authn_file_module modules/mod_authn_file.so'
+	echo >>$@.tmp 'LoadModule authz_core_module modules/mod_authz_core.so'
+	echo >>$@.tmp 'LoadModule authz_user_module modules/mod_authz_user.so'
+	echo >>$@.tmp 'LoadModule authz_groupfile_module modules/mod_authz_groupfile.so'
+	echo >>$@.tmp 'LoadModule auth_basic_module modules/mod_auth_basic.so'
+	echo >>$@.tmp 'LoadModule dav_module modules/mod_dav.so'
 	echo >>$@.tmp 'LoadModule dav_svn_module $(MOD_DAV_SVN)'
 	echo >>$@.tmp 'LoadModule authz_svn_module $(MOD_AUTHZ_SVN)'
 	echo >>$@.tmp 'LoadModule dontdothat_module $(MOD_DONTDOTHAT)'
@@ -1999,7 +2045,7 @@ $(HTTPD_PROXY_CONF): $(HTTPD_CHECK_CONF)
 	echo >>$@.tmp '    DAV svn'
 	echo >>$@.tmp '    SVNParentPath /tmp/svn-$(BRANCH)-proxy'
 	echo >>$@.tmp '    SVNMasterURI http://localhost:$(HTTPD_CHECK_PORT)/svn/'
-	echo >>$@.tmp '    Allow from all'
+	echo >>$@.tmp '    Requite all granted'
 	echo >>$@.tmp '    #AuthType Basic'
 	echo >>$@.tmp '    #AuthName "Subversion Repository"'
 	echo >>$@.tmp '    #AuthUserFile $(HTTPD_CHECK_USERS)'
@@ -2015,7 +2061,7 @@ endif
 	echo >>$@.tmp '<Location /svn-proxy-sync>'
 	echo >>$@.tmp 'DAV svn'
 	echo >>$@.tmp 'SVNParentPath /tmp/svn-$(BRANCH)-proxy'
-	echo >>$@.tmp 'Allow from all'
+	echo >>$@.tmp 'Require all granted'
 	echo >>$@.tmp '</Location>'
 	mv -f $@.tmp $@
 
@@ -2175,6 +2221,7 @@ svn-check-swig-rb:
 
 svn-check-javahl:
 	-if [ $(ENABLE_JAVA_BINDINGS) = yes ]; then \
+		ln -s libsvnjavahl-1.so.0.0 $(PREFIX)/svn-$(WC)/lib/libsvnjavahl-1.so; \
 		(cd $(svn_builddir) && \
 			env LD_LIBRARY_PATH=$(LD_LIBRARY_PATH) \
 			MAKEFLAGS= make $(JAVAHL_CHECK_TARGET) 2>&1) | \

Modified: subversion/branches/swig-py3/tools/dist/backport.pl
URL: http://svn.apache.org/viewvc/subversion/branches/swig-py3/tools/dist/backport.pl?rev=1862754&r1=1862753&r2=1862754&view=diff
==============================================================================
--- subversion/branches/swig-py3/tools/dist/backport.pl (original)
+++ subversion/branches/swig-py3/tools/dist/backport.pl Mon Jul  8 15:19:03 2019
@@ -1027,7 +1027,7 @@ sub handle_entry {
     # the "next PROMPT;" is; there's a "last;" at the end of the loop body.
     PROMPT: while (1) {
     say "";
-    say "\n>>> $entry{header_start}:";
+    say "\n\e\x5b32m>>> $entry{header_start}:\e\x5b0m";
     say join ", ", map { "r$_" } @{$entry{revisions}} if @{$entry{revisions}};
     say "$BRANCHES/$entry{branch}" if $entry{branch};
     say "--accept=$entry{accept}" if $entry{accept};
@@ -1196,7 +1196,7 @@ sub backport_main {
     given ($lines[0]) {
       # Section header
       when (/^[A-Z].*:$/i) {
-        say "\n\n=== $lines[0]" unless $YES;
+        say "\n\n\e\x5b33m\e\x5b1m=== $lines[0]\e\x5b0m" unless $YES;
         $in_approved = $lines[0] =~ /^Approved changes/;
       }
       # Comment

Modified: subversion/branches/swig-py3/tools/dist/create-minor-release-branch.py
URL: http://svn.apache.org/viewvc/subversion/branches/swig-py3/tools/dist/create-minor-release-branch.py?rev=1862754&r1=1862753&r2=1862754&view=diff
==============================================================================
--- subversion/branches/swig-py3/tools/dist/create-minor-release-branch.py (original)
+++ subversion/branches/swig-py3/tools/dist/create-minor-release-branch.py Mon Jul  8 15:19:03 2019
@@ -102,11 +102,20 @@ def edit_file(path, pattern, replacement
     assert new_text != old_text
     open(path, 'w').write(new_text)
 
-def prepend_file(path, text):
+def edit_changes_file(path, newtext):
+    """Insert NEWTEXT in the 'CHANGES' file found at PATH,
+       just before the first line that starts with 'Version '.
+    """
     print("Prepending to '%s'" % (path,))
-    print("  text='%s'" % (text,))
-    original = open(path, 'r').read()
-    open(path, 'w').write(text + original)
+    print("  text='%s'" % (newtext,))
+    lines = open(path, 'r').readlines()
+    for i, line in enumerate(lines):
+      if line.startswith('Version '):
+        with open(path, 'w') as newfile:
+          newfile.writelines(lines[:i])
+          newfile.write(newtext)
+          newfile.writelines(lines[i:])
+        break
 
 #----------------------------------------------------------------------
 def make_release_branch(ver, revnum):
@@ -158,7 +167,7 @@ def update_minor_ver_in_trunk(ver, revnu
     relpath = 'CHANGES'
     relpaths.append(relpath)
     # insert at beginning of CHANGES file
-    prepend_file(get_trunk_wc_path(relpath),
+    edit_changes_file(get_trunk_wc_path(relpath),
                  'Version ' + next_ver.base + '\n'
                  + '(?? ??? 20XX, from /branches/' + next_ver.branch + '.x)\n'
                  + get_tag_url(next_ver) + '\n'

Modified: subversion/branches/swig-py3/tools/dist/nightly.sh
URL: http://svn.apache.org/viewvc/subversion/branches/swig-py3/tools/dist/nightly.sh?rev=1862754&r1=1862753&r2=1862754&view=diff
==============================================================================
--- subversion/branches/swig-py3/tools/dist/nightly.sh (original)
+++ subversion/branches/swig-py3/tools/dist/nightly.sh Mon Jul  8 15:19:03 2019
@@ -21,7 +21,7 @@
 #
 set -e
 
-repo=http://svn.apache.org/repos/asf/subversion
+repo=https://svn.apache.org/repos/asf/subversion
 svn=svn
 olds=7
 

Modified: subversion/branches/swig-py3/tools/dist/release.py
URL: http://svn.apache.org/viewvc/subversion/branches/swig-py3/tools/dist/release.py?rev=1862754&r1=1862753&r2=1862754&view=diff
==============================================================================
--- subversion/branches/swig-py3/tools/dist/release.py (original)
+++ subversion/branches/swig-py3/tools/dist/release.py Mon Jul  8 15:19:03 2019
@@ -77,6 +77,14 @@ tool_versions = {
             'swig'     : ['3.0.12',
             '7cf9f447ae7ed1c51722efc45e7f14418d15d7a1e143ac9f09a668999f4fc94d'],
   },
+  '1.12' : {
+            'autoconf' : ['2.69',
+            '954bd69b391edc12d6a4a51a2dd1476543da5c6bbf05a95b59dc0dd6fd4c2969'],
+            'libtool'  : ['2.4.6',
+            'e3bd4d5d3d025a36c21dd6af7ea818a2afcd4dfc1ea5a17b39d7854bcd0c06e3'],
+            'swig'     : ['3.0.12',
+            '7cf9f447ae7ed1c51722efc45e7f14418d15d7a1e143ac9f09a668999f4fc94d'],
+  },
   '1.11' : {
             'autoconf' : ['2.69',
             '954bd69b391edc12d6a4a51a2dd1476543da5c6bbf05a95b59dc0dd6fd4c2969'],
@@ -113,9 +121,9 @@ tool_versions = {
 
 # The version that is our current recommended release
 # ### TODO: derive this from svn_version.h; see ../../build/getversion.py
-recommended_release = '1.11'
+recommended_release = '1.12'
 # For clean-dist, a whitelist of artifacts to keep, by version.
-supported_release_lines = frozenset({"1.9", "1.10", "1.11", "1.12"})
+supported_release_lines = frozenset({"1.9", "1.10", "1.12", "1.13"})
 
 # Some constants
 repos = 'https://svn.apache.org/repos/asf/subversion'

Modified: subversion/branches/swig-py3/tools/server-side/svnauthz.c
URL: http://svn.apache.org/viewvc/subversion/branches/swig-py3/tools/server-side/svnauthz.c?rev=1862754&r1=1862753&r2=1862754&view=diff
==============================================================================
--- subversion/branches/swig-py3/tools/server-side/svnauthz.c (original)
+++ subversion/branches/swig-py3/tools/server-side/svnauthz.c Mon Jul  8 15:19:03 2019
@@ -31,6 +31,7 @@
 
 #include "private/svn_fspath.h"
 #include "private/svn_cmdline_private.h"
+#include "svn_private_config.h"
 
 
 /*** Option Processing. ***/
@@ -99,6 +100,9 @@ struct svnauthz_opt_state
 /* Libtool command prefix */
 #define SVNAUTHZ_LT_PREFIX "lt-"
 
+/* The prefix for handling errors and warnings. */
+#define SVNAUTHZ_ERR_PREFIX "svnauthz: "
+
 
 /*** Subcommands. */
 
@@ -224,6 +228,18 @@ read_file_contents(svn_stream_t **conten
   return SVN_NO_ERROR;
 }
 
+/* Handles warning emitted by the authz parser. */
+static void
+handle_parser_warning(void *baton,
+                      const svn_error_t *err,
+                      apr_pool_t *scratch_pool)
+{
+  svn_handle_warning2(stderr, err, SVNAUTHZ_ERR_PREFIX);
+  SVN_UNUSED(baton);
+  SVN_UNUSED(scratch_pool);
+}
+
+
 /* Loads the authz config into *AUTHZ from the file at AUTHZ_FILE
    in repository at REPOS_PATH from the transaction TXN_NAME.  If GROUPS_FILE
    is set, the resulting *AUTHZ will be constructed from AUTHZ_FILE with
@@ -256,7 +272,8 @@ get_authz_from_txn(svn_authz_t **authz,
   else
     groups_contents = NULL;
 
-  err = svn_repos_authz_parse(authz, authz_contents, groups_contents, pool);
+  err = svn_repos_authz_parse2(authz, authz_contents, groups_contents,
+                               handle_parser_warning, NULL, pool, pool);
 
   /* Add the filename to the error stack since the parser doesn't have it. */
   if (err != SVN_NO_ERROR)
@@ -283,9 +300,11 @@ get_authz(svn_authz_t **authz, struct sv
                               opt_state->txn, pool);
 
   /* Else */
-  return svn_repos_authz_read3(authz, opt_state->authz_file,
+  return svn_repos_authz_read4(authz, opt_state->authz_file,
                                opt_state->groups_file,
-                               TRUE, NULL, pool, pool);
+                               TRUE, NULL,
+                               handle_parser_warning, NULL,
+                               pool, pool);
 }
 
 static svn_error_t *
@@ -395,7 +414,12 @@ subcommand_accessof(apr_getopt_t *os, vo
 static svn_boolean_t
 use_compat_mode(const char *cmd, apr_pool_t *pool)
 {
-  cmd = svn_dirent_internal_style(cmd, pool);
+  svn_error_t *err = svn_dirent_internal_style_safe(&cmd, NULL, cmd, pool, pool);
+  if (err)
+    {
+      svn_error_clear(err);
+      return FALSE;
+    }
   cmd = svn_dirent_basename(cmd, NULL);
 
   /* Skip over the Libtool command prefix if it exists on the command. */
@@ -437,7 +461,9 @@ canonicalize_access_file(const char **ca
                                    access_file);
         }
 
-      *canonicalized_access_file = svn_uri_canonicalize(access_file, pool);
+      SVN_ERR(svn_uri_canonicalize_safe(
+                  canonicalized_access_file, NULL,
+                  access_file, pool, pool));
     }
   else if (within_txn)
     {
@@ -450,8 +476,9 @@ canonicalize_access_file(const char **ca
     {
       /* If it isn't a URL and there's no transaction flag then it's a
        * dirent to the access file on local disk. */
-      *canonicalized_access_file =
-          svn_dirent_internal_style(access_file, pool);
+      SVN_ERR(svn_dirent_internal_style_safe(
+                  canonicalized_access_file, NULL,
+                  access_file, pool, pool));
     }
 
   return SVN_NO_ERROR;
@@ -626,7 +653,9 @@ sub_main(int *exit_code, int argc, const
                                               pool));
           os->ind++;
 
-          opt_state.repos_path = svn_dirent_internal_style(opt_state.repos_path, pool);
+          SVN_ERR(svn_dirent_internal_style_safe(&opt_state.repos_path, NULL,
+                                                 opt_state.repos_path,
+                                                 pool, pool));
         }
 
       /* Exactly 1 non-option argument */
@@ -745,7 +774,7 @@ main(int argc, const char *argv[])
     {
       if (exit_code == 0)
         exit_code = EXIT_FAILURE;
-      svn_cmdline_handle_exit_error(err, NULL, "svnauthz: ");
+      svn_cmdline_handle_exit_error(err, NULL, SVNAUTHZ_ERR_PREFIX);
     }
 
   svn_pool_destroy(pool);