[mew-dist 29456] SSL session setup doesn't work properly

Seiji Ariga ariga at example.com
2012年 3月 7日 (水) 05:42:12 JST


有賀と申します。

stunnel 4.51 から debug の表示が変わったようで、stunnel のセットアップ
がうまくいきません。(一度 C-g して再度実行するとうまくいく)

stunnel の diff は次の通りです。

--- stunnel-4.50/src/stunnel.c  2011-12-02 10:08:48.000000000 -0500
+++ stunnel-4.51/src/stunnel.c  2012-01-01 16:42:28.000000000 -0500
@@ -343,22 +341,18 @@
                 str_free(local_address);
                 return 1;
             }
-            s_log(LOG_DEBUG, "Service %s bound to %s",
-                opt->servname, local_address);
-            str_free(local_address);
             if(listen(opt->fd, SOMAXCONN)) {
                 sockerror("listen");
                 closesocket(opt->fd);
+                str_free(local_address);
                 return 1;
             }
             s_poll_add(fds, opt->fd, 1, 0);
-            s_log(LOG_DEBUG, "Service %s opened FD=%d",
-                opt->servname, opt->fd);
+            s_log(LOG_DEBUG, "Service %s bound FD=%d to %s",
+                opt->servname, opt->fd, local_address);
+            str_free(local_address);
         } else if(opt->option.program && opt->option.remote) {
             /* create exec+connect services */
-            enter_critical_section(CRIT_CLIENTS);
-            ++num_clients;
-            leave_critical_section(CRIT_CLIENTS);
             create_client(-1, -1,
                 alloc_client_session(opt, -1, -1), client_thread);
         }

*Mew debug* の出力の違いは次の通りです。

stunnel-4.43
----
2012.03.06 15:02:56 LOG5[18868:34384933888]: Configuration successful
2012.03.06 15:02:56 LOG7[18868:34384933888]: accept socket: FD=5 allocated (non-blocking mode)
2012.03.06 15:02:56 LOG7[18868:34384933888]: Service 4321 bound to 127.0.0.1:4321
2012.03.06 15:02:56 LOG7[18868:34384933888]: Service 4321 opened FD=5
2012.03.06 15:02:56 LOG7[18868:34384933888]: No pid file being created
----
stunnel-4.53
----
2012.03.06 15:00:42 LOG5[16048:34384933888]: Configuration successful
2012.03.06 15:00:42 LOG7[16048:34384933888]: Service 1111 bound FD=5 to 127.0.0.1:1111
2012.03.06 15:00:42 LOG7[16048:34384933888]: No pid file being created
----

いい加減なパッチですが、以下で動きました。

--- mew-6.4/mew-ssl.el.orig     2011-10-19 04:46:38.000000000 -0400
+++ mew-6.4/mew-ssl.el  2012-03-06 15:39:31.000000000 -0500
@@ -214,7 +214,7 @@
       (mew-ssl-set-string pnm string)
       (setq string (concat prev-str string))
       (cond
-       ((string-match "bound to" string)
+       ((string-match "bound \\(\\|FD=[0-9]+ \\)to" string)
        (mew-ssl-set-status pnm t))
        ((string-match "gethostbyname: Valid name, no data record of requested type" string)
        (mew-ssl-set-status pnm 'gethostbyname-failure))

// Seiji Ariga




Mew-dist メーリングリストの案内