Support struct tunnel
This commit is contained in:
@@ -1,23 +1,16 @@
|
||||
#include "packet_priv.h"
|
||||
#include "packet_utils.h"
|
||||
|
||||
int packet_get_layer(const struct packet *pkt, int idx, struct layer *out)
|
||||
{
|
||||
if (pkt == NULL || out == NULL)
|
||||
const struct raw_layer *raw = packet_get_raw_layer(pkt, idx);
|
||||
if (raw == NULL)
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (idx < 0 || idx >= pkt->layers_used)
|
||||
else
|
||||
{
|
||||
return -1;
|
||||
layer_convert(raw, out);
|
||||
return 0;
|
||||
}
|
||||
|
||||
const struct raw_layer *raw = &pkt->layers[idx];
|
||||
out->proto = raw->proto;
|
||||
out->header_len = raw->hdr_len;
|
||||
out->payload_len = raw->pld_len;
|
||||
out->header.raw = raw->hdr_ptr;
|
||||
out->payload = raw->pld_ptr;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user