1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
|
# Civetweb API Reference
### `mg_set_user_connection_data( conn, data );`
### Parameters
| Parameter | Type | Description |
| :--- | :--- | :--- |
|**`conn`**|`struct mg_connection *`|connection to add the user data|
|**`data`**|`void *`|Pointer to the user data|
### Return Value
*none*
### Description
The function `mg_set_user_connection_data()` can be used to set a user defined
data pointer attached to a connection. This value can be read using
`mg_get_user_connection_data()`.
Any call to `mg_set_user_connection_data()` will overwrite a previously
assigned user data pointer.
`mg_set_user_connection_data()` requires a non-const
`struct mg_connection *` to set the user data pointer. It is save to use the
`const struct mg_connection *` passed to a websocket connect handler (with a
const cast), since `const` just means you must not use `mg_read()` or
`mg_write()` in this context.
Alternatively, you can use the `init_connection` callback in
`struct mg_callbacks` to set the user data pointer.
In this case, typically `init_connection` is used to allocate memory for
a user defined `struct`, while `connection_close` is used to free this
memory again.
### See Also
* [`mg_get_user_connection_data();`](mg_get_user_connection_data.md)
* [`struct mg_callbacks`](mg_callbacks.md)
* [`mg_set_websocket_handler();`](mg_set_websocket_handler.md)
* [`mg_read();`](mg_read.md)
* [`mg_write();`](mg_write.md)
|