diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:18:32 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:18:32 +0000 |
commit | 4547b622d8d29df964fa2914213088b148c498fc (patch) | |
tree | 9fc6b25f3c3add6b745be9a2400a6e96140046e9 /vendor/crypto-common/src | |
parent | Releasing progress-linux version 1.66.0+dfsg1-1~progress7.99u1. (diff) | |
download | rustc-4547b622d8d29df964fa2914213088b148c498fc.tar.xz rustc-4547b622d8d29df964fa2914213088b148c498fc.zip |
Merging upstream version 1.67.1+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'vendor/crypto-common/src')
-rw-r--r-- | vendor/crypto-common/src/lib.rs | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/vendor/crypto-common/src/lib.rs b/vendor/crypto-common/src/lib.rs index 187b1ac42..c49984cd2 100644 --- a/vendor/crypto-common/src/lib.rs +++ b/vendor/crypto-common/src/lib.rs @@ -4,8 +4,7 @@ #![cfg_attr(docsrs, feature(doc_cfg))] #![doc( html_logo_url = "https://raw.githubusercontent.com/RustCrypto/media/6ee8e381/logo.svg", - html_favicon_url = "https://raw.githubusercontent.com/RustCrypto/media/6ee8e381/logo.svg", - html_root_url = "https://docs.rs/crypto-common/0.1.3" + html_favicon_url = "https://raw.githubusercontent.com/RustCrypto/media/6ee8e381/logo.svg" )] #![forbid(unsafe_code)] #![warn(missing_docs, rust_2018_idioms)] @@ -26,10 +25,16 @@ use rand_core::{CryptoRng, RngCore}; /// Block on which [`BlockSizeUser`] implementors operate. pub type Block<B> = GenericArray<u8, <B as BlockSizeUser>::BlockSize>; + +/// Parallel blocks on which [`ParBlocksSizeUser`] implementors operate. +pub type ParBlocks<T> = GenericArray<Block<T>, <T as ParBlocksSizeUser>::ParBlocksSize>; + /// Output array of [`OutputSizeUser`] implementors. pub type Output<T> = GenericArray<u8, <T as OutputSizeUser>::OutputSize>; + /// Key used by [`KeySizeUser`] implementors. pub type Key<B> = GenericArray<u8, <B as KeySizeUser>::KeySize>; + /// Initialization vector (nonce) used by [`IvSizeUser`] implementors. pub type Iv<B> = GenericArray<u8, <B as IvSizeUser>::IvSize>; @@ -52,6 +57,12 @@ impl<T: BlockSizeUser> BlockSizeUser for &mut T { type BlockSize = T::BlockSize; } +/// Types which can process blocks in parallel. +pub trait ParBlocksSizeUser: BlockSizeUser { + /// Number of blocks which can be processed in parallel. + type ParBlocksSize: ArrayLength<Block<Self>>; +} + /// Types which return data with the given size. pub trait OutputSizeUser { /// Size of the output in bytes. |