ns_log notice "nsd.tcl: starting to read config file..."

###################################################################### 
#
# Instance-specific settings 
# These default settings will only work in limited circumstances
# Two servers with default settings cannot run on the same host
#
###################################################################### 


# Wait until PostgreSQL has come up...
# Sleep 5 is apparently not enough in certain situations
exec sleep 12


#---------------------------------------------------------------------
# Web server ports. Change to 80 and 443 for production use or
# use "Pound" as a reverse proxy.
# If setting httpport below 1024 then please read comments in file:
# /var/lib/aolserver/service0/packages/etc/daemontools/run
#
set httpport		8000
set httpsport		8443 


# The name of the server and its location
set server		"projop" 
set servername		"\]project-open\[ V4.0"
set serverroot		"/web/${server}"


# The hostname and address should be set to actual values.
# setting the address to 0.0.0.0 means aolserver listens on all interfaces

# set hostname		localhost
set hostname		[ns_info hostname]

# set address		127.0.0.1
set address		"0.0.0.0"



# if debug is false, all debugging will be turned off
set debug		true

# Which database do you want? postgres or oracle
# The name of the database is the same as the server by default.
set database		postgres 
set db_name		$server


# Home directory of AOLserver
set homedir		/usr/local/aolserver45
set bindir		${homedir}/bin


# Hard limits for up- and downloads
set max_file_upload_mb	20
set max_file_upload_min	5



###################################################################### 
#
# End of instance-specific settings 
#
# Nothing below this point need be changed in a default install.
#
###################################################################### 


#---------------------------------------------------------------------
# Database specific settings
if { $database eq "oracle" } {
	set db_password		"mysitepassword"
} else {
	set db_host		localhost
	set db_port		""
	set db_user		$server
}


#---------------------------------------------------------------------
# AOLserver's directories. Autoconfigurable. 
#---------------------------------------------------------------------
# Where are your pages going to live ?
set pageroot			${serverroot}/www 
set directoryfile		index.tcl,index.adp,index.html,index.htm


#---------------------------------------------------------------------
# Global server parameters 
#---------------------------------------------------------------------
ns_section ns/parameters 
	ns_param	 serverlog		${serverroot}/log/error.log 
	ns_param	 home			$homedir 
	# maxkeepalive is ignored in aolserver4.x
	ns_param	 maxkeepalive		0
	ns_param	 logroll		on
	ns_param	 maxbackup		5
	ns_param	 debug			$debug
#	ns_param	 mailhost		localhost 

	# setting to Unicode by default
	# see http://dqd.com/~mayoff/encoding-doc.html
	ns_param	 HackContentType	1	 
	ns_param	 DefaultCharset		utf-8
	ns_param	 HttpOpenCharset	utf-8
	ns_param	 OutputCharset		utf-8
	ns_param	 URLCharset		utf-8

#---------------------------------------------------------------------
# Thread library (nsthread) parameters 
#---------------------------------------------------------------------
ns_section ns/threads 
	ns_param	 mutexmeter		true	;# measure lock contention 
	# The per-thread stack size must be a multiple of 8k for AOLServer to run under MacOS X
	ns_param	 stacksize		[expr {128 * 8192}]

# 
# MIME types. 
# 
ns_section ns/mimetypes
	# Note: AOLserver already has an exhaustive list of MIME types:
	# see: /usr/local/src/aolserver-4.{version}/aolserver/nsd/mimetypes.c
	# but in case something is missing you can add it here. 
	ns_param	 Default		*/*
	ns_param	 NoExtension		*/*
	ns_param	 .pcd			image/x-photo-cd
	ns_param	 .prc			application/x-pilot
	ns_param	 .xls			application/vnd.ms-excel
	ns_param	 .doc			application/vnd.ms-word


