@@ -1228,7 +1228,10 @@ func (s *sessionRpcServer) marshalRPCSession(sess *session.Session) (
12281228 revokedAt = uint64 (sess .RevokedAt .Unix ())
12291229 }
12301230
1231- featureInfo := make (map [string ]* litrpc.RulesMap )
1231+ var (
1232+ featureInfo = make (map [string ]* litrpc.RulesMap )
1233+ initRuleValues = s .cfg .ruleMgrs .InitRuleValues
1234+ )
12321235 if sess .MacaroonRecipe != nil {
12331236 for _ , cav := range sess .MacaroonRecipe .Caveats {
12341237 info , err := firewall .ParseRuleCaveat (string (cav .Id ))
@@ -1241,13 +1244,17 @@ func (s *sessionRpcServer) marshalRPCSession(sess *session.Session) (
12411244 for feature , rules := range info .FeatureRules {
12421245 ruleMap := make (map [string ]* litrpc.RuleValue )
12431246 for name , rule := range rules {
1244- val , err := s .cfg .ruleMgrs .InitRuleValues (name , []byte (rule ))
1247+ val , err := initRuleValues (
1248+ name , []byte (rule ),
1249+ )
12451250 if err != nil {
12461251 return nil , err
12471252 }
12481253
12491254 if sess .WithPrivacyMapper {
1250- db := s .cfg .privMap (sess .ID )
1255+ db := s .cfg .privMap (
1256+ sess .GroupID ,
1257+ )
12511258 val , err = val .PseudoToReal (db )
12521259 if err != nil {
12531260 return nil , err
@@ -1257,7 +1264,9 @@ func (s *sessionRpcServer) marshalRPCSession(sess *session.Session) (
12571264 ruleMap [name ] = val .ToProto ()
12581265 }
12591266
1260- featureInfo [feature ] = & litrpc.RulesMap {Rules : ruleMap }
1267+ featureInfo [feature ] = & litrpc.RulesMap {
1268+ Rules : ruleMap ,
1269+ }
12611270 }
12621271 }
12631272 }
@@ -1278,6 +1287,7 @@ func (s *sessionRpcServer) marshalRPCSession(sess *session.Session) (
12781287 RevokedAt : revokedAt ,
12791288 MacaroonRecipe : macRecipe ,
12801289 AutopilotFeatureInfo : featureInfo ,
1290+ GroupId : sess .GroupID [:],
12811291 }, nil
12821292}
12831293
0 commit comments