1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107
|
Anet
====
Anet is a networking library for the Ada programming language.
Features
--------
The Anet networking library has the following features:
* BSD socket implementation
* High abstraction level
* Extendable socket type hierarchy
* Socket receiver tasks (Stream and Datagram)
* Ada type serialisation/deserialisation over sockets
* Supported socket families
- IPv4 (AF_INET)
- IPv6 (AF_INET6)
- Packet (AF_PACKET)
- UNIX domain (AF_UNIX)
- Netlink (AF_NETLINK)
* Supported socket modes
- Stream (TCP)
- Datagram (UDP)
- RAW
* Support for IPv4/IPv6 multicast
* UDP/IPv4 packet creation and validation
* Binding to the Linux Packet Filter (LPF) system
Download
--------
Release version
~~~~~~~~~~~~~~~
The current release version of Anet is available at
http://www.codelabs.ch/download/.
Verify a Release
~~~~~~~~~~~~~~~~
To verify the integrity and authenticity of the distribution tarball, import
the key http://www.codelabs.ch/keys/0xBB793815pub.asc and type the following
command:
$ gpg --verify libanet-{version}.tar.bz2.sig
The key fingerprint of the public key ('0xBB793815') is:
Key fingerprint = A2FB FF56 83FB 67D8 017B C50C F8C5 F8B5 BB79 3815
Development version
~~~~~~~~~~~~~~~~~~~
The current development version of Anet is available through its git repository:
$ git clone http://git.codelabs.ch/git/anet.git
A browsable version of the repository is also available here:
http://git.codelabs.ch/?p=anet.git
Installation
------------
To compile and install Anet on your system, you need to have the following
software installed:
* GNAT Ada compiler:
http://www.gnu.org/software/gnat/gnat.html
If you want to run the unit tests before installation of Anet (which is
recommended) you furthermore need to have the following installed:
* Ahven (Test-Framework):
http://ahven.stronglytyped.org/
Anet supports BSD and Linux operating systems. To build for BSD, append
`OS=bsd` to the `make` commands below. The building and installation process of
Anet is straightforward. Just type in the following commands.
$ make
$ make PREFIX=/usr/local install
If neither `PREFIX` nor `OS` are specified, `$(HOME)/libraries` is used as
installation directory and the library is built for Linux.
Testing
-------
Anet contains a comprehensive unit test suite which can be run by entering the
following command:
$ make tests
All tests should be marked with *PASS* behind the test name. To run the tests
on BSD, type:
$ make tests OS=bsd
Licence
-------
--------------------------------------------------------------------------------
Copyright (C) 2011-2013 secunet Security Networks AG
Copyright (C) 2011-2014 Reto Buerki <reet@codelabs.ch>
Copyright (C) 2011-2014 Adrian-Ken Rueegsegger <ken@codelabs.ch>
Free use of this software is granted under the terms of the GNAT Modified
General Public License (GMGPL).
--------------------------------------------------------------------------------
|