Fixes for case where IPv6 support is disabled. Fixes trac:1102.
This commit was SVN r15584. The following Trac tickets were found above: Ticket 1102 --> https://svn.open-mpi.org/trac/ompi/ticket/1102
Этот коммит содержится в:
родитель
5b7d3faedc
Коммит
4e23c7c5a2
@ -512,10 +512,15 @@ static int mca_oob_tcp_create_listen(int *target_sd, uint16_t af_family)
|
|||||||
}
|
}
|
||||||
#endif /* IPV6_V6ONLY */
|
#endif /* IPV6_V6ONLY */
|
||||||
#else
|
#else
|
||||||
inaddr.sin_family = af_family;
|
if (AF_INET == af_family) {
|
||||||
inaddr.sin_addr.s_addr = INADDR_ANY;
|
struct sockaddr_in * in = (struct sockaddr_in*) &inaddr;
|
||||||
inaddr.sin_port = 0;
|
in->sin_family = af_family;
|
||||||
addrlen = sizeof(struct sockaddr_in);
|
in->sin_addr.s_addr = INADDR_ANY;
|
||||||
|
in->sin_port = 0;
|
||||||
|
addrlen = sizeof(struct sockaddr_in);
|
||||||
|
} else {
|
||||||
|
return ORTE_ERROR;
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (bind(*target_sd, (struct sockaddr*)&inaddr, addrlen) < 0) {
|
if (bind(*target_sd, (struct sockaddr*)&inaddr, addrlen) < 0) {
|
||||||
@ -1331,9 +1336,15 @@ mca_oob_tcp_parse_uri(const char* uri, struct sockaddr* inaddr)
|
|||||||
memcpy(inaddr, res->ai_addr, res->ai_addrlen);
|
memcpy(inaddr, res->ai_addr, res->ai_addrlen);
|
||||||
freeaddrinfo(res);
|
freeaddrinfo(res);
|
||||||
#else
|
#else
|
||||||
inaddr->sin_family = af_family;
|
if (AF_INET == af_family) {
|
||||||
inaddr->sin_addr.s_addr = inet_addr(host);
|
struct sockaddr_in *in = (struct sockaddr_in*) inaddr;
|
||||||
if (inaddr->sin_addr.s_addr == INADDR_ANY) {
|
in->sin_family = af_family;
|
||||||
|
in->sin_addr.s_addr = inet_addr(host);
|
||||||
|
if (in->sin_addr.s_addr == INADDR_ANY) {
|
||||||
|
ret = ORTE_ERR_BAD_PARAM;
|
||||||
|
goto cleanup;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
ret = ORTE_ERR_BAD_PARAM;
|
ret = ORTE_ERR_BAD_PARAM;
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
}
|
}
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user