Age | Commit message (Collapse) | Author |
|
- The packet parser now digests armored data, so there is no need to
use this even in examples or tests, just use the appropriate
.from_bytes(..) function.
- Fixes #169.
|
|
|
|
|
|
- We should replace this with a more comprehensive example covering
the other crates too.
|
|
|
|
- Improve the documentation.
- Re-export 'openpgp'.
- Re-export the other crates without prefix.
|
|
- Split up into six crates: buffered-reader, openpgp, sequoia-core,
sequoia-ffi, sequoia-net, and sequoia-store.
- Adjust imports accordingly.
|
|
|
|
- We do not want to use getters and setters for now. Maintaining
them is annoying while our interface is still young.
- We will not expose this to the ffi api.
|
|
|
|
- Add a new field 'primary' for the primary key.
- Improve error handling.
- Actually do a little canonicalization.
- Improve and document ffi glue.
|
|
|
|
- Given a `Packet`, the packet tag is unambiguous in all cases
except for unknown packets. As such, don't store the tag in
PacketCommon; only store it when it is actually needed.
|
|
|
|
|
|
- Fixes 1d87c32b9536fd49b65a11364d882edb115650aa.
|
|
|
|
- Reading from the pipeline is a recursive operation (when reading
from a reader, the reader calls the underlying reader, etc.). It
is probably possible to refactor this to be iterative, but the
cost is too high when in practice more than 16 levels of recursion
is almost certainly an error, and for 16 levels, there is more
than enough headroom (I blow the stack for >512 levels of
recursion on 64-bit Linux).
|
|
|
|
- Use hyper for http, hyper-tls for https.
- Provide an easy constructor for the hkps pool.
- Add ffi glue.
|
|
- Break buffered_reader.rs into several files, one per
implementation.
- Rename the other implementations to remove the 'buffered_reader_'
prefix from the filename.
|
|
|
|
|
|
|
|
- Instead of erroring out for unknown compression algorithms, treat
compression packets with an algorithms as unknown packets.
|
|
- When a packet contained data, the output was much too verbose.
Now, we only print whether there is data and the amount of data
that we have.
|
|
- If a packet is unsupported, instead of failing, we create a
special unknown packet.
|
|
- Our convention is that a container wraps the provided reader.
Also do this when dealing with a compressed packet that is
uncompressed.
|
|
- Our goal is to gradually parse messages so that it is possible to
work with messages that don't fit in the available memory. The
current implementation parsed the messages in their entirety using
recursion. To provide to a generator interface, we need to be
much more careful with lifetimes. This requires changing the
interface.
- Change the `BufferedReader` objects to own any encapsulated
`BufferedReader`s rather than just holding a reference. This is
necessary so the generator can keep a stack of filters.
- Provide new decompressor implementations so that it is possible to
extract the contained `BufferedReader`.
- Use vectors instead of boxes slices to hold raw byte strings.
- Store a packet's contents (either any children or the raw data) in
the common area. Also provide a DerefMut implementation to
access it.
- Make packets comparable (PartialEq) and printable (Debug).
|
|
- Create default context with 'Context::new', create builder with
'Context::configure'.
- Rename 'Pre' to 'Config'.
- Expose builder to ffi.
|
|
|
|
- Add KeyId to identify keys.
|
|
- The domain uniquely identifies the application. It should be a
property of the context.
|
|
|
|
- Context objects can be used to tweak the library configuration.
Currently, a home and lib directory can be set. Reasonable
defaults are provided.
- Add ffi functions.
|
|
- Add 'Kind::Any' that can be used with the reader.
- Add a function to inspect the detected type.
|
|
|
|
- Fix filling the stash when buffers of size one are passed to
'write'.
- Add a test demonstrating the problem.
|
|
- Return the number of unencoded bytes written. Assert that the
return value is sane.
- Improve the test so that it demonstrates the problem.
|
|
- When armoring data of size zero, make sure that the header is
written even if 'write' is never called.
|
|
- Base64 encodes three bytes in four. We stash unencoded bytes,
therefore we need to stash at most two bytes. Assert that in
interesting places.
- Reverse the items in the stash directly after populating it. This
is is less surprising for the reader.
|
|
|
|
|
|
- For now, we keep the ffi in this crate, later on we may want to
move it to sequoia-ffi.
- Example code how to use the library from C is added as well.
|
|
|
|
|
|
- For now, no canonicalization is done. For that to happen we need
to be able to access the packets fields, which are not public and
there is no accessor.
|
|
- Implement IntoIter that deconstucts the message objects and moves
packages out of it.
|
|
- Given some bytes, return an OpenPGP message object.
|
|
- Given a file, return an OpenPGP message object.
|