-
Notifications
You must be signed in to change notification settings - Fork 0
/
NOTES
48 lines (36 loc) · 1.26 KB
/
NOTES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
Stream format is *very* simple.
Consists of 0 or more blocks, each with the following format:
byte
0: format of following data
FLAG_UNCOMPRESSED (0x0)
FLAG_LZJB (0x1)
1-n: block of data in above format
where n <= COMPBLOCK (currently 16384)
On the decompression side, you'll know how long a compressed block
was based on the extra value returned by the LZJB decompress function
Some tests:
./comp <debug | nc titan 1234
nc -l -p 1234 | ./decomp >debug
NEXT STEPS
----------
lz4 support
Optimize
FUTURE
------
Multi-thread so that reading & writing overlap
ENVIRONMENT
-----------
If you haven't got a Solaris box handy, I've found the easiest way to test
is via the Vagrant box "omniti/omnios-r151008". For some of my testing, I
upgraded to the r151010 release via the instructions at
http://omnios.omniti.com/wiki.php/Upgrade_r151008_r151010. This may be
necessary in order to install the "mbuffer" package and is certainly
needed if you require the "netcat" package.
You'll also need the following packages (via "pkg install")
gcc48
system/header
pkg://omnios/developer/versioning/git
You may additionally want packages for "netcat" and "mbuffer"
Don't forget to add /opt/gcc-4.8.1/bin to your PATH, perhaps in vagrant's
.bash_profile.
Or just test on Linux!