OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ServicesSandesh Class Reference

#include <services_sandesh.h>

Public Member Functions

 ServicesSandesh ()
 
virtual ~ServicesSandesh ()
 
void HandleRequest (PktHandler::PktModuleName mod, std::string ctxt, bool more)
 
void MetadataHandleRequest (std::string ctxt, bool more)
 
void PktStatsSandesh (std::string ctxt, bool more)
 

Static Public Member Functions

static void MacToString (const unsigned char *mac, std::string &mac_str)
 
static std::string & DhcpMsgType (uint32_t msg_type)
 
static std::string & Dhcpv6MsgType (uint32_t msg_type)
 

Private Member Functions

std::string IntToString (uint32_t val)
 
std::string IntToHexString (uint32_t val)
 
void PktToHexString (uint8_t *pkt, int32_t len, std::string &msg)
 
std::string IpProtocol (uint16_t prot)
 
void DhcpStatsSandesh (std::string ctxt, bool more)
 
void Dhcpv6StatsSandesh (std::string ctxt, bool more)
 
void ArpStatsSandesh (std::string ctxt, bool more)
 
void BfdStatsSandesh (std::string ctxt, bool more)
 
void DnsStatsSandesh (std::string ctxt, bool more)
 
void IcmpStatsSandesh (std::string ctxt, bool more)
 
void IgmpStatsSandesh (std::string ctxt, bool more)
 
void Icmpv6StatsSandesh (std::string ctxt, bool more)
 
void ArpPktTrace (PktTrace::Pkt &pkt, ArpPktSandesh *resp)
 
void DhcpPktTrace (PktTrace::Pkt &pkt, DhcpPktSandesh *resp)
 
void Dhcpv6PktTrace (PktTrace::Pkt &pkt, Dhcpv6PktSandesh *resp)
 
void DnsPktTrace (PktTrace::Pkt &pkt, DnsPktSandesh *resp)
 
void IcmpPktTrace (PktTrace::Pkt &pkt, IcmpPktSandesh *resp)
 
void Icmpv6PktTrace (PktTrace::Pkt &pkt, Icmpv6PktSandesh *resp)
 
void OtherPktTrace (PktTrace::Pkt &pkt, PktSandesh *resp)
 
void FillPktData (PktTrace::Pkt &pkt, PktData &resp)
 
uint16_t FillVrouterHdr (PktTrace::Pkt &pkt, VrouterHdr &resp)
 
int FillMacHdr (struct ether_header *eth, MacHdr &resp)
 
void FillArpHdr (ether_arp *arp, ArpHdr &resp)
 
void FillIpv4Hdr (struct ip *ip, Ipv4Hdr &resp)
 
void FillIpv6Hdr (ip6_hdr *ip, Ipv6Hdr &resp)
 
void FillIcmpv4Hdr (struct icmp *icmp, Icmpv4Hdr &resp)
 
void FillIcmpv6Hdr (icmp6_hdr *icmp, Icmpv6Hdr &resp, int32_t len)
 
void FillUdpHdr (udphdr *udp, UdpHdr &resp)
 
void FillDhcpv4Options (Dhcpv4Options *opt, std::string &resp, std::string &other, int32_t len)
 
void FillDhcpv4Hdr (dhcphdr *dhcp, Dhcpv4Hdr &resp, int32_t len)
 
void FillDhcpv6Hdr (Dhcpv6Hdr *dhcp, Dhcpv6Header &resp, int32_t len)
 
void FillDnsHdr (dnshdr *dns, DnsHdr &resp, int32_t dnslen)
 
std::string FillOptionString (char *data, int32_t len, std::string msg)
 
std::string FillOptionInteger (uint32_t data, std::string msg)
 
std::string FillOptionIp (uint32_t data, std::string msg)
 
void FillHostRoutes (uint8_t *data, int len, std::string &resp)
 
 DISALLOW_COPY_AND_ASSIGN (ServicesSandesh)
 

Detailed Description

Definition at line 17 of file services_sandesh.h.

Constructor & Destructor Documentation

ServicesSandesh::ServicesSandesh ( )
inline

Definition at line 19 of file services_sandesh.h.

virtual ServicesSandesh::~ServicesSandesh ( )
inlinevirtual

