Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/app/nettest1/nettest1.c

    rc9ebbe71 r69e0d6d  
    287287int main(int argc, char *argv[])
    288288{
    289         struct sockaddr_in address_in;
    290         struct sockaddr_in6 address_in6;
     289
     290        socklen_t max_length;
     291        uint8_t *address_data[sizeof(struct sockaddr_in6)];
     292        struct sockaddr_in *address_in;
     293        struct sockaddr_in6 *address_in6;
    291294        uint8_t *address_start;
    292295
     
    297300
    298301        int rc;
     302
     303        max_length = sizeof(address_data);
     304        address = (struct sockaddr *) address_data;
     305        address_in = (struct sockaddr_in *) address;
     306        address_in6 = (struct sockaddr_in6 *) address;
    299307
    300308        sockets = 10;
     
    326334
    327335        /* Prepare the address buffer */
     336        bzero(address_data, max_length);
    328337
    329338        switch (family) {
    330339        case PF_INET:
    331                 address_in.sin_family = AF_INET;
    332                 address_in.sin_port = htons(port);
    333                 address = (struct sockaddr *) &address_in;
    334                 addrlen = sizeof(address_in);
    335                 address_start = (uint8_t *) &address_in.sin_addr.s_addr;
     340                address_in->sin_family = AF_INET;
     341                address_in->sin_port = htons(port);
     342                address_start = (uint8_t *) &address_in->sin_addr.s_addr;
     343                addrlen = sizeof(struct sockaddr_in);
    336344                break;
    337345        case PF_INET6:
    338                 address_in6.sin6_family = AF_INET6;
    339                 address_in6.sin6_port = htons(port);
    340                 address = (struct sockaddr *) &address_in6;
    341                 addrlen = sizeof(address_in6);
    342                 address_start = (uint8_t *) &address_in6.sin6_addr.s6_addr;
     346                address_in6->sin6_family = AF_INET6;
     347                address_in6->sin6_port = htons(port);
     348                address_start = (uint8_t *) &address_in6->sin6_addr.s6_addr;
     349                addrlen = sizeof(struct sockaddr_in6);
    343350                break;
    344351        default:
Note: See TracChangeset for help on using the changeset viewer.