[Openvas-commits] r8190 - in trunk/openvas-manager: . src

scm-commit@wald.intevation.org scm-commit at wald.intevation.org
Sat Jun 26 13:50:06 CEST 2010


Author: mattm
Date: 2010-06-26 13:50:01 +0200 (Sat, 26 Jun 2010)
New Revision: 8190

Modified:
   trunk/openvas-manager/ChangeLog
   trunk/openvas-manager/src/omp.c
Log:
	* src/omp.c (omp_xml_handle_end_element): In CLIENT_GET_REPORTS add the
	always exit on internal error within the loop.

Modified: trunk/openvas-manager/ChangeLog
===================================================================
--- trunk/openvas-manager/ChangeLog	2010-06-26 11:19:58 UTC (rev 8189)
+++ trunk/openvas-manager/ChangeLog	2010-06-26 11:50:01 UTC (rev 8190)
@@ -1,5 +1,10 @@
 2010-06-26  Matthew Mundell <matthew.mundell at greenbone.net>
 
+	* src/omp.c (omp_xml_handle_end_element): In CLIENT_GET_REPORTS add the
+	always exit on internal error within the loop.
+
+2010-06-26  Matthew Mundell <matthew.mundell at greenbone.net>
+
 	Remove GET_RULES.
 
 	* src/omp.c (help_text, client_state_t): Remove GET_RULES element.

Modified: trunk/openvas-manager/src/omp.c
===================================================================
--- trunk/openvas-manager/src/omp.c	2010-06-26 11:19:58 UTC (rev 8189)
+++ trunk/openvas-manager/src/omp.c	2010-06-26 11:50:01 UTC (rev 8190)
@@ -8218,8 +8218,10 @@
                                          __FUNCTION__,
                                          get_error->message);
                               g_error_free (get_error);
-                              SEND_TO_CLIENT_OR_FAIL
-                               (XML_INTERNAL_ERROR ("get_reports"));
+                              internal_error_send_to_client (error);
+                              get_reports_data_reset (get_reports_data);
+                              set_client_state (CLIENT_AUTHENTIC);
+                              return;
                             }
                           else
                             {
@@ -8272,7 +8274,10 @@
               if (mkdtemp (xml_dir) == NULL)
                 {
                   g_warning ("%s: g_mkdtemp failed\n", __FUNCTION__);
-                  SEND_TO_CLIENT_OR_FAIL (XML_INTERNAL_ERROR ("get_reports"));
+                  internal_error_send_to_client (error);
+                  get_reports_data_reset (get_reports_data);
+                  set_client_state (CLIENT_AUTHENTIC);
+                  return;
                 }
               else if (xml_file = g_strdup_printf ("%s/report.xml", xml_dir),
                        print_report_xml (report,
@@ -8284,7 +8289,10 @@
                                          get_reports_data->min_cvss_base))
                 {
                   g_free (xml_file);
-                  SEND_TO_CLIENT_OR_FAIL (XML_INTERNAL_ERROR ("get_reports"));
+                  internal_error_send_to_client (error);
+                  get_reports_data_reset (get_reports_data);
+                  set_client_state (CLIENT_AUTHENTIC);
+                  return;
                 }
               else
                 {
@@ -8300,10 +8308,16 @@
                                  xsl_file);
                       g_free (xsl_file);
                       g_free (xml_file);
+#if 0
                       /* This is a missing resource, however the resource is
                         * the responsibility of the manager admin. */
                       SEND_TO_CLIENT_OR_FAIL
                        (XML_INTERNAL_ERROR ("get_reports"));
+#endif
+                      internal_error_send_to_client (error);
+                      get_reports_data_reset (get_reports_data);
+                      set_client_state (CLIENT_AUTHENTIC);
+                      return;
                     }
                   else
                     {
@@ -8338,8 +8352,10 @@
                                      command);
                           g_free (command);
                           g_free (pdf_file);
-                          SEND_TO_CLIENT_OR_FAIL
-                           (XML_INTERNAL_ERROR ("get_reports"));
+                          internal_error_send_to_client (error);
+                          get_reports_data_reset (get_reports_data);
+                          set_client_state (CLIENT_AUTHENTIC);
+                          return;
                         }
                       else
                         {
@@ -8363,8 +8379,10 @@
                                          __FUNCTION__,
                                          get_error->message);
                               g_error_free (get_error);
