From b0a49d2ad175ea0569a2762a50627070fddcd7de Mon Sep 17 00:00:00 2001 From: david Date: Wed, 15 Jun 2011 18:12:33 +0000 Subject: [PATCH] Move get/set_program_name from main.cc to nmap.cc. This is for technical reasons; nmap-private-dev programs need to link against objects files but they can't link against main.o because that results in a duplicate definition of main. --- main.cc | 11 +---------- nmap.cc | 13 +++++++++++-- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/main.cc b/main.cc index 83a0fc5d0..56e17ce06 100644 --- a/main.cc +++ b/main.cc @@ -127,16 +127,7 @@ static BOOL OpenLibs(void) { /* global options */ extern NmapOps o; /* option structure */ -/* A mechanism to save argv[0] for code that requires that. */ -static const char *program_name = NULL; - -static void set_program_name(const char *name) { - program_name = name; -} - -const char *get_program_name(void) { - return program_name; -} +extern void set_program_name(const char *name); int main(int argc, char *argv[]) { /* The "real" main is nmap_main(). This function hijacks control at the diff --git a/nmap.cc b/nmap.cc index 1d38e5f59..6f20d1a0e 100644 --- a/nmap.cc +++ b/nmap.cc @@ -138,12 +138,21 @@ extern char *optarg; extern int optind; extern NmapOps o; /* option structure */ -/* argv[0] storage from main.cc. */ -extern const char *get_program_name(void); static bool target_needs_new_hostgroup(std::vector &targets, const Target *target); static void display_nmap_version(); +/* A mechanism to save argv[0] for code that requires that. */ +static const char *program_name = NULL; + +void set_program_name(const char *name) { + program_name = name; +} + +static const char *get_program_name(void) { + return program_name; +} + /* parse the --scanflags argument. It can be a number >=0 or a string consisting of TCP flag names like "URGPSHFIN". Returns -1 if the argument is invalid. */ static int parse_scanflags(char *arg) { int flagval = 0;