--- spread-3.17.3.orig/Makefile.in +++ spread-3.17.3/Makefile.in @@ -26,7 +26,8 @@ #Rules: major -- inc for incompatible change # : minor -- inc for bugfix or forward compatible change -LIBVERSION=1.0 +LIBVERSION=1.0.0 +LIBMAJOR=1 PATHS= @@ -128,7 +129,7 @@ (cd $(DESTDIR)$(libdir); $(SOFTLINK) -f libspread.$(LIBVERSION).dylib libspread.dylib) libspread.so: $(LIBSP_SHOBJS) - $(SHLD) -o $@ $(LIBSP_SHOBJS) $(SHLDFLAGS) $(SHLIBS) + $(SHLD) -o $@ $(LIBSP_SHOBJS) -Wl,-soname,$@.$(LIBMAJOR) $(SHLDFLAGS) $(SHLIBS) install-libspread.so: libspread.so $(INSTALL) -m 0755 libspread.so $(DESTDIR)$(libdir)/libspread.so.$(LIBVERSION) @@ -147,7 +148,7 @@ (cd $(DESTDIR)$(libdir); $(SOFTLINK) -f libtspread.$(LIBVERSION).dylib libtspread.dylib) libtspread.so: $(LIBTSP_SHOBJS) - $(SHLD) -o $@ $(LIBTSP_SHOBJS) $(SHLDFLAGS) $(SHLIBS) $(THLIBS) + $(SHLD) -o $@ $(LIBTSP_SHOBJS) -Wl,-soname,$@.$(LIBMAJOR) $(SHLDFLAGS) $(SHLIBS) $(THLIBS) install-libtspread.so: libtspread.so $(INSTALL) -m 0755 libtspread.so $(DESTDIR)$(libdir)/libtspread.so.$(LIBVERSION) --- spread-3.17.3.orig/perl/Spread/Makefile.PL +++ spread-3.17.3/perl/Spread/Makefile.PL @@ -3,6 +3,7 @@ use Config ; $SPLIB_LIB = '-L../.. -L../spread-src-3.17.0/' ; +#$SPLIB_LIB = ''; $SPLIB_INCLUDE = '-I ../.. -I ../spread-src-3.17.0/' ; WriteMakefile( @@ -12,4 +13,5 @@ INC => " $SPLIB_INCLUDE" , dist => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', }, + dynamic_lib => { OTHERLDFLAGS => '-L../..' } ); --- spread-3.17.3.orig/sp.c +++ spread-3.17.3/sp.c @@ -554,7 +554,7 @@ host_address = ( (i1 << 24 ) | (i2 << 16 ) | (i3 << 8) | i4 ); } } - if( lport < 0 || lport >= 32*1024 ) return( ILLEGAL_SPREAD ); + if( lport < 0 || lport >= 64*1024 ) return( ILLEGAL_SPREAD ); port = lport; if( p == AF_INET ) { --- spread-3.17.3.orig/debian/spread.logrotate +++ spread-3.17.3/debian/spread.logrotate @@ -0,0 +1,9 @@ +/var/log/spread.log { + weekly + rotate 4 + # Don't change the next line unless you know what you're doing + copytruncate + missingok + compress + notifempty +} --- spread-3.17.3.orig/debian/libspread1.links +++ spread-3.17.3/debian/libspread1.links @@ -0,0 +1,2 @@ +/usr/lib/libspread.so.1.0.0 /usr/lib/libspread.so.1 +/usr/lib/libtspread.so.1.0.0 /usr/lib/libtspread.so.1 --- spread-3.17.3.orig/debian/spread.init +++ spread-3.17.3/debian/spread.init @@ -0,0 +1,73 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: spread +# Required-Start: $local_fs +# Required-Stop: $local_fs +# Default-Start: 2 3 4 5 +# Default-Stop: S 0 1 6 +# Short-Description: The Spread messaging daemon +# Description: Debian init script for spread +### END INIT INFO + + +# Spread init script +# June 2003 +# Eric Dorland + +# Based on spamassassin init script + +PATH=/sbin:/bin:/usr/sbin:/usr/bin +DAEMON=/usr/sbin/spread +NAME=spread +SNAME=spread +DESC="Spread Messaging Daemon" +PIDFILE="/var/run/$NAME/$NAME.pid" +PNAME="spread" +DOPTIONS="-c /etc/spread.conf" + +# Defaults - don't touch, edit /etc/default/spread +ENABLED=0 +OPTIONS="" + +test -x $DAEMON || exit 0 + +test -f /etc/default/spread && . /etc/default/spread + +test "$ENABLED" != "0" || exit 0 + +test -d `dirname $PIDFILE` || mkdir -p `dirname $PIDFILE` + +case "$1" in + start) + echo -n "Starting $DESC: " + start-stop-daemon --start --make-pidfile --pidfile $PIDFILE \ + --name $PNAME --oknodo --background --startas $DAEMON \ + -- $OPTIONS $DOPTIONS + + echo "$NAME." + ;; + stop) + echo -n "Stopping $DESC: " + + start-stop-daemon --stop --pidfile $PIDFILE --name $PNAME --oknodo + + echo "$NAME." + ;; + restart|force-reload) + echo -n "Restarting $DESC: " + start-stop-daemon --stop --pidfile $PIDFILE --name $PNAME \ + --retry 5 --oknodo + start-stop-daemon --start --make-pidfile --pidfile $PIDFILE \ + --name $PNAME --oknodo --background --startas $DAEMON \ + -- $OPTIONS $DOPTIONS + + echo "$NAME." + ;; + *) + N=/etc/init.d/$SNAME + echo "Usage: $N {start|stop|restart|force-reload}" >&2 + exit 1 + ;; +esac + +exit 0 --- spread-3.17.3.orig/debian/libspread-perl.install +++ spread-3.17.3/debian/libspread-perl.install @@ -0,0 +1,2 @@ +debian/tmp/usr/lib/perl5/* usr/lib/perl5/ +debian/tmp/usr/share/man/man3/*pm usr/share/man/man3 --- spread-3.17.3.orig/debian/spread.README.Debian +++ spread-3.17.3/debian/spread.README.Debian @@ -0,0 +1,13 @@ +Notes for spread +---------------- + +Spread can be complex to configure and a security risk (although this +is mitigated since it drops it's privileges and chroot's itself), so +it is disabled by default. To enable it, edit the file +/etc/default/spread and change: + +ENABLED=0 + +to + +ENABLED=1 --- spread-3.17.3.orig/debian/copyright +++ spread-3.17.3/debian/copyright @@ -0,0 +1,79 @@ +This package was debianized by Eric Dorland on +Sun, 08 Jun 2003 14:57:33 -0400. + +It was downloaded from http://www.spread.org/ + +Upstream Authors: Yair Amir yairamir@cs.jhu.edu + Michal Miskin-Amir michal@spreadconcepts.com + Jonathan Stanton jonathan@cs.jhu.edu + +Copyright: + +Version 1.0 +June 26, 2001 + +Copyright (c) 1993-2001 Spread Concepts LLC. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +1. Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer and +request. + +2. Redistributions in binary form must reproduce the above copyright +notice, this list of conditions and the following disclaimer and +request in the documentation and/or other materials provided with the +distribution. + +3. All advertising materials (including web pages) mentioning features +or use of this software, or software that uses this software, must +display the following acknowledgment: "This product uses software +developed by Spread Concepts LLC for use in the Spread toolkit. For +more information about Spread see http://www.spread.org" + +4. The names "Spread" or "Spread toolkit" must not be used to endorse +or promote products derived from this software without prior written +permission. + +5. Redistributions of any form whatsoever must retain the following +acknowledgment: "This product uses software developed by Spread +Concepts LLC for use in the Spread toolkit. For more information about +Spread, see http://www.spread.org" + +6. This license shall be governed by and construed and enforced in +accordance with the laws of the State of Maryland, without reference +to its conflicts of law provisions. The exclusive jurisdiction and +venue for all legal actions relating to this license shall be in +courts of competent subject matter jurisdiction located in the State +of Maryland. + +TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, SPREAD IS PROVIDED +UNDER THIS LICENSE ON AN AS IS BASIS, WITHOUT WARRANTY OF ANY KIND, +EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES +THAT SPREAD IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR +PURPOSE OR NON-INFRINGING. ALL WARRANTIES ARE DISCLAIMED AND THE +ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE CODE IS WITH +YOU. SHOULD ANY CODE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE +COPYRIGHT HOLDER OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF ANY +NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY +CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY CODE IS +AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER. + +TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL +THE COPYRIGHT HOLDER OR ANY OTHER CONTRIBUTOR BE LIABLE FOR ANY +SPECIAL, INCIDENTAL, INDIRECT, OR CONSEQUENTIAL DAMAGES FOR LOSS OF +PROFITS, REVENUE, OR FOR LOSS OF INFORMATION OR ANY OTHER LOSS. + +YOU EXPRESSLY AGREE TO FOREVER INDEMNIFY, DEFEND AND HOLD HARMLESS THE +COPYRIGHT HOLDERS AND CONTRIBUTORS OF SPREAD AGAINST ALL CLAIMS, +DEMANDS, SUITS OR OTHER ACTIONS ARISING DIRECTLY OR INDIRECTLY FROM +YOUR ACCEPTANCE AND USE OF SPREAD. + +Although NOT REQUIRED, we at Spread Concepts would appreciate it if +active users of Spread put a link on their web site to Spread's web +site when possible. We also encourage users to let us know who they +are, how they are using Spread, and any comments they have through +either e-mail (spread@spread.org) or our web site at +(http://www.spread.org/comments). --- spread-3.17.3.orig/debian/libspread1-dev.manpages +++ spread-3.17.3/debian/libspread1-dev.manpages @@ -0,0 +1 @@ +docs/*.3 --- spread-3.17.3.orig/debian/spread.dirs +++ spread-3.17.3/debian/spread.dirs @@ -0,0 +1,3 @@ +/var/log +/var/run/spread +/etc/spread --- spread-3.17.3.orig/debian/spread.conf +++ spread-3.17.3/debian/spread.conf @@ -0,0 +1,202 @@ +# Blank lines are permitted in this file. +# spread.conf sample file +# +# questions to spread@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 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. + +# Do not change this value unless you know what your doing, doing so +# may cause spread to stop from lauching. ED 09/06/2003 +EventLogFile = /var/log/spread.log + +#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]" + +EventTimeStamp + +#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 { +# 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. --- spread-3.17.3.orig/debian/changelog +++ spread-3.17.3/debian/changelog @@ -0,0 +1,159 @@ +spread (3.17.3-5ubuntu1) feisty; urgency=low + + * Merge from debian unstable: /var/run/spread created by the init script if + it does not exist. + + -- Jeremie Corbier Fri, 17 Nov 2006 20:14:50 -0800 + +spread (3.17.3-5) unstable; urgency=low + + * debian/spread.postrm: userdel if command available (Closes: #391466) + + -- Michael Mende Sun, 8 Oct 2006 12:03:03 +0200 + +spread (3.17.3-4ubuntu1) edgy; urgency=low + + * Merge from debian unstable: + -> /var/run/spread created by the init script if it does not exist. + + -- Jeremie Corbier Fri, 22 Sep 2006 19:49:11 -0700 + +spread (3.17.3-4) unstable; urgency=low + + * CVE-2006-3118: insecure temporary file handling (Closes: #375617) + * Build depends now on dpatch + * Update standards version to 3.7.2 + + -- Michael Mende Sun, 10 Sep 2006 12:13:43 +0200 + +spread (3.17.3-3ubuntu1) edgy; urgency=low + + * Merge from debian unstable. + + -- Jeremie Corbier Sun, 9 Jul 2006 01:01:02 +0200 + +spread (3.17.3-3) unstable; urgency=low + + * New maintainer team. (Closes: #280087) + * Update standards version to 3.6.2 (no changes needed). + + -- Frederik Schüler Mon, 24 Apr 2006 15:39:11 +0000 + +spread (3.17.3-2) unstable; urgency=low + + * QA Group upload orphaning this package + + -- Andrew Pollock Thu, 16 Mar 2006 23:57:22 -0800 + +spread (3.17.3-1ubuntu1) dapper; urgency=low + + * debian/spread.init: the init script makes sure /var/run/spread exists + (Closes: Malone #45387). + + -- Jeremie Corbier Thu, 18 May 2006 15:34:01 +0200 + +spread (3.17.3-1) unstable; urgency=high + + * New upstream release. + * debian/rules: Make everyone look in debian/libspread1/usr/lib for + libspread library info. (Closes: #300794) + * debian/control: Build-depend on autotools-dev to pull in latest + config.guess and config.sub. (Closes: #299314) + + -- Eric Dorland Sun, 1 May 2005 17:22:11 -0400 + +spread (3.17.2-3) unstable; urgency=medium + + * debian/spread.dirs, debian/spread.install: Fix installation of + /etc/spread. (Closes: #279210) + + -- Eric Dorland Tue, 7 Dec 2004 19:07:39 -0500 + +spread (3.17.2-2) unstable; urgency=medium + + * sp.c: Allow ports over 32*1024 (ie up to 64*1024). Thanks Marc Lehmann + for pointing this out. (Closes: #279209) + + -- Eric Dorland Mon, 6 Dec 2004 00:05:22 -0500 + +spread (3.17.2-1) unstable; urgency=low + + * New upstream release. + * debian/control: debhelper (>> 4.1) for cdbs. + * perl/Spread/Makefile.PL: Re-include -lspread flag. (Closes: #252665) + * debian/rules: Override LD_RUN_PATH in make to remove rpath-ness. + + -- Eric Dorland Wed, 9 Jun 2004 21:37:20 -0400 + +spread (3.17.1-2) unstable; urgency=medium + + * Urgency medium because it is a trivial fix. + * debian/spread.logrotate: Fix bad comment. (Closes: #222590) + + -- Eric Dorland Wed, 3 Dec 2003 00:33:36 -0500 + +spread (3.17.1-1) unstable; urgency=low + + * New upstream release. + * debian/control: Upgrade Standards-Version to 3.6.1. + + -- Eric Dorland Sun, 16 Nov 2003 23:23:35 -0500 + +spread (3.17.0-6) unstable; urgency=low + + * debian/control: Add Build-Depend on groff-base. + * debian/rules: Add --with-mantype=man configure flags. (Closes: + #199699) + + -- Eric Dorland Thu, 3 Jul 2003 22:37:39 -0400 + +spread (3.17.0-5) unstable; urgency=low + + * debian/rules: Add null check target. + * debian/spread.links: Setup so links. + * Makefile.in: Add soname to linker flags. + * perl/Spread/Makefile.PL: Hack ld flags so rpath is not used. + + -- Eric Dorland Sat, 21 Jun 2003 16:56:26 -0400 + +spread (3.17.0-4) unstable; urgency=low + + * debian/spread.init: Actually remove the log switch. + * debian/spread.README.Debian: Add some notes. + + -- Eric Dorland Tue, 10 Jun 2003 01:24:56 -0400 + +spread (3.17.0-3) unstable; urgency=low + + * debian/rules: Make spread install configs in /etc/spread. + * debian/spread.postinst: + - Install spread user and group. + - Install statoverrides on the config files. + * debian/spread.postrm: + - Remove user/group on purge. + - Remove statoverrides. + * debian/control: spread depends on adduser. + * debian/spread.install: Install new /etc dir and default config. + * debian/spread.dirs: Add the chroot dir and /var/log. + * debian/spread.conf: Install default config with logging enabled. + * debian/spread.init: + - Remove the logging option. + - Make the pid file in /var/run/spread. + - Have start-stop-daemon make the pid file since spread doesn't. + * spread.logrotate: Add logrotate file. + + -- Eric Dorland Mon, 9 Jun 2003 23:27:15 -0400 + +spread (3.17.0-2) unstable; urgency=low + + * debian/spread.init: Enable logging and make s-s-d do the + backgrounding, since spread doesn't. + + -- Eric Dorland Sun, 8 Jun 2003 23:24:49 -0400 + +spread (3.17.0-1) unstable; urgency=low + + * Initial Release. (Closes: #177109) + + -- Eric Dorland Sun, 8 Jun 2003 15:19:52 -0400 + --- spread-3.17.3.orig/debian/compat +++ spread-3.17.3/debian/compat @@ -0,0 +1 @@ +4 --- spread-3.17.3.orig/debian/control +++ spread-3.17.3/debian/control @@ -0,0 +1,55 @@ +Source: spread +Section: net +Priority: optional +Maintainer: Michael Mende +Uploaders: Frederik Schüler +Build-Depends: debhelper (>= 4.1), cdbs, libperl-dev, groff-base, autotools-dev, dpatch +Standards-Version: 3.7.2 + +Package: libspread1-dev +Architecture: any +Section: libdevel +Depends: libspread1 (= ${Source-Version}) +Provides: libspread-dev +Conflicts: libspread-dev +Description: Development files for libspread + Headers and static libraries for libspread. Spread provides a high + performance messaging service that is resilient to faults across + external or internal networks. + +Package: libspread1 +Architecture: any +Section: libs +Provides: libspread +Depends: ${shlibs:Depends} +Description: C library for the Spread messaging service + A C library that speaks the Spread messaging protocol. Spread + provides a high performance messaging service that is resilient to + faults across external or internal networks. + + +Package: libspread-perl +Architecture: any +Section: perl +Depends: ${perl:Depends}, ${shlibs:Depends} +Description: Perl bindings for the Spread messaging service + A Perl wrapper for libspread and the Spread messaging service. Spread + provides a high performance messaging service that is resilient to + faults across external or internal networks. + + +Package: spread +Architecture: any +Depends: ${shlibs:Depends}, adduser (>= 3.34) +Description: The Spread messaging daemon + 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. --- spread-3.17.3.orig/debian/libspread1-dev.install +++ spread-3.17.3/debian/libspread1-dev.install @@ -0,0 +1,5 @@ +debian/tmp/usr/lib/*.so usr/lib +debian/tmp/usr/lib/*.a usr/lib +debian/tmp/usr/include/* usr/include +sp_*.h usr/include +sp.h usr/include --- spread-3.17.3.orig/debian/spread.postinst +++ spread-3.17.3/debian/spread.postinst @@ -0,0 +1,45 @@ +#! /bin/sh -e + +if [ "$1" = "configure" ]; then + addgroup --system spread || { + # addgroup failed. Why? + if ! getent group spread >/dev/null ; then + echo "Could not create system group spread." >&2 + if getent group spread >/dev/null ; then + echo "Non-system group spread found. I will not overwrite a non-system" >&2 + echo "user. Remove the group and reinstall spread." >&2 + fi + exit 1 + fi + # well, the group is there, so just ignore the error + } + adduser --system --ingroup spread --home /var/run/spread \ + --gecos "Spread system user" --shell /bin/sh \ + --disabled-password spread || { + echo "Could not create system user spread." >&2 + # adduser failed. Why? + if getent passwd spread >/dev/null ; then + echo "Non-system user spread found. I will not overwrite a non-system" >&2 + echo "user. Remove the user and reinstall spread." >&2 + exit 1 + fi + # unknown adduser error, simply exit + exit 1 + } + + # Add overrides + if ! dpkg-statoverride --list /etc/spread >/dev/null; then + dpkg-statoverride --update --add spread spread 755 \ + /etc/spread + fi + if ! dpkg-statoverride --list /etc/spread/spread.conf >/dev/null; then + dpkg-statoverride --update --add spread spread 644 \ + /etc/spread/spread.conf + fi + if ! dpkg-statoverride --list /var/run/spread >/dev/null; then + dpkg-statoverride --update --add spread spread 755 \ + /var/run/spread + fi +fi + +#DEBHELPER# --- spread-3.17.3.orig/debian/spread.postrm +++ spread-3.17.3/debian/spread.postrm @@ -0,0 +1,15 @@ +#!/bin/sh -e + +if [ "$1" = "purge" ]; then + + if [ -x /usr/sbin/userdel -a -x /usr/sbin/groupdel ]; then + getent passwd spread >/dev/null && userdel spread + getent group spread >/dev/null && groupdel spread + fi + + dpkg-statoverride --remove /etc/spread/spread.conf || true + dpkg-statoverride --remove /etc/spread || true + dpkg-statoverride --remove /var/run/spread || true +fi + +#DEBHELPER# --- spread-3.17.3.orig/debian/spread.install +++ spread-3.17.3/debian/spread.install @@ -0,0 +1,4 @@ +debian/tmp/usr/bin/* usr/bin +debian/tmp/usr/sbin/* usr/sbin +debian/spread.conf etc/spread + --- spread-3.17.3.orig/debian/spread.default +++ spread-3.17.3/debian/spread.default @@ -0,0 +1,5 @@ +# Change to enable spread +ENABLED=0 + +# Options, see spread.1 for list +OPTIONS="" --- spread-3.17.3.orig/debian/docs +++ spread-3.17.3/debian/docs @@ -0,0 +1 @@ +Readme.txt --- spread-3.17.3.orig/debian/libspread1.shlibs +++ spread-3.17.3/debian/libspread1.shlibs @@ -0,0 +1,2 @@ +libspread 1 libspread1 (>= 3.17.3) +libtspread 1 libspread1 (>= 3.17.3) --- spread-3.17.3.orig/debian/libspread1.install +++ spread-3.17.3/debian/libspread1.install @@ -0,0 +1 @@ +debian/tmp/usr/lib/*.so.* usr/lib --- spread-3.17.3.orig/debian/rules +++ spread-3.17.3/debian/rules @@ -0,0 +1,22 @@ +#!/usr/bin/make -f + +include /usr/share/cdbs/1/rules/debhelper.mk +include /usr/share/cdbs/1/class/autotools.mk +include /usr/share/cdbs/1/rules/dpatch.mk + +DEB_SHLIBS_INCLUDE := debian/libspread1/usr/lib +DEB_CONFIGURE_SYSCONFDIR := /etc/spread +DEB_MAKE_CHECK_TARGET := +DEB_CONFIGURE_EXTRA_FLAGS := --with-mantype=man + +configure/libspread-perl:: perl/Spread/Makefile.PL + cd perl/Spread && perl Makefile.PL INSTALLDIRS=vendor + +build/libspread-perl:: perl/Spread/Makefile + cd perl/Spread && $(MAKE) LD_RUN_PATH="" OPTIMIZE="$(CFLAGS)" + +install/libspread-perl:: + cd perl/Spread && $(MAKE) install PREFIX=$(DEB_DESTDIR)/usr + +clean:: + -cd perl/Spread && $(MAKE) distclean --- spread-3.17.3.orig/debian/spread.manpages +++ spread-3.17.3/debian/spread.manpages @@ -0,0 +1,6 @@ +docs/spread.1 +docs/sptuser.1 +docs/spflooder.1 +docs/spuser.1 +docs/spmonitor.1 + --- spread-3.17.3.orig/debian/patches/01_tmpfile.dpatch +++ spread-3.17.3/debian/patches/01_tmpfile.dpatch @@ -0,0 +1,32 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 01_tmpfile.dpatch adopted from patch by Martin Schulze +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Bug 375617 + +@DPATCH@ + +diff -u -p -Nr --exclude CVS orig/spread-3.17.3/session.c spread-3.17.3/session.c +--- orig/spread-3.17.3/session.c 2004-03-05 01:32:46.000000000 +0100 ++++ spread-3.17.3/session.c 2006-06-29 09:20:03.000000000 +0200 +@@ -406,7 +406,7 @@ void Sess_init() + Alarm( EXIT, "Sess_init: UNIX sock error\n" ); + + unix_addr.sun_family = AF_UNIX; +- sprintf( name, "/tmp/%d",My.port ); ++ sprintf( name, "/var/run/spread/%d",My.port ); + strcpy( unix_addr.sun_path, name ); + unlink( name ); + +diff -u -p -Nr --exclude CVS orig/spread-3.17.3/sp.c spread-3.17.3/sp.c +--- orig/spread-3.17.3/sp.c 2006-06-29 09:19:46.000000000 +0200 ++++ spread-3.17.3/sp.c 2006-06-29 09:19:20.000000000 +0200 +@@ -591,7 +591,7 @@ int SP_connect_timeout( const char *spre + set_large_socket_buffers(s); + + unix_addr.sun_family = AF_UNIX; +- sprintf( unix_addr.sun_path, "/tmp/%d", port ); ++ sprintf( unix_addr.sun_path, "/var/run/spread/%d", port ); + ret = connect_nointr_timeout( s, (struct sockaddr *)&unix_addr, sizeof(unix_addr), &time_out); + #endif /* !ARCH_PC_WIN95 */ + } --- spread-3.17.3.orig/debian/patches/00list +++ spread-3.17.3/debian/patches/00list @@ -0,0 +1 @@ +01_tmpfile.dpatch