#include "sbgInterfaceUdp.h"
#include <arpa/inet.h>
#include <netinet/in.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <unistd.h>
#include <fcntl.h>
Go to the source code of this file.
Macros | |
#define | closesocket(socket) close(socket); |
#define | INVALID_SOCKET (SOCKET)(~0) |
#define | NO_ERROR (0) |
#define | SD_BOTH (2) |
#define | SOCKADDR struct sockaddr |
#define | SOCKADDR_IN struct sockaddr_in |
#define | SOCKET int |
#define | SOCKET_ERROR (-1) |
Functions | |
SbgErrorCode | sbgInterfaceUdpAllowBroadcast (SbgInterface *pHandle, bool allowBroadcast) |
SbgErrorCode | sbgInterfaceUdpCreate (SbgInterface *pHandle, sbgIpAddress remoteAddr, uint32 remotePort, uint32 localPort) |
SbgErrorCode | sbgInterfaceUdpDestroy (SbgInterface *pHandle) |
SbgErrorCode | sbgInterfaceUdpInitSockets (void) |
SbgErrorCode | sbgInterfaceUdpRead (SbgInterface *pHandle, void *pBuffer, size_t *pReadBytes, size_t bytesToRead) |
SbgErrorCode | sbgInterfaceUdpSetSocketBlocking (SOCKET socketHandle, bool blocking) |
SbgErrorCode | sbgInterfaceUdpWrite (SbgInterface *pHandle, const void *pBuffer, size_t bytesToWrite) |
SbgErrorCode | sbgInterfaceUpdateCloseSockets (void) |
#define closesocket | ( | socket | ) | close(socket); |
Definition at line 24 of file sbgInterfaceUdp.c.
#define INVALID_SOCKET (SOCKET)(~0) |
Definition at line 19 of file sbgInterfaceUdp.c.
#define NO_ERROR (0) |
Definition at line 21 of file sbgInterfaceUdp.c.
#define SD_BOTH (2) |
Definition at line 22 of file sbgInterfaceUdp.c.
#define SOCKADDR struct sockaddr |
Definition at line 17 of file sbgInterfaceUdp.c.
#define SOCKADDR_IN struct sockaddr_in |
Definition at line 16 of file sbgInterfaceUdp.c.
#define SOCKET int |
Definition at line 18 of file sbgInterfaceUdp.c.
#define SOCKET_ERROR (-1) |
Definition at line 20 of file sbgInterfaceUdp.c.
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.
SbgErrorCode sbgInterfaceUdpCreate | ( | SbgInterface * | pHandle, |
sbgIpAddress | remoteAddr, | ||
uint32 | remotePort, | ||
uint32 | localPort | ||
) |
Initialize an unconnected UDP interface for read and write operations. An UDP interface can send some data to an output ip address and port and read all received data on a input port.
[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. |
Definition at line 158 of file sbgInterfaceUdp.c.
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.
SbgErrorCode sbgInterfaceUdpInitSockets | ( | void | ) |
Initialize the socket API.
Definition at line 36 of file sbgInterfaceUdp.c.
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 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.
SbgErrorCode sbgInterfaceUdpSetSocketBlocking | ( | SOCKET | socketHandle, |
bool | blocking | ||
) |
Define if a socket should block or not on receive and send calls.
[in] | socketHandle | The socket handle to change. |
[in] | blocking | Set to true for a blocking socket or false for a non blocking socket. |
Definition at line 92 of file sbgInterfaceUdp.c.
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.
SbgErrorCode sbgInterfaceUpdateCloseSockets | ( | void | ) |
Uninitialize the socket API.
Definition at line 64 of file sbgInterfaceUdp.c.