[Openvas-commits] r10557 - in trunk/gsa: . src

scm-commit@wald.intevation.org scm-commit at wald.intevation.org
Wed Mar 16 06:31:48 CET 2011


Author: mattm
Date: 2011-03-16 06:31:47 +0100 (Wed, 16 Mar 2011)
New Revision: 10557

Modified:
   trunk/gsa/ChangeLog
   trunk/gsa/src/gsad.c
   trunk/gsa/src/gsad_omp.c
   trunk/gsa/src/gsad_omp.h
Log:
	Tell the user when the login fails because the manager is down.

	* src/gsad.c (exec_omp_post): Update authenticate call.  Add message if
	manager is down.

	* src/gsad_omp.c (is_omp_authenticated): Remove.  Now authenticate_omp.
	(authenticate_omp): New function.  Was is_omp_authenticated.  Add "manager
	down" return.

	* src/gsad_omp.h: Update header accordingly.

Modified: trunk/gsa/ChangeLog
===================================================================
--- trunk/gsa/ChangeLog	2011-03-16 05:09:25 UTC (rev 10556)
+++ trunk/gsa/ChangeLog	2011-03-16 05:31:47 UTC (rev 10557)
@@ -1,5 +1,18 @@
 2011-03-16  Matthew Mundell <matthew.mundell at greenbone.net>
 
+	Tell the user when the login fails because the manager is down.
+
+	* src/gsad.c (exec_omp_post): Update authenticate call.  Add message if
+	manager is down.
+
+	* src/gsad_omp.c (is_omp_authenticated): Remove.  Now authenticate_omp.
+	(authenticate_omp): New function.  Was is_omp_authenticated.  Add "manager
+	down" return.
+
+	* src/gsad_omp.h: Update header accordingly.
+
+2011-03-16  Matthew Mundell <matthew.mundell at greenbone.net>
+
 	* src/html/gsad.xsl (error_dialog): Get token from param.
 	(gsad_response): New template.  From omp.xsl.
 

Modified: trunk/gsa/src/gsad.c
===================================================================
--- trunk/gsa/src/gsad.c	2011-03-16 05:09:25 UTC (rev 10556)
+++ trunk/gsa/src/gsad.c	2011-03-16 05:31:47 UTC (rev 10557)
@@ -1782,18 +1782,11 @@
     {
       if (con_info->req_parms.login && con_info->req_parms.password)
         {
-          if (is_omp_authenticated (con_info->req_parms.login,
-                                    con_info->req_parms.password))
+          int ret;
+          ret = authenticate_omp (con_info->req_parms.login,
+                                  con_info->req_parms.password);
+          if (ret)
             {
-              user_t *user;
-              user = user_add (con_info->req_parms.login,
-                               con_info->req_parms.password);
-              /* Redirect to get_tasks. */
-              *user_return = user;
-              return 1;
-            }
-          else
-            {
               time_t now;
               gchar *xml;
               char *res;
@@ -1804,16 +1797,26 @@
 
               xml = g_strdup_printf ("<login_page>"
                                      "<message>"
-                                     "Login failed."
+                                     "Login failed.%s"
                                      "</message>"
                                      "<token></token>"
                                      "<time>%s</time>"
                                      "</login_page>",
+                                     ret == 2 ? "  Manager is down." : "",
                                      ctime_now);
               res = xsl_transform (xml);
               g_free (xml);
               con_info->response = res;
             }
+          else
+            {
+              user_t *user;
+              user = user_add (con_info->req_parms.login,
+                               con_info->req_parms.password);
+              /* Redirect to get_tasks. */
+              *user_return = user;
+              return 1;
+            }
         }
       else
         {

Modified: trunk/gsa/src/gsad_omp.c
===================================================================
--- trunk/gsa/src/gsad_omp.c	2011-03-16 05:09:25 UTC (rev 10556)
+++ trunk/gsa/src/gsad_omp.c	2011-03-16 05:31:47 UTC (rev 10557)
@@ -10442,10 +10442,10 @@
  * @param[in]  username  Username.
  * @param[in]  password  Password.
  *
- * @return TRUE if valid, FALSE otherwise.
+ * @return 0 if valid, 1 failed, 2 manager down.
  */
-gboolean
-is_omp_authenticated (const gchar * username, const gchar * password)
+int
+authenticate_omp (const gchar * username, const gchar * password)
 {
   gnutls_session_t session;
   int socket;
@@ -10458,8 +10458,8 @@
                                 manager_port);
   if (socket == -1)
     {
-      tracef ("is_omp_authenticated failed to acquire socket!\n");
-      return FALSE;
+      tracef ("%s failed to acquire socket!\n", __FUNCTION__);
+      return 2;
     }
 
 #ifdef DEBUG_AUTH
@@ -10478,12 +10478,12 @@
   if (auth == 0)
     {
       openvas_server_close (socket, session);
-      return TRUE;
+      return 0;
     }
   else
     {
       openvas_server_close (socket, session);
-      return FALSE;
+      return 1;
     }
 }
 

Modified: trunk/gsa/src/gsad_omp.h
===================================================================
--- trunk/gsa/src/gsad_omp.h	2011-03-16 05:09:25 UTC (rev 10556)
+++ trunk/gsa/src/gsad_omp.h	2011-03-16 05:31:47 UTC (rev 10557)
@@ -250,7 +250,7 @@
 char * restore_omp (credentials_t *, const char *);
 char * empty_trashcan_omp (credentials_t *);
 
-gboolean is_omp_authenticated (const gchar *, const gchar *);
+int authenticate_omp (const gchar *, const gchar *);
 
 char * get_nvts_omp (credentials_t *, const char *);
 



More information about the Openvas-commits mailing list