Skip to content

Commit

Permalink
Update base64 to 0.21 (#1725)
Browse files Browse the repository at this point in the history
  • Loading branch information
nickelc authored Jan 13, 2023
1 parent 1d90496 commit 6df8858
Show file tree
Hide file tree
Showing 6 changed files with 27 additions and 9 deletions.
2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ __rustls = ["hyper-rustls", "tokio-rustls", "rustls", "__tls", "rustls-pemfile"]
__internal_proxy_sys_no_cache = []

[dependencies]
base64 = "0.20"
base64 = "0.21"
http = "0.2"
url = "2.2"
bytes = "1.0"
Expand Down
5 changes: 2 additions & 3 deletions src/async_impl/request.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ use std::future::Future;
use std::io::Write;
use std::time::Duration;

use base64::write::EncoderWriter as Base64Encoder;
use serde::Serialize;
#[cfg(feature = "json")]
use serde_json;
Expand All @@ -17,6 +16,7 @@ use super::response::Response;
#[cfg(feature = "multipart")]
use crate::header::CONTENT_LENGTH;
use crate::header::{HeaderMap, HeaderName, HeaderValue, CONTENT_TYPE};
use crate::util::base64;
use crate::{Method, Url};
use http::{request::Parts, Request as HttpRequest, Version};

Expand Down Expand Up @@ -253,8 +253,7 @@ impl RequestBuilder {
{
let mut header_value = b"Basic ".to_vec();
{
let mut encoder =
Base64Encoder::from(&mut header_value, &base64::engine::DEFAULT_ENGINE);
let mut encoder = base64::encoder(&mut header_value);
// The unwraps here are fine because Vec::write* is infallible.
write!(encoder, "{}:", username).unwrap();
if let Some(password) = password {
Expand Down
4 changes: 2 additions & 2 deletions src/blocking/request.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ use std::convert::TryFrom;
use std::fmt;
use std::time::Duration;

use base64::encode;
use http::{request::Parts, Request as HttpRequest, Version};
use serde::Serialize;
#[cfg(feature = "json")]
Expand All @@ -14,6 +13,7 @@ use super::body::{self, Body};
use super::multipart;
use super::Client;
use crate::header::{HeaderMap, HeaderName, HeaderValue, CONTENT_TYPE};
use crate::util::base64;
use crate::{async_impl, Method, Url};

/// A request which can be executed with `Client::execute()`.
Expand Down Expand Up @@ -270,7 +270,7 @@ impl RequestBuilder {
Some(password) => format!("{}:{}", username, password),
None => format!("{}:", username),
};
let header_value = format!("Basic {}", encode(&auth));
let header_value = format!("Basic {}", base64::encode(&auth));
self.header_sensitive(crate::header::AUTHORIZATION, &*header_value, true)
}

Expand Down
1 change: 1 addition & 0 deletions src/proxy.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ use std::net::SocketAddr;
use std::sync::Arc;

use crate::into_url::{IntoUrl, IntoUrlSealed};
use crate::util::base64;
use crate::Url;
use http::{header::HeaderValue, Uri};
use ipnet::IpNet;
Expand Down
19 changes: 19 additions & 0 deletions src/util.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,24 @@
use crate::header::{Entry, HeaderMap, OccupiedEntry};

pub(crate) mod base64 {
use std::io;

use base64::engine::GeneralPurpose;
use base64::prelude::BASE64_STANDARD;
use base64::write::EncoderWriter;

if_hyper! {
pub fn encode<T: AsRef<[u8]>>(input: T) -> String {
use base64::Engine;
BASE64_STANDARD.encode(input)
}
}

pub fn encoder<'a, W: io::Write>(delegate: W) -> EncoderWriter<'a, GeneralPurpose, W> {
EncoderWriter::new(delegate, &BASE64_STANDARD)
}
}

// xor-shift
#[cfg(not(target_arch = "wasm32"))]
pub(crate) fn fast_random() -> u64 {
Expand Down
5 changes: 2 additions & 3 deletions src/wasm/request.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ use std::convert::TryFrom;
use std::fmt;
use std::io::Write;

use base64::write::EncoderWriter as Base64Encoder;
use bytes::Bytes;
use http::{request::Parts, Method, Request as HttpRequest};
use serde::Serialize;
Expand All @@ -13,6 +12,7 @@ use web_sys::RequestCredentials;

use super::{Body, Client, Response};
use crate::header::{HeaderMap, HeaderName, HeaderValue, CONTENT_TYPE};
use crate::util::base64;

/// A request which can be executed with `Client::execute()`.
pub struct Request {
Expand Down Expand Up @@ -216,8 +216,7 @@ impl RequestBuilder {
{
let mut header_value = b"Basic ".to_vec();
{
let mut encoder =
Base64Encoder::from(&mut header_value, &base64::engine::DEFAULT_ENGINE);
let mut encoder = base64::encoder(&mut header_value);
// The unwraps here are fine because Vec::write* is infallible.
write!(encoder, "{}:", username).unwrap();
if let Some(password) = password {
Expand Down

0 comments on commit 6df8858

Please sign in to comment.