Hello community,

here is the log from the commit of package haproxy for openSUSE:Factory checked 
in at 2013-10-15 10:42:00
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/haproxy (Old)
 and      /work/SRC/openSUSE:Factory/.haproxy.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "haproxy"

Changes:
--------
New Changes file:

--- /dev/null   2013-10-11 12:16:15.204037506 +0200
+++ /work/SRC/openSUSE:Factory/.haproxy.new/haproxy.changes     2013-10-15 
10:42:00.000000000 +0200
@@ -0,0 +1,591 @@
+-------------------------------------------------------------------
+Thu Oct 10 15:16:32 UTC 2013 - [email protected]
+
+- license update:  GPL-2.0+ and  LGPL-2.1+
+  only header files are LGPL, the rest is still GPL
+
+-------------------------------------------------------------------
+Tue Jun 18 09:14:13 UTC 2013 - [email protected]
+
+- update to 1.4.24 (bnc#825412)
+  - BUG/MAJOR: backend: consistent hash can loop forever in certain
+    circumstances
+  - BUG/MEDIUM: checks: disable TCP quickack when pure TCP checks
+    are used
+  - MEDIUM: protocol: implement a "drain" function in protocol
+    layers
+  - BUG/CRITICAL: fix a possible crash when using negative header
+    occurrences CVE-2013-2175
+
+-------------------------------------------------------------------
+Wed Apr  3 14:47:43 UTC 2013 - [email protected]
+
+- update to 1.4.23 CVE-2013-1912
+  - CONTRIB: halog: sort URLs by avg bytes_read or total bytes_read
+  - BUG: fix garbage data when http-send-name-header replaces an
+    existing header
+  - BUG/MEDIUM: remove supplementary groups when changing gid
+  - BUG/MINOR: Correct logic in cut_crlf()
+  - BUG/MINOR: config: use a copy of the file name in proxy
+    configurations
+  - BUG/MINOR: epoll: correctly disable FD polling in fd_rem()
+  - MINOR: halog: sort output by cookie code
+  - BUG/MINOR: halog: -ad/-ac report the correct number of output
+    lines
+  - BUG/MINOR: halog: fix help message for -ut/-uto
+  - BUG/MEDIUM: http: set DONTWAIT on data when switching to tunnel
+    mode
+  - BUG/MEDIUM: command-line option -D must have precedence over
+    "debug"
+  - OPTIM: halog: keep a fast path for the lines-count only
+  - MINOR: halog: add a parameter to limit output line count
+  - BUG: halog: fix broken output limitation
+  - MEDIUM: checks: avoid accumulating TIME_WAITs during checks
+  - MEDIUM: checks: prevent TIME_WAITs from appearing also on
+    timeouts
+  - BUG/MAJOR: cli: show sess <id> may randomly corrupt the
+    back-ref list
+  - BUG/MINOR: http: don't report client aborts as server errors
+  - BUG/MINOR: http: don't log a 503 on client errors while waiting
+    for requests
+  - BUG/MEDIUM: tcp: process could theorically crash on lack of
+    source ports
+  - BUG/MINOR: http: don't abort client connection on premature
+    responses
+  - BUILD: no need to clean up when making git-tar
+  - MINOR: http: always report PR-- flags for redirect rules
+  - BUG/MINOR: time: frequency counters are not totally accurate
+  - BUG/MINOR: http: don't process abortonclose when request was
+    sent
+  - BUG/MINOR: epoll: use a fix maxevents argument in epoll_wait()
+  - BUG/MINOR: config: fix improper check for failed memory alloc
+    in ACL parser
+  - BUG/MEDIUM: checks: ensure the health_status is always within
+    bounds
+  - CLEANUP: http: remove a useless null check
+  - BUG/MEDIUM: signal: signal handler does not properly check for
+    signal bounds
+  - BUG/MEDIUM: uri_auth: missing NULL check and memory leak on
+    memory shortage
+  - CLEANUP: config: slowstart is never negative
+  - BUILD: improve the makefile's support for libpcre
+  - BUG/MINOR: checks: fix an warning introduced by commit 2f61455a
+  - MEDIUM: halog: add support for counting per source address
+    (-ic)
+  - DOC: mention the new HTTP 307 and 308 redirect statues
+    (cherry picked from commit
+    b67fdc4cd8bde202f2805d98683ddab929469a05)
+  - MEDIUM: poll: do not use FD_* macros anymore
+  - BUG/MAJOR: ev_select: disable the select() poller if maxsock >
+    FD_SETSIZE
+  - BUILD: enable poll() by default in the makefile
+  - BUILD: add explicit support for Mac OS/X
+  - BUG/CRITICAL: using HTTP information in tcp-request content may
+    crash the process CVE-2013-1912
+  - MEDIUM: http: implement redirect 307 and 308
+  - MINOR: http: status 301 should not be marked non-cacheable
+- adapt haproxy-makefile_lib.patch to the rewritten Makefile
+
+-------------------------------------------------------------------
+Mon Nov 12 14:10:33 UTC 2012 - [email protected]
+
+- switch license tag to spdx format.
+
+-------------------------------------------------------------------
+Mon Nov 12 13:50:46 UTC 2012 - [email protected]
+
+- update to 1.4.22
+  - BUG/MEDIUM: option forwardfor if-none doesn't work with some
+    configurations
+  - MINOR: balance uri: added 'whole' parameter to include query
+    string in hash calculation
+  - DOC: specify the default value for maxconn in the context of a
+    proxy
+  - BUG/MINOR: checks: expire on timeout.check if smaller than
+    timeout.connect
+  - REORG/MINOR: use dedicated proxy flags for the cookie handling
+  - BUG/MINOR: config: do not report twice the incompatibility
+    between cookie and non-http
+  - MINOR: http: add support for "httponly" and "secure" cookie
+    attributes
+  - MEDIUM: stats: add support for soft stop/soft start in the
+    admin interface
+  - BUILD: add support for linux kernels >= 2.6.28
+  - MINOR: contrib/iprange: add a network IP range to mask
+    converter
+  - BUILD: add an AIX 5.2 (and later) target.
+  - MINOR: halog: use the more recent dual-mode fgets2
+    implementation
+  - BUG/MEDIUM: ebtree: ebmb_insert() must not call cmp_bits on
+    full-length matches
+  - CLEANUP: halog: make clean should also remove .o files
+    (cherry picked from commit
+    8ad4193100aafa19f04929670371bf823dbe11d0)
+  - OPTIM: halog: make use of memchr() on platforms which provide a
+    fast one
+  - OPTIM: halog: improve cold-cache behaviour when loading a file
+  - [MINOR] config: make it possible to specify a cookie even
+    without a server
+  - MINOR: config: tolerate server "cookie" setting in non-HTTP
+    mode
+  - BUG/MINOR: tarpit: fix condition to return the HTTP 500 message
+
+-------------------------------------------------------------------
+Tue Oct 30 16:02:03 UTC 2012 - [email protected]
+
+- fix description in the init script
+
+-------------------------------------------------------------------
+Tue May 22 16:47:45 UTC 2012 - [email protected]
+
+- update to 1.4.21 (bnc#763833) CVE-2012-2391
+  - MINOR: patch for minor typo (ressources/resources)
+  - CLEANUP: fix typo in findserver() log message
+  - DOC: cleanup indentation, alignment, columns and chapters
+  - DOC: fix some keywords arguments documentation
+  - MINOR: stats admin: allow unordered parameters in POST requests
+  - MINOR: stats admin: use the backend id instead of its name in
+    the form
+  - BUG/MAJOR: trash must always be the size of a buffer
+  - DOC: fix minor regex example issue and improve doc on stats
+  - BUG/MAJOR: possible crash when using capture headers on TCP
+    frontends
+  - MINOR: config: disable header captures in TCP mode and complain
+  - BUG/MEDIUM: balance source did not properly hash IPv6 addresses
+  - CLEANUP: http: message parser must ignore HTTP_MSG_ERROR
+  - CLEANUP: remove a few warning about unchecked return values in
+    debug code
+  - CLEANUP: http: remove unused http_msg->col
+  - BUG/MINOR: http: error snapshots are wrong if buffer wraps
+  - BUG/MAJOR: checks: don't call set_server_status_* when no LB
+    algo is set
+  - MINOR: proxy: make findproxy() return proxies from numeric IDs
+    too
+  - BUILD: http: stop gcc-4.1.2 from complaining about possibly
+    uninitialized values
+  - BUG/MINOR: stop connect timeout when connect succeeds
+
+-------------------------------------------------------------------
+Sun Mar 11 19:16:20 UTC 2012 - [email protected]
+
+- update to 1.4.20:
+  - BUG/MINOR: fix typo in processing of http-send-name-header
+  - BUG/MEDIUM: correctly disable servers tracking another disabled servers.
+  - BUG/MEDIUM: zero-weight servers must not dequeue requests from the backend
+  - MINOR: halog: add some help on the command line     (cherry picked from
+    commit 615674cdec067066a42f53f5d55628ab7b207e6c)
+  - BUG: queue: fix dequeueing sequence on HTTP keep-alive sessions
+  - BUG: http: disable TCP delayed ACKs when forwarding content-length data
+  - BUG: checks: fix server maintenance exit sequence
+  - BUG/MINOR: stream_sock: don't remove BF_EXPECT_MORE and BF_SEND_DONTWAIT on
+    partial writes
+  - DOC: enumerate valid status codes for "observe layer7"
+
+-------------------------------------------------------------------
+Wed Feb  8 15:30:58 UTC 2012 - [email protected]
+
+- update to 1.4.19
+  - MEDIUM: http: add support for sending the server's name in the
+    outgoing request
+  - BUG/MINOR: fix options forwardfor if-none when an alternative
+    header name is specified
+  - MINOR: task: new function task_schedule() to schedule a wake up
+  - BUG/MEDIUM: checks: fix slowstart behaviour when server
+    tracking is in use
+  - BUG: tcp: option nolinger does not work on backends
+  - BUG: ebtree: ebst_lookup() could return the wrong entry
+  - BUG: http: re-enable TCP quick-ack upon incomplete HTTP
++++ 394 more lines (skipped)
++++ between /dev/null
++++ and /work/SRC/openSUSE:Factory/.haproxy.new/haproxy.changes

New:
----
  haproxy-1.2.16_config_haproxy_user.patch
  haproxy-1.4.24.tar.gz
  haproxy-makefile_lib.patch
  haproxy-rpmlintrc
  haproxy.changes
  haproxy.init
  haproxy.spec
  haproxy.vim

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ haproxy.spec ++++++
#
# spec file for package haproxy
#
# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/

Name:           haproxy
Version:        1.4.24
Release:        0
#
License:         GPL-2.0+ and  LGPL-2.1+
Group:          Productivity/Networking/Web/Proxy
#
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
BuildRequires:  pcre-devel libgcrypt-devel
BuildRequires:  udev
%define pkg_name haproxy
%define pkg_home /var/lib/%{pkg_name}
#
Url:            http://haproxy.1wt.eu/
Source:         http://haproxy.1wt.eu/download/1.4/src/haproxy-%{version}.tar.gz
Source1:        %{pkg_name}.init
Source2:        http://haproxy.1wt.eu/download/contrib/haproxy.vim
Patch1:         haproxy-1.2.16_config_haproxy_user.patch
Patch2:         haproxy-makefile_lib.patch
Source99:       haproxy-rpmlintrc
#
Summary:        The Reliable, High Performance TCP/HTTP Load Balancer
Provides:       %{name}-doc = %{version}
Obsoletes:      %{name}-doc < %{version}

%description
HAProxy implements an event-driven, mono-process model which enables support
for very high number of simultaneous connections at very high speeds.
Multi-process or multi-threaded models can rarely cope with thousands of
connections because of memory limits, system scheduler limits, and lock
contention everywhere. Event-driven models do not have these problems because
implementing all the tasks in user-space allows a finer resource and time
management. The down side is that those programs generally don't scale well on
multi-processor systems. That's the reason why they must be optimized to get
the most work done from every CPU cycle.

%prep
%setup -q
%patch1
%patch2

%build
%{__make} \
    TARGET=linux26 \
    CPU="%{_target_cpu}" \
    USE_PCRE=1 \
    USE_LIBCRYPT=1 \
    LIB="%{_lib}" \
    DEBUG="%{optflags} -fno-strict-aliasing"

%install
%{__install} -D -m 0755 %{pkg_name}              
%{buildroot}%{_sbindir}/%{pkg_name}
%{__install} -D -m 0644 examples/%{pkg_name}.cfg 
%{buildroot}%{_sysconfdir}/%{pkg_name}/%{pkg_name}.cfg
%{__install} -D -m 0755 %{S:1}                   
%{buildroot}%{_sysconfdir}/init.d/%{pkg_name}
%{__ln_s} -f %{_sysconfdir}/init.d/%{pkg_name}   
%{buildroot}%{_sbindir}/rc%{pkg_name}
%{__install} -d -m 0755                          %{buildroot}%{pkg_home}
%{__install} -D -m 0644 %{S:2}                   
%{buildroot}%{_datadir}/%{pkg_name}/%{pkg_name}.vim
%{__install} -D -m 0644 doc/%{pkg_name}.1        
%{buildroot}%{_mandir}/man1/%{pkg_name}.1
gzip %{buildroot}%{_mandir}/man1/%{pkg_name}.1

%clean
%{?buildroot:%{__rm} -rf %{buildroot}}

%pre
/usr/sbin/groupadd -r %{pkg_name} &>/dev/null ||:
/usr/sbin/useradd  -g %{pkg_name} -s /bin/false -r -c "user for %{pkg_name}" -d 
%{pkg_home} %{pkg_name} &>/dev/null ||:

%post
%fillup_and_insserv %{pkg_name}

%preun
%stop_on_removal %{pkg_name}

%postun
%restart_on_update %{pkg_name}
%{insserv_cleanup}

%files
%defattr(-,root,root,-)
%doc CHANGELOG README LICENSE
%doc ROADMAP TODO doc/* examples
%dir %{_sysconfdir}/%{pkg_name}
%config(noreplace) %{_sysconfdir}/%{pkg_name}/%{pkg_name}.cfg
%config(noreplace) %{_sysconfdir}/init.d/%{pkg_name}
%{_sbindir}/haproxy
%{_sbindir}/rchaproxy
%{pkg_home}
%doc %{_mandir}/man1/%{pkg_name}.1.gz
%{_datadir}/%{pkg_name}

%changelog
++++++ haproxy-1.2.16_config_haproxy_user.patch ++++++
Index: examples/examples.cfg
===================================================================
--- examples/examples.cfg.orig
+++ examples/examples.cfg
@@ -3,8 +3,8 @@
 #      log     127.0.0.1 local1
        maxconn 4000
        ulimit-n 8000
-       uid     0
-       gid     0
+       user    haproxy
+       group   haproxy
 #      chroot  /tmp
 #      nbproc  2
 #      daemon
Index: examples/haproxy.cfg
===================================================================
--- examples/haproxy.cfg.orig
+++ examples/haproxy.cfg
@@ -5,9 +5,9 @@
        log 127.0.0.1   local1 notice
        #log loghost    local0 info
        maxconn 4096
-       chroot /usr/share/haproxy
-       uid 99
-       gid 99
+       chroot /var/lib/haproxy
+       user haproxy
+       group haproxy
        daemon
        #debug
        #quiet
++++++ haproxy-makefile_lib.patch ++++++
Index: Makefile
===================================================================
--- Makefile.orig
+++ Makefile
@@ -460,7 +460,7 @@ ifneq ($(USE_PCRE)$(USE_STATIC_PCRE),)
 PCREDIR                := $(shell pcre-config --prefix 2>/dev/null || echo 
/usr/local)
 ifneq ($(PCREDIR),)
 PCRE_INC        := $(PCREDIR)/include
-PCRE_LIB        := $(PCREDIR)/lib
+PCRE_LIB        := $(PCREDIR)/$(LIB)
 endif
 
 ifeq ($(USE_STATIC_PCRE),)
++++++ haproxy-rpmlintrc ++++++
addFilter('wrong-file-end-of-line-encoding .*/examples/errorfiles/.*\.http$')
addFilter('file-contains-current-date 
/usr/share/doc/packages/haproxy/examples/haproxy.spec')
++++++ haproxy.init ++++++
#!/bin/sh
#
### BEGIN INIT INFO
# Provides:          haproxy
# Required-Start:    $syslog $remote_fs
# Should-Start: $time ypbind sendmail
# Required-Stop:     $syslog $remote_fs
# Should-Stop: $time ypbind sendmail
# Default-Start:     3 5
# Default-Stop:      0 1 2 6
# Short-Description: haproxy
# Description:       Start haproxy a reliable, high performance TCP/HTTP load 
balancer
### END INIT INFO
# 
# Any extensions to the keywords given above should be preceeded by 
# X-VendorTag- (X-UnitedLinux- X-SuSE- for us) according to LSB.
# 
# Notes on Required-Start/Should-Start:
# * There are two different issues that are solved by Required-Start
#    and Should-Start
# (a) Hard dependencies: This is used by the runlevel editor to determine
#     which services absolutely need to be started to make the start of
#     this service make sense. Example: nfsserver should have
#     Required-Start: $portmap
#     Also, required services are started before the dependent ones.
#     The runlevel editor will warn about such missing hard dependencies
#     and suggest enabling. During system startup, you may expect an error,
#     if the dependency is not fulfilled.
# (b) Specifying the init script ordering, not real (hard) dependencies.
#     This is needed by insserv to determine which service should be
#     started first (and at a later stage what services can be started
#     in parallel). The tag Should-Start: is used for this.
#     It tells, that if a service is available, it should be started
#     before. If not, never mind.
# * When specifying hard dependencies or ordering requirements, you can 
#   use names of services (contents of their Provides: section)
#   or pseudo names starting with a $. The following ones are available
#   according to LSB (1.1):
#       $local_fs               all local file systems are mounted
#                               (most services should need this!)
#       $remote_fs              all remote file systems are mounted
#                               (note that /usr may be remote, so
#                                many services should Require this!)
#       $syslog                 system logging facility up
#       $network                low level networking (eth card, ...)
#       $named                  hostname resolution available
#       $netdaemons             all network daemons are running
#   The $netdaemons pseudo service has been removed in LSB 1.2.
#   For now, we still offer it for backward compatibility.
#   These are new (LSB 1.2):
#       $time                   the system time has been set correctly  
#       $portmap                SunRPC portmapping service available
#   UnitedLinux extensions:
#       $ALL                    indicates that a script should be inserted
#                               at the end
# * The services specified in the stop tags 
#   (Required-Stop/Should-Stop)
#   specify which services need to be still running when this service
#   is shut down. Often the entries there are just copies or a subset 
#   from the respective start tag.
# * Should-Start/Stop are now part of LSB as of 2.0,
#   formerly SUSE/Unitedlinux used X-UnitedLinux-Should-Start/-Stop.
#   insserv does support both variants.
# * X-UnitedLinux-Default-Enabled: yes/no is used at installation time
#   (%fillup_and_insserv macro in %post of many RPMs) to specify whether
#   a startup script should default to be enabled after installation.
#   It's not used by insserv.
#
# Note on runlevels:
# 0 - halt/poweroff                     6 - reboot
# 1 - single user                       2 - multiuser without network exported
# 3 - multiuser w/ network (text mode)  5 - multiuser w/ network and X11 (xdm)
# 
# Note on script names:
# http://www.linuxbase.org/spec/refspecs/LSB_1.3.0/gLSB/gLSB/scrptnames.html
# A registry has been set up to manage the init script namespace.
# http://www.lanana.org/
# Please use the names already registered or register one or use a
# vendor prefix.


# Check for missing binaries (stale symlinks should not happen)
# Note: Special treatment of stop for LSB conformance
HAPROXY_BIN=/usr/sbin/haproxy
test -x $HAPROXY_BIN || { echo "$HAPROXY_BIN not installed"; 
        if [ "$1" = "stop" ]; then exit 0;
        else exit 5; fi; }
HAPROXY_PID="/var/run/haproxy.pid"
HAPROXY_CONF="/etc/haproxy/haproxy.cfg"
## Check for existence of needed config file and read it
#HAPROXY_CONFIG=/etc/sysconfig/haproxy
#test -r $HAPROXY_CONFIG || { echo "$HAPROXY_CONFIG not existing";
#       if [ "$1" = "stop" ]; then exit 0;
#       else exit 6; fi; }
#
## Read config  
#. $HAPROXY_CONFIG

# Source LSB init functions
# providing start_daemon, killproc, pidofproc, 
# log_success_msg, log_failure_msg and log_warning_msg.
# This is currently not used by UnitedLinux based distributions and
# not needed for init scripts for UnitedLinux only. If it is used,
# the functions from rc.status should not be sourced or used.
#. /lib/lsb/init-functions

# Shell functions sourced from /etc/rc.status:
#      rc_check         check and set local and overall rc status
#      rc_status        check and set local and overall rc status
#      rc_status -v     be verbose in local rc status and clear it afterwards
#      rc_status -v -r  ditto and clear both the local and overall rc status
#      rc_status -s     display "skipped" and exit with status 3
#      rc_status -u     display "unused" and exit with status 3
#      rc_failed        set local and overall rc status to failed
#      rc_failed <num>  set local and overall rc status to <num>
#      rc_reset         clear both the local and overall rc status
#      rc_exit          exit appropriate to overall rc status
#      rc_active        checks whether a service is activated by symlinks
. /etc/rc.status

# Reset status of this service
rc_reset

# Return values acc. to LSB for all commands but status:
# 0       - success
# 1       - generic or unspecified error
# 2       - invalid or excess argument(s)
# 3       - unimplemented feature (e.g. "reload")
# 4       - user had insufficient privileges
# 5       - program is not installed
# 6       - program is not configured
# 7       - program is not running
# 8--199  - reserved (8--99 LSB, 100--149 distrib, 150--199 appl)
# 
# Note that starting an already running service, stopping
# or restarting a not-running service as well as the restart
# with force-reload (in case signaling is not supported) are
# considered a success.

function haproxy_check() {
        HAPROXY_CONFIG_CHECK="$($HAPROXY_BIN -c -q -f $HAPROXY_CONF 2>&1)"
        if [ $? -ne 0 ] ; then
                echo "" >&2
                echo "$HAPROXY_CONFIG_CHECK" >&2
                rc_failed
                rc_status -v
                exit 1
        else
                return 0
        fi
}

case "$1" in
    start)
        echo -n "Starting haproxy "
        ## Start daemon with startproc(8). If this fails
        ## the return value is set appropriately by startproc.
        haproxy_check
        /sbin/startproc $HAPROXY_BIN -D -f $HAPROXY_CONF -p $HAPROXY_PID
        # Remember status and be verbose
        rc_status -v
        ;;
    stop)
        echo -n "Shutting down haproxy "
        ## Stop daemon with killproc(8) and if this fails
        ## killproc sets the return value according to LSB.

        /sbin/killproc -TERM $HAPROXY_BIN

        # Remember status and be verbose
        rc_status -v
        ;;
    try-restart|condrestart)
        ## Do a restart only if the service was active before.
        ## Note: try-restart is now part of LSB (as of 1.9).
        ## RH has a similar command named condrestart.
        if test "$1" = "condrestart"; then
                echo "${attn} Use try-restart ${done}(LSB)${attn} rather than 
