|
Libevent
|
|
Hits: 6 |
|
Date added: 07/09/2005 |
|
The libevent API provides a mechanism to execute a callback function when a specific event occurs on a file descriptor or after a timeout has been reached. Furthermore, libevent also support callbacks due to signals or regular timeouts.
libevent is meant to replace the event loop found in event driven network servers. An application just needs to call event_dispatch() and then add or remove events dynamically without having to change the event loop.
Currently, libevent supports /dev/poll, kqueue(2), select(2), poll(2) and epoll(4). It also has experimental support for real-time signals. The internal event mechanism is completely independent of the exposed event API, and a simple update of libevent can provide new functionality without having to redesign the applications. As a result, Libevent allows for portable application development and provides the most scalable event notification mechanism available on an operating system.
More information about event notification mechanisms for network servers can be found on Dan Kegel's The C10K problem web page. Another library that abstracts asynchronous event notification is liboop (http://www.hackerscenter.com/downloads/download.asp?id=331).
Programs using libevent
The usefulness of libevent API is demonstrated by the following applications:
* Vomit - Voice Over Misconfigured Internet Telephones
* Crawl - A Small and Efficient HTTP Crawler
* Libio - an input/output abstraction library
* Honeyd - a virtual honeynet daemon - can be used to fight Internet worms.
* Fragroute - an IDS testing tool
* Nylon - nested proxy server
* Disconcert - a Distributed Computing Framework for Loosely-Coupled Workstations.
* PLB - pure load balancer: a free high-performance load balancer for Unix.
* Trickle - a lightweight userspace bandwidth shaper.
* Memcached - a high-performance, distributed memory object caching system.
* watchcatd - software watchdog designed to take actions not as drastic as the usual solutions, which reset the machine.
* ScanSSH - a fast SSH server and open proxy scanner.
* Nttlscan - a network topology scanner for Honeyd.
* NetChat - a combination of netcat and ppp's chat.
* Io - a small programming language; uses libevent for network communication.
* Tor - an anonymous Internet communication system. |
|
|
|
|
VBA Code Compare v0.2
|
|
Hits: 6 |
|
Date added: 12/11/2005 |
|
Allows you to compare and merge a Visual Basic code embedded into a VBA project. |
|
|
|
|
Codis
|
|
Hits: 6 |
|
Date added: 04/19/2006 |
|
Codis is a console-based disassembler written for the purpose of demonstrating the basic logic of a disassembler engine.
This software was released as example code accompanying the information provided in the Toorcon 7 presentation titled 'Disassembler Internals'.
Codis is written in C and will compile for Linux or Win32 Cygwin environments. |
|
|
|
|
Libdnet v1.11
|
|
Hits: 6 |
|
Date added: 10/06/2006 |
|
libdnet provides a simplified, portable interface to several low-level networking routines, including
* network address manipulation
* kernel arp(4) cache and route(4) table lookup and manipulation
* network firewalling (IP filter, ipfw, ipchains, pf, PktFilter, ...)
* network interface lookup and manipulation
* IP tunnelling (BSD/Linux tun, Universal TUN/TAP device)
* raw IP packet and Ethernet frame transmission
Supported languages:
* C, C++
* Python
* Perl, Ruby (see below)
Supported platforms:
* BSD (OpenBSD, FreeBSD, NetBSD, BSD/OS)
* Linux (Redhat, Debian, Slackware, etc.)
* MacOS X
* Windows (NT/2000/XP)
* Solaris
* IRIX
* HP-UX
* Tru64 |
|
|
|
|
DrPython
|
|
Hits: 6 |
|
Date added: 07/17/2006 |
|
DrPython is a highly customizable cross-platform ide to aid programming in Python. It was developed with teaching in mind, and has a clean, simple interface. It is written in Python, using wxPython as the gui. |
|
|
|