Changeset 1d4b815 in mainline for uspace/srv/net/tcp/service.c
- Timestamp:
- 2015-05-09T19:05:48Z (10 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 309469de
- Parents:
- 779541b
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/net/tcp/service.c
r779541b r1d4b815 56 56 57 57 static void tcp_ev_data(tcp_cconn_t *); 58 59 static void tcp_service_cstate_change(tcp_conn_t *, void *); 58 static void tcp_ev_connected(tcp_cconn_t *); 59 static void tcp_ev_conn_failed(tcp_cconn_t *); 60 static void tcp_ev_conn_reset(tcp_cconn_t *); 61 62 static void tcp_service_cstate_change(tcp_conn_t *, void *, tcp_cstate_t); 60 63 static void tcp_service_recv_data(tcp_conn_t *, void *); 61 64 … … 65 68 }; 66 69 67 static void tcp_service_cstate_change(tcp_conn_t *conn, void *arg) 68 { 70 static void tcp_service_cstate_change(tcp_conn_t *conn, void *arg, 71 tcp_cstate_t old_state) 72 { 73 tcp_cstate_t nstate; 74 tcp_cconn_t *cconn; 75 76 log_msg(LOG_DEFAULT, LVL_DEBUG, "tcp_service_cstate_change()"); 77 nstate = conn->cstate; 78 cconn = tcp_uc_get_userptr(conn); 79 80 if ((old_state == st_syn_sent || old_state == st_syn_received) && 81 (nstate == st_established)) { 82 /* Connection established */ 83 tcp_ev_connected(cconn); 84 } 85 86 if (old_state != st_closed && nstate == st_closed && conn->reset) { 87 /* Connection reset */ 88 tcp_ev_conn_reset(cconn); 89 } 90 91 /* XXX Failed to establish connection */ 92 if (0) tcp_ev_conn_failed(cconn); 69 93 } 70 94 … … 87 111 exch = async_exchange_begin(cconn->client->sess); 88 112 aid_t req = async_send_1(exch, TCP_EV_DATA, cconn->id, NULL); 113 async_exchange_end(exch); 114 115 async_forget(req); 116 } 117 118 static void tcp_ev_connected(tcp_cconn_t *cconn) 119 { 120 async_exch_t *exch; 121 122 log_msg(LOG_DEFAULT, LVL_DEBUG, "tcp_ev_connected()"); 123 124 exch = async_exchange_begin(cconn->client->sess); 125 aid_t req = async_send_1(exch, TCP_EV_CONNECTED, cconn->id, NULL); 126 async_exchange_end(exch); 127 128 async_forget(req); 129 } 130 131 static void tcp_ev_conn_failed(tcp_cconn_t *cconn) 132 { 133 async_exch_t *exch; 134 135 log_msg(LOG_DEFAULT, LVL_DEBUG, "tcp_ev_conn_failed()"); 136 137 exch = async_exchange_begin(cconn->client->sess); 138 aid_t req = async_send_1(exch, TCP_EV_CONN_FAILED, cconn->id, NULL); 139 async_exchange_end(exch); 140 141 async_forget(req); 142 } 143 144 static void tcp_ev_conn_reset(tcp_cconn_t *cconn) 145 { 146 async_exch_t *exch; 147 148 log_msg(LOG_DEFAULT, LVL_DEBUG, "tcp_ev_conn_reset()"); 149 150 exch = async_exchange_begin(cconn->client->sess); 151 aid_t req = async_send_1(exch, TCP_EV_CONN_RESET, cconn->id, NULL); 89 152 async_exchange_end(exch); 90 153
Note:
See TracChangeset
for help on using the changeset viewer.