mirror of
https://github.com/nmap/nmap.git
synced 2025-12-15 20:29:03 +00:00
Factor out an nmap_raw_socket function.
This does the common setup of a raw socket that we use everywhere.
This commit is contained in:
10
FPEngine.cc
10
FPEngine.cc
@@ -184,17 +184,9 @@ void FPNetworkControl::init(const char *ifname, devtype iftype) {
|
||||
fatal("dnet: failed to open device %s", ifname);
|
||||
this->rawsd = -1;
|
||||
} else {
|
||||
#ifdef WIN32
|
||||
win32_fatal_raw_sockets(ifname);
|
||||
#endif
|
||||
if (this->rawsd >= 0)
|
||||
close(this->rawsd);
|
||||
if ((this->rawsd = socket(AF_INET, SOCK_RAW, IPPROTO_RAW)) < 0)
|
||||
pfatal("Couldn't obtain raw socket in %s", __func__);
|
||||
broadcast_socket(this->rawsd);
|
||||
#ifndef WIN32
|
||||
sethdrinclude(this->rawsd);
|
||||
#endif
|
||||
rawsd = nmap_raw_socket(ifname);
|
||||
}
|
||||
|
||||
/* De-register existing callers */
|
||||
|
||||
Reference in New Issue
Block a user