Definition at line 20 of file services_sandesh.h.

Member Function Documentation

void ServicesSandesh::ArpPktTrace ( PktTrace::Pkt pkt,
ArpPktSandesh *  resp 
)
private

Definition at line 731 of file services_sandesh.cc.

Here is the call graph for this function:

void ServicesSandesh::ArpStatsSandesh ( std::string  ctxt,
bool  more 
)
private

Definition at line 211 of file services_sandesh.cc.

Here is the call graph for this function:

void ServicesSandesh::BfdStatsSandesh ( std::string  ctxt,
bool  more 
)
private

Definition at line 231 of file services_sandesh.cc.

Here is the call graph for this function:

std::string & ServicesSandesh::DhcpMsgType ( uint32_t  msg_type)
static

Definition at line 121 of file services_sandesh.cc.

void ServicesSandesh::DhcpPktTrace ( PktTrace::Pkt pkt,
DhcpPktSandesh *  resp 
)
private

Definition at line 743 of file services_sandesh.cc.

Here is the call graph for this function:

void ServicesSandesh::DhcpStatsSandesh ( std::string  ctxt,
bool  more 
)
private

Definition at line 167 of file services_sandesh.cc.

Here is the call graph for this function:

std::string & ServicesSandesh::Dhcpv6MsgType ( uint32_t  msg_type)
static

Definition at line 128 of file services_sandesh.cc.

void ServicesSandesh::Dhcpv6PktTrace ( PktTrace::Pkt pkt,
Dhcpv6PktSandesh *  resp 
)
private

Definition at line 764 of file services_sandesh.cc.

Here is the call graph for this function:

void ServicesSandesh::Dhcpv6StatsSandesh ( std::string  ctxt,
bool  more 
)
private

Definition at line 190 of file services_sandesh.cc.

Here is the call graph for this function:

ServicesSandesh::DISALLOW_COPY_AND_ASSIGN ( ServicesSandesh  )
private
void ServicesSandesh::DnsPktTrace ( PktTrace::Pkt pkt,
DnsPktSandesh *  resp 
)
private

Definition at line 784 of file services_sandesh.cc.

Here is the call graph for this function:

void ServicesSandesh::DnsStatsSandesh ( std::string  ctxt,
bool  more 
)
private

Definition at line 279 of file services_sandesh.cc.

Here is the call graph for this function:

void ServicesSandesh::FillArpHdr ( ether_arp *  arp,
ArpHdr &  resp 
)
private

Definition at line 420 of file services_sandesh.cc.

Here is the call graph for this function:

void ServicesSandesh::FillDhcpv4Hdr ( dhcphdr dhcp,
Dhcpv4Hdr &  resp,
int32_t  len 
)
private

Definition at line 659 of file services_sandesh.cc.

Here is the call graph for this function:

void ServicesSandesh::FillDhcpv4Options ( Dhcpv4Options opt,
std::string &  resp,
std::string &  other,
int32_t  len 
)
private

Definition at line 562 of file services_sandesh.cc.

Here is the call graph for this function:

void ServicesSandesh::FillDhcpv6Hdr ( Dhcpv6Hdr dhcp,
Dhcpv6Header &  resp,
int32_t  len 
)
private

Definition at line 686 of file services_sandesh.cc.

Here is the call graph for this function:

void ServicesSandesh::FillDnsHdr ( dnshdr dns,
DnsHdr &  resp,
int32_t  dnslen 
)
private

Definition at line 693 of file services_sandesh.cc.

Here is the call graph for this function:

void ServicesSandesh::FillHostRoutes ( uint8_t *  data,
int  len,
std::string &  resp 
)
private

Definition at line 537 of file services_sandesh.cc.

Here is the call graph for this function:

void ServicesSandesh::FillIcmpv4Hdr ( struct icmp *  icmp,
Icmpv4Hdr &  resp 
)
private

Definition at line 472 of file services_sandesh.cc.

Here is the call graph for this function:

void ServicesSandesh::FillIcmpv6Hdr ( icmp6_hdr *  icmp,
Icmpv6Hdr &  resp,
int32_t  len 
)
private

Definition at line 480 of file services_sandesh.cc.

Here is the call graph for this function:

