Changeset dc94cb2 in mainline for uspace/lib/net/tl/tl_common.c


Ignore:
Timestamp:
2010-09-19T13:33:47Z (13 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
2a786f9
Parents:
5203efb1 (diff), 7c8267b (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:

Marge from lp:~jakub/helenos/net.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/net/tl/tl_common.c

    r5203efb1 rdc94cb2  
    157157}
    158158
    159 int tl_set_address_port(struct sockaddr * addr, int addrlen, uint16_t port){
     159int tl_set_address_port(struct sockaddr * addr, int addrlen, uint16_t port)
     160{
    160161        struct sockaddr_in * address_in;
    161162        struct sockaddr_in6 * address_in6;
    162163        size_t length;
    163164
    164         if(addrlen < 0){
    165                 return EINVAL;
    166         }
     165        if (addrlen < 0)
     166                return EINVAL;
     167       
    167168        length = (size_t) addrlen;
    168         if(length < sizeof(struct sockaddr)){
    169                 return EINVAL;
    170         }
    171         switch(addr->sa_family){
    172                 case AF_INET:
    173                         if(length != sizeof(struct sockaddr_in)){
     169        if (length < sizeof(struct sockaddr))
     170                return EINVAL;
     171
     172        switch (addr->sa_family) {
     173        case AF_INET:
     174                if (length != sizeof(struct sockaddr_in))
     175                        return EINVAL;
     176                address_in = (struct sockaddr_in *) addr;
     177                address_in->sin_port = htons(port);
     178                return EOK;
     179        case AF_INET6:
     180                if (length != sizeof(struct sockaddr_in6))
    174181                                return EINVAL;
    175                         }
    176                         address_in = (struct sockaddr_in *) addr;
    177                         address_in->sin_port = htons(port);
    178                         return EOK;
    179                 case AF_INET6:
    180                         if(length != sizeof(struct sockaddr_in6)){
    181                                 return EINVAL;
    182                         }
    183                         address_in6 = (struct sockaddr_in6 *) addr;
    184                         address_in6->sin6_port = htons(port);
    185                         return EOK;
    186                 default:
    187                         return EAFNOSUPPORT;
     182                address_in6 = (struct sockaddr_in6 *) addr;
     183                address_in6->sin6_port = htons(port);
     184                return EOK;
     185        default:
     186                return EAFNOSUPPORT;
    188187        }
    189188}
Note: See TracChangeset for help on using the changeset viewer.