[ANN] ocamlnet-4.0.0rc1

Gerd Stolpmann <[email protected]> Wed, 31 Dec 2014 19:23:20 +0100
Newsgroups gmane.comp.lang.ocaml.lib.net.devel
Message-ID <[email protected]>
--===============7018758104093600273==
Content-Type: multipart/signed; micalg="pgp-sha1";
	protocol="application/pgp-signature"; 
	boundary="=-g+RbQAGp1ku0+CwSYbeR"


--=-g+RbQAGp1ku0+CwSYbeR
Content-Type: text/plain; charset="ISO-8859-15"
Content-Transfer-Encoding: quoted-printable

Hi list,

with the first release candidate the OCamlnet development cycle goes
into the final round. If no serious problems are found, this version
will be released (in about two weeks). If you'd like to help testing
this version, this is now the best time, in particular for checking
whether the build is ok on all platforms. OCamlnet contains now bindings
for two new libraries: GnuTLS and GSSAPI, and these new bindings could
cause problems here and there.

ocamlnet-4.0.0rc1 is available at the usual place:
http://projects.camlcity.org/projects/ocamlnet.html

When you install it, be prepared that the configure script takes
somewhat different arguments than before (new: -enable-gnutls,
-enable-gssapi, gone: -enable-ssl, -enable-crypto).

So, what's new? OCamlnet-4 focuses on authentication and security. There
is now excellent support for TLS via the new GnuTLS bindings. It's
available for all protocols, it's recent, and it supports the newest TLS
options (e.g. TLS-1.2 with ECCDH). You can query the TLS connection
properties. You can check the certificates (there is a parser for
certificates). Via GnuTLS we also get direct access to hash functions
and symmetric ciphers (sometimes even accelerated).

There is an option for client certificates, but most protocols prefer to
log users in with passwords. OCamlnet-4 implements all important SASL
authentication mechanisms (for both clients and servers): PLAIN,
CRAM-MD5, DIGEST-MD5, SCRAM-SHA1, GS2-KRB5 (more on that one below).
SASL is integrated into the protocol interpreters for POP and SMTP, but
it's quite simple to use, so feel free to include it into your own
protocols. There is support for the SASLprep routine that prepares and
normalizes passwords.

The authentication mechanisms for the HTTP client have been updated, but
this overlaps with the current IETF activities (Digest authentication is
being revised, and SCRAM authentication being defined by IETF working
groups). When the new mechanisms are available, OCamlnet can implement
them very quickly.

The GSSAPI bindings allows us to access network authentication
mechanisms, in particular Kerberos which is mainly found in LANs of
companies and organizations. The GSSAPI is integrated into all protocols
where it is defined for, in particular SunRPC, HTTP (client) i.e.
SPNEGO, and FTP. The GSSAPI mechanisms can also be used as SASL
mechanisms (via bridging, GS2-KRB5). With Kerberos, the most important
GSSAPI mechanism, you get automatic logins to network services (no
password required, or better Kerberos knows how to use the current
system identity in the network - single-sign-on).

The security mechanisms are all pluggable. If you e.g. want to use a
different TLS provider, you "only" need to ensure that it has a module
interface compatible with TLS_PROVIDER, and you can use it with
OCamlnet, thanks to first-class modules. There's also SASL_MECHANISM,
HTTP_MECHANISM, and GSSAPI.=20

Besides security, a number of other updates are available. In
particular, the IPv6 support is now complete, and IPv6 is automatically
enabled when a network interface has a global IPv6 address. The Unicode
tables have been moved to a library of their own: netunidata. (You may
need to add netunidata to your findlib packages when building your
software against OCamlnet.) A number of modules were renamed, e.g.
Http_client is now Nethttp_client.

Note that 4.0.0rc1 doesn't support the new "bytes" type specially. I've
delayed this because this the current "bytes" type seems not yet not to
be a stable language feature.

Gerd
--=20
------------------------------------------------------------
Gerd Stolpmann, Darmstadt, Germany    [email protected]
My OCaml site:          http://www.camlcity.org
Contact details:        http://www.camlcity.org/contact.html
Company homepage:       http://www.gerd-stolpmann.de
------------------------------------------------------------


--=-g+RbQAGp1ku0+CwSYbeR
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: This is a digitally signed message part
Content-Transfer-Encoding: 7bit

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQEbBAABAgAGBQJUpD8YAAoJEAaM4b9ZLB5TC4kH+MOg5hX2KcTZOxo1+rQe4Cwt
oWzjnh+ksHw4+KadF/cuUA7kTiol3tNcVN04pgs06TWEe4IZ3grU0gfTkG4GOsvM
qrBBgdZh4epmzvBBSJ11GUt/+QCRBwwDYjeWKnD1yjrOZAgYu57Lx1nWkcbPx23G
R3ARQNmx1FhRDUI3nI/WivrqMdiwfpLNCABCzGMbqdj9EDV1lNOwKYiAblaAY0xV
7jGiyRxr6Rkf+/xY9RacV+Yus8pP87MVutdj27g7kGRKmm/N2VGtgwqF7rgPTtop
Vfie2bJHSKsF63sgX4Hs+n6D49Q5DQrUQoOfaYlQgy7xQsbM248cfDv/XlZUXg==
=xU9n
-----END PGP SIGNATURE-----

--=-g+RbQAGp1ku0+CwSYbeR--



--===============7018758104093600273==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

------------------------------------------------------------------------------
Dive into the World of Parallel Programming! The Go Parallel Website,
sponsored by Intel and developed in partnership with Slashdot Media, is your
hub for all things parallel software development, from weekly thought
leadership blogs to news, videos, case studies, tutorials and more. Take a
look and join the conversation now. http://goparallel.sourceforge.net
--===============7018758104093600273==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Ocamlnet-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ocamlnet-devel

--===============7018758104093600273==--