void ServicesSandesh::FillIpv4Hdr ( struct ip *  ip,
Ipv4Hdr &  resp 
)
private

Definition at line 438 of file services_sandesh.cc.

Here is the call graph for this function:

void ServicesSandesh::FillIpv6Hdr ( ip6_hdr *  ip,
Ipv6Hdr &  resp 
)
private

Definition at line 454 of file services_sandesh.cc.

int ServicesSandesh::FillMacHdr ( struct ether_header *  eth,
MacHdr &  resp 
)
private

Definition at line 395 of file services_sandesh.cc.

Here is the call graph for this function:

std::string ServicesSandesh::FillOptionInteger ( uint32_t  data,
std::string  msg 
)
private

Definition at line 524 of file services_sandesh.cc.

std::string ServicesSandesh::FillOptionIp ( uint32_t  data,
std::string  msg 
)
private

Definition at line 531 of file services_sandesh.cc.

std::string ServicesSandesh::FillOptionString ( char *  data,
int32_t  len,
std::string  msg 
)
private

Definition at line 516 of file services_sandesh.cc.

void ServicesSandesh::FillPktData ( PktTrace::Pkt pkt,
PktData &  resp 
)
private

Definition at line 358 of file services_sandesh.cc.

void ServicesSandesh::FillUdpHdr ( udphdr *  udp,
UdpHdr &  resp 
)
private

Definition at line 508 of file services_sandesh.cc.

Here is the call graph for this function:

uint16_t ServicesSandesh::FillVrouterHdr ( PktTrace::Pkt pkt,
VrouterHdr &  resp 
)
private

Definition at line 373 of file services_sandesh.cc.

void ServicesSandesh::HandleRequest ( PktHandler::PktModuleName  mod,
std::string  ctxt,
bool  more = false 
)

Definition at line 852 of file services_sandesh.cc.

Here is the call graph for this function:

void ServicesSandesh::IcmpPktTrace ( PktTrace::Pkt pkt,
IcmpPktSandesh *  resp 
)
private

Definition at line 805 of file services_sandesh.cc.

Here is the call graph for this function:

void ServicesSandesh::IcmpStatsSandesh ( std::string  ctxt,
bool  more 
)
private

Definition at line 313 of file services_sandesh.cc.

Here is the call graph for this function:

void ServicesSandesh::Icmpv6PktTrace ( PktTrace::Pkt pkt,
Icmpv6PktSandesh *  resp 
)
private

Definition at line 819 of file services_sandesh.cc.

Here is the call graph for this function:

void ServicesSandesh::Icmpv6StatsSandesh ( std::string  ctxt,
bool  more 
)
private

Definition at line 324 of file services_sandesh.cc.

Here is the call graph for this function:

void ServicesSandesh::IgmpStatsSandesh ( std::string  ctxt,
bool  more 
)
private

Definition at line 344 of file services_sandesh.cc.

Here is the call graph for this function:

std::string ServicesSandesh::IntToHexString ( uint32_t  val)
private

Definition at line 98 of file services_sandesh.cc.

std::string ServicesSandesh::IntToString ( uint32_t  val)
private

Definition at line 92 of file services_sandesh.cc.

std::string ServicesSandesh::IpProtocol ( uint16_t  prot)
private

Definition at line 113 of file services_sandesh.cc.

Here is the call graph for this function:

void ServicesSandesh::MacToString ( const unsigned char *  mac,
std::string &  mac_str 
)
static

Definition at line 85 of file services_sandesh.cc.

void ServicesSandesh::MetadataHandleRequest ( std::string  ctxt,
bool  more = false 
)

Definition at line 938 of file services_sandesh.cc.

Here is the call graph for this function:

void ServicesSandesh::OtherPktTrace ( PktTrace::Pkt pkt,
PktSandesh *  resp 
)
private

Definition at line 837 of file services_sandesh.cc.

Here is the call graph for this function:

void ServicesSandesh::PktStatsSandesh ( std::string  ctxt,
bool  more 
)

Definition at line 135 of file services_sandesh.cc.

Here is the call graph for this function:

void ServicesSandesh::PktToHexString ( uint8_t *  pkt,
int32_t  len,
std::string &  msg 
)
private

Definition at line 104 of file services_sandesh.cc.


The documentation for this class was generated from the following files: