use addrinfo

This commit is contained in:
Aaron Lipinski 2021-04-06 16:00:41 +12:00
parent 5fd5c2b59d
commit 6e2e4674a3
3 changed files with 8 additions and 8 deletions

View File

@ -842,7 +842,7 @@ int main(
}
}
if (net_open(&ctl, host) != 0) {
if (net_open(&ctl, res) != 0) {
error(0, 0, "Unable to start net module");
if (ctl.Interactive)
exit(EXIT_FAILURE);

View File

@ -736,7 +736,7 @@ static void net_find_local_address(
int net_open(
struct mtr_ctl *ctl,
struct hostent *hostent)
struct addrinfo *res)
{
int err;
@ -746,7 +746,7 @@ int net_open(
return err;
}
net_reopen(ctl, hostent);
net_reopen(ctl, res);
return 0;
}
@ -754,7 +754,7 @@ int net_open(
void net_reopen(
struct mtr_ctl *ctl,
struct hostent *hostent)
struct addrinfo *res)
{
int at;
@ -764,9 +764,9 @@ void net_reopen(
net_reset(ctl);
ctl->af = remotesockaddr->sa_family = sourcesockaddr->sa_family = hostent->h_addrtype;
ctl->af = remotesockaddr->sa_family = sourcesockaddr->sa_family = res->ai_family;
remoteaddress = sockaddr_addr_offset(remotesockaddr);
memcpy(remoteaddress, hostent->h_addr, sockaddr_addr_size(remotesockaddr));
memcpy(remoteaddress, sockaddr_addr_offset(res->ai_addr), sockaddr_addr_size(remotesockaddr));
inet_ntop(remotesockaddr->sa_family, remoteaddress, remoteaddr, sizeof(remoteaddr));
sourceaddress = sockaddr_addr_offset(sourcesockaddr);

View File

@ -33,10 +33,10 @@
extern int net_open(
struct mtr_ctl *ctl,
struct hostent *host);
struct addrinfo *res);
extern void net_reopen(
struct mtr_ctl *ctl,
struct hostent *address);
struct addrinfo *res);
extern void net_reset(
struct mtr_ctl *ctl);
extern void net_close(