1
0
mirror of https://github.com/nmap/nmap.git synced 2025-12-06 04:31:29 +00:00

Fix MSVC compiler noreturn related warnings and add extra

safety asserts to the functions that do not return on all
control paths.
This commit is contained in:
shinnok
2011-06-23 23:59:52 +00:00
parent e06012af5a
commit 3240e10bb0
3 changed files with 13 additions and 0 deletions

View File

@@ -121,11 +121,18 @@
extern "C" {
#endif
#ifdef WIN32
__declspec(noreturn)
#endif
void fatal(const char *fmt, ...)
__attribute__ ((noreturn))
__attribute__ ((format (printf, 1, 2)));
void error(const char *fmt, ...)
__attribute__ ((format (printf, 1, 2)));
#ifdef WIN32
__declspec(noreturn)
#endif
void pfatal(const char *err, ...)
__attribute__ ((noreturn))
__attribute__ ((format (printf, 1, 2)));

View File

@@ -499,6 +499,9 @@ int send_ip_packet(int sd, struct eth_nfo *eth, u8 *packet,
return send_ipv6_packet(sd, eth, packet, packetlen);
fatal("%s only understands IP versions 4 and 6 (got %u)", __func__, ip->ip_v);
/* This should not be reached. Just in case. */
assert(0);
}

View File

@@ -724,6 +724,9 @@ public:
} else {
fatal("Unknown address family %u in %s.", source->ss_family, __func__);
}
/* This should not be reached. Just in case. */
assert(0);
}
};