Sha256: 477492ee7f61b5bd76030c5995b99405b51a4f305463c42aa485aa1059581b22
Contents?: true
Size: 1.45 KB
Versions: 4
Compression:
Stored size: 1.45 KB
Contents
# = password.rb # # AUTHOR Thomas Sawywer # # TODO How to handle $PASSWORD? # # LOG 2006-11-08 trans <> Created from Ratchets password module. module Console class Password def self.ask( forwhat=nil ) new.ask( forwhat ) end def initialize @password = nil end # ask for password def ask( forwhat=nil ) print "Password for #{forwhat}: " until passwd = $stdin.gets.strip ; sleep 1 ; end @password = passwd end # ask and confirm password def ask_and_confirm( forwhat=nil ) print "Password for #{forwhat}: " until passwd = $stdin.gets.strip ; sleep 1 ; end print "Confirm password: " until confirm = $stdin.gets.strip ; sleep 1 ; end if confirm == passwd @password = passwd end end # Returns cached password, or if it is not already set, # will ask for it. def password( refresh=nil, forwhat=nil ) clear if refresh return @password if @password ask( forwhat ) end # Clear the cached password. def clear @password = nil end end # Simple console password mixin. module PasswordMixin module_function # Returns cached password, or if it is not already set, # will ask for it. def password( clear=nil ) password_clear if clear @password ||= Console::Password.ask end # Clear the cached password. def password_clear @password = nil end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
facets-1.8.0 | work/more/password.rb |
facets-1.8.20 | work/more/password.rb |
facets-1.8.49 | work/more/password.rb |
facets-1.8.8 | work/more/password.rb |