int http_request_on_message_complete(http_parser* parser) { char *response; http_request_context *context = (http_request_context *)parser->data; http_request_callback callback = (http_request_callback)rxt_get_custom(context->request->url, routes, hw_route_compare_method); if (callback != NULL) { response = callback(context->request); http_server_write_response(parser, response); } else { // 404 Not Found. http_server_write_response(parser, (char *)response_404); } return 0; }
void http_flush_cb(vty_t* vty) { //if(vty->buf_size > 0) { int socket = vty->data->desc.socket; http_server_write_response(socket, vty->buffer, vty->buf_size); vty->buf_size = 0; *vty->buffer = 0; } }