shithub: purgatorio

ref: d21de87db1e6068d35f66da7411a98231c361a70
dir: /module/ida.m/

View raw version
Ida: module
{
	PATH: con "/dis/lib/ida/ida.dis";

	Frag: adt {
		dlen:	int;	# length of original data
		m:	int;	# minimum pieces for reconstruction
		a:	array of int;	# encoding array row for this fragment
		enc:	array of int;	# encoded data

		tag:	array of byte;	# user data, such as SHA1 hash
	};

	init:	fn();
	fragment:	fn(data: array of byte, m: int): ref Frag;
	consistent:	fn(frags: array of ref Frag): array of ref Frag;
	reconstruct:	fn(frags: array of ref Frag): (array of byte, string);
};

Idatab: module
{
	PATH: con "/dis/lib/ida/idatab.dis";
	init:	fn(): array of int;
};