diff --git a/FPEngine.cc b/FPEngine.cc index ca4f664db..fc949a421 100644 --- a/FPEngine.cc +++ b/FPEngine.cc @@ -139,7 +139,8 @@ void FPNetworkControl::init(const char *ifname, devtype iftype) { nmap_set_nsock_logger(); nmap_adjust_loglevel(o.packetTrace()); - nsock_pool_set_device(nsp, o.device); + if (*o.device) + nsock_pool_set_device(nsp, o.device); if (o.proxy_chain) nsock_pool_set_proxychain(this->nsp, o.proxy_chain); diff --git a/nmap_dns.cc b/nmap_dns.cc index c5037aebb..599522932 100644 --- a/nmap_dns.cc +++ b/nmap_dns.cc @@ -1381,7 +1381,8 @@ static void nmap_mass_dns_core(DNS::Request *requests, int num_requests) { nmap_set_nsock_logger(); nmap_adjust_loglevel(o.packetTrace()); - nsock_pool_set_device(dnspool, o.device); + if (*o.device) + nsock_pool_set_device(dnspool, o.device); if (o.proxy_chain) nsock_pool_set_proxychain(dnspool, o.proxy_chain); diff --git a/nping/ProbeMode.cc b/nping/ProbeMode.cc index cbdec9e58..7ad6971a5 100644 --- a/nping/ProbeMode.cc +++ b/nping/ProbeMode.cc @@ -97,7 +97,9 @@ int ProbeMode::init_nsock(){ /* Create a new nsock pool */ if ((nsp = nsock_pool_new(NULL)) == NULL) nping_fatal(QT_3, "Failed to create new pool. QUITTING.\n"); - nsock_pool_set_device(nsp, o.getDevice()); + const char *device = o.getDevice(); + if (*device) + nsock_pool_set_device(nsp, device); /* Allow broadcast addresses */ nsock_pool_set_broadcast(nsp, 1); diff --git a/nse_nsock.cc b/nse_nsock.cc index cc1bda2d7..4cc06b5ed 100644 --- a/nse_nsock.cc +++ b/nse_nsock.cc @@ -86,7 +86,8 @@ static nsock_pool new_pool (lua_State *L) nmap_set_nsock_logger(); nmap_adjust_loglevel(o.scriptTrace()); - nsock_pool_set_device(nsp, o.device); + if (*o.device) + nsock_pool_set_device(nsp, o.device); if (o.proxy_chain) nsock_pool_set_proxychain(nsp, o.proxy_chain); diff --git a/service_scan.cc b/service_scan.cc index b80a47bc4..45c247da5 100644 --- a/service_scan.cc +++ b/service_scan.cc @@ -2817,7 +2817,8 @@ int service_scan(std::vector &Targets) { nmap_set_nsock_logger(); nmap_adjust_loglevel(o.versionTrace()); - nsock_pool_set_device(nsp, o.device); + if (*o.device) + nsock_pool_set_device(nsp, o.device); if (o.proxy_chain) { nsock_pool_set_proxychain(nsp, o.proxy_chain);