开发者

MacOSX: how to capture network events? Or: how does Private-Eye works?

I stumbled upon Private Eye and wonder how it works.

I.e. what APIs it is using to get those information (all incoming/outcoming network connections and the application using it)?

It is ins开发者_运维问答talling a kext. Is that needed?


Developer here.

It uses a kext to catch the connections. The basic idea is to install a socket filter that gets called whenever there is a network event. The kext will then grab and store whatever information it needs, and communicate it over a kernel control socket to the userland client.

Here's Apple's great intro about making a network kernel extension. http://developer.apple.com/library/mac/#documentation/Darwin/Conceptual/NKEConceptual/intro/intro.html

Almost everything in that applies to Private Eye.


chrome://net-internals/#events from google chrome may help, you can try

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