[Spread-users] Spread source overview
Joshua Goodall
joshua at roughtrade.net
Thu Sep 6 00:24:57 EDT 2001
Primarily for my own use I have just been through the source and made a
one-line overview for each source file. I suspect I have it partially
wrong, particularly with respect to network.c, protocol.c, groups.c and
membership.c. I'd appreciate it if someone who "knows the source" can
correct me.
This is what I have:
Spread daemon:
acm.c handle access control policies
acp-permit.c acp_ops to permit open access
alarm.c console message filtering&display
auth-ip.c auth_ops for IP-based authentication
auth-null.c auth_ops for no authentication
config_parse.[yl] yacc & lex source for reading configuration files
configuration.c yacc wrapper & configuration lookup
data_link.c socket code layer with scatter
events.c event scheduling&delivery, prioritised-events select wrapper
flow_control.c update ring flowcontrol tunables
groups.c manages group memberships
log.c write log messages to file
membership.c network membership state machine including ring protocol
memory.c typed&pooled memory object manager
message.c message object data access functions
network.c implement forwarding choices of protocol.c, call data_link.c
protocol.c implement reliability & ordering
session.c handle client connections
skiplist.c implementation of skiplists for group lookups
spread.c initialise subsystems, start main event loop
status.c respond to monitor status requests (magic 15051963)
Library sources:
alarm.c as above
events.c as above
memory.c as above
sp.c Spread client API implementation library
Tools sources:
monitor.c monitor & manage daemons
flooder.c message flooder
user.c command-line interface to client API
simple_user.c simple send&receive demonstration
Other sources:
r.c sniffing tool
s.c spamming tool
arch.c dummy strerror for SunOS
auth-pword.c acp_ops for cleartext password authentication } unused?
auth-pword-client.c acp_ops for cleartext password authentication }
Regards
Joshua
More information about the Spread-users
mailing list