2012-10-15 36 views
-1

我试图在学校中运行portcaner作为我的工作的一部分。当我运行代码时,它显示错误消息“不允许操作”。该操作在操作系统无法创建套接字后直接打印。无法创建套接字:操作不允许 - Mac

说明: 1.我的系统是Mac OS X 10.6.8 2.在这个项目中我使用了行套接字。 3.我在创建TCP套接字之前编写了一个代码,并且完美运行。

我认为出现这个错误是因为行套接字需要我系统当前拥有的某种更高权限。有谁知道如何改变我的系统中的权限? 任何帮助非常感谢:)

感谢

+0

您能否提供一些更多的细节,如代码示例? –

+0

这是我运行的示例:http://www.binarytides.com/tcp-syn-portscan-in-c-with-linux-sockets/ –

+1

@XXX http://www.ae.iitm.ac .in/pipermail/ilugc/2003-October/006661.html –

回答

1

过程必须具有root权限才能打开原始套接字。

+0

谢谢,但我该怎么做? –

+0

以root用户身份运行应用程序,或者将二进制文件的所有权更改为root(chown root _filename_)并在该文件(chmod + s _filename_)上设置'setuid'位,但我不确定后一个选项是否可用与OSX – Serge

+0

谢谢Sergo。它现在有效。我所做的是在执行程序之前输入sudo。即sudo ./execfile –

0

有一段时间另一个套接字在同一个端口下运行