Changeset e417b96 in mainline for uspace/srv/net/tl/udp/udp.c


Ignore:
Timestamp:
2010-03-23T22:58:44Z (14 years ago)
Author:
Lukas Mejdrech <lukasmejdrech@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
5814ef7
Parents:
76ca3f7
Message:

IPC_[SG]ET_ARG macros refactored to be more explicit and safer

File:
1 edited

Legend:

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

    r76ca3f7 re417b96  
    419419        int socket_id;
    420420        size_t addrlen;
     421        size_t size;
    421422        ipc_call_t answer;
    422423        int answer_count;
     
    454455                                socket_id = SOCKET_GET_SOCKET_ID(call);
    455456                                res = socket_create(&local_sockets, app_phone, NULL, &socket_id);
    456                                 *SOCKET_SET_SOCKET_ID(answer) = socket_id;
    457                                
     457                                SOCKET_SET_SOCKET_ID(answer, socket_id);
     458
    458459                                if(res == EOK){
    459460                                        if(tl_get_ip_packet_dimension(udp_globals.ip_phone, &udp_globals.dimensions, DEVICE_INVALID_ID, &packet_dimension) == EOK){
    460                                                 *SOCKET_SET_DATA_FRAGMENT_SIZE(answer) = packet_dimension->content;
     461                                                SOCKET_SET_DATA_FRAGMENT_SIZE(answer, packet_dimension->content);
    461462                                        }
    462 //                                      *SOCKET_SET_DATA_FRAGMENT_SIZE(answer) = MAX_UDP_FRAGMENT_SIZE;
    463                                         *SOCKET_SET_HEADER_SIZE(answer) = UDP_HEADER_SIZE;
     463//                                      SOCKET_SET_DATA_FRAGMENT_SIZE(answer, MAX_UDP_FRAGMENT_SIZE);
     464                                        SOCKET_SET_HEADER_SIZE(answer, UDP_HEADER_SIZE);
    464465                                        answer_count = 3;
    465466                                }
     
    478479                                if(res == EOK){
    479480                                        fibril_rwlock_write_lock(&udp_globals.lock);
    480                                         res = udp_sendto_message(&local_sockets, SOCKET_GET_SOCKET_ID(call), addr, addrlen, SOCKET_GET_DATA_FRAGMENTS(call), SOCKET_SET_DATA_FRAGMENT_SIZE(answer), SOCKET_GET_FLAGS(call));
     481                                        res = udp_sendto_message(&local_sockets, SOCKET_GET_SOCKET_ID(call), addr, addrlen, SOCKET_GET_DATA_FRAGMENTS(call), &size, SOCKET_GET_FLAGS(call));
     482                                        SOCKET_SET_DATA_FRAGMENT_SIZE(answer, size);
    481483                                        if(res != EOK){
    482484                                                fibril_rwlock_write_unlock(&udp_globals.lock);
     
    492494                                fibril_rwlock_write_unlock(&udp_globals.lock);
    493495                                if(res > 0){
    494                                         *SOCKET_SET_READ_DATA_LENGTH(answer) = res;
    495                                         *SOCKET_SET_ADDRESS_LENGTH(answer) = addrlen;
     496                                        SOCKET_SET_READ_DATA_LENGTH(answer, res);
     497                                        SOCKET_SET_ADDRESS_LENGTH(answer, addrlen);
    496498                                        answer_count = 3;
    497499                                        res = EOK;
Note: See TracChangeset for help on using the changeset viewer.