package cry

  1. Overview
  2. Docs
OCaml client for the various icecast & shoutcast source protocols

Install

Dune Dependency

Authors

Maintainers

Sources

v1.0.3.tar.gz
md5=456541e0120a8192920f0bc4137d7e63
sha512=c382b69c78e165456d77968f96487ef6cf8f58cad831cf7c60e869b85818856c050ef7d091aaeb32a97ac028ff66ff7f9171196d22645c4a2aa53a7b7587843e

CHANGES.html

CHANGES

1.0.3 (2024-03-18)
=====
* Raise a proper error when non-blocking connection
  fails.
* Fix poll segfault.

1.0.2 (2024-01-08)
======
* Use `poll` for select when available.
* Make sure `close` call always closes the socket.
* Add option to prevert ipv4 over ipv6. Defer to system
  defaults otherwise.

1.0.1 (2023-07-01)
=====
* Fix wrong transport being used when updating metadata.

1.0.0 (2023-06-27)
=====
* Simplify Host header logic, pass host through SSL SNI. Thanks to @N6UDP!
* Rewrote transport logic to be more flexible. Leave SSL implementation to caller.

0.6.7 (2022-03-18)
=====
* Default to ipv4 host resolution for backward
  compatibility.

0.6.6 (2022-01-30)
======
* Add support for ipv6 connection,
  thanks to @gilou and @jcourreges (#6)

0.6.5 (2020-03-27)
=====
* Switched to dune.
* Added optional offset and length parameters to send function.
* Added support for Expect: 100-continue to PUT requests (savonet/liquidsoap#1078).

0.6.4 (2019-08-22)
=====
* Set SSL to use default path for certificate resolution.
* Fix fd leak with SSL

0.6.3 (2019-08-04)
=====
* Set chunked capability based on request
  not response HTTP version.

0.6.2 (2018-08-16)
=====
* Fix fd leak in unix_transport,
  make sure it doesn't happen in SSL
  implementations as well (savonet/liquidsoap#548)

0.6.1 (2017-11-02)
=====
* Fix hostname resolution (savonet/liquidsoap#496)

0.6.0 (2017-10-14)
=====
* Make IPv6 implicit.
* Add debug flag (-g) to OCAMLFLAGS
* Fix host resolution.

0.5.0 (2017-04-11)
=====
* Add support for OSX's SecureTransport

0.4.1 (2016-06-26)
=====
* Revert back to Bytes.t for backward compatibility
  with old OCaml compilers.

0.4.0 (2016-06-25)
=====
* Fixed shoutcast v2 metadata update
* Better API
* Switch to Bytes.set
* Implement Https connection for icecast.

0.3.0 (2015-07-29)
=====
* Switch to Bytes API.
* Implemented shoutcast v2 protocol extension
  allowing multiple sources connected to the same
  shoutcast v2 server.
* Added experimental HTTP capabilities:
  - Use any PUT, POST or SOURCE verb
  - Use chunked transfer for HTTP 1.1
* Added HTTP Host: header.

0.2.2 (2011-04-10)
=====
* Add second timeout parameters for connection attempts.
* New optional charset parameter for ICY metadata updates.
* Added new functions [string_of_protocol] and 
  [string_of_connection]

0.2.1 (2011-08-04)
=====
* Implemented a proper connection
  timeout mechanism.

0.2.0 (2011-06-26)
=====
* Added an exception parameters
  to propagate original exceptions
  when raising an internal's exception.
* Fixed exception handling in ICY's answer
  parsing.
* Remove buggy timeout option.

0.1.5 (2010-09-06)
=====
* Icy connection was broken
  with previous release, fixed..

0.1.4 (2010-09-06)
=====
* Fixed http headers generation.
  Before,ocaml-cry was sending
  one extra \r\n before starting sending
  the stream..

0.1.3 (2010-08-19)
=====
* Use recursive calls to Unix.write
  everywhere and make it safer.

0.1.2 (2010-02-08)
=====
* Fix the sending code: older versions resulted in a high load and
  in some cases in loss of stream chunks.
* Added manual_update_metadata to update metadata on any source without
  being necessarily connected/streaming on it.

0.1.1 (2009-10-26)
=====
* Fixed ICY source connection; send headers only after receiving "OK2".
* Fixed error: Scanf may raise other exceptions, catching any of them now.

0.1.0 (2009-10-12)
=====
* Initial release