他当前显示:
$ pnscan -s somehost.com 22
50.87.248.227 : box1227.bluehost.com : 22 : TXT : SSH-2.0-OpenSSH_5.3\r\n
我正在尝试修改pnscan以向我显示如下结果:
$ pnscan -s somehost.com 22
50.87.248.227 : somehost.com : 22 : TXT : SSH-2.0-OpenSSH_5.3\r\n
这是代码 https://github.com/ptrrkssn/pnscan/blob/master/pnscan.c
if (pr_sym)
{
hep = gethostbyaddr((const char *) &in, sizeof(in), AF_INET);
fprintf(fp, "%-15s : %-40s : %5d", host,
inet_ntoa(in), hep ? hep->h_name : "(unknown)", port);
}
else
fprintf(fp, "%-15s : %5d", inet_ntoa(in), port);
}
我在这里尝试对上面的fprint进行更改,但这没有用,因为argv [i]是在这些fprint之后声明的,我认为呢? 有人可以帮忙吗?
答案 0 :(得分:1)
是的,没错,那是改变的地方。但这是一个棘手的事情。从具有main
信息的argv[]
中,您需要更改同时调用r_worker
的{{1}}和f_worker
。然后probe
调用函数probe
。
因此,您需要将print_host
的值从main一直传递到print_host。然后,您可以更改显示的fprintf行。