diff --git a/agents/radagent.go b/agents/radagent.go index e6a031c2f..cd2fd6ff5 100644 --- a/agents/radagent.go +++ b/agents/radagent.go @@ -339,12 +339,18 @@ func (ra *RadiusAgent) processRequest(req *radigo.Packet, reqProcessor *config.R utils.RadiusAgent, reqProcessor.ID, utils.ToJSON(cgrEv))) case utils.MetaAuthorize: rply := new(sessions.V1AuthorizeReply) + if reqProcessor.Flags.Has(utils.MetaIPs) { + cgrEv.APIOpts[utils.MetaIPs] = reqProcessor.Flags.GetBool(utils.MetaIPs) + } err = ra.cm.Call(ra.ctx, ra.cfg.RadiusAgentCfg().SessionSConns, utils.SessionSv1AuthorizeEvent, cgrEv, rply) rply.SetMaxUsageNeeded(utils.OptAsBool(cgrEv.APIOpts, utils.MetaAccounts)) agReq.setCGRReply(rply, err) case utils.MetaInitiate: rply := new(sessions.V1InitSessionReply) + if reqProcessor.Flags.Has(utils.MetaIPs) { + cgrEv.APIOpts[utils.MetaIPs] = reqProcessor.Flags.GetBool(utils.MetaIPs) + } err = ra.cm.Call(ra.ctx, ra.cfg.RadiusAgentCfg().SessionSConns, utils.SessionSv1InitiateSession, cgrEv, rply) rply.SetMaxUsageNeeded(utils.OptAsBool(cgrEv.APIOpts, utils.OptsSesInitiate)) @@ -357,6 +363,9 @@ func (ra *RadiusAgent) processRequest(req *radigo.Packet, reqProcessor *config.R agReq.setCGRReply(rply, err) case utils.MetaTerminate: var rply string + if reqProcessor.Flags.Has(utils.MetaIPs) { + cgrEv.APIOpts[utils.MetaIPs] = reqProcessor.Flags.GetBool(utils.MetaIPs) + } err = ra.cm.Call(ra.ctx, ra.cfg.RadiusAgentCfg().SessionSConns, utils.SessionSv1TerminateSession, cgrEv, &rply) agReq.setCGRReply(nil, err) diff --git a/data/conf/samples/radius_ipam/cgrates.json b/data/conf/samples/radius_ipam/cgrates.json index 5320ca691..67a14c811 100644 --- a/data/conf/samples/radius_ipam/cgrates.json +++ b/data/conf/samples/radius_ipam/cgrates.json @@ -3,24 +3,7 @@ "enabled": true, "ips_conns": [ "*localhost" - ], - "opts": { - "*ipsAuthorize": [ - { - "Value": true - } - ], - "*ipsAllocate": [ - { - "Value": true - } - ], - "*ipsRelease": [ - { - "Value": true - } - ] - } + ] }, "ips": { "enabled": true,