#---------------------------------------------------------------------
# 
# Server-level configuration 
# 
#	There is only one server in AOLserver, but this is helpful when multiple
#	servers share the same configuration file.	This file assumes that only
#	one server is in use so it is set at the top in the "server" Tcl variable
#	Other host-specific values are set up above as Tcl variables, too.
# 
#---------------------------------------------------------------------
ns_section ns/servers 
	ns_param	 $server		$servername 

# 
# Server parameters 
# 
ns_section ns/server/${server} 
	ns_param	 directoryfile		$directoryfile
	ns_param	 pageroot		$pageroot
	ns_param	 maxconnections		100		;# Max connections to put on queue
	ns_param	 maxdropped		0
	ns_param	 maxthreads		10
	ns_param	 minthreads		5
	ns_param	 threadtimeout		120		;# Idle threads die at this rate
	ns_param	 globalstats		false		;# Enable built-in statistics 
	ns_param	 urlstats		false		;# Enable URL statistics 
	ns_param	 maxurlstats		1000		;# Max number of URL's to do stats on
#	ns_param	 directoryadp		$pageroot/dirlist.adp ;# Choose one or the other
#	ns_param	 directoryproc		_ns_dirlist	;#	...but not both!
#	ns_param	 directorylisting	fancy		;# Can be simple or fancy

	#
	# Special HTTP pages
	#
	ns_param	 NotFoundResponse	"/global/file-not-found.html"
	ns_param	 ServerBusyResponse	"/global/busy.html"
	ns_param	 ServerInternalErrorResponse "/global/error.html"

