Remove catchAllAlias in favor of defaultAlias; add better handling of slave servers...
[hcoop/domtool2.git] / src / openssl.sml
index 9ebb959..d309a61 100644 (file)
@@ -45,16 +45,16 @@ fun ssl_err s =
        else
            (print (ZString.toML lib);
             print ":");
-           if C.Ptr.isNull func then
-               ()
-           else
-               (print (ZString.toML func);
-                print ":");
-               if C.Ptr.isNull reason then
-                   ()
-               else
-                   print (ZString.toML reason);
-               print "\n"
+       if C.Ptr.isNull func then
+           ()
+       else
+           (print (ZString.toML func);
+            print ":");
+       if C.Ptr.isNull reason then
+           ()
+       else
+           print (ZString.toML reason);
+       print "\n"
     end
 
 val readBuf : (C.uchar, C.rw) C.obj C.ptr' = C.alloc' C.S.uchar (Word.fromInt Config.bufSize)
@@ -231,29 +231,29 @@ fun writeString (bio, s) =
     (writeInt (bio, size s);
      writeString' (bio, s))
 
-fun context (chain, key, root) =
+fun context printErr (chain, key, root) =
     let
        val context = F_OpenSSL_SML_CTX_new.f' (F_OpenSSL_SML_SSLv23_method.f' ())
     in
        if C.Ptr.isNull' context then
-           (ssl_err "Error creating SSL context";
+           (if printErr then ssl_err "Error creating SSL context" else ();
             raise OpenSSL "Can't create SSL context")
        else if F_OpenSSL_SML_use_certificate_chain_file.f' (context,
                                                             ZString.dupML' chain)
                = 0 then
-           (ssl_err "Error using certificate chain";
+           (if printErr then ssl_err "Error using certificate chain" else ();
             F_OpenSSL_SML_CTX_free.f' context;
             raise OpenSSL "Can't load certificate chain")
        else if F_OpenSSL_SML_use_PrivateKey_file.f' (context,
                                                      ZString.dupML' key)
                = 0 then
-           (ssl_err "Error using private key";
+           (if printErr then ssl_err "Error using private key" else ();
             F_OpenSSL_SML_CTX_free.f' context;
             raise OpenSSL "Can't load private key")
        else if F_OpenSSL_SML_load_verify_locations.f' (context,
                                                        ZString.dupML' root,
                                                        C.Ptr.null') = 0 then
-           (ssl_err "Error loading trust store";
+           (if printErr then ssl_err "Error loading trust store" else ();
             F_OpenSSL_SML_CTX_free.f' context;
             raise OpenSSL "Can't load trust store")
        else