# HG changeset patch # User Glenn Morris # Date 1205910504 0 # Node ID eaecf88d90b518a70c30f4b51bd1e2843b476c5f # Parent abe8019db92f08b1fab0444e2213c9e153fcebd4 Sync 2007-11-04 change from trunk, plus the related comments that came after. Don't require rx when compiling. (tls-end-of-info): Rewrite without using rx. diff -r abe8019db92f -r eaecf88d90b5 lisp/net/tls.el --- a/lisp/net/tls.el Wed Mar 19 04:13:46 2008 +0000 +++ b/lisp/net/tls.el Wed Mar 19 07:08:24 2008 +0000 @@ -51,37 +51,25 @@ (autoload 'format-spec "format-spec") (autoload 'format-spec-make "format-spec")) -(eval-when-compile - (require 'rx)) - (defgroup tls nil "Transport Layer Security (TLS) parameters." :group 'comm) (defcustom tls-end-of-info - (rx - (or - ;; `openssl s_client` regexp - (sequence - ;; see ssl/ssl_txt.c lines 219--220 - line-start - " Verify return code: " - (one-or-more not-newline) - "\n" - ;; according to apps/s_client.c line 1515 this is always the last - ;; line that is printed by s_client before the real data - "---\n") - ;; `gnutls` regexp - (sequence - ;; see src/cli.c lines 721-- - (sequence line-start "- Simple Client Mode:\n") - (zero-or-more - (or - "\n" ; ignore blank lines - ;; XXX: we have no way of knowing if the STARTTLS handshake - ;; sequence has completed successfully, because `gnutls` will - ;; only report failure. - (sequence line-start "\*\*\* Starting TLS handshake\n")))))) + (concat + "\\(" + ;; `openssl s_client' regexp. See ssl/ssl_txt.c lines 219-220. + ;; According to apps/s_client.c line 1515 `---' is always the last + ;; line that is printed by s_client before the real data. + "^ Verify return code: .+\n---\n\\|" + ;; `gnutls' regexp. See src/cli.c lines 721-. + "^- Simple Client Mode:\n" + "\\(\n\\|" ; ignore blank lines + ;; According to GnuTLS v2.1.5 src/cli.c lines 640-650 and 705-715 + ;; in `main' the handshake will start after this message. If the + ;; handshake fails, the programs will abort. + "^\\*\\*\\* Starting TLS handshake\n\\)*" + "\\)") "Regexp matching end of TLS client informational messages. Client data stream begins after the last character matched by this. The default matches `openssl s_client' (version 0.9.8c)