# Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: rousskov@measurement-factory.com-20090225205920-\ # ziw6gdpxsfzh3jkq # target_branch: http://www.squid-cache.org/bzr/squid3/trunk # testament_sha1: 76ee6a7f6ba71f7d281f41e1a3490501da7bd162 # timestamp: 2009-02-25 14:56:43 -0700 # base_revision_id: squid3@treenet.co.nz-20090225090218-\ # bs8la3gi45wneltx # # Begin patch === modified file 'configure.in' --- configure.in 2009-02-19 07:15:47 +0000 +++ configure.in 2009-02-25 20:35:16 +0000 @@ -453,14 +453,12 @@ dnl ensure that all modules a) exist and b) only include once. STORE_MODULES_FULL=$STORE_MODULES STORE_MODULES= - STORE_LINKOBJS= for module in $STORE_MODULES_FULL; do have_mod=`echo "$STORE_MODULES" | grep "$module"` if test "$have_mod" != ""; then AC_MSG_NOTICE([Removing duplicate $module from storeio]) elif test -d $srcdir/src/fs/$module; then STORE_MODULES="$STORE_MODULES $module" - STORE_LINKOBJS="$STORE_LINKOBJS fs/${module}/StoreFS${module}.o" else AC_MSG_ERROR(storeio $module does not exist) fi @@ -501,36 +499,30 @@ STORE_TESTS="$STORE_TESTS tests/testUfs$EXEEXT" esac done -STORE_OBJS= -STORE_LIBS= -dnl We have 'fake' modules - aufs and diskd - legacy. -for fs in $STORE_MODULES; do - case "$fs" in - diskd);; - aufs);; - *) - STORE_OBJS="$STORE_OBJS fs/lib${fs}.a" - STORE_LIBS="$STORE_LIBS lib${fs}.a" - ;; - esac -done if test -z "$UFS_FOUND" && test -n "$NEED_UFS"; then AC_MSG_NOTICE([Adding UFS, as it contains core logic for diskd and aufs]) - STORE_OBJS="$STORE_OBJS fs/libufs.a" - STORE_LIBS="$STORE_LIBS libufs.a" STORE_MODULES="$STORE_MODULES ufs" - STORE_LINKOBJS="$STORE_LINKOBJS fs/ufs/StoreFSufs.o" dnl dnl Automake om MinGW needs explicit exe extension dnl for STORE_TESTS substition dnl STORE_TESTS="$STORE_TESTS tests/testUfs$EXEEXT" fi - -AC_SUBST(STORE_OBJS) -AC_SUBST(STORE_LIBS) -AC_SUBST(STORE_LINKOBJS) + +dnl got final STORE_MODULES, build library lists +dnl This list will not be needed when each fs library has its own Makefile +STORE_LIBS_TO_BUILD= +dnl File system libraries to link executables with. +dnl These are the same as STORE_LIBS_TO_BUILD, but with a path +STORE_LIBS_TO_ADD= +for fs in $STORE_MODULES; do + STORE_LIBS_TO_BUILD="$STORE_LIBS_TO_BUILD lib${fs}.a" + STORE_LIBS_TO_ADD="$STORE_LIBS_TO_ADD fs/lib${fs}.a" +done + +AC_SUBST(STORE_LIBS_TO_BUILD) +AC_SUBST(STORE_LIBS_TO_ADD) AC_SUBST(STORE_TESTS) AC_ARG_ENABLE(disk-io, @@ -1563,19 +1555,22 @@ eval AUTH_MODULE_${module}=yes done AC_MSG_NOTICE([Auth scheme modules built: $AUTH_MODULES]) - AUTH_OBJS="auth/lib`echo $AUTH_MODULES|sed -e 's% %.a auth/lib%g'`.a" - AUTH_LIBS="`echo $AUTH_OBJS|sed -e 's%auth/%%g'`" else AC_MSG_WARN([Auth scheme modules built: None]) fi -AUTH_LINKOBJS= +dnl Authentication libraries to build +dnl This list will not be needed when each auth library has its own Makefile +AUTH_LIBS_TO_BUILD= +dnl Authentication libraries to link authenticating executables with. +dnl These are the same as AUTH_LIBS_TO_BUILD, but with a path +AUTH_LIBS_TO_ADD= for module in $AUTH_MODULES; do - AUTH_LINKOBJS="$AUTH_LINKOBJS auth/${module}/${module}Scheme.o" + AUTH_LIBS_TO_BUILD="$AUTH_LIBS_TO_BUILD lib${module}.a" + AUTH_LIBS_TO_ADD="$AUTH_LIBS_TO_ADD auth/lib${module}.a" done AC_SUBST(AUTH_MODULES) -AC_SUBST(AUTH_LIBS) -AC_SUBST(AUTH_LINKOBJS) -AC_SUBST(AUTH_OBJS) +AC_SUBST(AUTH_LIBS_TO_ADD) +AC_SUBST(AUTH_LIBS_TO_BUILD) dnl bundled auth modules, in order to have handy defines for the cppunit testsuite test -n "$AUTH_MODULE_basic" && AC_DEFINE([HAVE_AUTH_MODULE_BASIC],1,[Basic auth module is built]) === modified file 'src/ACLChecklist.cc' --- src/ACLChecklist.cc 2009-02-04 09:52:20 +0000 +++ src/ACLChecklist.cc 2009-02-24 23:52:44 +0000 @@ -40,7 +40,7 @@ #include "authenticate.h" #include "ACLProxyAuth.h" #include "client_side.h" -#include "AuthUserRequest.h" +#include "auth/UserRequest.h" int ACLChecklist::authenticated() === modified file 'src/ACLMaxUserIP.cc' --- src/ACLMaxUserIP.cc 2009-01-21 03:47:47 +0000 +++ src/ACLMaxUserIP.cc 2009-02-24 23:52:44 +0000 @@ -36,7 +36,7 @@ #include "squid.h" #include "ACLMaxUserIP.h" -#include "AuthUserRequest.h" +#include "auth/UserRequest.h" #include "authenticate.h" #include "wordlist.h" #include "ConfigParser.h" === modified file 'src/ACLProxyAuth.cc' --- src/ACLProxyAuth.cc 2008-10-10 08:02:53 +0000 +++ src/ACLProxyAuth.cc 2009-02-24 23:52:44 +0000 @@ -42,8 +42,8 @@ #include "ACLRegexData.h" #include "client_side.h" #include "HttpRequest.h" -#include "AuthUser.h" -#include "AuthUserRequest.h" +#include "auth/User.h" +#include "auth/UserRequest.h" ACLProxyAuth::~ACLProxyAuth() { === modified file 'src/DelayUser.cc' --- src/DelayUser.cc 2009-01-21 03:47:47 +0000 +++ src/DelayUser.cc 2009-02-24 23:52:44 +0000 @@ -40,8 +40,8 @@ #if DELAY_POOLS #include "squid.h" #include "DelayUser.h" -#include "AuthUserRequest.h" -#include "AuthUser.h" +#include "auth/UserRequest.h" +#include "auth/User.h" #include "NullDelayId.h" #include "Store.h" === modified file 'src/HttpRequest.cc' --- src/HttpRequest.cc 2009-02-12 16:06:20 +0000 +++ src/HttpRequest.cc 2009-02-24 23:52:44 +0000 @@ -36,7 +36,7 @@ #include "squid.h" #include "HttpRequest.h" -#include "AuthUserRequest.h" +#include "auth/UserRequest.h" #include "HttpHeaderRange.h" #include "MemBuf.h" #include "Store.h" === modified file 'src/ICAP/ICAPModXact.cc' --- src/ICAP/ICAPModXact.cc 2009-02-12 16:06:20 +0000 +++ src/ICAP/ICAPModXact.cc 2009-02-24 23:52:44 +0000 @@ -14,7 +14,7 @@ #include "ICAPClient.h" #include "ChunkedCodingParser.h" #include "TextException.h" -#include "AuthUserRequest.h" +#include "auth/UserRequest.h" #include "ICAPConfig.h" #include "SquidTime.h" === modified file 'src/Makefile.am' --- src/Makefile.am 2009-02-19 22:55:24 +0000 +++ src/Makefile.am 2009-02-25 20:35:16 +0000 @@ -208,12 +208,12 @@ EXTRA_LIBRARIES = libAIO.a libBlocking.a libDiskDaemon.a libDiskThreads.a noinst_LIBRARIES = @DISK_LIBS@ -noinst_LTLIBRARIES = libsquid.la libauth.la +noinst_LTLIBRARIES = libsquid.la # libraries used by many targets COMMON_LIBS = \ libsquid.la \ - libauth.la \ + auth/libauth.a \ base/libbase.la \ ip/libip.la @@ -264,12 +264,6 @@ @MINGW_LIBS@ cf_gen.$(OBJEXT): cf_gen_defines.h -all_FSMODULES = \ - fs/aufs/StoreFSaufs.cc \ - fs/coss/StoreFScoss.cc \ - fs/diskd/StoreFSdiskd.cc \ - fs/ufs/StoreFSufs.cc - DISKIO_SOURCE = \ DiskIO/DiskIOModule.cc \ DiskIO/ReadRequest.cc \ @@ -289,18 +283,7 @@ $(SHELL) $(srcdir)/DiskIO/modules.sh $(DISK_MODULES) > DiskIO/DiskIOModules_gen.cc -all_AUTHMODULES = \ - auth/basic/basicScheme.cc \ - auth/basic/basicScheme.h \ - auth/digest/digestScheme.cc \ - auth/digest/digestScheme.h \ - auth/ntlm/ntlmScheme.cc \ - auth/ntlm/ntlmScheme.h \ - auth/negotiate/negotiateScheme.cc \ - auth/negotiate/negotiateScheme.h - EXTRA_squid_SOURCES = \ - $(all_FSMODULES) \ $(AIO_WIN32_ALL_SOURCES) \ $(all_AUTHMODULES) \ $(ARP_ACL_ALL_SOURCE) \ @@ -435,15 +418,6 @@ TextException.cc \ TextException.h -# authentication framework -libauth_la_SOURCES = \ - AuthConfig.cc \ - AuthConfig.h \ - AuthScheme.cc \ - AuthScheme.h \ - AuthUser.cc \ - AuthUserRequest.cc - squid_SOURCES = \ access_log.cc \ AccessLogEntry.h \ @@ -672,9 +646,6 @@ $(WINSVC_SOURCE) noinst_HEADERS = ACLChecklist.cci \ - AuthUser.cci \ - AuthUser.h \ - AuthUserRequest.h \ client_side_request.cci \ MemBuf.cci \ MemBuf.h \ @@ -698,11 +669,9 @@ @XTRA_OBJS@ \ @DISK_LINKOBJS@ \ @REPL_OBJS@ \ - @STORE_LINKOBJS@ \ - @STORE_OBJS@ \ + @STORE_LIBS_TO_ADD@ \ @DISK_LIBS@ \ - @AUTH_LINKOBJS@ \ - @AUTH_OBJS@ \ + @AUTH_LIBS_TO_ADD@ \ @CRYPTLIB@ \ @REGEXLIB@ \ @SNMPLIB@ \ @@ -713,13 +682,11 @@ @EPOLL_LIBS@ \ @MINGW_LIBS@ squid_DEPENDENCIES = $(top_builddir)/lib/libmiscutil.a \ - @STORE_OBJS@ \ - @STORE_LINKOBJS@ \ + @STORE_LIBS_TO_ADD@ \ @DISK_LIBS@ \ @DISK_LINKOBJS@ \ @REPL_OBJS@ \ - @AUTH_LINKOBJS@ \ - @AUTH_OBJS@ + @AUTH_LIBS_TO_ADD@ if USE_LOADABLE_MODULES squid_SOURCES += $(LOADABLE_MODULES_SOURCES) @@ -920,8 +887,8 @@ icmp/libicmp.la icmp/libicmp-core.la \ @XTRA_OBJS@ \ @REPL_OBJS@ \ - @STORE_OBJS@ \ - @AUTH_OBJS@ \ + @STORE_LIBS_TO_ADD@ \ + @AUTH_LIBS_TO_ADD@ \ @CRYPTLIB@ \ @REGEXLIB@ \ @SNMPLIB@ \ @@ -932,13 +899,11 @@ @EPOLL_LIBS@ \ @MINGW_LIBS@ ufsdump_DEPENDENCIES = $(top_builddir)/lib/libmiscutil.a \ - @STORE_OBJS@ \ - @STORE_LINKOBJS@ \ + @STORE_LIBS_TO_ADD@ \ @DISK_LIBS@ \ @DISK_LINKOBJS@ \ @REPL_OBJS@ \ - @AUTH_LINKOBJS@ \ - @AUTH_OBJS@ + @AUTH_LIBS_TO_ADD@ nodist_ufsdump_SOURCES = \ repl_modules.cc \ @@ -1245,15 +1210,14 @@ tests_testAuth_LDADD= \ $(COMMON_LIBS) \ - @AUTH_LINKOBJS@ @AUTH_OBJS@ \ + @AUTH_LIBS_TO_ADD@ \ -L../lib -lmiscutil \ @REGEXLIB@ \ @SQUID_CPPUNIT_LIBS@ \ @SSLLIB@ tests_testAuth_LDFLAGS = $(LIBADD_DL) tests_testAuth_DEPENDENCIES = $(top_builddir)/lib/libmiscutil.a \ - @AUTH_LINKOBJS@ \ - @AUTH_OBJS@ \ + @AUTH_LIBS_TO_ADD@ \ @SQUID_CPPUNIT_LA@ ## Tests for the ACLMaxUserIP class @@ -1962,7 +1926,7 @@ $(COMMON_LIBS) \ icmp/libicmp.la icmp/libicmp-core.la \ @REPL_OBJS@ \ - @STORE_OBJS@ \ + @STORE_LIBS_TO_ADD@ \ ${ADAPTATION_LIBS} \ @REGEXLIB@ \ @SNMPLIB@ \ @@ -2164,7 +2128,6 @@ HttpHdrScTarget.cc url.cc ACLProxyAuth.cc ACLRegexData.cc ACLUserData.cc \ StatHist.cc HttpHdrRange.cc ETag.cc tests/stub_errorpage.cc \ tests/stub_HttpRequest.cc tests/stub_access_log.cc \ - ip/stubQosConfig.cc \ refresh.cc \ tests/stub_store_client.cc \ tests/stub_tools.cc \ @@ -2272,8 +2235,7 @@ SWAP_TEST_LDADD = \ @REGEXLIB@ \ - @STORE_LINKOBJS@ \ - @STORE_OBJS@ \ + @STORE_LIBS_TO_ADD@ \ @REPL_OBJS@ \ @DISK_LIBS@ \ -L../lib -lmiscutil \ @@ -2282,8 +2244,7 @@ $(top_builddir)/lib/libmiscutil.a \ repl_modules.o \ @DISK_LIBS@ \ - @STORE_LINKOBJS@ \ - @STORE_OBJS@ \ + @STORE_LIBS_TO_ADD@ \ @REPL_OBJS@ \ @SQUID_CPPUNIT_LA@ === renamed file 'src/AuthConfig.cc' => 'src/auth/Config.cc' --- src/AuthConfig.cc 2009-01-21 03:47:47 +0000 +++ src/auth/Config.cc 2009-02-24 23:52:44 +0000 @@ -34,8 +34,8 @@ */ #include "squid.h" -#include "AuthConfig.h" -#include "AuthUserRequest.h" +#include "auth/Config.h" +#include "auth/UserRequest.h" /* Get Auth User: Return a filled out auth_user structure for the given * Proxy Auth (or Auth) header. It may be a cached Auth User or a new === renamed file 'src/AuthConfig.h' => 'src/auth/Config.h' === modified file 'src/auth/Makefile.am' --- src/auth/Makefile.am 2009-02-07 03:14:20 +0000 +++ src/auth/Makefile.am 2009-02-25 06:08:49 +0000 @@ -1,37 +1,59 @@ -# Makefile for authentication modules in the Squid Object Cache server -# -# $Id$ -# -AUTOMAKE_OPTIONS = subdir-objects -AM_CFLAGS = @SQUID_CFLAGS@ -AM_CXXFLAGS = @SQUID_CXXFLAGS@ -CLEANFILES = +include $(top_srcdir)/src/Common.am EXTRA_LIBRARIES = libbasic.a libdigest.a libntlm.a libnegotiate.a -noinst_LIBRARIES = @AUTH_LIBS@ - -libbasic_a_SOURCES = basic/auth_basic.cc basic/auth_basic.h -libdigest_a_SOURCES = digest/auth_digest.cc digest/auth_digest.h -libntlm_a_SOURCES = ntlm/auth_ntlm.cc ntlm/auth_ntlm.h -libnegotiate_a_SOURCES = negotiate/auth_negotiate.cc negotiate/auth_negotiate.h negotiate/negotiateScheme.cc negotiate/negotiateScheme.h - -INCLUDES = \ - -I$(top_srcdir) \ - -I. \ - -I$(top_builddir)/include \ - -I$(top_srcdir)/include \ - -I$(top_srcdir)/src - -check_PROGRAMS= testHeaders +noinst_LIBRARIES = libauth.a @AUTH_LIBS_TO_BUILD@ + +## authentication framework; this library is always built +## TODO: use libtool and add @AUTH_LIBS_TO_BUILD@ to libauth.la +libauth_a_SOURCES = \ + Config.cc \ + Config.h \ + Scheme.cc \ + Scheme.h \ + User.h \ + User.cci \ + User.cc \ + UserRequest.h \ + UserRequest.cc + +libbasic_a_SOURCES = \ + basic/basicScheme.cc \ + basic/basicScheme.h \ + basic/auth_basic.cc \ + basic/auth_basic.h + +libdigest_a_SOURCES = \ + digest/digestScheme.cc \ + digest/digestScheme.h \ + digest/auth_digest.cc \ + digest/auth_digest.h + +libntlm_a_SOURCES = \ + ntlm/ntlmScheme.cc \ + ntlm/ntlmScheme.h \ + ntlm/auth_ntlm.cc \ + ntlm/auth_ntlm.h + +libnegotiate_a_SOURCES = \ + negotiate/negotiateScheme.cc \ + negotiate/negotiateScheme.h \ + negotiate/auth_negotiate.cc \ + negotiate/auth_negotiate.h + +# TODO: fix #include statements so that this is not needed +INCLUDES += -I. + + +check_PROGRAMS += testHeaders ## Special Universal .h dependency test script ## aborts if error encountered -testHeaders: $(top_srcdir)/src/auth/basic/*.h $(top_srcdir)/src/auth/digest/*.h $(top_srcdir)/src/auth/ntlm/*.h $(top_srcdir)/src/auth/negotiate/*.h - $(SHELL) $(top_srcdir)/test-suite/testheaders.sh "$(CXXCOMPILE)" "basic" || exit 1 - $(SHELL) $(top_srcdir)/test-suite/testheaders.sh "$(CXXCOMPILE)" "digest" || exit 1 - $(SHELL) $(top_srcdir)/test-suite/testheaders.sh "$(CXXCOMPILE)" "ntlm" || exit 1 - $(SHELL) $(top_srcdir)/test-suite/testheaders.sh "$(CXXCOMPILE)" "negotiate" || exit 1 -## ./ has no .h files +testHeaders: $(top_srcdir)/src/auth/*.h $(top_srcdir)/src/auth/basic/*.h $(top_srcdir)/src/auth/digest/*.h $(top_srcdir)/src/auth/ntlm/*.h $(top_srcdir)/src/auth/negotiate/*.h + $(SHELL) $(top_srcdir)/test-suite/testheaders.sh "$(CXXCOMPILE)" "$(top_srcdir)/src/auth/" || exit 1 + $(SHELL) $(top_srcdir)/test-suite/testheaders.sh "$(CXXCOMPILE)" "$(top_srcdir)/src/auth/basic" || exit 1 + $(SHELL) $(top_srcdir)/test-suite/testheaders.sh "$(CXXCOMPILE)" "$(top_srcdir)/src/auth/digest" || exit 1 + $(SHELL) $(top_srcdir)/test-suite/testheaders.sh "$(CXXCOMPILE)" "$(top_srcdir)/src/auth/ntlm" || exit 1 + $(SHELL) $(top_srcdir)/test-suite/testheaders.sh "$(CXXCOMPILE)" "$(top_srcdir)/src/auth/negotiate" || exit 1 ## No such file... testHeaders.c: === renamed file 'src/AuthScheme.cc' => 'src/auth/Scheme.cc' --- src/AuthScheme.cc 2009-01-21 03:47:47 +0000 +++ src/auth/Scheme.cc 2009-02-24 23:52:44 +0000 @@ -35,9 +35,9 @@ */ #include "squid.h" -#include "AuthScheme.h" +#include "auth/Scheme.h" #include "authenticate.h" -#include "AuthConfig.h" +#include "auth/Config.h" Vector *AuthScheme::_Schemes = NULL; === renamed file 'src/AuthScheme.h' => 'src/auth/Scheme.h' === renamed file 'src/AuthUser.cc' => 'src/auth/User.cc' --- src/AuthUser.cc 2009-01-21 03:47:47 +0000 +++ src/auth/User.cc 2009-02-24 23:52:44 +0000 @@ -34,16 +34,16 @@ */ #include "squid.h" -#include "AuthUser.h" -#include "AuthUserRequest.h" -#include "AuthConfig.h" +#include "auth/User.h" +#include "auth/UserRequest.h" +#include "auth/Config.h" #include "authenticate.h" #include "ACL.h" #include "event.h" #include "SquidTime.h" #ifndef _USE_INLINE_ -#include "AuthUser.cci" +#include "auth/User.cci" #endif // This should be converted into a pooled type. Does not need to be cbdata === renamed file 'src/AuthUser.cci' => 'src/auth/User.cci' === renamed file 'src/AuthUser.h' => 'src/auth/User.h' --- src/AuthUser.h 2009-01-21 03:47:47 +0000 +++ src/auth/User.h 2009-02-24 23:52:44 +0000 @@ -112,7 +112,7 @@ }; #ifdef _USE_INLINE_ -#include "AuthUser.cci" +#include "auth/User.cci" #endif #endif /* SQUID_AUTHUSER_H */ === renamed file 'src/AuthUserRequest.cc' => 'src/auth/UserRequest.cc' --- src/AuthUserRequest.cc 2009-01-21 03:47:47 +0000 +++ src/auth/UserRequest.cc 2009-02-24 23:52:44 +0000 @@ -41,14 +41,14 @@ * See acl.c for access control and client_side.c for auditing */ #include "squid.h" -#include "AuthUserRequest.h" -#include "AuthUser.h" +#include "auth/UserRequest.h" +#include "auth/User.h" /*#include "authenticate.h" #include "ACL.h" #include "client_side.h" */ -#include "AuthConfig.h" -#include "AuthScheme.h" +#include "auth/Config.h" +#include "auth/Scheme.h" #include "HttpReply.h" #include "HttpRequest.h" === renamed file 'src/AuthUserRequest.h' => 'src/auth/UserRequest.h' === modified file 'src/auth/basic/auth_basic.h' --- src/auth/basic/auth_basic.h 2008-10-10 08:02:53 +0000 +++ src/auth/basic/auth_basic.h 2009-02-24 23:52:44 +0000 @@ -6,9 +6,9 @@ #ifndef __AUTH_BASIC_H__ #define __AUTH_BASIC_H__ #include "authenticate.h" -#include "AuthUser.h" -#include "AuthUserRequest.h" -#include "AuthConfig.h" +#include "auth/User.h" +#include "auth/UserRequest.h" +#include "auth/Config.h" #include "helper.h" #define DefaultAuthenticateChildrenMax 32 /* 32 processes */ === modified file 'src/auth/basic/basicScheme.h' --- src/auth/basic/basicScheme.h 2009-01-21 03:47:47 +0000 +++ src/auth/basic/basicScheme.h 2009-02-24 23:52:44 +0000 @@ -34,7 +34,7 @@ #ifndef SQUID_BASICSCHEME_H #define SQUID_BASICSCHEME_H -#include "AuthScheme.h" +#include "auth/Scheme.h" /// \ingroup AuthAPI /// \ingroup AuthSchemeAPI === modified file 'src/auth/digest/auth_digest.h' --- src/auth/digest/auth_digest.h 2008-10-10 08:02:53 +0000 +++ src/auth/digest/auth_digest.h 2009-02-24 23:52:44 +0000 @@ -7,9 +7,9 @@ #define __AUTH_DIGEST_H__ #include "rfc2617.h" #include "authenticate.h" -#include "AuthUser.h" -#include "AuthUserRequest.h" -#include "AuthConfig.h" +#include "auth/User.h" +#include "auth/UserRequest.h" +#include "auth/Config.h" #include "helper.h" /* Generic */ === modified file 'src/auth/digest/digestScheme.h' --- src/auth/digest/digestScheme.h 2009-01-21 03:47:47 +0000 +++ src/auth/digest/digestScheme.h 2009-02-24 23:52:44 +0000 @@ -34,7 +34,7 @@ #ifndef SQUID_DIGESTSCHEME_H #define SQUID_DIGESTSCHEME_H -#include "AuthScheme.h" +#include "auth/Scheme.h" /// \ingroup AuthSchemeAPI /// \ingroup AuthAPI === modified file 'src/auth/negotiate/auth_negotiate.h' --- src/auth/negotiate/auth_negotiate.h 2008-10-10 08:02:53 +0000 +++ src/auth/negotiate/auth_negotiate.h 2009-02-24 23:52:44 +0000 @@ -6,9 +6,9 @@ #ifndef __AUTH_NEGOTIATE_H__ #define __AUTH_NEGOTIATE_H__ #include "authenticate.h" -#include "AuthUser.h" -#include "AuthUserRequest.h" -#include "AuthConfig.h" +#include "auth/User.h" +#include "auth/UserRequest.h" +#include "auth/Config.h" #include "helper.h" /** === modified file 'src/auth/negotiate/negotiateScheme.h' --- src/auth/negotiate/negotiateScheme.h 2009-01-21 03:47:47 +0000 +++ src/auth/negotiate/negotiateScheme.h 2009-02-24 23:52:44 +0000 @@ -34,7 +34,7 @@ #ifndef SQUID_NEGOTIATESCHEME_H #define SQUID_NEGOTIATESCHEME_H -#include "AuthScheme.h" +#include "auth/Scheme.h" /// \ingroup AuthSchemeAPI /// \ingroup AuthAPI === modified file 'src/auth/ntlm/auth_ntlm.h' --- src/auth/ntlm/auth_ntlm.h 2008-10-10 08:02:53 +0000 +++ src/auth/ntlm/auth_ntlm.h 2009-02-24 23:52:44 +0000 @@ -6,9 +6,9 @@ #ifndef __AUTH_NTLM_H__ #define __AUTH_NTLM_H__ #include "authenticate.h" -#include "AuthUser.h" -#include "AuthUserRequest.h" -#include "AuthConfig.h" +#include "auth/User.h" +#include "auth/UserRequest.h" +#include "auth/Config.h" #include "helper.h" #define DefaultAuthenticateChildrenMax 32 /* 32 processes */ === modified file 'src/auth/ntlm/ntlmScheme.h' --- src/auth/ntlm/ntlmScheme.h 2009-01-21 03:47:47 +0000 +++ src/auth/ntlm/ntlmScheme.h 2009-02-24 23:52:44 +0000 @@ -34,7 +34,7 @@ #ifndef SQUID_NTLMSCHEME_H #define SQUID_NTLMSCHEME_H -#include "AuthScheme.h" +#include "auth/Scheme.h" /// \ingroup AuthSchemeAPI /// \ingroup AuthAPI === modified file 'src/authenticate.cc' --- src/authenticate.cc 2009-01-21 03:47:47 +0000 +++ src/authenticate.cc 2009-02-24 23:52:44 +0000 @@ -41,9 +41,9 @@ #include "authenticate.h" #include "ACL.h" #include "client_side.h" -#include "AuthConfig.h" -#include "AuthScheme.h" -#include "AuthUser.h" +#include "auth/Config.h" +#include "auth/Scheme.h" +#include "auth/User.h" #include "HttpReply.h" #include "HttpRequest.h" === modified file 'src/cache_cf.cc' --- src/cache_cf.cc 2009-02-23 23:18:23 +0000 +++ src/cache_cf.cc 2009-02-25 20:59:20 +0000 @@ -36,8 +36,8 @@ #include "authenticate.h" #include "ProtoPort.h" #include "HttpRequestMethod.h" -#include "AuthConfig.h" -#include "AuthScheme.h" +#include "auth/Config.h" +#include "auth/Scheme.h" #include "CacheManager.h" #include "Store.h" #include "SwapDir.h" === modified file 'src/client_side.cc' --- src/client_side.cc 2009-02-17 08:40:45 +0000 +++ src/client_side.cc 2009-02-24 23:52:44 +0000 @@ -85,7 +85,7 @@ #include "client_side.h" #include "clientStream.h" #include "ProtoPort.h" -#include "AuthUserRequest.h" +#include "auth/UserRequest.h" #include "Store.h" #include "comm.h" #include "HttpHdrContRange.h" === modified file 'src/client_side_reply.cc' --- src/client_side_reply.cc 2009-02-17 08:40:45 +0000 +++ src/client_side_reply.cc 2009-02-24 23:52:44 +0000 @@ -46,7 +46,7 @@ #include "HttpRequest.h" #include "forward.h" #include "clientStream.h" -#include "AuthUserRequest.h" +#include "auth/UserRequest.h" #if USE_SQUID_ESI #include "ESI.h" #endif === modified file 'src/client_side_request.cc' --- src/client_side_request.cc 2009-02-11 17:08:24 +0000 +++ src/client_side_request.cc 2009-02-24 23:52:44 +0000 @@ -45,7 +45,7 @@ #include "squid.h" #include "clientStream.h" #include "client_side_request.h" -#include "AuthUserRequest.h" +#include "auth/UserRequest.h" #include "HttpRequest.h" #include "ProtoPort.h" #include "ACLChecklist.h" === modified file 'src/errorpage.cc' --- src/errorpage.cc 2009-02-18 09:45:32 +0000 +++ src/errorpage.cc 2009-02-24 23:52:44 +0000 @@ -35,7 +35,7 @@ #include "config.h" #include "errorpage.h" -#include "AuthUserRequest.h" +#include "auth/UserRequest.h" #include "SquidTime.h" #include "Store.h" #include "HttpReply.h" === modified file 'src/external_acl.cc' --- src/external_acl.cc 2009-02-10 11:02:53 +0000 +++ src/external_acl.cc 2009-02-24 23:52:44 +0000 @@ -44,7 +44,7 @@ #include "CacheManager.h" #include "ExternalACL.h" #include "ExternalACLEntry.h" -#include "AuthUserRequest.h" +#include "auth/UserRequest.h" #include "SquidTime.h" #include "Store.h" #include "fde.h" === modified file 'src/fs/Makefile.am' --- src/fs/Makefile.am 2009-02-07 03:14:20 +0000 +++ src/fs/Makefile.am 2009-02-25 20:35:16 +0000 @@ -1,47 +1,51 @@ -# Makefile for storage modules in the Squid Object Cache server -# -# $Id$ -# - -AUTOMAKE_OPTIONS = subdir-objects -AM_CFLAGS = @SQUID_CFLAGS@ -AM_CXXFLAGS = @SQUID_CXXFLAGS@ -CLEANFILES = - -EXTRA_LIBRARIES = libcoss.a libufs.a -noinst_LIBRARIES = @STORE_LIBS@ +include $(top_srcdir)/src/Common.am + +EXTRA_LIBRARIES = libaufs.a libdiskd.a libcoss.a libufs.a +noinst_LIBRARIES = @STORE_LIBS_TO_BUILD@ + +## TODO: add libfs -- file system framework; this library is always built +## TODO: use libtool and add @STORE_LIBS_TO_BUILD@ to libfs.la + +# aufs is a "fake" legacy store +libaufs_a_SOURCES = \ + aufs/StoreFSaufs.cc + +# diskd is a "fake" legacy store +libdiskd_a_SOURCES = \ + diskd/StoreFSdiskd.cc libcoss_a_SOURCES = \ + coss/StoreFScoss.h \ + coss/StoreFScoss.cc \ coss/store_coss.h \ coss/store_io_coss.cc \ coss/store_dir_coss.cc \ coss/CossSwapDir.h -libufs_a_SOURCES = ufs/store_dir_ufs.cc ufs/store_io_ufs.cc \ +libufs_a_SOURCES = \ + ufs/StoreFSufs.h \ + ufs/StoreFSufs.cc \ + ufs/store_dir_ufs.cc \ + ufs/store_io_ufs.cc \ ufs/ufscommon.cci \ ufs/ufscommon.cc \ ufs/ufscommon.h EXTRA_DIST = \ - coss/coss-notes.txt \ - coss/StoreFScoss.h \ - ufs/StoreFSufs.h - -INCLUDES = \ - -I$(top_srcdir) \ - -I. \ - -I$(top_builddir)/include \ - -I$(top_srcdir)/include \ - -I$(top_srcdir)/src - -check_PROGRAMS=testHeaders + coss/coss-notes.txt + +# TODO: fix #include statements so that this is not needed +INCLUDES += -I. + + +check_PROGRAMS += testHeaders ## Special Universal .h dependency test script ## aborts if error encountered testHeaders: $(top_srcdir)/src/fs/ufs/*.h $(top_srcdir)/src/fs/coss/*.h - $(SHELL) $(top_srcdir)/test-suite/testheaders.sh "$(CXXCOMPILE)" "ufs" || exit 1 - $(SHELL) $(top_srcdir)/test-suite/testheaders.sh "$(CXXCOMPILE)" "coss" || exit 1 + $(SHELL) $(top_srcdir)/test-suite/testheaders.sh "$(CXXCOMPILE)" "$(top_srcdir)/src/fs/ufs" || exit 1 + $(SHELL) $(top_srcdir)/test-suite/testheaders.sh "$(CXXCOMPILE)" "$(top_srcdir)/src/fs/coss" || exit 1 ## diskd/ has no .h files ## aufs/ has no .h files ## ./ has no .h files === modified file 'src/http.cc' --- src/http.cc 2009-02-22 23:09:09 +0000 +++ src/http.cc 2009-02-25 20:59:20 +0000 @@ -42,7 +42,7 @@ #include "errorpage.h" #include "MemBuf.h" #include "http.h" -#include "AuthUserRequest.h" +#include "auth/UserRequest.h" #include "Store.h" #include "HttpReply.h" #include "HttpRequest.h" === modified file 'src/peer_userhash.cc' --- src/peer_userhash.cc 2009-01-21 03:47:47 +0000 +++ src/peer_userhash.cc 2009-02-24 23:52:44 +0000 @@ -38,7 +38,7 @@ #include "CacheManager.h" #include "Store.h" #include "HttpRequest.h" -#include "AuthUserRequest.h" +#include "auth/UserRequest.h" #define ROTATE_LEFT(x, n) (((x) << (n)) | ((x) >> (32-(n)))) === modified file 'src/redirect.cc' --- src/redirect.cc 2009-02-03 17:36:15 +0000 +++ src/redirect.cc 2009-02-24 23:52:44 +0000 @@ -34,7 +34,7 @@ */ #include "squid.h" -#include "AuthUserRequest.h" +#include "auth/UserRequest.h" #include "CacheManager.h" #include "Store.h" #include "fde.h" === modified file 'src/stat.cc' --- src/stat.cc 2009-02-11 11:07:53 +0000 +++ src/stat.cc 2009-02-24 23:52:44 +0000 @@ -35,7 +35,7 @@ #include "squid.h" #include "event.h" #include "StoreClient.h" -#include "AuthUserRequest.h" +#include "auth/UserRequest.h" #include "CacheManager.h" #include "Store.h" #include "HttpRequest.h" === modified file 'src/tests/testAuth.cc' --- src/tests/testAuth.cc 2008-12-12 00:17:10 +0000 +++ src/tests/testAuth.cc 2009-02-24 23:52:44 +0000 @@ -3,9 +3,9 @@ #include "squid.h" #include "testAuth.h" #include "authenticate.h" -#include "AuthUserRequest.h" -#include "AuthScheme.h" -#include "AuthConfig.h" +#include "auth/UserRequest.h" +#include "auth/Scheme.h" +#include "auth/Config.h" #include "Mem.h" CPPUNIT_TEST_SUITE_REGISTRATION( testAuth ); # Begin bundle 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 woSBTYzTGA==