I've started working on an update to x11vnc.
I've tested it on i386 and on two different systems, I've had it crash
X11 on me when the client disconnects.  I haven't had more time to look
at it since.

Testing and suggestions welcome.
I hope to give it more time this weekend.

Again, this is not finished.  Someone (an Anonymous Coward) offered to
help/test on Undeadly.

-ME

Index: Makefile
===================================================================
RCS file: /cvs/ports/x11/x11vnc/Makefile,v
retrieving revision 1.2
diff -u -p -r1.2 Makefile
--- Makefile    15 Sep 2007 20:04:26 -0000      1.2
+++ Makefile    9 Nov 2007 22:17:00 -0000
@@ -2,7 +2,7 @@
 
 COMMENT=       VNC server for real X displays
 
-VERSION=       0.6.2
+VERSION=       0.9.3
 DISTNAME=      x11vnc-${VERSION}
 CATEGORIES=     x11
 
@@ -16,14 +16,17 @@ PERMIT_PACKAGE_FTP= Yes
 PERMIT_DISTFILES_CDROM=        Yes
 PERMIT_DISTFILES_FTP=  Yes
 
-WANTLIB=       X11 Xext Xinerama Xtst c pthread z
+WANTLIB=       X11 Xdamage Xext Xfixes Xinerama Xrandr Xtst c crypto \
+               pthread ssl z
+LIB_DEPENDS=   jpeg.>=62::graphics/jpeg
 
 MASTER_SITES=  ${MASTER_SITE_SOURCEFORGE:=libvncserver/}
 
 USE_X11=       Yes
 
-CONFIGURE_STYLE=gnu
-CONFIGURE_ARGS+=--with-x
+CONFIGURE_STYLE=simple
+CONFIGURE_ARGS+=--with-x \
+               --with-jpeg=${PREFIX}
 
 post-install:
        ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/x11vnc
Index: distinfo
===================================================================
RCS file: /cvs/ports/x11/x11vnc/distinfo,v
retrieving revision 1.3
diff -u -p -r1.3 distinfo
--- distinfo    5 Apr 2007 17:36:25 -0000       1.3
+++ distinfo    9 Nov 2007 22:17:00 -0000
@@ -1,5 +1,5 @@
-MD5 (x11vnc-0.6.2.tar.gz) = 6NLhEzJiTc8+6pkiSN2PaA==
-RMD160 (x11vnc-0.6.2.tar.gz) = Dzdk8gdesxpHMULdLkX2e48Rc8U=
-SHA1 (x11vnc-0.6.2.tar.gz) = hH2SYO6Noo5bqFTz3YS1pT36J3A=
-SHA256 (x11vnc-0.6.2.tar.gz) = /5MvnyU53KC/uVgNoFV5FB2L4KSBXOhooB+FaY/e9a0=
-SIZE (x11vnc-0.6.2.tar.gz) = 350243
+MD5 (x11vnc-0.9.3.tar.gz) = lu3/tanrNqrUYg9JylgQGw==
+RMD160 (x11vnc-0.9.3.tar.gz) = 5AE+Yq8eniPIVmzznL7lr5O8xXI=
+SHA1 (x11vnc-0.9.3.tar.gz) = e7Xg0W1frjAeb03LW5QZpeI5buM=
+SHA256 (x11vnc-0.9.3.tar.gz) = CrBpCBTZt3O6eQ/eFyir6phfZOEpss9C4SQ10fCa32k=
+SIZE (x11vnc-0.9.3.tar.gz) = 2105034
Index: patches/patch-configure
===================================================================
RCS file: /cvs/ports/x11/x11vnc/patches/patch-configure,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 patch-configure
--- patches/patch-configure     2 Dec 2004 21:21:23 -0000       1.1.1.1
+++ patches/patch-configure     9 Nov 2007 22:17:00 -0000
@@ -1,9 +1,9 @@
-$OpenBSD: patch-configure,v 1.1.1.1 2004/12/02 21:21:23 sturm Exp $
---- configure.orig     Thu Dec  2 20:42:03 2004
-+++ configure  Thu Dec  2 20:42:44 2004
-@@ -5375,13 +5375,13 @@ fi
- fi
- if test ! -z "$HAVE_PTHREAD_H"; then
+$OpenBSD$
+--- configure.orig     Thu Nov  8 22:32:44 2007
++++ configure  Thu Nov  8 22:32:57 2007
+@@ -8515,13 +8515,13 @@ fi
+ 
+       if test ! -z "$HAVE_PTHREAD_H"; then
  
 -echo "$as_me:$LINENO: checking for pthread_mutex_lock in -lpthread" >&5
 -echo $ECHO_N "checking for pthread_mutex_lock in -lpthread... $ECHO_C" >&6
