[Development] Enhance Security class to be usable by viewer.


git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4041 3789f03b-4d11-0410-bbf8-ca57d06f2519
diff --git a/common/rfb/Security.h b/common/rfb/Security.h
index cb49911..edbcd44 100644
--- a/common/rfb/Security.h
+++ b/common/rfb/Security.h
@@ -24,7 +24,9 @@
 
 #include <rdr/types.h>
 #include <rfb/Configuration.h>
+#include <rfb/CSecurity.h>
 #include <rfb/SSecurity.h>
+#include <rfb/UserPasswdGetter.h>
 
 #include <list>
 
@@ -51,7 +53,9 @@
 
   class Security {
   public:
-    /* Create Security instance */
+    /*
+     * Create Security instance.
+     */
     Security(void);
 
     /* Enable/Disable certain security type */
@@ -68,7 +72,16 @@
     /* Create server side SSecurity class instance */
     SSecurity* GetSSecurity(rdr::U8 secType);
 
+    /* Create client side CSecurity class instance */
+    CSecurity* GetCSecurity(rdr::U8 secType);
+
     static StringParameter secTypes;
+
+    /*
+     * Use variable directly instead of dumb get/set methods. It is used
+     * only in viewer-side code and MUST be set by viewer.
+     */
+    UserPasswdGetter *upg;
   private:
     std::list<rdr::U8> enabledSecTypes;
   };