Changeset 1a23f6e in mainline for uspace/srv/net/tcp/sock.c


Ignore:
Timestamp:
2012-05-04T10:41:44Z (12 years ago)
Author:
Vojtech Horky <vojtechhorky@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
af42a2b
Parents:
6efb4d2 (diff), d21e935c (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge mainline changes

File:
1 edited

Legend:

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

    r6efb4d2 r1a23f6e  
    4242#include <ipc/services.h>
    4343#include <ipc/socket.h>
    44 #include <net/modules.h>
    4544#include <net/socket.h>
    4645#include <ns.h>
     
    8988        socket = (tcp_sockdata_t *)sock_core->specific_data;
    9089        (void)socket;
     90
     91        /* XXX We need to initiate connection cleanup here */
    9192}
    9293
     
    142143        sock->sock_core = sock_core;
    143144
    144         refresh_answer(&answer, NULL);
    145145        SOCKET_SET_SOCKET_ID(answer, sock_id);
    146146
    147147        SOCKET_SET_DATA_FRAGMENT_SIZE(answer, FRAGMENT_SIZE);
    148148        SOCKET_SET_HEADER_SIZE(answer, sizeof(tcp_header_t));
    149         answer_call(callid, EOK, &answer, 3);
     149       
     150        async_answer_3(callid, EOK, IPC_GET_ARG1(answer),
     151            IPC_GET_ARG2(answer), IPC_GET_ARG3(answer));
    150152}
    151153
     
    466468        assert(asock_core != NULL);
    467469
    468         refresh_answer(&answer, NULL);
    469 
    470470        SOCKET_SET_DATA_FRAGMENT_SIZE(answer, FRAGMENT_SIZE);
    471471        SOCKET_SET_SOCKET_ID(answer, asock_id);
    472472        SOCKET_SET_ADDRESS_LENGTH(answer, sizeof(struct sockaddr_in));
    473 
    474         answer_call(callid, asock_core->socket_id, &answer, 3);
    475 
     473       
     474        async_answer_3(callid, asock_core->socket_id,
     475            IPC_GET_ARG1(answer), IPC_GET_ARG2(answer),
     476            IPC_GET_ARG3(answer));
     477       
    476478        /* Push one fragment notification to client's queue */
    477479        log_msg(LVL_DEBUG, "tcp_sock_accept(): notify data\n");
     
    557559        }
    558560
    559         refresh_answer(&answer, NULL);
     561        IPC_SET_ARG1(answer, 0);
    560562        SOCKET_SET_DATA_FRAGMENT_SIZE(answer, FRAGMENT_SIZE);
    561         answer_call(callid, EOK, &answer, 2);
     563        async_answer_2(callid, EOK, IPC_GET_ARG1(answer),
     564            IPC_GET_ARG2(answer));
    562565        fibril_mutex_unlock(&socket->lock);
    563566}
     
    677680
    678681        SOCKET_SET_READ_DATA_LENGTH(answer, length);
    679         answer_call(callid, EOK, &answer, 1);
    680 
     682        async_answer_1(callid, EOK, IPC_GET_ARG1(answer));
     683       
    681684        /* Push one fragment notification to client's queue */
    682685        tcp_sock_notify_data(sock_core);
     
    835838                }
    836839        }
     840
     841        /* Clean up */
     842        log_msg(LVL_DEBUG, "tcp_sock_connection: Clean up");
     843        async_hangup(client.sess);
     844        socket_cores_release(NULL, &client.sockets, &gsock, tcp_free_sock_data);
    837845}
    838846
Note: See TracChangeset for help on using the changeset viewer.