Search
j0ke.net Open Build Service
>
Projects
>
ha
>
crossroads-unstable
> crossroads-devel.ChangeLog
Sign Up
|
Log In
Username
Password
Cancel
Overview
Repositories
Revisions
Requests
Users
Advanced
Attributes
Meta
File crossroads-devel.ChangeLog of Package crossroads-unstable (Revision 4)
Currently displaying revision
4
,
show latest
ChangeLog for Crossroads ------------------------------------------------------------------------------ 1.80 [KK 2008-05-19] - "Read from <client/server> timed out" is now only an error when it concerns the server. When it concerns the client, it's only a verbose message. - In http_copy(): Copy-thru mode from server to client is NOT entered when the server sent a HTTP/1.x 3xx response. HTTP 300 responses are not assumed to have a body. 1.79 [KK 2008-04-01] - Changed 'make' in '$(MAKE)' in all Makefiles to support 'gmake' invocations. - Added debugging to config_write() (Solaris problems) - Changed limits_msg() to avoid RLIMIT_MEMLOCK, RLIMIT_NPROC, RLIMIT_RSS on systems that don't have these (Solaris problems) - Rewrote Messaging functions msg(), error(), warning() to autosupply the service name. - The configuration file is now searched relative to the program, then as /etc/crossroads.conf. So if eg. the program is /opt/crossroads/bin/crossroads, then the config may be /opt/crossroads/etc/crossroads.conf. 1.78 [KK 2008-03-14] - Limits of running service are shown when verbosity is on. - Fixed "no child processes" error when doing system() calls under Linux. The signal handler for SIGCHLD must apparently be off (see src/lib/sysrun.c). Also fixed for popen() calls (see src/lib/choosebackend.c). 1.77 [KK 2008-03-07] - Next development version. Introduced %l for last-connect timing. 1.76 [KK 2008-01-31] - Parser again made stricter: a backend's maxconnections is not allowed when the service's dispatch type is an external handler. - Porting issues for gcc 4.0.2 (default at MacOSX Leopard) solved. 1.75 [KK 2008-01-25] - Changed chunked transfer copying in HTTP mode. The trailing \r\n, following a zero-bytes chunk, also gets handled in http_copy(). Before it was left for handling in a next loop. - Bugfix in the parser, regarding handling of external dispatcher definitions. - Change in the way Crossroads handles responses from external dispatchers: when no back ends are available, XR will sleep for a short time. Better handling of incorrect responses. - Irritating svn messages during build phase suppressed. 1.74 [KK 2008-01-22] - Bugfix in HTTP header scanning. - strnstr() added for systems that lack it - Warning stanza enhanced when select() fails during network writes, back end names are displayed 1.73 [KK 2008-01-17] - Upon service startup the initial configuration is logged (if verbose is on). - Flag -P added for parser/lexer verbosity (debugging only). <stringstate> rewritten. String-state lexer strips trailing spaces in stringstate mode. - Backend-level directive "httptiminglog" implemented. - "througputlog" logging will also include the # of bytes. 1.72 [KK 2008-01-14] - Lexical analyzer changed: whitespace leading up to strings (eg. external handler specifiiers) are skipped. - Porting issues with Intel Macs solved. - Upped c-conf to 1.11 (compatible with MacOSX's extensions MacPorts and with Fink). - External dispatchers are called even when NO back ends are available. Previously asking an external dispatcher would only occur when one or more back ends was up. Furthermore, Crossroads will always accept the dispatcher's suggestion, even when that back end was previously unavailable. 1.71 [KK 2008-01-12] - Bugfix in 1.70 related to HTTP body copy-thru mode. 1.70 [KK 2008-01-11] - Bugfix in 1.69 (yeah that was fast).. 1.69 [KK 2008-01-11] - The HTTP header processing was rewritten to work with octet chunks. Previously TCP buffers would be processed byte by byte to match headers. Hopefully this will speed up HTTP processing. 1.68 [KK 2008-01-10] - "crossroads status" now also reports the PID of each service listener process (in both plain text and XML). Thanks Felix Ostmann for suggesting. 1.67 [KK 2008-01-09] - In the case of an external dispatcher: the dispatcher will be called even when there is only one backend available. The dispatcher may have side-actions to perform. Thanks Nicolas Prochazka for suggesting this. EXPERIMENTAL VERSION - use 1.65 until this code has proven stable. 1.66 [KK 2008-01-09] - Forking of a servicer moved 'forward', before dispatching phase. That way external dispatchers won't slow down the listener. Thanks, Nicolas Prochazka, for suggesting this. This version is EXPERIMENTAL ONLY - use 1.65 until this code has proven stable. Incidentally, this makes the system load lower as well... 1.65 [KK 2008-01-08] - Bugfix in parsing of -B option (TCP buffer size) 1.64 [KK 2007-12-27] - Bugfix in "dispatchmode byclientip" - Added testing utility test/hashtest - The parser is stricter. HTTP-related directives are now only allowed when 'type http' is given. 1.63 [KK 2007-12-10] - Cosmetic change to usage text. - Flag -p implemented. - Commandline functions (start/stop) etc now in properly named §sources. [KK 2007-12-14] Promoted to Stable. 1.62 [KK 2007-10-03] - Extended format specifiers with %g. In time-related modifiers like %g, %t, %T, the optional number is an offset into the future (so %3600t is now + 1h). Thanks Gunnar S. for pointing this out. 1.61 [KK 2007-10-02] - Added messaging to allowfrom/denyfrom rule handling. Bugfixes in the parsing and handling of allow/deny rules. Thanks Chris G. for pointing this out to me. 1.60 [KK 2007-08-29] - upped c-conf to 1.10 - Support for __progname_full in systems that have it, see setproctitle() 1.59 [KK 2007-08-22] - 1.58 Stable 1.58 [KK 2007-08-21] - Bugfix in the handling of "bindto any". Thanks, Simon M. for pointing it out. 1.57 [KK 2007-08-20] - Next development release. 1.56 [KK 2007-08-20] - This is basically only version 1.55 marked STABLE. 1.55 [KK 2007-08-16] - Changed error handling of the finding of duplicate ports. Same ports in different service statements are now an error only if one or both services don't list a bindto address (or if the two listed bindto addresses are the same). Thanks, Rodd Johnson, for finding this bug. 1.54 [KK 2007-07-30] - Changed copyright to GPL V3. 1.53 [KK 2007-07-29] - Misc small changes, thanks Simon Matter for all suggestions, fixes and diffs! Changes include: ps fix for Linux systems in crossroads-mgr, 'use POSIX' fix in Perl, C code fix for for older gcc's. - crossroads-mgr now supports a flag '-a address' to specify a listening address (also suggested by Simon). 1.52 [KK 2007-07-12] - Added list of keywords to the docs - Removed Log4Perl dependency in crossroads-mgr (easier for distro's) 1.51 [KK 2007-07-10] - Removed global MAX_BACKEND setting. The number of back ends per service is now totally dynamic - derived from the configuration. - Added counts of available back ends, unavailable back ends and so on to "crossroads -x status". The web interface crossroads-mgr now picks this up. - Documentation updated. Small fixes. 1.50 [KK 2007-07-08] - Back end states can be initially set using the "state" directive. Command "crossroads tell" now requires keyword "state" for setting the state. - Introduced actual_server and actual_port in SHM block for back end addresses. Introduced define FQDN_LENGTH. Back end addresses can be set using "crossroads tell". - Web front end crossroads-mgr can now redefine a back end address. 1.49 [KK 2007-07-04] - Next development cycle version. 1.48 [KK 2007-07-04] - Added strupr() for systems that lack it. - Version tagged STABLE. 1.47 [KK 2007-06-27] - Added "externalhandler" to "revivinginterval" - Added "checkinterval" - Last connect time per back end gets stored 1.46 [KK 2007-06-25] - Flag -X added (for xslt reference embedding) - "crossroads tell {service} {backend} {state}": state can be numeric - Added crossroads-mgr, updated all docs, etc.. - Fixed "make distclean" 1.45 [KK 2007-06-12] - Configuration option 'headerinspection {deep|shallow}' implemented. Documentation updated. Several other documentation fixes. - New make target 'dbginstall', installs gdb-able versions into /usr/local/bin - Upped c-conf to 1.09: /usr/lib64 is in the library search path (thanks Joern F. for pointing this one out). - Added setproctitle() for non-BSD-ish systems. Previous set_program_title() is obsolete (it woundn't save the envp). - Flag -B <bufsize> introduced, making the TCP buffer size variable. Previous constant TCP_BUFSZ is now DEFAULT_TCP_BUFSZ, which is now 5k instead of 10k. 1.44 [KK 2007-06-12] - Small bugfix in -b flag handling (useful during debugging only). 1.43 [KK 2007-05-22] - Changed the way that shmkeys are computed; the old way would cause more collisions. - Implemented DNS caching. By default 20 gethostbyname() results can be cached, with a ttl of 1 hour per entry; though the ttl has a default of 0 (no caching). Flag -d can overrule the TTL. - Fixed makefile dependency for crossroads-daemon. - Upped c-conf to 1.08. - Reorganized docs. Key variables (author, maintainer, ...) are passed from the Makefile. - Added a small test run to the making: test/t*conf should parse OK, test/bad*conf should fail. These tests are auto-run on 'make local'. - Added #include to the grammar. Shell-style #-comments are no longer allowed. Added #define to the grammar. 1.42 [KK 2007-05-21] - Fixed small portability issue for gcc 4.0.3 (library dependency with libm.a) - Added etc/svncheck to verify that SVN holds all files, before making a distro. 1.41 [KK 2007-05-18] - Included c-conf 1.07 (caching provisions - way faster build) - Fixed deliverable, version 1.40 lacked files (DISTRO WAS BROKEN) 1.40 [KK 2007-05-16] - Added flag -m to control shared memory access mode. - Implemented flag -x for XML report of status. - Added tips sections on health check scripting and on XSLT's. - Cosmetic code changes. - The daemon 'sec' is now in in a separate crossroads-daemon binary. Configuration parsing, usage info etc. not included, so that the sec daemon has a smaller footprint. 1.39 [KK 2007-05-06] - This is the next development release (1.38 promoted to stable). - Fixed tcp_serve() to only warn when accept() fails (this used to be fatal). 1.38 [KK 2007-04-26] Many changes: - 'crossroads status' now supports optional service/backend arguments. - Added specific nullstring initializers to parser.y. - Added info on ip_conntrack_max to the tips section of the docs (Thanks, Felix). - Rewritten the code that timeouts upon network connect (this used to have jumps which isn't safe). - Added docs on -t (tabular status report) flag. - Added code to avoid logging and running on-end hooks when HTTP mode fails to find a suitable back end. - Added test/t8.conf which works with breaking-client, to simulate clients that hang up. - 'make clean' removes GDB's history files - Removed usage of non-reentrant functions from signal handler (interrupt.c) - Added RETRY_WAIT, small sleep time when retrying connecting to the same back end - Added description of retries keyword to the Tips&Tricks section - Fixed mark_activity() to apply decays only for 'true' connections, not for wakeup calls - Split up the tips section of the docs into separate sources. - Added flag -C to show compile-time settings. - Sped up make process by scanning c-conf output just once (:= instead of =, probably GNU Make only, we'll see). 1.37 [KK 2007-04-17] Intermediate release for bughunts on 64bit Linux. 1.36 [KK 2007-04-16] Fixed small bug in total usage counting. Bugfix in resetting temporary failure counts of back ends (while waiting for retries to expire). Added __attribute__ compiler macro to functions such as msg(), warning() -- and fixed format conversion issues. 1.35 [KK 2007-04-16] Added 'retries' keyword to back end definitions. 1.34 [KK 2007-04-03] Added SVN revision number to the overall version ID, so that tracking historical versions becomes easier. Added flag -t which causes tabular display in 'crossroads status' (useful for automated parsing, e.g. for heartbeat scripts). [KK 2007-04-06] Increased max # of back ends per service to 20. (In the future this should be a dynamic value - but it'll take code changes; so for now, I'm taking 20.) 1.33 [KK 2007-04-02] Added hashpjw.c to the repository - I had forgotten that in 1.32 (so, 1.32 is broken..). 1.32 [KK 2007-03-30] Change net_read() and net_copy(): Read exceptions on the client network socket don't issue error or warning messages; clients are notorious for just dropping dead. Logging this just clogs up the syslog. These situations are only logged when verbosity is on. 1.31 [KK 2007-03-21] Changed messaging from error to warning when a TCP write fails towards the server. The fact that the server hangs up, can be actually intended -- Crossroads can't make assumptions about it. Marked 1.30 as stable, 1.31 is the next development release. 1.30 [KK 2007-03-20] Signed/unsigned fix in net_read() (return value < 0 would get evaluated badly when taken as unsigned). Changed state/string handling, so that "up" is a synonym for "available" (eg. in "crossroads tell {myservice} {mybackend} up"). Fixed up sources so that compilation with -pedantic is OK. Added flag -W to warn against loads of things, mainly signed/unsigned comparisons. 1.29 [KK 2007-02-25] Small code changes in error/msg/warning, no action when no format string. [KK 2007-03-07] fork_tcp_servicer() won't abort upon fork failure, just warn. This avoids fatal stops when the process table is full. 1.28 [KK 2007-02-15] Added small dependencies to src/Makefile. Added debugging code to http_header_add(). The signal handler (see interrupt.c) will exit immediately upon SIGPIPE when in serving mode. There is no need to wait for the current request to finish, when one of the network pipes has gone. Change exiting to _exit() instead of exit() to avoid cleanup code execution. Misc small changes in http mode. 1.27 [KK 2007-02-14] Verbosity gets set correctly in HTTP type services. 1.26 [KK 2007-02-13] Backends that are unavailable are skipped in the determination of targets during sticky HTTP sessions. This used to be: only backends that are available are candidate. Difference is that backends that are now marked down, can still be selected -- so that sticky HTTP sessions get a chance to continue. 1.25 [KK 2007-01-26] Next development release. 1.24 [KK 2007-01-26] This is identical to version 1.23, tagged Stable. 1.23 [KK 2007-01-04] Removed "sampleconf" program option. There are too many config options to have all the sample text in the binary. Other small fixes. 1.22 [KK 2006-12-21] Implemented username directive. [KK 2006-12-22] Fixed counting of total sessions. 1.21 [KK 2006-12-11] Implemented externalhandler as dispatch mode. Added a few sample handlers, updated the docs. NOTE: The external dispatcher handlers are ALPHA CODE at this time. [KK 2006-12-13] Changed the 'configuration' section of the docs. Directives are now in their own subsection, so that they have their own TOC entry. [KK 2006-12-14] Changed the 'onsuccess' directive to 'onstart'. Implemented 'onend'. Commands that are run via these hooks, plus via 'onfailure', get expanded. Added format expanders '%n' (connections of a back end) and '%w' (weights of a back end). Thanks Bernd Krumboeck for loads of suggestions, code, diffs and testing! [KK 2006-12-19] Compilation fixes, thanks again Bernd. 1.20 [KK 2006-12-06] Updated connection handler in HTTP requests to show the right title (which backend is being served). Fixed bug in client connection counting. Fixed status reporter to show an 's' after the display of seconds. [KK 2006-12-08] Fixed status reporter to use suffix Tb (tera) or Gb (giga) for large bytecounts. 1.19 [KK 2006-12-04] Implemented IP filtering (configuration: allowfrom/allowfile, denyfrom/denyfile). Updated docs. Recoded filtering so that the order is "deny,allow" (a-la Apache). More messaging in "dispatchmode roundrobin". 1.18 [KK 2006-11-29] Next development version. Fixed net_copy() to correctly decrement the client connection count (thanks Bernd Krumboeck for the fix!). Small document fix. [KK 2006-12-01] http_header_connectiontype() will now correctly understand Connection-Type: TE, close (ie. when the "close" is part of a larger setting). 1.17 [KK 2006-11-28] Next development version. [KK 2006-11-29] Removed debugging stuff which by mistake slipped into 1.16 stable. Shipping this 1.17 as next-stable (instead of the previous 1.16, which is theoretically unnecessarily slow). 1.16 [KK 2006-11-01] New development version. Usage text updated to point to http://crossroads.e-tunity.com. Flag -s implemented. Small bugfix in 'restart' action. [KK 2006-11-28] Promoted to next stable version. 1.15 [KK 2006-10-23] Speedup in the handling of chunked HTTP message transfer. Furthermore, chunked messages are treated as single-shot actions (see RFC2616, liberally explained by yours truly). [KK 2006-11-01] Bison- and flex-generated files are no longer removed in 'make clean'. This helps folks who want to build Crossroads but don't have these tools. Version 1.15 marked as 'stable'. 1.14 [KK 2006-10-19] Bugfix in chunked transfer encoding (yeah I know.. yet again.. hopefully the last time). This was a particularly nasty one. 1.13 [KK 2006-09-26] Next development release. [KK 2006-10-03] Porting issues for Solaris 9: localtime() issues fixed, cp/strip used instead of install -s, ctype.h macro's avoided. 1.12 [KK 2006-09-13] Small changes in wakeup handler. Timeout handling in HTTP service processing slightly changed. [KK 2006-09-15] Added checks whether both client and server want persisting HTTP connections (see http_serve()). Header Proxy-Connection: close is inserted if the connections should get closed. Rewrote network to- and fro- copying: net_copy() now replaces net_read() + net_write(). [KK 2006-09-26] Promoted to STABLE. 1.11 [KK 2006-09-12] HTTP type services now analyze not only the first request/response pair to apply header magic; Subsequent pairs are also analyzed. 1.10 [KK 2006-09-11] Small speedup in header reading. Commandline option "restart" will now act as "start" if no Crossroads is found running. Rewrote chunked transfer-encoding transmission in HTTP type services. Messaging now shows the type of message with a prefix: ERROR, WARNING or INFO. 1.09 [KK 2006-09-05] Small changes for HP-UX port. Crossroads should now compile on HP-UX 11.23 / ia64. (Thanks, Bernd Krumboeck): - gcc selected if both gcc and cc are present (c-conf 1.04) - conditional compilation of vsyslog() function [KK 2006-09-06] Neater support of streamed HTTP transfer (eg. video); data is sent instantly to the client. 1.08 [KK 2006-08-28] Next development (trunk) version. [KK 2006-08-29] Implemented net_read() / net_write() so that socket reads and writes are centralized, with their logging and error handling. HTTP transfer buffers are now 'unsigned char'. Shell script test/runtest added to drive sanity checks. [KK 2006-08-31] Rewrote HTTPP message parsing (http_msg_*()). Added directives 6 header modification directives. Lots of code cleanups. The HTTP 502 error text (proxy error) is now in a separate text file. Byte and second counts of 'crossroads status' are now correctly displayed. Documentation updated. 1.07 [KK 2006-07-25] Next development (trunk) version. Directive 'insertrealip' implemented. Docs updated. While creating docs, leading tabs are now expanded (needed for PDF documentation). [KK 2006-08-28] 1.07 promoted to next stable version. 1.06 [KK 2006-07-25] Small documentation fix. Embedded c-conf upped to 1.03 (protection from endless recursive directory scans). Optimized http_serve() for short messages (no piggybacking is necessary after the initial chat). Flag -u (user switch) removed; user switching won't work given privileged TCP ports, shared memory access and semaphores all mixed together (or in other words: I'm too lazy right now to make this work elegantly.) Version 1.06 promoted to the next stable. 1.05 [KK 2006-07-12] Restarting heavily sped up, plus it won't affect creation of new listener sockets. Messaging improved, the affected service is reported. Flag -f (foreground mode) removed; this debugging option is no longer useful given the complexity of it all. Added socket shutdowns to interrupt handler (interrupt.c). Fixed up shared memory free ups. THIS VERSION SHOULD MAKE "CROSSROADS RESTART" WORK WELL! 1.04 [KK 2006-06-26] Next development version. [KK 2006-07-03] Fixed http_read(); the # of historic connections ('totuses') would be counted double in sticky HTTP mode. [KK 2006-07-04] Added call to sranddev() to make weighted random dispatching more conforming to the weights (HAVE_SRANDDEV defined in the Makefile when sranddev() is available). 1.03 [KK 2006-06-20] Support for older gcc's (incase strlcat() is missing; added strlcat.c). Added -lm to linkage flags for fmod(). This is a new development version despite the fact that 1.02 isn't promoted to 'stable'. [KK 2006-06-22] Changed internal-server-error HTTP response. Fixed very small bug in weighted random dispatchmode; the old code wouldn't correctly see similar high weights. [KK 2006-06-26] Fixed counting of total nr. of connections in sticky HTTP mode (as shown with 'crossroads status'). This version is tagged as 'stable'. 1.02 [KK 2006-05-11] Next development release. [KK 2006-05-12] In HTTP mode, the nr of sessions per back end is stored. Improved status reporting: the nr of sessions is shown (when type is http), the seconds and bytes are shown in a more readable format. [KK 2006-05-13] Fixed weighted random balancing; 1.01 had a bug that didn't distribute new connections according to the weights (see choose_backend()). Introduced new make target 'commit'. [KK 2006-05-19] New flag -a introduced, that logs incoming and ending activity. See further log_activity_*(). Docs updated. Cleaned up the source tree (stale sources removed). [KK 2006-06-07] Introduced -l flag for LOG_LOCAL0 to LOG_LOCAL7 openlog facility selection. Bugfix in log_activity*() calls. [KK 2006-06-07] Fixed lock_reporter() / unlock_reporter() so that running connection (in program_stage == stage_serving) don't crash during semaphore operations. This actually happens when there's a running connection and crossroads is stopped on the commandline. [KK 2006-06-07] Modified the source to use strlcat/snprintf instead of strcat/sprintf, to avoid warnings on e.g. OpenBSD. Enveloped include <stdint.h> with an #ifdef. 1.01 [KK 2006-05-09] Small codechange in http_serversocket() for GCC < 4.0. (There was accidentally post-3 code which I didn't notice:) [KK 2006-05-10] Improved messaging in choose_backend(), in the case of round robin balancing. Implemented weighted balancing with "dispatchmode random". [KK 2006-05-11] Updated the docs regarding the new primary site http://crossroads.e-tunity.com. Promoted 1.01 to the next stable release, versioned 1.02 as the next development release. 1.00 [KK 2006-05-05] This version is identical to 0.33, except that crossroads will now be hosted in a publicly accessible SVN repository at svn://svn.e-tunity.com/crossroads. 0.33 [KK 2006-05-05] Fixed small bug in http_findcookie() concerning routing cookies matching. 0.32 [KK 2006-05-02] Fixed set_program_title() to have a separate argv[0] argument, so that 'killall' e.a. match 'crossroads'. 0.31 [KK 2006-04-06] Slight change of functionality in http_serversocket(). Fail over implemented for existing HTTP sessions. Furthermore: small code optimizations. 0.30 [KK 2006-03-17] Optimization in http_serversocket() routine. 0.29 [KK 2006-03-14] - Small bugfix in chunked transfer handling (added: ishexdigit()) 0.28 [KK 2006-03-13] - Chunked transfer handling improved. - Flag -V implemented. 0.27 [KK 2006-03-10] - Small changes in HTTP handling (better support for proxies as back ends). - Verbosity of HTTP handling somewhat throttled. 0.26 [KK 2006-02-27] - Backend definitions now support HOSTNAME:PORT in a 'server' specifier. - Status overview compressed to fewer lines. - Documentation updated and refined. - Service types introduced, defaulting to 'any'. - New service 'stickyhttp'. New directives 'stickycookie' and 'insertcookie' to make HTTP sessions.. well.. stick. - Old keywords 'sessiontimeout' and 'bysessions' renamed to 'connectiontimeout' and 'byconnections'. 0.25 [KK 2006-02-08] Program stages are displayed as strings in debug/error messages (see stagetostring.c). 0.24 [KK 2006-01-20] Fixed display of high-ascii chars in the dumplog. 0.23 [KK 2006-01-03] Fixed potential race condition when creating network sockets over and over. Now a short sleeptime is inserted between the retries, so that e.g. new file descriptors become available. Fixed potential fd leak. 0.22 [KK 2005-12-12] Portability issues fixed for Solaris builds (thanks, Lasse Osterild, for pointing this out and fixing it). Version ID added to the docs. 0.21 [KK 2005-12-07] Implemented the 'configtest' command line argument. Configuration file parsing improved (no more shift/reduce conflicts, better error checks). Docs updated. 0.20 [KK 2005-12-06] Changes in the dispatching machine. Added a "dispatchmode bysessions", which selects the back end with the least active clients (adjusted for weights). All durations are now logged with millisecond accuracy, the "dispatchmode byduration" uses this. (All this due to Ray Pittigher's requests to load-balance MySQL RDBMS back ends ;-) 0.19 [KK 2005-11-29] Cosmetic fix of debug messages. Typo fix in the documentation (thanks, Marc Uebel for pointing this one out). Fixed the status updater: updates now occur DURING sessions, not just at the closing. That makes balancing by duration or by size more precise. 0.18 [KK 2005-11-28] Fixed #ifdef/#if clausing of SET_PROC_TITLE_BY_ARGV. (Thanks to Ray Pittigher for pointing this out, Linux on Redhat AS4 was too critical to grok this code.) 0.17 [KK 2005-11-23] Maintenance-related release. Messages are now logged with priority LOG_NOTICE (which ensures debug-information on default Mac OSX). When the creation of a listening socket fails, crossroads will retry after X sleep-seconds (this prevents 'port steals'). Stability of the wakeup handler improved. 0.16 [KK 2005-11-18] Documentation updated for the throughputlog statement. 0.15 [KK 2005-11-17] Bugfix in time calculation of thruputlog(). 0.14 [KK 2005-11-16] Statement 'dumptraffic' renamed to 'trafficlog'. Implemented the 'throughputlog' statement. 0.13 [KK 2005-11-09] Implemented support for either flock(), lockf() or none of the above; whichever is available. Added #defines for flock()-related calls and for others, incase your Unix lacks them (thanks to Patrick Debois & Jan Vanhaecht, a Solaris port effort). Added linkage flags for the libs: ucb, nsl, pthread, socket (thanks also to Patrick Debois & Jan Vanhaecht). Added a maxclients statement at the level of back end definitions (thanks to Martin Lonkwitz for suggesting this). 0.12 [KK 2005-11-03] Minor documentation update. 0.11 [KK 2005-10-28] Docs updated. Makefiles somewhat cleaned up. Fixed a 'make install' related issue (thanks go to Johnatan Cua or pointing this one out). 0.10 [KK 2005-10-26] Minor bugfix. The nr. of sessions in the report would not get decreased upon timeout of a session (thanks go to Martin Lonkwitz for pointing this one out). 0.09 [KK 2005-10-18] Warnings of backend connections are avoided in the wakeup handler. This prevents too much messaging in the system log. Implemented commandline action 'restart'. Docs updated. 0.08 [KK 2005-10-13] Minor build changes; port to Mac OSX Darwin. 0.07 [KK 2005-09-15] Small change of verbose messages. Verbose messages now go to stderr (instead of stdout). Added shmctl() calls to make sure that we're the rightful owner of the shared memory segment. Fixed checking of the return value of shmat() for 64bit systems [Thanks, Ray Pittigher, for helping me find this bug]. 0.06 [KK 2005-09-14] Improved error messaging during the parsing of the configuration. The onfailure or onsuccess triggers now also run during an initial connect; this used to be only during interrupted sessions. Improved the handling of new connections when no back ends are available: in that case, the client's connection gets denied (instead of accepted and closed). Increased the default sleep time (pause when no back ends are available) to 10 secs; edit etc/Makefile.def if you want to change this. Implemented the statement 'bindto ip-address' in service configurations; this can be used in situations where crossroads must only listen to a specific IP address. 0.05 [KK 2005-09-12] Changed the wakeup handler to generate less messages to syslog. Hearing that a back end still hasn't woken up is not very relevant. Moved release from alpha to beta. 0.04 [KK 2005-07-18] Added manual page. Internal: update of project to svn (instead of CVS). Implemented flag -u to set the effective uid of running services. More documentation updates. 0.03 [KK 2005-07-15] Fixed potential race condition in mark_activity() to set back end states. Implemented set_program_title() so that 'ps ax | grep crossroads' shows what's going on. Change in show_status(), the output is more condensed. Implemented "over N" in dispatchmode, and "weight N" in backend configurations. Rewrote the backend selection algorithm. Then of course lots of changes in the docs. 0.02 [KK 2005-07-11] Maintenance stuff: fixed minor things in the docs, updated timeout message in backend_connect(), fixed minor bug in wakeup_handler(), 'tell' argument now matches services and back ends without regard to casing. More maintenance in the 'upload' target: a crossroads-latest.tar.gz is created to facilitate easy downloads from public.e-tunity.com. 0.01 [KK 2005-07-06] First release, alpha.