condrestart ${warn}(RH)${norm}"
        fi
        $0 status
        if test $? = 0; then
                # we us reload here for a graceful restart during update
                $0 reload
        else
                rc_reset        # Not running is not a failure.
        fi
        # Remember status and be quiet
        rc_status
        ;;
    restart)
        ## Stop the service and regardless of whether it was
        ## running or not, start it again.
        haproxy_check
        $0 stop
        $0 start

        # Remember status and be quiet
        rc_status
        ;;
    check)
        ## Stop the service and regardless of whether it was
        ## running or not, start it again.
        echo -n "Checking config of haproxy "
        haproxy_check
        rc_status -v
        ;;
    reload|force-reload)
        ## Like force-reload, but if daemon does not support
        ## signaling, do nothing (!)

        haproxy_check
        # If it supports signaling:
        echo -n "Reload service haproxy "
        $HAPROXY_BIN -p $HAPROXY_PID -D -f $HAPROXY_CONF -sf $(cat 
$HAPROXY_PID) 
        rc_status -v
        ;;
    status)
        echo -n "Checking for service haproxy "
        ## Check status with checkproc(8), if process is running
        ## checkproc will return with exit status 0.

        # Return value is slightly different for the status command:
        # 0 - service up and running
        # 1 - service dead, but /var/run/  pid  file exists
        # 2 - service dead, but /var/lock/ lock file exists
        # 3 - service not running (unused)
        # 4 - service status unknown :-(
        # 5--199 reserved (5--99 LSB, 100--149 distro, 150--199 appl.)

        # NOTE: checkproc returns LSB compliant status values.
        /sbin/checkproc $HAPROXY_BIN
        # NOTE: rc_status knows that we called this init script with
        # "status" option and adapts its messages accordingly.
        rc_status -v
        ;;
    probe)
        ## Optional: Probe for the necessity of a reload, print out the
        ## argument to this init script which is required for a reload.
        ## Note: probe is not (yet) part of LSB (as of 1.9)

        test $HAPROXY_CONF -nt $HAPROXY_PID && echo reload
        ;;
    *)
        echo "Usage: $0 
{start|stop|status|try-restart|restart|force-reload|reload|probe}"
        exit 1
        ;;
