mirror of
https://github.com/YGGverse/aquatic.git
synced 2026-04-02 02:35:31 +00:00
http_private: use CanonicalSocketAddr when calling DB
This commit is contained in:
parent
96e128bb90
commit
5d4f30bb7b
2 changed files with 11 additions and 14 deletions
|
|
@ -25,7 +25,7 @@ pub async fn announce(
|
|||
Extension(config): Extension<Arc<Config>>,
|
||||
Extension(pool): Extension<MySqlPool>,
|
||||
Extension(request_sender): Extension<Arc<ChannelRequestSender>>,
|
||||
ConnectInfo(peer_addr): ConnectInfo<SocketAddr>,
|
||||
ConnectInfo(source_addr): ConnectInfo<SocketAddr>,
|
||||
opt_user_agent: Option<TypedHeader<UserAgent>>,
|
||||
Path(user_token): Path<String>,
|
||||
RawQuery(query): RawQuery,
|
||||
|
|
@ -38,19 +38,15 @@ pub async fn announce(
|
|||
let request_worker_index = RequestWorkerIndex::from_info_hash(&config, request.info_hash);
|
||||
let opt_user_agent = opt_user_agent.map(|header| header.as_str().to_owned());
|
||||
|
||||
let source_addr = CanonicalSocketAddr::new(source_addr);
|
||||
|
||||
let validated_request =
|
||||
db::validate_announce_request(&pool, peer_addr, opt_user_agent, user_token, request)
|
||||
db::validate_announce_request(&pool, source_addr, opt_user_agent, user_token, request)
|
||||
.await
|
||||
.map_err(|r| create_response(Response::Failure(r)))?;
|
||||
|
||||
let canonical_socket_addr = CanonicalSocketAddr::new(peer_addr);
|
||||
|
||||
let response_receiver = request_sender
|
||||
.send_to(
|
||||
request_worker_index,
|
||||
validated_request,
|
||||
canonical_socket_addr,
|
||||
)
|
||||
.send_to(request_worker_index, validated_request, source_addr)
|
||||
.await
|
||||
.map_err(|err| internal_error(format!("Sending request over channel failed: {:#}", err)))?;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue