Added MG_WS_HANDSHAKE

This commit is contained in:
Sergey Lyubka 2014-04-09 11:55:36 +01:00
parent d8b4db37a0
commit 05d7b7c8bc
2 changed files with 4 additions and 2 deletions

View File

@ -2631,7 +2631,9 @@ static void send_websocket_handshake_if_requested(struct mg_connection *conn) {
*key = mg_get_header(conn, "Sec-WebSocket-Key");
if (ver != NULL && key != NULL) {
conn->is_websocket = 1;
send_websocket_handshake(conn, key);
if (call_user(MG_CONN_2_CONN(conn), MG_WS_HANDSHAKE) == MG_FALSE) {
send_websocket_handshake(conn, key);
}
}
}

View File

@ -67,7 +67,7 @@ enum mg_event {
MG_REQUEST, // If callback returns MG_FALSE, Mongoose continues with req
MG_REPLY, // If callback returns MG_FALSE, Mongoose closes connection
MG_CLOSE, // Connection is closed, callback return value is ignored
MG_LUA, // Called before LSP page invoked
MG_WS_HANDSHAKE, // New websocket connection, handshake request
MG_HTTP_ERROR // If callback returns MG_FALSE, Mongoose continues with err
};
typedef int (*mg_handler_t)(struct mg_connection *, enum mg_event);