shishi-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Fix GNUTLS server. [...]


From: shishi-commit
Subject: Fix GNUTLS server. [...]
Date: Tue, 16 Dec 2003 04:43:58 +0100

Commit from jas 2003-12-16 04:43 CET
Fix GNUTLS server.
Use error before listening stage, syslog later.
Module File name Revision
shishi src/shishid.c 1.68 >>> 1.69

shishi/src/shishid.c   1.68 >>> 1.69
Line 1057
    if (rc != 0)
      return rc;
 
+ #ifdef LOG_PERROR
+   openlog (PACKAGE, LOG_CONS | LOG_PERROR, LOG_DAEMON);
+ #else
+   openlog (PACKAGE, LOG_CONS, LOG_DAEMON);
+ #endif
+
    rc = kdc_setuid ();
    if (rc != 0)
      return rc;
Line 1210
  }
 
  static int
- setup (void)
- {
-   int rc;
-
-   rc = setup_fatal_krberror (handle);
-   if (rc != SHISHI_OK)
-     {
-       syslog (LOG_ERR, "Cannot allocate fatal error message\n");
-       return 1;
-     }
-
-   rc = launch ();
-
-   return rc;
- }
-
- static int
  init (void)
  {
-   int rc;
+   int err;
 
  #ifdef USE_STARTTLS
    if (!arg.quiet_flag)
      printf ("Initializing GNUTLS...\n");
-   fflush (stdout);
-   gnutls_global_init ();
-   gnutls_dh_params_init (&dh_params);
+   err = gnutls_global_init ();
+   if (err)
+     error (EXIT_FAILURE, 0, "Cannot initialize GNUTLS: %s (%d)",
+    gnutls_strerror (err), err);
+   err = gnutls_dh_params_init (&dh_params);
+   if (err)
+     error (EXIT_FAILURE, 0, "Cannot initialize GNUTLS DH parameters: %s (%d)",
+    gnutls_strerror (err), err);
+   err = gnutls_dh_params_generate2 (dh_params, DH_BITS);
+   if (err)
+     error (EXIT_FAILURE, 0, "Cannot generate GNUTLS DH parameters: %s (%d)",
+    gnutls_strerror (err), err);
    if (!arg.quiet_flag)
      printf ("Initializing GNUTLS...done\n");
-   fflush (stdout);
  #endif
 
-   rc = shishi_init_server_with_paths (&handle, arg.configuration_file_arg);
-   if (rc != SHISHI_OK)
-     {
-       syslog (LOG_ERR, "Aborting due to library initialization failure\n");
-       return 1;
-     }
+   err = shishi_init_server_with_paths (&handle, arg.configuration_file_arg);
+   if (err)
+     error (EXIT_FAILURE, 0, "Cannot initialize Shishi: %s (%d)",
+    shishi_strerror (err), err);
 
    if (arg.verbose_flag > 1)
      shishi_cfg (handle, "verbose");
Line 1261
    if (arg.verbose_flag > 4)
      shishi_cfg (handle, "verbose-crypto");
 
-   rc = shisa_init (&dbh);
-   if (rc != SHISA_OK)
-     {
-       syslog (LOG_ERR, "Aborting due to Shisa initialization failure\n");
-       return 1;
-     }
+   err = shisa_init (&dbh);
+   if (err)
+     error (EXIT_FAILURE, 0, "Cannot initialize Shisa: %s (%d)",
+    shisa_strerror (err), err);
+
+   err = setup_fatal_krberror (handle);
+   if (err)
+     error (EXIT_FAILURE, 0, "Cannot allocate fatal error packet: %s (%d)",
+    shisa_strerror (err), err);
 
-   rc = setup ();
+   err = launch ();
 
    shisa_done (dbh);
    shishi_done (handle);
 
-   return rc;
+   return err;
  }
 
  int
Line 1305
      arg.listen_arg = strdup (LISTEN_DEFAULT);
    parse_listen (arg.listen_arg);
 
- #ifdef LOG_PERROR
-   openlog (PACKAGE, LOG_CONS | LOG_PERROR, LOG_DAEMON);
- #else
-   openlog (PACKAGE, LOG_CONS, LOG_DAEMON);
- #endif
-
    rc = init ();
 
    free (arg.listen_arg);
Line 1318
    if (arg.setuid_arg)
      free (arg.setuid_arg);
 
-   closelog ();
-
    return rc;
  }



reply via email to

[Prev in Thread] Current Thread [Next in Thread]