unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#24422: Proposal to create `sieve-manage-ignore-broken-tls' option
@ 2016-09-12 19:57 TSUCHIYA Masatoshi
  2016-09-12 23:08 ` Katsumi Yamaoka
  0 siblings, 1 reply; 6+ messages in thread
From: TSUCHIYA Masatoshi @ 2016-09-12 19:57 UTC (permalink / raw)
  To: 24422


[-- Attachment #1.1: Type: text/plain, Size: 247 bytes --]

Hi,

When accessing a managesieve server which provides broken TLS
connections, it is quite useful that sieve-manage-open-server() ignores
STARTTLS capability.  Therefore, I propose the following patch.

Regards,

-- 
TSUCHIYA Masatoshi

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.2: Type: text/x-diff, Size: 1362 bytes --]

--- a/lisp/sieve-manage.el
+++ b/lisp/sieve-manage.el
@@ -147,6 +147,11 @@ for doing the actual authentication."
   :type 'symbol
   :group 'sieve-manage)
 
+(defcustom sieve-manage-ignore-broken-tls nil
+  "Ignore STARTTLS even if STARTTLS capability is provided."
+  :type 'boolean
+  :group 'sieve-manage)
+
 ;; Internal variables:
 
 (defconst sieve-manage-local-variables '(sieve-manage-server
@@ -211,14 +216,16 @@ Return the buffer associated with the connection."
          :return-list t
          :starttls-function
          (lambda (capabilities)
-           (when (string-match "\\bSTARTTLS\\b" capabilities)
-             "STARTTLS\r\n")))
+	   (when (and (not sieve-manage-ignore-broken-tls)
+		      (string-match "\\bSTARTTLS\\b" capabilities))
+	     "STARTTLS\r\n")))
       (setq sieve-manage-process proc)
       (setq sieve-manage-capability
             (sieve-manage-parse-capability (plist-get props :capabilities)))
       ;; Ignore new capabilities issues after successful STARTTLS
-      (when (and (memq stream '(nil network starttls))
-                 (eq (plist-get props :type) 'tls))
+      (when (or sieve-manage-ignore-broken-tls
+		(and (memq stream '(nil network starttls))
+		     (eq (plist-get props :type) 'tls)))
         (sieve-manage-drop-next-answer))
       (current-buffer))))
 

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 180 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#24422: Proposal to create `sieve-manage-ignore-broken-tls' option
  2016-09-12 19:57 bug#24422: Proposal to create `sieve-manage-ignore-broken-tls' option TSUCHIYA Masatoshi
@ 2016-09-12 23:08 ` Katsumi Yamaoka
  2016-09-13 13:21   ` Ted Zlatanov
  0 siblings, 1 reply; 6+ messages in thread
From: Katsumi Yamaoka @ 2016-09-12 23:08 UTC (permalink / raw)
  To: tsuchiya; +Cc: 24422-done

On Mon, 12 Sep 2016 15:57:24 -0400, TSUCHIYA Masatoshi wrote:
> When accessing a managesieve server which provides broken TLS
> connections, it is quite useful that sieve-manage-open-server() ignores
> STARTTLS capability.  Therefore, I propose the following patch.

The patch looks fine and not likely to cause a trouble.  I've
committed it in the Emacs master with this log entry:

