Changeset 309469de in mainline
- Timestamp:
- 2015-05-09T19:28:32Z (10 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- b99f6e2
- Parents:
- 1d4b815
- Location:
- uspace/srv/net
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/net/tcp/service.c
r1d4b815 r309469de 783 783 784 784 #include <mem.h> 785 786 static void tcp_client_init(tcp_client_t *client) 787 { 788 memset(client, 0, sizeof(tcp_client_t)); 789 client->sess = NULL; 790 list_initialize(&client->cconn); 791 list_initialize(&client->clst); 792 } 793 794 static void tcp_client_fini(tcp_client_t *client) 795 { 796 tcp_cconn_t *cconn; 797 size_t n; 798 799 n = list_count(&client->cconn); 800 if (n != 0) { 801 log_msg(LOG_DEFAULT, LVL_WARN, "Client with %zu active " 802 "connections closed session", n); 803 804 while (!list_empty(&client->cconn)) { 805 cconn = list_get_instance(list_first(&client->cconn), 806 tcp_cconn_t, lclient); 807 tcp_uc_close(cconn->conn); 808 tcp_cconn_destroy(cconn); 809 } 810 } 811 812 n = list_count(&client->clst); 813 if (n != 0) { 814 log_msg(LOG_DEFAULT, LVL_WARN, "Client with %zu active " 815 "listeners closed session", n); 816 /* XXX Destroy listeners */ 817 } 818 } 819 785 820 static void tcp_client_conn(ipc_callid_t iid, ipc_call_t *icall, void *arg) 786 821 { … … 793 828 &client); 794 829 795 memset(&client, 0, sizeof(client)); 796 client.sess = NULL; 797 list_initialize(&client.cconn); 798 list_initialize(&client.clst); 799 // list_initialize(&client.crcv_queue); 830 tcp_client_init(&client); 800 831 801 832 while (true) { … … 810 841 /* The other side has hung up */ 811 842 async_answer_0(callid, EOK); 812 return;843 break; 813 844 } 814 845 … … 852 883 } 853 884 } 854 log_msg(LOG_DEFAULT, LVL_DEBUG, 855 "tcp_client_conn TERMINATED ***************************"); 885 886 log_msg(LOG_DEFAULT, LVL_DEBUG, "tcp_client_conn TERMINATED"); 887 tcp_client_fini(&client); 856 888 } 857 889 -
uspace/srv/net/udp/service.c
r1d4b815 r309469de 493 493 { 494 494 udp_client_t client; 495 size_t n; 495 496 496 497 /* Accept the connection */ … … 513 514 /* The other side has hung up */ 514 515 async_answer_0(callid, EOK); 515 return;516 break; 516 517 } 517 518 … … 543 544 } 544 545 } 546 547 log_msg(LOG_DEFAULT, LVL_DEBUG, "udp_client_conn: terminated"); 548 549 n = list_count(&client.cassoc); 550 if (n != 0) { 551 log_msg(LOG_DEFAULT, LVL_WARN, "udp_client_conn: " 552 "Client with %zu active associations closed session.", n); 553 /* XXX Clean up */ 554 } 555 556 /* XXX Clean up client receive queue */ 545 557 } 546 558
Note:
See TracChangeset
for help on using the changeset viewer.