esac
rc_exit
++++++ haproxy.vim ++++++
" Vim syntax file
" Language:    HAproxy
" Maintainer:  Bruno Michel <[email protected]>
" Last Change: Mar 30, 2007
" Version:     0.3
" URL:         http://haproxy.1wt.eu/
" URL:         http://vim.sourceforge.net/scripts/script.php?script_id=1845

" It is suggested to add the following line to $HOME/.vimrc :
"    au BufRead,BufNewFile haproxy* set ft=haproxy

" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
if version < 600
        syntax clear
elseif exists("b:current_syntax")
        finish
endif

if version >= 600
        setlocal iskeyword=_,-,a-z,A-Z,48-57
else
        set iskeyword=_,-,a-z,A-Z,48-57
endif


" Escaped chars
syn match   hapEscape    +\\\(\\\| \|n\|r\|t\|#\|x\x\x\)+

" Comments
syn match   hapComment   /#.*$/ contains=hapTodo
syn keyword hapTodo      contained TODO FIXME XXX
syn case ignore

" Sections
syn match   hapSection   /^\s*\(global\|defaults\)/
syn match   hapSection   /^\s*\(listen\|frontend\|backend\|ruleset\)/         
skipwhite nextgroup=hapSectLabel
syn match   hapSectLabel /\S\+/                                               
skipwhite nextgroup=hapIp1 contained
syn match   hapIp1       
/\(\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}\)\?:\d\{1,5}/        nextgroup=hapIp2 
contained
syn match   hapIp2       
/,\(\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}\)\?:\d\{1,5}/hs=s+1 nextgroup=hapIp2 
contained

