|
|
|
|
@ -1580,6 +1580,7 @@ void call_restore(struct callmaster *m, char *uuid, redisReply **hash, GList *st
|
|
|
|
|
redisReply *rps[2], *rp;
|
|
|
|
|
int i, kernel;
|
|
|
|
|
struct peer *p;
|
|
|
|
|
u_int32_t ipv4;
|
|
|
|
|
|
|
|
|
|
c = call_get_or_create(hash[0]->str, NULL, m);
|
|
|
|
|
strcpy(c->redis_uuid, uuid);
|
|
|
|
|
@ -1600,7 +1601,12 @@ void call_restore(struct callmaster *m, char *uuid, redisReply **hash, GList *st
|
|
|
|
|
p = &cs->peers[i];
|
|
|
|
|
rp = rps[i];
|
|
|
|
|
|
|
|
|
|
inet_pton(AF_INET6, rp->element[0]->str, &p->rtps[0].peer.ip46);
|
|
|
|
|
if (inet_pton(AF_INET6, rp->element[0]->str, &p->rtps[0].peer.ip46) != 1) {
|
|
|
|
|
ipv4 = inet_addr(rp->element[0]->str);
|
|
|
|
|
if (ipv4 == -1)
|
|
|
|
|
continue;
|
|
|
|
|
in4_to_6(&p->rtps[0].peer.ip46, ipv4);
|
|
|
|
|
}
|
|
|
|
|
p->rtps[1].peer.ip46 = p->rtps[0].peer.ip46;
|
|
|
|
|
p->rtps[0].peer.port = atoi(rp->element[1]->str);
|
|
|
|
|
p->rtps[1].peer.port = p->rtps[0].peer.port + 1;
|
|
|
|
|
|