[Spread-cvs] commit: r303 - in trunk: . daemon docs
jonathan at spread.org
jonathan at spread.org
Mon Feb 20 13:35:36 EST 2006
Author: jonathan
Date: 2006-02-20 13:35:35 -0500 (Mon, 20 Feb 2006)
New Revision: 303
Added:
trunk/docs/TODO
trunk/docs/sample.spread.access_ip
trunk/docs/sample.spread.conf
Removed:
trunk/daemon/TODO
trunk/daemon/sample.spread.access_ip
trunk/daemon/sample.spread.conf
Modified:
trunk/Readme.txt
trunk/configure
trunk/configure.in
trunk/daemon/Makefile.in
trunk/docs/Makefile.in
Log:
Move sample files and TODO list to docs directory.
Revise docs/Makefile.in to install non-manpage documentation into the usual
{prefix}/share/doc/spread/ directory.
Update configure to have --with-docdir option to change the location of installed documentation.
Modified: trunk/Readme.txt
===================================================================
--- trunk/Readme.txt 2006-02-20 18:33:28 UTC (rev 302)
+++ trunk/Readme.txt 2006-02-20 18:35:35 UTC (rev 303)
@@ -3,7 +3,7 @@
/===========================================================================\
| The Spread Group Communication Toolkit. |
-| Copyright (c) 1993-2005 Spread Concepts LLC |
+| Copyright (c) 1993-2006 Spread Concepts LLC |
| All rights reserved. |
| |
| The Spread package is licensed under the Spread Open-Source License. |
Modified: trunk/configure
===================================================================
--- trunk/configure 2006-02-20 18:33:28 UTC (rev 302)
+++ trunk/configure 2006-02-20 18:35:35 UTC (rev 303)
@@ -309,7 +309,7 @@
# include <unistd.h>
#endif"
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS subdirs build build_cpu build_vendor build_os host host_cpu host_vendor host_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP RANLIB ac_ct_RANLIB INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S YACC LEX AR PERL LD THLDFLAGS THLIBS EGREP SP_MAJOR_VERSION SP_MINOR_VERSION SP_PATCH_VERSION NROFF MANTYPE mansubdir piddir SHCC SHCFLAGS SHCPPFLAGS SHLD SHLDFLAGS SHLIBS LIBSPSO LIBSPCORESO LIBTSPCORESO SHLDCONVERTSTATIC SHLDCONVERTSTATICEND LIBOBJS LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS subdirs build build_cpu build_vendor build_os host host_cpu host_vendor host_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP RANLIB ac_ct_RANLIB INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S YACC LEX AR PERL LD THLDFLAGS THLIBS EGREP SP_MAJOR_VERSION SP_MINOR_VERSION SP_PATCH_VERSION NROFF MANTYPE mansubdir piddir docdir SHCC SHCFLAGS SHCPPFLAGS SHLD SHLDFLAGS SHLIBS LIBSPSO LIBSPCORESO LIBTSPCORESO SHLDCONVERTSTATIC SHLDCONVERTSTATICEND LIBOBJS LTLIBOBJS'
ac_subst_files=''
# Initialize some variables set by options.
@@ -852,6 +852,7 @@
--with-libs Specify additional libraries to link with
--with-mantype=man|cat|doc Set man page type
--with-pid-dir=PATH Specify location of spread.pid file
+ --with-docdir=DIR Where to put the documentation
Some influential environment variables:
CC C compiler command
@@ -9015,8 +9016,29 @@
_ACEOF
+# autoconf does not have docdir option, so add one
+# Check whether --with-docdir or --without-docdir was given.
+if test "${with_docdir+set}" = set; then
+ withval="$with_docdir"
+ if test "x$withval" = xyes || test "x$withval" = xno; then
+ docdir='${datadir}/doc/spread'
+ else
+ docdir="$withval"
+ fi
+
+else
+
+ docdir='${datadir}/doc/spread'
+
+
+fi;
+
+
+
+
+
LIBSPSO=none
LIBSPCORESO=none
LIBTSPCORESO=none
@@ -9720,6 +9742,7 @@
s, at MANTYPE@,$MANTYPE,;t t
s, at mansubdir@,$mansubdir,;t t
s, at piddir@,$piddir,;t t
+s, at docdir@,$docdir,;t t
s, at SHCC@,$SHCC,;t t
s, at SHCFLAGS@,$SHCFLAGS,;t t
s, at SHCPPFLAGS@,$SHCPPFLAGS,;t t
@@ -10416,6 +10439,7 @@
Hb=`eval echo ${LIBSPCORESO}`; Hb=`eval echo ${Hb}`
I=`eval echo ${LIBTSPCORESO}`; I=`eval echo ${I}`
J=`eval echo ${includedir}`; J=`eval echo ${J}`
+K=`eval echo ${docdir}`; K=`eval echo ${K}`
echo ""
echo "Spread has been configured with the following options:"
@@ -10428,6 +10452,7 @@
echo "Shared Thread-safe Spread Core Library: $I"
echo " Header files: $J"
echo " Manual pages: $F"
+echo " Documentation: $K"
echo " PID file: $G"
echo " Manpage format: $MANTYPE"
Modified: trunk/configure.in
===================================================================
--- trunk/configure.in 2006-02-20 18:33:28 UTC (rev 302)
+++ trunk/configure.in 2006-02-20 18:35:35 UTC (rev 303)
@@ -661,6 +661,23 @@
AC_DEFINE_UNQUOTED(SPREAD_ETCDIR, "$etcdir")
+# autoconf does not have docdir option, so add one
+AC_ARG_WITH(docdir,
+ [ --with-docdir=DIR Where to put the documentation],
+ [
+ if test "x$withval" = xyes || test "x$withval" = xno; then
+ docdir='${datadir}/doc/spread'
+ else
+ docdir="$withval"
+ fi
+ ],
+ [
+ docdir='${datadir}/doc/spread'
+ ]
+)
+AC_SUBST(docdir)
+
+
AC_EXEEXT
LIBSPSO=none
@@ -728,6 +745,7 @@
Hb=`eval echo ${LIBSPCORESO}`; Hb=`eval echo ${Hb}`
I=`eval echo ${LIBTSPCORESO}`; I=`eval echo ${I}`
J=`eval echo ${includedir}`; J=`eval echo ${J}`
+K=`eval echo ${docdir}`; K=`eval echo ${K}`
echo ""
echo "Spread has been configured with the following options:"
@@ -740,6 +758,7 @@
echo "Shared Thread-safe Spread Core Library: $I"
echo " Header files: $J"
echo " Manual pages: $F"
+echo " Documentation: $K"
echo " PID file: $G"
echo " Manpage format: $MANTYPE"
Modified: trunk/daemon/Makefile.in
===================================================================
--- trunk/daemon/Makefile.in 2006-02-20 18:33:28 UTC (rev 302)
+++ trunk/daemon/Makefile.in 2006-02-20 18:35:35 UTC (rev 303)
@@ -23,12 +23,6 @@
SP_PATCH_VERSION=@SP_PATCH_VERSION@
VERSION=@SP_MAJOR_VERSION at .@SP_MINOR_VERSION at .@SP_PATCH_VERSION@
-#Shared Library version -- Must be changed upon each release
-#Rules: major -- inc for incompatible change
-# : minor -- inc for bugfix or forward compatible change
-
-LIBVERSION=1.0
-
PATHS=
CC=@CC@
@@ -107,7 +101,6 @@
$(buildtoolsdir)/mkinstalldirs ../bin/$(host)
$(INSTALL) -m 0755 -s spmonitor$(EXEEXT) ../bin/$(host)/spmonitor$(EXEEXT)
$(INSTALL) -m 0755 -s spread$(EXEEXT) ../bin/$(host)/spread$(EXEEXT)
- $(INSTALL) -m 644 $(srcdir)/sample.spread.conf ../bin/$(host)/spread.conf
install: $(TARGETS) install-files
@@ -117,18 +110,8 @@
$(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(includedir)
$(INSTALL) -m 0755 -s spmonitor$(EXEEXT) $(DESTDIR)$(bindir)/spmonitor$(EXEEXT)
$(INSTALL) -m 0755 -s spread$(EXEEXT) $(DESTDIR)$(sbindir)/spread$(EXEEXT)
- if [ ! -d $(DESTDIR)$(sysconfdir) ]; then \
- $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(sysconfdir); \
- fi
- if [ ! -f $(DESTDIR)$(sysconfdir)/spread.conf ]; then \
- $(INSTALL) -m 644 $(srcdir)/sample.spread.conf $(DESTDIR)$(sysconfdir)/spread.conf; \
- else \
- echo "$(DESTDIR)$(sysconfdir)/spread.conf already exists, install will not overwrite"; \
- fi
uninstallall: uninstall
- -rm -f $(DESTDIR)$(sysconfdir)/spread.conf
- -rmdir $(DESTDIR)$(sysconfdir)
-rmdir $(DESTDIR)$(bindir)
-rmdir $(DESTDIR)$(sbindir)
Deleted: trunk/daemon/TODO
===================================================================
--- trunk/daemon/TODO 2006-02-20 18:33:28 UTC (rev 302)
+++ trunk/daemon/TODO 2006-02-20 18:35:35 UTC (rev 303)
@@ -1,21 +0,0 @@
-Features, ideas, and other things that might get done.
-Those ending with (*break) break binary,source or client-server compatability
-------------------------------------------------------
-* Improve stability under high load
-
-* Change max buffered message limit to be not just num messages, but also size, or other parameters.
-* Make this runtime configurable.
-
-* Fix partial DOS when someone connects and doesn't send anything (the 1 second delay)
-* Merge cleanup of session layer from research branch
-
-* Once ses ids are non-volatile (fix for session_index on windows) have group
- struct store ses instead of mbox and then just copy it once in
- G_analize_group instead of O(Gsize) Sess_get_session_index() calls.
-
-* Make various binary packages available (rpm, deb, pkg, ...)
-
-* Figure out hanging bug with max ARU window reported by Tom Mornini & co.
-* Decide what to do with multipath patch from Marc Zyngier
-
-* Add Yair's fix for delayed tokens. (*break)
Deleted: trunk/daemon/sample.spread.access_ip
===================================================================
--- trunk/daemon/sample.spread.access_ip 2006-02-20 18:33:28 UTC (rev 302)
+++ trunk/daemon/sample.spread.access_ip 2006-02-20 18:35:35 UTC (rev 303)
@@ -1,23 +0,0 @@
-# This is the configuration file for IP restricted access to a Spread daemon.
-# Each line represents an allowed IP address or network address
-# The keywords "unix" and "local" can be used to allow connections from
-# Unix Domain Sockets and localhost TCP connections respectively.
-#
-# So a sample file which only allowed local connections would be as shown
-# below (but with the comment '#' characters removed.
-#
-#unix
-#local
-#
-# A file allowing access from local clients and clients on a
-# private network with addresses from 192.168.1.0 to 192.168.1.255 would be:
-#
-#unix
-#local
-#192.168.1.0/24
-#
-#
-# This format follows standard network address formatting where the
-# IPv4 network address is followed by a '/' and the number of bits which
-# make up the network portion of the IP address. A '/24' corresponds
-# with what used to be called a "Class C" address and a '/16' with a "Class B".
Deleted: trunk/daemon/sample.spread.conf
===================================================================
--- trunk/daemon/sample.spread.conf 2006-02-20 18:33:28 UTC (rev 302)
+++ trunk/daemon/sample.spread.conf 2006-02-20 18:35:35 UTC (rev 303)
@@ -1,210 +0,0 @@
-# Blank lines are permitted in this file.
-# spread.conf sample file
-#
-# questions to spread at spread.org
-#
-
-#MINIMAL REQUIRED FILE
-#
-# Spread should work fine on one machine with just the uncommented
-# lines below. The rest of the file documents all the options and
-# more complex network setups.
-#
-# This configures one spread daemon running on port 4803 on localhost.
-
-Spread_Segment 127.0.0.255:4803 {
-
- localhost 127.0.0.1
-}
-
-
-
-
-# Spread options
-#---------------------------------------------------------------------------
-#---------------------------------------------------------------------------
-#Set what internal Spread events are logged to the screen or file
-# (see EventLogFile).
-# Default setting is to enable PRINT and EXIT events only.
-#The PRINT and EXIT types should always be enabled. The names of others are:
-# EXIT PRINT DEBUG DATA_LINK NETWORK PROTOCOL SESSION
-# CONFIGURATION MEMBERSHIP FLOW_CONTROL STATUS EVENTS
-# GROUPS MEMORY SKIPLIST ALL NONE
-# ALL and NONE are special and represent either enabling every type
-# or enabling none of them.
-# You can also use a "!" sign to negate a type,
-# so { ALL !DATA_LINK } means log all events except data_link ones.
-
-#DebugFlags = { PRINT EXIT }
-
-# Set priority level of events to output to log file or screen
-# The possible levels are:
-# pDEBUG INFO WARNING ERROR CRITICAL FATAL
-# Once selected all events tagged with that priority or higher will
-# be output. FATAL events are always output and cause the daemon to
-# shut down. Some Events are tagged with a priority of PRINT which
-# causes them to print out no matter what priority level is set.
-#
-# The default level used if nothing is set is INFO.
-
-#EventPriority = { INFO }
-
-#Set whether to log to a file as opposed to stdout/stderr and what
-# file to log to.
-# Default is to log to stdout.
-#
-#If option is not set then logging is to stdout.
-#If option is set then logging is to the filename specified.
-# The filename can include a %h or %H escape that will be replaced at runtime
-# by the hostname of the machine upon which the daemon is running.
-# For example "EventLogFile = spreadlog_%h.log" with 2 machines
-# running Spread (machine1.mydomain.com and machine2.mydomain.com) will
-# cause the daemons to log to "spreadlog_machine1.mydomain.com.log" and
-# "spreadlog_machine2.mydomain.com.log" respectively.
-
-#EventLogFile = testlog.out
-
-#Set whether to add a timestamp in front of all logged events or not.
-# Default is no timestamps. Default format is "[%a %d %b %Y %H:%M:%S]".
-#If option is commented out then no timestamp is added.
-#If option is enabled then a timestamp is added with the default format
-#If option is enabled and set equal to a string, then that string is used
-# as the format string for the timestamp. The string must be a valid time
-# format string as used by the strftime() function.
-
-#EventTimeStamp
-# or
-#EventTimeStamp = "[%a %d %b %Y %H:%M:%S]"
-
-#Set whether to allow dangerous monitor commands
-# like "partition, flow_control, or kill"
-# Default setting is FALSE.
-#If option is set to false then only "safe" monitor commands are allowed
-# (such as requesting a status update).
-#If option is set to true then all monitor commands are enabled.
-# THIS IS A SECURTIY RISK IF YOUR NETWORK IS NOT PROTECTED!
-
-#DangerousMonitor = false
-
-#Set handling of SO_REUSEADDR socket option for the daemon's TCP
-# listener. This is useful for facilitating quick daemon restarts (OSes
-# often hold onto the interface/port combination for a short period of time
-# after daemon shut down).
-#
-# AUTO - Active when bound to specific interfaces (default).
-# ON - Always active, regardless of interface.
-# SECURITY RISK FOR ANY OS WHICH ALLOW DOUBLE BINDS BY DIFFERENT USERS
-# OFF - Always off.
-
-#SocketPortReuse = AUTO
-
-#Sets the runtime directory used when the Spread daemon is run as root
-# as the directory to chroot to. Defaults to the value of the
-# compile-time preprocessor define SP_RUNTIME_DIR, which is generally
-# "/var/run/spread".
-
-#RuntimeDir = /var/run/spread
-
-#Sets the unix user that the Spread daemon runs as (when launched as
-# the "root" user). Not effective on a Windows system. Defaults to
-# the user and group "spread".
-
-#DaemonUser = spread
-#DaemonGroup = spread
-
-
-#Set the list of authentication methods that the daemon will allow
-# and those which are required in all cases.
-# All of the methods listed in "RequiredAuthMethods" will be checked,
-# irregardless of what methods the client chooses.
-# Of the methods listed is "AllowedAuthMethods" the client is
-# permitted to choose one or more, and all the ones the client chooses
-# will also be checked.
-#
-# To support older clients, if NULL is enabled, then older clients can
-# connect without any authentication. Any methods which do not require
-# any interaction with the client (such as IP) can also be enabled
-# for older clients. If you enable methods that require interaction,
-# then essentially all older clients will be locked out.
-#
-#The current choices are:
-# NULL for default, allow anyone authentication
-# IP for IP based checks using the spread.access_ip file
-
-#RequiredAuthMethods = " "
-#AllowedAuthMethods = "NULL"
-
-#Set the current access control policy.
-# This is only needed if you want to establish a customized policy.
-# The default policy is to allow any actions by authenticated clients.
-#AccessControlPolicy = "PERMIT"
-
-
-# network description line.
-# Spread_Segment <multicast address for subnet> <port> {
-# port is optional, if not specified the default 4803 port is used.
-
-#Spread_Segment 127.0.0.255:4803 {
-
-# either a name or IP address. If both are given, than the name is taken
-# as-is, and the IP address is used for that name.
-
-# localhost 127.0.0.1
-#}
-# repeat for next sub-network
-
-#Spread_Segment x.2.2.255 {
-
-# other1 128.2.2.10
-# 128.2.2.11
-# other3.my.com
-#}
-# Spread will feel free to use broadcast messages within a sub-network.
-# if you do not want this to happen, you should specify your machines on
-# different logical sub-networks.
-
-# IP-Multicast addresses can also be used as the multicast address for
-# the logical sub-network as in this example. If IP-multicast is supported
-# by the operating system, then the messages will only be received
-# by those machines who are in the group and not by all others in the same
-# sub-network as happens with broadcast addresses
-
-#Spread_Segment 225.0.1.1:3333 {
-# mcast1 1.2.3.4
-# mcast2 1.2.3.6
-#}
-
-# Multi-homed host setup
-#
-# If you run Spread on hosts with multiple interfaces you may want to
-# control which interfaces Spread uses for client connections and for
-# the daemon-to-daemon (and monitor control) messages. This can be done
-# by adding an extra stanza to each configured machine.
-#
-#Sample:
-#
-#Spread_Segment 225.0.1.1 {
-# multihomed1 1.2.3.4 {
-# D 192.168.0.4
-# C 1.2.3.4 }
-# multihomed2 1.2.3.5 {
-# D 192.168.0.5
-# C 1.2.3.5
-# C 127.0.0.1 }
-# multihomed3 1.2.3.6 {
-# 192.168.0.6
-# 1.2.3.6 }
-#}
-# This configuration sets up three multihomed machines into a Spread segment.
-# The first host has a 'main' IP address of 1.2.3.4 and listens for client
-# connections only on that interface. All daemon-to-daemon UDP multicasts and
-# the tokens and any monitor messages must use the 192.168.0.4 interface.
-# The second host multihomed2 has a similar setup, except it also listens for
-# client connections on the localhost interface as well as the 1.2.3.5 interface.
-# If you make any use of the extra interface stanza ( a { } block ) then you must
-# explicitly configure ALL interfaces you want as Spread removes all defaults when
-# you use the explicit notation.
-# The third multihomed3 host uses a shorthand form of omitting the D or C option and
-# just listening for all types of traffic and events on both the 192.168.0 and 1.2.3
-# networks. If no letter is listed before the interface address then ALL types of
-# events are handled on that interface.
Modified: trunk/docs/Makefile.in
===================================================================
--- trunk/docs/Makefile.in 2006-02-20 18:33:28 UTC (rev 302)
+++ trunk/docs/Makefile.in 2006-02-20 18:35:35 UTC (rev 303)
@@ -9,6 +9,9 @@
mandir=@mandir@
mansubdir=@mansubdir@
sysconfdir=@sysconfdir@
+datarootdir=@datarootdir@
+datadir=@datadir@
+docdir=@docdir@
piddir=@piddir@
srcdir=@srcdir@
top_srcdir=@top_srcdir@
@@ -17,7 +20,6 @@
DESTDIR=
VPATH=@srcdir@
-
PATHS=
INSTALL=@INSTALL@
@@ -29,6 +31,8 @@
PAGENAMES = connect disconnect equal_group_ids error get_first_vs_set_offset_memb_mess get_gid_offset_memb_mess get_local_vs_set_offset_memb_mess get_local_vs_set_offset_memb_scat get_num_vs_sets_offset_memb_mess get_vs_set_members_offset_vs_set get_vs_set_size_offset_vs_set join leave multicast multigroup_multicast multigroup_scat_multicast poll receive scat_multicast scat_receive
+DOCFILES = DynamicConfiguration.txt MultithreadedClients.txt PORTING Short_Buffer_Handling.txt Win32BuildInstructions.pdf TODO
+
MANTYPE = @MANTYPE@
PATHSUBS = \
@@ -73,9 +77,9 @@
distprep: catman-do
autoreconf
-install: install-files
+install: install-files install-man
-install-files:
+install-man:
$(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(mandir)
$(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(mandir)/$(mansubdir)1
$(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(mandir)/$(mansubdir)3
@@ -93,6 +97,15 @@
do \
$(INSTALL) -m 644 $(srcdir)/flush/man/FL_$$page.3 $(DESTDIR)$(mandir)/$(mansubdir)3/FL_$$page.3; \
done
+
+install-files:
+ $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(docdir)
+ for docfile in $(DOCFILES); \
+ do \
+ $(INSTALL) -m 644 $(srcdir)/$$docfile $(DESTDIR)$(docdir)/$$docfile; \
+ done
+ $(INSTALL) -m 644 $(srcdir)/../Readme.txt $(DESTDIR)$(docdir)/Readme.txt;
+ $(INSTALL) -m 644 $(srcdir)/../license.txt $(DESTDIR)$(docdir)/license.txt;
if [ ! -d $(DESTDIR)$(sysconfdir) ]; then \
$(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(sysconfdir); \
fi
@@ -103,6 +116,9 @@
fi
uninstallall: uninstall
+ -rm -f $(DESTDIR)$(sysconfdir)/spread.conf
+ -rmdir $(DESTDIR)$(sysconfdir)
+ -rmdir $(DESTDIR)$(docdir)
-rmdir $(DESTDIR)$(mandir)/$(mansubdir)1
-rmdir $(DESTDIR)$(mandir)/$(mansubdir)3
-rmdir $(DESTDIR)$(mandir)
@@ -116,3 +132,9 @@
-rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/sptuser.1
-rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/spflooder.1
-rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/spmonitor.1
+ for docfile in $(DOCFILES); \
+ do \
+ -rm -f $(DESTDIR)$(docdir)/$$docfile; \
+ done
+ -rm -f $(DESTDIR)$(docdir)/Readme.txt
+ -rm -f $(DESTDIR)$(docdir)/license.txt
Copied: trunk/docs/TODO (from rev 300, trunk/daemon/TODO)
===================================================================
--- trunk/docs/TODO (rev 0)
+++ trunk/docs/TODO 2006-02-20 18:35:35 UTC (rev 303)
@@ -0,0 +1,21 @@
+Features, ideas, and other things that might get done.
+Those ending with (*break) break binary,source or client-server compatability
+------------------------------------------------------
+* Improve stability under high load
+
+* Change max buffered message limit to be not just num messages, but also size, or other parameters.
+* Make this runtime configurable.
+
+* Fix partial DOS when someone connects and doesn't send anything (the 1 second delay)
+* Merge cleanup of session layer from research branch
+
+* Once ses ids are non-volatile (fix for session_index on windows) have group
+ struct store ses instead of mbox and then just copy it once in
+ G_analize_group instead of O(Gsize) Sess_get_session_index() calls.
+
+* Make various binary packages available (rpm, deb, pkg, ...)
+
+* Figure out hanging bug with max ARU window reported by Tom Mornini & co.
+* Decide what to do with multipath patch from Marc Zyngier
+
+* Add Yair's fix for delayed tokens. (*break)
Copied: trunk/docs/sample.spread.access_ip (from rev 300, trunk/daemon/sample.spread.access_ip)
===================================================================
--- trunk/docs/sample.spread.access_ip (rev 0)
+++ trunk/docs/sample.spread.access_ip 2006-02-20 18:35:35 UTC (rev 303)
@@ -0,0 +1,23 @@
+# This is the configuration file for IP restricted access to a Spread daemon.
+# Each line represents an allowed IP address or network address
+# The keywords "unix" and "local" can be used to allow connections from
+# Unix Domain Sockets and localhost TCP connections respectively.
+#
+# So a sample file which only allowed local connections would be as shown
+# below (but with the comment '#' characters removed.
+#
+#unix
+#local
+#
+# A file allowing access from local clients and clients on a
+# private network with addresses from 192.168.1.0 to 192.168.1.255 would be:
+#
+#unix
+#local
+#192.168.1.0/24
+#
+#
+# This format follows standard network address formatting where the
+# IPv4 network address is followed by a '/' and the number of bits which
+# make up the network portion of the IP address. A '/24' corresponds
+# with what used to be called a "Class C" address and a '/16' with a "Class B".
Copied: trunk/docs/sample.spread.conf (from rev 300, trunk/daemon/sample.spread.conf)
===================================================================
--- trunk/docs/sample.spread.conf (rev 0)
+++ trunk/docs/sample.spread.conf 2006-02-20 18:35:35 UTC (rev 303)
@@ -0,0 +1,210 @@
+# Blank lines are permitted in this file.
+# spread.conf sample file
+#
+# questions to spread at spread.org
+#
+
+#MINIMAL REQUIRED FILE
+#
+# Spread should work fine on one machine with just the uncommented
+# lines below. The rest of the file documents all the options and
+# more complex network setups.
+#
+# This configures one spread daemon running on port 4803 on localhost.
+
+Spread_Segment 127.0.0.255:4803 {
+
+ localhost 127.0.0.1
+}
+
+
+
+
+# Spread options
+#---------------------------------------------------------------------------
+#---------------------------------------------------------------------------
+#Set what internal Spread events are logged to the screen or file
+# (see EventLogFile).
+# Default setting is to enable PRINT and EXIT events only.
+#The PRINT and EXIT types should always be enabled. The names of others are:
+# EXIT PRINT DEBUG DATA_LINK NETWORK PROTOCOL SESSION
+# CONFIGURATION MEMBERSHIP FLOW_CONTROL STATUS EVENTS
+# GROUPS MEMORY SKIPLIST ALL NONE
+# ALL and NONE are special and represent either enabling every type
+# or enabling none of them.
+# You can also use a "!" sign to negate a type,
+# so { ALL !DATA_LINK } means log all events except data_link ones.
+
+#DebugFlags = { PRINT EXIT }
+
+# Set priority level of events to output to log file or screen
+# The possible levels are:
+# pDEBUG INFO WARNING ERROR CRITICAL FATAL
+# Once selected all events tagged with that priority or higher will
+# be output. FATAL events are always output and cause the daemon to
+# shut down. Some Events are tagged with a priority of PRINT which
+# causes them to print out no matter what priority level is set.
+#
+# The default level used if nothing is set is INFO.
+
+#EventPriority = { INFO }
+
+#Set whether to log to a file as opposed to stdout/stderr and what
+# file to log to.
+# Default is to log to stdout.
+#
+#If option is not set then logging is to stdout.
+#If option is set then logging is to the filename specified.
+# The filename can include a %h or %H escape that will be replaced at runtime
+# by the hostname of the machine upon which the daemon is running.
+# For example "EventLogFile = spreadlog_%h.log" with 2 machines
+# running Spread (machine1.mydomain.com and machine2.mydomain.com) will
+# cause the daemons to log to "spreadlog_machine1.mydomain.com.log" and
+# "spreadlog_machine2.mydomain.com.log" respectively.
+
+#EventLogFile = testlog.out
+
+#Set whether to add a timestamp in front of all logged events or not.
+# Default is no timestamps. Default format is "[%a %d %b %Y %H:%M:%S]".
+#If option is commented out then no timestamp is added.
+#If option is enabled then a timestamp is added with the default format
+#If option is enabled and set equal to a string, then that string is used
+# as the format string for the timestamp. The string must be a valid time
+# format string as used by the strftime() function.
+
+#EventTimeStamp
+# or
+#EventTimeStamp = "[%a %d %b %Y %H:%M:%S]"
+
+#Set whether to allow dangerous monitor commands
+# like "partition, flow_control, or kill"
+# Default setting is FALSE.
+#If option is set to false then only "safe" monitor commands are allowed
+# (such as requesting a status update).
+#If option is set to true then all monitor commands are enabled.
+# THIS IS A SECURTIY RISK IF YOUR NETWORK IS NOT PROTECTED!
+
+#DangerousMonitor = false
+
+#Set handling of SO_REUSEADDR socket option for the daemon's TCP
+# listener. This is useful for facilitating quick daemon restarts (OSes
+# often hold onto the interface/port combination for a short period of time
+# after daemon shut down).
+#
+# AUTO - Active when bound to specific interfaces (default).
+# ON - Always active, regardless of interface.
+# SECURITY RISK FOR ANY OS WHICH ALLOW DOUBLE BINDS BY DIFFERENT USERS
+# OFF - Always off.
+
+#SocketPortReuse = AUTO
+
+#Sets the runtime directory used when the Spread daemon is run as root
+# as the directory to chroot to. Defaults to the value of the
+# compile-time preprocessor define SP_RUNTIME_DIR, which is generally
+# "/var/run/spread".
+
+#RuntimeDir = /var/run/spread
+
+#Sets the unix user that the Spread daemon runs as (when launched as
+# the "root" user). Not effective on a Windows system. Defaults to
+# the user and group "spread".
+
+#DaemonUser = spread
+#DaemonGroup = spread
+
+
+#Set the list of authentication methods that the daemon will allow
+# and those which are required in all cases.
+# All of the methods listed in "RequiredAuthMethods" will be checked,
+# irregardless of what methods the client chooses.
+# Of the methods listed is "AllowedAuthMethods" the client is
+# permitted to choose one or more, and all the ones the client chooses
+# will also be checked.
+#
+# To support older clients, if NULL is enabled, then older clients can
+# connect without any authentication. Any methods which do not require
+# any interaction with the client (such as IP) can also be enabled
+# for older clients. If you enable methods that require interaction,
+# then essentially all older clients will be locked out.
+#
+#The current choices are:
+# NULL for default, allow anyone authentication
+# IP for IP based checks using the spread.access_ip file
+
+#RequiredAuthMethods = " "
+#AllowedAuthMethods = "NULL"
+
+#Set the current access control policy.
+# This is only needed if you want to establish a customized policy.
+# The default policy is to allow any actions by authenticated clients.
+#AccessControlPolicy = "PERMIT"
+
+
+# network description line.
+# Spread_Segment <multicast address for subnet> <port> {
+# port is optional, if not specified the default 4803 port is used.
+
+#Spread_Segment 127.0.0.255:4803 {
+
+# either a name or IP address. If both are given, than the name is taken
+# as-is, and the IP address is used for that name.
+
+# localhost 127.0.0.1
+#}
+# repeat for next sub-network
+
+#Spread_Segment x.2.2.255 {
+
+# other1 128.2.2.10
+# 128.2.2.11
+# other3.my.com
+#}
+# Spread will feel free to use broadcast messages within a sub-network.
+# if you do not want this to happen, you should specify your machines on
+# different logical sub-networks.
+
+# IP-Multicast addresses can also be used as the multicast address for
+# the logical sub-network as in this example. If IP-multicast is supported
+# by the operating system, then the messages will only be received
+# by those machines who are in the group and not by all others in the same
+# sub-network as happens with broadcast addresses
+
+#Spread_Segment 225.0.1.1:3333 {
+# mcast1 1.2.3.4
+# mcast2 1.2.3.6
+#}
+
+# Multi-homed host setup
+#
+# If you run Spread on hosts with multiple interfaces you may want to
+# control which interfaces Spread uses for client connections and for
+# the daemon-to-daemon (and monitor control) messages. This can be done
+# by adding an extra stanza to each configured machine.
+#
+#Sample:
+#
+#Spread_Segment 225.0.1.1 {
+# multihomed1 1.2.3.4 {
+# D 192.168.0.4
+# C 1.2.3.4 }
+# multihomed2 1.2.3.5 {
+# D 192.168.0.5
+# C 1.2.3.5
+# C 127.0.0.1 }
+# multihomed3 1.2.3.6 {
+# 192.168.0.6
+# 1.2.3.6 }
+#}
+# This configuration sets up three multihomed machines into a Spread segment.
+# The first host has a 'main' IP address of 1.2.3.4 and listens for client
+# connections only on that interface. All daemon-to-daemon UDP multicasts and
+# the tokens and any monitor messages must use the 192.168.0.4 interface.
+# The second host multihomed2 has a similar setup, except it also listens for
+# client connections on the localhost interface as well as the 1.2.3.5 interface.
+# If you make any use of the extra interface stanza ( a { } block ) then you must
+# explicitly configure ALL interfaces you want as Spread removes all defaults when
+# you use the explicit notation.
+# The third multihomed3 host uses a shorthand form of omitting the D or C option and
+# just listening for all types of traffic and events on both the 192.168.0 and 1.2.3
+# networks. If no letter is listed before the interface address then ALL types of
+# events are handled on that interface.
More information about the Spread-cvs
mailing list