summaryrefslogtreecommitdiff
path: root/lib/avtp_pipeline/platform/Linux/rawsock/simple_rawsock.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/avtp_pipeline/platform/Linux/rawsock/simple_rawsock.h')
-rw-r--r--lib/avtp_pipeline/platform/Linux/rawsock/simple_rawsock.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/lib/avtp_pipeline/platform/Linux/rawsock/simple_rawsock.h b/lib/avtp_pipeline/platform/Linux/rawsock/simple_rawsock.h
index db0ef1f3..2bbf8649 100644
--- a/lib/avtp_pipeline/platform/Linux/rawsock/simple_rawsock.h
+++ b/lib/avtp_pipeline/platform/Linux/rawsock/simple_rawsock.h
@@ -1,5 +1,6 @@
/*************************************************************************************************************
Copyright (c) 2012-2015, Symphony Teleca Corporation, a Harman International Industries, Incorporated company
+Copyright (c) 2016-2017, Harman International Industries, Incorporated
All rights reserved.
Redistribution and use in source and binary forms, with or without
@@ -68,7 +69,10 @@ bool simpleRawsockTxSetMark(void *pvRawsock, int mark);
bool simpleRawsockTxSetHdr(void *pvRawsock, hdr_info_t *pHdr);
// Release a TX frame, and mark it as ready to send
-bool simpleRawsockTxFrameReady(void *pvRawsock, U8 *pBuffer, unsigned int len);
+bool simpleRawsockTxFrameReady(void *pvRawsock, U8 *pBuffer, unsigned int len, U64 timeNsec);
+
+// Send all packets that are ready (i.e. tell kernel to send them)
+int simpleRawsockSend(void *pvRawsock);
// Get a RX frame
U8* simpleRawsockGetRxFrame(void *pvRawsock, U32 timeout, unsigned int *offset, unsigned int *len);
@@ -76,7 +80,13 @@ U8* simpleRawsockGetRxFrame(void *pvRawsock, U32 timeout, unsigned int *offset,
// Setup the rawsock to receive multicast packets
bool simpleRawsockRxMulticast(void *pvRawsock, bool add_membership, const U8 addr[ETH_ALEN]);
+// Allows for filtering of AVTP subtypes at the rawsock level for rawsock implementations that aren't able to
+// delivery the same packet to multiple sockets.
+bool simpleRawsockRxAVTPSubtype(void *rawsock, U8 subtype);
+
// Get the socket used for this rawsock; can be used for poll/select
int simpleRawsockGetSocket(void *pvRawsock);
+bool simpleRawsockRelRxFrame(void *pvRawsock, U8 *pFrame);
+
#endif