Hello community, here is the log from the commit of package xorg-x11-Xvnc checked in at Mon Dec 11 01:50:56 CET 2006. -------- --- xorg-x11-Xvnc/xorg-x11-Xvnc.changes 2006-11-02 18:00:15.000000000 +0100 +++ /mounts/work_src_done/STABLE/xorg-x11-Xvnc/xorg-x11-Xvnc.changes 2006-12-10 22:37:41.000000000 +0100 @@ -1,0 +2,11 @@ +Sun Dec 10 22:37:18 CET 2006 - sndirsch@suse.de + +- updated xorg-xserver sources to 1.1.1 + +------------------------------------------------------------------- +Fri Dec 8 20:46:32 CET 2006 - sndirsch@suse.de + +- warning-fix.diff: + * fixed fatal warning + +------------------------------------------------------------------- Old: ---- xorg-server-1.1.0.tar.bz2 New: ---- vnc-102434.patch vnc-188169.patch vnc-210617.patch vnc-build.patch vnc-config.patch vnc-cookie.patch vnc-newfbsize.patch vnc-nohttpd.patch vnc-null-interface.patch vnc-render.patch vnc-xclients.patch warning-fix.diff xorg-server-1.1.1.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ xorg-x11-Xvnc.spec ++++++ --- /var/tmp/diff_new_pack.7Qzfb5/_old 2006-12-11 01:50:42.000000000 +0100 +++ /var/tmp/diff_new_pack.7Qzfb5/_new 2006-12-11 01:50:42.000000000 +0100 @@ -10,11 +10,11 @@ Name: xorg-x11-Xvnc -%define xorg_version 1.1.0 +%define xorg_version 1.1.1 %define vnc_version 4_1_2 Summary: VNC Server for the X Window System Version: 7.1 -Release: 16 +Release: 22 URL: http://xorg.freedesktop.org/ %if %suse_version <= 1010 Provides: XFree86-Xvnc @@ -22,24 +22,36 @@ Requires: xorg-x11-fonts-core Source0: http://www.realvnc.com/dist/vnc-%{vnc_version}-unixsrc.tar.gz Source2: xorg-server-%{xorg_version}.tar.bz2 +Patch0: vnc-cookie.patch Patch1: vnc-gcc4.patch Patch2: vnc-use-fb.patch +Patch3: vnc-xclients.patch Patch4: vnc-idle.patch Patch5: vnc-via.patch +Patch6: vnc-build.patch Patch7: vnc-fPIC.patch Patch8: vnc-restart.patch Patch9: vnc-vncpasswd.patch Patch10: vnc-def.patch Patch11: vnc-modular-xorg.patch +Patch12: vnc-nohttpd.patch Patch13: vnc-fontpath.patch Patch14: vnc-s390.patch Patch15: vnc-viewer-reparent.patch Patch16: vnc-64bit.patch Patch17: vnc-select.patch +Patch18: vnc-null-interface.patch Patch19: vnc-ppc64.patch Patch20: vnc-opengl.patch -Patch22: 64bit.diff -License: GNU General Public License (GPL) - all versions +Patch21: vnc-newfbsize.patch +Patch22: vnc-188169.patch +Patch23: vnc-210617.patch +Patch24: vnc-102434.patch +Patch25: vnc-config.patch +Patch26: vnc-render.patch +Patch27: 64bit.diff +Patch28: warning-fix.diff +License: GNU General Public License (GPL) Group: System/X11/Servers/XF86_4 BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: Mesa-devel expat freetype2-devel gcc-c++ libjpeg-devel pkgconfig xorg-x11-devel @@ -54,25 +66,37 @@ pushd unix bzip2 -dc %{SOURCE2} | tar -xkf - || : popd +%patch0 -p1 -b .cookie %patch1 -p1 -b .gcc4 %patch2 -p1 -b .use-fb +%patch3 -p1 -b .xclients %patch4 -p1 -b .idle %patch5 -p1 -b .via +%patch6 -p1 -b .build %patch7 -p1 -b .fPIC %patch8 -p1 -b .restart %patch9 -p1 -b .vncpasswd %patch10 -p1 -b .def %patch11 -p1 -b .modular-xorg +%patch12 -p1 -b .nohttpd pushd unix/xorg-server-* %patch13 -p3 -b .fontpath %patch14 -p3 -b .s390 +%patch28 popd %patch15 -p1 -b .viewer-reparent %patch16 -p1 -b .64bit %patch17 -p1 -b .select +#patch18 -p1 -b .null-interface %patch19 -p1 -b .ppc64 %patch20 -p1 -b .opengl -%patch22 -p0 -b .64bit +%patch21 -p1 -b .newfbsize +%patch22 -p1 -b .fix +%patch23 -p1 -b .ipv6 +%patch24 -p1 -b .102434 +%patch25 -p1 -b .config +%patch26 -p1 -b .render +%patch27 cp -a unix/xc/programs/Xserver/vnc/Xvnc/xvnc.cc \ unix/xc/programs/Xserver/Xvnc.man \ unix/xc/programs/Xserver/vnc/*.{h,cc} \ @@ -85,7 +109,8 @@ %build cd common -%configure --with-installed-zlib +autoconf # For use-fb patch +%configure --with-installed-zlib --with-fb make cd ../unix/xorg-server-* autoreconf -fi @@ -141,6 +166,11 @@ %endif %changelog -n xorg-x11-Xvnc +* Sun Dec 10 2006 - sndirsch@suse.de +- updated xorg-xserver sources to 1.1.1 +* Fri Dec 08 2006 - sndirsch@suse.de +- warning-fix.diff: + * fixed fatal warning * Thu Nov 02 2006 - sndirsch@suse.de - added Requires: xorg-x11-fonts-core (Bug #217336) * Wed Aug 16 2006 - sndirsch@suse.de ++++++ 64bit.diff ++++++ --- /var/tmp/diff_new_pack.7Qzfb5/_old 2006-12-11 01:50:42.000000000 +0100 +++ /var/tmp/diff_new_pack.7Qzfb5/_new 2006-12-11 01:50:42.000000000 +0100 @@ -9,8 +9,8 @@ perror("execlp"); exit(1); } break; ---- unix/xorg-server-1.1.0/xkb/maprules.c.orig 2006-08-09 12:52:29.000000000 +0200 -+++ unix/xorg-server-1.1.0/xkb/maprules.c 2006-08-09 12:55:34.000000000 +0200 +--- unix/xorg-server-1.1.1/xkb/maprules.c.orig 2006-08-09 12:52:29.000000000 +0200 ++++ unix/xorg-server-1.1.1/xkb/maprules.c 2006-08-09 12:55:34.000000000 +0200 @@ -1092,7 +1092,7 @@ for ( ; GetInputLine(file,&line,False); line.num_line= 0) { if (line.line[0]=='!') { @@ -20,8 +20,8 @@ headingtype = HEAD_MODEL; else if (_XkbStrCaseCmp(tok,"layout") == 0) headingtype = HEAD_LAYOUT; ---- unix/xorg-server-1.1.0/hw/xfree86/common.orig/xf86Events.c 2006-06-27 10:16:25.000000000 +0000 -+++ unix/xorg-server-1.1.0/hw/xfree86/common/xf86Events.c 2006-06-27 10:43:01.000000000 +0000 +--- unix/xorg-server-1.1.1/hw/xfree86/common.orig/xf86Events.c 2006-06-27 10:16:25.000000000 +0000 ++++ unix/xorg-server-1.1.1/hw/xfree86/common/xf86Events.c 2006-06-27 10:43:01.000000000 +0000 @@ -1292,8 +1292,8 @@ size_t size, i; char **strings; @@ -33,8 +33,8 @@ for (i = 0; i < size; i++) ErrorF("%d: %s\n", i, strings[i]); free(strings); ---- unix/xorg-server-1.1.0/cfb/cfbblt.c.orig 2006-08-09 14:09:19.000000000 +0200 -+++ unix/xorg-server-1.1.0/cfb/cfbblt.c 2006-08-09 14:10:03.000000000 +0200 +--- unix/xorg-server-1.1.1/cfb/cfbblt.c.orig 2006-08-09 14:09:19.000000000 +0200 ++++ unix/xorg-server-1.1.1/cfb/cfbblt.c 2006-08-09 14:10:03.000000000 +0200 @@ -39,6 +39,7 @@ #endif ++++++ vnc-102434.patch ++++++ --- vnc_4_1_2-unixsrc/unix/vncviewer/CConn.cxx.102434 2006-10-18 10:10:58.000000000 +0200 +++ vnc_4_1_2-unixsrc/unix/vncviewer/CConn.cxx 2006-10-18 10:12:26.000000000 +0200 @@ -206,6 +206,15 @@ return; } + if(passwdInput) + { + char s[25]; + fgets(s, 25, stdin); + *password = strDup(s); + if(user) *user = 0; + return; + } + const char* secType = secTypeName(getCurrentCSecurity()->getType()); const char* titlePrefix = "VNC Authentication"; CharArray title(strlen(titlePrefix) + strlen(secType) + 4); --- vnc_4_1_2-unixsrc/unix/vncviewer/parameters.h.102434 2006-10-18 10:12:45.000000000 +0200 +++ vnc_4_1_2-unixsrc/unix/vncviewer/parameters.h 2006-10-18 10:13:12.000000000 +0200 @@ -38,6 +38,7 @@ extern rfb::BoolParameter fullScreen; extern rfb::StringParameter geometry; extern rfb::StringParameter embedParent; +extern rfb::BoolParameter passwdInput; extern char aboutText[]; extern char* programName; --- vnc_4_1_2-unixsrc/unix/vncviewer/vncviewer.cxx.102434 2006-10-18 10:13:28.000000000 +0200 +++ vnc_4_1_2-unixsrc/unix/vncviewer/vncviewer.cxx 2006-10-18 10:14:21.000000000 +0200 @@ -52,6 +52,7 @@ "manager decoration around a window", 24); StringParameter passwordFile("PasswordFile", "Password file for VNC authentication", ""); +BoolParameter passwdInput("passwdInput", "Gets password from stdin", false); AliasParameter rfbauth("passwd", "Alias for PasswordFile", &passwordFile); BoolParameter useLocalCursor("UseLocalCursor", --- vnc_4_1_2-unixsrc/unix/vncviewer/vncviewer.man.102434 2006-10-18 10:14:37.000000000 +0200 +++ vnc_4_1_2-unixsrc/unix/vncviewer/vncviewer.man 2006-10-18 10:17:22.000000000 +0200 @@ -108,6 +108,11 @@ "~/.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 ++++++ vnc-188169.patch ++++++ --- vnc-4_1_2-unixsrc/unix/vncviewer/DesktopWindow.cxx.fix 2006-05-15 18:56:20.000000000 +0200 +++ vnc-4_1_2-unixsrc/unix/vncviewer/DesktopWindow.cxx 2006-11-03 15:32:55.000000000 +0100 @@ -370,9 +370,13 @@ break; case ButtonPress: + if(ev->xkey.state & ControlMask) + cc->writer()->keyEvent(XK_Control_L, true); handlePointerEvent(Point(ev->xbutton.x, ev->xbutton.y), (((ev->xbutton.state & 0x1f00) >> 8) | (1 << (ev->xbutton.button-1)))); + if(ev->xkey.state & ControlMask) + cc->writer()->keyEvent(XK_Control_L, false); break; case ButtonRelease: @@ -387,6 +391,16 @@ char keyname[256]; XLookupString(&ev->xkey, keyname, 256, &ks, NULL); bool fakeShiftPress = false; + bool ctrlPressed = false; + + if((ks == XK_Control_L) || (ks == XK_Control_R)) + break; + + if(ev->xkey.state & ControlMask) + { + ctrlPressed = true; + cc->writer()->keyEvent(XK_Control_L, true); + } // Turn ISO_Left_Tab into shifted Tab if (ks == XK_ISO_Left_Tab) { @@ -402,11 +416,19 @@ if (fakeShiftPress) cc->writer()->keyEvent(XK_Shift_L, false); + if(ctrlPressed) + cc->writer()->keyEvent(XK_Control_L, false); break; } case KeyRelease: if (!viewOnly) { + KeySym ks; + char keyname[256]; + XLookupString(&ev->xkey, keyname, 256, &ks, NULL); + if((ks == XK_Control_L) || (ks == XK_Control_L)) + break; + if (downKeysym[ev->xkey.keycode]) { cc->writer()->keyEvent(downKeysym[ev->xkey.keycode], false); downKeysym[ev->xkey.keycode] = 0; ++++++ vnc-210617.patch ++++++ --- vnc-4_1_2-unixsrc/common/network/TcpSocket.cxx.ipv6 2006-10-13 11:31:37.000000000 +0100 +++ vnc-4_1_2-unixsrc/common/network/TcpSocket.cxx 2006-10-13 12:05:40.000000000 +0100 @@ -106,11 +106,29 @@ TcpSocket::TcpSocket(const char *host, int port) : closeFd(true) { + struct sockaddr_storage addr; + size_t addrlen; + struct addrinfo *hostai; int sock; - // - Create a socket initSockets(); - if ((sock = socket(AF_INET, SOCK_STREAM, 0)) < 0) + + if (getaddrinfo(host, NULL, NULL, &hostai)) { + int e = errorNumber; + throw SocketException("unable to resolve host by name", e); + } + + addrlen = hostai->ai_addrlen; + memset(&addr, 0, sizeof(addr)); + memcpy(&addr, hostai->ai_addr, addrlen); + freeaddrinfo(hostai); + if (addr.ss_family == AF_INET) + ((struct sockaddr_in *)&addr)->sin_port = htons(port); + else if (addr.ss_family == AF_INET6) + ((struct sockaddr_in6 *)&addr)->sin6_port = htons(port); + + // - Create a socket + if ((sock = socket(addr.ss_family, SOCK_STREAM, 0)) < 0) throw SocketException("unable to create socket", errorNumber); #ifndef WIN32 @@ -118,30 +136,9 @@ fcntl(sock, F_SETFD, FD_CLOEXEC); #endif - // - Connect it to something - - // Try processing the host as an IP address - struct sockaddr_in addr; - memset(&addr, 0, sizeof(addr)); - addr.sin_family = AF_INET; - addr.sin_addr.s_addr = inet_addr(host); - addr.sin_port = htons(port); - if ((int)addr.sin_addr.s_addr == -1) { - // Host was not an IP address - try resolving as DNS name - struct hostent *hostinfo; - hostinfo = gethostbyname(host); - if (hostinfo && hostinfo->h_addr) { - addr.sin_addr.s_addr = ((struct in_addr *)hostinfo->h_addr)->s_addr; - } else { - int e = errorNumber; - closesocket(sock); - throw SocketException("unable to resolve host by name", e); - } - } - // Attempt to connect to the remote host for (;;) { - if (connect(sock, (struct sockaddr *)&addr, sizeof(addr)) != 0) { + if (connect(sock, (struct sockaddr *)&addr, addrlen) != 0) { int e = errorNumber; if (e == EINTR) continue; ++++++ vnc-build.patch ++++++ reverted: --- vnc-4_1_1-unixsrc/unix/xc/programs/Xserver/vnc/Xvnc/Imakefile 2005-03-10 14:51:39.000000000 +0000 +++ vnc-4_1-unixsrc/unix/xc/programs/Xserver/vnc/Xvnc/Imakefile 2004-12-01 17:27:58.000000000 +0000 @@ -48,7 +48,7 @@ * Make sure XINPUT, XF86VidTune, etc arent defined for the miinitext.o * used by Xvnc */ +EXT_DEFINES = ExtensionDefines -UXINPUT -UXF86VIDMODE -UXFreeXDGA -UXF86MISC -EXT_DEFINES = ExtensionDefines -UXF86VIDMODE -UXFreeXDGA -UXF86MISC #endif @@ -70,7 +70,7 @@ SpecialCplusplusObjectRule(xvnc,$(ICONFIGFILES) xvnc,$(EXT_DEFINES) $(NO_OPERATOR_NAMES)) LinkSourceFile(miinitext.c,$(SERVERSRC)/mi) +SpecialCObjectRule(miinitext,$(ICONFIGFILES),$(EXT_DEFINES) $(PAN_DEFINES) -DNO_HW_ONLY_EXTS -DNO_MODULE_EXTS $(EXT_MODULE_DEFINES) -UXFree86LOADER) -SpecialCObjectRule(miinitext,$(ICONFIGFILES),$(EXT_DEFINES) $(PAN_DEFINES) -DNO_MODULE_EXTS $(EXT_MODULE_DEFINES) -UXFree86LOADER) /* InstallManPage(Xvfb,$(MANDIR)) */ DependTarget() ++++++ vnc-config.patch ++++++ --- vnc-4_1_1-unixsrc/unix/xc/programs/Xserver/vnc/vncExtInit.cc.config 2006-10-25 12:35:00.000000000 +0200 +++ vnc-4_1_1-unixsrc/unix/xc/programs/Xserver/vnc/vncExtInit.cc 2006-10-25 12:35:24.000000000 +0200 @@ -17,6 +17,7 @@ */ #include <stdio.h> +#include "XserverDesktop.h" extern "C" { #define class c_class @@ -48,7 +49,6 @@ #undef min #include <network/TcpSocket.h> -#include "XserverDesktop.h" #include "vncHooks.h" #include "vncExtInit.h" ++++++ vnc-cookie.patch ++++++ --- vnc-4_1-unixsrc/unix/vncserver.cookie 2005-02-23 12:28:18.000000000 +0000 +++ vnc-4_1-unixsrc/unix/vncserver 2005-03-03 22:04:28.000000000 +0000 @@ -116,18 +116,12 @@ $desktopLog = "$vncUserDir/$host:$displayNumber.log"; unlink($desktopLog); -# Make an X server cookie - use as the seed the sum of the current time, our -# PID and part of the encrypted form of the password. Ideally we'd use -# /dev/urandom, but that's only available on Linux. - -srand(time+$$+unpack("L",`cat $vncUserDir/passwd`)); -$cookie = ""; -for (1..16) { - $cookie .= sprintf("%02x", int(rand(256)) % 256); -} - -system("xauth -f $xauthorityFile add $host:$displayNumber . $cookie"); -system("xauth -f $xauthorityFile add $host/unix:$displayNumber . $cookie"); +# Make an X server cookie - use mcookie +$cookie = `/usr/bin/mcookie`; +open (XAUTH, "|xauth -f $xauthorityFile source -"); +print XAUTH "add $host:$displayNumber . $cookie\n"; +print XAUTH "add $host/unix:$displayNumber . $cookie\n"; +close XAUTH; if ($opt{'-name'}) { $desktopName = $opt{'-name'}; ++++++ vnc-modular-xorg.patch ++++++ --- /var/tmp/diff_new_pack.7Qzfb5/_old 2006-12-11 01:50:43.000000000 +0100 +++ /var/tmp/diff_new_pack.7Qzfb5/_new 2006-12-11 01:50:43.000000000 +0100 @@ -40,7 +40,7 @@ VENDOR_STRING); wellKnownSocketsCreated = true; --- /dev/null 2006-06-13 10:12:45.634275750 -0400 -+++ vnc-4_1_2-unixsrc/unix/xorg-server-1.1.0/hw/vnc/Makefile.am 2006-06-13 17:47:02.000000000 -0400 ++++ vnc-4_1_2-unixsrc/unix/xorg-server-1.1.1/hw/vnc/Makefile.am 2006-06-13 17:47:02.000000000 -0400 @@ -0,0 +1,85 @@ +noinst_LTLIBRARIES = libvnccommon.la +libvnccommon_la_SOURCES = \ @@ -127,8 +127,8 @@ + -DVENDOR_RELEASE="$(VENDOR_RELEASE)" \ + -DVENDOR_STRING="\"$(VENDOR_STRING)\"" + ---- vnc-4_1_2-unixsrc/unix/xorg-server-1.1.0/hw/Makefile.am.modular-xorg 2006-01-09 21:30:56.000000000 -0500 -+++ vnc-4_1_2-unixsrc/unix/xorg-server-1.1.0/hw/Makefile.am 2006-06-13 17:47:51.000000000 -0400 +--- vnc-4_1_2-unixsrc/unix/xorg-server-1.1.1/hw/Makefile.am.modular-xorg 2006-01-09 21:30:56.000000000 -0500 ++++ vnc-4_1_2-unixsrc/unix/xorg-server-1.1.1/hw/Makefile.am 2006-06-13 17:47:51.000000000 -0400 @@ -26,6 +26,8 @@ KDRIVE_SUBDIRS = kdrive endif @@ -146,8 +146,8 @@ $(KDRIVE_SUBDIRS) DIST_SUBDIRS = dmx xfree86 vfb xnest xwin darwin kdrive xgl ---- vnc-4_1_2-unixsrc/unix/xorg-server-1.1.0/configure.ac.modular-xorg 2006-05-22 13:18:49.000000000 -0400 -+++ vnc-4_1_2-unixsrc/unix/xorg-server-1.1.0/configure.ac 2006-06-13 17:48:11.000000000 -0400 +--- vnc-4_1_2-unixsrc/unix/xorg-server-1.1.1/configure.ac.modular-xorg 2006-05-22 13:18:49.000000000 -0400 ++++ vnc-4_1_2-unixsrc/unix/xorg-server-1.1.1/configure.ac 2006-06-13 17:48:11.000000000 -0400 @@ -1720,6 +1720,7 @@ hw/xnest/Makefile hw/xwin/Makefile @@ -156,8 +156,8 @@ hw/kdrive/Makefile hw/kdrive/ati/Makefile hw/kdrive/chips/Makefile ---- vnc-4_1_2-unixsrc/unix/xorg-server-1.1.0/mi/miinitext.c.modular-xorg 2006-03-11 19:11:34.000000000 -0500 -+++ vnc-4_1_2-unixsrc/unix/xorg-server-1.1.0/mi/miinitext.c 2006-06-13 17:47:02.000000000 -0400 +--- vnc-4_1_2-unixsrc/unix/xorg-server-1.1.1/mi/miinitext.c.modular-xorg 2006-03-11 19:11:34.000000000 -0500 ++++ vnc-4_1_2-unixsrc/unix/xorg-server-1.1.1/mi/miinitext.c 2006-06-13 17:47:02.000000000 -0400 @@ -297,6 +297,9 @@ #ifdef MITMISC extern void MITMiscExtensionInit(INITARGS); ++++++ vnc-newfbsize.patch ++++++ --- vnc-4_1_2-unixsrc/unix/vncviewer/CConn.cxx.newfbsize 2006-07-15 12:24:08.000000000 +0200 +++ vnc-4_1_2-unixsrc/unix/vncviewer/CConn.cxx 2006-07-15 12:23:29.000000000 +0200 @@ -305,6 +305,8 @@ if (encoding != encodingCopyRect) { lastServerEncoding = encoding; } + if (encoding == pseudoEncodingDesktopSize) + setDesktopSize( r.width(), r.height() ); } void CConn::endRect(const Rect& r, unsigned int encoding) ++++++ vnc-nohttpd.patch ++++++ --- vnc-4_1_1-unixsrc/unix/vncserver.nohttpd 2005-08-08 15:51:09.000000000 +0100 +++ vnc-4_1_1-unixsrc/unix/vncserver 2005-08-11 12:13:59.000000000 +0100 @@ -58,6 +58,7 @@ # Check command line options &ParseOptions("-geometry",1,"-depth",1,"-pixelformat",1,"-name",1,"-kill",1, + "-nohttpd",0, "-help",0,"-h",0,"--help",0); &Usage() if ($opt{'-help'} || $opt{'-h'} || $opt{'--help'}); @@ -78,6 +79,12 @@ if ($opt{'-pixelformat'}) { $pixelformat = $opt{'-pixelformat'}; } +if ($opt{'-nohttpd'}) { + $nohttpd = 1; + } +else { + $nohttpd = 0; +} &CheckGeometryAndDepth(); @@ -137,7 +144,7 @@ $cmd = "Xvnc :$displayNumber"; $cmd .= " -desktop " . "edString($desktopName); -$cmd .= " -httpd $vncJavaFiles" if ($vncJavaFiles); +$cmd .= " -httpd $vncJavaFiles" if ($vncJavaFiles && ! $nohttpd); $cmd .= " -auth $xauthorityFile"; $cmd .= " -geometry $geometry" if ($geometry); $cmd .= " -depth $depth" if ($depth); @@ -413,7 +420,7 @@ sub Usage { - die("\nusage: $prog [:<number>] [-name <desktop-name>] [-depth <depth>]\n". + die("\nusage: $prog [:<number>] [-nohttpd] [-name <desktop-name>] [-depth <depth>]\n". " [-geometry <width>x<height>]\n". " [-pixelformat rgbNNN|bgrNNN]\n". " <Xvnc-options>...\n\n". --- vnc-4_1_1-unixsrc/unix/vncserver.man.nohttpd 2005-08-11 12:17:46.000000000 +0100 +++ vnc-4_1_1-unixsrc/unix/vncserver.man 2005-08-11 12:19:35.000000000 +0100 @@ -77,6 +77,11 @@ must be 8 bits deep. .TP +.B \-nohttpd +Do not instruct Xvnc to run a mini-httpd if the VNC Java applet is +found. + +.TP .B \-kill :\fIdisplay#\fP This kills a VNC desktop previously started with vncserver. It does this by killing the Xvnc process, whose process ID is stored in the file ++++++ vnc-null-interface.patch ++++++ --- vnc-4_1_1-unixsrc/unix/xorg-server-1.1.0/os/access.c.null-interface 2005-11-08 07:33:30.000000000 +0100 +++ vnc-4_1_1-unixsrc/unix/xorg-server-1.1.0/os/access.c 2006-05-09 09:36:25.000000000 +0200 @@ -975,12 +975,14 @@ return; } for (ifr = ifap; ifr != NULL; ifr = ifr->ifa_next) { + if (!ifr->ifa_addr) + continue; #ifdef DNETCONN if (ifr->ifa_addr.sa_family == AF_DECnet) continue; #endif /* DNETCONN */ len = sizeof(*(ifr->ifa_addr)); - family = ConvertAddr(ifr->ifa_addr, &len, (pointer *)&addr); + family = ifr->ifa_addr ? ConvertAddr(ifr->ifa_addr, &len, (pointer *)&addr) : -1; if (family == -1 || family == FamilyLocal) continue; #if defined(IPv6) && defined(AF_INET6) ++++++ vnc-ppc64.patch ++++++ --- /var/tmp/diff_new_pack.7Qzfb5/_old 2006-12-11 01:50:43.000000000 +0100 +++ /var/tmp/diff_new_pack.7Qzfb5/_new 2006-12-11 01:50:43.000000000 +0100 @@ -1,11 +1,11 @@ ---- vnc-4_1_2-unixsrc/unix/xorg-server-1.1.0/hw/xfree86/common/compiler.h.ppc64 2006-05-25 11:08:26.000000000 +0200 -+++ vnc-4_1_2-unixsrc/unix/xorg-server-1.1.0/hw/xfree86/common/compiler.h 2006-05-25 11:08:58.000000000 +0200 -@@ -1083,7 +1083,7 @@ - extern volatile unsigned char *ioBase; - +--- vnc-4_1_2-unixsrc/unix/xorg-server-1.1.1/hw/xfree86/common/compiler.h.ppc64 2006-11-14 16:10:58.000000000 +0100 ++++ vnc-4_1_2-unixsrc/unix/xorg-server-1.1.1/hw/xfree86/common/compiler.h 2006-11-14 16:14:11.000000000 +0100 +@@ -1081,7 +1081,7 @@ #if defined(linux) && defined(__powerpc64__) --# include <asm/memory.h> -+/*# include <asm/memory.h>*/ + # include <linux/version.h> + # if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 0) +-# include <asm/memory.h> ++/*# include <asm/memory.h>*/ + # endif #endif /* defined(linux) && defined(__powerpc64__) */ #ifndef eieio /* We deal with arch-specific eieio() routines above... */ - # define eieio() __asm__ __volatile__ ("eieio" ::: "memory") ++++++ vnc-render.patch ++++++ unchanged: --- vnc-4_1_2-unixsrc/unix/xc/programs/Xserver/vnc/Xvnc/xvnc.cc.render 2005-03-17 09:57:08.000000000 +0000 +++ vnc-4_1_2-unixsrc/unix/xc/programs/Xserver/vnc/Xvnc/xvnc.cc 2005-03-17 10:31:39.000000000 +0000 @@ -135,6 +135,9 @@ static Bool vfbPixmapDepths[33]; static char needswap = 0; static int lastScreen = -1; +#ifdef RENDER +static Bool Render = TRUE; +#endif static bool displaySpecified = false; static bool wellKnownSocketsCreated = false; @@ -226,6 +229,10 @@ VENDOR_STRING); ErrorF("-screen scrn WxHxD set screen's width, height, depth\n"); ErrorF("-pixdepths list-of-int support given pixmap depths\n"); +#ifdef RENDER + ErrorF("+/-render turn on/off RENDER extension support" + "(default on)\n"); +#endif ErrorF("-linebias n adjust thin line pixelization\n"); ErrorF("-blackpixel n pixel value for black\n"); ErrorF("-whitepixel n pixel value for white\n"); @@ -322,6 +329,20 @@ return ret; } +#ifdef RENDER + if (strcmp (argv[i], "+render") == 0) /* +render */ + { + Render = TRUE; + return 1; + } + + if (strcmp (argv[i], "-render") == 0) /* -render */ + { + Render = FALSE; + return 1; + } +#endif + if (strcmp (argv[i], "-blackpixel") == 0) /* -blackpixel n */ { Pixel pix; @@ -822,7 +843,12 @@ if (!fbScreenInit(pScreen, pbits, pvfb->width, pvfb->height, dpi, dpi, pvfb->paddedWidth, pvfb->bitsPerPixel)) return FALSE; -#else + +#ifdef RENDER + if (ret && Render) + fbPictureInit(pScreen, 0, 0); +#endif /* RENDER */ +#else /* VNC_USE_FB */ switch (pvfb->bitsPerPixel) { case 1: @@ -943,6 +969,19 @@ vfbPixmapDepths[vfbScreens[i].depth] = TRUE; } +#ifdef RENDER + /* RENDER needs a good set of pixmaps. */ + if (Render) { + vfbPixmapDepths[1] = TRUE; + vfbPixmapDepths[4] = TRUE; + vfbPixmapDepths[8] = TRUE; +/* vfbPixmapDepths[15] = TRUE; */ + vfbPixmapDepths[16] = TRUE; + vfbPixmapDepths[24] = TRUE; + vfbPixmapDepths[32] = TRUE; + } +#endif + for (i = 1; i <= 32; i++) { if (vfbPixmapDepths[i]) unchanged: --- vnc-4_1_2-unixsrc/unix/xc/programs/Xserver/vnc/module/Imakefile.render 2005-03-17 09:57:09.000000000 +0000 +++ vnc-4_1_2-unixsrc/unix/xc/programs/Xserver/vnc/module/Imakefile 2005-03-17 09:57:09.000000000 +0000 @@ -13,7 +13,7 @@ OBJS = vncExtInit.o vncHooks.o xf86vncModule.o XserverDesktop.o INCLUDES = -I.. -I../../include -I$(EXTINCSRC) -I$(XINCLUDESRC) \ -I$(FONTINCSRC) -I$(XF86COMSRC) \ - $(VNCINCLUDE) + -I../../render $(VNCINCLUDE) DEFINES = $(STD_DEFINES) -DGC_HAS_COMPOSITE_CLIP -DXFree86LOADER LinkSourceFile(vncExtInit.cc,..) unchanged: --- vnc-4_1_2-unixsrc/unix/xc/programs/Xserver/vnc/Imakefile.render 2005-03-17 09:57:09.000000000 +0000 +++ vnc-4_1_2-unixsrc/unix/xc/programs/Xserver/vnc/Imakefile 2005-03-17 09:57:09.000000000 +0000 @@ -19,7 +19,7 @@ SRCS = vncExtInit.cc vncHooks.cc XserverDesktop.cc OBJS = vncExtInit.o vncHooks.o XserverDesktop.o INCLUDES = -I../include -I$(EXTINCSRC) -I$(XINCLUDESRC) -I$(FONTINCSRC) \ - -I../mfb -I../mi $(VNCINCLUDE) + -I../render $(VNCINCLUDE) #if defined(XFree86Version) && XFree86Version >= 4000 VNCDEFINES = -DGC_HAS_COMPOSITE_CLIP #endif diff -u vnc-4_1_1-unixsrc/unix/xc/programs/Xserver/vnc/vncHooks.cc vnc-4_1_1-unixsrc/unix/xc/programs/Xserver/vnc/vncHooks.cc --- vnc-4_1_1-unixsrc/unix/xc/programs/Xserver/vnc/vncHooks.cc 2005-03-17 09:57:09.000000000 +0000 +++ vnc-4_1_1-unixsrc/unix/xc/programs/Xserver/vnc/vncHooks.cc 2005-03-31 12:43:05.000000000 +0100 @@ -29,6 +29,9 @@ #include "regionstr.h" #include "dixfontstr.h" #include "colormapst.h" +#ifdef RENDER +#include "../../../xorg-server-1.1.1/render/picturestr.h" +#endif #ifdef GC_HAS_COMPOSITE_CLIP #define COMPOSITE_CLIP(gc) ((gc)->pCompositeClip) @@ -74,6 +77,9 @@ StoreColorsProcPtr StoreColors; DisplayCursorProcPtr DisplayCursor; ScreenBlockHandlerProcPtr BlockHandler; +#ifdef RENDER + CompositeProcPtr Composite; +#endif } vncHooksScreenRec, *vncHooksScreenPtr; typedef struct { @@ -104,6 +110,13 @@ static Bool vncHooksDisplayCursor(ScreenPtr pScreen, CursorPtr cursor); static void vncHooksBlockHandler(int i, pointer blockData, pointer pTimeout, pointer pReadmask); +#ifdef RENDER +static void vncHooksComposite(CARD8 op, PicturePtr pSrc, PicturePtr pMask, + PicturePtr pDst, INT16 xSrc, INT16 ySrc, + INT16 xMask, INT16 yMask, INT16 xDst, INT16 yDst, + CARD16 width, CARD16 height); +#endif + // GC "funcs" @@ -229,6 +242,13 @@ vncHooksScreen->StoreColors = pScreen->StoreColors; vncHooksScreen->DisplayCursor = pScreen->DisplayCursor; vncHooksScreen->BlockHandler = pScreen->BlockHandler; +#ifdef RENDER + PictureScreenPtr ps; + ps = GetPictureScreenIfSet(pScreen); + if (ps) { + vncHooksScreen->Composite = ps->Composite; + } +#endif pScreen->CloseScreen = vncHooksCloseScreen; pScreen->CreateGC = vncHooksCreateGC; @@ -241,6 +261,11 @@ pScreen->StoreColors = vncHooksStoreColors; pScreen->DisplayCursor = vncHooksDisplayCursor; pScreen->BlockHandler = vncHooksBlockHandler; +#ifdef RENDER + if (ps) { + ps->Composite = vncHooksComposite; + } +#endif return TRUE; } @@ -470,6 +495,38 @@ SCREEN_REWRAP(BlockHandler); } +// Composite - needed for RENDER + +#ifdef RENDER +void vncHooksComposite(CARD8 op, PicturePtr pSrc, PicturePtr pMask, + PicturePtr pDst, INT16 xSrc, INT16 ySrc, INT16 xMask, + INT16 yMask, INT16 xDst, INT16 yDst, CARD16 width, + CARD16 height) +{ + ScreenPtr pScreen = pDst->pDrawable->pScreen; + vncHooksScreenPtr vncHooksScreen = \ + ((vncHooksScreenPtr)pScreen->devPrivates[vncHooksScreenIndex].ptr); + BoxRec box; + PictureScreenPtr ps = GetPictureScreen(pScreen); + + if ((xDst >= 0) && (yDst >= 0)) { + box.x1 = pDst->pDrawable->x + xDst; + box.y1 = pDst->pDrawable->y + yDst; + box.x2 = box.x1 + width; + box.y2 = box.y1 + height; + + RegionHelper changed(pScreen, &box, 0); + vncHooksScreen->desktop->add_changed(changed.reg); + } + + ps->Composite = vncHooksScreen->Composite; + (*ps->Composite)(op, pSrc, pMask, pDst, xSrc, ySrc, + xMask, yMask, xDst, yDst, width, height); + ps->Composite = vncHooksComposite; +} + +#endif /* RENDER */ + ///////////////////////////////////////////////////////////////////////////// ++++++ vnc-xclients.patch ++++++ --- vnc-4_1-unixsrc/unix/vncserver.xclients 2005-03-03 23:01:16.000000000 +0000 +++ vnc-4_1-unixsrc/unix/vncserver 2005-03-03 23:02:26.000000000 +0000 @@ -42,6 +42,10 @@ $defaultXStartup = ("#!/bin/sh\n\n". + "# Uncomment the following two lines for normal desktop:\n". + "# unset SESSION_MANAGER\n". + "# exec /etc/X11/xinit/xinitrc\n\n". + "[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup\n". "[ -r \$HOME/.Xresources ] && xrdb \$HOME/.Xresources\n". "xsetroot -solid grey\n". "vncconfig -iconic &\n". ++++++ warning-fix.diff ++++++ --- cfb/cfbteblt8.c.orig 2006-12-08 20:38:53.648155234 +0100 +++ cfb/cfbteblt8.c 2006-12-08 20:42:45.810460788 +0100 @@ -303,7 +303,7 @@ #define StorePixels(o,p) dst[o] = p #define Loop dst += widthDst; #else -#define StorePixels(o,p) *dst++ = (p) +#define StorePixels(o,p) do { *dst = (p); dst++; } while (0) #define Loop dst += widthLeft; #endif ++++++ xorg-server-1.1.0.tar.bz2 -> xorg-server-1.1.1.tar.bz2 ++++++ xorg-x11-Xvnc/xorg-server-1.1.0.tar.bz2 /mounts/work_src_done/STABLE/xorg-x11-Xvnc/xorg-server-1.1.1.tar.bz2 differ: char 11, line 1 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org