Function
Soupwebsocket_server_process_handshake
Declaration [src]
gboolean
soup_websocket_server_process_handshake (
SoupServerMessage* msg,
const char* expected_origin,
char** protocols,
GPtrArray* supported_extensions,
GList** accepted_extensions
)
Description [src]
Examines the method and request headers in msg and (assuming msg
contains a valid handshake request), fills in the handshake response.
If expected_origin is non-NULL, then only requests containing a matching
“Origin” header will be accepted. If protocols is non-NULL, then
only requests containing a compatible “Sec-WebSocket-Protocols”
header will be accepted. If supported_extensions is non-NULL, then
only requests containing valid supported extensions in
“Sec-WebSocket-Extensions” header will be accepted. The accepted extensions
will be returned in accepted_extensions parameter if non-NULL.
This is a low-level function; if you use
soup_server_add_websocket_handler() to handle accepting WebSocket
connections, it will call this for you.
Parameters
msg |
SoupServerMessage |
|
|
| The data is owned by the caller of the function. | |
expected_origin |
const char* |
Expected Origin header. |
|
The argument can be NULL. | |
| The data is owned by the caller of the function. | |
| The value is a NUL terminated UTF-8 string. | |
protocols |
An array of char* |
Allowed WebSocket protocols. |
|
The argument can be NULL. | |
The array must be NULL-terminated. | |
| The data is owned by the caller of the function. | |
| Each element is a NUL terminated UTF-8 string. | |
supported_extensions |
An array of None |
List of supported extension types. |
|
The argument can be NULL. | |
| The data is owned by the caller of the function. | |
accepted_extensions |
A list of None |
A
|
|
| The argument will be set by the function. | |
The argument can be NULL. | |
| The called function takes ownership of the data, and is responsible for freeing it. |