Network Services API  2.50.00.07
Data Fields
SlNetIf_Config_t Struct Reference

SlNetIf_Config_t structure contains all the function callbacks that are expected to be filled by the relevant network stack interface
Each interface has different capabilities, so not all the API's must be supported therefore an API's can be defined as: More...

#include <ti/net/slnetif.h>

Collaboration diagram for SlNetIf_Config_t:
Collaboration graph

Data Fields

int16_t(* sockCreate )(void *ifContext, int16_t domain, int16_t type, int16_t protocol, void **sdContext)
 
int32_t(* sockClose )(int16_t sd, void *sdContext)
 
int32_t(* sockShutdown )(int16_t sd, void *sdContext, int16_t how)
 
int16_t(* sockAccept )(int16_t sd, void *sdContext, SlNetSock_Addr_t *addr, SlNetSocklen_t *addrlen, uint8_t flags, void **acceptedSdContext)
 
int32_t(* sockBind )(int16_t sd, void *sdContext, const SlNetSock_Addr_t *addr, int16_t addrlen)
 
int32_t(* sockListen )(int16_t sd, void *sdContext, int16_t backlog)
 
int32_t(* sockConnect )(int16_t sd, void *sdContext, const SlNetSock_Addr_t *addr, SlNetSocklen_t addrlen, uint8_t flags)
 
int32_t(* sockGetPeerName )(int16_t sd, void *sdContext, SlNetSock_Addr_t *addr, SlNetSocklen_t *addrlen)
 
int32_t(* sockGetLocalName )(int16_t sd, void *sdContext, SlNetSock_Addr_t *addr, SlNetSocklen_t *addrlen)
 
int32_t(* sockSelect )(void *ifContext, int16_t nsds, SlNetSock_SdSet_t *readsds, SlNetSock_SdSet_t *writesds, SlNetSock_SdSet_t *exceptsds, SlNetSock_Timeval_t *timeout)
 
int32_t(* sockSetOpt )(int16_t sd, void *sdContext, int16_t level, int16_t optname, void *optval, SlNetSocklen_t optlen)
 
int32_t(* sockGetOpt )(int16_t sd, void *sdContext, int16_t level, int16_t optname, void *optval, SlNetSocklen_t *optlen)
 
int32_t(* sockRecv )(int16_t sd, void *sdContext, void *buf, uint32_t len, uint32_t flags)
 
int32_t(* sockRecvFrom )(int16_t sd, void *sdContext, void *buf, uint32_t len, uint32_t flags, SlNetSock_Addr_t *from, SlNetSocklen_t *fromlen)
 
int32_t(* sockSend )(int16_t sd, void *sdContext, const void *buf, uint32_t len, uint32_t flags)
 
int32_t(* sockSendTo )(int16_t sd, void *sdContext, const void *buf, uint32_t len, uint32_t flags, const SlNetSock_Addr_t *to, SlNetSocklen_t tolen)
 
int32_t(* sockstartSec )(int16_t sd, void *sdContext, SlNetSockSecAttrib_t *secAttrib, uint8_t flags)
 
int32_t(* utilGetHostByName )(void *ifContext, char *name, const uint16_t nameLen, uint32_t *ipAddr, uint16_t *ipAddrLen, const uint8_t family)
 
int32_t(* ifGetIPAddr )(void *ifContext, SlNetIfAddressType_e addrType, uint16_t *addrConfig, uint32_t *ipAddr)
 
int32_t(* ifGetConnectionStatus )(void *ifContext)
 
int32_t(* ifLoadSecObj )(void *ifContext, uint16_t objType, char *objName, int16_t objNameLen, uint8_t *objBuff, int16_t objBuffLen)
 
int32_t(* ifCreateContext )(uint16_t ifID, const char *ifName, void **ifContext)
 

Detailed Description

SlNetIf_Config_t structure contains all the function callbacks that are expected to be filled by the relevant network stack interface
Each interface has different capabilities, so not all the API's must be supported therefore an API's can be defined as:

Note
Interface that is not supporting a non-mandatory API should set it to NULL in its function list
See also
SlNetIf_Config_t

Field Documentation

§ sockCreate

int16_t(* SlNetIf_Config_t::sockCreate) (void *ifContext, int16_t domain, int16_t type, int16_t protocol, void **sdContext)

Mandatory API
The actual implementation of the interface for SlNetSock_create

§ sockClose

int32_t(* SlNetIf_Config_t::sockClose) (int16_t sd, void *sdContext)

Mandatory API
The actual implementation of the interface for SlNetSock_close

§ sockShutdown

int32_t(* SlNetIf_Config_t::sockShutdown) (int16_t sd, void *sdContext, int16_t how)

Non-Mandatory API
The actual implementation of the interface for SlNetSock_shutdown

§ sockAccept

int16_t(* SlNetIf_Config_t::sockAccept) (int16_t sd, void *sdContext, SlNetSock_Addr_t *addr, SlNetSocklen_t *addrlen, uint8_t flags, void **acceptedSdContext)

Non-Mandatory API
The actual implementation of the interface for SlNetSock_accept

§ sockBind

