Small packet dumper API change.

This commit is contained in:
Robin Sommer 2014-08-22 16:49:14 -07:00
parent caa55ad352
commit 0186061aa8
7 changed files with 8 additions and 16 deletions

View file

@ -1,4 +1,3 @@
- PktDumper: Move Dump() to public and remove Record()
- Wrap BPF_Program into namespace and clean up
- Add an interface for derived pkt source to run a BPF filter.
- Tests, in particular the packet dumping needs testing.

View file

@ -127,7 +127,7 @@ RETSIGTYPE watchdog(int /* signo */)
iosource::PktDumper::Packet p;
p.hdr = current_hdr;
p.data = current_pkt;
pkt_dumper->Record(&p);
pkt_dumper->Dump(&p);
}
}

View file

@ -1221,7 +1221,7 @@ Packet* Packet::Unserialize(UnserialInfo* info)
iosource::PktDumper::Packet dp;
dp.hdr = p->hdr;
dp.data = p->pkt;
dump->Record(&dp);
dump->Dump(&dp);
}
}
#endif

View file

@ -1394,7 +1394,7 @@ void NetSessions::DumpPacket(const struct pcap_pkthdr* hdr,
iosource::PktDumper::Packet p;
p.hdr = hdr;
p.data = pkt;
pkt_dumper->Record(&p);
pkt_dumper->Dump(&p);
}
else
@ -1407,7 +1407,7 @@ void NetSessions::DumpPacket(const struct pcap_pkthdr* hdr,
iosource::PktDumper::Packet p;
p.hdr = &h;
p.data = pkt;
pkt_dumper->Record(&p);
pkt_dumper->Dump(&p);
}
}

View file

@ -3235,7 +3235,7 @@ function dump_current_packet%(file_name: string%) : bool
iosource::PktDumper::Packet p;
p.hdr = hdr;
p.data = pkt;
addl_pkt_dumper->Record(&p);
addl_pkt_dumper->Dump(&p);
}
return new Val(! addl_pkt_dumper->IsError(), TYPE_BOOL);
@ -3300,7 +3300,7 @@ function dump_packet%(pkt: pcap_packet, file_name: string%) : bool
iosource::PktDumper::Packet p;
p.hdr = &hdr;
p.data = (*pkt_vl)[4]->AsString()->Bytes();
addl_pkt_dumper->Record(&p);
addl_pkt_dumper->Dump(&p);
}
return new Val(addl_pkt_dumper->IsError(), TYPE_BOOL);

View file

@ -50,11 +50,6 @@ int PktDumper::HdrSize() const
return is_open ? props.hdr_size : -1;
}
bool PktDumper::Record(const Packet* pkt)
{
return Dump(pkt);
}
void PktDumper::Opened(const Properties& arg_props)
{
is_open = true;

View file

@ -25,8 +25,10 @@ public:
int HdrSize() const;
bool Record(const Packet* pkt);
// PktSrc interface for derived classes to implement.
virtual void Close() = 0;
virtual void Open() = 0;
virtual bool Dump(const Packet* pkt) = 0;
protected:
// Methods to use by derived classed.
@ -41,10 +43,6 @@ protected:
void Closed();
void Error(const std::string& msg);
// PktSrc interface for derived classes to implement.
virtual bool Dump(const Packet* pkt) = 0;
private:
bool is_open;
Properties props;