📄 diameter_nasreq_aareq_parser.cxx
字号:
if (data.ArapSecurity.IsSet()) { c = cm.acquire("ARAP-Security"); data.ArapSecurity.CopyTo(*c, AAA_AVP_INTEGER32_TYPE); aaaMessage.acl.add(c); } if (data.ArapSecurityData.IsSet()) { c = cm.acquire("ARAP-Security-Data"); data.ArapSecurityData.CopyTo(*c, AAA_AVP_STRING_TYPE); aaaMessage.acl.add(c); } if (data.LoginIpHost.IsSet()) { c = cm.acquire("Login-IP-Host"); data.LoginIpHost.CopyTo(*c, AAA_AVP_STRING_TYPE); aaaMessage.acl.add(c); } if (data.LoginIpv6Host.IsSet()) { c = cm.acquire("Login-IPv6-Host"); data.LoginIpv6Host.CopyTo(*c, AAA_AVP_STRING_TYPE); aaaMessage.acl.add(c); } if (data.LoginLatGroup.IsSet()) { c = cm.acquire("Login-LAT-Group"); data.LoginLatGroup.CopyTo(*c, AAA_AVP_STRING_TYPE); aaaMessage.acl.add(c); } if (data.LoginLatNode.IsSet()) { c = cm.acquire("Login-LAT-Node"); data.LoginLatNode.CopyTo(*c, AAA_AVP_STRING_TYPE); aaaMessage.acl.add(c); } if (data.LoginLatPort.IsSet()) { c = cm.acquire("Login-LAT-Port"); data.LoginLatPort.CopyTo(*c, AAA_AVP_STRING_TYPE); aaaMessage.acl.add(c); } if (data.LoginLatService.IsSet()) { c = cm.acquire("Login-LAT-Service"); data.LoginLatService.CopyTo(*c, AAA_AVP_STRING_TYPE); aaaMessage.acl.add(c); } if (data.Tunneling.IsSet()) { c = cm.acquire("Tunneling"); data.Tunneling.CopyTo(*c); aaaMessage.acl.add(c); } if (data.ProxyInfo.size()>0) { c = cm.acquire("Proxy-Info"); data.ProxyInfo.CopyTo(*c); aaaMessage.acl.add(c); } if (data.RouteRecord.IsSet()) { c = cm.acquire("Route-Record"); data.RouteRecord.CopyTo(*c, AAA_AVP_STRING_TYPE); aaaMessage.acl.add(c); } if (data.Avp.IsSet()) { c = cm.acquire("AVP"); data.Avp.CopyTo(*c, AAA_AVP_CUSTOM_TYPE); aaaMessage.acl.add(c); }}template<> void AA_RequestParser::parseRawToApp(){ AA_RequestData &data = *getAppData(); AAAMessage &aaaMessage = *getRawData(); data.Clear(); // AAAAvpContainerEntry *e; AAAAvpContainer *c; if ((c = aaaMessage.acl.search("Session-Id"))) { data.SessionId.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Auth-Application-Id"))) { if (NasreqApplicationId != (*c)[0]->dataRef(Type2Type<diameter_unsigned32_t>())) { AAA_LOG(LM_ERROR, "[%N] Unexpected application id.\n"); throw (PayloadError); } } if ((c = aaaMessage.acl.search("Origin-Host"))) { data.OriginHost.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Origin-Realm"))) { data.OriginRealm.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Destination-Realm"))) { data.DestinationRealm.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Auth-Request-Type"))) { data.AuthRequestType.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Destination-Host"))) { data.DestinationHost.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Nas-Identifier"))) { data.NasIdentifier.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Nas-IP-Address"))) { data.NasIpAddress.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Nas-IPv6-Address"))) { data.NasIpv6Address.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Nas-Port"))) { data.NasPort.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Nas-Port-Id"))) { data.NasPortId.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Nas-Port-Type"))) { data.NasPortType.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Origin-State-Id"))) { data.OriginStateId.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Port-Limit"))) { data.PortLimit.CopyFrom(*c); } if ((c = aaaMessage.acl.search("User-Name"))) { data.UserName.CopyFrom(*c); } if ((c = aaaMessage.acl.search("User-Password"))) { data.UserPassword.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Service-Type"))) { data.ServiceType.CopyFrom(*c); } if ((c = aaaMessage.acl.search("State"))) { data.State.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Authorization-Lifetime"))) { data.AuthorizationLifetime.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Auth-Grace-Period"))) { data.AuthGracePeriod.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Auth-Session-State"))) { data.AuthSessionState.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Callback-Number"))) { data.CallbackNumber.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Called-Station-Id"))) { data.CalledStationId.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Calling-Station-Id"))) { data.CallingStationId.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Originating-Line-Info"))) { data.OriginatingLineInfo.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Connect-Info"))) { data.ConnectInfo.CopyFrom(*c); } if ((c = aaaMessage.acl.search("CHAP-Auth"))) { data.ChapAuth.CopyFrom(*c); } if ((c = aaaMessage.acl.search("CHAP-Challenge"))) { data.ChapChallenge.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Framed-Compression"))) { data.FramedCompression.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Framed-Interface-Id"))) { data.FramedInterfaceId.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Framed-IP-Address"))) { data.FramedIpAddress.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Framed-IPv6-Prefix"))) { data.FramedIpv6Prefix.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Framed-IP-Netmask"))) { data.FramedIpAddress.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Framed-MTU"))) { data.FramedMtu = (*c)[0]->dataRef(Type2Type<diameter_unsigned32_t>()); } if ((c = aaaMessage.acl.search("Framed-Protocol"))) { data.FramedProtocol.CopyFrom(*c); } if ((c = aaaMessage.acl.search("ARAP-Password"))) { data.ArapPassword.CopyFrom(*c); } if ((c = aaaMessage.acl.search("ARAP-Challenge-Response"))) { data.ArapChallengeResponse.CopyFrom(*c); } if ((c = aaaMessage.acl.search("ARAP-Security"))) { data.ArapSecurity.CopyFrom(*c); } if ((c = aaaMessage.acl.search("ARAP-Security-Data"))) { data.ArapSecurityData.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Login-IP-Host"))) { data.LoginIpHost.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Login-IPv6-Host"))) { data.LoginIpv6Host.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Login-LAT-Group"))) { data.LoginLatGroup.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Login-LAT-Node"))) { data.LoginLatNode.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Login-LAT-Port"))) { data.LoginLatPort.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Login-LAT-Service"))) { data.LoginLatService.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Tunneling"))) { data.Tunneling.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Proxy-Info"))) { data.ProxyInfo.CopyFrom(*c); } if ((c = aaaMessage.acl.search("Route-Record"))) { data.RouteRecord.CopyFrom(*c); } if ((c = aaaMessage.acl.search("AVP"))) { data.Avp.CopyFrom(*c); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -