#include "chameleon/error.h"
#include "chameleon/inetaddr.h"
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
Go to the source code of this file.
Classes | |
struct | SOCKETSTRUCT |
struct | SOCKETSETSTRUCT |
Creation and destruction | |
These functions initialize and de-initialize socket sets. A socket set is a group of sockets. They are used for the function Socket_Select. | |
CHIPCARD_API ERRORCODE | SocketSet_Create (SOCKETSETPTR ssp) |
CHIPCARD_API ERRORCODE | SocketSet_Destroy (SOCKETSETPTR ssp) |
CHIPCARD_API ERRORCODE | SocketSet_Clear (SOCKETSETPTR ssp) |
Add, remove, check sockets | |
These functions allow adding and removing sockets to/from a socket set as well as checking whether a specific socket is part of a socket set. | |
CHIPCARD_API ERRORCODE | SocketSet_AddSocket (SOCKETSETPTR ssp, const struct SOCKETSTRUCT *sp) |
CHIPCARD_API ERRORCODE | SocketSet_RemoveSocket (SOCKETSETPTR ssp, const struct SOCKETSTRUCT *sp) |
CHIPCARD_API int | SocketSet_HasSocket (SOCKETSETPTR ssp, const struct SOCKETSTRUCT *sp) |
Creation and Destruction | |
CHIPCARD_API SOCKETPTR | Socket_new () |
CHIPCARD_API void | Socket_free (SOCKETPTR sp) |
CHIPCARD_API ERRORCODE | Socket_Open (SOCKETPTR sp, SOCKETTYPE socketType) |
CHIPCARD_API ERRORCODE | Socket_Close (SOCKETPTR sp) |
Connecting and Disconnecting | |
These functions allow active and passive connections to other hosts. | |
CHIPCARD_API ERRORCODE | Socket_Connect (SOCKETPTR sp, const INETADDRESS *addr) |
CHIPCARD_API ERRORCODE | Socket_Bind (SOCKETPTR sp, const INETADDRESS *addr) |
CHIPCARD_API ERRORCODE | Socket_Listen (SOCKETPTR sp, int backlog) |
CHIPCARD_API ERRORCODE | Socket_Accept (SOCKETPTR sp, INETADDRESSPTR addr, SOCKETPTR newsock) |
Informational Functions | |
These functions return some usefull information about sockets or connections. | |
CHIPCARD_API SOCKETTYPE | Socket_GetSocketType (SOCKETPTR sp) |
CHIPCARD_API ERRORCODE | Socket_GetPeerAddr (SOCKETPTR sp, INETADDRESSPTR addr) |
CHIPCARD_API ERRORCODE | Socket_Select (SOCKETSETPTR rs, SOCKETSETPTR ws, SOCKETSETPTR xs, int timeout) |
CHIPCARD_API ERRORCODE | Socket_WaitForRead (SOCKETPTR sp, int timeout) |
CHIPCARD_API ERRORCODE | Socket_WaitForWrite (SOCKETPTR sp, int timeout) |
Data Exchange Functions | |
These functions handle exchange of data with other hosts via the Internet Protocol. | |
CHIPCARD_API ERRORCODE | Socket_Read (SOCKETPTR sp, char *buffer, int *bsize) |
CHIPCARD_API ERRORCODE | Socket_Write (SOCKETPTR sp, const char *buffer, int *bsize) |
CHIPCARD_API ERRORCODE | Socket_ReadFrom (SOCKETPTR sp, INETADDRESSPTR addr, char *buffer, int *bsize) |
CHIPCARD_API ERRORCODE | Socket_WriteTo (SOCKETPTR sp, const INETADDRESS *addr, const char *buffer, int *bsize) |
Socket Settings Functions | |
These functions manipulate settings on a socket. | |
CHIPCARD_API ERRORCODE | Socket_SetBlocking (SOCKETPTR sp, int fl) |
CHIPCARD_API ERRORCODE | Socket_SetBroadcast (SOCKETPTR sp, int fl) |
CHIPCARD_API ERRORCODE | Socket_GetSocketError (SOCKETPTR sp) |
CHIPCARD_API ERRORCODE | Socket_SetReuseAddress (SOCKETPTR sp, int fl) |
Defines | |
#define | SOCKET_ERROR_TYPE "Socket" |
#define | SOCKET_ERROR_BAD_SOCKETTYPE (-1) |
#define | SOCKET_ERROR_NOT_OPEN (-2) |
#define | SOCKET_ERROR_TIMEOUT (-3) |
#define | SOCKET_ERROR_IN_PROGRESS (-4) |
#define | SOCKET_ERROR_STARTUP (-5) |
#define | SOCKET_ERROR_INTERRUPTED (-6) |
#define | SOCKET_ERROR_UNSUPPORTED (-7) |
Enumerations | |
enum | SOCKETTYPE { SocketTypeTCP = 1, SocketTypeUDP, SocketTypeRAW, SocketTypeUnix } |
Functions | |
CHIPCARD_API ERRORCODE | Socket_ModuleInit () |
CHIPCARD_API ERRORCODE | Socket_ModuleFini () |
Variables | |
typedefCHIPCARD_API struct SOCKETSTRUCT * | SOCKETPTR |
typedefCHIPCARD_API struct SOCKETSETSTRUCT | SOCKETSET |
CHIPCARD_API typedef SOCKETSET * | SOCKETSETPTR |