diff --git a/src/guacd/connection.c b/src/guacd/connection.c index ef767acb..a5b98adf 100644 --- a/src/guacd/connection.c +++ b/src/guacd/connection.c @@ -278,10 +278,13 @@ static int guacd_route_connection(guacd_proc_map* map, guac_socket* socket) { proc = guacd_proc_map_retrieve(map, identifier); new_process = 0; - /* Warn if requested connection does not exist */ - if (proc == NULL) - guacd_log(GUAC_LOG_INFO, "Connection \"%s\" does not exist.", - identifier); + /* Warn and ward off client if requested connection does not exist */ + if (proc == NULL) { + guacd_log(GUAC_LOG_INFO, "Connection \"%s\" does not exist", identifier); + guac_protocol_send_error(socket, "No such connection.", + GUAC_PROTOCOL_STATUS_RESOURCE_NOT_FOUND); + } + else guacd_log(GUAC_LOG_INFO, "Joining existing connection \"%s\"", identifier);