fix: get src addr
modified: src/get_interface.c
This commit is contained in:
parent
3213a56d1b
commit
353ab5d62f
@ -15,12 +15,15 @@ int get_interface_name(struct host *host)
|
||||
|
||||
for (pcap_if_t *it = alldevs; it != NULL; it = it->next) {
|
||||
if (!(it->flags & PCAP_IF_LOOPBACK)) {
|
||||
struct sockaddr_in *tmp =
|
||||
(struct sockaddr_in *)it->addresses->addr;
|
||||
strcpy(host->interface, it->name);
|
||||
strcpy(host->ip, inet_ntoa(tmp->sin_addr));
|
||||
pcap_freealldevs(alldevs);
|
||||
return 0;
|
||||
for (pcap_addr_t *a = it->addresses; a != NULL; a = a->next) {
|
||||
if (a->addr && a->addr->sa_family == AF_INET) {
|
||||
struct sockaddr_in *sa = (struct sockaddr_in *)a->addr;
|
||||
strcpy(host->ip, inet_ntoa(sa->sin_addr));
|
||||
pcap_freealldevs(alldevs);
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user