@@ -23,7 +23,7 @@ use tracing::{Instrument, Span};
2323
2424use rumqttd_protocol:: { QoS , RetainForwardRule , SubscribeReasonCode , UnsubAckReason } ;
2525
26- use crate :: config:: acl :: AclConfig ;
26+ use crate :: config:: permissions :: PermissionsConfig ;
2727use crate :: map_join_error;
2828use crate :: mqtt:: mailbox:: MailSender ;
2929use crate :: mqtt:: packets:: PacketId ;
@@ -78,7 +78,11 @@ pub struct TceState {
7878}
7979
8080impl MqttRouter {
81- pub fn start ( tce : Option < TceState > , token : CancellationToken , acl : AclConfig ) -> Self {
81+ pub fn start (
82+ tce : Option < TceState > ,
83+ token : CancellationToken ,
84+ permissions : PermissionsConfig ,
85+ ) -> Self {
8286 let ( command_tx, command_rx) = mpsc:: channel ( COMMAND_CAPACITY ) ;
8387
8488 let ( system_tx, system_rx) = mpsc:: unbounded_channel ( ) ;
@@ -89,7 +93,7 @@ impl MqttRouter {
8993
9094 let state = RouterState {
9195 token,
92- acl ,
96+ permissions ,
9397 clients : SecondaryMap :: new ( ) ,
9498 dead_clients : HashSet :: default ( ) ,
9599 subscriptions : Subscriptions :: default ( ) ,
@@ -339,7 +343,7 @@ struct RouterState {
339343 clients : SecondaryMap < ClientIndex , ClientState > ,
340344 dead_clients : HashSet < ClientIndex > ,
341345
342- acl : AclConfig ,
346+ permissions : PermissionsConfig ,
343347
344348 subscriptions : Subscriptions ,
345349 command_rx : mpsc:: Receiver < ( ClientIndex , RouterCommand ) > ,
@@ -686,7 +690,7 @@ fn handle_subscribe(state: &mut RouterState, client_idx: ClientIndex, request: S
686690 return ;
687691 } ;
688692
689- let permissions = state. acl . get_topics_acl_config ( & client. user ) ;
693+ let permissions = state. permissions . get_topics_acl_config ( & client. user ) ;
690694
691695 // if state.connections[conn_id].message_tx.is_closed() {
692696 // return;
@@ -704,10 +708,10 @@ fn handle_subscribe(state: &mut RouterState, client_idx: ClientIndex, request: S
704708 // as they would have failed validation on the frontend.
705709 . ok_or ( SubscribeReasonCode :: Unspecified )
706710 . and_then ( |( filter, props) | {
707- if !state. acl . check_acl_config (
711+ if !state. permissions . check_acl_config (
708712 permissions,
709713 filter. as_str ( ) ,
710- crate :: config:: acl :: TransactionType :: Subscribe ,
714+ crate :: config:: permissions :: TransactionType :: Subscribe ,
711715 ) {
712716 Err ( SubscribeReasonCode :: NotAuthorized ) ?
713717 }
@@ -1009,12 +1013,12 @@ fn dispatch(state: &mut RouterState, publish: Arc<PublishTrasaction>, origin: Pu
10091013 return ;
10101014 } ;
10111015
1012- let topics_config = state. acl . get_topics_acl_config ( & client. user ) ;
1016+ let topics_config = state. permissions . get_topics_acl_config ( & client. user ) ;
10131017
1014- if !state. acl . check_acl_config (
1018+ if !state. permissions . check_acl_config (
10151019 topics_config,
10161020 & publish. topic ,
1017- crate :: config:: acl :: TransactionType :: Publish ,
1021+ crate :: config:: permissions :: TransactionType :: Publish ,
10181022 ) {
10191023 return ;
10201024 }
0 commit comments