sieve-manage.el: Allow user to avoid STARTTLS capability test (bug#24422)

* lisp/net/sieve-manage.el
(sieve-manage-ignore-broken-tls): New user option.
(sieve-manage-open-server):
Don't test STARTTLS capability if the option is set (bug#24422).

Thanks.





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#24422: Proposal to create `sieve-manage-ignore-broken-tls' option
  2016-09-12 23:08 ` Katsumi Yamaoka
@ 2016-09-13 13:21   ` Ted Zlatanov
  2016-09-14  0:08     ` Katsumi Yamaoka
  0 siblings, 1 reply; 6+ messages in thread
From: Ted Zlatanov @ 2016-09-13 13:21 UTC (permalink / raw)
  To: 24422; +Cc: yamaoka, tsuchiya

On Tue, 13 Sep 2016 08:08:37 +0900 Katsumi Yamaoka <yamaoka@jpl.org> wrote: 

KY> On Mon, 12 Sep 2016 15:57:24 -0400, TSUCHIYA Masatoshi wrote:
>> When accessing a managesieve server which provides broken TLS
>> connections, it is quite useful that sieve-manage-open-server() ignores
>> STARTTLS capability.  Therefore, I propose the following patch.

KY> The patch looks fine and not likely to cause a trouble.  I've
KY> committed it in the Emacs master with this log entry:

KY> sieve-manage.el: Allow user to avoid STARTTLS capability test (bug#24422)

KY> * lisp/net/sieve-manage.el
KY> (sieve-manage-ignore-broken-tls): New user option.
KY> (sieve-manage-open-server):
KY> Don't test STARTTLS capability if the option is set (bug#24422).

I think the option is badly named. It doesn't ignore broken TLS
(whatever that means), it avoids STARTTLS altogether. So maybe it should
be `sieve-manage-ignore-starttls' or something like that.

Ted





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#24422: Proposal to create `sieve-manage-ignore-broken-tls' option
  2016-09-13 13:21   ` Ted Zlatanov
@ 2016-09-14  0:08     ` Katsumi Yamaoka
  2016-09-20 13:00       ` Ted Zlatanov
  0 siblings, 1 reply; 6+ messages in thread
From: Katsumi Yamaoka @ 2016-09-14  0:08 UTC (permalink / raw)
  To: 24422; +Cc: tsuchiya

On Tue, 13 Sep 2016 09:21:48 -0400, Ted Zlatanov wrote:
> On Tue, 13 Sep 2016 08:08:37 +0900 Katsumi Yamaoka <yamaoka@jpl.org> wrote:

KY> On Mon, 12 Sep 2016 15:57:24 -0400, TSUCHIYA Masatoshi wrote:
>>> When accessing a managesieve server which provides broken TLS
>>> connections, it is quite useful that sieve-manage-open-server() ignores
>>> STARTTLS capability.  Therefore, I propose the following patch.

KY> The patch looks fine and not likely to cause a trouble.  I've
KY> committed it in the Emacs master with this log entry:

KY> sieve-manage.el: Allow user to avoid STARTTLS capability test (bug#24422)

KY> * lisp/net/sieve-manage.el
KY> (sieve-manage-ignore-broken-tls): New user option.
KY> (sieve-manage-open-server):
KY> Don't test STARTTLS capability if the option is set (bug#24422).

> I think the option is badly named. It doesn't ignore broken TLS
> (whatever that means), it avoids STARTTLS altogether. So maybe it should
> be `sieve-manage-ignore-starttls' or something like that.

Agreed.  I misunderstood what it tries to do.  It is irrelevant
if the one is broken or not, it simply makes it not use STARTTLS,
and the docstring is correct:

  "Ignore STARTTLS even if STARTTLS capability is provided."

I've renamed it as suggested, with this log entry:

sieve-manage.el: Rename sieve-manage-ignore-broken-tls

* lisp/net/sieve-manage.el (sieve-manage-ignore-starttls):
Rename from sieve-manage-ignore-broken-tls.  If it is set,
sieve-manage will never use STARTTLS even if the server says
it is capable (but may be broken).

Thanks.





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#24422: Proposal to create `sieve-manage-ignore-broken-tls' option
  2016-09-14  0:08     ` Katsumi Yamaoka
@ 2016-09-20 13:00       ` Ted Zlatanov
  2016-09-20 23:40         ` Katsumi Yamaoka
  0 siblings, 1 reply; 6+ messages in thread
From: Ted Zlatanov @ 2016-09-20 13:00 UTC (permalink / raw)
  To: Katsumi Yamaoka; +Cc: 24422, tsuchiya

On Wed, 14 Sep 2016 09:08:17 +0900 Katsumi Yamaoka <yamaoka@jpl.org> wrote: 

KY> On Tue, 13 Sep 2016 09:21:48 -0400, Ted Zlatanov wrote:

>> I think the option is badly named. It doesn't ignore broken TLS
>> (whatever that means), it avoids STARTTLS altogether. So maybe it should
>> be `sieve-manage-ignore-starttls' or something like that.

KY> Agreed.  I misunderstood what it tries to do.  It is irrelevant
KY> if the one is broken or not, it simply makes it not use STARTTLS,
KY> and the docstring is correct:

KY>   "Ignore STARTTLS even if STARTTLS capability is provided."

KY> I've renamed it as suggested, with this log entry:

KY> sieve-manage.el: Rename sieve-manage-ignore-broken-tls

KY> * lisp/net/sieve-manage.el (sieve-manage-ignore-starttls):
KY> Rename from sieve-manage-ignore-broken-tls.  If it is set,
KY> sieve-manage will never use STARTTLS even if the server says
KY> it is capable (but may be broken).

Thank you, as always!!! This can be marked as done?

Ted





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#24422: Proposal to create `sieve-manage-ignore-broken-tls' option
  2016-09-20 13:00       ` Ted Zlatanov
@ 2016-09-20 23:40         ` Katsumi Yamaoka
  0 siblings, 0 replies; 6+ messages in thread
From: Katsumi Yamaoka @ 2016-09-20 23:40 UTC (permalink / raw)
  To: 24422-done; +Cc: tsuchiya

On Tue, 20 Sep 2016 09:00:02 -0400, Ted Zlatanov wrote:
> Thank you, as always!!! This can be marked as done?

Tsuchiya-san seems to have no comment, so I'm closing this bug.
Thanks.





^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2016-09-20 23:40 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-09-12 19:57 bug#24422: Proposal to create `sieve-manage-ignore-broken-tls' option TSUCHIYA Masatoshi
2016-09-12 23:08 ` Katsumi Yamaoka
2016-09-13 13:21   ` Ted Zlatanov
2016-09-14  0:08     ` Katsumi Yamaoka
2016-09-20 13:00       ` Ted Zlatanov
2016-09-20 23:40         ` Katsumi Yamaoka

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).