[Spread-users] Spread 3.16.1 released

Jonathan Stanton jonathan at cnds.jhu.edu
Thu Dec 13 10:31:46 EST 2001

I am very happy to announce that Spread 3.16.1 has been released. The
source and binary distribution are available from the Spread website
www.spread.org. The binary distribution includes Linux (redhat 7.1), BSDI
(4.0.1), FreeBSD (4.3), Solaris X86 (2.7), Solaris Sparc (2.6), Irix MIPS
(6.5.4), and Windows. 

The official announcement follows.


Spread is a toolkit that provides a high performance messaging service 
that is resilient to faults across external or internal networks. Spread 
functions as a unified message bus for distributed applications, and 
provides highly tuned application-level multicast and group communication 
support. Spread services range from reliable message passing to fully 
ordered messages with delivery guarantees, even in case of computer 
failures and network partitions.

Spread is designed to encapsulate the challenging aspects of asynchronous 
networks and enable the construction of scalable distributed applications, 
allowing application builders to focus on the differentiating components 
of their application.

A new stable version, 3.16.1, of the Spread toolkit was released today. 
The main focus of this release was bugfixes, stability, and new ports:

1) Fix various races and bugs in the new authentication and access control 
   a) Fix session establishment races with authentication
   b) Add more info for access control hooks to use (mess_type and num_groups)
   c) Fix so rejected messages are not still delivered to local group members.
   d) Make reject messages honor SELF_DISCARD.
   e) Fix bug that always allowed NULL connections.
2) SGI now builds using signed chars and reports errors correctly.
3) MacOSX build fixed. 
4) Fixed race at session establishment that caused the assertion failure
   "assert( xxxxx ) false "
5) Add MAX_MESSAGE_BODY_LEN to spread_params.h (used in sp.c checks), move
   MAX_PACKET_SIZE to spread_params.h from arch.h.
6) Fixed interface restrictions for daemons. 
7) Fixed crashes in user and flooder programs when wrong number of command
   line parameters were passed.
8) Added assertion check for Groups membership message with zero members 
   in a group. (Theo)
9) Java library fixes and enhancements (Thanks to Dan Rall and Leonard
	Richardson )
10) Fix bug in group name validator G_private_to_names that caused crash.
11) Fix for reversed parameters to memset in groups.c (Thanks to Marc Zyngier)
12) Fix bug in session connection that confused closed, but not yet deleted 
    file descriptors with newly accepted connections. (Thanks to 
    Dave Parker for discovering bug).
13) Fix significant memory leak when connections are disconnected. This
    leak has been present since at least 3.15.0. (Thanks to Dave Parker
    for discovering this and providing lots of assistance debugging it.)
14) Fix the binding to specific interfaces to work with broadcast packets. 
    (Thanks to Marc Zyngier for reporting the problem)
15) Updated man pages and Users Guide
16) Added makefile for OpenBSD contributed by Brandon Palmer.
17) Added makefile for Solaris 8 with Solaris cc compiler 6.1 contributed 
    by Luc I. Suryo.

With the Spread Open Source License, the toolkit may be freely 
used under some conditions.  For example, the license includes the 
requirement that all advertising materials (including web pages) 
mentioning software that uses Spread display a specific acknowledgement. 
Please review the license agreement for more details.

Other commercial licenses or other licensing arrangements are available. 
Please contact michal at spreadconcepts.com. We are looking for partners 
interested in using group communication and/or replication to solve 
demanding, real-world problems.

Jonathan R. Stanton         jonathan at cs.jhu.edu
Dept. of Computer Science   
Johns Hopkins University    

More information about the Spread-users mailing list