" Parameters
syn keyword hapParam     chroot cliexp clitimeout contimeout
syn keyword hapParam     daemon debug disabled
syn keyword hapParam     enabled
syn keyword hapParam     fullconn
syn keyword hapParam     gid grace
syn keyword hapParam     maxconn monitor-uri
syn keyword hapParam     nbproc noepoll nopoll
syn keyword hapParam     pidfile
syn keyword hapParam     quiet
syn keyword hapParam     redispatch retries
syn keyword hapParam     reqallow  reqdel  reqdeny  reqpass  reqtarpit  
skipwhite nextgroup=hapRegexp
syn keyword hapParam     reqiallow reqidel reqideny reqipass reqitarpit 
skipwhite nextgroup=hapRegexp
syn keyword hapParam     rspdel  rspdeny    skipwhite nextgroup=hapRegexp
syn keyword hapParam     rspidel rspideny   skipwhite nextgroup=hapRegexp
syn keyword hapParam     reqsetbe reqisetbe skipwhite nextgroup=hapRegexp2
syn keyword hapParam     reqadd reqiadd rspadd rspiadd
syn keyword hapParam     server source srvexp srvtimeout
syn keyword hapParam     uid ulimit-n
syn keyword hapParam     reqrep reqirep rsprep rspirep    skipwhite 
nextgroup=hapRegexp
syn keyword hapParam     errorloc errorloc302 errorloc303 skipwhite 
nextgroup=hapStatus
syn keyword hapParam     default_backend                  skipwhite 
nextgroup=hapSectLabel
syn keyword hapParam     appsession  skipwhite nextgroup=hapAppSess
syn keyword hapParam     bind        skipwhite nextgroup=hapIp1
syn keyword hapParam     balance     skipwhite nextgroup=hapBalance
syn keyword hapParam     cookie      skipwhite nextgroup=hapCookieNam
syn keyword hapParam     capture     skipwhite nextgroup=hapCapture
syn keyword hapParam     dispatch    skipwhite nextgroup=hapIpPort
syn keyword hapParam     source      skipwhite nextgroup=hapIpPort
syn keyword hapParam     mode        skipwhite nextgroup=hapMode
syn keyword hapParam     monitor-net skipwhite nextgroup=hapIPv4Mask
syn keyword hapParam     option      skipwhite nextgroup=hapOption
syn keyword hapParam     stats       skipwhite nextgroup=hapStats
syn keyword hapParam     server      skipwhite nextgroup=hapServerN
syn keyword hapParam     source      skipwhite nextgroup=hapServerEOL
syn keyword hapParam     log         skipwhite nextgroup=hapGLog,hapLogIp

