Barracuda Application Server C/C++ Reference
Native APIs, integration guides, and platform interfaces
WebSocketServer.h File Reference
#include <DynBuffer.h>
Include dependency graph for WebSocketServer.h:

Go to the source code of this file.

Classes

struct  WSSCB
 WebSocket Server Connection Callback Interface: provides an interface between your application and the WebSocket server. More...
 
struct  WSS
 WebSocket Server (WSS) More...
 

Macros

#define WSSCB_constructor(o, frame, close, ping)    (o)->frameFp=frame,(o)->closeFp=close,(o)->pingFp=ping
 Initialize callback storage. More...
 
#define WSS_write(o, data, len, isTxt)   WSS_rawWrite(o, data, len, isTxt?1:2)
 Send one complete, unmasked server frame using blocking transport writes. More...
 
#define WSS_isValid(o)   SoDispCon_isValid((SoDispCon*)o)
 Check the local transport handle. More...
 

Typedefs

typedef void(* WSSCB_Frame) (struct WSSCB *o, struct WSS *wss, void *data, int len, int text)
 Receive a complete unfragmented text or binary frame. More...
 
typedef void(* WSSCB_Ping) (struct WSSCB *o, struct WSS *wss, void *data, int len)
 Optional notification after the internal pong send attempt succeeds. More...
 
typedef void(* WSSCB_Close) (struct WSSCB *o, struct WSS *wss, int status)
 Notify closure after the underlying connection has been closed. More...
 
typedef struct WSSCB WSSCB
 WebSocket Server Connection Callback Interface: provides an interface between your application and the WebSocket server. More...
 
typedef struct WSS WSS
 WebSocket Server (WSS) More...
 

Functions

BA_API void WSS_constructor (WSS *o, WSSCB *cb, SoDisp *disp, int startSize, int expandSize)
 Initialize an unconnected WebSocket object. More...
 
BA_API void WSS_destructor (WSS *o)
 Close the transport and free receive storage, without a WebSocket close handshake or close callback. More...
 
BA_API int WSS_upgrade (WSS *o, HttpRequest *req)
 Perform the server handshake and take over the request's connection. More...
 
BA_API int WSS_connect (WSS *o, HttpConnection *con)
 Take an HTTP connection after its WebSocket handshake is complete. More...
 
BA_API int WSS_rawWrite (WSS *o, const void *data, int len, int opCode)
 Send one final server frame with a caller-selected opcode. More...
 
BA_API int WSS_close (WSS *o, int statusCode)
 Attempt to send a close frame, then close the transport immediately. More...