是否可以在C ++中使用nmap功能?

时间:2017-03-14 05:38:24

标签: c++ integration nmap

我想调用C ++中的OS检测等nmap功能。

在python中,import nmap允许使用nmap函数。同样,我有什么方法可以用C ++做到这一点吗?

2 个答案:

答案 0 :(得分:1)

您可以将nmap作为外部程序运行,并使用popen()通过管道读取其输出。

实施例

FILE *pin = popen("nmap -p 123 10.0.1.0/24","r");
if ( pin ) {
   while (!feof(pin)) {
      const char *line = readLine(pin);
      printf("%s\n", line);
   }
   pclose(pin);
} 

答案 1 :(得分:0)

Python nmap包只是启动Nmap命令并解析XML output。这肯定是你可以在C ++中做的事情,尽管你必须自己解决这个问题。我不知道C或C ++中现有的Nmap-output-parsing库就像Python,Perl,Ruby等一样。