int32_t(* SlNetIf_Config_t::sockBind) (int16_t sd, void *sdContext, const SlNetSock_Addr_t *addr, int16_t addrlen)

Non-Mandatory API
The actual implementation of the interface for SlNetSock_bind

§ sockListen

int32_t(* SlNetIf_Config_t::sockListen) (int16_t sd, void *sdContext, int16_t backlog)

Non-Mandatory API
The actual implementation of the interface for SlNetSock_listen

§ sockConnect

int32_t(* SlNetIf_Config_t::sockConnect) (int16_t sd, void *sdContext, const SlNetSock_Addr_t *addr, SlNetSocklen_t addrlen, uint8_t flags)

Non-Mandatory API
The actual implementation of the interface for SlNetSock_connect

§ sockGetPeerName

int32_t(* SlNetIf_Config_t::sockGetPeerName) (int16_t sd, void *sdContext, SlNetSock_Addr_t *addr, SlNetSocklen_t *addrlen)

Non-Mandatory API
The actual implementation of the interface for SlNetSock_getPeerName

§ sockGetLocalName

int32_t(* SlNetIf_Config_t::sockGetLocalName) (int16_t sd, void *sdContext, SlNetSock_Addr_t *addr, SlNetSocklen_t *addrlen)

Non-Mandatory API
The actual implementation of the interface for SlNetSock_getSockName

§ sockSelect

int32_t(* SlNetIf_Config_t::sockSelect) (void *ifContext, int16_t nsds, SlNetSock_SdSet_t *readsds, SlNetSock_SdSet_t *writesds, SlNetSock_SdSet_t *exceptsds, SlNetSock_Timeval_t *timeout)

Mandatory API
The actual implementation of the interface for SlNetSock_select

§ sockSetOpt

int32_t(* SlNetIf_Config_t::sockSetOpt) (int16_t sd, void *sdContext, int16_t level, int16_t optname, void *optval, SlNetSocklen_t optlen)

Mandatory API
The actual implementation of the interface for SlNetSock_setOpt

§ sockGetOpt

int32_t(* SlNetIf_Config_t::sockGetOpt) (int16_t sd, void *sdContext, int16_t level, int16_t optname, void *optval, SlNetSocklen_t *optlen)

Mandatory API
The actual implementation of the interface for SlNetSock_getOpt

§ sockRecv

int32_t(* SlNetIf_Config_t::sockRecv) (int16_t sd, void *sdContext, void *buf, uint32_t len, uint32_t flags)

Non-Mandatory API
The actual implementation of the interface for SlNetSock_recv

§ sockRecvFrom

int32_t(* SlNetIf_Config_t::sockRecvFrom) (int16_t sd, void *sdContext, void *buf, uint32_t len, uint32_t flags, SlNetSock_Addr_t *from, SlNetSocklen_t *fromlen)

Mandatory API
The actual implementation of the interface for SlNetSock_recvFrom

§ sockSend

int32_t(* SlNetIf_Config_t::sockSend) (int16_t sd, void *sdContext, const void *buf, uint32_t len, uint32_t flags)

Non-Mandatory API
The actual implementation of the interface for SlNetSock_send

§ sockSendTo

int32_t(* SlNetIf_Config_t::sockSendTo) (int16_t sd, void *sdContext, const void *buf, uint32_t len, uint32_t flags, const SlNetSock_Addr_t *to, SlNetSocklen_t tolen)

Mandatory API
The actual implementation of the interface for SlNetSock_sendTo

§ sockstartSec

int32_t(* SlNetIf_Config_t::sockstartSec) (int16_t sd, void *sdContext, SlNetSockSecAttrib_t *secAttrib, uint8_t flags)

Non-Mandatory API
The actual implementation of the interface for SlNetSock_startSec

§ utilGetHostByName

int32_t(* SlNetIf_Config_t::utilGetHostByName) (void *ifContext, char *name, const uint16_t nameLen, uint32_t *ipAddr, uint16_t *ipAddrLen, const uint8_t family)

Non-Mandatory API
The actual implementation of the interface for SlNetUtil_getHostByName

§ ifGetIPAddr

int32_t(* SlNetIf_Config_t::ifGetIPAddr) (void *ifContext, SlNetIfAddressType_e addrType, uint16_t *addrConfig, uint32_t *ipAddr)

Mandatory API
The actual implementation of the interface for SlNetIf_getIPAddr

§ ifGetConnectionStatus

int32_t(* SlNetIf_Config_t::ifGetConnectionStatus) (void *ifContext)

Mandatory API
The actual implementation of the interface for SlNetIf_getConnectionStatus

§ ifLoadSecObj

int32_t(* SlNetIf_Config_t::ifLoadSecObj) (void *ifContext, uint16_t objType, char *objName, int16_t objNameLen, uint8_t *objBuff, int16_t objBuffLen)

Non-Mandatory API
The actual implementation of the interface for SlNetIf_loadSecObj

§ ifCreateContext

int32_t(* SlNetIf_Config_t::ifCreateContext) (uint16_t ifID, const char *ifName, void **ifContext)

Non-Mandatory API
The actual implementation of the interface for SlNetIf_add


The documentation for this struct was generated from the following file:
© Copyright 1995-2018, Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy policy | Terms of use | Terms of sale