⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 aaa_xml_data.cxx

📁 Diameter协议栈
💻 CXX
📖 第 1 页 / 共 2 页
字号:
   }   return (0);}int AAA_XMLDataRouteTable::svc(DOMNode *n){   AAA_LOG(LM_INFO, "(%P|%t)  Route Table:\n");   unsigned int expireTime;   std::string empty = "";   std::string tagName;      tagName = "expire_time";   OD_Utl_XMLDataUInt32 etime(tagName, expireTime);   etime.populate(n->getFirstChild());   AAA_ROUTE_TABLE()->ExpireTime(expireTime);   tagName = "route";   AAA_RouteEntry *newRte = NULL;      DOMNode *found = NULL, *sibling = n->getFirstChild();   while (sibling) {             ACE_NEW_RETURN(newRte, AAA_RouteEntry(empty), (-1));      AAA_XMLDataRoute route(tagName, *newRte);      if (route.populate(sibling, &found) == 0) {         if (AAA_ROUTE_TABLE()->Lookup(newRte->Realm())) {             AAA_LOG(LM_INFO, "(%P|%t)                        *Duplicate route (replacing previous)\n");         }         AAA_ROUTE_TABLE()->Add(*newRte);         sibling = found->getNextSibling();      }      else {          delete newRte;          break;      }   }   ACE_NEW_RETURN(newRte, AAA_RouteEntry(empty), (-1));   AAA_LOG(LM_INFO, "(%P|%t)  Default Route: \n");   tagName = "default_route";      AAA_XMLDataRoute def_route(tagName, *newRte);   if (def_route.populate(n->getFirstChild()) == 0) {       AAA_ROUTE_TABLE()->DefaultRoute(*newRte);   }   else {       delete newRte;   }      return (0);}int AAA_XMLDataTransportMngt::svc(DOMNode *n){   std::string tagName;   tagName = "identity";   OD_Utl_XMLDataString identity(tagName, payload.identity);   identity.populate(n->getFirstChild());   tagName = "realm";   OD_Utl_XMLDataString realm(tagName, payload.realm);   realm.populate(n->getFirstChild());   tagName = "tcp_port";   OD_Utl_XMLDataUInt32 tcp_port(tagName, payload.tcp_port);   tcp_port.populate(n->getFirstChild());     tagName = "tls_port";   OD_Utl_XMLDataUInt32 tls_port(tagName, payload.tls_port);   tls_port.populate(n->getFirstChild());     tagName = "watchdog_timeout";   OD_Utl_XMLDataUInt32 watchdog(tagName, payload.watchdog_timeout);   watchdog.populate(n->getFirstChild());     tagName = "retry_interval";   OD_Utl_XMLDataUInt32 retry(tagName, payload.retry_interval);   retry.populate(n->getFirstChild());   tagName = "request_retransmission_interval";   OD_Utl_XMLDataUInt32 retxint(tagName, payload.retx_interval);   retxint.populate(n->getFirstChild());   if (payload.retx_interval &&        (payload.retx_interval < AAA_ROUTER_MIN_RETX_INTERVAL)) {       payload.retx_interval = AAA_ROUTER_MIN_RETX_INTERVAL;   }   tagName = "max_request_retransmission_count";   OD_Utl_XMLDataUInt32 retxcnt(tagName, payload.retx_max_count);   retxcnt.populate(n->getFirstChild());   if (payload.retx_max_count &&        (payload.retx_max_count > AAA_ROUTER_MAX_RETX_COUNT)) {       payload.retx_max_count = AAA_ROUTER_MAX_RETX_COUNT;   }   tagName = "advertised_host_ip";   DOMNode *found, *sibling = n->getFirstChild();   while (sibling) {      std::string host_ip;      OD_Utl_XMLDataString hip(tagName, host_ip);            if (hip.populate(sibling, &found) == 0) {               std::string testAddr(host_ip + ":0");         ACE_INET_Addr hostAddr;                  if (! hostAddr.set(testAddr.data())) {             payload.advertised_host_ip.push_back(testAddr);          }         else {             AAA_LOG(LM_INFO, "(%P|%t) WARNING: Invalid Host IP Addr [%s], will be ignored\n",                      host_ip.data());         }         sibling = found->getNextSibling();      }      else {         break;      }   }     AAA_XMLDataTransportMngt::print(payload);   tagName = "peer_table";   AAA_XMLDataPeerTable peerTable(tagName, task);   peerTable.populate(n->getFirstChild());   tagName = "route_table";   AAA_XMLDataRouteTable routeTable(tagName);   routeTable.populate(n->getFirstChild());   return (0);}void AAA_XMLDataTransportMngt::print(AAA_DataTransportMngt &data){   AAA_LOG(LM_INFO, "(%P|%t)            Identity : %s\n",                  data.identity.data());   AAA_LOG(LM_INFO, "(%P|%t)               Realm : %s\n",                  data.realm.data());   AAA_LOG(LM_INFO, "(%P|%t)          TCP Listen : %d\n",                  data.tcp_port);   AAA_LOG(LM_INFO, "(%P|%t)          TLS Listen : %d\n",                  data.tls_port);   AAA_LOG(LM_INFO, "(%P|%t)   Watch-Dog timeout : %d\n",                  data.watchdog_timeout);   AAA_LOG(LM_INFO, "(%P|%t)   Request Retry Int : %d\n",                  data.retx_interval);   AAA_LOG(LM_INFO, "(%P|%t)   Max Request Retry : %d\n",                  data.retx_max_count);   AAA_LOG(LM_INFO, "(%P|%t)      Retry interval : %d\n",                  data.retry_interval);                    std::list<std::string>::iterator i = data.advertised_host_ip.begin();   for (; i != data.advertised_host_ip.end(); i++) {        AAA_LOG(LM_INFO, "(%P|%t)        Host IP Addr : %s\n",                        (*i).data());   }}int AAA_XMLDataAuthSession::svc(DOMNode *n){   std::string tagName;   tagName = "stateful";   OD_Utl_XMLDataUInt32 stateful(tagName, payload.stateful);   stateful.populate(n->getFirstChild());   if (payload.stateful) {       payload.stateful = AAA_SESSION_STATE_MAINTAINED;   }   else {       payload.stateful = AAA_SESSION_NO_STATE_MAINTAINED;   }   tagName = "session_timeout";   OD_Utl_XMLDataUInt32 session(tagName, payload.sessionTm);   session.populate(n->getFirstChild());   tagName = "lifetime_timeout";   OD_Utl_XMLDataUInt32 lifetime(tagName, payload.lifetimeTm);   lifetime.populate(n->getFirstChild());   tagName = "grace_period_timeout";   OD_Utl_XMLDataUInt32 grace(tagName, payload.graceTm);   grace.populate(n->getFirstChild());   tagName = "abort_retry_timeout";   OD_Utl_XMLDataUInt32 abort(tagName, payload.abortRetryTm);   abort.populate(n->getFirstChild());   AAA_XMLDataAuthSession::print(payload);   return (0);}void AAA_XMLDataAuthSession::print(AAA_DataAuthSession &data){   AAA_LOG(LM_INFO, "(%P|%t)       Stateful Auth : %d\n",                  data.stateful);   AAA_LOG(LM_INFO, "(%P|%t)          Session(T) : %d\n",                  data.sessionTm);   AAA_LOG(LM_INFO, "(%P|%t)         Lifetime(T) : %d\n",                  data.lifetimeTm);   AAA_LOG(LM_INFO, "(%P|%t)            Grace(T) : %d\n",                  data.graceTm);   AAA_LOG(LM_INFO, "(%P|%t)            Abort(T) : %d\n",                  data.abortRetryTm);}int AAA_XMLDataAcctSession::svc(DOMNode *n){   std::string tagName;   tagName = "session_timeout";   OD_Utl_XMLDataUInt32 session(tagName, payload.sessionTm);   session.populate(n->getFirstChild());   tagName = "interim_interval";   OD_Utl_XMLDataUInt32 interim(tagName, payload.recIntervalTm);   interim.populate(n->getFirstChild());   tagName = "realtime";   OD_Utl_XMLDataUInt32 realtime(tagName, payload.realtime);   realtime.populate(n->getFirstChild());   AAA_XMLDataAcctSession::print(payload);   return (0);}void AAA_XMLDataAcctSession::print(AAA_DataAcctSession &data){   AAA_LOG(LM_INFO, "(%P|%t)          Session(T) : %d\n",                  data.sessionTm);   AAA_LOG(LM_INFO, "(%P|%t)    Interim Interval : %d\n",                  data.recIntervalTm);   AAA_LOG(LM_INFO, "(%P|%t)  Real-Time Required : %d\n",                  data.realtime);}int AAA_XMLDataSessionMngt::svc(DOMNode *n){   std::string tagName;   tagName = "max_sessions";   OD_Utl_XMLDataUInt32 maxSessions(tagName, payload.maxSessions);   maxSessions.populate(n->getFirstChild());   tagName = "auth_sessions";   AAA_XMLDataAuthSession auth(tagName, payload.authSessions);   auth.populate(n->getFirstChild());   AAA_XMLDataSessionMngt::print(payload);   tagName = "acct_sessions";   AAA_XMLDataAcctSession acct(tagName, payload.acctSessions);   acct.populate(n->getFirstChild());   return (0);}void AAA_XMLDataSessionMngt::print(AAA_DataSessionMngt &data){   AAA_LOG(LM_INFO, "(%P|%t)            Max Sess : %d\n",                  data.maxSessions);}int AAA_XMLDataLogFlags::svc(DOMNode *n){   std::string tagName;   std::string debugFlg;   std::string traceFlg;   std::string infoFlg;   tagName = "debug";   OD_Utl_XMLDataString debug(tagName, debugFlg);   debug.populate(n->getFirstChild());   tagName = "trace";   OD_Utl_XMLDataString trace(tagName, traceFlg);   trace.populate(n->getFirstChild());   tagName = "info";   OD_Utl_XMLDataString info(tagName, infoFlg);   info.populate(n->getFirstChild());   payload.debug = (debugFlg == std::string("enabled")) ? true : false;   payload.trace = (traceFlg == std::string("enabled")) ? true : false;   payload.info  = (infoFlg == std::string("enabled")) ? true : false;   AAA_XMLDataLogFlags::print(payload);   return (0);}void AAA_XMLDataLogFlags::print(AAA_DataLogFlags &data){   AAA_LOG(LM_INFO, "(%P|%t)           Debug Log : %s\n",                  data.debug ? "enabled" : "disabled");   AAA_LOG(LM_INFO, "(%P|%t)           Trace Log : %s\n",                  data.trace ? "enabled" : "disabled");   AAA_LOG(LM_INFO, "(%P|%t)            Info Log : %s\n",                  data.info ? "enabled" : "disabled");}int AAA_XMLDataLogTargets::svc(DOMNode *n){   std::string tagName;   std::string consoleTarget;   std::string syslogTarget;   tagName = "console";   OD_Utl_XMLDataString console(tagName, consoleTarget);   console.populate(n->getFirstChild());   tagName = "syslog";   OD_Utl_XMLDataString syslog(tagName, syslogTarget);   syslog.populate(n->getFirstChild());   payload.console = (consoleTarget == std::string("enabled")) ? true : false;   payload.syslog  = (syslogTarget == std::string("enabled")) ? true : false;   AAA_XMLDataLogTargets::print(payload);   return (0);}void AAA_XMLDataLogTargets::print(AAA_DataLogTragetFlags &data){   AAA_LOG(LM_INFO, "(%P|%t)         Console Log : %s\n",                  data.console ? "enabled" : "disabled");   AAA_LOG(LM_INFO, "(%P|%t)          Syslog Log : %s\n",                  data.syslog  ? "enabled" : "disabled");}int AAA_XMLDataLog::svc(DOMNode *n){   std::string tagName;   tagName = "flags";   AAA_XMLDataLogFlags flags(tagName, payload.flags);   flags.populate(n->getFirstChild());   tagName = "target";   AAA_XMLDataLogTargets targets(tagName, payload.targets);   targets.populate(n->getFirstChild());   return (0);}int AAA_XMLDataRoot::svc(DOMNode *n){   std::string tagName;   tagName = "general";   AAA_XMLDataGeneral general(tagName,                              payload.general);   general.populate(n->getFirstChild());   tagName = "parser";   AAA_XMLDataParser parser(tagName, payload.parser);   parser.populate(n->getFirstChild());   tagName = "transport_mngt";   AAA_XMLDataTransportMngt transport(tagName,                                      payload.transport,                                      task);   transport.populate(n->getFirstChild());   tagName = "session_mngt";   AAA_XMLDataSessionMngt session(tagName,                                  payload.session);   session.populate(n->getFirstChild());   tagName = "log";   AAA_XMLDataLog log(tagName, payload.log);   log.populate(n->getFirstChild());   return (0);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -