blob: ba4ec1f34ecec4d3e119e573eaf9eb13e2a787a3 [file] [log] [blame]
Alice Wangc8f88f52023-09-25 14:02:17 +00001// Copyright 2023, The Android Open Source Project
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15//! Safe wrappers around the BoringSSL API.
16
17#![cfg_attr(not(feature = "std"), no_std)]
18
Alice Wangb3fcf632023-09-26 08:32:55 +000019extern crate alloc;
20
Alice Wang69b088f2023-09-27 12:54:05 +000021mod aead;
Alice Wangc8f88f52023-09-25 14:02:17 +000022mod cbb;
Alice Wang709cce92023-09-26 10:30:21 +000023mod digest;
Alice Wangb3fcf632023-09-26 08:32:55 +000024mod ec_key;
Alice Wang47287e72023-09-29 13:14:33 +000025mod err;
Alice Wangf1a83b02023-09-26 12:39:17 +000026mod hkdf;
Alice Wang709cce92023-09-26 10:30:21 +000027mod hmac;
Alice Wang8b8e6e62023-10-02 09:10:13 +000028mod rand;
Alice Wang815d3682023-09-28 08:30:40 +000029mod util;
Alice Wangc8f88f52023-09-25 14:02:17 +000030
Alice Wang47287e72023-09-29 13:14:33 +000031pub use bssl_avf_error::{ApiName, CipherError, Error, ReasonCode, Result};
32
Alice Wang8b8e6e62023-10-02 09:10:13 +000033pub use aead::{Aead, AeadCtx, AES_GCM_NONCE_LENGTH};
Alice Wangc8f88f52023-09-25 14:02:17 +000034pub use cbb::CbbFixed;
Alice Wangf1a83b02023-09-26 12:39:17 +000035pub use digest::Digester;
Alice Wangb3fcf632023-09-26 08:32:55 +000036pub use ec_key::{EcKey, ZVec};
Alice Wangf1a83b02023-09-26 12:39:17 +000037pub use hkdf::hkdf;
Alice Wang709cce92023-09-26 10:30:21 +000038pub use hmac::hmac_sha256;
Alice Wang8b8e6e62023-10-02 09:10:13 +000039pub use rand::rand_bytes;