summaryrefslogtreecommitdiffstats
path: root/buffered-reader
AgeCommit message (Collapse)Author
2020-07-31Release 0.18.0.v0.18.0Justus Winter
2020-06-12Release 0.17.0.v0.17.0Justus Winter
2020-05-13openpgp, buffered-reader, ffi: Fix documentation warnings.Wiktor Kwapisiewicz
- Fix unmatched references.
2020-05-11buffered-reader: Use from_be_bytes.Nora Widdecke
- Replace bitshifts with {u16,u32}::from_be_bytes from the standard library.
2020-04-03Release 0.16.0.v0.16.0Justus Winter
2020-03-26Remove redundant field names.Wiktor Kwapisiewicz
2020-03-26buffered-reader: Fix error handling.Justus Winter
- Hat tip to Fabian Freyer of Radically Open Security.
2020-03-25buffered-reader: Improve performance of BufferedReader::drop_eof.Justus Winter
- Consume the whole buffer, not just DEFAULT_BUF_SIZE.
2020-02-07Release 0.14.0.v0.14.0Justus Winter
2020-01-29buffered-reader: Use the new as_boxed method.Justus Winter
- This cleanly avoids creating a linked list of references on the stack that grows every time we call into_inner.
2020-01-29buffered-reader: Make Dup polymorphic.Justus Winter
- Also, make PacketHeaderParser polymorphic over BufferedReader<Cookie> at the same time.
2020-01-29buffered-reader: Make Reserve polymorphic.Justus Winter
2020-01-29Revert "buffered-reader: Fix performance problem."Justus Winter
This reverts commit 9619dffaa756d8cfd6ec691699bd6ae4d59ecfb5.
2020-01-29buffered-reader: New method BufferedReader::as_boxed.Justus Winter
- This method returns the reader in a box. The nice thing is that we can provide a specialized implementation for Box<BufferedReader> that avoids boxing the reader twice. This cleanly addresses the issue worked around in 9619dffaa756d8cfd6ec691699bd6ae4d59ecfb5.
2019-12-20Release 0.13.0.v0.13.0Justus Winter
2019-11-25Release 0.12.0.v0.12.0Justus Winter
2019-11-18Fix more spellingDaniel Kahn Gillmor
Signed-off-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
2019-10-31Change license to GPLv2+.Neal H. Walfield
2019-10-30Update authors.Neal H. Walfield
2019-10-30buffered-reader: Avoid unnecessarily reading from the inner reader.Neal H. Walfield
- If the internal buffer has some data, process that before reading more.
2019-10-30openpgp,buffered-reader: Optimize Vec<u8>::truncate manuallyNeal H. Walfield
- On debug builds, Vec<u8>::truncate is very, very slow. For instance, running the decrypt_test_stream test takes 51 seconds on my (Neal's) computer using Vec<u8>::truncate and <0.1 seconds using `unsafe { v.set_len(len); }`. The issue is that the compiler calls drop on every element that is dropped, even though a u8 doesn't have a drop implementation. The compiler optimizes this away at high optimization levels, but those levels make debugging harder.
2019-10-30buffered-reader: Fix Generic::data_helper.Neal H. Walfield
- The `Generic::data_helper` was not sufficiently careful when dealing with errors. In particular: - If `Generic::data_hard(1)` was called, and an error occured, and nothing was buffered or read, `Generic::data_helper` would return the empty string instead of the error. - If `Generic::data(n)` was called, and an error occured, but some data (< n bytes) was buffered, `Generic::data_helper` would return the error instead of the data that was read. - Fix these bugs. - Also, simplify the code and don't save whether we hit EOF or the error (which we can only return once, anyway). Instead, rely on the underlying reader to return EOF or the error again. - Fixes #174.
2019-10-30buffered-reader: Change drop_through to optionally match EOF.Neal H. Walfield
- Change BufferedReader::drop_through to optionally match EOF.
2019-10-27Fix more spelling errors caught by codespellDaniel Kahn Gillmor
Signed-off-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
2019-10-25Release 0.11.0.v0.11.0Justus Winter
2019-09-27linting: Clear up bare trait object warningsDaniel Silverstone
Newer Rust compilers requre `dyn` marking trait objects. Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-09-06Release 0.10.0.v0.10.0Justus Winter
2019-07-15Switch to Rust 2018.Justus Winter
2019-07-15Prepare for Rust 2018.Justus Winter
- This is the result of running `cargo fix --edition`, with some manual adjustments. - The vast majority of changes merely qualify module paths with 'crate::'. - Two instances of adding an anonymous pattern to a trait's function. - `async` is a keyword in Rust 2018, and hence it needs to be escaped (e.g. in the case of the net::r#async module). - The manual adjustments were needed due to various shortcomings of the analysis employed by `cargo fix`, e.g. unexpanded macros, procedural macros, lalrpop grammars.
2019-07-08Release 0.9.0.v0.9.0Justus Winter
2019-06-14Release 0.8.0.v0.8.0Justus Winter
2019-06-14buffered-reader: Clarify loop variant.Justus Winter
- Fixes #237.
2019-06-14buffered-reader: Fix comment.Justus Winter
2019-05-10Release 0.7.0.v0.7.0Justus Winter
2019-05-03buffered-reader: Add convenience functions to drop some dataNeal H. Walfield
- Add convenience methods to the BufferReader trait to drop data until some byte is encountered (BufferedReader::drop_until and BufferedReader::drop_through).
2019-04-12Release 0.6.0.v0.6.0Justus Winter
- Also bump rfc2822 to 0.6.0. After all, we create tags for the versions.
2019-04-12buffered-reader, rfc2822: Use docs.rs for the documentation.Justus Winter
2019-04-02buffered-reader: New predicate BufferedReader::consummated.Justus Winter
2019-04-02buffered-reader: New predicate BufferedReader::eof.Justus Winter
2019-04-02buffered-reader: Fix limit computation.Justus Winter
- Previously, if the underlying reader returned less data than 'amount', the limit would still be reduced by 'amount'.
2019-04-02buffered-reader: Fix Limitor's io::Read interface.Justus Winter
2019-03-28Point to the version-specific documentation.Justus Winter
2019-03-14Release 0.5.0.v0.5.0Justus Winter
2019-03-01buffered-reader: Drop BufferedReader prefix.Justus Winter
- For example, `buffered_reader::BufferedReaderMemory` is now called `buffered_reader::Memory`. This makes the type names less unwieldy. - Fixes #206.
2019-03-01buffered-reader: Fix BufferedReaderEOF.Justus Winter
- According to the BufferedReader interface it is okay to return short reads on `BufferedReader::data_consume()`. - If `BufferedReader::data_consume_hard()` is called, return UnexpectedEof instead of panicking. - Fixes #207.
2019-03-01buffered-reader: Remove unused file.Justus Winter
2018-12-18Release 0.3.0.v0.3.0Justus Winter
2018-11-27Fix the gitlab badges.Justus Winter
2018-11-26Release 0.2.0.v0.2.0Justus Winter
2018-11-26buffered-reader: Add a README.Justus Winter