-                              SEND_TO_CLIENT_OR_FAIL
-                               (XML_INTERNAL_ERROR ("get_reports"));
+                              internal_error_send_to_client (error);
+                              get_reports_data_reset (get_reports_data);
+                              set_client_state (CLIENT_AUTHENTIC);
+                              return;
                             }
                           else
                             {
@@ -8418,7 +8436,10 @@
               if (mkdtemp (latex_dir) == NULL)
                 {
                   g_warning ("%s: g_mkdtemp failed\n", __FUNCTION__);
-                  SEND_TO_CLIENT_OR_FAIL (XML_INTERNAL_ERROR ("get_reports"));
+                  internal_error_send_to_client (error);
+                  get_reports_data_reset (get_reports_data);
+                  set_client_state (CLIENT_AUTHENTIC);
+                  return;
                 }
               else if (latex_file = g_strdup_printf ("%s/report.tex",
                                                      latex_dir),
@@ -8431,7 +8452,10 @@
                                            get_reports_data->min_cvss_base))
                 {
                   g_free (latex_file);
-                  SEND_TO_CLIENT_OR_FAIL (XML_INTERNAL_ERROR ("get_reports"));
+                  internal_error_send_to_client (error);
+                  get_reports_data_reset (get_reports_data);
+                  set_client_state (CLIENT_AUTHENTIC);
+                  return;
                 }
               else
                 {
@@ -8479,8 +8503,10 @@
                                  __FUNCTION__,
                                  pdf_file);
                       g_free (pdf_file);
-                      SEND_TO_CLIENT_OR_FAIL
-                       (XML_INTERNAL_ERROR ("get_reports"));
+                      internal_error_send_to_client (error);
+                      get_reports_data_reset (get_reports_data);
+                      set_client_state (CLIENT_AUTHENTIC);
+                      return;
                     }
                   /* RATS: ignore, command is defined above. */
                   else if (ret = system (command),
@@ -8496,8 +8522,10 @@
                       close (pdf_fd);
                       g_free (pdf_file);
                       g_free (command);
-                      SEND_TO_CLIENT_OR_FAIL
-                       (XML_INTERNAL_ERROR ("get_reports"));
+                      internal_error_send_to_client (error);
+                      get_reports_data_reset (get_reports_data);
+                      set_client_state (CLIENT_AUTHENTIC);
+                      return;
                     }
                   else
                     {
@@ -8522,8 +8550,10 @@
                                      __FUNCTION__,
                                      get_error->message);
                           g_error_free (get_error);
-                          SEND_TO_CLIENT_OR_FAIL
-                           (XML_INTERNAL_ERROR ("get_reports"));
+                          internal_error_send_to_client (error);
+                          get_reports_data_reset (get_reports_data);
+                          set_client_state (CLIENT_AUTHENTIC);
+                          return;
                         }
                       else
                         {
@@ -8574,7 +8604,10 @@
               if (mkdtemp (xml_dir) == NULL)
                 {
                   g_warning ("%s: g_mkdtemp failed\n", __FUNCTION__);
-                  SEND_TO_CLIENT_OR_FAIL (XML_INTERNAL_ERROR ("get_reports"));
+                  internal_error_send_to_client (error);
+                  get_reports_data_reset (get_reports_data);
+                  set_client_state (CLIENT_AUTHENTIC);
+                  return;
                 }
               else if (xml_file = g_strdup_printf ("%s/report.xml", xml_dir),
                        print_report_xml (report,
@@ -8586,7 +8619,10 @@
                                          get_reports_data->min_cvss_base))
                 {
                   g_free (xml_file);
-                  SEND_TO_CLIENT_OR_FAIL (XML_INTERNAL_ERROR ("get_reports"));
+                  internal_error_send_to_client (error);
+                  get_reports_data_reset (get_reports_data);
+                  set_client_state (CLIENT_AUTHENTIC);
+                  return;
                 }
               else
                 {
@@ -8606,10 +8642,10 @@
                     {
                       g_free (xsl_file);
                       g_free (xml_file);
-                      SEND_TO_CLIENT_OR_FAIL
-                       (XML_ERROR_SYNTAX ("get_reports",
-                                          "Bogus report format in format"
-                                          " attribute"));
+                      internal_error_send_to_client (error);
+                      get_reports_data_reset (get_reports_data);
+                      set_client_state (CLIENT_AUTHENTIC);
+                      return;
                     }
                   else
                     {
@@ -8641,8 +8677,10 @@
                                      command);
                           g_free (command);
                           g_free (output_file);
-                          SEND_TO_CLIENT_OR_FAIL
-                           (XML_INTERNAL_ERROR ("get_reports"));
+                          internal_error_send_to_client (error);
+                          get_reports_data_reset (get_reports_data);
+                          set_client_state (CLIENT_AUTHENTIC);
+                          return;
                         }
                       else
                         {
@@ -8666,8 +8704,10 @@
                                          __FUNCTION__,
                                          get_error->message);
                               g_error_free (get_error);
-                              SEND_TO_CLIENT_OR_FAIL
-                               (XML_INTERNAL_ERROR ("get_reports"));
+                              internal_error_send_to_client (error);
+                              get_reports_data_reset (get_reports_data);
+                              set_client_state (CLIENT_AUTHENTIC);
+                              return;
                             }
                           else
                             {



More information about the Openvas-commits mailing list