" Options and additional parameters
syn keyword hapAppSess   contained len timeout
syn keyword hapBalance   contained roundrobin source
syn keyword hapLen       contained len
syn keyword hapGLog      contained global
syn keyword hapMode      contained http tcp health
syn keyword hapOption    contained abortonclose allbackups checkcache clitcpka 
dontlognull forceclose forwardfor
syn keyword hapOption    contained httpchk httpclose httplog keepalive logasap 
persist srvtcpka ssl-hello-chk
syn keyword hapOption    contained tcplog tcpka tcpsplice
syn keyword hapOption    contained except skipwhite nextgroup=hapIPv4Mask
syn keyword hapStats     contained uri realm auth scope enable
syn keyword hapLogFac    contained kern user mail daemon auth syslog lpr news 
nextgroup=hapLogLvl skipwhite
syn keyword hapLogFac    contained uucp cron auth2 ftp ntp audit alert cron2  
nextgroup=hapLogLvl skipwhite
syn keyword hapLogFac    contained local0 local1 local2 local3 local4 local5 
local6 local7 nextgroup=hapLogLvl skipwhite
syn keyword hapLogLvl    contained emerg alert crit err warning notice info 
debug
syn keyword hapCookieKey contained rewrite insert nocache postonly indirect 
prefix nextgroup=hapCookieKey skipwhite
syn keyword hapCapture   contained cookie nextgroup=hapNameLen skipwhite
syn keyword hapCapture   contained request response nextgroup=hapHeader 
skipwhite
syn keyword hapHeader    contained header nextgroup=hapNameLen skipwhite
syn keyword hapSrvKey    contained backup cookie check inter rise fall port 
source minconn maxconn weight usesrc
syn match   hapStatus    contained /\d\{3}/
syn match   hapIPv4Mask  contained 
/\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}\(\/\d\{1,2}\)\?/
syn match   hapLogIp     contained /\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}/   
nextgroup=hapLogFac skipwhite
syn match   hapIpPort    contained 
/\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}:\d\{1,5}/
syn match   hapServerAd  contained 
/\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}\(:[+-]\?\d\{1,5}\)\?/ 
nextgroup=hapSrvEOL skipwhite
syn match   hapNameLen   contained /\S\+/ nextgroup=hapLen       skipwhite
syn match   hapCookieNam contained /\S\+/ nextgroup=hapCookieKey skipwhite
syn match   hapServerN   contained /\S\+/ nextgroup=hapServerAd  skipwhite
syn region  hapSrvEOL    contained start=/\S/ end=/$/ contains=hapSrvKey
syn region  hapRegexp    contained start=/\S/ end=/\(\s\|$\)/ skip=/\\ / 
nextgroup=hapRegRepl skipwhite
syn region  hapRegRepl   contained start=/\S/ end=/$/ 
contains=hapComment,hapEscape,hapBackRef
syn region  hapRegexp2   contained start=/\S/ end=/\(\s\|$\)/ skip=/\\ / 
nextgroup=hapSectLabel skipwhite
syn match   hapBackref   contained /\\\d/


