Changeset 2f19103 in mainline for uspace/srv/net/udp/service.c


Ignore:
Timestamp:
2015-05-22T07:21:37Z (9 years ago)
Author:
Jiri Svoboda <jiri@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
58e9dec
Parents:
bf7587b0
Message:

TCP and UDP servers can make use of inet/endpoint.h types internally.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/net/udp/service.c

    rbf7587b0 r2f19103  
    5454#define MAX_MSG_SIZE DATA_XFER_LIMIT
    5555
    56 static void udp_cassoc_recv_msg(void *, udp_sockpair_t *, udp_msg_t *);
     56static void udp_cassoc_recv_msg(void *, inet_ep2_t *, udp_msg_t *);
    5757
    5858static udp_assoc_cb_t udp_cassoc_cb = {
     
    6060};
    6161
    62 static int udp_cassoc_queue_msg(udp_cassoc_t *cassoc, udp_sockpair_t *sp,
     62static int udp_cassoc_queue_msg(udp_cassoc_t *cassoc, inet_ep2_t *epp,
    6363    udp_msg_t *msg)
    6464{
     
    6666
    6767        log_msg(LOG_DEFAULT, LVL_DEBUG, "udp_cassoc_queue_msg(%p, %p, %p)",
    68             cassoc, sp, msg);
     68            cassoc, epp, msg);
    6969
    7070        rqe = calloc(1, sizeof(udp_crcv_queue_entry_t));
     
    7373
    7474        link_initialize(&rqe->link);
    75         rqe->sp = *sp;
     75        rqe->epp = *epp;
    7676        rqe->msg = msg;
    7777        rqe->cassoc = cassoc;
     
    144144}
    145145
    146 static void udp_cassoc_recv_msg(void *arg, udp_sockpair_t *sp, udp_msg_t *msg)
     146static void udp_cassoc_recv_msg(void *arg, inet_ep2_t *epp, udp_msg_t *msg)
    147147{
    148148        udp_cassoc_t *cassoc = (udp_cassoc_t *) arg;
    149149
    150         udp_cassoc_queue_msg(cassoc, sp, msg);
     150        udp_cassoc_queue_msg(cassoc, epp, msg);
    151151        udp_ev_data(cassoc->client);
    152152}
     
    157157        udp_assoc_t *assoc;
    158158        udp_cassoc_t *cassoc;
    159         udp_sock_t local;
    160         udp_sock_t remote;
    161159        int rc;
    162160
    163161        log_msg(LOG_DEFAULT, LVL_DEBUG, "udp_assoc_create_impl");
    164162
    165         local.addr = epp->local.addr;
    166         local.port = epp->local.port;
    167         remote.addr = epp->remote.addr;
    168         remote.port = epp->remote.port;
    169 
    170         assoc = udp_assoc_new(&local, &remote, NULL, NULL);
     163        assoc = udp_assoc_new(epp, NULL, NULL);
    171164        if (assoc == NULL)
    172165                return EIO;
     
    213206{
    214207        udp_msg_t msg;
    215         udp_sock_t remote;
    216208        udp_cassoc_t *cassoc;
    217209        int rc;
     
    221213                return rc;
    222214
    223         remote.addr = dest->addr;
    224         remote.port = dest->port;
    225 
    226215        msg.data = data;
    227216        msg.data_size = size;
    228         rc = udp_assoc_send(cassoc->assoc, &remote, &msg);
     217        rc = udp_assoc_send(cassoc->assoc, dest, &msg);
    229218        if (rc != EOK)
    230219                return rc;
     
    390379        ipc_callid_t callid;
    391380        size_t size;
    392         inet_ep_t ep;
    393381        udp_crcv_queue_entry_t *enext;
    394382        sysarg_t assoc_id;
     
    410398        }
    411399
    412         inet_ep_init(&ep);
    413         ep.addr = enext->sp.foreign.addr;
    414         ep.port = enext->sp.foreign.port;
    415 
    416         rc = async_data_read_finalize(callid, &ep, max(size, (ssize_t)sizeof(ep)));
     400        rc = async_data_read_finalize(callid, &enext->epp.remote,
     401            max(size, (ssize_t)sizeof(inet_ep_t)));
    417402        if (rc != EOK) {
    418403                async_answer_0(iid, rc);
Note: See TracChangeset for help on using the changeset viewer.