MEDIUM: stream_interface: remove the si->init

Calling the init() function in sess_establish was a bad idea, it is
too late to allow it to fail on lack of resource and does not help at
all. Remove it for now before it's used.
This commit is contained in:
Willy Tarreau 2012-05-18 15:15:26 +02:00
parent 7af4605ef7
commit be0688c64d
5 changed files with 4 additions and 16 deletions

View File

@ -107,7 +107,6 @@ struct target {
};
struct sock_ops {
int (*init)(struct stream_interface *, void *); /* init function */
void (*update)(struct stream_interface *); /* I/O update function */
void (*shutr)(struct stream_interface *); /* shutr function */
void (*shutw)(struct stream_interface *); /* shutw function */

View File

@ -452,11 +452,11 @@ int tcp_connect_server(struct stream_interface *si)
fdtab[fd].state = FD_STCONN; /* connection in progress */
fdtab[fd].flags = FD_FL_TCP | FD_FL_TCP_NODELAY;
/* If we have nothing to send or if we want to initialize the sock layer,
* we want to confirm that the TCP connection is established before doing
* so, so we use our own write callback then switch to the sock layer.
/* If we have nothing to send, we want to confirm that the TCP
* connection is established before doing so, so we use our own write
* callback then switch to the sock layer.
*/
if (si->sock.init || ((si->ob->flags & BF_OUT_EMPTY) && !si->send_proxy_ofs)) {
if ((si->ob->flags & BF_OUT_EMPTY) && !si->send_proxy_ofs) {
fdtab[fd].cb[DIR_RD].f = tcp_connect_read;
fdtab[fd].cb[DIR_WR].f = tcp_connect_write;
}

View File

@ -715,14 +715,6 @@ static void sess_establish(struct session *s, struct stream_interface *si)
rep->rto = s->be->timeout.server;
}
req->wex = TICK_ETERNITY;
if (si->sock.init) {
/* initialize the socket layer if needed */
void *arg = NULL;
if (target_srv(&s->target))
arg = target_srv(&s->target)->sock_init_arg;
si->sock.init(si, arg);
}
}
/* Update stream interface status for input states SI_ST_ASS, SI_ST_QUE, SI_ST_TAR.

View File

@ -1118,7 +1118,6 @@ static void sock_raw_chk_snd(struct stream_interface *si)
/* stream sock operations */
struct sock_ops sock_raw = {
.init = NULL,
.update = sock_raw_data_finish,
.shutr = sock_raw_shutr,
.shutw = sock_raw_shutw,

View File

@ -42,7 +42,6 @@ static void stream_int_chk_snd(struct stream_interface *si);
/* socket operations for embedded tasks */
struct sock_ops stream_int_embedded = {
.init = NULL,
.update = stream_int_update_embedded,
.shutr = stream_int_shutr,
.shutw = stream_int_shutw,
@ -54,7 +53,6 @@ struct sock_ops stream_int_embedded = {
/* socket operations for external tasks */
struct sock_ops stream_int_task = {
.init = NULL,
.update = stream_int_update,
.shutr = stream_int_shutr,
.shutw = stream_int_shutw,