summaryrefslogtreecommitdiffstats
path: root/x11vnc/sslcmds.c
diff options
context:
space:
mode:
authorrunge <runge>2008-11-22 18:36:33 +0000
committerrunge <runge>2008-11-22 18:36:33 +0000
commit6fbba525a924961083bf2e43bb841bd15671f526 (patch)
tree3ec0cf4b285fb0140294a151b801c91bc78a612e /x11vnc/sslcmds.c
parent63b98dba790fa9835e970b8502d93258862a9373 (diff)
downloadlibvncserver-6fbba525a924961083bf2e43bb841bd15671f526.zip
libvncserver-6fbba525a924961083bf2e43bb841bd15671f526.tar.gz
x11vnc: x11vnc.desktop file. -reopen, -dhparams, -sslCRL,
-setdefer options. -rfbport PROMPT VeNCrypt and TLSVNC SSL/TLS encryption support. Tweaks to choose_delay() algorithm. -ssl ANON anonymouse Diffie-Hellman mode. Fix bugs in certs management. Additions to tray=setpass naive user mode.
Diffstat (limited to 'x11vnc/sslcmds.c')
-rw-r--r--x11vnc/sslcmds.c23
1 files changed, 19 insertions, 4 deletions
diff --git a/x11vnc/sslcmds.c b/x11vnc/sslcmds.c
index d1ed95c..127a133 100644
--- a/x11vnc/sslcmds.c
+++ b/x11vnc/sslcmds.c
@@ -15,10 +15,6 @@
#endif
#endif
-#ifdef NO_SSL_OR_UNIXPW
-#undef SSLCMDS
-#endif
-
void check_stunnel(void);
int start_stunnel(int stunnel_port, int x11vnc_port);
@@ -64,6 +60,7 @@ int start_stunnel(int stunnel_port, int x11vnc_port) {
char *path, *p, *exe;
char *stunnel_path = NULL;
struct stat verify_buf;
+ struct stat crl_buf;
int status;
if (stunnel_pid) {
@@ -146,6 +143,12 @@ int start_stunnel(int stunnel_port, int x11vnc_port) {
clean_up_exit(1);
}
}
+ if (ssl_crl) {
+ if (stat(ssl_crl, &crl_buf) != 0) {
+ rfbLog("stunnel: %s does not exist.\n", ssl_crl);
+ clean_up_exit(1);
+ }
+ }
stunnel_pid = fork();
@@ -180,6 +183,11 @@ int start_stunnel(int stunnel_port, int x11vnc_port) {
a = "-A";
}
}
+
+ if (ssl_crl) {
+ rfbLog("stunnel: stunnel3 does not support CRL. %s\n", ssl_crl);
+ clean_up_exit(1);
+ }
if (stunnel_pem && ssl_verify) {
/* XXX double check -v 2 */
@@ -210,6 +218,13 @@ int start_stunnel(int stunnel_port, int x11vnc_port) {
if (stunnel_pem) {
fprintf(in, "cert = %s\n", stunnel_pem);
}
+ if (ssl_crl) {
+ if(S_ISDIR(crl_buf.st_mode)) {
+ fprintf(in, "CRLpath = %s\n", ssl_crl);
+ } else {
+ fprintf(in, "CRLfile = %s\n", ssl_crl);
+ }
+ }
if (ssl_verify) {
if(S_ISDIR(verify_buf.st_mode)) {
fprintf(in, "CApath = %s\n", ssl_verify);
OpenPOWER on IntegriCloud