This file implements an UDP interface. More...
#include "sbgInterface.h"
Go to the source code of this file.
Classes | |
struct | _SbgInterfaceUdp |
Macros | |
#define | SBG_INTERFACE_UDP_PACKET_MAX_SIZE (1400) |
Typedefs | |
typedef struct _SbgInterfaceUdp | SbgInterfaceUdp |
Functions | |
SBG_COMMON_LIB_API SbgErrorCode | sbgInterfaceUdpAllowBroadcast (SbgInterface *pHandle, bool allowBroadcast) |
SBG_COMMON_LIB_API SbgErrorCode | sbgInterfaceUdpCreate (SbgInterface *pHandle, sbgIpAddress remoteAddr, uint32_t remotePort, uint32_t localPort) |
SBG_COMMON_LIB_API SbgErrorCode | sbgInterfaceUdpDestroy (SbgInterface *pHandle) |
SBG_COMMON_LIB_API SbgErrorCode | sbgInterfaceUdpRead (SbgInterface *pHandle, void *pBuffer, size_t *pReadBytes, size_t bytesToRead) |
SBG_COMMON_LIB_API SbgErrorCode | sbgInterfaceUdpWrite (SbgInterface *pHandle, const void *pBuffer, size_t bytesToWrite) |
This file implements an UDP interface.
Copyright (C) 2013-2019, SBG Systems SAS. All rights reserved.
This source code is intended for use only by SBG Systems SAS and those that have explicit written permission to use it from SBG Systems SAS.
THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
Definition in file sbgInterfaceUdp.h.
#define SBG_INTERFACE_UDP_PACKET_MAX_SIZE (1400) |
Definition at line 34 of file sbgInterfaceUdp.h.
typedef struct _SbgInterfaceUdp SbgInterfaceUdp |
Structure that stores all internal data used by the UDP interface.
SBG_COMMON_LIB_API SbgErrorCode sbgInterfaceUdpAllowBroadcast | ( | SbgInterface * | pHandle, |
bool | allowBroadcast | ||
) |
Define if a socket can send broadcasted packets.
[in] | pInterface | Pointer on a valid UDP interface created using sbgInterfaceUdpCreate. |
[in] | allowBroadcast | Set to true to allow this socket to send broadcasted UDP packets. |
Definition at line 370 of file sbgInterfaceUdp.c.
SBG_COMMON_LIB_API SbgErrorCode sbgInterfaceUdpCreate | ( | SbgInterface * | pHandle, |
sbgIpAddress | remoteAddr, | ||
uint32_t | remotePort, | ||
uint32_t | localPort | ||
) |
Initialize an unconnected UDP interface for read and write operations.
If the remote address and port are zero, the interface waits for the first packet received on the local port and uses the source of that packet as its remote host. This provides a convenient way to create "server" UDP interfaces.
[in] | pHandle | Pointer on an allocated interface instance to initialize. |
[in] | remoteAddr | IP address to send data to. |
[in] | remotePort | Ethernet port to send data to. |
[in] | localPort | Ehternet port on which the interface is listening. |
SBG_COMMON_LIB_API SbgErrorCode sbgInterfaceUdpDestroy | ( | SbgInterface * | pHandle | ) |
Destroy an interface initialized using sbgInterfaceUdpCreate.
[in] | pInterface | Pointer on a valid UDP interface created using sbgInterfaceUdpCreate. |
Definition at line 315 of file sbgInterfaceUdp.c.
SBG_COMMON_LIB_API SbgErrorCode sbgInterfaceUdpRead | ( | SbgInterface * | pHandle, |
void * | pBuffer, | ||
size_t * | pReadBytes, | ||
size_t | bytesToRead | ||
) |
Try to read some data from an interface.
[in] | pHandle | Valid handle on an initialized interface. |
[in] | pBuffer | Pointer on an allocated buffer that can hold at least bytesToRead bytes of data. |
[out] | pReadBytes | Pointer on an uint32_t used to return the number of read bytes. |
[in] | bytesToRead | Number of bytes we would like to read. |
Try to read some data from an interface.
[in] | pHandle | Valid handle on an initialized interface. |
[in] | pBuffer | Pointer on an allocated buffer that can hold at least bytesToRead bytes of data. |
[out] | pReadBytes | Pointer on an uint32 used to return the number of read bytes. |
[in] | bytesToRead | Number of bytes we would like to read. |
Definition at line 529 of file sbgInterfaceUdp.c.
SBG_COMMON_LIB_API SbgErrorCode sbgInterfaceUdpWrite | ( | SbgInterface * | pHandle, |
const void * | pBuffer, | ||
size_t | bytesToWrite | ||
) |
Try to write some data to an interface.
[in] | pHandle | Valid handle on an initialized interface. |
[in] | pBuffer | Pointer on an allocated buffer that contains the data to write |
[in] | bytesToWrite | Number of bytes we would like to write. |
Definition at line 433 of file sbgInterfaceUdp.c.