@@ -16,9 +16,9 @@ $OpenBSD: patch-configure,v 1.1.1.1 2004
 -LIBS="-lpthread  $LIBS"
 +LIBS="-pthread  $LIBS"
  cat >conftest.$ac_ext <<_ACEOF
- #line $LINENO "configure"
  /* confdefs.h.  */
-@@ -5434,17 +5434,17 @@ if test $ac_cv_lib_pthread_pthread_mutex
+ _ACEOF
+@@ -8584,17 +8584,17 @@ if test $ac_cv_lib_pthread_pthread_mutex_lock = yes; t
  #define HAVE_LIBPTHREAD 1
  _ACEOF
  
@@ -27,9 +27,9 @@ $OpenBSD: patch-configure,v 1.1.1.1 2004
  
  fi
  
--      echo "$as_me:$LINENO: checking for pthread_mutex_lock in -lpthread" >&5
+-              echo "$as_me:$LINENO: checking for pthread_mutex_lock in 
-lpthread" >&5
 -echo $ECHO_N "checking for pthread_mutex_lock in -lpthread... $ECHO_C" >&6
-+      echo "$as_me:$LINENO: checking for pthread_mutex_lock in -pthread" >&5
++              echo "$as_me:$LINENO: checking for pthread_mutex_lock in 
-pthread" >&5
 +echo $ECHO_N "checking for pthread_mutex_lock in -pthread... $ECHO_C" >&6
  if test "${ac_cv_lib_pthread_pthread_mutex_lock+set}" = set; then
    echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -38,5 +38,5 @@ $OpenBSD: patch-configure,v 1.1.1.1 2004
 -LIBS="-lpthread  $LIBS"
 +LIBS="-pthread  $LIBS"
  cat >conftest.$ac_ext <<_ACEOF
- #line $LINENO "configure"
  /* confdefs.h.  */
