mirror of
https://github.com/haproxy/haproxy.git
synced 2026-02-03 20:39:41 -05:00
Released version 1.5-dev7 with the following main changes :
- [BUG] fix binary stick-tables
- [MINOR] http: *_dom matching header functions now also split on ":"
- [BUG] checks: fix support of Mysqld >= 5.5 for mysql-check
- [MINOR] acl: add srv_conn acl to count connections on a specific backend server
- [MINOR] check: add redis check support
- [DOC] small fixes to clearly distinguish between keyword and variables
- [MINOR] halog: add support for termination code matching (-tcn/-TCN)
- [DOC] Minor spelling fixes and grammatical enhancements
- [CLEANUP] dumpstats: make symbols static where possible
- [MINOR] Break out dumping table
- [MINOR] Break out processing of clear table
- [MINOR] Allow listing of stick table by key
- [MINOR] Break out all stick table socat command parsing
- [MINOR] More flexible clearing of stick table
- [MINOR] Allow showing and clearing by key of ipv6 stick tables
- [MINOR] Allow showing and clearing by key of integer stick tables
- [MINOR] Allow showing and clearing by key of string stick tables
- [CLEANUP] Remove assigned but unused variables
- [CLEANUP] peers.h: fix declarations
- [CLEANUP] session.c: Make functions static where possible
- [MINOR] Add active connection list to server
- [MINOR] Allow shutdown of sessions when a server becomes unavailable
- [MINOR] Add down termination condition
- [MINOR] Make appsess{,ion}_refresh static
- [MINOR] Add rdp_cookie pattern fetch function
- [CLEANUP] Remove unnecessary casts
- [MINOR] Add non-stick server option
- [MINOR] Consistently use error in tcp_parse_tcp_req()
- [MINOR] Consistently free expr on error in cfg_parse_listen()
- [MINOR] Free rdp_cookie_name on denint()
- [MINOR] Free tcp rules on denint()
- [MINOR] Free stick table pool on denint()
- [MINOR] Free stick rules on denint()
- [MEDIUM] Fix stick-table replication on soft-restart
- [MEDIUM] Correct ipmask() logic
- [MINOR] Correct type in table dump examples
- [MINOR] Fix build error in stream_int_register_handler()
- [MINOR] Use DPRINTF in assign_server()
- [BUG] checks: http-check expect could fail a check on multi-packet responses
- [DOC] fix minor typo in the "dispatch" doc
- [BUG] proto_tcp: fix address binding on remote source
- [MINOR] http: don't report the "haproxy" word on the monitoring response
- [REORG] http: move HTTP error codes back to proto_http.h
- [MINOR] http: make the "HTTP 200" status code configurable.
- [MINOR] http: partially revert the chunking optimization for now
- [MINOR] stream_sock: always clear BF_EXPECT_MORE upon complete transfer
- [CLEANUP] stream_sock: remove unneeded FL_TCP and factor out test
- [MEDIUM] http: add support for "http-no-delay"
- [OPTIM] http: optimize chunking again in non-interactive mode
- [OPTIM] stream_sock: avoid fast-forwarding of partial data
- [OPTIM] stream_sock: don't use splice on too small payloads
- [MINOR] config: make it possible to specify a cookie even without a server
- [BUG] stats: support url-encoded forms
- [MINOR] config: automatically compute a default fullconn value
- [CLEANUP] config: remove some left-over printf debugging code from previous patch
- [DOC] add missing entry or stick store-response
- [MEDIUM] http: add support for 'cookie' and 'set-cookie' patterns
- [BUG] halog: correctly handle truncated last line
- [MINOR] halog: make SKIP_CHAR stop on field delimiters
- [MINOR] halog: add support for HTTP log matching (-H)
- [MINOR] halog: gain back performance before SKIP_CHAR fix
- [OPTIM] halog: cache some common fields positions
- [OPTIM] halog: check once for correct line format and reuse the pointer
- [OPTIM] halog: remove many 'if' by using a function pointer for the filters
- [OPTIM] halog: remove support for tab delimiters in input data
- [BUG] session: risk of crash on out of memory (1.5-dev regression)
- [MINOR] session: try to emit a 500 response on memory allocation errors
- [OPTIM] stream_sock: reduce the default number of accepted connections at once
- [BUG] stream_sock: disable listener when system resources are exhausted
- [MEDIUM] proxy: add a PAUSED state to listeners and move socket tricks out of proxy.c
- [BUG] stream_sock: ensure orphan listeners don't accept too many connections
- [MINOR] listeners: add listen_full() to mark a listener full
- [MINOR] listeners: add support for queueing resource limited listeners
- [MEDIUM] listeners: put listeners in queue upon resource shortage
- [MEDIUM] listeners: queue proxy-bound listeners at the proxy's
- [MEDIUM] listeners: don't stop proxies when global maxconn is reached
- [MEDIUM] listeners: don't change listeners states anymore in maintain_proxies
- [CLEANUP] proxy: rename a few proxy states (PR_STIDLE and PR_STRUN)
- [MINOR] stats: report a "WAITING" state for sockets waiting for resource
- [MINOR] proxy: make session rate-limit more accurate
- [MINOR] sessions: only wake waiting listeners up if rate limit is OK
- [BUG] proxy: peers must only be stopped once, not upon every call to maintain_proxies
- [CLEANUP] proxy: merge maintain_proxies() operation inside a single loop
- [MINOR] task: new function task_schedule() to schedule a wake up
- [MAJOR] proxy: finally get rid of maintain_proxies()
- [BUG] proxy: stats frontend and peers were missing many initializers
- [MEDIUM] listeners: add a global listener management task
- [MINOR] proxy: make findproxy() return proxies from numeric IDs too
- [DOC] fix typos, "#" is a sharp, not a dash
- [MEDIUM] stats: add support for changing frontend's maxconn at runtime
- [MEDIUM] checks: group health checks methods by values and save option bits
- [MINOR] session-counters: add the ability to clear the counters
- [BUG] check: http-check expect + regex would crash in defaults section
- [MEDIUM] http: make x-forwarded-for addition conditional
- [REORG] build: move syscall redefinition to specific places
- [CLEANUP] update the year in the copyright banner
- [BUG] possible crash in 'show table' on stats socket
- [BUG] checks: use the correct destination port for sending checks
- [BUG] backend: risk of picking a wrong port when mapping is used with crossed families
- [MINOR] make use of set_host_port() and get_host_port() to get rid of family mismatches
- [DOC] fixed a few "sensible" -> "sensitive" errors
- [MINOR] make use of addr_to_str() and get_host_port() to replace many inet_ntop()
- [BUG] http: trailing white spaces must also be trimmed after headers
- [MINOR] stats: display "<NONE>" instead of the frontend name when unknown
- [MINOR] http: take a capture of too large requests and responses
- [MINOR] http: take a capture of truncated responses
- [MINOR] http: take a capture of bad content-lengths.
- [DOC] add a few old and uncommitted docs
- [CLEANUP] cfgparse: fix reported options for the "bind" keyword
- [MINOR] halog: add -hs/-HS to filter by HTTP status code range
- [MINOR] halog: support backslash-escaped quotes
- [CLEANUP] remove dirty left-over of a debugging message
- [MEDIUM] stats: disable complex socket reservation for stats socket
- [CLEANUP] remove a useless test in manage_global_listener_queue()
- [MEDIUM] stats: add the "set maxconn" setting to the command line interface
- [MEDIUM] add support for global.maxconnrate to limit the per-process conn rate.
- [MINOR] stats: report the current and max global connection rates
- [MEDIUM] stats: add the ability to adjust the global maxconnrate
- [BUG] peers: don't pre-allocate 65000 connections to each peer
- [MEDIUM] don't limit peers nor stats socket to maxconn nor maxconnrate
- [BUG] peers: the peer frontend must not emit any log
- [CLEANUP] proxy: make pause_proxy() perform the required controls and emit the logs
- [BUG] peers: don't keep a peers section which has a NULL frontend
- [BUG] peers: ensure the peers are resumed if they were paused
- [MEDIUM] stats: add the ability to enable/disable/shutdown a frontend at runtime
- [MEDIUM] session: make session_shutdown() an independant function
- [MEDIUM] stats: offer the possibility to kill a session from the CLI
- [CLEANUP] stats: centralize tests for backend/server inputs on the CLI
- [MEDIUM] stats: offer the possibility to kill sessions by server
- [MINOR] halog: do not consider byte 0x8A as end of line
- [MINOR] frontend: ensure debug message length is always initialized
- [OPTIM] halog: make fgets parse more bytes by blocks
- [OPTIM] halog: add assembly version of the field lookup code
- [MEDIUM] poll: add a measurement of idle vs work time
- [CLEANUP] startup: report only the basename in the usage message
- [MINOR] startup: add an option to change to a new directory
- [OPTIM] task: don't scan the run queue if we know it's empty
- [BUILD] stats: stdint is not present on solaris
- [DOC] update the README file to reflect new naming rules for patches
- [MINOR] stats: report the number of requests intercepted by the frontend
- [DOC] update ROADMAP file
270 lines
6.8 KiB
RPMSpec
270 lines
6.8 KiB
RPMSpec
Summary: HA-Proxy is a TCP/HTTP reverse proxy for high availability environments
|
|
Name: haproxy
|
|
Version: 1.5-dev7
|
|
Release: 1
|
|
License: GPL
|
|
Group: System Environment/Daemons
|
|
URL: http://haproxy.1wt.eu/
|
|
Source0: http://haproxy.1wt.eu/download/1.3/src/%{name}-%{version}.tar.gz
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-root
|
|
BuildRequires: pcre-devel
|
|
Requires: /sbin/chkconfig, /sbin/service
|
|
|
|
%description
|
|
HA-Proxy is a TCP/HTTP reverse proxy which is particularly suited for high
|
|
availability environments. Indeed, it can:
|
|
- route HTTP requests depending on statically assigned cookies
|
|
- spread the load among several servers while assuring server persistence
|
|
through the use of HTTP cookies
|
|
- switch to backup servers in the event a main one fails
|
|
- accept connections to special ports dedicated to service monitoring
|
|
- stop accepting connections without breaking existing ones
|
|
- add/modify/delete HTTP headers both ways
|
|
- block requests matching a particular pattern
|
|
|
|
It needs very little resource. Its event-driven architecture allows it to easily
|
|
handle thousands of simultaneous connections on hundreds of instances without
|
|
risking the system's stability.
|
|
|
|
%prep
|
|
%setup -q
|
|
|
|
# We don't want any perl dependecies in this RPM:
|
|
%define __perl_requires /bin/true
|
|
|
|
%build
|
|
%{__make} USE_PCRE=1 DEBUG="" ARCH=%{_target_cpu} TARGET=linux26
|
|
|
|
%install
|
|
[ "%{buildroot}" != "/" ] && %{__rm} -rf %{buildroot}
|
|
|
|
%{__install} -d %{buildroot}%{_sbindir}
|
|
%{__install} -d %{buildroot}%{_sysconfdir}/rc.d/init.d
|
|
%{__install} -d %{buildroot}%{_sysconfdir}/%{name}
|
|
%{__install} -d %{buildroot}%{_mandir}/man1/
|
|
|
|
%{__install} -s %{name} %{buildroot}%{_sbindir}/
|
|
%{__install} -c -m 644 examples/%{name}.cfg %{buildroot}%{_sysconfdir}/%{name}/
|
|
%{__install} -c -m 755 examples/%{name}.init %{buildroot}%{_sysconfdir}/rc.d/init.d/%{name}
|
|
%{__install} -c -m 755 doc/%{name}.1 %{buildroot}%{_mandir}/man1/
|
|
|
|
%clean
|
|
[ "%{buildroot}" != "/" ] && %{__rm} -rf %{buildroot}
|
|
|
|
%post
|
|
/sbin/chkconfig --add %{name}
|
|
|
|
%preun
|
|
if [ $1 = 0 ]; then
|
|
/sbin/service %{name} stop >/dev/null 2>&1 || :
|
|
/sbin/chkconfig --del %{name}
|
|
fi
|
|
|
|
%postun
|
|
if [ "$1" -ge "1" ]; then
|
|
/sbin/service %{name} condrestart >/dev/null 2>&1 || :
|
|
fi
|
|
|
|
%files
|
|
%defattr(-,root,root)
|
|
%doc CHANGELOG TODO examples/*.cfg doc/haproxy-en.txt doc/haproxy-fr.txt doc/architecture.txt doc/configuration.txt
|
|
%doc %{_mandir}/man1/%{name}.1*
|
|
|
|
%attr(0755,root,root) %{_sbindir}/%{name}
|
|
%dir %{_sysconfdir}/%{name}
|
|
%attr(0644,root,root) %config(noreplace) %{_sysconfdir}/%{name}/%{name}.cfg
|
|
%attr(0755,root,root) %config %{_sysconfdir}/rc.d/init.d/%{name}
|
|
|
|
%changelog
|
|
* Sat Sep 10 2011 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.5-dev7
|
|
|
|
* Fri Apr 8 2011 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.5-dev6
|
|
|
|
* Tue Mar 29 2011 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.5-dev5
|
|
|
|
* Sun Mar 13 2011 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.5-dev4
|
|
|
|
* Thu Nov 11 2010 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.5-dev3
|
|
|
|
* Sat Aug 28 2010 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.5-dev2
|
|
|
|
* Wed Aug 25 2010 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.5-dev1
|
|
|
|
* Sun May 23 2010 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.5-dev0
|
|
|
|
* Sun May 16 2010 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.4.6
|
|
|
|
* Thu May 13 2010 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.4.5
|
|
|
|
* Wed Apr 7 2010 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.4.4
|
|
|
|
* Tue Mar 30 2010 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.4.3
|
|
|
|
* Wed Mar 17 2010 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.4.2
|
|
|
|
* Thu Mar 4 2010 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.4.1
|
|
|
|
* Fri Feb 26 2010 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.4.0
|
|
|
|
* Tue Feb 2 2010 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.4-rc1
|
|
|
|
* Mon Jan 25 2010 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.4-dev8
|
|
|
|
* Mon Jan 25 2010 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.4-dev7
|
|
|
|
* Fri Jan 8 2010 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.4-dev6
|
|
|
|
* Sun Jan 3 2010 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.4-dev5
|
|
|
|
* Mon Oct 12 2009 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.4-dev4
|
|
|
|
* Thu Sep 24 2009 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.4-dev3
|
|
|
|
* Sun Aug 9 2009 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.4-dev2
|
|
|
|
* Wed Jul 29 2009 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.4-dev1
|
|
|
|
* Tue Jun 09 2009 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.4-dev0
|
|
|
|
* Sun May 10 2009 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.18
|
|
|
|
* Sun Mar 29 2009 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.17
|
|
|
|
* Sun Mar 22 2009 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.16
|
|
|
|
* Sat Apr 19 2008 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.15
|
|
|
|
* Wed Dec 5 2007 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.14
|
|
|
|
* Thu Oct 18 2007 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.13
|
|
|
|
* Sun Jun 17 2007 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.12
|
|
|
|
* Sun Jun 3 2007 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.11.4
|
|
|
|
* Mon May 14 2007 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.11.3
|
|
|
|
* Mon May 14 2007 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.11.2
|
|
|
|
* Mon May 14 2007 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.11.1
|
|
|
|
* Mon May 14 2007 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.11
|
|
|
|
* Thu May 10 2007 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.10.2
|
|
|
|
* Tue May 09 2007 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.10.1
|
|
|
|
* Tue May 08 2007 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.10
|
|
|
|
* Sun Apr 15 2007 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.9
|
|
|
|
* Tue Apr 03 2007 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.8.2
|
|
|
|
* Sun Apr 01 2007 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.8.1
|
|
|
|
* Sun Mar 25 2007 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.8
|
|
|
|
* Wed Jan 26 2007 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.7
|
|
|
|
* Wed Jan 22 2007 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.6
|
|
|
|
* Wed Jan 07 2007 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.5
|
|
|
|
* Wed Jan 02 2007 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.4
|
|
|
|
* Wed Oct 15 2006 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.3
|
|
|
|
* Wed Sep 03 2006 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.2
|
|
|
|
* Wed Jul 09 2006 Willy Tarreau <w@1wt.eu>
|
|
- updated to 1.3.1
|
|
|
|
* Wed May 21 2006 Willy Tarreau <willy@w.ods.org>
|
|
- updated to 1.2.14
|
|
|
|
* Wed May 01 2006 Willy Tarreau <willy@w.ods.org>
|
|
- updated to 1.2.13
|
|
|
|
* Wed Apr 15 2006 Willy Tarreau <willy@w.ods.org>
|
|
- updated to 1.2.12
|
|
|
|
* Wed Mar 30 2006 Willy Tarreau <willy@w.ods.org>
|
|
- updated to 1.2.11.1
|
|
|
|
* Wed Mar 19 2006 Willy Tarreau <willy@w.ods.org>
|
|
- updated to 1.2.10
|
|
|
|
* Wed Mar 15 2006 Willy Tarreau <willy@w.ods.org>
|
|
- updated to 1.2.9
|
|
|
|
* Sat Jan 22 2005 Willy Tarreau <willy@w.ods.org>
|
|
- updated to 1.2.3 (1.1.30)
|
|
|
|
* Sun Nov 14 2004 Willy Tarreau <w@w.ods.org>
|
|
- updated to 1.1.29
|
|
- fixed path to config and init files
|
|
- statically linked PCRE to increase portability to non-pcre systems
|
|
|
|
* Sun Jun 6 2004 Willy Tarreau <willy@w.ods.org>
|
|
- updated to 1.1.28
|
|
- added config check support to the init script
|
|
|
|
* Tue Oct 28 2003 Simon Matter <simon.matter@invoca.ch>
|
|
- updated to 1.1.27
|
|
- added pid support to the init script
|
|
|
|
* Wed Oct 22 2003 Simon Matter <simon.matter@invoca.ch>
|
|
- updated to 1.1.26
|
|
|
|
* Thu Oct 16 2003 Simon Matter <simon.matter@invoca.ch>
|
|
- initial build
|