crossroads

Git mirror of https://crossroads.e-tunity.com/
git clone git://git.finwo.net/app/crossroads
Log | Files | Refs | LICENSE

commit 6172bba1dadb972364e98a26703cca4b88a73b68
parent b302e2846e5dcfc6c7dd837779bbb507744e34ff
Author: finwo <finwo@pm.me>
Date:   Sat,  3 Jan 2026 19:31:28 +0100

1.37

Diffstat:
MChangeLog | 2++
Mdoc/crossroads.html | 4++--
Mdoc/crossroads.man | 4++--
Mdoc/crossroads.pdf | 0
Metc/Makefile.def | 2+-
Metc/svnrev.txt | 2+-
Msrc/allocreporter.c | 2+-
Msrc/ansistamp.c | 2+-
Msrc/backendavailable.c | 2+-
Msrc/backendconnect.c | 2+-
Msrc/backendcount.c | 2+-
Msrc/choosebackend.c | 2+-
Msrc/configtest.c | 2+-
Msrc/copysockets.c | 2+-
Msrc/createcommandlinespace.c | 2+-
Msrc/crossroads.h | 2+-
Msrc/deallocreporter.c | 2+-
Msrc/decrclientcount.c | 2+-
Msrc/error.c | 2+-
Msrc/forktcpservicer.c | 2+-
Msrc/hashpjw.c | 2+-
Msrc/httpcopy.c | 2+-
Msrc/httperror.c | 2+-
Msrc/httpheaderaddheader.c | 2+-
Msrc/httpheaderappendheader.c | 2+-
Msrc/httpheaderconnectiontype.c | 2+-
Msrc/httpheaderfree.c | 2+-
Msrc/httpheaderhascookie.c | 2+-
Msrc/httpheaderhttpver.c | 2+-
Msrc/httpheadernew.c | 2+-
Msrc/httpheaderread.c | 2+-
Msrc/httpheaderremoveheader.c | 2+-
Msrc/httpheadersetheader.c | 2+-
Msrc/httpheaderval.c | 2+-
Msrc/httpheaderwrite.c | 2+-
Msrc/httpinsertheader.c | 2+-
Msrc/httpserve.c | 2+-
Msrc/httpserversocket.c | 2+-
Msrc/httpwrite.c | 2+-
Msrc/incrclientcount.c | 2+-
Msrc/initsockaddr.c | 2+-
Msrc/interrupt.c | 2+-
Msrc/ipfaddallow.c | 2+-
Msrc/ipfadddeny.c | 2+-
Msrc/ipfallowed.c | 2+-
Msrc/ipfdenied.c | 2+-
Msrc/ipfloadfile.c | 2+-
Msrc/ipfmatch.c | 2+-
Msrc/ipfparse.c | 2+-
Msrc/ishexdigit.c | 2+-
Msrc/isspace.c | 2+-
Msrc/lexer.c | 2+-
Msrc/lockreporter.c | 2+-
Msrc/logactivityany.c | 2+-
Msrc/logactivitycontinuation.c | 2+-
Msrc/logactivityend.c | 2+-
Msrc/logactivitystart.c | 2+-
Msrc/main.c | 2+-
Msrc/makesocket.c | 2+-
Msrc/markactivity.c | 8++++----
Msrc/msg.c | 2+-
Msrc/msgdumpbuf.c | 2+-
Msrc/netbuffer.c | 2+-
Msrc/netbufread.c | 2+-
Msrc/netcopy.c | 2+-
Msrc/netread.c | 2+-
Msrc/netwrite.c | 2+-
Msrc/parser.c | 228+++++++++++++++++++++++++++++++++++++++++--------------------------------------
Msrc/parser.h | 2+-
Msrc/parser.y | 6++++++
Msrc/restart.c | 2+-
Msrc/runservice.c | 2+-
Msrc/serve.c | 2+-
Msrc/setprogramtitle.c | 2+-
Msrc/showservices.c | 2+-
Msrc/showstatus.c | 2+-
Msrc/stagetostring.c | 2+-
Msrc/statetostring.c | 2+-
Msrc/stopdaemon.c | 2+-
Msrc/strcasestr.c | 2+-
Msrc/strexpandformat.c | 2+-
Msrc/stringtostate.c | 2+-
Msrc/strlcat.c | 2+-
Msrc/strprintf.c | 2+-
Msrc/strvprintf.c | 2+-
Msrc/sysrun.c | 4+---
Msrc/tcpserve.c | 2+-
Msrc/tellservice.c | 2+-
Msrc/thruputlog.c | 2+-
Msrc/trafficlog.c | 2+-
Msrc/uidassume.c | 2+-
Msrc/uidrestore.c | 2+-
Msrc/unlockreporter.c | 2+-
Msrc/usage.c | 2+-
Msrc/vsyslog.c | 2+-
Msrc/wakeuphandler.c | 2+-
Msrc/warning.c | 2+-
Msrc/writelog.c | 2+-
Msrc/xmalloc.c | 2+-
Msrc/xrealloc.c | 2+-
Msrc/xstrcat.c | 2+-
Msrc/xstrcatch.c | 2+-
Msrc/xstrdup.c | 4++--
103 files changed, 230 insertions(+), 218 deletions(-)

