summaryrefslogtreecommitdiff
path: root/dev/ethertap.cc
diff options
context:
space:
mode:
Diffstat (limited to 'dev/ethertap.cc')
-rw-r--r--dev/ethertap.cc5
1 files changed, 2 insertions, 3 deletions
diff --git a/dev/ethertap.cc b/dev/ethertap.cc
index edc400760..1603a9bd3 100644
--- a/dev/ethertap.cc
+++ b/dev/ethertap.cc
@@ -169,7 +169,7 @@ EtherTap::detach()
}
bool
-EtherTap::recvPacket(PacketPtr &packet)
+EtherTap::recvPacket(PacketPtr packet)
{
if (dump)
dump->dump(packet);
@@ -219,8 +219,7 @@ EtherTap::process(int revent)
while (data_len != 0 && buffer_offset >= data_len + sizeof(u_int32_t)) {
PacketPtr packet;
- packet = new EtherPacket;
- packet->data = new uint8_t[data_len];
+ packet = new PacketData(data_len);
packet->length = data_len;
memcpy(packet->data, data, data_len);