" Transparent is a Vim keyword, so we need a regexp to match it
syn match   hapParam     +transparent+
syn match   hapOption    +transparent+ contained


" Define the default highlighting.
" For version 5.7 and earlier: only when not done already
" For version 5.8 and later: only when an item doesn't have highlighting yet
if version < 508
        command -nargs=+ HiLink hi link <args>
else
        command -nargs=+ HiLink hi def link <args>
endif

HiLink      hapEscape    SpecialChar
HiLink      hapBackRef   Special
HiLink      hapComment   Comment
HiLink      hapTodo      Todo
HiLink      hapSection   Constant
HiLink      hapSectLabel Identifier
HiLink      hapParam     Keyword

HiLink      hapRegexp    String
HiLink      hapRegexp2   hapRegexp
HiLink      hapIp1       Number
HiLink      hapIp2       hapIp1
HiLink      hapLogIp     hapIp1
HiLink      hapIpPort    hapIp1
HiLink      hapIPv4Mask  hapIp1
HiLink      hapServerAd  hapIp1
HiLink      hapStatus    Number

HiLink      hapOption    Operator
HiLink      hapAppSess   hapOption
HiLink      hapBalance   hapOption
HiLink      hapCapture   hapOption
HiLink      hapCookieKey hapOption
HiLink      hapHeader    hapOption
HiLink      hapGLog      hapOption
HiLink      hapLogFac    hapOption
HiLink      hapLogLvl    hapOption
HiLink      hapMode      hapOption
HiLink      hapStats     hapOption
HiLink      hapLen       hapOption
HiLink      hapSrvKey    hapOption


delcommand HiLink

let b:current_syntax = "haproxy"
" vim: ts=8
-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to