radius: pass ips flag to sessions via opts

This commit is contained in:
ionutboangiu
2025-07-09 14:11:57 +03:00
committed by Dan Christian Bogos
parent 7845074db5
commit f68b6e8f79
2 changed files with 10 additions and 18 deletions

View File

@@ -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)

View File

@@ -3,24 +3,7 @@
"enabled": true,
"ips_conns": [
"*localhost"
],
"opts": {
"*ipsAuthorize": [
{
"Value": true
}
],
"*ipsAllocate": [
{
"Value": true
}
],
"*ipsRelease": [
{
"Value": true
}
]
}
]
},
"ips": {
"enabled": true,