#---------------------------------------------------------------------
# 
# ADP (AOLserver Dynamic Page) configuration 
# 
#---------------------------------------------------------------------
ns_section ns/server/${server}/adp 
	ns_param	 map			/*.adp	;# Extensions to parse as ADP's 
#	ns_param	 map			"/*.html" ;# Any extension can be mapped 
	ns_param	 enableexpire		 false	 ;# Set "Expires: now" on all ADP's 
	ns_param	 enabledebug		$debug	;# Allow Tclpro debugging with "?debug"
	ns_param	 defaultparser		fancy

ns_section ns/server/${server}/adp/parsers
	ns_param	 fancy			".adp"

ns_section ns/server/${server}/redirects
	ns_param	 404			"global/file-not-found.html"
	ns_param	 403			"global/forbidden.html"

# 
# Tcl Configuration 
# 
ns_section ns/server/${server}/tcl
	ns_param	 library		${serverroot}/tcl
	ns_param	 autoclose		on 
	ns_param	 debug			$debug
 
#---------------------------------------------------------------------
#
# Rollout email support
#
# These procs help manage differing email behavior on 
# dev/staging/production.
#
#---------------------------------------------------------------------
ns_section ns/server/${server}/acs/acs-rollout-support

	# EmailDeliveryMode can be:
	#	 default:	Email messages are sent in the usual manner.
	#	 log:		Email messages are written to the server's error log.
	#	 redirect: Email messages are redirected to the addresses specified 
	#	by the EmailRedirectTo parameter.	If this list is absent 
	#	or empty, email messages are written to the server's error log.
	#	 filter:	 Email messages are sent to in the usual manner if the 
	#	recipient appears in the EmailAllow parameter, otherwise they 
	#	are logged.

#	ns_param	 EmailDeliveryMode 	redirect
#	ns_param	 EmailRedirectTo	somenerd@yourdomain.test, othernerd@yourdomain.test
#	ns_param	 EmailAllow		somenerd@yourdomain.test,othernerd@yourdomain.test

#---------------------------------------------------------------------
#
# WebDAV Support (optional, requires oacs-dav package to be installed
#
#---------------------------------------------------------------------
ns_section ns/server/${server}/tdav
	ns_param propdir 		${serverroot}/data/dav/properties
	ns_param lockdir 		${serverroot}/data/dav/locks
	ns_param defaultlocktimeout	"300"

ns_section ns/server/${server}/tdav/shares
	ns_param share1 		"OpenACS"
#	ns_param share2 		"Share 2 description"

ns_section ns/server/${server}/tdav/share/share1
	ns_param uri 			"/dav/*"
	# all WebDAV options
	ns_param options 		"OPTIONS COPY GET PUT MOVE DELETE HEAD MKCOL POST PROPFIND PROPPATCH LOCK UNLOCK"

#ns_section ns/server/${server}/tdav/share/share2
#	ns_param uri 			"/share2/path/*"
	# read-only WebDAV options
#	ns_param options 		"OPTIONS COPY GET HEAD MKCOL POST PROPFIND PROPPATCH"


#---------------------------------------------------------------------
# 
# Socket driver module (HTTP)	-- nssock 
# 
#---------------------------------------------------------------------
ns_section ns/server/${server}/module/nssock
	ns_param	 timeout	120
	ns_param	 address	$address
	ns_param	 hostname	$hostname
	ns_param	 port	$httpport
# setting maxinput higher than practical may leave the server vulnerable to resource DoS attacks
# see http://www.panoptic.com/wiki/aolserver/166
	ns_param	 maxinput	[expr {$max_file_upload_mb * 1024 * 1024}] ;# Maximum File Size for uploads in bytes
	ns_param	 maxpost	[expr {$max_file_upload_mb * 1024 * 1024}] ;# Maximum File Size for uploads in bytes
	ns_param	 recvwait	[expr {$max_file_upload_min * 60}] ;# Maximum request time in minutes

# maxsock will limit the number of simultanously returned pages,
# regardless of what maxthreads is saying
	ns_param	 maxsock	100 ;# 100 = default

# On Windows you need to set this parameter to define the number of
# connections as well (it seems).
	ns_param	 backlog	5	;# if < 1 == 5 

# Optional params with defaults:
	ns_param	 bufsize	16000
	ns_param	 rcvbuf		0
	ns_param	 sndbuf		0
	ns_param	 socktimeout	30 ;# if < 1 == 30
	ns_param	 sendwait	30 ;# if < 1 == socktimeout
	ns_param	 recvwait	30 ;# if < 1 == socktimeout
	ns_param	 closewait	2	;# if < 0 == 2
	ns_param	 keepwait	30 ;# if < 0 == 30
	ns_param	 readtimeoutlogging	false
	ns_param	 serverrejectlogging	 false
	ns_param	 sockerrorlogging		false
	ns_param	 sockshuterrorlogging	false

#---------------------------------------------------------------------
# 
# Access log -- nslog 
# 
#---------------------------------------------------------------------
ns_section ns/server/${server}/module/nslog 
	ns_param	 debug	false
	ns_param	 dev		false
	ns_param	 enablehostnamelookup false
	ns_param	 file	${serverroot}/log/${server}.log
	ns_param	 logcombined	true
	ns_param	 extendedheaders	COOKIE
#	ns_param	 logrefer	false
#	ns_param	 loguseragent		 false
	ns_param	 logreqtime	true
	ns_param	 maxbackup	1000
	ns_param	 rollday	*
	ns_param	 rollfmt	%Y-%m-%d-%H:%M
	ns_param	 rollhour	0
	ns_param	 rollonsignal		 true
	ns_param	 rolllog	true

#---------------------------------------------------------------------
#
# nsjava - aolserver module that embeds a java virtual machine.	Needed to 
#	support webmail.	See http://nsjava.sourceforge.net for further 
#	details. This may need to be updated for OpenACS4 webmail
#
#---------------------------------------------------------------------
ns_section ns/server/${server}/module/nsjava
	ns_param	 enablejava	off	;# Set to on to enable nsjava.
	ns_param	 verbosejvm	off	;# Same as command line -debug.
	ns_param	 loglevel	Notice
	ns_param	 destroyjvm	off	;# Destroy jvm on shutdown.
	ns_param	 disablejitcompiler off	
	ns_param	 classpath	/usr/local/jdk/jdk118_v1/lib/classes.zip:${bindir}/nsjava.jar:${pageroot}/webmail/java/activation.jar:${pageroot}/webmail/java/mail.jar:${pageroot}/webmail/java 

#---------------------------------------------------------------------
# 
# CGI interface -- nscgi, if you have legacy stuff. Tcl or ADP files inside 
# AOLserver are vastly superior to CGIs. I haven't tested these params but they
# should be right.
# 
#---------------------------------------------------------------------
#ns_section "ns/server/${server}/module/nscgi" 
#		 ns_param	 map "GET	/cgi-bin ${serverroot}/cgi-bin"
#		 ns_param	 map "POST /cgi-bin ${serverroot}/cgi-bin" 
#		 ns_param	 Interps CGIinterps

#ns_section "ns/interps/CGIinterps" 
#		 ns_param .pl "/usr/bin/perl"


#---------------------------------------------------------------------
#
# PAM authentication
#
#---------------------------------------------------------------------
ns_section ns/server/${server}/module/nspam
	ns_param	 PamDomain	"pam_domain"


#---------------------------------------------------------------------
#
# OpenSSL for Aolserver 3.3 and 4
#
#---------------------------------------------------------------------
if { [ns_info version] < 4} {

	#---------------------------------------------------------------------
	# OpenSSL for Aolserver 3.3
	#---------------------------------------------------------------------

	ns_section "ns/server/${server}/module/nsopenssl"
	
	ns_param ModuleDir	${serverroot}/etc/certs
	
	# NSD-driven connections:
	ns_param ServerPort		$httpsport
	ns_param ServerHostname	$hostname
	ns_param ServerAddress	$address
	ns_param ServerCertFile	certfile.pem
	ns_param ServerKeyFile	keyfile.pem
	ns_param ServerProtocols	"SSLv2, SSLv3, TLSv1"
	ns_param ServerCipherSuite	"ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP"
	ns_param ServerSessionCache	true
	ns_param ServerSessionCacheID		1
	ns_param ServerSessionCacheSize	512
	ns_param ServerSessionCacheTimeout 300
	ns_param ServerPeerVerify	false
	ns_param ServerPeerVerifyDepth	 3
	ns_param ServerCADir	ca
	ns_param ServerCAFile	ca.pem
	ns_param ServerTrace	false
	
	# For listening and accepting SSL connections via Tcl/C API:
	ns_param SockServerCertFile	certfile.pem
	ns_param SockServerKeyFile	keyfile.pem
	ns_param SockServerProtocols	"SSLv2, SSLv3, TLSv1"
	ns_param SockServerCipherSuite	"ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP"
	ns_param SockServerSessionCache	true
	ns_param SockServerSessionCacheID	2
	ns_param SockServerSessionCacheSize		512
	ns_param SockServerSessionCacheTimeout	 300
	ns_param SockServerPeerVerify	false
	ns_param SockServerPeerVerifyDepth		 3
	ns_param SockServerCADir		internal_ca
	ns_param SockServerCAFile		internal_ca.pem
	ns_param SockServerTrace		false
	
	# Outgoing SSL connections
	ns_param SockClientCertFile	certfile.pem
	ns_param SockClientKeyFile	keyfile.pem
	ns_param SockClientProtocols	"SSLv2, SSLv3, TLSv1"
	ns_param SockClientCipherSuite	"ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP"
	ns_param SockClientSessionCache	false
	ns_param SockClientSessionCacheID	3
	ns_param SockClientSessionCacheSize		512
	ns_param SockClientSessionCacheTimeout	 300
	ns_param SockClientPeerVerify	false
	ns_param SockServerPeerVerifyDepth		 3
	ns_param SockClientCADir		ca
	ns_param SockClientCAFile		ca.pem
	ns_param SockClientTrace		false
	
	# OpenSSL library support:
	#	ns_param RandomFile	/some/file
	ns_param SeedBytes	1024

} else {

	#---------------------------------------------------------------------
	# OpenSSL for Aolserver 4
	#---------------------------------------------------------------------	
	ns_section "ns/server/${server}/module/nsopenssl"

	# Note this portion of the configuration is not perfect, and you
	# will get errors in the your error.log. However, it does
	# work. Fixes welcome.

	# this is used by acs-tcl/tcl/security-procs.tcl to get the 
	# https port.
	ns_param ServerPort		$httpsport
	# setting maxinput higher than practical may leave the server vulnerable to resource DoS attacks
	# see http://www.panoptic.com/wiki/aolserver/166
	# must set maxinput for nsopenssl as well as nssock
	ns_param	 maxinput	[expr {$max_file_upload_mb * 1024 * 1024}] ;# Maximum File Size for uploads in bytes

	# We explicitly tell the server which SSL contexts to use as defaults when an
	# SSL context is not specified for a particular client or server SSL
	# connection. Driver connections do not use defaults; they must be explicitly
	# specificied in the driver section. The Tcl API will use the defaults as there
	# is currently no provision to specify which SSL context to use for a
	# particular connection via an ns_openssl Tcl command.
	ns_section "ns/server/${server}/module/nsopenssl/sslcontexts"
	ns_param users	"SSL context used for regular user access"
	#	ns_param admins		 "SSL context used for administrator access"
	ns_param client		 "SSL context used for outgoing script socket connections"

	ns_section "ns/server/${server}/module/nsopenssl/defaults"
	ns_param server	users
	ns_param client	client
	
	ns_section "ns/server/${server}/module/nsopenssl/sslcontext/users"
	ns_param Role		server
	ns_param ModuleDir	${serverroot}/etc/certs
	ns_param CertFile	certfile.pem 
	ns_param KeyFile	keyfile.pem
	#	ns_param CADir		ca-client/dir
	#	ns_param CAFile		ca-client/ca-client.crt
	# for Protocols		"ALL" = "SSLv2, SSLv3, TLSv1"
	ns_param Protocols	"SSLv3, TLSv1" 
	ns_param CipherSuite	"ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP" 
	ns_param PeerVerify	false
	ns_param PeerVerifyDepth		 3
	ns_param Trace		false
	
	# following from bartt's nsd4.tcl, might help stablize openssl connections? 
	# http://www.mail-archive.com/aolserver@listserv.aol.com/msg07092.html
	ns_param SessionCache true
	ns_param SessionCacheID 1
	ns_param SessionCacheSize 512
	ns_param SessionCacheTimeout 300


#	ns_section "ns/server/${server}/module/nsopenssl/sslcontext/admins"
	#	ns_param Role		server
	#	ns_param ModuleDir	/path/to/dir
	#	ns_param CertFile	server/server.crt 
	#	ns_param KeyFile	server/server.key 
	#	ns_param CADir		ca-client/dir 
	#	ns_param CAFile		ca-client/ca-client.crt
	# for Protocols		"ALL" = "SSLv2, SSLv3, TLSv1"
	#	ns_param Protocols	"All"
	#	ns_param CipherSuite	"ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP" 
	#	ns_param PeerVerify	false
	#	ns_param PeerVerifyDepth		 3
	#	ns_param Trace		false
	
	ns_section "ns/server/${server}/module/nsopenssl/sslcontext/client"
	ns_param Role		client
	ns_param ModuleDir	${serverroot}/etc/certs
	ns_param CertFile	certfile.pem
	ns_param KeyFile	keyfile.pem 
	#	ns_param CADir		${serverroot}/etc/certs
	#	ns_param CAFile		certfile.pem
	# for Protocols		"ALL" = "SSLv2, SSLv3, TLSv1"
	ns_param Protocols	"SSLv2, SSLv3, TLSv1" 
	ns_param CipherSuite	"ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP" 
	ns_param PeerVerify	false
	ns_param PeerVerifyDepth		 3
	ns_param Trace		false
	
	# following from bartt's nsd4.tcl, might help stablize openssl connections? 
	# http://www.mail-archive.com/aolserver@listserv.aol.com/msg07092.html
	ns_param SessionCache true
	ns_param SessionCacheID 1
	ns_param SessionCacheSize 512
	ns_param SessionCacheTimeout 300

	# SSL drivers. Each driver defines a port to listen on and an explitictly named
	# SSL context to associate with it. Note that you can now have multiple driver
	# connections within a single virtual server, which can be tied to different
	# SSL contexts.
	ns_section "ns/server/${server}/module/nsopenssl/ssldrivers"
	ns_param users	"Driver for regular user access"
	#	ns_param admins	"Driver for administrator access"
	
	ns_section "ns/server/${server}/module/nsopenssl/ssldriver/users"
	ns_param sslcontext	users
	# ns_param port		$httpsport_users
	ns_param port		$httpsport
	ns_param hostname	$hostname
	ns_param address	$address
	# following added per
	# http://www.mail-archive.com/aolserver@listserv.aol.com/msg07365.html
	# Maximum File Size for uploads:
	ns_param	 maxinput	[expr {$max_file_upload_mb * 1024 * 1024}] ;# in bytes
	# Maximum request time
	ns_param	 recvwait	[expr {$max_file_upload_min * 60}] ;# in minutes

#	ns_section "ns/server/${server}/module/nsopenssl/ssldriver/admins"
	#	ns_param sslcontext	admins
	#	ns_param port		$httpsport_admins
	#	ns_param port		$httpsport
	#	ns_param hostname	$hostname
	#	ns_param address	$address
}

#---------------------------------------------------------------------
# 
# Database drivers 
# The database driver is specified here.
# Make sure you have the driver compiled and put it in {aolserverdir}/bin
#
#---------------------------------------------------------------------
ns_section "ns/db/drivers" 
if { $database eq "oracle" } {
	ns_param	 ora8	${bindir}/ora8.so
} else {
	ns_param	 postgres		 ${bindir}/nspostgres.so	;# Load PostgreSQL driver
}

if { $database eq "oracle" } {
	ns_section "ns/db/driver/ora8"
	ns_param	maxStringLogLength -1
	ns_param	LobBufferSize		32768
}

 
# Database Pools: This is how AOLserver	``talks'' to the RDBMS. You need 
# three for OpenACS: main, log, subquery. Make sure to replace ``yourdb'' 
# and ``yourpassword'' with the actual values for your db name and the 
# password for it, if needed.	
#
# AOLserver can have different pools connecting to different databases 
# and even different different database servers.	See
# http://openacs.org/doc/openacs-5-1/tutorial-second-database.html

ns_section ns/db/pools 
	ns_param	 pool1	"Pool 1"
	ns_param	 pool2	"Pool 2"
	ns_param	 pool3	"Pool 3"

ns_section ns/db/pool/pool1
	ns_param	 maxidle	0
	ns_param	 maxopen	0
	ns_param	 connections	15
	ns_param	 verbose	$debug
	ns_param	 extendedtableinfo	true
	ns_param	 logsqlerrors		 $debug
	if { $database eq "oracle" } {
	ns_param	 driver	ora8
	ns_param	 datasource	{}
	ns_param	 user	$db_name
	ns_param	 password	$db_password
	} else {
	ns_param	 driver	postgres 
	ns_param	 datasource	${db_host}:${db_port}:${db_name}
	ns_param	 user	$db_user
	ns_param	 password	""
	} 

ns_section ns/db/pool/pool2
	ns_param	 maxidle	0
	ns_param	 maxopen	0
	ns_param	 connections	5
	ns_param	 verbose	$debug
	ns_param	 extendedtableinfo	true
	ns_param	 logsqlerrors		 $debug
	if { $database eq "oracle" } {
	ns_param	 driver	ora8
	ns_param	 datasource	{}
	ns_param	 user	$db_name
	ns_param	 password	$db_password
	} else {
	ns_param	 driver	postgres 
	ns_param	 datasource	${db_host}:${db_port}:${db_name}
	ns_param	 user	$db_user
	ns_param	 password	""
	} 

ns_section ns/db/pool/pool3
	ns_param	 maxidle	0
	ns_param	 maxopen	0
	ns_param	 connections	5
	ns_param	 verbose	$debug
	ns_param	 extendedtableinfo	true
	ns_param	 logsqlerrors		 $debug
	if { $database eq "oracle" } {
	ns_param	 driver	ora8
	ns_param	 datasource	{}
	ns_param	 user	$db_name
	ns_param	 password	$db_password
	} else {
	ns_param	 driver	postgres 
	ns_param	 datasource	${db_host}:${db_port}:${db_name}
	ns_param	 user	$db_user
	ns_param	 password	""
	} 

ns_section ns/server/${server}/db
	ns_param	 pools	pool1,pool2,pool3
	ns_param	 defaultpool	pool1


#---------------------------------------------------------------------
# which modules should be loaded?	Missing modules break the server, so
# don't uncomment modules unless they have been installed.
ns_section ns/server/${server}/modules 
	ns_param	 nssock	${bindir}/nssock.so 
	ns_param	 nslog	${bindir}/nslog.so 
	ns_param	 nssha1	${bindir}/nssha1.so 
	# since aolserver version 4.5.1 built-in ns_cache, so we dont
	# need to load the nscache module. 
	if {[ns_info version] < 4.5 || [ns_info patchlevel] eq "4.5.0"} {
	ns_param	 nscache	${bindir}/nscache.so 
	}
	# openacs versions earlier than 5.x requires nsxml
#	ns_param nsxml	${bindir}/nsxml.so

	#---------------------------------------------------------------------
	# nsopenssl will fail unless the cert files are present as specified
	# later in this file, so it's disabled by default
#	ns_param	 nsopenssl	${bindir}/nsopenssl.so

	# authorize-gateway package requires dqd_utils
	# ns_param	 dqd_utils dqd_utils[expr {int($tcl_version)}].so

	# Full Text Search
#	ns_param	 nsfts	${bindir}/nsfts.so

	# PAM authentication
#	ns_param	 nspam	${bindir}/nspam.so

	# LDAP authentication
#	ns_param	 nsldap	${bindir}/nsldap.so

	# These modules aren't used in standard OpenACS installs
#	ns_param	 nsperm	${bindir}/nsperm.so 
#	ns_param	 nscgi	${bindir}/nscgi.so 
#	ns_param	 nsjava	${bindir}/libnsjava.so
#	ns_param	 nsrewrite	${bindir}/nsrewrite.so 

	if { [ns_info version] >= 4 } {
	# Required for AOLserver 4.x
	ns_param	 nsdb	${bindir}/nsdb.so
	} else {
	# Required for AOLserver 3.x
	ns_param	 libtdom	${bindir}/libtdom.so
	}

	# nsthread library which should become standard in 5.3
	ns_param libthread	[lindex [glob ${homedir}/lib/thread*/libthread*[info sharedlibextension]] 0]

	if {[ns_info version] >= 4.5} {
	ns_limits set default -maxupload [ns_config ns/server/${server}/module/nssock maxinput]
	}

ns_log notice "nsd.tcl: using threadsafe tcl: [info exists tcl_platform(threaded)]"
ns_log notice "nsd.tcl: finished reading config file."
if {[ns_info version] >= 4.5} {
	ns_limits set default -maxupload [ns_config ns/server/${server}/module/nssock maxinput]
}
