diff -up tigervnc-1.0.90-20100721svn4113/vncviewer/UserDialog.cxx.102434 tigervnc-1.0.90-20100721svn4113/vncviewer/UserDialog.cxx --- tigervnc-1.0.90-20100721svn4113/vncviewer/UserDialog.cxx.102434 2010-07-20 17:07:44.000000000 +0200 +++ tigervnc-1.0.90-20100721svn4113/vncviewer/UserDialog.cxx 2010-07-21 17:02:09.900085594 +0200 @@ -40,6 +40,8 @@ #include "fltk_layout.h" #include "parameters.h" #include "UserDialog.h" +#include +#include using namespace rfb; @@ -214,6 +216,15 @@ void CConn::getUserPasswd(char** user, c return; } + /* XXX Who wrote this code? Yes, it is really ugly */ + if (passwdInput) { + std::string s; + std::cin >> s; + *password = strdup(s.c_str()); + if (user) *user = 0; + return; + } + if (!user) { fl_message_title(_("VNC authentication")); *password = strDup(fl_password(_("Password:"), "")); diff -up tigervnc-1.0.90-20100721svn4113/vncviewer/parameters.h.102434 tigervnc-1.0.90-20100721svn4113/vncviewer/parameters.h --- tigervnc-1.0.90-20100721svn4113/vncviewer/parameters.h.102434 2009-03-23 17:49:47.000000000 +0100 +++ tigervnc-1.0.90-20100721svn4113/vncviewer/parameters.h 2010-07-21 16:55:44.414314911 +0200 @@ -42,6 +42,7 @@ extern rfb::BoolParameter customCompress extern rfb::IntParameter compressLevel; extern rfb::BoolParameter noJpeg; extern rfb::IntParameter qualityLevel; +extern rfb::BoolParameter passwdInput; extern char aboutText[]; extern char* programName; diff -up tigervnc-1.0.90-20100721svn4113/vncviewer/parameters.cxx.102434 tigervnc-1.0.90-20100721svn4113/vncviewer/parameters.cxx --- tigervnc-1.0.90-20100721svn4113/vncviewer/parameters.cxx.102434 2010-04-23 16:06:38.000000000 +0200 +++ tigervnc-1.0.90-20100721svn4113/vncviewer/parameters.cxx 2010-07-21 17:01:05.979161234 +0200 @@ -59,6 +59,7 @@ IntParameter wmDecorationHeight("WMDecor StringParameter passwordFile("PasswordFile", "Password file for VNC authentication", ""); AliasParameter passwd("passwd", "Alias for PasswordFile", &passwordFile); +BoolParameter passwdInput("passwdInput", "Gets password from stdin", false); BoolParameter autoSelect("AutoSelect", "Auto select pixel format and encoding. " diff -up tigervnc-1.0.90-20100721svn4113/vncviewer/vncviewer.man.102434 tigervnc-1.0.90-20100721svn4113/vncviewer/vncviewer.man --- tigervnc-1.0.90-20100721svn4113/vncviewer/vncviewer.man.102434 2009-10-07 17:13:00.000000000 +0200 +++ tigervnc-1.0.90-20100721svn4113/vncviewer/vncviewer.man 2010-07-21 16:55:44.414314911 +0200 @@ -119,6 +119,11 @@ the server, you can specify it here to a "~/.vnc/passwd". .TP +.B \-passwdInput \fItrue, false\fP +Force standard vnc dialog to getting password and reads password from stdin. +Default is false(shows dialog window) + +.TP .B \-Shared When you make a connection to a VNC server, all other existing connections are normally closed. This option requests that they be left open, allowing you to