diff --git a/ChangeLog b/ChangeLog @@ -1,6 +1,8 @@ ChangeLog for Crossroads ------------------------------------------------------------------------------ +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 diff --git a/doc/crossroads.html b/doc/crossroads.html @@ -1,12 +1,12 @@ <a name="defs.yo"></a><html><head> -<title>Crossroads 1.36</title> +<title>Crossroads 1.37</title> <link rel="stylesheet" type="text/css" href="http://www.e-tunity.com/css/yodl.css"> <link rel="stylesheet" type="text/css" href="http://www.e-tunity.com/css/yodl.css"> <link rev="made" href="mailto:info@e-tunity.com"> </head> <body> <hr> -<h1>Crossroads 1.36</h1> +<h1>Crossroads 1.37</h1> <h2>Karel Kubat</h2> <h2>e-tunity</h2><h2>2005, 2006, ff.</h2> diff --git a/doc/crossroads.man b/doc/crossroads.man @@ -1,6 +1,6 @@ -.TH "Crossroads 1\&.36" "2005, 2006, ff\&." +.TH "Crossroads 1\&.37" "2005, 2006, ff\&." .PP -.SH "Crossroads 1\&.36" +.SH "Crossroads 1\&.37" .SH "Karel Kubat" .SH "e-tunity" .SH "2005, 2006, ff\&." diff --git a/doc/crossroads.pdf b/doc/crossroads.pdf Binary files differ. diff --git a/etc/Makefile.def b/etc/Makefile.def @@ -3,7 +3,7 @@ # Versioning. This defines the overall version ID and must match the topmost # entry in the ChangeLog. -VER = 1.36 +VER = 1.37 # Revision version, auto-detected. REVVER = $(shell ../etc/svnrev ../ChangeLog ../etc/svnrev.txt) diff --git a/etc/svnrev.txt b/etc/svnrev.txt @@ -1 +1 @@ -142 +143 diff --git a/src/allocreporter.c b/src/allocreporter.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/ansistamp.c b/src/ansistamp.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/backendavailable.c b/src/backendavailable.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/backendconnect.c b/src/backendconnect.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/backendcount.c b/src/backendcount.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/choosebackend.c b/src/choosebackend.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/configtest.c b/src/configtest.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/copysockets.c b/src/copysockets.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/createcommandlinespace.c b/src/createcommandlinespace.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/crossroads.h b/src/crossroads.h @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/deallocreporter.c b/src/deallocreporter.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/decrclientcount.c b/src/decrclientcount.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/error.c b/src/error.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/forktcpservicer.c b/src/forktcpservicer.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/hashpjw.c b/src/hashpjw.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/httpcopy.c b/src/httpcopy.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/httperror.c b/src/httperror.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/httpheaderaddheader.c b/src/httpheaderaddheader.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/httpheaderappendheader.c b/src/httpheaderappendheader.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/httpheaderconnectiontype.c b/src/httpheaderconnectiontype.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/httpheaderfree.c b/src/httpheaderfree.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/httpheaderhascookie.c b/src/httpheaderhascookie.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/httpheaderhttpver.c b/src/httpheaderhttpver.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/httpheadernew.c b/src/httpheadernew.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/httpheaderread.c b/src/httpheaderread.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/httpheaderremoveheader.c b/src/httpheaderremoveheader.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/httpheadersetheader.c b/src/httpheadersetheader.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/httpheaderval.c b/src/httpheaderval.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/httpheaderwrite.c b/src/httpheaderwrite.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/httpinsertheader.c b/src/httpinsertheader.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/httpserve.c b/src/httpserve.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/httpserversocket.c b/src/httpserversocket.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/httpwrite.c b/src/httpwrite.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/incrclientcount.c b/src/incrclientcount.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/initsockaddr.c b/src/initsockaddr.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/interrupt.c b/src/interrupt.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/ipfaddallow.c b/src/ipfaddallow.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/ipfadddeny.c b/src/ipfadddeny.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/ipfallowed.c b/src/ipfallowed.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/ipfdenied.c b/src/ipfdenied.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/ipfloadfile.c b/src/ipfloadfile.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/ipfmatch.c b/src/ipfmatch.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/ipfparse.c b/src/ipfparse.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/ishexdigit.c b/src/ishexdigit.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/isspace.c b/src/isspace.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/lexer.c b/src/lexer.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/lockreporter.c b/src/lockreporter.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/logactivityany.c b/src/logactivityany.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/logactivitycontinuation.c b/src/logactivitycontinuation.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/logactivityend.c b/src/logactivityend.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/logactivitystart.c b/src/logactivitystart.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/main.c b/src/main.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/makesocket.c b/src/makesocket.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/markactivity.c b/src/markactivity.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ @@ -11,7 +11,7 @@ void mark_activity (double nbytes, double nsec, double llval; double dlval; unsigned multiplier; - int i; + int i, marked_unavailable = 0; /* If we had a signal somewhere, don't update the values. * If we don't have a back end yet, don't update the values. */ @@ -93,6 +93,7 @@ void mark_activity (double nbytes, double nsec, activeservice->backend[current_backend].retries); servicereport->backendstate[current_backend].avail = st_unavailable; + marked_unavailable++; } servicereport->backendstate[current_backend].totuses++; } else if (newstate != st_intermediate) { @@ -123,8 +124,7 @@ void mark_activity (double nbytes, double nsec, (servicereport->backendstate[current_backend].avail)); /* Run the onfailure hook if one is specified. */ - if (newstate == st_unavailable) { - + if (marked_unavailable) { msg ("Service %s: extcmd-onfail: " " current_backend = %d, clients = %d, totclients = %d, cmd = %s", activeservice->name, current_backend, diff --git a/src/msg.c b/src/msg.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/msgdumpbuf.c b/src/msgdumpbuf.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/netbuffer.c b/src/netbuffer.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/netbufread.c b/src/netbufread.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/netcopy.c b/src/netcopy.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/netread.c b/src/netread.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/netwrite.c b/src/netwrite.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/parser.c b/src/parser.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ @@ -285,17 +285,17 @@ static const short yyrline[] = { 0, 130, 133, 137, 166, 171, 179, 182, 186, 191, 197, 203, 209, 219, 225, 231, 237, 243, 249, 255, - 261, 267, 273, 279, 286, 445, 457, 469, 478, 485, - 490, 503, 507, 513, 522, 524, 526, 530, 547, 554, - 564, 573, 577, 581, 585, 589, 593, 597, 601, 607, - 619, 628, 640, 652, 664, 676, 688, 700, 705, 709, - 715, 727, 739, 751, 763, 772, 782, 790, 798, 804, - 811, 816, 821, 826, 831, 836, 841, 846, 851, 856, - 861, 866, 871, 876, 881, 886, 891, 896, 901, 908, - 921, 933, 945, 951, 963, 975, 987, 999, 1011, 1023, - 1032, 1041, 1053, 1062, 1074, 1086, 1098, 1110, 1122, 1134, - 1143, 1148, 1153, 1158, 1163, 1168, 1173, 1178, 1183, 1188, - 1193, 1198, 1203, 1208, 1213, 1218, 1223, 1228 + 261, 267, 273, 279, 286, 451, 463, 475, 484, 491, + 496, 509, 513, 519, 528, 530, 532, 536, 553, 560, + 570, 579, 583, 587, 591, 595, 599, 603, 607, 613, + 625, 634, 646, 658, 670, 682, 694, 706, 711, 715, + 721, 733, 745, 757, 769, 778, 788, 796, 804, 810, + 817, 822, 827, 832, 837, 842, 847, 852, 857, 862, + 867, 872, 877, 882, 887, 892, 897, 902, 907, 914, + 927, 939, 951, 957, 969, 981, 993, 1005, 1017, 1029, + 1038, 1047, 1059, 1068, 1080, 1092, 1104, 1116, 1128, 1140, + 1149, 1154, 1159, 1164, 1169, 1174, 1179, 1184, 1189, 1194, + 1199, 1204, 1209, 1214, 1219, 1224, 1229, 1234 }; #endif @@ -1513,6 +1513,12 @@ case 24: cur_backend.weight = 1; if (cur_backend.retries < 1) cur_backend.retries = 1; + if (! cur_backend.onstart) + cur_backend.onstart = xstrdup (""); + if (! cur_backend.onfail) + cur_backend.onfail = xstrdup (""); + if (! cur_backend.onend) + cur_backend.onend = xstrdup (""); /* Add to the list. */ cur_service.backend = xrealloc (cur_service.backend, @@ -1525,7 +1531,7 @@ case 24: ; break;} case 25: -#line 448 "parser.y" +#line 454 "parser.y" { pimsg ("port statement:", lastnr); yyval.n = 1; @@ -1535,7 +1541,7 @@ case 25: ; break;} case 26: -#line 460 "parser.y" +#line 466 "parser.y" { psmsg ("bindto statement:", laststr); yyval.n = 1; @@ -1545,7 +1551,7 @@ case 26: ; break;} case 27: -#line 471 "parser.y" +#line 477 "parser.y" { setlaststr (laststring); free (laststring); @@ -1553,13 +1559,13 @@ case 27: ; break;} case 28: -#line 480 "parser.y" +#line 486 "parser.y" { setlastnr (yytext); ; break;} case 30: -#line 494 "parser.y" +#line 500 "parser.y" { pimsg ("verbosity statement:", lastnr); yyval.n = 1; @@ -1569,25 +1575,25 @@ case 30: ; break;} case 31: -#line 504 "parser.y" +#line 510 "parser.y" { lastnr = 1; ; break;} case 32: -#line 508 "parser.y" +#line 514 "parser.y" { lastnr = 0; ; break;} case 33: -#line 517 "parser.y" +#line 523 "parser.y" { yyval = yyvsp[-2]; ; break;} case 37: -#line 532 "parser.y" +#line 538 "parser.y" { pimsg ("dispatch mode statement:", lastnr); yyval.n = 1; @@ -1603,13 +1609,13 @@ case 37: ; break;} case 38: -#line 549 "parser.y" +#line 555 "parser.y" { setlastovernr (yytext); ; break;} case 39: -#line 555 "parser.y" +#line 561 "parser.y" { psmsg ("external handler:", laststr); if (lastnr != ds_externalhandler) @@ -1619,7 +1625,7 @@ case 39: ; break;} case 40: -#line 566 "parser.y" +#line 572 "parser.y" { yyval.n = 1; yyval.set = xmalloc (sizeof(Confset)); @@ -1627,55 +1633,55 @@ case 40: ; break;} case 41: -#line 574 "parser.y" +#line 580 "parser.y" { lastnr = ds_roundrobin; ; break;} case 42: -#line 578 "parser.y" +#line 584 "parser.y" { lastnr = ds_random; ; break;} case 43: -#line 582 "parser.y" +#line 588 "parser.y" { lastnr = ds_byduration; ; break;} case 44: -#line 586 "parser.y" +#line 592 "parser.y" { lastnr = ds_bysize; ; break;} case 45: -#line 590 "parser.y" +#line 596 "parser.y" { lastnr = ds_byorder; ; break;} case 46: -#line 594 "parser.y" +#line 600 "parser.y" { lastnr = ds_byconnections; ; break;} case 47: -#line 598 "parser.y" +#line 604 "parser.y" { lastnr = ds_externalhandler; ; break;} case 48: -#line 602 "parser.y" +#line 608 "parser.y" { lastnr = ds_byclientip; ; break;} case 49: -#line 610 "parser.y" +#line 616 "parser.y" { pimsg ("user account statement:", laststr); yyval.n = 1; @@ -1685,7 +1691,7 @@ case 49: ; break;} case 50: -#line 621 "parser.y" +#line 627 "parser.y" { setlaststr (laststring); free (laststring); @@ -1693,7 +1699,7 @@ case 50: ; break;} case 51: -#line 631 "parser.y" +#line 637 "parser.y" { pimsg ("reviving interval statement:", lastnr); yyval.n = 1; @@ -1703,7 +1709,7 @@ case 51: ; break;} case 52: -#line 643 "parser.y" +#line 649 "parser.y" { pimsg ("backlog statement:", lastnr); yyval.n = 1; @@ -1713,7 +1719,7 @@ case 52: ; break;} case 53: -#line 655 "parser.y" +#line 661 "parser.y" { pimsg ("shmkey statement:", lastnr); yyval.n = 1; @@ -1723,7 +1729,7 @@ case 53: ; break;} case 54: -#line 667 "parser.y" +#line 673 "parser.y" { pimsg ("connection timeout statement:", lastnr); yyval.n = 1; @@ -1733,7 +1739,7 @@ case 54: ; break;} case 55: -#line 679 "parser.y" +#line 685 "parser.y" { pimsg ("max clients statement (service):", lastnr); yyval.n = 1; @@ -1743,7 +1749,7 @@ case 55: ; break;} case 56: -#line 691 "parser.y" +#line 697 "parser.y" { pimsg ("service type:", lastnr); yyval.n = 1; @@ -1753,19 +1759,19 @@ case 56: ; break;} case 58: -#line 706 "parser.y" +#line 712 "parser.y" { lastnr = type_any; ; break;} case 59: -#line 710 "parser.y" +#line 716 "parser.y" { lastnr = type_http; ; break;} case 60: -#line 718 "parser.y" +#line 724 "parser.y" { psmsg ("allow from: ", laststr); yyval.n = 1; @@ -1775,7 +1781,7 @@ case 60: ; break;} case 61: -#line 730 "parser.y" +#line 736 "parser.y" { psmsg ("allow from: ", laststr); yyval.n = 1; @@ -1785,7 +1791,7 @@ case 61: ; break;} case 62: -#line 742 "parser.y" +#line 748 "parser.y" { psmsg ("allow file: ", laststr); yyval.n = 1; @@ -1795,7 +1801,7 @@ case 62: ; break;} case 63: -#line 754 "parser.y" +#line 760 "parser.y" { psmsg ("allow file: ", laststr); yyval.n = 1; @@ -1805,7 +1811,7 @@ case 63: ; break;} case 64: -#line 765 "parser.y" +#line 771 "parser.y" { setlaststr (laststring); free (laststring); @@ -1813,20 +1819,20 @@ case 64: ; break;} case 65: -#line 777 "parser.y" +#line 783 "parser.y" { yyval = yyvsp[-1]; ; break;} case 66: -#line 784 "parser.y" +#line 790 "parser.y" { psmsg ("backend name:", yytext); cur_backend.name = xstrdup (yytext); ; break;} case 67: -#line 792 "parser.y" +#line 798 "parser.y" { yyvsp[-1].n++; yyvsp[-1].set = xrealloc (yyvsp[-1].set, yyvsp[-1].n * sizeof(Confset)); @@ -1835,152 +1841,152 @@ case 67: ; break;} case 68: -#line 799 "parser.y" +#line 805 "parser.y" { yyval = yyvsp[0]; ; break;} case 69: -#line 806 "parser.y" +#line 812 "parser.y" { yyval = yyvsp[0]; ; break;} case 70: -#line 812 "parser.y" +#line 818 "parser.y" { psmsg ("backend server:", yyvsp[0].set[0].v.sval); yyval = yyvsp[0]; ; break;} case 71: -#line 817 "parser.y" +#line 823 "parser.y" { pimsg ("backend port:", yyvsp[0].set[0].v.ival); yyval = yyvsp[0]; ; break;} case 72: -#line 822 "parser.y" +#line 828 "parser.y" { pimsg ("backend verbosity:", yyvsp[0].set[0].v.ival); yyval = yyvsp[0]; ; break;} case 73: -#line 827 "parser.y" +#line 833 "parser.y" { psmsg ("backend onstart:", yyvsp[0].set[0].v.sval); yyval = yyvsp[0]; ; break;} case 74: -#line 832 "parser.y" +#line 838 "parser.y" { psmsg ("backend onend:", yyvsp[0].set[0].v.sval); yyval = yyvsp[0]; ; break;} case 75: -#line 837 "parser.y" +#line 843 "parser.y" { psmsg ("backend onfail:", yyvsp[0].set[0].v.sval); yyval = yyvsp[0]; ; break;} case 76: -#line 842 "parser.y" +#line 848 "parser.y" { psmsg ("backend trafficlog:", yyvsp[0].set[0].v.sval); yyval = yyvsp[0]; ; break;} case 77: -#line 847 "parser.y" +#line 853 "parser.y" { psmsg ("backend trafficlog:", yyvsp[0].set[0].v.sval); yyval = yyvsp[0]; ; break;} case 78: -#line 852 "parser.y" +#line 858 "parser.y" { pimsg ("backend weight:", yyvsp[0].set[0].v.ival); yyval = yyvsp[0]; ; break;} case 79: -#line 857 "parser.y" +#line 863 "parser.y" { pimsg ("backend decay:", yyvsp[0].set[0].v.ival); yyval = yyvsp[0]; ; break;} case 80: -#line 862 "parser.y" +#line 868 "parser.y" { pimsg ("backend maxconnections:", yyvsp[0].set[0].v.ival); yyval = yyvsp[0]; ; break;} case 81: -#line 867 "parser.y" +#line 873 "parser.y" { psmsg ("backend sticky cookie:", yyvsp[0].set[0].v.sval); yyval = yyvsp[0]; ; break;} case 82: -#line 872 "parser.y" +#line 878 "parser.y" { psmsg ("addclientheader:", yyvsp[0].set[0].v.sval); yyval = yyvsp[0]; ; break;} case 83: -#line 877 "parser.y" +#line 883 "parser.y" { psmsg ("setclientheader:", yyvsp[0].set[0].v.sval); yyval = yyvsp[0]; ; break;} case 84: -#line 882 "parser.y" +#line 888 "parser.y" { psmsg ("appendclientheader:", yyvsp[0].set[0].v.sval); yyval = yyvsp[0]; ; break;} case 85: -#line 887 "parser.y" +#line 893 "parser.y" { psmsg ("addserverheader:", yyvsp[0].set[0].v.sval); yyval = yyvsp[0]; ; break;} case 86: -#line 892 "parser.y" +#line 898 "parser.y" { psmsg ("setserverheader:", yyvsp[0].set[0].v.sval); yyval = yyvsp[0]; ; break;} case 87: -#line 897 "parser.y" +#line 903 "parser.y" { psmsg ("appendserverheader:", yyvsp[0].set[0].v.sval); yyval = yyvsp[0]; ; break;} case 88: -#line 902 "parser.y" +#line 908 "parser.y" { pimsg ("backend retries:", yyvsp[0].set[0].v.ival); yyval = yyvsp[0]; ; break;} case 89: -#line 912 "parser.y" +#line 918 "parser.y" { psmsg ("server statement:", laststr); yyval.n = 1; @@ -1990,7 +1996,7 @@ case 89: ; break;} case 90: -#line 924 "parser.y" +#line 930 "parser.y" { pimsg ("weight statement", lastnr); yyval.n = 1; @@ -2000,7 +2006,7 @@ case 90: ; break;} case 91: -#line 936 "parser.y" +#line 942 "parser.y" { pimsg ("decay statement", lastnr); yyval.n = 1; @@ -2010,13 +2016,13 @@ case 91: ; break;} case 92: -#line 946 "parser.y" +#line 952 "parser.y" { setlaststr (laststring); ; break;} case 93: -#line 954 "parser.y" +#line 960 "parser.y" { pimsg ("retries:", lastnr); yyval.n = 1; @@ -2026,7 +2032,7 @@ case 93: ; break;} case 94: -#line 966 "parser.y" +#line 972 "parser.y" { psmsg ("onstart statement:", laststr); yyval.n = 1; @@ -2036,7 +2042,7 @@ case 94: ; break;} case 95: -#line 978 "parser.y" +#line 984 "parser.y" { psmsg ("onfail statement:", laststr); yyval.n = 1; @@ -2046,7 +2052,7 @@ case 95: ; break;} case 96: -#line 990 "parser.y" +#line 996 "parser.y" { psmsg ("onend statement:", laststr); yyval.n = 1; @@ -2056,7 +2062,7 @@ case 96: ; break;} case 97: -#line 1002 "parser.y" +#line 1008 "parser.y" { psmsg ("trafficlog statement:", laststr); yyval.n = 1; @@ -2066,7 +2072,7 @@ case 97: ; break;} case 98: -#line 1014 "parser.y" +#line 1020 "parser.y" { psmsg ("throughputlog statement:", laststr); yyval.n = 1; @@ -2076,7 +2082,7 @@ case 98: ; break;} case 99: -#line 1025 "parser.y" +#line 1031 "parser.y" { setlaststr (laststring); free (laststring); @@ -2084,7 +2090,7 @@ case 99: ; break;} case 100: -#line 1034 "parser.y" +#line 1040 "parser.y" { setlaststr (laststring); free (laststring); @@ -2092,7 +2098,7 @@ case 100: ; break;} case 101: -#line 1044 "parser.y" +#line 1050 "parser.y" { psmsg ("insertcookie statement:", laststr); yyval.n = 1; @@ -2102,7 +2108,7 @@ case 101: ; break;} case 102: -#line 1055 "parser.y" +#line 1061 "parser.y" { setlaststr (laststring); free (laststring); @@ -2110,7 +2116,7 @@ case 102: ; break;} case 103: -#line 1065 "parser.y" +#line 1071 "parser.y" { psmsg ("addclientheader statement:", laststr); yyval.n = 1; @@ -2120,7 +2126,7 @@ case 103: ; break;} case 104: -#line 1077 "parser.y" +#line 1083 "parser.y" { psmsg ("setclientheader statement:", laststr); yyval.n = 1; @@ -2130,7 +2136,7 @@ case 104: ; break;} case 105: -#line 1089 "parser.y" +#line 1095 "parser.y" { psmsg ("appendclientheader statement:", laststr); yyval.n = 1; @@ -2140,7 +2146,7 @@ case 105: ; break;} case 106: -#line 1101 "parser.y" +#line 1107 "parser.y" { psmsg ("addserverheader statement:", laststr); yyval.n = 1; @@ -2150,7 +2156,7 @@ case 106: ; break;} case 107: -#line 1113 "parser.y" +#line 1119 "parser.y" { psmsg ("setserverheader statement:", laststr); yyval.n = 1; @@ -2160,7 +2166,7 @@ case 107: ; break;} case 108: -#line 1125 "parser.y" +#line 1131 "parser.y" { psmsg ("appendserverheader statement:", laststr); yyval.n = 1; @@ -2170,7 +2176,7 @@ case 108: ; break;} case 109: -#line 1136 "parser.y" +#line 1142 "parser.y" { setlaststr (laststring); free (laststring); @@ -2178,109 +2184,109 @@ case 109: ; break;} case 110: -#line 1143 "parser.y" +#line 1149 "parser.y" { yyerrmsg = "HTTP header specifier expected"; ; break;} case 111: -#line 1148 "parser.y" +#line 1154 "parser.y" { yyerrmsg = "cookie specifier expected"; ; break;} case 112: -#line 1153 "parser.y" +#line 1159 "parser.y" { yyerrmsg = "number expected"; ; break;} case 113: -#line 1158 "parser.y" +#line 1164 "parser.y" { yyerrmsg = "hostname or IP address expected"; ; break;} case 114: -#line 1163 "parser.y" +#line 1169 "parser.y" { yyerrmsg = "'service' expected"; ; break;} case 115: -#line 1168 "parser.y" +#line 1174 "parser.y" { yyerrmsg = "backend definition statement expected"; ; break;} case 116: -#line 1173 "parser.y" +#line 1179 "parser.y" { yyerrmsg = "service body statement expected"; ; break;} case 117: -#line 1178 "parser.y" +#line 1184 "parser.y" { yyerrmsg = "semicolon (;) expected"; ; break;} case 118: -#line 1183 "parser.y" +#line 1189 "parser.y" { yyerrmsg = "'on' or 'off' expetcted"; ; break;} case 119: -#line 1188 "parser.y" +#line 1194 "parser.y" { yyerrmsg = "dispatch method expected"; ; break;} case 120: -#line 1193 "parser.y" +#line 1199 "parser.y" { yyerrmsg = "command line expected"; ; break;} case 121: -#line 1198 "parser.y" +#line 1204 "parser.y" { yyerrmsg = "file name expected"; ; break;} case 122: -#line 1203 "parser.y" +#line 1209 "parser.y" { yyerrmsg = "service name (identifier) expected"; ; break;} case 123: -#line 1208 "parser.y" +#line 1214 "parser.y" { yyerrmsg = "backend name (identifier) expected"; ; break;} case 124: -#line 1213 "parser.y" +#line 1219 "parser.y" { yyerrmsg = "IP address or 'any' expected"; ; break;} case 125: -#line 1218 "parser.y" +#line 1224 "parser.y" { yyerrmsg = "Service type expected ('any', 'stickyhttp', ...)"; ; break;} case 126: -#line 1223 "parser.y" +#line 1229 "parser.y" { yyerrmsg = "IP filter(s) expected"; ; break;} case 127: -#line 1228 "parser.y" +#line 1234 "parser.y" { yyerrmsg = "username expected"; ; @@ -2518,4 +2524,4 @@ yyreturn: #endif return yyresult; } -#line 1232 "parser.y" +#line 1238 "parser.y" diff --git a/src/parser.h b/src/parser.h @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/parser.y b/src/parser.y @@ -430,6 +430,12 @@ servicebody: cur_backend.weight = 1; if (cur_backend.retries < 1) cur_backend.retries = 1; + if (! cur_backend.onstart) + cur_backend.onstart = xstrdup (""); + if (! cur_backend.onfail) + cur_backend.onfail = xstrdup (""); + if (! cur_backend.onend) + cur_backend.onend = xstrdup (""); /* Add to the list. */ cur_service.backend = xrealloc (cur_service.backend, diff --git a/src/restart.c b/src/restart.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/runservice.c b/src/runservice.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/serve.c b/src/serve.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/setprogramtitle.c b/src/setprogramtitle.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/showservices.c b/src/showservices.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/showstatus.c b/src/showstatus.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/stagetostring.c b/src/stagetostring.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/statetostring.c b/src/statetostring.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/stopdaemon.c b/src/stopdaemon.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/strcasestr.c b/src/strcasestr.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/strexpandformat.c b/src/strexpandformat.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/stringtostate.c b/src/stringtostate.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/strlcat.c b/src/strlcat.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/strprintf.c b/src/strprintf.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/strvprintf.c b/src/strvprintf.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/sysrun.c b/src/sysrun.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ @@ -13,8 +13,6 @@ void sysrun (char const *cmd) { if (!cmd || ! *cmd) return; - kill (getpid(), SIGSEGV); - expanded = str_expand_format (cmd); msg ("Service %s: running command: '%s'", activeservice->name, expanded); uid_assume(); diff --git a/src/tcpserve.c b/src/tcpserve.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/tellservice.c b/src/tellservice.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/thruputlog.c b/src/thruputlog.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/trafficlog.c b/src/trafficlog.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/uidassume.c b/src/uidassume.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/uidrestore.c b/src/uidrestore.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/unlockreporter.c b/src/unlockreporter.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/usage.c b/src/usage.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/vsyslog.c b/src/vsyslog.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/wakeuphandler.c b/src/wakeuphandler.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/warning.c b/src/warning.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/writelog.c b/src/writelog.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/xmalloc.c b/src/xmalloc.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/xrealloc.c b/src/xrealloc.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/xstrcat.c b/src/xstrcat.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/xstrcatch.c b/src/xstrcatch.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ diff --git a/src/xstrdup.c b/src/xstrdup.c @@ -1,5 +1,5 @@ /************************************************************************* - * This file is part of Crosroads 1.36, a load balancer and fail over + * This file is part of Crosroads 1.37, a load balancer and fail over * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL. * Visit http://crossroads.e-tunity.com for information. *************************************************************************/ @@ -8,7 +8,7 @@ char *xstrdup (char const *what) { char *ret; - if (!what || !*what) + if (!what) return (0); if (! (ret = strdup (what)) ) error ("Out of memory (while copying '%s')", what);