summaryrefslogtreecommitdiff
path: root/inbuf.c
Commit message (Collapse)AuthorAgeFilesLines
* Make sure map_ptr works with sockets and pipes, and add a test caseMartin Pool2000-04-301-33/+61
| | | | | | | | for this. The new encoding algorithm will probably use map_ptr rather than inbuf. Change map_ptr so that it copes well with short reads. Moving towards 0.5.0. Clean up hs_inbuf code a little.
* Clean up leakage in checksum hashtable.Martin Pool2000-04-251-1/+1
| | | | | Make hsencode and hsdecode close filebufs before exiting so that it doesn't look like they're leaking.
* Reindent everything one more time.Martin Pool2000-04-251-1/+1
|
* Don't use stdio for filebuf object, but go straight to read/write.Martin Pool2000-04-181-1/+1
| | | | | Cope with short reads/writes -- this might not be completely working as yet.
* Results of more code reviews:Martin Pool2000-04-111-5/+6
| | | | | | | | | More assertions. Better trace output. Add the PAINFUL_HONESTY option to check that the weak signatures are actually rolling correctly. Fix a bug in the generation of signatures near the end of the file. Cope when there is no old signature.
* Clean up trace.Martin Pool2000-04-091-1/+1
|
* Remove obsolete rs_* prefix.Martin Pool2000-04-091-1/+1
| | | | | Move code for recognizing commands into inhale.c, so that we can build a test case on it.
* Better assert messages.Martin Pool2000-04-061-1/+6
|
* Various cleanups.Martin Pool2000-03-161-1/+1
|
* Clean up encoding implementation.Martin Pool2000-03-161-49/+39
| | | | | | | | | | | | Add space in the protocol for 64-bit offsets. Fix a memory leak in encoding. Add ptrbuf to do abstract IO to a fixed buffer. When encoding, the new signature block size can be different from the old block size. Encode copy commands using the optimal command byte rather than always using COPY_INT_INT. Add test-chained to make sure we can swallow our own output. Add parameter to hsencode to specify the new block size.
* New library, based on libsync but mostly rewritten:Martin Pool2000-02-291-0/+94
* Differences and signatures are squished into a single binary-encoded stream using variable-length commands * We don't require session objects anymore; they just complicate life. The code is generally simpler. * We only do this encoding format. This is only conceptually related to rsync now; they don't understand each other.