Nmap Development mailing list archives

Nsock-engines merged


From: Henri Doreau <henri.doreau () greenbone net>
Date: Thu, 5 Jan 2012 02:11:51 +0100

Hello,

I have just merged the nsock-engine branch (see r27776). As explained
in the presentation email[1], this is a rewrite of nsock aiming to
leverage efficient and scalable IO notification facilities, like
epoll, poll, kqueue/kevent... which are OS-specific, while preserving
portability.

For simplicity sake, the current version only provides epoll(7) and
select(2) based engines. So only Linux systems that provide epoll(7)
should benefit scalability improvements for now. More engines to come.

The aims were achieved by adding several independent modules (the
actual engines) to the core of the library. Each one uses a given
syscall and exports a clearly defined API to the rest of the library.
Only the engines compatible with your system are compiled. The most
efficient engine available is chosen at runtime. Implementation notes
and a couple benchmark results are available[2].

The external API of nsock remains absolutely identical and the
behaviour should also be unchanged.

The branch was extensively tested under numerous platforms but
additional testing would be much appreciated indeed.

Regards


[1] http://seclists.org/nmap-dev/2011/q3/143
[2] http://labs.unix-junkies.org/nsock_engines.html

-- 
Henri
_______________________________________________
Sent through the nmap-dev mailing list
http://cgi.insecure.org/mailman/listinfo/nmap-dev
Archived at http://seclists.org/nmap-dev/


Current thread: