From 63a555ee4e3bb9e95bdee4c28b64b84e2536a249 Mon Sep 17 00:00:00 2001 From: nobu Date: Fri, 30 Jul 2010 03:42:05 +0000 Subject: * lib/net/imap.rb (example): use IO#noecho to read password if possible, and defer until needed. [ruby-dev:41889] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28798 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/net/imap.rb | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'lib') diff --git a/lib/net/imap.rb b/lib/net/imap.rb index fded6cc152..a032a1850d 100644 --- a/lib/net/imap.rb +++ b/lib/net/imap.rb @@ -3488,12 +3488,10 @@ EOF def get_password print "password: " - system("stty", "-echo") begin - return gets.chop + return _noecho(&:gets).chomp ensure - system("stty", "echo") - print "\n" + puts end end @@ -3546,7 +3544,9 @@ EOF imap = Net::IMAP.new($host, :port => $port, :ssl => $ssl) begin imap.starttls if $starttls - password = get_password + class << password = method(:get_password) + alias to_str call + end imap.authenticate($auth, $user, password) while true cmd, *args = get_command -- cgit v1.2.3