#############################
# Server to deploy Services #
#############################
#Only one server can be used at a given time
#Also APACHE_HOME, APACHE2_HOME (simple axis server needs no environment settings) environment 
#variables should be set accordingly

server.apache1=false
server.apache2=true
server.simpleaxisserver=true

#############################
# Secure Channel Properties #
#############################

HTTP.SSLChannel = true

########################################
# Location of gpg keys and databases   #
########################################
gpgdir=~/.gnupg

# Prefix and suffix used for executables and libraries
# Typical values are:
#   For windows:
#		executableSuffix = .exe
#		librarySuffix = .dll
#		libraryPrefix = 
#	For unix:
#		executableSuffix = 
#		librarySuffix = .so
#		libraryPrefix = lib
#	For AIX (as Unix, except):
#		librarySuffix = .a
executableSuffix = 
librarySuffix = .so
libraryPrefix = lib
