Module: kamailio
Branch: master
Commit: bac9707163082e7e0ca60c2c02eb1102df8d227b
URL:
https://github.com/kamailio/kamailio/commit/bac9707163082e7e0ca60c2c02eb110…
Author: Carsten Bock <carsten(a)ng-voice.com>
Committer: Carsten Bock <carsten(a)ng-voice.com>
Date: 2015-07-02T12:22:35+02:00
cdp: Evaluate the supported_vendor_id-AVP during CER/CEA
---
Modified: modules/cdp/peerstatemachine.c
---
Diff:
https://github.com/kamailio/kamailio/commit/bac9707163082e7e0ca60c2c02eb110…
Patch:
https://github.com/kamailio/kamailio/commit/bac9707163082e7e0ca60c2c02eb110…
---
diff --git a/modules/cdp/peerstatemachine.c b/modules/cdp/peerstatemachine.c
index 375443b..f7ec548 100644
--- a/modules/cdp/peerstatemachine.c
+++ b/modules/cdp/peerstatemachine.c
@@ -722,11 +722,25 @@ void save_peer_applications(peer *p,AAAMessage *msg)
switch (avp->code){
case AVP_Auth_Application_Id:
id = get_4bytes(avp->data.s);
- add_peer_application(p,id,0,DP_AUTHORIZATION);
+ add_peer_application(p,id,0,DP_AUTHORIZATION);
+ avp_vendor = AAAFindMatchingAVP(msg,0,AVP_Supported_Vendor_Id,0,0);
+ while (avp_vendor) {
+ vendor = get_4bytes(avp_vendor->data.s);
+ LM_DBG("Found Supported Vendor for Application %i: %i\n",
DP_AUTHORIZATION, vendor);
+ add_peer_application(p,id,vendor,DP_AUTHORIZATION);
+ avp_vendor =
AAAFindMatchingAVP(msg,avp_vendor->next,AVP_Supported_Vendor_Id,0,0);
+ }
break;
case AVP_Acct_Application_Id:
id = get_4bytes(avp->data.s);
add_peer_application(p,id,0,DP_ACCOUNTING);
+ avp_vendor = AAAFindMatchingAVP(msg,0,AVP_Supported_Vendor_Id,0,0);
+ while (avp_vendor) {
+ vendor = get_4bytes(avp_vendor->data.s);
+ LM_DBG("Found Supported Vendor for Application %i: %i\n", DP_ACCOUNTING,
vendor);
+ add_peer_application(p,id,vendor,DP_ACCOUNTING);
+ avp_vendor =
AAAFindMatchingAVP(msg,avp_vendor->next,AVP_Supported_Vendor_Id,0,0);
+ }
break;
case AVP_Vendor_Specific_Application_Id:
group = AAAUngroupAVPS(avp->data);