cstruct

AuthorAnil Madhavapeddy
LicenseISC
Homepagehttps://github.com/mirage/ocaml-cstruct
Tagsorg:mirage and org:xapi-project
Maintaineranil@recoil.org
Dependencies
&camlp4
ocamlbuild
ocamlfind
ocplib-endian
Optional dependencies
|async
lwt
Availableocaml-version < "4.06.0"
PublishedNov 7, 2013
Source [http] https://github.com/mirage/ocaml-cstruct/archive/v0.8.1.tar.gz
3b48bbbd966c0a2da15914109ff0d0c3
StatisticsInstalled 2 times last month.
Edithttps://github.com/ocaml/opam-repository/tree/master/packages/cstruct/cstruct.0.8.1/opam

access C structures via a camlp4 extension

Cstruct is a library and syntax extension to make it easier to access C-like structures directly from OCaml. It supports both reading and writing to these structures, and they are accessed via the Bigarray module.

An example pcap description is:

cstruct pcap_header { uint32_t magic_number; ( magic number *) uint16_t version_major; ( major version number ) uint16_t version_minor; ( minor version number ) uint32_t thiszone; ( GMT to local correction ) uint32_t sigfigs; ( accuracy of timestamps ) uint32_t snaplen; ( max length of captured packets, in octets ) uint32_t network ( data link type *) } as little_endian

Necessary for
angstrom
0.7.0
asn1-combinators
>= 0.2.0
channel
charrua-client
0.9
charrua-core
0.3
charrua-unix
|0.3
&>= 0.6
0.9
cohttp
&>= 0.9.7
0.9.13
crunch
>= 2.0.0
cstruct-lwt
|3.0.0
>= 3.2.0
cstruct-unix
|3.0.0
>= 3.2.0
datakit-client
0.9.0
datakit-server
0.9.0
decompress
&>= 0.3
0.4
depyt
dns
&>= 0.6.0
0.8.0
fat-filesystem
0.7.0
frenetic
2.0.0
github-hooks
>= 0.2.0
hvsock
1.0.0
io-page-unix
2.0.0
io-page-xen
2.0.0
irmin
&>= 0.9.0
0.9.1
launchd
mirage
&>= 0.7.2
0.9.1
mirage-block
1.0.0
mirage-block-ramdisk
mirage-block-unix
1.2.1
mirage-block-xen
1.0.0
mirage-channel-lwt
mirage-clock-unix
1.0.0
mirage-clock-xen
1.0.0
mirage-console-solo5
>= 0.2.0
mirage-console-unix
2.3.2
mirage-console-xen-cli
mirage-entropy
mirage-flow
1.2.0
mirage-fs
&>= 0.4.0
1.0.0
mirage-fs-unix
1.1.3
mirage-nat
mirage-net
&>= 0.5.2
0.9.1
mirage-net-lwt
mirage-net-unix
1.1.0
mirage-profile
0.7.0
mirage-qubes
0.3
mirage-tc
mirage-unix
0.9.9
mirage-vnetif
0.4.0
mirage-www
0.4.0
mirage-xen
0.9.9
nbd
&>= 0.9.2
1.0.1
openflow
0.3.0
ox
1.1.0
packet
0.2.1
pcap-format
&>= 0.3.3
0.4.0
pcf-format
ppx_cstruct
|3.0.1
>= 3.2.0
protocol-9p
0.5.1
qcow
qcow-format
qcow-tool
shared-block-ring
2.3.0
shared-memory-ring
1.2.0
tar-format
&>= 0.2.0
0.5.0
tuntap
&>= 0.5
0.6
vchan
0.9.6
vhd-format
0.7.0
vhd-format-lwt
vhd-tool
0.7.1
xapi-rrd-transport
xe
xen-block-driver
>= 0.2.5
xenstore
&>= 1.2.0
1.3.0
xentropyd
Optional for
frenetic
&>= 2.0.0
3.2.0
logs-syslog
mirage-types
&>= 1.1.0
3.0.0
stog
&>= 0.13.0
0.15.0