+ _ACEOF
Index: patches/patch-libvncserver_httpd_c
===================================================================
RCS file: patches/patch-libvncserver_httpd_c
diff -N patches/patch-libvncserver_httpd_c
--- patches/patch-libvncserver_httpd_c  2 Dec 2004 21:21:23 -0000       1.1.1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,21 +0,0 @@
-$OpenBSD: patch-libvncserver_httpd_c,v 1.1.1.1 2004/12/02 21:21:23 sturm Exp $
---- libvncserver/httpd.c.orig  Thu Dec  2 21:04:09 2004
-+++ libvncserver/httpd.c       Thu Dec  2 21:04:52 2004
-@@ -123,7 +123,7 @@ httpCheckFds(rfbScreenInfoPtr rfbScreen)
-     fd_set fds;
-     struct timeval tv;
-     struct sockaddr_in addr;
--    size_t addrlen = sizeof(addr);
-+    socklen_t addrlen = sizeof(addr);
- 
-     if (!rfbScreen->httpDir)
-       return;
-@@ -208,7 +208,7 @@ static void
- httpProcessInput(rfbScreenInfoPtr rfbScreen)
- {
-     struct sockaddr_in addr;
--    size_t addrlen = sizeof(addr);
-+    socklen_t addrlen = sizeof(addr);
-     char fullFname[512];
-     char params[1024];
-     char *ptr;
Index: patches/patch-libvncserver_main_c
===================================================================
RCS file: patches/patch-libvncserver_main_c
diff -N patches/patch-libvncserver_main_c
--- patches/patch-libvncserver_main_c   2 Dec 2004 21:21:23 -0000       1.1.1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,12 +0,0 @@
-$OpenBSD: patch-libvncserver_main_c,v 1.1.1.1 2004/12/02 21:21:23 sturm Exp $
---- libvncserver/main.c.orig   Thu Dec  2 21:01:06 2004
-+++ libvncserver/main.c        Thu Dec  2 21:02:08 2004
-@@ -323,7 +323,7 @@ listenerRun(void *data)
-     int client_fd;
-     struct sockaddr_in peer;
-     rfbClientPtr cl;
--    size_t len;
-+    socklen_t len;
- 
-     len = sizeof(peer);
- 
Index: patches/patch-libvncserver_rfbserver_c
===================================================================
RCS file: /cvs/ports/x11/x11vnc/patches/patch-libvncserver_rfbserver_c,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 patch-libvncserver_rfbserver_c
--- patches/patch-libvncserver_rfbserver_c      2 Dec 2004 21:21:23 -0000       
1.1.1.1
+++ patches/patch-libvncserver_rfbserver_c      9 Nov 2007 22:17:00 -0000
@@ -1,30 +1,12 @@
-$OpenBSD: patch-libvncserver_rfbserver_c,v 1.1.1.1 2004/12/02 21:21:23 sturm 
Exp $
---- libvncserver/rfbserver.c.orig      Tue Jun 15 15:23:57 2004
-+++ libvncserver/rfbserver.c   Thu Dec  2 21:03:19 2004
-@@ -101,7 +101,7 @@ rfbClientListInit(rfbScreenInfoPtr rfbSc
- {
-     if(sizeof(rfbBool)!=1) {
-         /* a sanity check */
--        fprintf(stderr,"rfbBool's size is not 1 (%d)!\n",sizeof(rfbBool));
-+        fprintf(stderr,"rfbBool's size is not 1 
(%ld)!\n",(long)sizeof(rfbBool));
-       /* we cannot continue, because rfbBool is supposed to be char 
everywhere */
-       exit(1);
-     }
-@@ -227,7 +227,7 @@ rfbNewTCPOrUDPClient(rfbScreen,sock,isUD
-     rfbClientIteratorPtr iterator;
-     rfbClientPtr cl,cl_;
-     struct sockaddr_in addr;
--    size_t addrlen = sizeof(struct sockaddr_in);
-+    socklen_t addrlen = sizeof(struct sockaddr_in);
- 
-     cl = (rfbClientPtr)calloc(sizeof(rfbClientRec),1);
- 
-@@ -523,7 +523,7 @@ rfbProcessClientProtocolVersion(cl)
+$OpenBSD$
+--- libvncserver/rfbserver.c.orig      Thu Nov  8 22:35:54 2007
++++ libvncserver/rfbserver.c   Thu Nov  8 22:37:14 2007
+@@ -607,7 +607,7 @@ rfbProcessClientProtocolVersion(rfbClientPtr cl)
  
      pv[sz_rfbProtocolVersionMsg] = 0;
      if (sscanf(pv,rfbProtocolVersionFormat,&major_,&minor_) != 2) {
 -        char name[1024]; 
 +        char name[1025]; 
-       if(sscanf(pv,"RFB %03d.%03d %1024s\n",&major_,&minor_,name) != 3) {
-           rfbErr("rfbProcessClientProtocolVersion: not a valid RFB client\n");
+       if(sscanf(pv,"RFB %03d.%03d %1023s\n",&major_,&minor_,name) != 3) {
+           rfbErr("rfbProcessClientProtocolVersion: not a valid RFB client: 
%s\n", pv);
            rfbCloseClient(cl);
Index: patches/patch-libvncserver_sockets_c
===================================================================
RCS file: patches/patch-libvncserver_sockets_c
diff -N patches/patch-libvncserver_sockets_c
--- patches/patch-libvncserver_sockets_c        2 Dec 2004 21:21:23 -0000       
1.1.1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,12 +0,0 @@
-$OpenBSD: patch-libvncserver_sockets_c,v 1.1.1.1 2004/12/02 21:21:23 sturm Exp 
$
---- libvncserver/sockets.c.orig        Thu Dec  2 21:03:26 2004
-+++ libvncserver/sockets.c     Thu Dec  2 21:04:02 2004
-@@ -195,7 +195,7 @@ rfbCheckFds(rfbScreenInfoPtr rfbScreen,l
-     fd_set fds;
-     struct timeval tv;
-     struct sockaddr_in addr;
--    size_t addrlen = sizeof(addr);
-+    socklen_t addrlen = sizeof(addr);
-     char buf[6];
-     const int one = 1;
-     int sock;
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/x11/x11vnc/pkg/PLIST,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 PLIST
--- pkg/PLIST   2 Dec 2004 21:21:23 -0000       1.1.1.1
+++ pkg/PLIST   9 Nov 2007 22:17:00 -0000
@@ -1,4 +1,20 @@
 @comment $OpenBSD: PLIST,v 1.1.1.1 2004/12/02 21:21:23 sturm Exp $
 bin/x11vnc
[EMAIL PROTECTED] man/man1/x11vnc.1
 share/doc/x11vnc/
 share/doc/x11vnc/README
+share/x11vnc/
+share/x11vnc/classes/
+share/x11vnc/classes/VncViewer.jar
+share/x11vnc/classes/index.vnc
+share/x11vnc/classes/ssl/
+share/x11vnc/classes/ssl/README
+share/x11vnc/classes/ssl/SignedUltraViewerSSL.jar
+share/x11vnc/classes/ssl/SignedVncViewer.jar
+share/x11vnc/classes/ssl/UltraViewerSSL.jar
+share/x11vnc/classes/ssl/VncViewer.jar
+share/x11vnc/classes/ssl/index.vnc
+share/x11vnc/classes/ssl/proxy.vnc
+share/x11vnc/classes/ssl/ss_vncviewer
+share/x11vnc/classes/ssl/ultra.vnc
+share/x11vnc/classes/ssl/ultrasigned.vnc

Reply via email to