Changeset c42f50d in mainline for uspace/lib/http/src/http.c
- Timestamp:
- 2013-10-05T11:53:43Z (12 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- cbfc8b7
- Parents:
- 408424e (diff), 3e896e1 (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/http/src/http.c
r408424e rc42f50d 86 86 /* Interpret as a host name */ 87 87 dnsr_hostinfo_t *hinfo = NULL; 88 rc = dnsr_name2host(http->host, &hinfo, AF_NONE);88 rc = dnsr_name2host(http->host, &hinfo, ip_any); 89 89 90 90 if (rc != EOK) … … 95 95 } 96 96 97 struct sockaddr_in addr; 98 struct sockaddr_in6 addr6; 99 uint16_t af = inet_addr_sockaddr_in(&http->addr, &addr, &addr6); 97 struct sockaddr *saddr; 98 socklen_t saddrlen; 100 99 101 http->conn_sd = socket(PF_INET, SOCK_STREAM, 0); 100 rc = inet_addr_sockaddr(&http->addr, http->port, &saddr, &saddrlen); 101 if (rc != EOK) { 102 assert(rc == ENOMEM); 103 return ENOMEM; 104 } 105 106 http->conn_sd = socket(saddr->sa_family, SOCK_STREAM, 0); 102 107 if (http->conn_sd < 0) 103 108 return http->conn_sd; 104 109 105 switch (af) { 106 case AF_INET: 107 addr.sin_port = htons(http->port); 108 rc = connect(http->conn_sd, (struct sockaddr *) &addr, sizeof(addr)); 109 break; 110 case AF_INET6: 111 addr6.sin6_port = htons(http->port); 112 rc = connect(http->conn_sd, (struct sockaddr *) &addr6, sizeof(addr6)); 113 break; 114 default: 115 return ENOTSUP; 116 } 110 rc = connect(http->conn_sd, saddr, saddrlen); 111 free(saddr); 117 112 118 113 return rc;
Note:
See TracChangeset
for help on using the changeset viewer.