Skip to content

Commit bcb36f1

Browse files
committed
fix PredicateEvaluator Sync + Send
1 parent b8ad0b3 commit bcb36f1

File tree

10 files changed

+11
-18
lines changed

10 files changed

+11
-18
lines changed

Cargo.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/app_guard_impl.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -170,7 +170,7 @@ impl AppGuardImpl {
170170
}
171171

172172
async fn firewall_match_item<
173-
I: PredicateEvaluator<Predicate = FirewallRule, Reason = String, Context = AppContext>,
173+
I: PredicateEvaluator<Predicate = FirewallRule, Reason = String, Context = AppContext> + Sync,
174174
>(
175175
&self,
176176
token: &str,

src/firewall/firewall.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ impl Firewall {
4444
}
4545

4646
pub async fn match_item<
47-
I: PredicateEvaluator<Predicate = FirewallRule, Reason = String, Context = AppContext>,
47+
I: PredicateEvaluator<Predicate = FirewallRule, Reason = String, Context = AppContext> + Sync,
4848
>(
4949
&self,
5050
item: &I,

src/firewall/items/http_request.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ use crate::helpers::get_header;
88
use crate::proto::appguard::{AppGuardHttpRequest, AppGuardTcpInfo};
99
use rpn_predicate_interpreter::PredicateEvaluator;
1010
use serde::{Deserialize, Serialize};
11-
use async_trait::async_trait;
1211

1312
#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
1413
#[allow(clippy::enum_variant_names)]
@@ -71,7 +70,7 @@ impl HttpRequestField {
7170
}
7271
}
7372

74-
#[async_trait(?Send)]
73+
#[tonic::async_trait]
7574
impl PredicateEvaluator for AppGuardHttpRequest {
7675
type Predicate = FirewallRule;
7776
type Reason = String;

src/firewall/items/http_response.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ use crate::helpers::get_header;
88
use crate::proto::appguard::{AppGuardHttpResponse, AppGuardTcpInfo};
99
use rpn_predicate_interpreter::PredicateEvaluator;
1010
use serde::{Deserialize, Serialize};
11-
use async_trait::async_trait;
1211

1312
#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
1413
#[allow(clippy::enum_variant_names)]
@@ -53,7 +52,7 @@ impl HttpResponseField {
5352
}
5453
}
5554

56-
#[async_trait(?Send)]
55+
#[tonic::async_trait]
5756
impl PredicateEvaluator for AppGuardHttpResponse {
5857
type Predicate = FirewallRule;
5958
type Reason = String;

src/firewall/items/ip_info.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ use crate::firewall::rules::{FirewallCompareType, FirewallRuleField, FirewallRul
33
use crate::proto::appguard::AppGuardIpInfo;
44
use rpn_predicate_interpreter::PredicateEvaluator;
55
use serde::{Deserialize, Serialize};
6-
use async_trait::async_trait;
76

87
#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
98
#[serde(rename_all = "snake_case")]
@@ -73,7 +72,7 @@ impl IpInfoField {
7372
}
7473
}
7574

76-
#[async_trait(?Send)]
75+
#[tonic::async_trait]
7776
impl<'a> PredicateEvaluator for &'a AppGuardIpInfo {
7877
type Predicate = FirewallRuleWithDirection<'a>;
7978
type Reason = String;

src/firewall/items/smtp_request.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ use crate::helpers::get_header;
88
use crate::proto::appguard::{AppGuardSmtpRequest, AppGuardTcpInfo};
99
use rpn_predicate_interpreter::PredicateEvaluator;
1010
use serde::{Deserialize, Serialize};
11-
use async_trait::async_trait;
1211

1312
#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
1413
#[allow(clippy::enum_variant_names)]
@@ -52,7 +51,7 @@ impl SmtpRequestField {
5251
}
5352
}
5453

55-
#[async_trait(?Send)]
54+
#[tonic::async_trait]
5655
impl PredicateEvaluator for AppGuardSmtpRequest {
5756
type Predicate = FirewallRule;
5857
type Reason = String;

src/firewall/items/smtp_response.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ use crate::firewall::rules::{
66
use crate::proto::appguard::{AppGuardSmtpResponse, AppGuardTcpInfo};
77
use rpn_predicate_interpreter::PredicateEvaluator;
88
use serde::{Deserialize, Serialize};
9-
use async_trait::async_trait;
109

1110
#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
1211
#[serde(rename_all = "snake_case")]
@@ -34,7 +33,7 @@ impl SmtpResponseField {
3433
}
3534
}
3635

37-
#[async_trait(?Send)]
36+
#[tonic::async_trait]
3837
impl PredicateEvaluator for AppGuardSmtpResponse {
3938
type Predicate = FirewallRule;
4039
type Reason = String;

src/firewall/items/tcp_connection.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ use crate::firewall::rules::{
55
use crate::proto::appguard::AppGuardTcpConnection;
66
use rpn_predicate_interpreter::PredicateEvaluator;
77
use serde::{Deserialize, Serialize};
8-
use async_trait::async_trait;
98

109
#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
1110
#[serde(rename_all = "snake_case")]
@@ -74,7 +73,7 @@ impl TcpConnectionField {
7473
}
7574
}
7675

77-
#[async_trait(?Send)]
76+
#[tonic::async_trait]
7877
impl<'a> PredicateEvaluator for &'a AppGuardTcpConnection {
7978
type Predicate = FirewallRuleWithDirection<'a>;
8079
type Reason = String;
@@ -112,7 +111,7 @@ impl IpAlias {
112111
match self {
113112
IpAlias::Name(name) => {
114113
let token = context.root_token_provider.get().await.ok()?.jwt.clone();
115-
context.datastore.clone().get_ip_alias(token, name).await.ok().as_ref()
114+
context.datastore.clone().get_ip_alias(token, name).await.ok()
116115
}
117116
IpAlias::Addresses(addresses) => Some(addresses),
118117
}

src/firewall/items/tcp_info.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,8 @@ use crate::app_context::AppContext;
22
use crate::firewall::rules::{FirewallRuleField, FirewallRuleWithDirection};
33
use crate::proto::appguard::{AppGuardIpInfo, AppGuardTcpConnection, AppGuardTcpInfo};
44
use rpn_predicate_interpreter::PredicateEvaluator;
5-
use async_trait::async_trait;
65

7-
#[async_trait(?Send)]
6+
#[tonic::async_trait]
87
impl<'a> PredicateEvaluator for &'a AppGuardTcpInfo {
98
type Predicate = FirewallRuleWithDirection<'a>;
109
type Reason = String;

0 commit comments

Comments
 (0)