[Openvas-commits] r8429 - in trunk/openvas-manager: . src
scm-commit@wald.intevation.org
scm-commit at wald.intevation.org
Thu Jul 15 01:37:09 CEST 2010
Author: mattm
Date: 2010-07-15 01:37:05 +0200 (Thu, 15 Jul 2010)
New Revision: 8429
Modified:
trunk/openvas-manager/ChangeLog
trunk/openvas-manager/src/omp.c
Log:
Reduce GET_VERSION to single fixed version. Enable GET_VERSION before
authentication.
* src/omp.c (client_state_t): Add CLIENT_GET_VERSION_AUTHENTIC.
(omp_xml_handle_start_element): Add GET_VERSION check to CLIENT_TOP.
Improve first command error message. Close a single COMMANDS if in
one or more COMMANDS when the first command error occurs. Use new
special state for GET_VERSION after authenticate.
(omp_xml_handle_end_element): Reduce GET_VERSION response. Check which
state to use after GET_VERSION.
Modified: trunk/openvas-manager/ChangeLog
===================================================================
--- trunk/openvas-manager/ChangeLog 2010-07-14 23:05:22 UTC (rev 8428)
+++ trunk/openvas-manager/ChangeLog 2010-07-14 23:37:05 UTC (rev 8429)
@@ -1,5 +1,18 @@
2010-07-14 Matthew Mundell <matthew.mundell at greenbone.net>
+ Reduce GET_VERSION to single fixed version. Enable GET_VERSION before
+ authentication.
+
+ * src/omp.c (client_state_t): Add CLIENT_GET_VERSION_AUTHENTIC.
+ (omp_xml_handle_start_element): Add GET_VERSION check to CLIENT_TOP.
+ Improve first command error message. Close a single COMMANDS if in
+ one or more COMMANDS when the first command error occurs. Use new
+ special state for GET_VERSION after authenticate.
+ (omp_xml_handle_end_element): Reduce GET_VERSION response. Check which
+ state to use after GET_VERSION.
+
+2010-07-14 Matthew Mundell <matthew.mundell at greenbone.net>
+
* src/openvasmd_report_html.xsl (report): Leave sorting to Manager.
2010-07-13 Matthew Mundell <matthew.mundell at greenbone.net>
Modified: trunk/openvas-manager/src/omp.c
===================================================================
--- trunk/openvas-manager/src/omp.c 2010-07-14 23:05:22 UTC (rev 8428)
+++ trunk/openvas-manager/src/omp.c 2010-07-14 23:37:05 UTC (rev 8429)
@@ -2091,6 +2091,7 @@
CLIENT_GET_TARGETS,
CLIENT_GET_TASKS,
CLIENT_GET_VERSION,
+ CLIENT_GET_VERSION_AUTHENTIC,
CLIENT_HELP,
CLIENT_MODIFY_REPORT,
CLIENT_MODIFY_REPORT_COMMENT,
@@ -2567,6 +2568,12 @@
switch (client_state)
{
case CLIENT_TOP:
+ if (strcasecmp ("GET_VERSION", element_name) == 0)
+ {
+ set_client_state (CLIENT_GET_VERSION);
+ break;
+ }
+ /*@fallthrough@*/
case CLIENT_COMMANDS:
if (strcasecmp ("AUTHENTICATE", element_name) == 0)
{
@@ -2590,11 +2597,14 @@
// TODO: If one of other commands, STATUS_ERROR_MUST_AUTH
if (send_to_client
(XML_ERROR_SYNTAX ("omp",
- "First command must be AUTHENTICATE")))
+ "First command must be AUTHENTICATE,"
+ " COMMANDS or GET_VERSION")))
{
error_send_to_client (error);
return;
}
+ if (client_state == CLIENT_COMMANDS)
+ send_to_client ("</commands_response>");
g_set_error (error, G_MARKUP_ERROR, G_MARKUP_ERROR_UNKNOWN_ELEMENT,
"Must authenticate first.");
}
@@ -3194,7 +3204,7 @@
set_client_state (CLIENT_GET_TASKS);
}
else if (strcasecmp ("GET_VERSION", element_name) == 0)
- set_client_state (CLIENT_GET_VERSION);
+ set_client_state (CLIENT_GET_VERSION_AUTHENTIC);
else if (strcasecmp ("HELP", element_name) == 0)
set_client_state (CLIENT_HELP);
else if (strcasecmp ("MODIFY_CONFIG", element_name) == 0)
@@ -9038,12 +9048,16 @@
}
case CLIENT_GET_VERSION:
+ case CLIENT_GET_VERSION_AUTHENTIC:
SEND_TO_CLIENT_OR_FAIL ("<get_version_response"
" status=\"" STATUS_OK "\""
" status_text=\"" STATUS_OK_TEXT "\">"
- "<version preferred=\"yes\">1.0</version>"
+ "<version>1.0</version>"
"</get_version_response>");
- set_client_state (CLIENT_AUTHENTIC);
+ if (client_state)
+ set_client_state (CLIENT_AUTHENTIC);
+ else
+ set_client_state (CLIENT_TOP);
break;
case CLIENT_GET_SCHEDULES:
More information about the Openvas-commits
mailing list