Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/net/tcp/sock.c

    rb243da3 rf4a27304  
    882882        tcp_sockdata_t *socket;
    883883        tcp_error_t trc;
    884         int i;
    885884        int rc;
    886885
     
    898897
    899898        if (socket->conn != NULL) {
    900                 /* Close connection */
    901899                trc = tcp_uc_close(socket->conn);
    902900                if (trc != TCP_EOK && trc != TCP_ENOTEXIST) {
     
    907905        }
    908906
    909         if (socket->lconn != NULL) {
    910                 /* Close listening connections */
    911                 for (i = 0; i < socket->backlog; i++) {
    912                         tcp_uc_set_cstate_cb(socket->lconn[i]->conn, NULL, NULL);
    913                         trc = tcp_uc_close(socket->lconn[i]->conn);
    914                         if (trc != TCP_EOK && trc != TCP_ENOTEXIST) {
    915                                 fibril_mutex_unlock(&socket->lock);
    916                                 async_answer_0(callid, EBADF);
    917                                 return;
    918                         }
    919 
    920                         free(socket->lconn[i]);
    921                         socket->lconn[i] = NULL;
    922                 }
    923         }
    924 
    925907        /* Grab recv_buffer_lock because of CV wait in tcp_sock_recv_fibril() */
    926908        fibril_mutex_lock(&socket->recv_buffer_lock);
Note: See TracChangeset for help on using the changeset viewer.