Ignore:
File:
1 edited

Legend:

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

    rf0a2720 r78192cc7  
    3636
    3737#include <adt/list.h>
    38 #include <bool.h>
     38#include <stdbool.h>
    3939#include <errno.h>
    4040#include <io/log.h>
     
    7878                goto error;
    7979
    80         conn->tw_timer = fibril_timer_create();
     80        fibril_mutex_initialize(&conn->lock);
     81
     82        conn->tw_timer = fibril_timer_create(&conn->lock);
    8183        if (conn->tw_timer == NULL)
    8284                goto error;
    83 
    84         fibril_mutex_initialize(&conn->lock);
    8585
    8686        /* One for the user, one for not being in closed state */
     
    164164static void tcp_conn_free(tcp_conn_t *conn)
    165165{
    166         log_msg(LVL_DEBUG, "%s: tcp_conn_free(%p)", conn->name, conn);
     166        log_msg(LOG_DEFAULT, LVL_DEBUG, "%s: tcp_conn_free(%p)", conn->name, conn);
    167167        tcp_tqueue_fini(&conn->retransmit);
    168168
     
    184184void tcp_conn_addref(tcp_conn_t *conn)
    185185{
    186         log_msg(LVL_DEBUG2, "%s: tcp_conn_addref(%p)", conn->name, conn);
     186        log_msg(LOG_DEFAULT, LVL_DEBUG2, "%s: tcp_conn_addref(%p)", conn->name, conn);
    187187        atomic_inc(&conn->refcnt);
    188188}
     
    196196void tcp_conn_delref(tcp_conn_t *conn)
    197197{
    198         log_msg(LVL_DEBUG2, "%s: tcp_conn_delref(%p)", conn->name, conn);
     198        log_msg(LOG_DEFAULT, LVL_DEBUG2, "%s: tcp_conn_delref(%p)", conn->name, conn);
    199199
    200200        if (atomic_predec(&conn->refcnt) == 0)
     
    202202}
    203203
     204/** Lock connection.
     205 *
     206 * Must be called before any other connection-manipulating function,
     207 * except tcp_conn_{add|del}ref(). Locks the connection including
     208 * its timers. Must not be called inside any of the connection
     209 * timer handlers.
     210 *
     211 * @param conn          Connection
     212 */
     213void tcp_conn_lock(tcp_conn_t *conn)
     214{
     215        fibril_mutex_lock(&conn->lock);
     216}
     217
     218/** Unlock connection.
     219 *
     220 * @param conn          Connection
     221 */
     222void tcp_conn_unlock(tcp_conn_t *conn)
     223{
     224        fibril_mutex_unlock(&conn->lock);
     225}
     226
    204227/** Delete connection.
    205228 *
     
    211234void tcp_conn_delete(tcp_conn_t *conn)
    212235{
    213         log_msg(LVL_DEBUG, "%s: tcp_conn_delete(%p)", conn->name, conn);
     236        log_msg(LOG_DEFAULT, LVL_DEBUG, "%s: tcp_conn_delete(%p)", conn->name, conn);
    214237
    215238        assert(conn->deleted == false);
     
    245268        tcp_cstate_t old_state;
    246269
    247         log_msg(LVL_DEBUG, "tcp_conn_state_set(%p)", conn);
     270        log_msg(LOG_DEFAULT, LVL_DEBUG, "tcp_conn_state_set(%p)", conn);
    248271
    249272        old_state = conn->cstate;
     
    253276        /* Run user callback function */
    254277        if (conn->cstate_cb != NULL) {
    255                 log_msg(LVL_DEBUG, "tcp_conn_state_set() - run user CB");
     278                log_msg(LOG_DEFAULT, LVL_DEBUG, "tcp_conn_state_set() - run user CB");
    256279                conn->cstate_cb(conn, conn->cstate_cb_arg);
    257280        } else {
    258                 log_msg(LVL_DEBUG, "tcp_conn_state_set() - no user CB");
     281                log_msg(LOG_DEFAULT, LVL_DEBUG, "tcp_conn_state_set() - no user CB");
    259282        }
    260283
     
    293316        case st_syn_received:
    294317        case st_established:
    295                 log_msg(LVL_DEBUG, "%s: FIN sent -> Fin-Wait-1", conn->name);
     318                log_msg(LOG_DEFAULT, LVL_DEBUG, "%s: FIN sent -> Fin-Wait-1", conn->name);
    296319                tcp_conn_state_set(conn, st_fin_wait_1);
    297320                break;
    298321        case st_close_wait:
    299                 log_msg(LVL_DEBUG, "%s: FIN sent -> Last-Ack", conn->name);
     322                log_msg(LOG_DEFAULT, LVL_DEBUG, "%s: FIN sent -> Last-Ack", conn->name);
    300323                tcp_conn_state_set(conn, st_last_ack);
    301324                break;
    302325        default:
    303                 log_msg(LVL_ERROR, "%s: Connection state %d", conn->name,
     326                log_msg(LOG_DEFAULT, LVL_ERROR, "%s: Connection state %d", conn->name,
    304327                    conn->cstate);
    305328                assert(false);
     
    312335static bool tcp_socket_match(tcp_sock_t *sock, tcp_sock_t *patt)
    313336{
    314         log_msg(LVL_DEBUG2, "tcp_socket_match(sock=(%x,%u), pat=(%x,%u))",
    315             sock->addr.ipv4, sock->port, patt->addr.ipv4, patt->port);
    316 
    317         if (patt->addr.ipv4 != TCP_IPV4_ANY &&
    318             patt->addr.ipv4 != sock->addr.ipv4)
     337        log_msg(LOG_DEFAULT, LVL_DEBUG2,
     338            "tcp_socket_match(sock=(%u), pat=(%u))", sock->port, patt->port);
     339       
     340        if ((!inet_addr_is_any(&patt->addr)) &&
     341            (!inet_addr_compare(&patt->addr, &sock->addr)))
    319342                return false;
    320343
    321         if (patt->port != TCP_PORT_ANY &&
    322             patt->port != sock->port)
     344        if ((patt->port != TCP_PORT_ANY) &&
     345            (patt->port != sock->port))
    323346                return false;
    324347
    325         log_msg(LVL_DEBUG2, " -> match");
     348        log_msg(LOG_DEFAULT, LVL_DEBUG2, " -> match");
    326349
    327350        return true;
     
    331354static bool tcp_sockpair_match(tcp_sockpair_t *sp, tcp_sockpair_t *pattern)
    332355{
    333         log_msg(LVL_DEBUG2, "tcp_sockpair_match(%p, %p)", sp, pattern);
     356        log_msg(LOG_DEFAULT, LVL_DEBUG2, "tcp_sockpair_match(%p, %p)", sp, pattern);
    334357
    335358        if (!tcp_socket_match(&sp->local, &pattern->local))
     
    353376tcp_conn_t *tcp_conn_find_ref(tcp_sockpair_t *sp)
    354377{
    355         log_msg(LVL_DEBUG, "tcp_conn_find_ref(%p)", sp);
    356 
     378        log_msg(LOG_DEFAULT, LVL_DEBUG, "tcp_conn_find_ref(%p)", sp);
     379       
     380        log_msg(LOG_DEFAULT, LVL_DEBUG2, "compare conn (f:(%u), l:(%u))",
     381            sp->foreign.port, sp->local.port);
     382       
    357383        fibril_mutex_lock(&conn_list_lock);
    358 
    359         list_foreach(conn_list, link) {
    360                 tcp_conn_t *conn = list_get_instance(link, tcp_conn_t, link);
     384       
     385        list_foreach(conn_list, link, tcp_conn_t, conn) {
    361386                tcp_sockpair_t *csp = &conn->ident;
    362                 log_msg(LVL_DEBUG2, "compare with conn (f:(%x,%u), l:(%x,%u))",
    363                     csp->foreign.addr.ipv4, csp->foreign.port,
    364                     csp->local.addr.ipv4, csp->local.port);
     387               
     388                log_msg(LOG_DEFAULT, LVL_DEBUG2, " - with (f:(%u), l:(%u))",
     389                    csp->foreign.port, csp->local.port);
     390               
    365391                if (tcp_sockpair_match(sp, csp)) {
    366392                        tcp_conn_addref(conn);
     
    369395                }
    370396        }
    371 
     397       
    372398        fibril_mutex_unlock(&conn_list_lock);
    373399        return NULL;
     
    378404 * @param conn  Connection
    379405 */
    380 static void tcp_conn_reset(tcp_conn_t *conn)
    381 {
    382         log_msg(LVL_DEBUG, "%s: tcp_conn_reset()", conn->name);
     406void tcp_conn_reset(tcp_conn_t *conn)
     407{
     408        log_msg(LOG_DEFAULT, LVL_DEBUG, "%s: tcp_conn_reset()", conn->name);
    383409        tcp_conn_state_set(conn, st_closed);
    384410        conn->reset = true;
     
    398424{
    399425        /* TODO */
    400         log_msg(LVL_DEBUG, "%s: tcp_reset_signal()", conn->name);
     426        log_msg(LOG_DEFAULT, LVL_DEBUG, "%s: tcp_reset_signal()", conn->name);
    401427}
    402428
     
    422448                return true;
    423449        case st_closed:
    424                 log_msg(LVL_WARN, "state=%d", (int) conn->cstate);
     450                log_msg(LOG_DEFAULT, LVL_WARN, "state=%d", (int) conn->cstate);
    425451                assert(false);
    426452        }
     
    436462static void tcp_conn_sa_listen(tcp_conn_t *conn, tcp_segment_t *seg)
    437463{
    438         log_msg(LVL_DEBUG, "tcp_conn_sa_listen(%p, %p)", conn, seg);
     464        log_msg(LOG_DEFAULT, LVL_DEBUG, "tcp_conn_sa_listen(%p, %p)", conn, seg);
    439465
    440466        if ((seg->ctrl & CTL_RST) != 0) {
    441                 log_msg(LVL_DEBUG, "Ignoring incoming RST.");
     467                log_msg(LOG_DEFAULT, LVL_DEBUG, "Ignoring incoming RST.");
    442468                return;
    443469        }
    444470
    445471        if ((seg->ctrl & CTL_ACK) != 0) {
    446                 log_msg(LVL_DEBUG, "Incoming ACK, send acceptable RST.");
     472                log_msg(LOG_DEFAULT, LVL_DEBUG, "Incoming ACK, send acceptable RST.");
    447473                tcp_reply_rst(&conn->ident, seg);
    448474                return;
     
    450476
    451477        if ((seg->ctrl & CTL_SYN) == 0) {
    452                 log_msg(LVL_DEBUG, "SYN not present. Ignoring segment.");
     478                log_msg(LOG_DEFAULT, LVL_DEBUG, "SYN not present. Ignoring segment.");
    453479                return;
    454480        }
    455481
    456         log_msg(LVL_DEBUG, "Got SYN, sending SYN, ACK.");
     482        log_msg(LOG_DEFAULT, LVL_DEBUG, "Got SYN, sending SYN, ACK.");
    457483
    458484        conn->rcv_nxt = seg->seq + 1;
     
    460486
    461487
    462         log_msg(LVL_DEBUG, "rcv_nxt=%u", conn->rcv_nxt);
     488        log_msg(LOG_DEFAULT, LVL_DEBUG, "rcv_nxt=%u", conn->rcv_nxt);
    463489
    464490        if (seg->len > 1)
    465                 log_msg(LVL_WARN, "SYN combined with data, ignoring data.");
     491                log_msg(LOG_DEFAULT, LVL_WARN, "SYN combined with data, ignoring data.");
    466492
    467493        /* XXX select ISS */
     
    493519static void tcp_conn_sa_syn_sent(tcp_conn_t *conn, tcp_segment_t *seg)
    494520{
    495         log_msg(LVL_DEBUG, "tcp_conn_sa_syn_sent(%p, %p)", conn, seg);
     521        log_msg(LOG_DEFAULT, LVL_DEBUG, "tcp_conn_sa_syn_sent(%p, %p)", conn, seg);
    496522
    497523        if ((seg->ctrl & CTL_ACK) != 0) {
    498                 log_msg(LVL_DEBUG, "snd_una=%u, seg.ack=%u, snd_nxt=%u",
     524                log_msg(LOG_DEFAULT, LVL_DEBUG, "snd_una=%u, seg.ack=%u, snd_nxt=%u",
    499525                    conn->snd_una, seg->ack, conn->snd_nxt);
    500526                if (!seq_no_ack_acceptable(conn, seg->ack)) {
    501527                        if ((seg->ctrl & CTL_RST) == 0) {
    502                                 log_msg(LVL_WARN, "ACK not acceptable, send RST");
     528                                log_msg(LOG_DEFAULT, LVL_WARN, "ACK not acceptable, send RST");
    503529                                tcp_reply_rst(&conn->ident, seg);
    504530                        } else {
    505                                 log_msg(LVL_WARN, "RST,ACK not acceptable, drop");
     531                                log_msg(LOG_DEFAULT, LVL_WARN, "RST,ACK not acceptable, drop");
    506532                        }
    507533                        return;
     
    512538                /* If we get here, we have either an acceptable ACK or no ACK */
    513539                if ((seg->ctrl & CTL_ACK) != 0) {
    514                         log_msg(LVL_DEBUG, "%s: Connection reset. -> Closed",
     540                        log_msg(LOG_DEFAULT, LVL_DEBUG, "%s: Connection reset. -> Closed",
    515541                            conn->name);
    516542                        /* Reset connection */
     
    518544                        return;
    519545                } else {
    520                         log_msg(LVL_DEBUG, "%s: RST without ACK, drop",
     546                        log_msg(LOG_DEFAULT, LVL_DEBUG, "%s: RST without ACK, drop",
    521547                            conn->name);
    522548                        return;
     
    527553
    528554        if ((seg->ctrl & CTL_SYN) == 0) {
    529                 log_msg(LVL_DEBUG, "No SYN bit, ignoring segment.");
     555                log_msg(LOG_DEFAULT, LVL_DEBUG, "No SYN bit, ignoring segment.");
    530556                return;
    531557        }
     
    544570        }
    545571
    546         log_msg(LVL_DEBUG, "Sent SYN, got SYN.");
     572        log_msg(LOG_DEFAULT, LVL_DEBUG, "Sent SYN, got SYN.");
    547573
    548574        /*
     
    551577         * will always be accepted as new window setting.
    552578         */
    553         log_msg(LVL_DEBUG, "SND.WND := %" PRIu32 ", SND.WL1 := %" PRIu32 ", "
     579        log_msg(LOG_DEFAULT, LVL_DEBUG, "SND.WND := %" PRIu32 ", SND.WL1 := %" PRIu32 ", "
    554580            "SND.WL2 = %" PRIu32, seg->wnd, seg->seq, seg->seq);
    555581        conn->snd_wnd = seg->wnd;
     
    558584
    559585        if (seq_no_syn_acked(conn)) {
    560                 log_msg(LVL_DEBUG, "%s: syn acked -> Established", conn->name);
     586                log_msg(LOG_DEFAULT, LVL_DEBUG, "%s: syn acked -> Established", conn->name);
    561587                tcp_conn_state_set(conn, st_established);
    562588                tcp_tqueue_ctrl_seg(conn, CTL_ACK /* XXX */);
    563589        } else {
    564                 log_msg(LVL_DEBUG, "%s: syn not acked -> Syn-Received",
     590                log_msg(LOG_DEFAULT, LVL_DEBUG, "%s: syn not acked -> Syn-Received",
    565591                    conn->name);
    566592                tcp_conn_state_set(conn, st_syn_received);
     
    582608        tcp_segment_t *pseg;
    583609
    584         log_msg(LVL_DEBUG, "tcp_conn_sa_seq(%p, %p)", conn, seg);
     610        log_msg(LOG_DEFAULT, LVL_DEBUG, "tcp_conn_sa_seq(%p, %p)", conn, seg);
    585611
    586612        /* Discard unacceptable segments ("old duplicates") */
    587613        if (!seq_no_segment_acceptable(conn, seg)) {
    588                 log_msg(LVL_DEBUG, "Replying ACK to unacceptable segment.");
     614                log_msg(LOG_DEFAULT, LVL_DEBUG, "Replying ACK to unacceptable segment.");
    589615                tcp_tqueue_ctrl_seg(conn, CTL_ACK);
    590616                tcp_segment_delete(seg);
     
    682708        assert(seq_no_in_rcv_wnd(conn, seg->seq));
    683709
    684         log_msg(LVL_WARN, "SYN is in receive window, should send reset. XXX");
     710        log_msg(LOG_DEFAULT, LVL_WARN, "SYN is in receive window, should send reset. XXX");
    685711
    686712        /*
     
    705731        if (!seq_no_ack_acceptable(conn, seg->ack)) {
    706732                /* ACK is not acceptable, send RST. */
    707                 log_msg(LVL_WARN, "Segment ACK not acceptable, sending RST.");
     733                log_msg(LOG_DEFAULT, LVL_WARN, "Segment ACK not acceptable, sending RST.");
    708734                tcp_reply_rst(&conn->ident, seg);
    709735                tcp_segment_delete(seg);
     
    711737        }
    712738
    713         log_msg(LVL_DEBUG, "%s: SYN ACKed -> Established", conn->name);
     739        log_msg(LOG_DEFAULT, LVL_DEBUG, "%s: SYN ACKed -> Established", conn->name);
    714740
    715741        tcp_conn_state_set(conn, st_established);
     
    730756static cproc_t tcp_conn_seg_proc_ack_est(tcp_conn_t *conn, tcp_segment_t *seg)
    731757{
    732         log_msg(LVL_DEBUG, "tcp_conn_seg_proc_ack_est(%p, %p)", conn, seg);
    733 
    734         log_msg(LVL_DEBUG, "SEG.ACK=%u, SND.UNA=%u, SND.NXT=%u",
     758        log_msg(LOG_DEFAULT, LVL_DEBUG, "tcp_conn_seg_proc_ack_est(%p, %p)", conn, seg);
     759
     760        log_msg(LOG_DEFAULT, LVL_DEBUG, "SEG.ACK=%u, SND.UNA=%u, SND.NXT=%u",
    735761            (unsigned)seg->ack, (unsigned)conn->snd_una,
    736762            (unsigned)conn->snd_nxt);
    737763
    738764        if (!seq_no_ack_acceptable(conn, seg->ack)) {
    739                 log_msg(LVL_DEBUG, "ACK not acceptable.");
     765                log_msg(LOG_DEFAULT, LVL_DEBUG, "ACK not acceptable.");
    740766                if (!seq_no_ack_duplicate(conn, seg->ack)) {
    741                         log_msg(LVL_WARN, "Not acceptable, not duplicate. "
     767                        log_msg(LOG_DEFAULT, LVL_WARN, "Not acceptable, not duplicate. "
    742768                            "Send ACK and drop.");
    743769                        /* Not acceptable, not duplicate. Send ACK and drop. */
     
    746772                        return cp_done;
    747773                } else {
    748                         log_msg(LVL_DEBUG, "Ignoring duplicate ACK.");
     774                        log_msg(LOG_DEFAULT, LVL_DEBUG, "Ignoring duplicate ACK.");
    749775                }
    750776        } else {
     
    758784                conn->snd_wl2 = seg->ack;
    759785
    760                 log_msg(LVL_DEBUG, "Updating send window, SND.WND=%" PRIu32
     786                log_msg(LOG_DEFAULT, LVL_DEBUG, "Updating send window, SND.WND=%" PRIu32
    761787                    ", SND.WL1=%" PRIu32 ", SND.WL2=%" PRIu32,
    762788                    conn->snd_wnd, conn->snd_wl1, conn->snd_wl2);
     
    785811
    786812        if (conn->fin_is_acked) {
    787                 log_msg(LVL_DEBUG, "%s: FIN acked -> Fin-Wait-2", conn->name);
     813                log_msg(LOG_DEFAULT, LVL_DEBUG, "%s: FIN acked -> Fin-Wait-2", conn->name);
    788814                tcp_conn_state_set(conn, st_fin_wait_2);
    789815        }
     
    850876
    851877        if (conn->fin_is_acked) {
    852                 log_msg(LVL_DEBUG, "%s: FIN acked -> Closed", conn->name);
     878                log_msg(LOG_DEFAULT, LVL_DEBUG, "%s: FIN acked -> Closed", conn->name);
    853879                tcp_conn_remove(conn);
    854880                tcp_conn_state_set(conn, st_closed);
     
    881907static cproc_t tcp_conn_seg_proc_ack(tcp_conn_t *conn, tcp_segment_t *seg)
    882908{
    883         log_msg(LVL_DEBUG, "%s: tcp_conn_seg_proc_ack(%p, %p)",
     909        log_msg(LOG_DEFAULT, LVL_DEBUG, "%s: tcp_conn_seg_proc_ack(%p, %p)",
    884910            conn->name, conn, seg);
    885911
    886912        if ((seg->ctrl & CTL_ACK) == 0) {
    887                 log_msg(LVL_WARN, "Segment has no ACK. Dropping.");
     913                log_msg(LOG_DEFAULT, LVL_WARN, "Segment has no ACK. Dropping.");
    888914                tcp_segment_delete(seg);
    889915                return cp_done;
     
    940966        size_t xfer_size;
    941967
    942         log_msg(LVL_DEBUG, "%s: tcp_conn_seg_proc_text(%p, %p)",
     968        log_msg(LOG_DEFAULT, LVL_DEBUG, "%s: tcp_conn_seg_proc_text(%p, %p)",
    943969            conn->name, conn, seg);
    944970
     
    9821008        fibril_condvar_broadcast(&conn->rcv_buf_cv);
    9831009
    984         log_msg(LVL_DEBUG, "Received %zu bytes of data.", xfer_size);
     1010        log_msg(LOG_DEFAULT, LVL_DEBUG, "Received %zu bytes of data.", xfer_size);
    9851011
    9861012        /* Advance RCV.NXT */
     
    9981024                tcp_conn_trim_seg_to_wnd(conn, seg);
    9991025        } else {
    1000                 log_msg(LVL_DEBUG, "%s: Nothing left in segment, dropping "
     1026                log_msg(LOG_DEFAULT, LVL_DEBUG, "%s: Nothing left in segment, dropping "
    10011027                    "(xfer_size=%zu, SEG.LEN=%" PRIu32 ", seg->ctrl=%u)",
    10021028                    conn->name, xfer_size, seg->len, (unsigned int) seg->ctrl);
     
    10181044static cproc_t tcp_conn_seg_proc_fin(tcp_conn_t *conn, tcp_segment_t *seg)
    10191045{
    1020         log_msg(LVL_DEBUG, "%s: tcp_conn_seg_proc_fin(%p, %p)",
     1046        log_msg(LOG_DEFAULT, LVL_DEBUG, "%s: tcp_conn_seg_proc_fin(%p, %p)",
    10211047            conn->name, conn, seg);
    1022         log_msg(LVL_DEBUG, " seg->len=%zu, seg->ctl=%u", (size_t) seg->len,
     1048        log_msg(LOG_DEFAULT, LVL_DEBUG, " seg->len=%zu, seg->ctl=%u", (size_t) seg->len,
    10231049            (unsigned) seg->ctrl);
    10241050
    10251051        /* Only process FIN if no text is left in segment. */
    10261052        if (tcp_segment_text_size(seg) == 0 && (seg->ctrl & CTL_FIN) != 0) {
    1027                 log_msg(LVL_DEBUG, " - FIN found in segment.");
     1053                log_msg(LOG_DEFAULT, LVL_DEBUG, " - FIN found in segment.");
    10281054
    10291055                /* Send ACK */
     
    10421068                case st_syn_received:
    10431069                case st_established:
    1044                         log_msg(LVL_DEBUG, "%s: FIN received -> Close-Wait",
     1070                        log_msg(LOG_DEFAULT, LVL_DEBUG, "%s: FIN received -> Close-Wait",
    10451071                            conn->name);
    10461072                        tcp_conn_state_set(conn, st_close_wait);
    10471073                        break;
    10481074                case st_fin_wait_1:
    1049                         log_msg(LVL_DEBUG, "%s: FIN received -> Closing",
     1075                        log_msg(LOG_DEFAULT, LVL_DEBUG, "%s: FIN received -> Closing",
    10501076                            conn->name);
    10511077                        tcp_conn_state_set(conn, st_closing);
    10521078                        break;
    10531079                case st_fin_wait_2:
    1054                         log_msg(LVL_DEBUG, "%s: FIN received -> Time-Wait",
     1080                        log_msg(LOG_DEFAULT, LVL_DEBUG, "%s: FIN received -> Time-Wait",
    10551081                            conn->name);
    10561082                        tcp_conn_state_set(conn, st_time_wait);
     
    10911117static void tcp_conn_seg_process(tcp_conn_t *conn, tcp_segment_t *seg)
    10921118{
    1093         log_msg(LVL_DEBUG, "tcp_conn_seg_process(%p, %p)", conn, seg);
     1119        log_msg(LOG_DEFAULT, LVL_DEBUG, "tcp_conn_seg_process(%p, %p)", conn, seg);
    10941120        tcp_segment_dump(seg);
    10951121
     
    10971123        /* XXX Permit valid ACKs, URGs and RSTs */
    10981124/*      if (!seq_no_segment_acceptable(conn, seg)) {
    1099                 log_msg(LVL_WARN, "Segment not acceptable, dropping.");
     1125                log_msg(LOG_DEFAULT, LVL_WARN, "Segment not acceptable, dropping.");
    11001126                if ((seg->ctrl & CTL_RST) == 0) {
    11011127                        tcp_tqueue_ctrl_seg(conn, CTL_ACK);
     
    11311157         */
    11321158        if (seg->len > 0) {
    1133                 log_msg(LVL_DEBUG, "Re-insert segment %p. seg->len=%zu",
     1159                log_msg(LOG_DEFAULT, LVL_DEBUG, "Re-insert segment %p. seg->len=%zu",
    11341160                    seg, (size_t) seg->len);
    11351161                tcp_iqueue_insert_seg(&conn->incoming, seg);
     
    11461172void tcp_conn_segment_arrived(tcp_conn_t *conn, tcp_segment_t *seg)
    11471173{
    1148         log_msg(LVL_DEBUG, "%s: tcp_conn_segment_arrived(%p)",
     1174        log_msg(LOG_DEFAULT, LVL_DEBUG, "%s: tcp_conn_segment_arrived(%p)",
    11491175            conn->name, seg);
    11501176
     
    11651191                tcp_conn_sa_queue(conn, seg); break;
    11661192        case st_closed:
    1167                 log_msg(LVL_DEBUG, "state=%d", (int) conn->cstate);
     1193                log_msg(LOG_DEFAULT, LVL_DEBUG, "state=%d", (int) conn->cstate);
    11681194                assert(false);
    11691195        }
     
    11781204        tcp_conn_t *conn = (tcp_conn_t *) arg;
    11791205
    1180         log_msg(LVL_DEBUG, "tw_timeout_func(%p)", conn);
    1181 
    1182         fibril_mutex_lock(&conn->lock);
     1206        log_msg(LOG_DEFAULT, LVL_DEBUG, "tw_timeout_func(%p)", conn);
     1207
     1208        tcp_conn_lock(conn);
    11831209
    11841210        if (conn->cstate == st_closed) {
    1185                 log_msg(LVL_DEBUG, "Connection already closed.");
    1186                 fibril_mutex_unlock(&conn->lock);
     1211                log_msg(LOG_DEFAULT, LVL_DEBUG, "Connection already closed.");
     1212                tcp_conn_unlock(conn);
    11871213                tcp_conn_delref(conn);
    11881214                return;
    11891215        }
    11901216
    1191         log_msg(LVL_DEBUG, "%s: TW Timeout -> Closed", conn->name);
     1217        log_msg(LOG_DEFAULT, LVL_DEBUG, "%s: TW Timeout -> Closed", conn->name);
    11921218        tcp_conn_remove(conn);
    11931219        tcp_conn_state_set(conn, st_closed);
    11941220
    1195         fibril_mutex_unlock(&conn->lock);
     1221        tcp_conn_unlock(conn);
    11961222        tcp_conn_delref(conn);
     1223
     1224        log_msg(LOG_DEFAULT, LVL_DEBUG, "tw_timeout_func(%p) end", conn);
    11971225}
    11981226
     
    12031231void tcp_conn_tw_timer_set(tcp_conn_t *conn)
    12041232{
     1233        log_msg(LOG_DEFAULT, LVL_DEBUG2, "tcp_conn_tw_timer_set() begin");
    12051234        tcp_conn_addref(conn);
    1206         fibril_timer_set(conn->tw_timer, TIME_WAIT_TIMEOUT, tw_timeout_func,
    1207             (void *)conn);
     1235        fibril_timer_set_locked(conn->tw_timer, TIME_WAIT_TIMEOUT,
     1236            tw_timeout_func, (void *)conn);
     1237        log_msg(LOG_DEFAULT, LVL_DEBUG2, "tcp_conn_tw_timer_set() end");
    12081238}
    12091239
     
    12141244void tcp_conn_tw_timer_clear(tcp_conn_t *conn)
    12151245{
    1216         if (fibril_timer_clear(conn->tw_timer) == fts_active)
     1246        log_msg(LOG_DEFAULT, LVL_DEBUG2, "tcp_conn_tw_timer_clear() begin");
     1247        if (fibril_timer_clear_locked(conn->tw_timer) == fts_active)
    12171248                tcp_conn_delref(conn);
     1249        log_msg(LOG_DEFAULT, LVL_DEBUG2, "tcp_conn_tw_timer_clear() end");
    12181250}
    12191251
     
    12401272void tcp_unexpected_segment(tcp_sockpair_t *sp, tcp_segment_t *seg)
    12411273{
    1242         log_msg(LVL_DEBUG, "tcp_unexpected_segment(%p, %p)", sp, seg);
     1274        log_msg(LOG_DEFAULT, LVL_DEBUG, "tcp_unexpected_segment(%p, %p)", sp, seg);
    12431275
    12441276        if ((seg->ctrl & CTL_RST) == 0)
     
    12681300        tcp_segment_t *rseg;
    12691301
    1270         log_msg(LVL_DEBUG, "tcp_reply_rst(%p, %p)", sp, seg);
     1302        log_msg(LOG_DEFAULT, LVL_DEBUG, "tcp_reply_rst(%p, %p)", sp, seg);
    12711303
    12721304        rseg = tcp_segment_make_rst(seg);
Note: See TracChangeset for help on using the changeset viewer.