Ignore:
File:
1 edited

Legend:

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

    re417b96 r6092b56e  
    10621062        int socket_id;
    10631063        size_t addrlen;
    1064         size_t size;
    10651064        fibril_rwlock_t lock;
    10661065        ipc_call_t answer;
     
    11081107                                        socket_id = SOCKET_GET_SOCKET_ID(call);
    11091108                                        res = socket_create(&local_sockets, app_phone, socket_data, &socket_id);
    1110                                         SOCKET_SET_SOCKET_ID(answer, socket_id);
     1109                                        *SOCKET_SET_SOCKET_ID(answer) = socket_id;
    11111110                                        fibril_rwlock_write_unlock(&lock);
    11121111                                        if(res == EOK){
    11131112                                                if(tl_get_ip_packet_dimension(tcp_globals.ip_phone, &tcp_globals.dimensions, DEVICE_INVALID_ID, &packet_dimension) == EOK){
    1114                                                         SOCKET_SET_DATA_FRAGMENT_SIZE(answer, ((packet_dimension->content < socket_data->data_fragment_size) ? packet_dimension->content : socket_data->data_fragment_size));
     1113                                                        *SOCKET_SET_DATA_FRAGMENT_SIZE(answer) = ((packet_dimension->content < socket_data->data_fragment_size) ? packet_dimension->content : socket_data->data_fragment_size);
    11151114                                                }
    1116 //                                              SOCKET_SET_DATA_FRAGMENT_SIZE(answer, MAX_TCP_FRAGMENT_SIZE);
    1117                                                 SOCKET_SET_HEADER_SIZE(answer, TCP_HEADER_SIZE);
     1115//                                              *SOCKET_SET_DATA_FRAGMENT_SIZE(answer) = MAX_TCP_FRAGMENT_SIZE;
     1116                                                *SOCKET_SET_HEADER_SIZE(answer) = TCP_HEADER_SIZE;
    11181117                                                answer_count = 3;
    11191118                                        }else{
     
    11671166                                fibril_rwlock_read_lock(&tcp_globals.lock);
    11681167                                fibril_rwlock_write_lock(&lock);
    1169                                 res = tcp_accept_message(&local_sockets, SOCKET_GET_SOCKET_ID(call), SOCKET_GET_NEW_SOCKET_ID(call), &size, &addrlen);
    1170                                 SOCKET_SET_DATA_FRAGMENT_SIZE(answer, size);
     1168                                res = tcp_accept_message(&local_sockets, SOCKET_GET_SOCKET_ID(call), SOCKET_GET_NEW_SOCKET_ID(call), SOCKET_SET_DATA_FRAGMENT_SIZE(answer), &addrlen);
    11711169                                fibril_rwlock_write_unlock(&lock);
    11721170                                fibril_rwlock_read_unlock(&tcp_globals.lock);
    11731171                                if(res > 0){
    1174                                         SOCKET_SET_SOCKET_ID(answer, res);
    1175                                         SOCKET_SET_ADDRESS_LENGTH(answer, addrlen);
     1172                                        *SOCKET_SET_SOCKET_ID(answer) = res;
     1173                                        *SOCKET_SET_ADDRESS_LENGTH(answer) = addrlen;
    11761174                                        answer_count = 3;
    11771175                                }
     
    11801178                                fibril_rwlock_read_lock(&tcp_globals.lock);
    11811179                                fibril_rwlock_write_lock(&lock);
    1182                                 res = tcp_send_message(&local_sockets, SOCKET_GET_SOCKET_ID(call), SOCKET_GET_DATA_FRAGMENTS(call), &size, SOCKET_GET_FLAGS(call));
    1183                                 SOCKET_SET_DATA_FRAGMENT_SIZE(answer, size);
     1180                                res = tcp_send_message(&local_sockets, SOCKET_GET_SOCKET_ID(call), SOCKET_GET_DATA_FRAGMENTS(call), SOCKET_SET_DATA_FRAGMENT_SIZE(answer), SOCKET_GET_FLAGS(call));
    11841181                                if(res != EOK){
    11851182                                        fibril_rwlock_write_unlock(&lock);
     
    11941191                                        fibril_rwlock_read_lock(&tcp_globals.lock);
    11951192                                        fibril_rwlock_write_lock(&lock);
    1196                                         res = tcp_send_message(&local_sockets, SOCKET_GET_SOCKET_ID(call), SOCKET_GET_DATA_FRAGMENTS(call), &size, SOCKET_GET_FLAGS(call));
    1197                                         SOCKET_SET_DATA_FRAGMENT_SIZE(answer, size);
     1193                                        res = tcp_send_message(&local_sockets, SOCKET_GET_SOCKET_ID(call), SOCKET_GET_DATA_FRAGMENTS(call), SOCKET_SET_DATA_FRAGMENT_SIZE(answer), SOCKET_GET_FLAGS(call));
    11981194                                        if(res != EOK){
    11991195                                                fibril_rwlock_write_unlock(&lock);
     
    12121208                                fibril_rwlock_read_unlock(&tcp_globals.lock);
    12131209                                if(res > 0){
    1214                                         SOCKET_SET_READ_DATA_LENGTH(answer, res);
     1210                                        *SOCKET_SET_READ_DATA_LENGTH(answer) = res;
    12151211                                        answer_count = 1;
    12161212                                        res = EOK;
     
    12241220                                fibril_rwlock_read_unlock(&tcp_globals.lock);
    12251221                                if(res > 0){
    1226                                         SOCKET_SET_READ_DATA_LENGTH(answer, res);
    1227                                         SOCKET_SET_ADDRESS_LENGTH(answer, addrlen);
     1222                                        *SOCKET_SET_READ_DATA_LENGTH(answer) = res;
     1223                                        *SOCKET_SET_ADDRESS_LENGTH(answer) = addrlen;
    12281224                                        answer_count = 3;
    12291225                                        res = EOK;
Note: See TracChangeset for help on using the changeset viewer.