Nitpickiness:

> progname = File.basename $0
> ...
> def printUsage
>         puts <<-USAGE
> 
> Usage: #{progname} [-v] [-t] [-p] [-i] [-s N[hm]]

Is progname in scope here?

> 
> def getPassword
>         print "Password: "
>         begin
>                 system("stty -echo")
>                 passwd = STDIN.gets.chomp!

I'm curious as to why you "chomp!" instead of "chomp".



__________________________________________________
Get personalized email addresses from Yahoo! Mail - only $35 
a year!  http://personal.mail.yahoo.com/