Skip to content

Commit 65b35ac

Browse files
pchickeybavshin-f5
authored andcommitted
Net: replace crate::net::resolver with ngx::async_::resolver
ngx's resolver started as this crate's resolver, and includes bug fixes
1 parent 2adf670 commit 65b35ac

File tree

7 files changed

+16
-220
lines changed

7 files changed

+16
-220
lines changed

Cargo.lock

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

Cargo.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ http-body-util = "0.1.3"
2121
http-serde = "2.1.1"
2222
hyper = { version = "1.6.0", features = ["client", "http1"] }
2323
libc = "0.2.174"
24-
nginx-sys = "0.5.0-beta"
25-
ngx = { version = "0.5.0-beta", features = ["async", "serde", "std"] }
24+
nginx-sys = "0.5.0"
25+
ngx = { version = "0.5.0", features = ["async", "serde", "std"] }
2626
openssl = { version = "0.10.73", features = ["bindgen"] }
2727
openssl-foreign-types = { package = "foreign-types", version = "0.3" }
2828
openssl-sys = { version = "0.9.109", features = ["bindgen"] }

src/conf.rs

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

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

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: 4 additions & 4 deletions
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;
21-
use ngx::core::Status;
22+
use ngx::core::{Pool, 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;
@@ -165,7 +165,7 @@ impl PeerConnection {
165165
url.default_port = if ssl.is_some() { 443 } else { 80 };
166166
url.set_no_resolve(1);
167167

168-
let addr_vec: Vec<ngx_addr_t>;
168+
let addr_vec: Vec<ngx_addr_t, Pool>;
169169

170170
if Status(unsafe { nginx_sys::ngx_parse_url(self.pool.as_mut(), &mut url) })
171171
!= Status::NGX_OK
@@ -183,7 +183,7 @@ impl PeerConnection {
183183
self.pc.socklen = addr.socklen;
184184
} else {
185185
addr_vec = res
186-
.resolve(&url.host, self.pool.as_mut())
186+
.resolve_name(&url.host, self.pool.as_mut())
187187
.await
188188
.map_err(io::Error::other)?;
189189

src/net/resolver.rs

Lines changed: 0 additions & 203 deletions
This file was deleted.

0 commit comments

Comments
 (0)