Changeset 2f19103 in mainline for uspace/srv/net/tcp/ucall.c
- Timestamp:
- 2015-05-22T07:21:37Z (10 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 58e9dec
- Parents:
- bf7587b0
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/net/tcp/ucall.c
rbf7587b0 r2f19103 1 1 /* 2 * Copyright (c) 201 1Jiri Svoboda2 * Copyright (c) 2015 Jiri Svoboda 3 3 * All rights reserved. 4 4 * … … 50 50 /** OPEN user call 51 51 * 52 * @param lsock Local socket 53 * @param fsock Foreign socket 52 * @param epp Endpoint pair 54 53 * @param acpass Active/passive 55 54 * @param oflags Open flags … … 65 64 * establishment. 66 65 */ 67 tcp_error_t tcp_uc_open( tcp_sock_t *lsock, tcp_sock_t *fsock, acpass_t acpass,66 tcp_error_t tcp_uc_open(inet_ep2_t *epp, acpass_t acpass, 68 67 tcp_open_flags_t oflags, tcp_conn_t **conn) 69 68 { 70 69 tcp_conn_t *nconn; 71 70 72 log_msg(LOG_DEFAULT, LVL_DEBUG, "tcp_uc_open(%p, % p, %s, %s, %p)",73 lsock, fsock, acpass == ap_active ? "active" : "passive",71 log_msg(LOG_DEFAULT, LVL_DEBUG, "tcp_uc_open(%p, %s, %s, %p)", 72 epp, acpass == ap_active ? "active" : "passive", 74 73 oflags == tcp_open_nonblock ? "nonblock" : "none", conn); 75 74 76 nconn = tcp_conn_new( lsock, fsock);75 nconn = tcp_conn_new(epp); 77 76 tcp_conn_add(nconn); 78 77 tcp_conn_lock(nconn); … … 315 314 316 315 /** Segment arrived */ 317 void tcp_as_segment_arrived( tcp_sockpair_t *sp, tcp_segment_t *seg)316 void tcp_as_segment_arrived(inet_ep2_t *epp, tcp_segment_t *seg) 318 317 { 319 318 tcp_conn_t *conn; … … 321 320 log_msg(LOG_DEFAULT, LVL_DEBUG, 322 321 "tcp_as_segment_arrived(f:(%u), l:(%u))", 323 sp->foreign.port, sp->local.port);324 325 conn = tcp_conn_find_ref( sp);322 epp->remote.port, epp->local.port); 323 324 conn = tcp_conn_find_ref(epp); 326 325 if (conn == NULL) { 327 326 log_msg(LOG_DEFAULT, LVL_WARN, "No connection found."); 328 tcp_unexpected_segment( sp, seg);327 tcp_unexpected_segment(epp, seg); 329 328 return; 330 329 } … … 334 333 if (conn->cstate == st_closed) { 335 334 log_msg(LOG_DEFAULT, LVL_WARN, "Connection is closed."); 336 tcp_unexpected_segment( sp, seg);335 tcp_unexpected_segment(epp, seg); 337 336 tcp_conn_unlock(conn); 338 337 tcp_conn_delref(conn); … … 340 339 } 341 340 342 if (inet_addr_is_any(&conn->ident. foreign.addr))343 conn->ident. foreign.addr = sp->foreign.addr;344 345 if (conn->ident. foreign.port == TCP_PORT_ANY)346 conn->ident. foreign.port = sp->foreign.port;347 341 if (inet_addr_is_any(&conn->ident.remote.addr)) 342 conn->ident.remote.addr = epp->remote.addr; 343 344 if (conn->ident.remote.port == TCP_PORT_ANY) 345 conn->ident.remote.port = epp->remote.port; 346 348 347 if (inet_addr_is_any(&conn->ident.local.addr)) 349 conn->ident.local.addr = sp->local.addr;348 conn->ident.local.addr = epp->local.addr; 350 349 351 350 tcp_conn_segment_arrived(conn, seg);
Note:
See TracChangeset
for help on using the changeset viewer.