Skip to content

Commit b6797fd

Browse files
committed
fix: replace crate::net::resolver with ngx::async_::resolver
ngx's resolver started as this crate's resolver, and includes bug fixes
1 parent 28ae1b3 commit b6797fd

File tree

7 files changed

+58
-255
lines changed

7 files changed

+58
-255
lines changed

Cargo.lock

Lines changed: 48 additions & 46 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,3 +44,8 @@ export-modules = []
4444
[profile.release]
4545
codegen-units = 1
4646
lto = true
47+
48+
[patch.crates-io]
49+
ngx = { git = "https://github.com/pchickey/ngx-rust", rev = "75add6c437603faf559712f7c687c58cbb307cf0" }
50+
nginx-sys = { git = "https://github.com/pchickey/ngx-rust", rev = "75add6c437603faf559712f7c687c58cbb307cf0" }
51+

src/conf.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -411,7 +411,7 @@ extern "C" fn cmd_issuer_set_external_account_key(
411411
return NGX_CONF_DUPLICATE;
412412
}
413413

414-
let mut pool = cf.pool();
414+
let pool = cf.pool();
415415
// NGX_CONF_TAKE2 ensures that args contains 3 elements
416416
let args = cf.args();
417417

src/net.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,3 @@
66
pub mod connection;
77
pub mod http;
88
pub mod peer_conn;
9-
pub mod resolver;

src/net/http.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,12 @@ use http_body::Body;
1515
use http_body_util::BodyExt;
1616
use nginx_sys::{ngx_log_t, ngx_resolver_t, NGX_LOG_WARN};
1717
use ngx::allocator::Box;
18+
use ngx::async_::resolver::Resolver;
1819
use ngx::async_::spawn;
1920
use ngx::ngx_log_error;
2021
use thiserror::Error;
2122

2223
use super::peer_conn::PeerConnection;
23-
use super::resolver::Resolver;
2424
use crate::conf::ssl::NgxSsl;
2525

2626
// The largest response we can reasonably expect is a certificate chain, which should not exceed
@@ -65,7 +65,7 @@ pub enum HttpClientError {
6565
#[error("request error: {0}")]
6666
Http(#[from] hyper::Error),
6767
#[error("name resolution error: {0}")]
68-
Resolver(super::resolver::Error),
68+
Resolver(ngx::async_::resolver::Error),
6969
#[error("connection error: {0}")]
7070
Io(io::Error),
7171
#[error("invalid uri: {0}")]
@@ -74,7 +74,7 @@ pub enum HttpClientError {
7474

7575
impl From<io::Error> for HttpClientError {
7676
fn from(err: io::Error) -> Self {
77-
match err.downcast::<super::resolver::Error>() {
77+
match err.downcast::<ngx::async_::resolver::Error>() {
7878
Ok(x) => Self::Resolver(x),
7979
Err(x) => Self::Io(x),
8080
}

src/net/peer_conn.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,13 @@ use nginx_sys::{
1717
ngx_ssl_shutdown, ngx_ssl_t, ngx_str_t, ngx_url_t, NGX_DEFAULT_POOL_SIZE, NGX_LOG_ERR,
1818
NGX_LOG_WARN,
1919
};
20+
use ngx::async_::resolver::Resolver;
2021
use ngx::collections::Vec;
2122
use ngx::core::Status;
2223
use ngx::{ngx_log_debug, ngx_log_error};
2324
use openssl_sys::{SSL_get_verify_result, X509_verify_cert_error_string, X509_V_OK};
2425

2526
use super::connection::{Connection, ConnectionLogError};
26-
use super::resolver::Resolver;
2727
use crate::util::OwnedPool;
2828

2929
const ACME_DEFAULT_READ_TIMEOUT: ngx_msec_t = 60000;

0 commit comments

Comments
 (0)