mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-11 10:06:24 +05:00
fix DPR to contain sender identity not recipient
This commit is contained in:
committed by
Dan Christian Bogos
parent
4c30ec4e4c
commit
89c0f9e025
@@ -579,12 +579,6 @@ func (da *DiameterAgent) V1DisconnectPeer(ctx *context.Context, args *utils.DPRA
|
|||||||
return errors.New("WRONG_DISCONNECT_CAUSE")
|
return errors.New("WRONG_DISCONNECT_CAUSE")
|
||||||
}
|
}
|
||||||
|
|
||||||
m := diam.NewRequest(diam.DisconnectPeer,
|
|
||||||
diam.CHARGING_CONTROL_APP_ID, dict.Default)
|
|
||||||
m.NewAVP(avp.OriginHost, avp.Mbit, 0, datatype.DiameterIdentity(args.OriginHost))
|
|
||||||
m.NewAVP(avp.OriginRealm, avp.Mbit, 0, datatype.DiameterIdentity(args.OriginRealm))
|
|
||||||
m.NewAVP(avp.DisconnectCause, avp.Mbit, 0, datatype.Enumerated(args.DisconnectCause))
|
|
||||||
|
|
||||||
var conn diam.Conn
|
var conn diam.Conn
|
||||||
var key string
|
var key string
|
||||||
|
|
||||||
@@ -612,6 +606,15 @@ func (da *DiameterAgent) V1DisconnectPeer(ctx *context.Context, args *utils.DPRA
|
|||||||
return utils.ErrNotFound
|
return utils.ErrNotFound
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// RFC 6733 Section 5.4.1: DPR contains sender's Origin-Host/Realm
|
||||||
|
m := diam.NewRequest(diam.DisconnectPeer,
|
||||||
|
diam.CHARGING_CONTROL_APP_ID, dict.Default)
|
||||||
|
m.NewAVP(avp.OriginHost, avp.Mbit, 0,
|
||||||
|
datatype.DiameterIdentity(da.cgrCfg.DiameterAgentCfg().OriginHost))
|
||||||
|
m.NewAVP(avp.OriginRealm, avp.Mbit, 0,
|
||||||
|
datatype.DiameterIdentity(da.cgrCfg.DiameterAgentCfg().OriginRealm))
|
||||||
|
m.NewAVP(avp.DisconnectCause, avp.Mbit, 0, datatype.Enumerated(args.DisconnectCause))
|
||||||
|
|
||||||
dpaCh := make(chan *diam.Message, 1)
|
dpaCh := make(chan *diam.Message, 1)
|
||||||
da.dpaLck.Lock()
|
da.dpaLck.Lock()
|
||||||
da.dpa[key] = dpaCh
|
da.dpa[key] = dpaCh
|
||||||
|
|||||||
Reference in New Issue
Block a user