Changeset dc94cb2 in mainline for uspace/lib/net/tl/tl_common.c
- Timestamp:
- 2010-09-19T13:33:47Z (14 years ago)
- 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. - File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/net/tl/tl_common.c
r5203efb1 rdc94cb2 157 157 } 158 158 159 int tl_set_address_port(struct sockaddr * addr, int addrlen, uint16_t port){ 159 int tl_set_address_port(struct sockaddr * addr, int addrlen, uint16_t port) 160 { 160 161 struct sockaddr_in * address_in; 161 162 struct sockaddr_in6 * address_in6; 162 163 size_t length; 163 164 164 if (addrlen < 0){165 return EINVAL; 166 }165 if (addrlen < 0) 166 return EINVAL; 167 167 168 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)) 174 181 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; 188 187 } 189 188 }
Note:
See TracChangeset
for help on using the changeset viewer.