unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Stefan Monnier <monnier@IRO.UMontreal.CA>
To: Noam Postavsky <npostavs@gmail.com>
Cc: 30190@debbugs.gnu.org, Tino Calancha <tino.calancha@gmail.com>
Subject: bug#30190: 27.0.50; term run in line mode shows user passwords
Date: Wed, 18 Jul 2018 10:24:14 -0400	[thread overview]
Message-ID: <jwvva9c64va.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <878t6892pv.fsf@gmail.com> (Noam Postavsky's message of "Wed, 18 Jul 2018 07:56:44 -0400")

Thanks Noam, looks good.
Couldn't help send you some nitpicks, tho,


        Stefan


> @@ -2288,7 +2289,8 @@ term-send-invisible
>  \\[view-lossage]."
>    (interactive "P") ; Defeat snooping via C-x esc
>    (when (not (stringp str))
> -    (setq str (term-read-noecho "Non-echoed text: " t)))
> +    (let ((read-hide-char ?*))
> +      (setq str (read-passwd "Non-echoed text: "))))
>    (when (not proc)
>      (setq proc (get-buffer-process (current-buffer))))
>    (if (not proc) (error "Current buffer has no process")

Why do we need to bind `read-hide-char` here?
More specifically, shouldn't `read-passwd` do that for us (hence if it
doesn't yet, then the right patch is to add this let-binding to
`read-passwd`)?

> @@ -2297,6 +2299,17 @@ term-send-invisible
>      (term-send-string proc str)
>      (term-send-string proc "\n")))
>  
> +;; TODO: Maybe combine this with `comint-watch-for-password-prompt'.

Would be nice, yes.

> +(defun term-watch-for-password-prompt (string)
> +  "Prompt in the minibuffer for password and send without echoing.
> +This function uses `term-send-invisible' to read and send a password to the buffer's
> +process if STRING contains a password prompt defined by
> +`comint-password-prompt-regexp'."

"... uses `term-send-invisible' to read [...] a password ..." is
incorrect, since the password is read by `read-passwd` rather than by
term-send-invisible.  But in any case I don't see any reason to document
in the docstring what internal mechanism is used [ I just fixed the comint
version of the function accordingly.  ]

> @@ -3152,6 +3165,9 @@ term-emulate-terminal
>  	  (term-handle-deferred-scroll))
>  
>  	(set-marker (process-mark proc) (point))
> +        (when (stringp decoded-substring)
> +          (term-watch-for-password-prompt (prog1 decoded-substring
> +                                            (setq decoded-substring nil))))

I suggest you add a comment explaining why we set decoded-substring to nil.





  parent reply	other threads:[~2018-07-18 14:24 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-01-21 12:16 bug#30190: 27.0.50; term run in line mode shows user passwords Tino Calancha
2018-01-21 14:01 ` Noam Postavsky
2018-01-21 21:08   ` Tino Calancha
2018-02-03 16:15   ` Tino Calancha
2018-02-03 16:44     ` Noam Postavsky
2018-02-04  2:23       ` Tino Calancha
2018-02-04  2:29         ` Noam Postavsky
2018-02-04  3:37           ` Tino Calancha
2018-02-05  1:07         ` Richard Stallman
2018-02-03 17:08     ` Eli Zaretskii
2018-02-04  2:26       ` Tino Calancha
2018-02-04  3:40       ` Tino Calancha
2018-02-04 12:40         ` Noam Postavsky
2018-02-04 12:47           ` Tino Calancha
2018-02-15  0:09         ` Tino Calancha
2018-02-21 10:18           ` Tino Calancha
2018-02-21 17:47             ` Eli Zaretskii
2018-03-10  8:52               ` Tino Calancha
2018-03-10 10:25                 ` Eli Zaretskii
2018-03-10 10:44                   ` Tino Calancha
2018-03-10 12:07                     ` Eli Zaretskii
2018-03-10 13:17                       ` Tino Calancha
2018-03-10 15:50                         ` Eli Zaretskii
2018-03-11 11:02                           ` Tino Calancha
2018-03-11 17:04                             ` Eli Zaretskii
2018-06-20  4:09                 ` Noam Postavsky
2018-06-20 16:27                   ` Eli Zaretskii
2018-06-20 23:28                     ` Noam Postavsky
2018-06-21  1:31                       ` Tino Calancha
2018-06-21  2:44                       ` Eli Zaretskii
2018-06-21  3:07                         ` Tino Calancha
2018-06-21 19:17                           ` Stefan Monnier
2018-06-22  3:34                             ` Tino Calancha
2018-06-22 12:44                               ` Stefan Monnier
2018-07-18 11:56                                 ` Noam Postavsky
2018-07-18 12:32                                   ` Tino Calancha
2018-07-18 14:24                                   ` Stefan Monnier [this message]
2018-07-18 14:56                                     ` Tino Calancha
2018-07-18 15:54                                       ` Stefan Monnier
2018-07-18 23:28                                         ` Tino Calancha
2018-07-19  1:58                                           ` Stefan Monnier
2018-07-19  2:27                                             ` Noam Postavsky
2018-07-19 12:45                                               ` Stefan Monnier
2018-07-20  7:34                                               ` Tino Calancha
2018-07-19  0:02                                     ` Noam Postavsky
2018-07-19  2:00                                       ` Stefan Monnier
2018-07-22 18:33                                         ` Noam Postavsky
2018-07-22 18:44                                           ` Eli Zaretskii
2018-07-23 12:22                                             ` Noam Postavsky
2018-07-23 12:46                                           ` Stefan Monnier
2018-07-23 12:56                                             ` Tino Calancha
2018-07-24  0:28                                               ` Noam Postavsky
2018-07-24  2:35                                                 ` Eli Zaretskii
2018-07-30  1:15                                                   ` Noam Postavsky

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=jwvva9c64va.fsf-monnier+emacs@gnu.org \
    --to=monnier@iro.umontreal.ca \
    --cc=30190@debbugs.gnu.org \
    --cc=npostavs@gmail.com \
    --cc=tino.calancha@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).