package checkseum

  1. Overview
  2. Docs
Adler-32, CRC32 and CRC32-C implementation in C and OCaml

Install

Dune Dependency

Authors

Maintainers

Sources

checkseum-v0.1.1.tbz
sha256=a3913487f951c5bebc8e44cce41878ef3e2263c9c81a1ed963b0a86268c84229
sha512=f97c2e353c2bebdef2ed61cc6a32994fc9028c70e8c96b134ea92d178a29e2eda6c8bad1099b0a6d05971a69c94da2d5d476aeb4ddd9e802bb4bebe07f034579

Description

Checkseum is a library to provide implementation of Adler-32, CRC32 and CRC32-C in C and OCaml.

This library use the linking trick to choose between the C implementation (checkseum.c) or the OCaml implementation (checkseum.ocaml). This library is on top of optint to get the best representation of an int32.

Published: 18 Feb 2020

README

Checkseum

Chekseum is a library which implements ADLER-32 and CRC32C Cyclic Redundancy Check. It provides 2 implementation, the first in C and the second in OCaml. The library is on top of optint to get the best representation of the CRC in the OCaml world.

Then, as digestif, checkseum uses the linking trick. So if you want to use checkseum in a library, you can link with the checkseum package which does not provide an implementation. Then, end-user can choose between the C implementation or the OCaml implementation (both work on Mirage).

Of course, you can link directly to checkseum.c or checkseum.ocaml if you want to make an executable directly.

Build Requirements

  • OCaml >= 4.03.0

  • base-bytes

  • base-bigarray

  • dune to build

  • optint

Dependencies (8)

  1. cmdliner
  2. rresult
  3. fmt
  4. bigarray-compat
  5. base-bytes
  6. optint >= "0.0.3" & < "0.0.5"
  7. dune >= "1.9.2" & < "2.6"
  8. ocaml >= "4.07.0"

Dev Dependencies (1)

  1. alcotest with-test

Used by (7)

  1. albatross
  2. decompress >= "0.8" & < "1.1.0"
  3. esperanto-cosmopolitan >= "0.0.5"
  4. git >= "2.0.0" & < "3.0.0"
  5. irmin-pack >= "3.5.0"
  6. oneffs
  7. rfc1951 < "1.0.0" | >= "1.4.0"

Conflicts (2)

  1. ocaml-freestanding < "0.4.3"
  2. mirage-xen-posix < "3.1.0"