Gitiles
Code Review
Sign In
git01.mediatek.com
/
haproxy
/
bce0a65e3eb535c998c697a0f032bd429c78faa6
/
src
/
raw_sock.c
0724903
BUG/MINOR: raw_sock: also consider ENOTCONN in addition to EAGAIN for recv()
by Joshua M. Clulow
· Mon Mar 03 13:48:42 2014 -0800
1049b1f
MEDIUM: connection: don't use real send() flags in snd_buf()
by Willy Tarreau
· Sun Feb 02 01:51:17 2014 +0100
7e4086d
BUG/MINOR: raw_sock: correctly set the MSG_MORE flag
by Willy Tarreau
· Sun Feb 02 01:44:13 2014 +0100
6c11bd2
OPTIM: raw-sock: don't speculate after a short read if polling is enabled
by Willy Tarreau
· Fri Jan 24 00:54:27 2014 +0100
fd803bb
MEDIUM: connection: add check for readiness in I/O handlers
by Willy Tarreau
· Mon Jan 20 15:13:07 2014 +0100
e1f50c4
MEDIUM: connection: remove conn_{data,sock}_poll_{recv,send}
by Willy Tarreau
· Wed Jan 22 20:02:06 2014 +0100
abf08d9
BUG/MAJOR: connection: fix mismatch between rcv_buf's API and usage
by Willy Tarreau
· Tue Jan 14 11:31:27 2014 +0100
f79c817
MAJOR: connection: add two new flags to indicate readiness of control/transport
by Willy Tarreau
· Mon Oct 21 16:30:56 2013 +0200
ce3eda7
MINOR: connection: clear errno prior to checking for errors
by Willy Tarreau
· Thu Dec 05 00:49:40 2013 +0100
26f4a04
MEDIUM: connection: set the socket shutdown flags on socket errors
by Willy Tarreau
· Wed Dec 04 23:44:10 2013 +0100
61d39a0
BUG/MEDIUM: splicing: fix abnormal CPU usage with splicing
by Willy Tarreau
· Thu Jul 18 21:49:32 2013 +0200
4fc90ef
BUG/MEDIUM: splicing is broken since 1.5-dev12
by Willy Tarreau
· Sat Apr 06 11:29:39 2013 +0200
b6daedd
OPTIM: splice: assume by default that splice is working correctly
by Willy Tarreau
· Mon Jan 07 16:57:09 2013 +0100
baf2a50
OPTIM: splice: detect shutdowns and avoid splice() == 0
by Willy Tarreau
· Mon Jan 07 16:38:26 2013 +0100
5fb3803
CLEANUP: buffer: use buffer_empty() instead of buffer_len()==0
by Willy Tarreau
· Sun Dec 16 19:39:09 2012 +0100
debdc4b
BUG/MAJOR: raw_sock: must check error code on hangup
by Willy Tarreau
· Fri Dec 07 00:01:33 2012 +0100
45b8893
MINOR: splice: disable it when the system returns EBADF
by Willy Tarreau
· Mon Nov 12 12:00:09 2012 +0100
0ea0cf6
BUG: raw_sock: also consider ENOTCONN in addition to EAGAIN
by Willy Tarreau
· Sun Nov 11 20:38:30 2012 +0100
665e6ee
MEDIUM: connection: it's not the data layer's role to validate the connection
by Willy Tarreau
· Thu Oct 04 20:20:46 2012 +0200
f7bc57c
REORG: connection: rename the data layer the "transport layer"
by Willy Tarreau
· Wed Oct 03 00:19:48 2012 +0200
6f5d141
MEDIUM: raw_sock: improve connection error reporting
by Willy Tarreau
· Thu Oct 04 20:38:49 2012 +0200
c0e9886
MINOR: raw_sock: always report asynchronous connection errors
by Willy Tarreau
· Thu Oct 04 20:17:13 2012 +0200
d1d5454
REORG: split "protocols" files into protocol and listener
by Willy Tarreau
· Wed Sep 12 22:58:11 2012 +0200
56a77e5
MEDIUM: connection: complete the polling cleanups
by Willy Tarreau
· Sun Sep 02 18:34:44 2012 +0200
c7e4238
REORG: buffers: split buffers into chunk,buffer,channel
by Willy Tarreau
· Fri Aug 24 19:22:53 2012 +0200
c578891
CLEANUP: connection: split sock_ops into data_ops, app_cp and si_ops
by Willy Tarreau
· Fri Aug 24 18:12:41 2012 +0200
96199b1
MAJOR: stream-interface: restore splicing mechanism
by Willy Tarreau
· Fri Aug 24 00:46:52 2012 +0200
5368d80
MAJOR: connection: split the send call into connection and stream interface
by Willy Tarreau
· Tue Aug 21 18:22:06 2012 +0200
ce323de
REORG: stream-interface: move sock_raw_read() to si_conn_recv_cb()
by Willy Tarreau
· Mon Aug 20 21:41:06 2012 +0200
1fe6bc3
MINOR: stream-interface: add an rcv_buf callback to sock_ops
by Willy Tarreau
· Mon Aug 20 20:27:59 2012 +0200
af978c4
MAJOR: raw_sock: temporarily disable splicing
by Willy Tarreau
· Mon Aug 20 20:21:01 2012 +0200
2ba4465
MAJOR: raw_sock: extract raw_sock_to_buf() from raw_sock_read()
by Willy Tarreau
· Mon Aug 20 17:30:32 2012 +0200
75bf2c9
REORG: sock_raw: rename the files raw_sock*
by Willy Tarreau
· Mon Aug 20 17:01:35 2012 +0200
[Renamed (99%) from src/sock_raw.c]
572bf90
REORG/MAJOR: extract "struct buffer" from "struct channel"
by Willy Tarreau
· Mon Jul 02 17:01:20 2012 +0200
7421efb
REORG/MAJOR: use "struct channel" instead of "struct buffer"
by Willy Tarreau
· Mon Jul 02 15:11:27 2012 +0200
9bf9c14
MEDIUM: stream-interface: provide a generic stream_sock_read0() function
by Willy Tarreau
· Mon Aug 20 15:38:41 2012 +0200
eecf6ca
MEDIUM: stream-interface: provide a generic si_conn_send_cb callback
by Willy Tarreau
· Mon Aug 20 15:09:53 2012 +0200
de5722c
MEDIUM: stream-interface: provide a generic stream_int_chk_snd_conn() function
by Willy Tarreau
· Mon Aug 20 15:01:10 2012 +0200
fae4499
MEDIUM: stream-interface: add a snd_buf() callback to sock_ops
by Willy Tarreau
· Mon Aug 20 14:02:10 2012 +0200
46a8d92
MEDIUM: stream-interface: offer a generic chk_rcv function for connections
by Willy Tarreau
· Mon Aug 20 12:38:36 2012 +0200
100c467
MEDIUM: stream_interface: offer a generic function for connection updates
by Willy Tarreau
· Mon Aug 20 12:06:26 2012 +0200
afad0e0
MAJOR: make use of conn_{data|sock}_{poll|stop|want}* in connection handlers
by Willy Tarreau
· Thu Aug 09 14:45:22 2012 +0200
f9dabec
MEDIUM: connection: make use of the new polling functions
by Willy Tarreau
· Fri Aug 17 17:33:53 2012 +0200
49b046d
MAJOR: fd: replace all EV_FD_* macros with new fd_*_* inline calls
by Willy Tarreau
· Thu Aug 09 12:11:58 2012 +0200
4a36b56
MAJOR: stream_int: use a common stream_int_shut*() functions regardless of the data layer
by Willy Tarreau
· Mon Aug 06 19:31:45 2012 +0200
3d8903f
MEDIUM: sock_raw: introduce a read0 callback that is different from shutr
by Willy Tarreau
· Mon Aug 06 17:00:18 2012 +0200
8b11708
REORG: connection: replace si_data_close() with conn_data_close()
by Willy Tarreau
· Mon Aug 06 15:06:49 2012 +0200
3438f5d
MINOR: sock_raw: move calls to si_data_close upper
by Willy Tarreau
· Mon Aug 06 12:23:51 2012 +0200
3788e4c
MEDIUM: fd: remove the EV_FD_COND_* primitives
by Willy Tarreau
· Mon Jul 30 14:29:35 2012 +0200
3c55ec2
MEDIUM: stream_interface: centralize the SI_FL_ERR management
by Willy Tarreau
· Mon Jul 23 19:19:51 2012 +0200
239d718
MEDIUM: stream_interface: pass connection instead of fd in sock_ops
by Willy Tarreau
· Mon Jul 23 18:53:03 2012 +0200
fd31e53
MAJOR: remove the stream interface and task management code from sock_*
by Willy Tarreau
· Mon Jul 23 18:24:25 2012 +0200
61ace1b
MEDIUM: connection: remove the FD_POLL_* flags only once
by Willy Tarreau
· Mon Jul 23 12:14:26 2012 +0200
8018471
MINOR: fd: make fdtab->owner a connection and not a stream_interface anymore
by Willy Tarreau
· Fri Jul 06 14:54:49 2012 +0200
505e34a
MAJOR: get rid of fdtab[].state and use connection->flags instead
by Willy Tarreau
· Fri Jul 06 10:17:53 2012 +0200
801a0a3
DOC: fix name for "option independant-streams"
by Jamie Gloudon
· Sat Aug 25 00:18:33 2012 -0400
4da69a9
MEDIUM: stream_interface: call si_data_close() before releasing the si
by Willy Tarreau
· Mon May 21 18:05:40 2012 +0200
2420827
MINOR: stream_interface: add a data channel close function
by Willy Tarreau
· Mon May 21 17:28:50 2012 +0200
fb7508a
REORG/MINOR: stream_interface: move si->fd to struct connection
by Willy Tarreau
· Mon May 21 16:47:54 2012 +0200
73b013b
MINOR: stream_interface: introduce a new "struct connection" type
by Willy Tarreau
· Mon May 21 16:31:45 2012 +0200
a190d59
REORG: move the send-proxy code to tcp_connect_write()
by Willy Tarreau
· Sun May 20 18:35:19 2012 +0200
8ae52cb
BUG/MINOR: stop connect timeout when connect succeeds
by Willy Tarreau
· Sun May 20 10:38:46 2012 +0200
be0688c
MEDIUM: stream_interface: remove the si->init
by Willy Tarreau
· Fri May 18 15:15:26 2012 +0200
7af4605
BUG/MAJOR: trash must always be the size of a buffer
by David du Colombier
· Wed May 16 14:16:48 2012 +0200
7bb68ab
OPTIM/MEDIUM: stream_interface: add a new SI_FL_NOHALF flag
by Willy Tarreau
· Sun May 13 14:48:59 2012 +0200
eeda90e
MAJOR: fd: remove the need for the socket layer to recheck the connection
by Willy Tarreau
· Fri May 11 19:53:32 2012 +0200
64798bd
MINOR: stream_interface: add an init callback to sock_ops
by Willy Tarreau
· Fri May 11 18:38:44 2012 +0200
b277d6e
CLEANUP: sock_raw: remove last references to stream_sock
by Willy Tarreau
· Fri May 11 16:59:14 2012 +0200
c63190d
REORG: use the name sock_raw instead of stream_sock
by Willy Tarreau
· Fri May 11 14:23:52 2012 +0200
[Renamed (99%) from src/stream_sock.c]
bbebbbf
REORG/MEDIUM: move the default accept function from sockstream to protocols.c
by Willy Tarreau
· Mon May 07 21:22:09 2012 +0200
5c979a9
REORG/MEDIUM: stream_interface: initialize socket ops from descriptors
by Willy Tarreau
· Mon May 07 17:15:39 2012 +0200
1b79bde
REORG/MEDIUM: move protocol->{read,write} to sock_ops
by Willy Tarreau
· Mon May 07 17:01:39 2012 +0200
060781f
REORG: stream_interface: create a struct sock_ops to hold socket operations
by Willy Tarreau
· Mon May 07 16:50:03 2012 +0200
9dab5fc
MEDIUM: buffers: rename a number of buffer management functions
by Willy Tarreau
· Mon May 07 11:56:55 2012 +0200
328582c
MEDIUM: buffers: implement b_adv() to advance a buffer's pointer
by Willy Tarreau
· Sat May 05 23:32:27 2012 +0200
cc5cfcb
MEDIUM: buffers: add new pointer wrappers and get rid of almost all buffer_wrap_add calls
by Willy Tarreau
· Fri May 04 21:35:27 2012 +0200
a458b67
MAJOR: http: move buffer->lr to http_msg->next
by Willy Tarreau
· Mon Mar 05 11:17:50 2012 +0100
363a5bb
MAJOR: buffers: replace buf->r with buf->p + buf->i
by Willy Tarreau
· Fri Mar 02 20:14:45 2012 +0100
89fa706
MAJOR: buffers: replace buf->w with buf->p - buf->o
by Willy Tarreau
· Fri Mar 02 16:13:16 2012 +0100
02d6cfc
MAJOR: buffer: replace buf->l with buf->{o+i}
by Willy Tarreau
· Thu Mar 01 18:19:58 2012 +0100
2e046c6
MAJOR: buffer rework: replace ->send_max with ->o
by Willy Tarreau
· Thu Mar 01 16:08:30 2012 +0100
ad4cd58
BUG: stream_sock: si->release was not called upon shutw()
by Willy Tarreau
· Sat Mar 10 13:42:32 2012 +0100
f17810e
BUG/MINOR: stream_sock: don't remove BF_EXPECT_MORE and BF_SEND_DONTWAIT on partial writes
by Willy Tarreau
· Fri Mar 09 18:10:44 2012 +0100
82a0456
OPTIM: stream_sock: save a failed recv syscall when splice returns EAGAIN
by Willy Tarreau
· Sun Dec 11 22:37:06 2011 +0100
eb9fd51
OPTIM: stream_sock: reduce the amount of in-flight spliced data
by Willy Tarreau
· Sun Dec 11 22:11:47 2011 +0100
6471afb
MINOR: remove the client/server side distinction in SI addresses
by Willy Tarreau
· Fri Sep 23 10:54:59 2011 +0200
3c63fd8
[MEDIUM] don't limit peers nor stats socket to maxconn nor maxconnrate
by Willy Tarreau
· Wed Sep 07 18:00:47 2011 +0200
81c25d0
[MEDIUM] add support for global.maxconnrate to limit the per-process conn rate.
by Willy Tarreau
· Wed Sep 07 15:17:21 2011 +0200
43d8fb2
[REORG] build: move syscall redefinition to specific places
by Willy Tarreau
· Mon Aug 22 17:12:02 2011 +0200
e9b2602
[MEDIUM] listeners: add a global listener management task
by Willy Tarreau
· Mon Aug 01 20:57:55 2011 +0200
918ff60
[MAJOR] proxy: finally get rid of maintain_proxies()
by Willy Tarreau
· Mon Jul 25 16:33:49 2011 +0200
07687c1
[MEDIUM] listeners: queue proxy-bound listeners at the proxy's
by Willy Tarreau
· Sun Jul 24 23:55:06 2011 +0200
08ceb10
[MEDIUM] listeners: put listeners in queue upon resource shortage
by Willy Tarreau
· Sun Jul 24 22:58:00 2011 +0200
6279371
[MINOR] listeners: add listen_full() to mark a listener full
by Willy Tarreau
· Sun Jul 24 19:23:38 2011 +0200
ff45b8c
[BUG] stream_sock: ensure orphan listeners don't accept too many connections
by Willy Tarreau
· Sun Jul 24 19:16:52 2011 +0200
1002987
[BUG] stream_sock: disable listener when system resources are exhausted
by Willy Tarreau
· Fri Jul 22 16:56:33 2011 +0200
14acc70
[OPTIM] stream_sock: don't use splice on too small payloads
by Willy Tarreau
· Wed May 11 20:47:24 2011 +0200
22be90b
[OPTIM] stream_sock: avoid fast-forwarding of partial data
by Willy Tarreau
· Wed May 11 20:32:36 2011 +0200
96e3121
[MEDIUM] http: add support for "http-no-delay"
by Willy Tarreau
· Mon May 30 18:10:30 2011 +0200
f8ca19b
[CLEANUP] stream_sock: remove unneeded FL_TCP and factor out test
by Willy Tarreau
· Mon May 30 17:32:53 2011 +0200
Next »