summaryrefslogtreecommitdiff
path: root/src/dealpkt/plug_support.c
diff options
context:
space:
mode:
authoryangwei <[email protected]>2024-06-07 04:14:33 +0800
committeryangwei <[email protected]>2024-06-11 05:21:59 +0800
commitfca4f4dc8c9082ff9f940aca0621ad5d71743169 (patch)
tree7c72502f891a2dd01a265441c8b26864769fcb2a /src/dealpkt/plug_support.c
parent4005f8800a67560ec386c1388bfb1c2433c0dabd (diff)
API upgrade, MESA_detain_rawpkt_data_get0v4.3.58
Diffstat (limited to 'src/dealpkt/plug_support.c')
-rw-r--r--src/dealpkt/plug_support.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/dealpkt/plug_support.c b/src/dealpkt/plug_support.c
index d82585b..2f025da 100644
--- a/src/dealpkt/plug_support.c
+++ b/src/dealpkt/plug_support.c
@@ -27,10 +27,13 @@ static struct segment_id_list *segment_id_list_dup(sapp_mem_type_t type, int tid
return dlist;
}
-inline void *MESA_detain_rawpkt_get0(struct detain_pkt *pkt)
+const char *MESA_detain_rawpkt_data_get0(struct streaminfo *pstream, struct detain_pkt *pkt, int *data_sz)
{
- if(pkt==NULL)return NULL;
- return (void *)pkt->original;
+ if(data_sz==NULL)return NULL;
+ if(pkt==NULL || pkt->original == NULL)return NULL;
+ struct streaminfo_private *pstream_pr = (struct streaminfo_private *)pstream;
+ *data_sz = pkt->replica.raw_pkt_len - pstream_pr->offset_to_raw_pkt_hdr;
+ return (const char *)((const char *)pkt->replica.raw_pkt_data + pstream_pr->offset_to_raw_pkt_hdr);
}
struct detain_pkt* MESA_rawpkt_detain(const struct streaminfo *pstream, const void *rawpkt)