Merge branch 'feature/VNC-239-cleanup-unused-tigervnc-files' into 'master'

Resolve VNC-239 "Feature/ cleanup unused tigervnc files"

Closes VNC-239

See merge request kasm-technologies/internal/KasmVNC!203
This commit is contained in:
Matthew McClaskey 2025-10-08 18:41:55 +00:00
commit f4c7829244
161 changed files with 0 additions and 19051 deletions

View file

@ -1,20 +0,0 @@
#!/bin/bash
# this script will build kasmvnc and build a new kasm desktop image
# this script assumes you have an instance of kasm already deployed
# it will replace the existing kasm desktop image so the next kasm you launch will use the updated image
set -e
if [[ $EUID -ne 0 ]]; then
echo "This script must be run as root"
exit 1
fi
docker build -t kasmvncbuilder:latest -f builder/dockerfile.build .
docker run -v /tmp:/build kasmvncbuilder:latest
cp /tmp/kasmvnc*.tar.gz builder/
cd builder
docker build -t kasmweb/desktop-deluxe:develop -f dockerfile.test .
docker ps -aq --no-trunc -f status=exited | xargs docker rm
docker rmi $(docker images | grep "<none>" | awk "{print $3}")

View file

@ -1,19 +0,0 @@
FROM debian:buster-slim
ENV STARTUPDIR=/dockerstartup
COPY ./builder/scripts/ /tmp/scripts/
COPY ./debian/changelog /tmp
ARG KASMVNC_PACKAGE_DIR
COPY $KASMVNC_PACKAGE_DIR/kasmvncserver_*.deb /tmp/
RUN /tmp/scripts/install_kasmvncserver_package
RUN apt-get update && apt-get -y install xterm
RUN mkdir -p $STARTUPDIR
COPY builder/startup/vnc_startup_barebones.sh $STARTUPDIR
RUN useradd -m foo
USER foo:ssl-cert
ENTRYPOINT "/$STARTUPDIR/vnc_startup_barebones.sh"

View file

@ -1,27 +0,0 @@
FROM debian:buster
ENV KASMVNC_BUILD_OS debian
ENV KASMVNC_BUILD_OS_CODENAME buster
ENV XORG_VER 1.20.10
ENV DEBIAN_FRONTEND noninteractive
RUN grep '^deb' /etc/apt/sources.list | sed 's#^deb#deb-src#' >> /etc/apt/sources.list
RUN apt-get update && \
apt-get -y install sudo
RUN DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends tzdata
RUN apt-get update && apt-get -y build-dep xorg-server libxfont-dev
RUN apt-get update && apt-get -y install ninja-build cmake nasm git libgnutls28-dev vim wget tightvncserver curl
RUN apt-get update && apt-get -y install libpng-dev libtiff-dev libgif-dev libavcodec-dev libssl-dev libxrandr-dev libxcursor-dev
ENV SCRIPTS_DIR=/tmp/scripts
COPY builder/scripts $SCRIPTS_DIR
RUN $SCRIPTS_DIR/build-deps.sh
RUN useradd -m docker && echo "docker:docker" | chpasswd && adduser docker sudo
COPY --chown=docker:docker . /src/
USER docker
ENTRYPOINT ["/src/builder/build.sh"]

View file

@ -1,19 +0,0 @@
FROM debian:buster
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update && \
apt-get -y install vim build-essential devscripts equivs
# Install build-deps for the package.
COPY ./debian/control /tmp
RUN apt-get update && echo YYY | mk-build-deps --install --remove /tmp/control
ARG L_UID
RUN if [ "$L_UID" -eq 0 ]; then \
useradd -m docker; \
else \
useradd -m docker -u $L_UID;\
fi
USER docker

View file

@ -1,56 +0,0 @@
FROM debian:buster-slim
ENV DISPLAY=:1 \
VNC_PORT=8443 \
VNC_RESOLUTION=1280x720 \
MAX_FRAME_RATE=24 \
VNCOPTIONS="-PreferBandwidth -DynamicQualityMin=4 -DynamicQualityMax=7" \
HOME=/home/user \
TERM=xterm \
STARTUPDIR=/dockerstartup \
INST_SCRIPTS=/dockerstartup/install \
KASM_RX_HOME=/dockerstartup/kasmrx \
DEBIAN_FRONTEND=noninteractive \
VNC_COL_DEPTH=24 \
VNC_RESOLUTION=1280x1024 \
VNC_PW=vncpassword \
VNC_USER=user \
VNC_VIEW_ONLY_PW=vncviewonlypassword \
LD_LIBRARY_PATH=/usr/local/lib/ \
OMP_WAIT_POLICY=PASSIVE \
SHELL=/bin/bash \
SINGLE_APPLICATION=0 \
KASMVNC_BUILD_OS=debian \
KASMVNC_BUILD_OS_CODENAME=buster
EXPOSE $VNC_PORT
WORKDIR $HOME
### REQUIRED STUFF ###
RUN apt-get update && apt-get install -y supervisor xfce4 xfce4-terminal xterm libnss-wrapper gettext wget
RUN apt-get purge -y pm-utils xscreensaver*
RUN apt-get update && apt-get install -y vim less
RUN apt-get update && apt-get -y install lsb-release
RUN echo 'source $STARTUPDIR/generate_container_user' >> $HOME/.bashrc
RUN mkdir -p $STARTUPDIR
COPY builder/startup/ $STARTUPDIR
### START CUSTOM STUFF ####
COPY ./builder/scripts/ /tmp/scripts/
COPY ./debian/changelog /tmp
ARG KASMVNC_PACKAGE_DIR
COPY $KASMVNC_PACKAGE_DIR/kasmvncserver_*.deb /tmp/
RUN /tmp/scripts/install_kasmvncserver_package
### END CUSTOM STUFF ###
RUN chown -R 1000:0 $HOME
USER 1000:ssl-cert
WORKDIR $HOME
ENTRYPOINT [ "/dockerstartup/vnc_startup.sh" ]

View file

@ -1,88 +0,0 @@
FROM fedora:39
ENV KASMVNC_BUILD_OS fedora
ENV KASMVNC_BUILD_OS_CODENAME thirtynine
ENV XORG_VER 1.20.14
RUN \
echo "**** install build deps ****" && \
dnf group install -y \
"C Development Tools and Libraries" \
"Development Tools" && \
dnf install -y \
autoconf \
automake \
bison \
byacc \
bzip2 \
cmake \
nasm \
diffutils \
doxygen \
file \
flex \
fop \
gcc \
gcc-c++ \
git \
glibc-devel \
libdrm-devel \
libepoxy-devel \
libmd-devel \
libpciaccess-devel \
libtool \
libwebp-devel \
libX11-devel \
libXau-devel \
libxcb-devel \
libXcursor-devel \
libxcvt-devel \
libXdmcp-devel \
libXext-devel \
libXfont2-devel \
libxkbfile-devel \
libXrandr-devel \
libxshmfence-devel \
libXtst-devel \
mesa-libEGL-devel \
mesa-libgbm-devel \
mesa-libGL-devel \
meson \
mingw64-binutils \
mt-st \
nettle-devel \
openssl-devel \
patch \
pixman-devel \
wayland-devel \
wget \
which \
xcb-util-devel \
xcb-util-image-devel \
xcb-util-keysyms-devel \
xcb-util-renderutil-devel \
xcb-util-wm-devel \
xinit \
xkbcomp \
xkbcomp-devel \
xkeyboard-config \
xmlto \
xorg-x11-font-utils \
xorg-x11-proto-devel \
xorg-x11-server-common \
xorg-x11-server-devel \
xorg-x11-xtrans-devel \
xsltproc \
libavformat-free-devel \
libswscale-free-devel
ENV SCRIPTS_DIR=/tmp/scripts
COPY builder/scripts $SCRIPTS_DIR
RUN $SCRIPTS_DIR/build-deps.sh
RUN useradd -m docker && echo "docker:docker" | chpasswd
COPY --chown=docker:docker . /src/
USER docker
ENTRYPOINT ["/src/builder/build.sh"]

View file

@ -1,13 +0,0 @@
FROM fedora:39
RUN dnf install -y fedora-packager fedora-review
RUN dnf install -y tree vim less
RUN dnf install -y redhat-lsb-core
RUN dnf install -y dnf-plugins-core
COPY fedora/*.spec /tmp
RUN dnf builddep -y /tmp/*.spec
RUN useradd -m docker && echo "docker:docker" | chpasswd
USER docker

View file

@ -1,11 +0,0 @@
#!/bin/bash
set -e
display=:10
interface=0.0.0.0
vncserver $display -depth 24 -geometry 1280x1050 -websocketPort 8443 \
-cert /etc/ssl/certs/ssl-cert-snakeoil.pem \
-key /etc/ssl/private/ssl-cert-snakeoil.key -sslOnly -FrameRate=24 \
-interface $interface -httpd /usr/share/kasmvnc/www

View file

@ -1,31 +0,0 @@
tigervnc (1.3.0-3ubuntu1) precise; urgency=low
* Build Xvnc against native upstream xorg sources, using native config
options. Use distro-specific fltk1.3 sources.
-- Brian P. Hinz <bphinz@users.sourceforge.net> Sun, 14 Jul 2013 15:22:28 -0400
tigervnc (1.3.0-3) precise; urgency=low
* Additional dependencies (derived from ldd | dpkg -S).
-- Brian P. Hinz <bphinz@users.sourceforge.net> Sun, 07 Jul 2013 11:01:33 -0400
tigervnc (1.3.0-2) precise; urgency=low
* Added build dependencies to improve font support in viewer.
-- Brian P. Hinz <bphinz@users.sourceforge.net> Sun, 07 Jul 2013 10:44:05 -0400
tigervnc (1.3.0-1) precise; urgency=low
* Removed java viewer from server package. Fixed typo in server
dependencies.
-- Brian P. Hinz <bphinz@users.sourceforge.net> Sun, 07 Jul 2013 09:55:44 -0400
tigervnc (1.3.0) precise; urgency=low
* Initial release.
-- Brian P. Hinz <bphinz@users.sourceforge.net> Fri, 05 Jul 2013 00:47:02 -0400

View file

@ -1,70 +0,0 @@
Source: tigervnc
Section: x11
Priority: optional
Maintainer: Brian P. Hinz <bphinz@users.sourceforge.net>
Standards-Version: 3.8.4
Build-Depends: debhelper (>> 7.1), zlib1g-dev, libjpeg-turbo8-dev, libxaw7-dev (>> 4.1.0), perl-modules, xfonts-base, xutils-dev, libx11-dev, libxau-dev, libxext-dev, libxi-dev, libxkbfile-dev, libxmu-dev, libxt-dev, x11proto-core-dev, cmake (>> 2.8), libgnutls28-dev, libpam0g-dev, libpng-dev, automake, autoconf, libtool, pkg-config, libpixman-1-dev, x11proto-bigreqs-dev, x11proto-composite-dev, x11proto-damage-dev, x11proto-dri2-dev, x11proto-fixes-dev, x11proto-fonts-dev, x11proto-gl-dev, x11proto-input-dev, x11proto-kb-dev, x11proto-randr-dev, x11proto-render-dev, x11proto-resource-dev, x11proto-scrnsaver-dev, x11proto-video-dev, x11proto-xcmisc-dev, x11proto-xext-dev, x11proto-xf86bigfont-dev, x11proto-xf86dga-dev, x11proto-xf86dri-dev, x11proto-xf86misc-dev, x11proto-xf86vidmode-dev, x11proto-xinerama-dev, libosmesa6-dev, libgl1-mesa-dev, libgl1-mesa-dri, libgl1-mesa-glx, libxfont-dev, x11proto-record-dev, default-jdk, libxtst-dev, libxft-dev, libexpat1-dev, libfontconfig1-dev, libxrender-dev, libt1-dev, libpciaccess-dev, curl, bzip2, quilt, libglu1-mesa-dev, libxcursor-dev, libxinerama-dev, libxfixes-dev, libxdamage-dev, libgcrypt11-dev
Homepage: http://www.tigervnc.com
Package: tigervncserver
Architecture: any
Provides: xserver, vnc-server
Depends: x11-common | xserver-common, x11-utils, xauth, libbz2-1.0, libc6, libfontenc1, libfreetype6, libgcc1, libgl1-mesa-dri, libgnutls28, libjpeg-turbo8, libp11-kit0, libpam0g, libpixman-1-0, libstdc++6, libtasn1-3, libx11-6, libxau6, libxcb1, libxdmcp6, libxext6, libxfont1, libxtst6, zlib1g, libglu1-mesa, libxcursor1, libxinerama1, libxfixes3, x11-xkb-utils, libgcrypt11
Recommends: xfonts-base, x11-xserver-utils
Suggests: xtigervncviewer, tigervnc-java
Description: virtual network computing server software
Virtual Network Computing (VNC) is a remote display system which allows you to
view and interact with a virtual desktop environment that is running on another
computer on the network. Using VNC, you can run graphical applications on a
remote machine and send only the display from these applications to your local
machine. VNC is platform-independent and supports a wide variety of operating
systems and architectures as both servers and clients.
.
TigerVNC is a high-speed version of VNC based on the RealVNC 4 and X.org code
bases. TigerVNC started as a next-generation development effort for TightVNC
on Unix and Linux platforms, but it split from its parent project in early 2009
so that TightVNC could focus on Windows platforms. TigerVNC supports a variant
of Tight encoding that is greatly accelerated by the use of the libjpeg-turbo
JPEG codec.
Package: xtigervncviewer
Architecture: any
Provides: vncviewer, vnc-viewer
Depends: libc6, libexpat1, libfontconfig1, libfreetype6, libgcc1, libgnutls28, libjpeg-turbo8, libp11-kit0, libpng12-0, libstdc++6, libtasn1-3, libx11-6, libxau6, libxcb1, libxdmcp6, libxext6, libxft2, libxrender1, zlib1g, libglu1-mesa
Recommends: xfonts-base
Suggests: tigervncserver, ssh
Description: virtual network computing client software for X
Virtual Network Computing (VNC) is a remote display system which allows you to
view and interact with a virtual desktop environment that is running on another
computer on the network. Using VNC, you can run graphical applications on a
remote machine and send only the display from these applications to your local
machine. VNC is platform-independent and supports a wide variety of operating
systems and architectures as both servers and clients.
.
TigerVNC is a high-speed version of VNC based on the RealVNC 4 and X.org code
bases. TigerVNC started as a next-generation development effort for TightVNC
on Unix and Linux platforms, but it split from its parent project in early 2009
so that TightVNC could focus on Windows platforms. TigerVNC supports a variant
of Tight encoding that is greatly accelerated by the use of the libjpeg-turbo
JPEG codec.
Package: tigervnc-java
Architecture: any
Suggests: tigervncserver
Provides: vncviewer, vnc-viewer
Depends: default-jre
Description: TigerVNC java applet
Virtual Network Computing (VNC) is a remote display system which allows you to
view and interact with a virtual desktop environment that is running on another
computer on the network. Using VNC, you can run graphical applications on a
remote machine and send only the display from these applications to your local
machine. VNC is platform-independent and supports a wide variety of operating
systems and architectures as both servers and clients.
.
TigerVNC is a high-speed version of VNC based on the RealVNC 4 and X.org code
bases. TigerVNC started as a next-generation development effort for TightVNC
on Unix and Linux platforms, but it split from its parent project in early 2009
so that TightVNC could focus on Windows platforms. TigerVNC supports a variant
of Tight encoding that is greatly accelerated by the use of the libjpeg-turbo
JPEG codec.

View file

@ -1,116 +0,0 @@
This package was packaged for Debian by Brian P. Hinz <bphinz@users.sourceforge.net>
on Tue, 02 Jul 2013 21:33:24 +0500 using the tightvnc package as a base.
It was downloaded from:
http://www.tigervnc.org/
COPYRIGHT:
==========
TigerVNC is
Copyright (C) 1999 AT&T Laboratories Cambridge
Copyright (C) 2002-2005 RealVNC Ltd.
Copyright (C) 2000-2006 TightVNC Group
Copyright (C) 2005-2006 Martin Koegler
Copyright (C) 2005-2006 Sun Microsystems, Inc.
Copyright (C) 2006 OCCAM Financial Technology
Copyright (C) 2000-2008 Constantin Kaplinsky
Copyright (C) 2004-2009 Peter Astrand for Cendio AB
Copyright (C) 2010 Antoine Martin
Copyright (C) 2010 m-privacy GmbH
Copyright (C) 2009-2011 D. R. Commander
Copyright (C) 2009-2011 Pierre Ossman for Cendio AB
Copyright (C) 2004, 2009-2011 Red Hat, Inc.
Copyright (C) 2009-2011 TigerVNC Team
All Rights Reserved.
This software is distributed under the GNU General Public Licence as published
by the Free Software Foundation. See the file LICENSE.TXT for the conditions
under which this software is made available. TigerVNC also contains code from
other sources. See the Acknowledgements section below, and the individual
source files, for details of the conditions under which they are made
available.
ACKNOWLEDGEMENTS
================
This distribution contains zlib compression software. This is:
Copyright (C) 1995-2002 Jean-loup Gailly and Mark Adler
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
Jean-loup Gailly Mark Adler
jloup@gzip.org madler@alumni.caltech.edu
The data format used by the zlib library is described by RFCs (Request for
Comments) 1950 to 1952 in the files ftp://ds.internic.net/rfc/rfc1950.txt
(zlib format), rfc1951.txt (deflate format) and rfc1952.txt (gzip format).
This distribution contains public domain DES software by Richard Outerbridge.
This is:
Copyright (c) 1988,1989,1990,1991,1992 by Richard Outerbridge.
(GEnie : OUTER; CIS : [71755,204]) Graven Imagery, 1992.
This distribution contains software from the X Window System. This is:
Copyright 1987, 1988, 1998 The Open Group
Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation.
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Except as contained in this notice, the name of The Open Group shall not be
used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from The Open Group.
Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts.
All Rights Reserved
Permission to use, copy, modify, and distribute this software and its
documentation for any purpose and without fee is hereby granted,
provided that the above copyright notice appear in all copies and that
both that copyright notice and this permission notice appear in
supporting documentation, and that the name of Digital not be
used in advertising or publicity pertaining to distribution of the
software without specific, written prior permission.
DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
SOFTWARE.

View file

@ -1,38 +0,0 @@
#!/bin/bash
#curl -L -o tigervnc-1.3.0.tar.bz2 "http://downloads.sourceforge.net/project/tigervnc/tigervnc/1.3.0/tigervnc-1.3.0.tar.bz2"
#tar xjf tigervnc-*.tar.bz2
#rm tigervnc-*.tar.bz2
curl -OL http://sourceforge.net/code-snapshots/svn/t/ti/tigervnc/code/tigervnc-code-5136-trunk.zip
unzip tigervnc-code-*-trunk.zip
mv tigervnc-code-*-trunk tigervnc-1.3.80
rm tigervnc-code-*-trunk.zip
pushd tigervnc-*
curl -L -o fltk-1.3.2-source.tar.gz 'http://anonscm.debian.org/gitweb/?p=users/ucko/fltk1.3.git;a=snapshot;h=HEAD;sf=tgz'
tar xzf fltk-*-source.tar.gz
rm fltk-*-source.tar.gz
mv fltk1.3-* fltk-1.3.2
pushd fltk-*
sh ../../debian/patch_fltk.sh
find . -name "*.orig" -exec rm {} \;
popd
curl -L -o xorg-server-1.11.4-0ubuntu10.3.tar.gz 'http://anonscm.debian.org/gitweb/?p=pkg-xorg/xserver/xorg-server.git;a=snapshot;h=cbf435a091906484112f5c4cf35b17738e779ce9;sf=tgz'
tar xzf xorg-server-*.tar.gz
rm xorg-server-*.tar.gz
pushd xorg-server-*
QUILT_PATCHES=debian/patches quilt push -a
popd
cp -r xorg-server-*/* unix/xserver
rm -rf xorg-server-*
pushd unix/xserver
for all in `find . -type f -perm -001`; do
chmod -x "$all"
done
patch -p1 -b --suffix .vnc < ../xserver111.patch
popd
popd
if [ -e tigervnc_1.3.80.orig.tar.gz ] ; then
rm tigervnc_1.3.80.orig.tar.gz
fi
tar czf tigervnc_1.3.80.orig.tar.gz tigervnc-1.3.80
rm -rf tigervnc-1.3.80

View file

@ -1,94 +0,0 @@
#!/bin/bash
#
# Init file for TigerVNC Server
#
# chkconfig: - 91 35
# description: TigerVNC remote X administration daemon.
#
# processname: Xvnc
### BEGIN INIT INFO
# Provides: vncservers
# Required-Start: networking
# Required-Stop: networking
# Default-Start:
# Default-Stop: 0 1 2 3 4 5 6
# Short-Description: Starts and stops vncserver
# Description: Used to provide remote X administration services.
### END INIT INFO
# Source function library.
. /lib/lsb/init-functions
### Default variables
SYSCONFIG="/etc/default/vncservers"
VNCSERVERS=""
### Read configuration
[ -r "$SYSCONFIG" ] && . "$SYSCONFIG"
RETVAL=0
prog=$"VNC server"
start() {
echo -n $"Starting $prog: "
ulimit -S -c 0 >/dev/null 2>&1
for display in ${VNCSERVERS}; do
echo -n "${display} "
if [ -r $(eval echo ~${display##*:})/.vnc/passwd ]; then
unset BASH_ENV ENV
log_begin_msg "Starting VNC Server for user ${display##*:}:"
su ${display##*:} -c "cd ~${display##*:} && [ -f .vnc/passwd ] && vncserver :${display%%:*} ${VNCSERVERARGS[${display%:*}]}"
RETVAL="$?"
if [ "$RETVAL" -ne 0 ]; then
log_end_msg 1
break
else
log_end_msg 0
fi
else
log_begin_msg "Not starting VNC Server for user ${display##*:}.\n File \"~${display##*:}/.vnc/passwd\" not found.\n Create a password file for the VNC server with vncpasswd"
log_end_msg 1
fi
done
echo
[ "$RETVAL" -eq 0 ] && touch "/var/lock/vncserver"
return $RETVAL
}
stop() {
echo -n $"Shutting down $desc: "
for display in ${VNCSERVERS}; do
echo -n "${display} "
unset BASH_ENV ENV
log_begin_msg "Shutting down VNC Server for user ${display##*:}: "
su ${display##*:} -c "vncserver -kill :${display%%:*}" >/dev/null 2>&1
RETVAL="$?"
[ "$RETVAL" -eq 0 ] && log_end_msg 0 || log_end_msg 1
done
echo
[ "$RETVAL" -eq 0 ] && rm -f "/var/lock/vncserver"
return $RETVAL
}
restart() {
stop
start
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart|reload)
restart
;;
*)
echo $"Usage: $0 {start|stop|restart}"
RETVAL=1
esac
exit $RETVAL

View file

@ -1,19 +0,0 @@
# The VNCSERVERS variable is a list of display:user pairs.
#
# Uncomment the lines below to start a VNC server on display :2
# as my 'myusername' (adjust this to your own). You will also
# need to set a VNC password; run 'man vncpasswd' to see how
# to do that.
#
# DO NOT RUN THIS SERVICE if your local area network is
# untrusted! For a secure way of using VNC, see this URL:
# http://kbase.redhat.com/faq/docs/DOC-7028
# Use "-nolisten tcp" to prevent X connections to your VNC server via TCP.
# Use "-localhost" to prevent remote VNC clients connecting except when
# doing so through a secure tunnel. See the "-via" option in the
# `man vncviewer' manual page.
# VNCSERVERS="2:myusername"
# VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -localhost"

View file

@ -1,52 +0,0 @@
#!/bin/bash
set -e
apply_patch()
{
rm -f $2
curl -OL http://www.fltk.org/strfiles/$1/$2
patch -p1 < $2
}
# Export dead key information from FLTK to the apps
# http://www.fltk.org/str.php?L2599
apply_patch 2599 fltk-1_v4.3.x-keyboard-x11.patch
apply_patch 2599 fltk-1_v4.3.x-keyboard-win32.patch
apply_patch 2599 fltk-1_v6.3.x-keyboard-osx.patch
# Notify applications of changes to the clipboard
# http://www.fltk.org/str.php?L2636
apply_patch 2636 fltk-1.3.x-clipboard.patch
apply_patch 2636 fltk-1_v6.3.x-clipboard-x11.patch
apply_patch 2636 fltk-1_v3.3.x-clipboard-win32-fix.patch
apply_patch 2636 fltk-1_v2.3.x-clipboard-win32.patch
apply_patch 2636 fltk-1_v2.3.x-clipboard-osx.patch
# Ability to convert a Fl_Pixmap to a Fl_RGB_Image
# http://www.fltk.org/str.php?L2659
apply_patch 2659 pixmap_v2.patch
# Support for custom cursors
# http://www.fltk.org/str.php?L2660
apply_patch 2660 fltk-1_v5.3.x-cursor.patch
# Improve modality interaction with WM
# http://www.fltk.org/str.php?L2802
apply_patch 2802 fltk-1_v2.3.0-modal.patch
# Window icons
# http://www.fltk.org/str.php?L2816
apply_patch 2816 fltk-1_v3.3.0-icons.patch
# Multihead
# http://fltk.org/str.php?L2860
apply_patch 2860 fltk-1.3.x-screen_num.patch
apply_patch 2860 fltk-1_v3.3.x-multihead.patch
# Apply DRC's patches to FLTK
curl -L 'https://sourceforge.net/mailarchive/attachment.php?list_name=tigervnc-devel&message_id=512DD1FE.7090609%40users.sourceforge.net&counter=1' -o 0001-Add-BUILD_STATIC-feature-from-TigerVNC-to-optionally.patch
curl -L 'https://sourceforge.net/mailarchive/attachment.php?list_name=tigervnc-devel&message_id=512DD1FE.7090609%40users.sourceforge.net&counter=2' -o 0002-Fl_cocoa.mm-depends-on-some-Carbon-functions-so-we-n.patch
curl -L 'https://sourceforge.net/mailarchive/attachment.php?list_name=tigervnc-devel&message_id=512DD1FE.7090609%40users.sourceforge.net&counter=3' -o 0003-We-need-to-unset-CMAKE_REQUIRED_LIBRARIES-after-chec.patch
patch -p1 -i 0001-Add-BUILD_STATIC-feature-from-TigerVNC-to-optionally.patch
patch -p1 -i 0002-Fl_cocoa.mm-depends-on-some-Carbon-functions-so-we-n.patch
patch -p1 -i 0003-We-need-to-unset-CMAKE_REQUIRED_LIBRARIES-after-chec.patch

View file

@ -1,26 +0,0 @@
--- a/unix/xserver/hw/vnc/xvnc.c 2013-07-14 14:05:29.963390223 -0400
+++ b/unix/xserver/hw/vnc/xvnc.c 2013-07-14 14:04:12.840357191 -0400
@@ -250,7 +250,7 @@
#if XORG < 111
AbortDDX()
#else
-AbortDDX(enum ExitCode error)
+SigAbortDDX(int signo, enum ExitCode error)
#endif
{
#if XORG < 111
@@ -260,6 +260,14 @@
#endif
}
+#if XORG >= 111
+void
+AbortDDX(enum ExitCode error)
+{
+ SigAbortDDX(0, error);
+}
+#endif
+
#ifdef __DARWIN__
void
DarwinHandleGUI(int argc, char *argv[])

View file

@ -1,10 +0,0 @@
--- a/unix/xserver/man/Makefile.am 2013-03-30 17:51:01.707258746 -0400
+++ b/unix/xserver/man/Makefile.am 2013-03-30 17:51:47.606569692 -0400
@@ -2,5 +2,7 @@
# (i.e. those handled in the os/utils.c options processing instead of in
# the DDX-level options processing)
+if ENABLE_DOCS
include $(top_srcdir)/manpages.am
appman_PRE = Xserver.man
+endif ENABLE_DOCS

View file

@ -1,52 +0,0 @@
--- a/ltmain.sh 2016-05-11 23:23:25.796742323 -0400
+++ b/ltmain.sh 2016-05-11 23:24:47.173010324 -0400
@@ -6447,6 +6447,9 @@
# It is a libtool convenience library, so add in its objects.
func_append convenience " $ladir/$objdir/$old_library"
func_append old_convenience " $ladir/$objdir/$old_library"
+ elif test "$linkmode" != prog && test "$linkmode" != lib; then
+ func_fatal_error "\`$lib' is not a convenience library"
+ fi
tmp_libs=
for deplib in $dependency_libs; do
deplibs="$deplib $deplibs"
@@ -6457,9 +6460,6 @@
fi
func_append tmp_libs " $deplib"
done
- elif test "$linkmode" != prog && test "$linkmode" != lib; then
- func_fatal_error "\`$lib' is not a convenience library"
- fi
continue
fi # $pass = conv
--- a/m4/libtool.m4 2016-05-11 23:26:23.801328557 -0400
+++ b/m4/libtool.m4 2016-05-11 23:27:12.701489603 -0400
@@ -4589,9 +4589,6 @@
;;
esac
;;
- linux* | k*bsd*-gnu | gnu*)
- _LT_TAGVAR(link_all_deplibs, $1)=no
- ;;
*)
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
;;
@@ -4654,9 +4651,6 @@
openbsd*)
with_gnu_ld=no
;;
- linux* | k*bsd*-gnu | gnu*)
- _LT_TAGVAR(link_all_deplibs, $1)=no
- ;;
esac
_LT_TAGVAR(ld_shlibs, $1)=yes
@@ -5055,7 +5049,6 @@
if test "$aix_use_runtimelinking" = yes; then
shared_flag="$shared_flag "'${wl}-G'
fi
- _LT_TAGVAR(link_all_deplibs, $1)=no
else
# not using gcc
if test "$host_cpu" = ia64; then

View file

@ -1,8 +0,0 @@
## Patches with a number < 100 are applied in debian.
## Ubuntu patches start with 100.
# Ubuntu patches
100_rethrow_signals.patch
# Upstream patches
516_tigervnc-xorg-manpages.patch

View file

@ -1,277 +0,0 @@
#!/usr/bin/make -f
# Sample debian/rules that uses debhelper.
# GNU copyright 1997 by Joey Hess.
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
# These are used for cross-compiling and for saving the configure script
# from having to guess our platform (since we know it already)
#DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
#DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)
DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
DEB_HOST_ARCH_OS ?= $(shell dpkg-architecture -qDEB_HOST_ARCH_OS)
ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE))
confflags += --build=$(DEB_HOST_GNU_TYPE)
else
confflags += --build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE)
endif
SOURCE_NAME := tigervnc
SOURCE_VERSION := $(shell dpkg-parsechangelog | awk -F': ' '/^Version: / {print $$2}')
BUILDER=For technical support please see http://sourceforge.net/projects/tigervnc/support
ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
CFLAGS += -g -O2 -fPIC
endif
ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
INSTALL_PROGRAM += -s
endif
export CC = gcc
get-orig-source: $(SOURCE_NAME)_$(SOURCE_VERSION).orig.tar.gz
@
$(SOURCE_NAME)_$(SOURCE_VERSION).orig.tar.gz:
$(CURDIR)/get-orig-source.sh
configure: config-stamp
config-stamp:
dh_testdir
# Add here commands to configure the package.
(cd fltk-*;cmake -G"Unix Makefiles" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release \
-DOPTION_PREFIX_LIB=/usr/lib \
-DOPTION_PREFIX_CONFIG=/usr/lib \
-DOPTION_BUILD_EXAMPLES=off \
-DOPTION_USE_SYSTEM_LIBPNG=on;make)
cmake -G"Unix Makefiles" \
-DBUILD_STATIC=off \
-DCMAKE_INSTALL_PREFIX=/usr \
-DFLTK_LIBRARIES="$(CURDIR)/fltk-1.3.3/lib/libfltk.a;$(CURDIR)/fltk-1.3.3/lib/libfltk_images.a;-lpng" \
-DFLTK_INCLUDE_DIR=$(CURDIR)/fltk-1.3.3
(cd unix/xserver; \
export PIXMANINCDIR=/usr/include/pixman-1; \
autoreconf -fiv; \
patch -p1 -i ../../debian/patches/debian_libtool.patch; \
./configure --prefix=/usr \
--disable-silent-rules \
--disable-static \
--without-dtrace \
--disable-strict-compilation \
--disable-debug \
--disable-unit-tests \
--with-int10=x86emu \
--with-extra-module-dir="/usr/lib/${DEB_HOST_MULTIARCH}/xorg/extra-modules,/usr/lib/xorg/extra-modules" \
--with-os-vendor="$(VENDOR)" \
--with-builderstring="$(SOURCE_NAME) $(SOURCE_VERSION) ($(BUILDER))" \
--with-xkb-path=/usr/share/X11/xkb \
--with-xkb-output=/var/lib/xkb \
--with-default-xkb-rules=evdev \
--disable-devel-docs \
--disable-install-libxf86config \
--enable-mitshm \
--enable-xres \
--disable-xcsecurity \
--disable-xcalibrate \
--disable-tslib \
--enable-dbe \
--disable-xf86bigfont \
--disable-dpms \
--disable-config-dbus \
--disable-config-hal \
--disable-config-udev \
--disable-xorg \
--disable-xquartz \
--disable-xwin \
--disable-xfake \
--disable-install-setuid \
--enable-gestures \
--with-default-font-path="/usr/share/fonts/X11/misc,/usr/share/fonts/X11/cyrillic,/usr/share/fonts/X11/100dpi/:unscaled,/usr/share/fonts/X11/75dpi/:unscaled,/usr/share/fonts/X11/Type1,/usr/share/fonts/X11/100dpi,/usr/share/fonts/X11/75dpi,/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType,built-ins" \
--enable-aiglx \
--enable-glx-tls \
--enable-registry \
--enable-composite \
--enable-record \
--enable-xv \
--enable-xvmc \
--enable-dga \
--enable-screensaver \
--enable-xdmcp \
--enable-xdm-auth-1 \
--enable-glx \
--disable-dri --enable-dri2 \
--enable-xinerama \
--enable-xf86vidmode \
--enable-xace \
--disable-selinux \
--enable-xfree86-utils \
--disable-dmx \
--disable-xvfb \
--disable-xnest \
--disable-kdrive \
--disable-xephyr \
--enable-xfbdev \
--with-sha1=libgcrypt \
--enable-xcsecurity \
--disable-docs \
--disable-selective-werror)
touch config-stamp
build-arch: config-stamp build-arch-stamp
build-arch-stamp:
dh_testdir
# Add here command to compile/build the package.
# Build first things.
# Build Xvnc
make LDFLAGS="-lpng"
(cd unix/xserver;make)
touch build-arch-stamp
build-indep: config-stamp build-indep-stamp
build-indep-stamp:
dh_testdir
# Add here command to compile/build the arch indep package.
# It's ok not to do anything here, if you don't need to build
# anything for this package.
#/usr/bin/docbook-to-man debian/vnc.sgml > vnc.1
(cd media;make)
(cd java;cmake -G"Unix Makefiles";make)
touch build-indep-stamp
build: build-arch build-indep
clean:
dh_testdir
dh_testroot
rm -f build-arch-stamp build-indep-stamp config-stamp
# Add here commands to clean up after the build process.
dh_clean
install: DH_OPTIONS=
install: build
dh_testdir
dh_testroot
dh_clean -k
dh_prep
dh_installdirs
# Add here commands to install the package into debian/vnc.
# tigervncserver
make install DESTDIR=$(CURDIR)/debian/tigervncserver
(cd unix/xserver/hw/vnc; make install DESTDIR=$(CURDIR)/debian/tigervncserver)
mv $(CURDIR)/debian/tigervncserver/usr/bin/Xvnc \
$(CURDIR)/debian/tigervncserver/usr/bin/Xtigervnc
mv $(CURDIR)/debian/tigervncserver/usr/bin/vncconfig \
$(CURDIR)/debian/tigervncserver/usr/bin/tigervncconfig
mv $(CURDIR)/debian/tigervncserver/usr/bin/vncpasswd \
$(CURDIR)/debian/tigervncserver/usr/bin/tigervncpasswd
mv $(CURDIR)/debian/tigervncserver/usr/bin/vncserver \
$(CURDIR)/debian/tigervncserver/usr/bin/tigervncserver
mv $(CURDIR)/debian/tigervncserver/usr/bin/x0vncserver \
$(CURDIR)/debian/tigervncserver/usr/bin/x0tigervncserver
mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/vncconfig.1 \
$(CURDIR)/debian/tigervncserver/usr/share/man/man1/tigervncconfig.1
mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/vncpasswd.1 \
$(CURDIR)/debian/tigervncserver/usr/share/man/man1/tigervncpasswd.1
mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/vncserver.1 \
$(CURDIR)/debian/tigervncserver/usr/share/man/man1/tigervncserver.1
mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/x0vncserver.1 \
$(CURDIR)/debian/tigervncserver/usr/share/man/man1/x0tigervncserver.1
mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/Xvnc.1 \
$(CURDIR)/debian/tigervncserver/usr/share/man/man1/Xtigervnc.1
mv $(CURDIR)/debian/tigervncserver/usr/share/doc/tigervnc-* \
$(CURDIR)/debian/tigervncserver/usr/share/doc/tigervncserver
rm $(CURDIR)/debian/tigervncserver/usr/lib/xorg/modules/extensions/libvnc.la
rm $(CURDIR)/debian/tigervncserver/usr/bin/vncviewer
rm $(CURDIR)/debian/tigervncserver/usr/share/man/man1/vncviewer.1
install -o root -g root -m 755 -D $(CURDIR)/debian/local/vncserver.service \
$(CURDIR)/debian/tigervncserver/etc/init.d/vncserver
install -o root -g root -m 644 -D $(CURDIR)/debian/local/vncserver.sysconfig \
$(CURDIR)/debian/tigervncserver/etc/default/vncservers
# xtigervncviewer
(cd vncviewer; make install DESTDIR=$(CURDIR)/debian/xtigervncviewer)
# Install desktop stuff
mv $(CURDIR)/debian/xtigervncviewer/usr/bin/vncviewer \
$(CURDIR)/debian/xtigervncviewer/usr/bin/xtigervncviewer
mv $(CURDIR)/debian/xtigervncviewer/usr/share/man/man1/vncviewer.1 \
$(CURDIR)/debian/xtigervncviewer/usr/share/man/man1/xtigervncviewer.1
# tigervnc-java
mkdir -p $(CURDIR)/debian/tigervnc-java/usr/share
(cd java; make install DESTDIR=$(CURDIR)/debian/tigervnc-java/usr/share)
#dh_movefiles
# Build architecture-independent files here.
# Pass -i to all debhelper commands in this target to reduce clutter.
binary-indep: build install
binary-indep-keep:
dh_testdir -i
dh_testroot -i
# dh_installdebconf -i
dh_install
dh_installdocs -i
dh_installexamples -i
dh_installmenu -i
# dh_installlogrotate -i
# dh_installemacsen -i
# dh_installpam -i
# dh_installmime -i
# dh_installinit -i
dh_installcron -i
dh_installman -i
dh_installinfo -i
# dh_undocumented -i
dh_installchangelogs -i
dh_link -i
dh_compress -i
dh_fixperms -i
dh_installdeb -i
dh_perl -i
dh_gencontrol -i
dh_md5sums -i
dh_builddeb -i
# Build architecture-dependent files here.
binary-arch: build install
dh_testdir -a
dh_testroot -a
# dh_installdebconf -a
dh_installdocs -a
# dh_installexamples -a
dh_installmenu -a
# dh_installlogrotate -a
# dh_installemacsen -a
# dh_installpam -a
# dh_installmime -a
dh_install
dh_installinit -a
# dh_installcron -a
dh_installman -a
dh_installinfo -a
# dh_undocumented -a
dh_installchangelogs -a
# Remove empty directories
dh_strip -a
dh_link -a
dh_compress -a
dh_fixperms -a
dh_makeshlibs -a
dh_installdeb -a
dh_perl -a
dh_shlibdeps -a
dh_gencontrol -a
dh_md5sums -a
dh_builddeb -a
binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install get-orig-source

View file

@ -1 +0,0 @@
3.0 (quilt)

View file

@ -1,30 +0,0 @@
#!/bin/sh -e
if [ "$1" = "configure" ]; then
MAN=/usr/share/man/man1
BIN=/usr/bin
update-alternatives --install \
$BIN/vncserver vncserver $BIN/tigervncserver 64 \
--slave \
$MAN/vncserver.1.gz vncserver.1.gz $MAN/tigervncserver.1.gz
update-alternatives --install \
$BIN/Xvnc Xvnc $BIN/Xtigervnc 74 \
--slave \
$MAN/Xvnc.1.gz Xvnc.1.gz $MAN/Xtigervnc.1.gz
update-alternatives --install \
$BIN/x0vncserver x0vncserver $BIN/x0tigervncserver 74 \
--slave \
$MAN/x0vncserver.1.gz x0vncserver.1.gz $MAN/x0tigervncserver.1.gz
update-alternatives --install \
$BIN/vncpasswd vncpasswd $BIN/tigervncpasswd 74 \
--slave \
$MAN/vncpasswd.1.gz vncpasswd.1.gz $MAN/tigervncpasswd.1.gz
update-alternatives --install \
$BIN/vncconfig vncconfig $BIN/tigervncconfig 64 \
--slave \
$MAN/vncconfig.1.gz vncconfig.1.gz $MAN/tigervncconfig.1.gz
fi
#DEBHELPER#
exit 0

View file

@ -1,19 +0,0 @@
#!/bin/sh -e
if [ "$1" = "remove" ] ; then
BIN=/usr/bin
update-alternatives --remove \
vncserver $BIN/tigervncserver
update-alternatives --remove \
Xvnc $BIN/Xtigervnc
update-alternatives --remove \
x0vncserver $BIN/x0tigervncserver
update-alternatives --remove \
vncpasswd $BIN/tigervncpasswd
update-alternatives --remove \
tigervncconfig $BIN/tigervncconfig
fi
#DEBHELPER#
exit 0

View file

@ -1,5 +0,0 @@
?package(xtigervncviewer):needs="x11" \
section="Applications/Network/Communication" \
hints="VNC,remote-control"\
title="xtigervncviewer" \
command="/usr/bin/xtigervncviewer"

View file

@ -1,18 +0,0 @@
#!/bin/sh -e
if [ "$1" = "configure" ]; then
MAN=/usr/share/man/man1
BIN=/usr/bin
update-alternatives --install \
$BIN/vncviewer vncviewer $BIN/xtigervncviewer 74 \
--slave \
$MAN/vncviewer.1.gz vncviewer.1.gz $MAN/xtigervncviewer.1.gz \
--slave \
$MAN/xvncviewer.1.gz xvncviewer.1.gz $MAN/xtigervncviewer.1.gz \
--slave \
$BIN/xvncviewer xvncviewer $BIN/xtigervncviewer
fi
#DEBHELPER#
exit 0

View file

@ -1,11 +0,0 @@
#!/bin/sh -e
if [ "$1" = "remove" ] ; then
BIN=/usr/bin
update-alternatives --remove \
vncviewer $BIN/xtigervncviewer
fi
#DEBHELPER#
exit 0

View file

@ -1,31 +0,0 @@
tigervnc (1.3.0-3ubuntu1) precise; urgency=low
* Build Xvnc against native upstream xorg sources, using native config
options. Use distro-specific fltk1.3 sources.
-- Brian P. Hinz <bphinz@users.sourceforge.net> Sun, 14 Jul 2013 15:22:28 -0400
tigervnc (1.3.0-3) precise; urgency=low
* Additional dependencies (derived from ldd | dpkg -S).
-- Brian P. Hinz <bphinz@users.sourceforge.net> Sun, 07 Jul 2013 11:01:33 -0400
tigervnc (1.3.0-2) precise; urgency=low
* Added build dependencies to improve font support in viewer.
-- Brian P. Hinz <bphinz@users.sourceforge.net> Sun, 07 Jul 2013 10:44:05 -0400
tigervnc (1.3.0-1) precise; urgency=low
* Removed java viewer from server package. Fixed typo in server
dependencies.
-- Brian P. Hinz <bphinz@users.sourceforge.net> Sun, 07 Jul 2013 09:55:44 -0400
tigervnc (1.3.0) precise; urgency=low
* Initial release.
-- Brian P. Hinz <bphinz@users.sourceforge.net> Fri, 05 Jul 2013 00:47:02 -0400

View file

@ -1,70 +0,0 @@
Source: tigervnc
Section: x11
Priority: optional
Maintainer: Brian P. Hinz <bphinz@users.sourceforge.net>
Standards-Version: 3.8.4
Build-Depends: debhelper (>> 7.1), zlib1g-dev, libjpeg-turbo8-dev, libxaw7-dev (>> 4.1.0), perl-modules, xfonts-base, xutils-dev, libx11-dev, libxau-dev, libxext-dev, libxi-dev, libxkbfile-dev, libxmu-dev, libxt-dev, x11proto-core-dev, cmake (>> 2.8), libgnutls28-dev, libpam0g-dev, libpng-dev, automake, autoconf, libtool, pkg-config, libpixman-1-dev, x11proto-bigreqs-dev, x11proto-composite-dev, x11proto-damage-dev, x11proto-dri2-dev, x11proto-fixes-dev, x11proto-fonts-dev, x11proto-gl-dev, x11proto-input-dev, x11proto-kb-dev, x11proto-randr-dev, x11proto-render-dev, x11proto-resource-dev, x11proto-scrnsaver-dev, x11proto-video-dev, x11proto-xext-dev, x11proto-xf86bigfont-dev, x11proto-xf86dga-dev, x11proto-xf86dri-dev, x11proto-xf86vidmode-dev, x11proto-xinerama-dev, libosmesa6-dev, libgl1-mesa-dev, libgl1-mesa-dri, libgl1-mesa-glx, libxfont-dev, x11proto-record-dev, default-jdk, libxtst-dev, libxft-dev, libexpat1-dev, libfontconfig1-dev, libxrender-dev, libt1-dev, libpciaccess-dev, curl, bzip2, quilt, libglu1-mesa-dev, libxcursor-dev, libxinerama-dev, libxfixes-dev, libcairo2-dev, x11proto-dri3-dev, libgcrypt20-dev, x11proto-xcmisc-dev, x11proto-present-dev, libtasn1-dev
Homepage: http://www.tigervnc.com
Package: tigervncserver
Architecture: any
Provides: xserver, vnc-server
Depends: x11-common | xserver-common, x11-utils, xauth, libbz2-1.0, libc6, libfontenc1, libfreetype6, libgcc1, libgl1-mesa-dri, libgnutls28, libjpeg-turbo8, libp11-kit0, libpam0g, libpixman-1-0, libstdc++6, libtasn1-bin, libx11-6, libxau6, libxcb1, libxdmcp6, libxext6, libxfont1, libxtst6, zlib1g, libglu1-mesa, libxcursor1, libxinerama1, libxfixes3, x11-xkb-utils, libgcrypt20
Recommends: xfonts-base, x11-xserver-utils
Suggests: xtigervncviewer, tigervnc-java
Description: virtual network computing server software
Virtual Network Computing (VNC) is a remote display system which allows you to
view and interact with a virtual desktop environment that is running on another
computer on the network. Using VNC, you can run graphical applications on a
remote machine and send only the display from these applications to your local
machine. VNC is platform-independent and supports a wide variety of operating
systems and architectures as both servers and clients.
.
TigerVNC is a high-speed version of VNC based on the RealVNC 4 and X.org code
bases. TigerVNC started as a next-generation development effort for TightVNC
on Unix and Linux platforms, but it split from its parent project in early 2009
so that TightVNC could focus on Windows platforms. TigerVNC supports a variant
of Tight encoding that is greatly accelerated by the use of the libjpeg-turbo
JPEG codec.
Package: xtigervncviewer
Architecture: any
Provides: vncviewer, vnc-viewer
Depends: libc6, libexpat1, libfontconfig1, libfreetype6, libgcc1, libgnutls28, libjpeg-turbo8, libp11-kit0, libpng12-0, libstdc++6, libtasn1-bin, libx11-6, libxau6, libxcb1, libxdmcp6, libxext6, libxft2, libxrender1, zlib1g, libglu1-mesa, libxcursor1, libxinerama1, libxfixes3
Recommends: xfonts-base
Suggests: tigervncserver, ssh
Description: virtual network computing client software for X
Virtual Network Computing (VNC) is a remote display system which allows you to
view and interact with a virtual desktop environment that is running on another
computer on the network. Using VNC, you can run graphical applications on a
remote machine and send only the display from these applications to your local
machine. VNC is platform-independent and supports a wide variety of operating
systems and architectures as both servers and clients.
.
TigerVNC is a high-speed version of VNC based on the RealVNC 4 and X.org code
bases. TigerVNC started as a next-generation development effort for TightVNC
on Unix and Linux platforms, but it split from its parent project in early 2009
so that TightVNC could focus on Windows platforms. TigerVNC supports a variant
of Tight encoding that is greatly accelerated by the use of the libjpeg-turbo
JPEG codec.
Package: tigervnc-java
Architecture: any
Suggests: tigervncserver
Provides: vncviewer, vnc-viewer
Depends: default-jre
Description: TigerVNC java applet
Virtual Network Computing (VNC) is a remote display system which allows you to
view and interact with a virtual desktop environment that is running on another
computer on the network. Using VNC, you can run graphical applications on a
remote machine and send only the display from these applications to your local
machine. VNC is platform-independent and supports a wide variety of operating
systems and architectures as both servers and clients.
.
TigerVNC is a high-speed version of VNC based on the RealVNC 4 and X.org code
bases. TigerVNC started as a next-generation development effort for TightVNC
on Unix and Linux platforms, but it split from its parent project in early 2009
so that TightVNC could focus on Windows platforms. TigerVNC supports a variant
of Tight encoding that is greatly accelerated by the use of the libjpeg-turbo
JPEG codec.

View file

@ -1,116 +0,0 @@
This package was packaged for Debian by Brian P. Hinz <bphinz@users.sourceforge.net>
on Tue, 02 Jul 2013 21:33:24 +0500 using the tightvnc package as a base.
It was downloaded from:
http://www.tigervnc.org/
COPYRIGHT:
==========
TigerVNC is
Copyright (C) 1999 AT&T Laboratories Cambridge
Copyright (C) 2002-2005 RealVNC Ltd.
Copyright (C) 2000-2006 TightVNC Group
Copyright (C) 2005-2006 Martin Koegler
Copyright (C) 2005-2006 Sun Microsystems, Inc.
Copyright (C) 2006 OCCAM Financial Technology
Copyright (C) 2000-2008 Constantin Kaplinsky
Copyright (C) 2004-2009 Peter Astrand for Cendio AB
Copyright (C) 2010 Antoine Martin
Copyright (C) 2010 m-privacy GmbH
Copyright (C) 2009-2011 D. R. Commander
Copyright (C) 2009-2011 Pierre Ossman for Cendio AB
Copyright (C) 2004, 2009-2011 Red Hat, Inc.
Copyright (C) 2009-2011 TigerVNC Team
All Rights Reserved.
This software is distributed under the GNU General Public Licence as published
by the Free Software Foundation. See the file LICENSE.TXT for the conditions
under which this software is made available. TigerVNC also contains code from
other sources. See the Acknowledgements section below, and the individual
source files, for details of the conditions under which they are made
available.
ACKNOWLEDGEMENTS
================
This distribution contains zlib compression software. This is:
Copyright (C) 1995-2002 Jean-loup Gailly and Mark Adler
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
Jean-loup Gailly Mark Adler
jloup@gzip.org madler@alumni.caltech.edu
The data format used by the zlib library is described by RFCs (Request for
Comments) 1950 to 1952 in the files ftp://ds.internic.net/rfc/rfc1950.txt
(zlib format), rfc1951.txt (deflate format) and rfc1952.txt (gzip format).
This distribution contains public domain DES software by Richard Outerbridge.
This is:
Copyright (c) 1988,1989,1990,1991,1992 by Richard Outerbridge.
(GEnie : OUTER; CIS : [71755,204]) Graven Imagery, 1992.
This distribution contains software from the X Window System. This is:
Copyright 1987, 1988, 1998 The Open Group
Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation.
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Except as contained in this notice, the name of The Open Group shall not be
used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from The Open Group.
Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts.
All Rights Reserved
Permission to use, copy, modify, and distribute this software and its
documentation for any purpose and without fee is hereby granted,
provided that the above copyright notice appear in all copies and that
both that copyright notice and this permission notice appear in
supporting documentation, and that the name of Digital not be
used in advertising or publicity pertaining to distribution of the
software without specific, written prior permission.
DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
SOFTWARE.

View file

@ -1,38 +0,0 @@
#!/bin/bash
#curl -L -o tigervnc-1.3.0.tar.bz2 "http://downloads.sourceforge.net/project/tigervnc/tigervnc/1.3.0/tigervnc-1.3.0.tar.bz2"
#tar xjf tigervnc-*.tar.bz2
#rm tigervnc-*.tar.bz2
curl -OL http://sourceforge.net/code-snapshots/svn/t/ti/tigervnc/code/tigervnc-code-5136-trunk.zip
unzip tigervnc-code-*-trunk.zip
mv tigervnc-code-*-trunk tigervnc-1.3.80
rm tigervnc-code-*-trunk.zip
pushd tigervnc-*
curl -L -o fltk-1.3.2-source.tar.gz 'http://anonscm.debian.org/gitweb/?p=users/ucko/fltk1.3.git;a=snapshot;h=HEAD;sf=tgz'
tar xzf fltk-*-source.tar.gz
rm fltk-*-source.tar.gz
mv fltk1.3-* fltk-1.3.2
pushd fltk-*
sh ../../debian/patch_fltk.sh
find . -name "*.orig" -exec rm {} \;
popd
curl -L -o xorg-server-1.11.4-0ubuntu10.3.tar.gz 'http://anonscm.debian.org/gitweb/?p=pkg-xorg/xserver/xorg-server.git;a=snapshot;h=cbf435a091906484112f5c4cf35b17738e779ce9;sf=tgz'
tar xzf xorg-server-*.tar.gz
rm xorg-server-*.tar.gz
pushd xorg-server-*
QUILT_PATCHES=debian/patches quilt push -a
popd
cp -r xorg-server-*/* unix/xserver
rm -rf xorg-server-*
pushd unix/xserver
for all in `find . -type f -perm -001`; do
chmod -x "$all"
done
patch -p1 -b --suffix .vnc < ../xserver111.patch
popd
popd
if [ -e tigervnc_1.3.80.orig.tar.gz ] ; then
rm tigervnc_1.3.80.orig.tar.gz
fi
tar czf tigervnc_1.3.80.orig.tar.gz tigervnc-1.3.80
rm -rf tigervnc-1.3.80

View file

@ -1,94 +0,0 @@
#!/bin/bash
#
# Init file for TigerVNC Server
#
# chkconfig: - 91 35
# description: TigerVNC remote X administration daemon.
#
# processname: Xvnc
### BEGIN INIT INFO
# Provides: vncservers
# Required-Start: networking
# Required-Stop: networking
# Default-Start:
# Default-Stop: 0 1 2 3 4 5 6
# Short-Description: Starts and stops vncserver
# Description: Used to provide remote X administration services.
### END INIT INFO
# Source function library.
. /lib/lsb/init-functions
### Default variables
SYSCONFIG="/etc/default/vncservers"
VNCSERVERS=""
### Read configuration
[ -r "$SYSCONFIG" ] && . "$SYSCONFIG"
RETVAL=0
prog=$"VNC server"
start() {
echo -n $"Starting $prog: "
ulimit -S -c 0 >/dev/null 2>&1
for display in ${VNCSERVERS}; do
echo -n "${display} "
if [ -r $(eval echo ~${display##*:})/.vnc/passwd ]; then
unset BASH_ENV ENV
log_begin_msg "Starting VNC Server for user ${display##*:}:"
su ${display##*:} -c "cd ~${display##*:} && [ -f .vnc/passwd ] && vncserver :${display%%:*} ${VNCSERVERARGS[${display%:*}]}"
RETVAL="$?"
if [ "$RETVAL" -ne 0 ]; then
log_end_msg 1
break
else
log_end_msg 0
fi
else
log_begin_msg "Not starting VNC Server for user ${display##*:}.\n File \"~${display##*:}/.vnc/passwd\" not found.\n Create a password file for the VNC server with vncpasswd"
log_end_msg 1
fi
done
echo
[ "$RETVAL" -eq 0 ] && touch "/var/lock/vncserver"
return $RETVAL
}
stop() {
echo -n $"Shutting down $desc: "
for display in ${VNCSERVERS}; do
echo -n "${display} "
unset BASH_ENV ENV
log_begin_msg "Shutting down VNC Server for user ${display##*:}: "
su ${display##*:} -c "vncserver -kill :${display%%:*}" >/dev/null 2>&1
RETVAL="$?"
[ "$RETVAL" -eq 0 ] && log_end_msg 0 || log_end_msg 1
done
echo
[ "$RETVAL" -eq 0 ] && rm -f "/var/lock/vncserver"
return $RETVAL
}
restart() {
stop
start
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart|reload)
restart
;;
*)
echo $"Usage: $0 {start|stop|restart}"
RETVAL=1
esac
exit $RETVAL

View file

@ -1,19 +0,0 @@
# The VNCSERVERS variable is a list of display:user pairs.
#
# Uncomment the lines below to start a VNC server on display :2
# as my 'myusername' (adjust this to your own). You will also
# need to set a VNC password; run 'man vncpasswd' to see how
# to do that.
#
# DO NOT RUN THIS SERVICE if your local area network is
# untrusted! For a secure way of using VNC, see this URL:
# http://kbase.redhat.com/faq/docs/DOC-7028
# Use "-nolisten tcp" to prevent X connections to your VNC server via TCP.
# Use "-localhost" to prevent remote VNC clients connecting except when
# doing so through a secure tunnel. See the "-via" option in the
# `man vncviewer' manual page.
# VNCSERVERS="2:myusername"
# VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -localhost"

View file

@ -1,52 +0,0 @@
#!/bin/bash
set -e
apply_patch()
{
rm -f $2
curl -OL http://www.fltk.org/strfiles/$1/$2
patch -p1 < $2
}
# Export dead key information from FLTK to the apps
# http://www.fltk.org/str.php?L2599
apply_patch 2599 fltk-1_v4.3.x-keyboard-x11.patch
apply_patch 2599 fltk-1_v4.3.x-keyboard-win32.patch
apply_patch 2599 fltk-1_v6.3.x-keyboard-osx.patch
# Notify applications of changes to the clipboard
# http://www.fltk.org/str.php?L2636
apply_patch 2636 fltk-1.3.x-clipboard.patch
apply_patch 2636 fltk-1_v6.3.x-clipboard-x11.patch
apply_patch 2636 fltk-1_v3.3.x-clipboard-win32-fix.patch
apply_patch 2636 fltk-1_v2.3.x-clipboard-win32.patch
apply_patch 2636 fltk-1_v2.3.x-clipboard-osx.patch
# Ability to convert a Fl_Pixmap to a Fl_RGB_Image
# http://www.fltk.org/str.php?L2659
apply_patch 2659 pixmap_v2.patch
# Support for custom cursors
# http://www.fltk.org/str.php?L2660
apply_patch 2660 fltk-1_v5.3.x-cursor.patch
# Improve modality interaction with WM
# http://www.fltk.org/str.php?L2802
apply_patch 2802 fltk-1_v2.3.0-modal.patch
# Window icons
# http://www.fltk.org/str.php?L2816
apply_patch 2816 fltk-1_v3.3.0-icons.patch
# Multihead
# http://fltk.org/str.php?L2860
apply_patch 2860 fltk-1.3.x-screen_num.patch
apply_patch 2860 fltk-1_v3.3.x-multihead.patch
# Apply DRC's patches to FLTK
curl -L 'https://sourceforge.net/mailarchive/attachment.php?list_name=tigervnc-devel&message_id=512DD1FE.7090609%40users.sourceforge.net&counter=1' -o 0001-Add-BUILD_STATIC-feature-from-TigerVNC-to-optionally.patch
curl -L 'https://sourceforge.net/mailarchive/attachment.php?list_name=tigervnc-devel&message_id=512DD1FE.7090609%40users.sourceforge.net&counter=2' -o 0002-Fl_cocoa.mm-depends-on-some-Carbon-functions-so-we-n.patch
curl -L 'https://sourceforge.net/mailarchive/attachment.php?list_name=tigervnc-devel&message_id=512DD1FE.7090609%40users.sourceforge.net&counter=3' -o 0003-We-need-to-unset-CMAKE_REQUIRED_LIBRARIES-after-chec.patch
patch -p1 -i 0001-Add-BUILD_STATIC-feature-from-TigerVNC-to-optionally.patch
patch -p1 -i 0002-Fl_cocoa.mm-depends-on-some-Carbon-functions-so-we-n.patch
patch -p1 -i 0003-We-need-to-unset-CMAKE_REQUIRED_LIBRARIES-after-chec.patch

View file

@ -1,26 +0,0 @@
--- a/unix/xserver/hw/vnc/xvnc.c 2013-07-14 14:05:29.963390223 -0400
+++ b/unix/xserver/hw/vnc/xvnc.c 2013-07-14 14:04:12.840357191 -0400
@@ -250,7 +250,7 @@
#if XORG < 111
AbortDDX()
#else
-AbortDDX(enum ExitCode error)
+SigAbortDDX(int signo, enum ExitCode error)
#endif
{
#if XORG < 111
@@ -260,6 +260,14 @@
#endif
}
+#if XORG >= 111
+void
+AbortDDX(enum ExitCode error)
+{
+ SigAbortDDX(0, error);
+}
+#endif
+
#ifdef __DARWIN__
void
DarwinHandleGUI(int argc, char *argv[])

View file

@ -1,10 +0,0 @@
--- a/unix/xserver/man/Makefile.am 2013-03-30 17:51:01.707258746 -0400
+++ b/unix/xserver/man/Makefile.am 2013-03-30 17:51:47.606569692 -0400
@@ -2,5 +2,7 @@
# (i.e. those handled in the os/utils.c options processing instead of in
# the DDX-level options processing)
+if ENABLE_DOCS
include $(top_srcdir)/manpages.am
appman_PRE = Xserver.man
+endif ENABLE_DOCS

View file

@ -1,52 +0,0 @@
--- a/ltmain.sh 2016-05-11 23:23:25.796742323 -0400
+++ b/ltmain.sh 2016-05-11 23:24:47.173010324 -0400
@@ -6447,6 +6447,9 @@
# It is a libtool convenience library, so add in its objects.
func_append convenience " $ladir/$objdir/$old_library"
func_append old_convenience " $ladir/$objdir/$old_library"
+ elif test "$linkmode" != prog && test "$linkmode" != lib; then
+ func_fatal_error "\`$lib' is not a convenience library"
+ fi
tmp_libs=
for deplib in $dependency_libs; do
deplibs="$deplib $deplibs"
@@ -6457,9 +6460,6 @@
fi
func_append tmp_libs " $deplib"
done
- elif test "$linkmode" != prog && test "$linkmode" != lib; then
- func_fatal_error "\`$lib' is not a convenience library"
- fi
continue
fi # $pass = conv
--- a/m4/libtool.m4 2016-05-11 23:26:23.801328557 -0400
+++ b/m4/libtool.m4 2016-05-11 23:27:12.701489603 -0400
@@ -4589,9 +4589,6 @@
;;
esac
;;
- linux* | k*bsd*-gnu | gnu*)
- _LT_TAGVAR(link_all_deplibs, $1)=no
- ;;
*)
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
;;
@@ -4654,9 +4651,6 @@
openbsd*)
with_gnu_ld=no
;;
- linux* | k*bsd*-gnu | gnu*)
- _LT_TAGVAR(link_all_deplibs, $1)=no
- ;;
esac
_LT_TAGVAR(ld_shlibs, $1)=yes
@@ -5055,7 +5049,6 @@
if test "$aix_use_runtimelinking" = yes; then
shared_flag="$shared_flag "'${wl}-G'
fi
- _LT_TAGVAR(link_all_deplibs, $1)=no
else
# not using gcc
if test "$host_cpu" = ia64; then

View file

@ -1,8 +0,0 @@
## Patches with a number < 100 are applied in debian.
## Ubuntu patches start with 100.
# Ubuntu patches
100_rethrow_signals.patch
# Upstream patches
516_tigervnc-xorg-manpages.patch

View file

@ -1,284 +0,0 @@
#!/usr/bin/make -f
# Sample debian/rules that uses debhelper.
# GNU copyright 1997 by Joey Hess.
export DEB_BUILD_MAINT_OPTIONS=hardening=+all
CFLAGS := $(shell dpkg-buildflags --get CFLAGS)
CPPFLAGS := $(shell dpkg-buildflags --get CPPFLAGS)
CXXFLAGS := $(shell dpkg-buildflags --get CXXFLAGS)
LDFLAGS := $(shell dpkg-buildflags --get LDFLAGS)
export CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
# These are used for cross-compiling and for saving the configure script
# from having to guess our platform (since we know it already)
#DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
#DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)
DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
DEB_HOST_ARCH_OS ?= $(shell dpkg-architecture -qDEB_HOST_ARCH_OS)
ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE))
confflags += --build=$(DEB_HOST_GNU_TYPE)
else
confflags += --build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE)
endif
SOURCE_NAME := tigervnc
SOURCE_VERSION := $(shell dpkg-parsechangelog | awk -F': ' '/^Version: / {print $$2}')
BUILDER=For technical support please see http://sourceforge.net/projects/tigervnc/support
libdir = /usr/lib/$(DEB_HOST_MULTIARCH)
ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
CFLAGS += -g -O2 -fPIC
endif
ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
INSTALL_PROGRAM += -s
endif
export CC = gcc
XCFLAGS = -Wall -Wunused -Wno-format-y2k -fPIE -fno-strict-aliasing
get-orig-source: $(SOURCE_NAME)_$(SOURCE_VERSION).orig.tar.gz
@
$(SOURCE_NAME)_$(SOURCE_VERSION).orig.tar.gz:
$(CURDIR)/get-orig-source.sh
configure: config-stamp
config-stamp:
dh_testdir
# Add here commands to configure the package.
(cd fltk-*;DSOFLAGS="$(filter-out -fPIE -pie,$(LDFLAGS))" \
./configure --enable-shared=no --enable-cairo --enable-cp936 \
--with-optim="$(CFLAGS) $(XCFLAGS)" --libdir=$(libdir);make)
cmake -G"Unix Makefiles" \
-DBUILD_STATIC=off \
-DCMAKE_INSTALL_PREFIX=/usr \
-DFLTK_LIBRARIES="$(CURDIR)/fltk-1.3.3/lib/libfltk.a;$(CURDIR)/fltk-1.3.3/lib/libfltk_images.a;-lpng" \
-DFLTK_INCLUDE_DIR=$(CURDIR)/fltk-1.3.3
(cd unix/xserver; \
export PIXMANINCDIR=/usr/include/pixman-1; \
autoreconf -fiv; \
patch -p1 -i ../../debian/patches/debian_libtool.patch; \
./configure --prefix=/usr \
--disable-silent-rules \
--disable-static \
--without-dtrace \
--disable-strict-compilation \
--disable-debug \
--disable-unit-tests \
--with-int10=x86emu \
--with-extra-module-dir="/usr/lib/${DEB_HOST_MULTIARCH}/xorg/extra-modules,/usr/lib/xorg/extra-modules" \
--with-os-vendor="$(VENDOR)" \
--with-builderstring="$(SOURCE_NAME) $(SOURCE_VERSION) ($(BUILDER))" \
--with-xkb-path=/usr/share/X11/xkb \
--with-xkb-output=/var/lib/xkb \
--with-default-xkb-rules=evdev \
--disable-devel-docs \
--disable-install-libxf86config \
--enable-mitshm \
--enable-xres \
--disable-xcsecurity \
--disable-xcalibrate \
--disable-tslib \
--enable-dbe \
--disable-xf86bigfont \
--disable-dpms \
--disable-config-dbus \
--disable-config-hal \
--disable-config-udev \
--disable-xorg \
--disable-xquartz \
--disable-xwin \
--disable-xfake \
--disable-install-setuid \
--enable-gestures \
--with-default-font-path="/usr/share/fonts/X11/misc,/usr/share/fonts/X11/cyrillic,/usr/share/fonts/X11/100dpi/:unscaled,/usr/share/fonts/X11/75dpi/:unscaled,/usr/share/fonts/X11/Type1,/usr/share/fonts/X11/100dpi,/usr/share/fonts/X11/75dpi,/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType,built-ins" \
--enable-aiglx \
--enable-glx-tls \
--enable-registry \
--enable-composite \
--enable-record \
--enable-xv \
--enable-xvmc \
--enable-dga \
--enable-screensaver \
--enable-xdmcp \
--enable-xdm-auth-1 \
--enable-glx \
--disable-dri --enable-dri2 --enable-dri3 \
--enable-xinerama \
--enable-xf86vidmode \
--enable-xace \
--disable-selinux \
--enable-xfree86-utils \
--disable-dmx \
--disable-xvfb \
--disable-xnest \
--disable-kdrive \
--disable-xephyr \
--enable-xfbdev \
--with-sha1=libgcrypt \
--enable-xcsecurity \
--disable-docs \
--disable-selective-werror)
touch config-stamp
build-arch: config-stamp build-arch-stamp
build-arch-stamp:
dh_testdir
# Add here command to compile/build the package.
# Build first things.
# Build Xvnc
make LDFLAGS="-lpng"
(cd unix/xserver;make)
touch build-arch-stamp
build-indep: config-stamp build-indep-stamp
build-indep-stamp:
dh_testdir
# Add here command to compile/build the arch indep package.
# It's ok not to do anything here, if you don't need to build
# anything for this package.
#/usr/bin/docbook-to-man debian/vnc.sgml > vnc.1
(cd media;make)
(cd java;cmake -G"Unix Makefiles";make)
touch build-indep-stamp
build: build-arch build-indep
clean:
dh_testdir
dh_testroot
rm -f build-arch-stamp build-indep-stamp config-stamp
# Add here commands to clean up after the build process.
dh_clean
install: DH_OPTIONS=
install: build
dh_testdir
dh_testroot
dh_clean -k
dh_prep
dh_installdirs
# Add here commands to install the package into debian/vnc.
# tigervncserver
make install DESTDIR=$(CURDIR)/debian/tigervncserver
(cd unix/xserver/hw/vnc; make install DESTDIR=$(CURDIR)/debian/tigervncserver)
mv $(CURDIR)/debian/tigervncserver/usr/bin/Xvnc \
$(CURDIR)/debian/tigervncserver/usr/bin/Xtigervnc
mv $(CURDIR)/debian/tigervncserver/usr/bin/vncconfig \
$(CURDIR)/debian/tigervncserver/usr/bin/tigervncconfig
mv $(CURDIR)/debian/tigervncserver/usr/bin/vncpasswd \
$(CURDIR)/debian/tigervncserver/usr/bin/tigervncpasswd
mv $(CURDIR)/debian/tigervncserver/usr/bin/vncserver \
$(CURDIR)/debian/tigervncserver/usr/bin/tigervncserver
mv $(CURDIR)/debian/tigervncserver/usr/bin/x0vncserver \
$(CURDIR)/debian/tigervncserver/usr/bin/x0tigervncserver
mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/vncconfig.1 \
$(CURDIR)/debian/tigervncserver/usr/share/man/man1/tigervncconfig.1
mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/vncpasswd.1 \
$(CURDIR)/debian/tigervncserver/usr/share/man/man1/tigervncpasswd.1
mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/vncserver.1 \
$(CURDIR)/debian/tigervncserver/usr/share/man/man1/tigervncserver.1
mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/x0vncserver.1 \
$(CURDIR)/debian/tigervncserver/usr/share/man/man1/x0tigervncserver.1
mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/Xvnc.1 \
$(CURDIR)/debian/tigervncserver/usr/share/man/man1/Xtigervnc.1
mv $(CURDIR)/debian/tigervncserver/usr/share/doc/tigervnc-* \
$(CURDIR)/debian/tigervncserver/usr/share/doc/tigervncserver
rm $(CURDIR)/debian/tigervncserver/usr/lib/xorg/modules/extensions/libvnc.la
rm $(CURDIR)/debian/tigervncserver/usr/bin/vncviewer
rm $(CURDIR)/debian/tigervncserver/usr/share/man/man1/vncviewer.1
install -o root -g root -m 755 -D $(CURDIR)/debian/local/vncserver.service \
$(CURDIR)/debian/tigervncserver/etc/init.d/vncserver
install -o root -g root -m 644 -D $(CURDIR)/debian/local/vncserver.sysconfig \
$(CURDIR)/debian/tigervncserver/etc/default/vncservers
# xtigervncviewer
(cd vncviewer; make install DESTDIR=$(CURDIR)/debian/xtigervncviewer)
# Install desktop stuff
mv $(CURDIR)/debian/xtigervncviewer/usr/bin/vncviewer \
$(CURDIR)/debian/xtigervncviewer/usr/bin/xtigervncviewer
mv $(CURDIR)/debian/xtigervncviewer/usr/share/man/man1/vncviewer.1 \
$(CURDIR)/debian/xtigervncviewer/usr/share/man/man1/xtigervncviewer.1
# tigervnc-java
mkdir -p $(CURDIR)/debian/tigervnc-java/usr/share
(cd java; make install DESTDIR=$(CURDIR)/debian/tigervnc-java/usr/share)
#dh_movefiles
# Build architecture-independent files here.
# Pass -i to all debhelper commands in this target to reduce clutter.
binary-indep: build install
binary-indep-keep:
dh_testdir -i
dh_testroot -i
# dh_installdebconf -i
dh_install
dh_installdocs -i
dh_installexamples -i
dh_installmenu -i
# dh_installlogrotate -i
# dh_installemacsen -i
# dh_installpam -i
# dh_installmime -i
# dh_installinit -i
dh_installcron -i
dh_installman -i
dh_installinfo -i
# dh_undocumented -i
dh_installchangelogs -i
dh_link -i
dh_compress -i
dh_fixperms -i
dh_installdeb -i
dh_perl -i
dh_gencontrol -i
dh_md5sums -i
dh_builddeb -i
# Build architecture-dependent files here.
binary-arch: build install
dh_testdir -a
dh_testroot -a
# dh_installdebconf -a
dh_installdocs -a
# dh_installexamples -a
dh_installmenu -a
# dh_installlogrotate -a
# dh_installemacsen -a
# dh_installpam -a
# dh_installmime -a
dh_install
dh_installinit -a
# dh_installcron -a
dh_installman -a
dh_installinfo -a
# dh_undocumented -a
dh_installchangelogs -a
# Remove empty directories
dh_strip -a
dh_link -a
dh_compress -a
dh_fixperms -a
dh_makeshlibs -a
dh_installdeb -a
dh_perl -a
dh_shlibdeps -a
dh_gencontrol -a
dh_md5sums -a
dh_builddeb -a
binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install get-orig-source

View file

@ -1 +0,0 @@
3.0 (quilt)

View file

@ -1,32 +0,0 @@
#!/bin/sh
set -e
if [ "$1" = "configure" ]; then
MAN=/usr/share/man/man1
BIN=/usr/bin
update-alternatives --install \
$BIN/vncserver vncserver $BIN/tigervncserver 64 \
--slave \
$MAN/vncserver.1.gz vncserver.1.gz $MAN/tigervncserver.1.gz
update-alternatives --install \
$BIN/Xvnc Xvnc $BIN/Xtigervnc 74 \
--slave \
$MAN/Xvnc.1.gz Xvnc.1.gz $MAN/Xtigervnc.1.gz
update-alternatives --install \
$BIN/x0vncserver x0vncserver $BIN/x0tigervncserver 74 \
--slave \
$MAN/x0vncserver.1.gz x0vncserver.1.gz $MAN/x0tigervncserver.1.gz
update-alternatives --install \
$BIN/vncpasswd vncpasswd $BIN/tigervncpasswd 74 \
--slave \
$MAN/vncpasswd.1.gz vncpasswd.1.gz $MAN/tigervncpasswd.1.gz
update-alternatives --install \
$BIN/vncconfig vncconfig $BIN/tigervncconfig 64 \
--slave \
$MAN/vncconfig.1.gz vncconfig.1.gz $MAN/tigervncconfig.1.gz
fi
#DEBHELPER#
exit 0

View file

@ -1,21 +0,0 @@
#!/bin/sh
set -e
if [ "$1" = "remove" ] ; then
BIN=/usr/bin
update-alternatives --remove \
vncserver $BIN/tigervncserver
update-alternatives --remove \
Xvnc $BIN/Xtigervnc
update-alternatives --remove \
x0vncserver $BIN/x0tigervncserver
update-alternatives --remove \
vncpasswd $BIN/tigervncpasswd
update-alternatives --remove \
tigervncconfig $BIN/tigervncconfig
fi
#DEBHELPER#
exit 0

View file

@ -1,5 +0,0 @@
?package(xtigervncviewer):needs="x11" \
section="Applications/Network/Communication" \
hints="VNC,remote-control"\
title="xtigervncviewer" \
command="/usr/bin/xtigervncviewer"

View file

@ -1,18 +0,0 @@
#!/bin/sh -e
if [ "$1" = "configure" ]; then
MAN=/usr/share/man/man1
BIN=/usr/bin
update-alternatives --install \
$BIN/vncviewer vncviewer $BIN/xtigervncviewer 74 \
--slave \
$MAN/vncviewer.1.gz vncviewer.1.gz $MAN/xtigervncviewer.1.gz \
--slave \
$MAN/xvncviewer.1.gz xvncviewer.1.gz $MAN/xtigervncviewer.1.gz \
--slave \
$BIN/xvncviewer xvncviewer $BIN/xtigervncviewer
fi
#DEBHELPER#
exit 0

View file

@ -1,11 +0,0 @@
#!/bin/sh -e
if [ "$1" = "remove" ] ; then
BIN=/usr/bin
update-alternatives --remove \
vncviewer $BIN/xtigervncviewer
fi
#DEBHELPER#
exit 0

View file

@ -1,38 +0,0 @@
tigervnc (1.6.80-4) xenial; urgency=low
* Build using libfltk1.3-dev as provided by ubuntu.
* Build using xorg-server-source as provided by ubuntu.
-- Dominik Muth <dominik.muth@gmx.de> Thu, 07 Apr 2016 22:17:09 +0200
tigervnc (1.3.0-3ubuntu1) precise; urgency=low
* Build Xvnc against native upstream xorg sources, using native config
options. Use distro-specific fltk1.3 sources.
-- Brian P. Hinz <bphinz@users.sourceforge.net> Sun, 14 Jul 2013 15:22:28 -0400
tigervnc (1.3.0-3) precise; urgency=low
* Additional dependencies (derived from ldd | dpkg -S).
-- Brian P. Hinz <bphinz@users.sourceforge.net> Sun, 07 Jul 2013 11:01:33 -0400
tigervnc (1.3.0-2) precise; urgency=low
* Added build dependencies to improve font support in viewer.
-- Brian P. Hinz <bphinz@users.sourceforge.net> Sun, 07 Jul 2013 10:44:05 -0400
tigervnc (1.3.0-1) precise; urgency=low
* Removed java viewer from server package. Fixed typo in server
dependencies.
-- Brian P. Hinz <bphinz@users.sourceforge.net> Sun, 07 Jul 2013 09:55:44 -0400
tigervnc (1.3.0) precise; urgency=low
* Initial release.
-- Brian P. Hinz <bphinz@users.sourceforge.net> Fri, 05 Jul 2013 00:47:02 -0400

View file

@ -1,70 +0,0 @@
Source: tigervnc
Section: x11
Priority: optional
Maintainer: Brian P. Hinz <bphinz@users.sourceforge.net>
Standards-Version: 3.8.4
Build-Depends: debhelper (>> 7.1), zlib1g-dev, libjpeg-turbo8-dev, libxaw7-dev (>> 4.1.0), perl-modules, xfonts-base, xutils-dev, libx11-dev, libxau-dev, libxext-dev, libxi-dev, libxkbfile-dev, libxmu-dev, libxt-dev, x11proto-core-dev, cmake (>> 2.8), libgnutls-dev, libpam0g-dev, libpng12-dev, automake, autoconf, libtool, pkg-config, libpixman-1-dev, x11proto-bigreqs-dev, x11proto-composite-dev, x11proto-damage-dev, x11proto-dri2-dev, x11proto-fixes-dev, x11proto-fonts-dev, x11proto-gl-dev, x11proto-input-dev, x11proto-kb-dev, x11proto-randr-dev, x11proto-render-dev, x11proto-resource-dev, x11proto-scrnsaver-dev, x11proto-video-dev, x11proto-xext-dev, x11proto-xf86bigfont-dev, x11proto-xf86dga-dev, x11proto-xf86dri-dev, x11proto-xf86vidmode-dev, x11proto-xinerama-dev, libosmesa6-dev, libgl1-mesa-dev, libgl1-mesa-dri, libgl1-mesa-glx, libxfont-dev, x11proto-record-dev, default-jdk, libxtst-dev, libxft-dev, libexpat1-dev, libfontconfig1-dev, libxrender-dev, libpciaccess-dev, curl, bzip2, quilt, libglu1-mesa-dev, libxcursor-dev, libxinerama-dev, libxfixes-dev, libcairo2-dev, x11proto-dri3-dev, libgcrypt20-dev, x11proto-xcmisc-dev, x11proto-present-dev, xorg-server-source, libfltk1.3-dev, fluid
Homepage: http://www.tigervnc.com
Package: tigervncserver
Architecture: any
Provides: xserver, vnc-server
Depends: x11-common | xserver-common, x11-utils, xauth, libbz2-1.0, libc6, libfontenc1, libfreetype6, libgcc1, libgl1-mesa-dri, libgnutls30, libjpeg-turbo8, libp11-kit0, libpam0g, libpixman-1-0, libstdc++6, libtasn1-3-bin, libx11-6, libxau6, libxcb1, libxdmcp6, libxext6, libxfont1, libxfont1-dev, libxtst6, zlib1g, libglu1-mesa, libxcursor1, libxinerama1, libxfixes3, x11-xkb-utils, libgcrypt20
Recommends: xfonts-base, x11-xserver-utils
Suggests: xtigervncviewer, tigervnc-java
Description: virtual network computing server software
Virtual Network Computing (VNC) is a remote display system which allows you to
view and interact with a virtual desktop environment that is running on another
computer on the network. Using VNC, you can run graphical applications on a
remote machine and send only the display from these applications to your local
machine. VNC is platform-independent and supports a wide variety of operating
systems and architectures as both servers and clients.
.
TigerVNC is a high-speed version of VNC based on the RealVNC 4 and X.org code
bases. TigerVNC started as a next-generation development effort for TightVNC
on Unix and Linux platforms, but it split from its parent project in early 2009
so that TightVNC could focus on Windows platforms. TigerVNC supports a variant
of Tight encoding that is greatly accelerated by the use of the libjpeg-turbo
JPEG codec.
Package: xtigervncviewer
Architecture: any
Provides: vncviewer, vnc-viewer
Depends: libc6, libexpat1, libfontconfig1, libfreetype6, libgcc1, libgnutls30, libjpeg-turbo8, libp11-kit0, libpng12-0, libstdc++6, libtasn1-3-bin, libx11-6, libxau6, libxcb1, libxdmcp6, libxext6, libxft2, libxrender1, zlib1g, libglu1-mesa, libxcursor1, libxinerama1, libxfixes3, libfltk1.3, libfltk-images1.3
Recommends: xfonts-base
Suggests: tigervncserver, ssh
Description: virtual network computing client software for X
Virtual Network Computing (VNC) is a remote display system which allows you to
view and interact with a virtual desktop environment that is running on another
computer on the network. Using VNC, you can run graphical applications on a
remote machine and send only the display from these applications to your local
machine. VNC is platform-independent and supports a wide variety of operating
systems and architectures as both servers and clients.
.
TigerVNC is a high-speed version of VNC based on the RealVNC 4 and X.org code
bases. TigerVNC started as a next-generation development effort for TightVNC
on Unix and Linux platforms, but it split from its parent project in early 2009
so that TightVNC could focus on Windows platforms. TigerVNC supports a variant
of Tight encoding that is greatly accelerated by the use of the libjpeg-turbo
JPEG codec.
Package: tigervnc-java
Architecture: any
Suggests: tigervncserver
Provides: vncviewer, vnc-viewer
Depends: default-jre
Description: TigerVNC java applet
Virtual Network Computing (VNC) is a remote display system which allows you to
view and interact with a virtual desktop environment that is running on another
computer on the network. Using VNC, you can run graphical applications on a
remote machine and send only the display from these applications to your local
machine. VNC is platform-independent and supports a wide variety of operating
systems and architectures as both servers and clients.
.
TigerVNC is a high-speed version of VNC based on the RealVNC 4 and X.org code
bases. TigerVNC started as a next-generation development effort for TightVNC
on Unix and Linux platforms, but it split from its parent project in early 2009
so that TightVNC could focus on Windows platforms. TigerVNC supports a variant
of Tight encoding that is greatly accelerated by the use of the libjpeg-turbo
JPEG codec.

View file

@ -1,116 +0,0 @@
This package was packaged for Debian by Brian P. Hinz <bphinz@users.sourceforge.net>
on Tue, 02 Jul 2013 21:33:24 +0500 using the tightvnc package as a base.
It was downloaded from:
http://www.tigervnc.org/
COPYRIGHT:
==========
TigerVNC is
Copyright (C) 1999 AT&T Laboratories Cambridge
Copyright (C) 2002-2005 RealVNC Ltd.
Copyright (C) 2000-2006 TightVNC Group
Copyright (C) 2005-2006 Martin Koegler
Copyright (C) 2005-2006 Sun Microsystems, Inc.
Copyright (C) 2006 OCCAM Financial Technology
Copyright (C) 2000-2008 Constantin Kaplinsky
Copyright (C) 2004-2009 Peter Astrand for Cendio AB
Copyright (C) 2010 Antoine Martin
Copyright (C) 2010 m-privacy GmbH
Copyright (C) 2009-2011 D. R. Commander
Copyright (C) 2009-2011 Pierre Ossman for Cendio AB
Copyright (C) 2004, 2009-2011 Red Hat, Inc.
Copyright (C) 2009-2011 TigerVNC Team
All Rights Reserved.
This software is distributed under the GNU General Public Licence as published
by the Free Software Foundation. See the file LICENSE.TXT for the conditions
under which this software is made available. TigerVNC also contains code from
other sources. See the Acknowledgements section below, and the individual
source files, for details of the conditions under which they are made
available.
ACKNOWLEDGEMENTS
================
This distribution contains zlib compression software. This is:
Copyright (C) 1995-2002 Jean-loup Gailly and Mark Adler
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
Jean-loup Gailly Mark Adler
jloup@gzip.org madler@alumni.caltech.edu
The data format used by the zlib library is described by RFCs (Request for
Comments) 1950 to 1952 in the files ftp://ds.internic.net/rfc/rfc1950.txt
(zlib format), rfc1951.txt (deflate format) and rfc1952.txt (gzip format).
This distribution contains public domain DES software by Richard Outerbridge.
This is:
Copyright (c) 1988,1989,1990,1991,1992 by Richard Outerbridge.
(GEnie : OUTER; CIS : [71755,204]) Graven Imagery, 1992.
This distribution contains software from the X Window System. This is:
Copyright 1987, 1988, 1998 The Open Group
Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting
documentation.
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Except as contained in this notice, the name of The Open Group shall not be
used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from The Open Group.
Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts.
All Rights Reserved
Permission to use, copy, modify, and distribute this software and its
documentation for any purpose and without fee is hereby granted,
provided that the above copyright notice appear in all copies and that
both that copyright notice and this permission notice appear in
supporting documentation, and that the name of Digital not be
used in advertising or publicity pertaining to distribution of the
software without specific, written prior permission.
DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
SOFTWARE.

View file

@ -1,94 +0,0 @@
#!/bin/bash
#
# Init file for TigerVNC Server
#
# chkconfig: - 91 35
# description: TigerVNC remote X administration daemon.
#
# processname: Xvnc
### BEGIN INIT INFO
# Provides: vncservers
# Required-Start: networking
# Required-Stop: networking
# Default-Start:
# Default-Stop: 0 1 2 3 4 5 6
# Short-Description: Starts and stops vncserver
# Description: Used to provide remote X administration services.
### END INIT INFO
# Source function library.
. /lib/lsb/init-functions
### Default variables
SYSCONFIG="/etc/default/vncservers"
VNCSERVERS=""
### Read configuration
[ -r "$SYSCONFIG" ] && . "$SYSCONFIG"
RETVAL=0
prog=$"VNC server"
start() {
echo -n $"Starting $prog: "
ulimit -S -c 0 >/dev/null 2>&1
for display in ${VNCSERVERS}; do
echo -n "${display} "
if [ -r $(eval echo ~${display##*:})/.vnc/passwd ]; then
unset BASH_ENV ENV
log_begin_msg "Starting VNC Server for user ${display##*:}:"
su ${display##*:} -c "cd ~${display##*:} && [ -f .vnc/passwd ] && vncserver :${display%%:*} ${VNCSERVERARGS[${display%:*}]}"
RETVAL="$?"
if [ "$RETVAL" -ne 0 ]; then
log_end_msg 1
break
else
log_end_msg 0
fi
else
log_begin_msg "Not starting VNC Server for user ${display##*:}.\n File \"~${display##*:}/.vnc/passwd\" not found.\n Create a password file for the VNC server with vncpasswd"
log_end_msg 1
fi
done
echo
[ "$RETVAL" -eq 0 ] && touch "/var/lock/vncserver"
return $RETVAL
}
stop() {
echo -n $"Shutting down $desc: "
for display in ${VNCSERVERS}; do
echo -n "${display} "
unset BASH_ENV ENV
log_begin_msg "Shutting down VNC Server for user ${display##*:}: "
su ${display##*:} -c "vncserver -kill :${display%%:*}" >/dev/null 2>&1
RETVAL="$?"
[ "$RETVAL" -eq 0 ] && log_end_msg 0 || log_end_msg 1
done
echo
[ "$RETVAL" -eq 0 ] && rm -f "/var/lock/vncserver"
return $RETVAL
}
restart() {
stop
start
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart|reload)
restart
;;
*)
echo $"Usage: $0 {start|stop|restart}"
RETVAL=1
esac
exit $RETVAL

View file

@ -1,19 +0,0 @@
# The VNCSERVERS variable is a list of display:user pairs.
#
# Uncomment the lines below to start a VNC server on display :2
# as my 'myusername' (adjust this to your own). You will also
# need to set a VNC password; run 'man vncpasswd' to see how
# to do that.
#
# DO NOT RUN THIS SERVICE if your local area network is
# untrusted! For a secure way of using VNC, see this URL:
# http://kbase.redhat.com/faq/docs/DOC-7028
# Use "-nolisten tcp" to prevent X connections to your VNC server via TCP.
# Use "-localhost" to prevent remote VNC clients connecting except when
# doing so through a secure tunnel. See the "-via" option in the
# `man vncviewer' manual page.
# VNCSERVERS="2:myusername"
# VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -localhost"

View file

@ -1,286 +0,0 @@
#!/usr/bin/make -f
# Sample debian/rules that uses debhelper.
# GNU copyright 1997 by Joey Hess.
export DEB_BUILD_MAINT_OPTIONS=hardening=+all
CFLAGS := $(shell dpkg-buildflags --get CFLAGS)
CPPFLAGS := $(shell dpkg-buildflags --get CPPFLAGS)
CXXFLAGS := $(shell dpkg-buildflags --get CXXFLAGS)
LDFLAGS := $(shell dpkg-buildflags --get LDFLAGS)
export CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)
DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
DEB_HOST_ARCH_OS ?= $(shell dpkg-architecture -qDEB_HOST_ARCH_OS)
ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE))
confflags += --build=$(DEB_HOST_GNU_TYPE)
else
confflags += --build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE)
endif
SOURCE_NAME := tigervnc
SOURCE_VERSION := $(shell dpkg-parsechangelog | awk -F': ' '/^Version: / {print $$2}')
BUILDER=For technical support please see http://sourceforge.net/projects/tigervnc/support
libdir = /usr/lib/$(DEB_HOST_MULTIARCH)
ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
CFLAGS += -g -O2 -fPIC
endif
ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
INSTALL_PROGRAM += -s
endif
export CC = gcc
# use xorg sources as shipped in xorg-server-source package
XORG_SOURCE_ARCHIVE = /usr/src/xorg-server.tar.xz
xorg-source-stamp: $(XORG_SOURCE_ARCHIVE)
tar -C unix/xserver -axf $(XORG_SOURCE_ARCHIVE) --strip-components=1
patch -p1 < debian/xorg-source-patches/xserver118-patch.patch
cd unix/xserver && patch -p1 < ../xserver118.patch
patch -p1 < debian/xorg-source-patches/100_rethrow_signals.patch
patch -p1 < debian/xorg-source-patches/516_tigervnc-xorg-manpages.patch
touch xorg-source-stamp
configure: config-stamp
config-stamp: xorg-source-stamp
dh_testdir
# Add here commands to configure the package.
cmake -G"Unix Makefiles" \
-DBUILD_STATIC=off \
-DCMAKE_INSTALL_PREFIX=/usr
(cd unix/xserver; \
export PIXMANINCDIR=/usr/include/pixman-1; \
autoreconf -fiv; \
patch -p1 -i ../../debian/xorg-source-patches/debian_libtool.patch; \
./configure --prefix=/usr \
--disable-silent-rules \
--disable-static \
--without-dtrace \
--disable-strict-compilation \
--disable-debug \
--disable-unit-tests \
--with-int10=x86emu \
--with-extra-module-dir="/usr/lib/${DEB_HOST_MULTIARCH}/xorg/extra-modules,/usr/lib/xorg/extra-modules" \
--with-os-vendor="$(VENDOR)" \
--with-builderstring="$(SOURCE_NAME) $(SOURCE_VERSION) ($(BUILDER))" \
--with-xkb-path=/usr/share/X11/xkb \
--with-xkb-output=/var/lib/xkb \
--with-default-xkb-rules=evdev \
--disable-devel-docs \
--enable-mitshm \
--enable-xres \
--disable-xcsecurity \
--disable-tslib \
--enable-dbe \
--disable-xf86bigfont \
--disable-dpms \
--disable-config-hal \
--disable-config-udev \
--disable-xorg \
--disable-xquartz \
--disable-xwin \
--disable-xfake \
--disable-install-setuid \
--with-default-font-path="/usr/share/fonts/X11/misc,/usr/share/fonts/X11/cyrillic,/usr/share/fonts/X11/100dpi/:unscaled,/usr/share/fonts/X11/75dpi/:unscaled,/usr/share/fonts/X11/Type1,/usr/share/fonts/X11/100dpi,/usr/share/fonts/X11/75dpi,/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType,built-ins" \
--enable-aiglx \
--enable-composite \
--enable-record \
--enable-xv \
--enable-xvmc \
--enable-dga \
--enable-screensaver \
--enable-xdmcp \
--enable-xdm-auth-1 \
--enable-glx \
--disable-dri --enable-dri2 --enable-dri3 \
--enable-xinerama \
--enable-xf86vidmode \
--enable-xace \
--enable-xfree86-utils \
--disable-dmx \
--disable-xvfb \
--disable-xnest \
--disable-kdrive \
--disable-xephyr \
--enable-xfbdev \
--with-sha1=libgcrypt \
--enable-xcsecurity \
--disable-docs \
--disable-selective-werror)
touch config-stamp
build-arch: config-stamp build-arch-stamp
build-arch-stamp:
dh_testdir
# Add here command to compile/build the package.
# Build first things.
# Build Xvnc
make LDFLAGS="-lpng"
(cd unix/xserver;make)
touch build-arch-stamp
build-indep: config-stamp build-indep-stamp
build-indep-stamp:
dh_testdir
# Add here command to compile/build the arch indep package.
# It's ok not to do anything here, if you don't need to build
# anything for this package.
#/usr/bin/docbook-to-man debian/vnc.sgml > vnc.1
(cd media;make)
(cd java;cmake -G"Unix Makefiles";make)
touch build-indep-stamp
build: build-arch build-indep
clean:
dh_testdir
dh_testroot
rm -f build-arch-stamp build-indep-stamp config-stamp
# Add here commands to clean up after the build process.
dh_clean
install: DH_OPTIONS=
install: build
dh_testdir
dh_testroot
dh_clean -k
dh_prep
dh_installdirs
# Add here commands to install the package into debian/vnc.
make install DESTDIR=$(CURDIR)/debian/tigervncserver
(cd unix/xserver/hw/vnc; make install DESTDIR=$(CURDIR)/debian/tigervncserver)
# rename server files to tigervnc specific names
mv $(CURDIR)/debian/tigervncserver/usr/bin/Xvnc \
$(CURDIR)/debian/tigervncserver/usr/bin/Xtigervnc
mv $(CURDIR)/debian/tigervncserver/usr/bin/vncconfig \
$(CURDIR)/debian/tigervncserver/usr/bin/tigervncconfig
mv $(CURDIR)/debian/tigervncserver/usr/bin/vncpasswd \
$(CURDIR)/debian/tigervncserver/usr/bin/tigervncpasswd
mv $(CURDIR)/debian/tigervncserver/usr/bin/vncserver \
$(CURDIR)/debian/tigervncserver/usr/bin/tigervncserver
mv $(CURDIR)/debian/tigervncserver/usr/bin/x0vncserver \
$(CURDIR)/debian/tigervncserver/usr/bin/x0tigervncserver
mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/vncconfig.1 \
$(CURDIR)/debian/tigervncserver/usr/share/man/man1/tigervncconfig.1
mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/vncpasswd.1 \
$(CURDIR)/debian/tigervncserver/usr/share/man/man1/tigervncpasswd.1
mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/vncserver.1 \
$(CURDIR)/debian/tigervncserver/usr/share/man/man1/tigervncserver.1
mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/x0vncserver.1 \
$(CURDIR)/debian/tigervncserver/usr/share/man/man1/x0tigervncserver.1
mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/Xvnc.1 \
$(CURDIR)/debian/tigervncserver/usr/share/man/man1/Xtigervnc.1
# delete development files
rm -f $(CURDIR)/debian/tigervncserver/usr/lib/xorg/modules/extensions/libvnc.la
# install server service
install -o root -g root -m 755 -D $(CURDIR)/debian/local/vncserver.service \
$(CURDIR)/debian/tigervncserver/etc/init.d/vncserver
install -o root -g root -m 644 -D $(CURDIR)/debian/local/vncserver.sysconfig \
$(CURDIR)/debian/tigervncserver/etc/default/vncservers
# move viewer files to viewer package, rename on the fly
mkdir -p $(CURDIR)/debian/xtigervncviewer/usr/bin
mv $(CURDIR)/debian/tigervncserver/usr/bin/vncviewer \
$(CURDIR)/debian/xtigervncviewer/usr/bin/xtigervncviewer
mkdir -p $(CURDIR)/debian/xtigervncviewer/usr/share/man/man1
mv $(CURDIR)/debian/tigervncserver/usr/share/man/man1/vncviewer.1 \
$(CURDIR)/debian/xtigervncviewer/usr/share/man/man1/xtigervncviewer.1
mkdir -p $(CURDIR)/debian/xtigervncviewer/usr/share
mv $(CURDIR)/debian/tigervncserver/usr/share/applications \
$(CURDIR)/debian/xtigervncviewer/usr/share/
mkdir -p $(CURDIR)/debian/xtigervncviewer/usr/share
mv $(CURDIR)/debian/tigervncserver/usr/share/icons \
$(CURDIR)/debian/xtigervncviewer/usr/share/
# tigervnc-java
mkdir -p $(CURDIR)/debian/tigervnc-java/usr/share
(cd java; make install DESTDIR=$(CURDIR)/debian/tigervnc-java/usr/share)
# install additional license files
mkdir -p $(CURDIR)/debian/xtigervncviewer/usr/share/doc/xtigervncviewer
cp $(CURDIR)/debian/tigervncserver/usr/share/doc/tigervnc-*/* \
$(CURDIR)/debian/xtigervncviewer/usr/share/doc/xtigervncviewer/
mkdir -p $(CURDIR)/debian/tigervnc-java/usr/share/doc/tigervnc-java
cp $(CURDIR)/debian/tigervncserver/usr/share/doc/tigervnc-*/* \
$(CURDIR)/debian/tigervnc-java/usr/share/doc/tigervnc-java/
mkdir -p $(CURDIR)/debian/tigervncserver/usr/share/doc/tigervncserver
mv $(CURDIR)/debian/tigervncserver/usr/share/doc/tigervnc-*/* \
$(CURDIR)/debian/tigervncserver/usr/share/doc/tigervncserver/
rm -rf $(CURDIR)/debian/tigervncserver/usr/share/doc/tigervnc-*/
# dh_movefiles
# Build architecture-independent files here.
# Pass -i to all debhelper commands in this target to reduce clutter.
binary-indep: build install
binary-indep-keep:
dh_testdir -i
dh_testroot -i
# dh_installdebconf -i
dh_install
dh_installdocs -i
dh_installexamples -i
dh_installmenu -i
# dh_installlogrotate -i
# dh_installemacsen -i
# dh_installpam -i
# dh_installmime -i
# dh_installinit -i
dh_installcron -i
dh_installman -i
dh_installinfo -i
# dh_undocumented -i
dh_installchangelogs -i
dh_link -i
dh_compress -i
dh_fixperms -i
dh_installdeb -i
dh_perl -i
dh_gencontrol -i
dh_md5sums -i
dh_builddeb -i
# Build architecture-dependent files here.
binary-arch: build install
dh_testdir -a
dh_testroot -a
# dh_installdebconf -a
dh_installdocs -a
# dh_installexamples -a
dh_installmenu -a
# dh_installlogrotate -a
# dh_installemacsen -a
# dh_installpam -a
# dh_installmime -a
dh_install
dh_installinit -a
# dh_installcron -a
dh_installman -a
dh_installinfo -a
# dh_undocumented -a
dh_installchangelogs -a
# Remove empty directories
dh_strip -a
dh_link -a
dh_compress -a
dh_fixperms -a
dh_makeshlibs -a
dh_installdeb -a
dh_perl -a
dh_shlibdeps -a
dh_gencontrol -a
dh_md5sums -a
dh_builddeb -a
binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install

View file

@ -1 +0,0 @@
3.0 (quilt)

View file

@ -1,32 +0,0 @@
#!/bin/sh
set -e
if [ "$1" = "configure" ]; then
MAN=/usr/share/man/man1
BIN=/usr/bin
update-alternatives --install \
$BIN/vncserver vncserver $BIN/tigervncserver 64 \
--slave \
$MAN/vncserver.1.gz vncserver.1.gz $MAN/tigervncserver.1.gz
update-alternatives --install \
$BIN/Xvnc Xvnc $BIN/Xtigervnc 74 \
--slave \
$MAN/Xvnc.1.gz Xvnc.1.gz $MAN/Xtigervnc.1.gz
update-alternatives --install \
$BIN/x0vncserver x0vncserver $BIN/x0tigervncserver 74 \
--slave \
$MAN/x0vncserver.1.gz x0vncserver.1.gz $MAN/x0tigervncserver.1.gz
update-alternatives --install \
$BIN/vncpasswd vncpasswd $BIN/tigervncpasswd 74 \
--slave \
$MAN/vncpasswd.1.gz vncpasswd.1.gz $MAN/tigervncpasswd.1.gz
update-alternatives --install \
$BIN/vncconfig vncconfig $BIN/tigervncconfig 64 \
--slave \
$MAN/vncconfig.1.gz vncconfig.1.gz $MAN/tigervncconfig.1.gz
fi
#DEBHELPER#
exit 0

View file

@ -1,21 +0,0 @@
#!/bin/sh
set -e
if [ "$1" = "remove" ] ; then
BIN=/usr/bin
update-alternatives --remove \
vncserver $BIN/tigervncserver
update-alternatives --remove \
Xvnc $BIN/Xtigervnc
update-alternatives --remove \
x0vncserver $BIN/x0tigervncserver
update-alternatives --remove \
vncpasswd $BIN/tigervncpasswd
update-alternatives --remove \
tigervncconfig $BIN/tigervncconfig
fi
#DEBHELPER#
exit 0

View file

@ -1,26 +0,0 @@
--- a/unix/xserver/hw/vnc/xvnc.c 2013-07-14 14:05:29.963390223 -0400
+++ b/unix/xserver/hw/vnc/xvnc.c 2013-07-14 14:04:12.840357191 -0400
@@ -250,7 +250,7 @@
#if XORG < 111
AbortDDX()
#else
-AbortDDX(enum ExitCode error)
+SigAbortDDX(int signo, enum ExitCode error)
#endif
{
#if XORG < 111
@@ -260,6 +260,14 @@
#endif
}
+#if XORG >= 111
+void
+AbortDDX(enum ExitCode error)
+{
+ SigAbortDDX(0, error);
+}
+#endif
+
#ifdef __DARWIN__
void
DarwinHandleGUI(int argc, char *argv[])

View file

@ -1,10 +0,0 @@
--- a/unix/xserver/man/Makefile.am 2013-03-30 17:51:01.707258746 -0400
+++ b/unix/xserver/man/Makefile.am 2013-03-30 17:51:47.606569692 -0400
@@ -2,5 +2,7 @@
# (i.e. those handled in the os/utils.c options processing instead of in
# the DDX-level options processing)
+if ENABLE_DOCS
include $(top_srcdir)/manpages.am
appman_PRE = Xserver.man
+endif ENABLE_DOCS

View file

@ -1,87 +0,0 @@
Index: a/ltmain.sh
===================================================================
--- a/ltmain.sh
+++ b/ltmain.sh
@@ -7890,19 +7890,19 @@
# It is a libtool convenience library, so add in its objects.
func_append convenience " $ladir/$objdir/$old_library"
func_append old_convenience " $ladir/$objdir/$old_library"
- tmp_libs=
- for deplib in $dependency_libs; do
- deplibs="$deplib $deplibs"
- if $opt_preserve_dup_deps; then
- case "$tmp_libs " in
- *" $deplib "*) func_append specialdeplibs " $deplib" ;;
- esac
- fi
- func_append tmp_libs " $deplib"
- done
elif test prog != "$linkmode" && test lib != "$linkmode"; then
func_fatal_error "'$lib' is not a convenience library"
fi
+ tmp_libs=
+ for deplib in $dependency_libs; do
+ deplibs="$deplib $deplibs"
+ if $opt_preserve_dup_deps; then
+ case "$tmp_libs " in
+ *" $deplib "*) func_append specialdeplibs " $deplib" ;;
+ esac
+ fi
+ func_append tmp_libs " $deplib"
+ done
continue
fi # $pass = conv
## Do not link against deplibs. This is not needed for shared libs
## on atleast ELF systems since those already know which libs they
## need themself. This seems to break a few things and will be fixed
## in a better way in a future upstream version.
Index: a/ltmain.sh
===================================================================
--- a/ltmain.sh
+++ b/ltmain.sh
@@ -7568,10 +7568,7 @@
case $pass in
dlopen) libs=$dlfiles ;;
dlpreopen) libs=$dlprefiles ;;
- link)
- libs="$deplibs %DEPLIBS%"
- test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs"
- ;;
+ link) libs="$deplibs %DEPLIBS% $dependency_libs" ;;
esac
fi
if test lib,dlpreopen = "$linkmode,$pass"; then
Index: a/m4/libtool.m4
===================================================================
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
@@ -4936,9 +4936,6 @@
;;
esac
;;
- linux* | k*bsd*-gnu | gnu*)
- _LT_TAGVAR(link_all_deplibs, $1)=no
- ;;
*)
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
;;
@@ -4998,9 +5001,6 @@
openbsd* | bitrig*)
with_gnu_ld=no
;;
- linux* | k*bsd*-gnu | gnu*)
- _LT_TAGVAR(link_all_deplibs, $1)=no
- ;;
esac
_LT_TAGVAR(ld_shlibs, $1)=yes
@@ -5773,7 +5779,6 @@
if test yes = "$lt_cv_irix_exported_symbol"; then
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib'
fi
- _LT_TAGVAR(link_all_deplibs, $1)=no
else
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib'

View file

@ -1,22 +0,0 @@
--- a/unix/xserver118.patch 2016-05-07 15:32:50.000000000 -0400
+++ b/unix/xserver118.patch 2016-04-28 07:11:31.000000000 -0400
@@ -48,14 +48,15 @@
diff -ur xorg-server.orig/hw/Makefile.am xorg-server/hw/Makefile.am
--- xorg-server.orig/hw/Makefile.am 2016-04-09 21:28:27.059999965 +0200
+++ xorg-server/hw/Makefile.am 2016-04-09 21:28:57.587999860 +0200
-@@ -43,6 +43,7 @@
+@@ -43,7 +43,8 @@
$(KDRIVE_SUBDIRS) \
$(XQUARTZ_SUBDIRS) \
-- $(XWAYLAND_SUBDIRS)
-+ $(XWAYLAND_SUBDIRS) \
+ $(XWAYLAND_SUBDIRS) \
+- $(XMIR_SUBDIRS)
++ $(XMIR_SUBDIRS) \
+ vnc
- DIST_SUBDIRS = dmx xfree86 vfb xnest xwin xquartz kdrive xwayland
+ DIST_SUBDIRS = dmx xfree86 vfb xnest xwin xquartz kdrive xwayland xmir
diff -ur xorg-server.orig/mi/miinitext.c xorg-server/mi/miinitext.c
--- xorg-server.orig/mi/miinitext.c 2016-04-09 21:28:27.015999965 +0200

View file

@ -1,5 +0,0 @@
?package(xtigervncviewer):needs="x11" \
section="Applications/Network/Communication" \
hints="VNC,remote-control"\
title="xtigervncviewer" \
command="/usr/bin/xtigervncviewer"

View file

@ -1,18 +0,0 @@
#!/bin/sh -e
if [ "$1" = "configure" ]; then
MAN=/usr/share/man/man1
BIN=/usr/bin
update-alternatives --install \
$BIN/vncviewer vncviewer $BIN/xtigervncviewer 74 \
--slave \
$MAN/vncviewer.1.gz vncviewer.1.gz $MAN/xtigervncviewer.1.gz \
--slave \
$MAN/xvncviewer.1.gz xvncviewer.1.gz $MAN/xtigervncviewer.1.gz \
--slave \
$BIN/xvncviewer xvncviewer $BIN/xtigervncviewer
fi
#DEBHELPER#
exit 0

View file

@ -1,11 +0,0 @@
#!/bin/sh -e
if [ "$1" = "remove" ] ; then
BIN=/usr/bin
update-alternatives --remove \
vncviewer $BIN/xtigervncviewer
fi
#DEBHELPER#
exit 0

File diff suppressed because it is too large Load diff

View file

@ -1,26 +0,0 @@
diff --git a/include/dix.h b/include/dix.h
index 21176a8..921156b 100644
--- a/include/dix.h
+++ b/include/dix.h
@@ -80,7 +80,7 @@ SOFTWARE.
#define REQUEST_FIXED_SIZE(req, n)\
if (((sizeof(req) >> 2) > client->req_len) || \
- ((n >> 2) >= client->req_len) || \
+ (((n) >> 2) >= client->req_len) || \
((((uint64_t) sizeof(req) + (n) + 3) >> 2) != (uint64_t) client->req_len)) \
return(BadLength)
diff --git a/os/access.c b/os/access.c
index f393c8d..28f2d32 100644
--- a/os/access.c
+++ b/os/access.c
@@ -1308,7 +1308,7 @@ GetHosts(void **data, int *pnHosts, int *pLen, BOOL * pEnabled)
}
for (host = validhosts; host; host = host->next) {
len = host->len;
- if ((ptr + sizeof(xHostEntry) + len) > (data + n))
+ if ((ptr + sizeof(xHostEntry) + len) > ((unsigned char *) *data + n))
break;
((xHostEntry *) ptr)->family = host->family;
((xHostEntry *) ptr)->length = len;

View file

@ -1,80 +0,0 @@
From 39547d600a13713e15429f49768e54c3173c828d Mon Sep 17 00:00:00 2001
From: Karl Tomlinson <xmail@karlt.net>
Date: Mon, 18 Feb 2013 01:25:34 +0000
Subject: MakeBigReq: don't move the last word, already handled by Data32
MakeBigReq inserts a length field after the first 4 bytes of the request
(after req->length), pushing everything else back by 4 bytes.
The current memmove moves everything but the first 4 bytes back.
If a request aligns to the end of the buffer pointer when MakeBigReq is
invoked for that request, this runs over the buffer.
Instead, we need to memmove minus the first 4 bytes (which aren't moved),
minus the last 4 bytes (so we still align to the previous tail).
The 4 bytes that fell out are already handled with Data32, which will
handle the buffermax correctly.
The case where req->length = 1 was already not functional.
Reported by Abhishek Arya <inferno@chromium.org>.
https://bugzilla.mozilla.org/show_bug.cgi?id=803762
Reviewed-by: Jeff Muizelaar <jmuizelaar@mozilla.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
diff --git a/include/X11/Xlibint.h b/include/X11/Xlibint.h
index 40965c4..06395b3 100644
--- a/include/X11/Xlibint.h
+++ b/include/X11/Xlibint.h
@@ -486,6 +486,14 @@ extern void *_XGetRequest(Display *dpy, CARD8 type, size_t len);
req = (xReq *) _XGetRequest(dpy, X_/**/name, SIZEOF(xReq))
#endif
+/*
+ * MakeBigReq sets the CARD16 "req->length" to 0 and inserts a new CARD32
+ * length, after req->length, before the data in the request. The new length
+ * includes the "n" extra 32-bit words.
+ *
+ * Do not use MakeBigReq if there is no data already in the request.
+ * req->length must already be >= 2.
+ */
#ifdef WORD64
#define MakeBigReq(req,n) \
{ \
@@ -493,7 +501,7 @@ extern void *_XGetRequest(Display *dpy, CARD8 type, size_t len);
CARD32 _BRlen = req->length - 1; \
req->length = 0; \
_BRdat = ((CARD32 *)req)[_BRlen]; \
- memmove(((char *)req) + 8, ((char *)req) + 4, _BRlen << 2); \
+ memmove(((char *)req) + 8, ((char *)req) + 4, (_BRlen - 1) << 2); \
((CARD32 *)req)[1] = _BRlen + n + 2; \
Data32(dpy, &_BRdat, 4); \
}
@@ -504,13 +512,20 @@ extern void *_XGetRequest(Display *dpy, CARD8 type, size_t len);
CARD32 _BRlen = req->length - 1; \
req->length = 0; \
_BRdat = ((CARD32 *)req)[_BRlen]; \
- memmove(((char *)req) + 8, ((char *)req) + 4, _BRlen << 2); \
+ memmove(((char *)req) + 8, ((char *)req) + 4, (_BRlen - 1) << 2); \
((CARD32 *)req)[1] = _BRlen + n + 2; \
Data32(dpy, &_BRdat, 4); \
}
#endif
#endif
+/*
+ * SetReqLen increases the count of 32-bit words in the request by "n",
+ * or by "badlen" if "n" is too large.
+ *
+ * Do not use SetReqLen if "req" does not already have data after the
+ * xReq header. req->length must already be >= 2.
+ */
#ifndef __clang_analyzer__
#define SetReqLen(req,n,badlen) \
if ((req->length + n) > (unsigned)65535) { \
--
cgit v0.10.2

View file

@ -1,240 +0,0 @@
From 81c90dc8f0aae3b65730409b1b615b5fa7280ebd Mon Sep 17 00:00:00 2001
From: Olivier Fourdan <ofourdan@redhat.com>
Date: Fri, 16 Jan 2015 20:08:59 +0100
Subject: xkb: Don't swap XkbSetGeometry data in the input buffer
The XkbSetGeometry request embeds data which needs to be swapped when the
server and the client have different endianess.
_XkbSetGeometry() invokes functions that swap these data directly in the
input buffer.
However, ProcXkbSetGeometry() may call _XkbSetGeometry() more than once
(if there is more than one keyboard), thus causing on swapped clients the
same data to be swapped twice in memory, further causing a server crash
because the strings lengths on the second time are way off bounds.
To allow _XkbSetGeometry() to run reliably more than once with swapped
clients, do not swap the data in the buffer, use variables instead.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
diff --git a/xkb/xkb.c b/xkb/xkb.c
index 15c7f34..b9a3ac4 100644
--- a/xkb/xkb.c
+++ b/xkb/xkb.c
@@ -4961,14 +4961,13 @@ static char *
_GetCountedString(char **wire_inout, Bool swap)
{
char *wire, *str;
- CARD16 len, *plen;
+ CARD16 len;
wire = *wire_inout;
- plen = (CARD16 *) wire;
+ len = *(CARD16 *) wire;
if (swap) {
- swaps(plen);
+ swaps(&len);
}
- len = *plen;
str = malloc(len + 1);
if (str) {
memcpy(str, &wire[2], len);
@@ -4985,25 +4984,28 @@ _CheckSetDoodad(char **wire_inout,
{
char *wire;
xkbDoodadWireDesc *dWire;
+ xkbAnyDoodadWireDesc any;
+ xkbTextDoodadWireDesc text;
XkbDoodadPtr doodad;
dWire = (xkbDoodadWireDesc *) (*wire_inout);
+ any = dWire->any;
wire = (char *) &dWire[1];
if (client->swapped) {
- swapl(&dWire->any.name);
- swaps(&dWire->any.top);
- swaps(&dWire->any.left);
- swaps(&dWire->any.angle);
+ swapl(&any.name);
+ swaps(&any.top);
+ swaps(&any.left);
+ swaps(&any.angle);
}
CHK_ATOM_ONLY(dWire->any.name);
- doodad = XkbAddGeomDoodad(geom, section, dWire->any.name);
+ doodad = XkbAddGeomDoodad(geom, section, any.name);
if (!doodad)
return BadAlloc;
doodad->any.type = dWire->any.type;
doodad->any.priority = dWire->any.priority;
- doodad->any.top = dWire->any.top;
- doodad->any.left = dWire->any.left;
- doodad->any.angle = dWire->any.angle;
+ doodad->any.top = any.top;
+ doodad->any.left = any.left;
+ doodad->any.angle = any.angle;
switch (doodad->any.type) {
case XkbOutlineDoodad:
case XkbSolidDoodad:
@@ -5026,12 +5028,13 @@ _CheckSetDoodad(char **wire_inout,
dWire->text.colorNdx);
return BadMatch;
}
+ text = dWire->text;
if (client->swapped) {
- swaps(&dWire->text.width);
- swaps(&dWire->text.height);
+ swaps(&text.width);
+ swaps(&text.height);
}
- doodad->text.width = dWire->text.width;
- doodad->text.height = dWire->text.height;
+ doodad->text.width = text.width;
+ doodad->text.height = text.height;
doodad->text.color_ndx = dWire->text.colorNdx;
doodad->text.text = _GetCountedString(&wire, client->swapped);
doodad->text.font = _GetCountedString(&wire, client->swapped);
--
cgit v0.10.2
From 20079c36cf7d377938ca5478447d8b9045cb7d43 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan <ofourdan@redhat.com>
Date: Fri, 16 Jan 2015 08:44:45 +0100
Subject: xkb: Check strings length against request size
Ensure that the given strings length in an XkbSetGeometry request remain
within the limits of the size of the request.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
diff --git a/xkb/xkb.c b/xkb/xkb.c
index b9a3ac4..f3988f9 100644
--- a/xkb/xkb.c
+++ b/xkb/xkb.c
@@ -4957,25 +4957,29 @@ ProcXkbGetGeometry(ClientPtr client)
/***====================================================================***/
-static char *
-_GetCountedString(char **wire_inout, Bool swap)
+static Status
+_GetCountedString(char **wire_inout, ClientPtr client, char **str)
{
- char *wire, *str;
+ char *wire, *next;
CARD16 len;
wire = *wire_inout;
len = *(CARD16 *) wire;
- if (swap) {
+ if (client->swapped) {
swaps(&len);
}
- str = malloc(len + 1);
- if (str) {
- memcpy(str, &wire[2], len);
- str[len] = '\0';
- }
- wire += XkbPaddedSize(len + 2);
- *wire_inout = wire;
- return str;
+ next = wire + XkbPaddedSize(len + 2);
+ /* Check we're still within the size of the request */
+ if (client->req_len <
+ bytes_to_int32(next - (char *) client->requestBuffer))
+ return BadValue;
+ *str = malloc(len + 1);
+ if (!*str)
+ return BadAlloc;
+ memcpy(*str, &wire[2], len);
+ *(*str + len) = '\0';
+ *wire_inout = next;
+ return Success;
}
static Status
@@ -4987,6 +4991,7 @@ _CheckSetDoodad(char **wire_inout,
xkbAnyDoodadWireDesc any;
xkbTextDoodadWireDesc text;
XkbDoodadPtr doodad;
+ Status status;
dWire = (xkbDoodadWireDesc *) (*wire_inout);
any = dWire->any;
@@ -5036,8 +5041,14 @@ _CheckSetDoodad(char **wire_inout,
doodad->text.width = text.width;
doodad->text.height = text.height;
doodad->text.color_ndx = dWire->text.colorNdx;
- doodad->text.text = _GetCountedString(&wire, client->swapped);
- doodad->text.font = _GetCountedString(&wire, client->swapped);
+ status = _GetCountedString(&wire, client, &doodad->text.text);
+ if (status != Success)
+ return status;
+ status = _GetCountedString(&wire, client, &doodad->text.font);
+ if (status != Success) {
+ free (doodad->text.text);
+ return status;
+ }
break;
case XkbIndicatorDoodad:
if (dWire->indicator.onColorNdx >= geom->num_colors) {
@@ -5072,7 +5083,9 @@ _CheckSetDoodad(char **wire_inout,
}
doodad->logo.color_ndx = dWire->logo.colorNdx;
doodad->logo.shape_ndx = dWire->logo.shapeNdx;
- doodad->logo.logo_name = _GetCountedString(&wire, client->swapped);
+ status = _GetCountedString(&wire, client, &doodad->logo.logo_name);
+ if (status != Success)
+ return status;
break;
default:
client->errorValue = _XkbErrCode2(0x4F, dWire->any.type);
@@ -5304,18 +5317,20 @@ _CheckSetGeom(XkbGeometryPtr geom, xkbSetGeometryReq * req, ClientPtr client)
char *wire;
wire = (char *) &req[1];
- geom->label_font = _GetCountedString(&wire, client->swapped);
+ status = _GetCountedString(&wire, client, &geom->label_font);
+ if (status != Success)
+ return status;
for (i = 0; i < req->nProperties; i++) {
char *name, *val;
- name = _GetCountedString(&wire, client->swapped);
- if (!name)
- return BadAlloc;
- val = _GetCountedString(&wire, client->swapped);
- if (!val) {
+ status = _GetCountedString(&wire, client, &name);
+ if (status != Success)
+ return status;
+ status = _GetCountedString(&wire, client, &val);
+ if (status != Success) {
free(name);
- return BadAlloc;
+ return status;
}
if (XkbAddGeomProperty(geom, name, val) == NULL) {
free(name);
@@ -5349,9 +5364,9 @@ _CheckSetGeom(XkbGeometryPtr geom, xkbSetGeometryReq * req, ClientPtr client)
for (i = 0; i < req->nColors; i++) {
char *name;
- name = _GetCountedString(&wire, client->swapped);
- if (!name)
- return BadAlloc;
+ status = _GetCountedString(&wire, client, &name);
+ if (status != Success)
+ return status;
if (!XkbAddGeomColor(geom, name, geom->num_colors)) {
free(name);
return BadAlloc;
--
cgit v0.10.2

View file

@ -1,30 +0,0 @@
From 2deda9906480f9c8ae07b8c2a5510cc7e4c59a8e Mon Sep 17 00:00:00 2001
From: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri, 6 Feb 2015 15:50:45 -0800
Subject: bdfReadProperties: property count needs range check [CVE-2015-1802]
Avoid integer overflow or underflow when allocating memory arrays
by multiplying the number of properties reported for a BDF font.
Reported-by: Ilja Van Sprundel <ivansprundel@ioactive.com>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Julien Cristau <jcristau@debian.org>
diff --git a/src/bitmap/bdfread.c b/src/bitmap/bdfread.c
index 914a024..6387908 100644
--- a/src/bitmap/bdfread.c
+++ b/src/bitmap/bdfread.c
@@ -604,7 +604,9 @@ bdfReadProperties(FontFilePtr file, FontPtr pFont, bdfFileState *pState)
bdfError("missing 'STARTPROPERTIES'\n");
return (FALSE);
}
- if (sscanf((char *) line, "STARTPROPERTIES %d", &nProps) != 1) {
+ if ((sscanf((char *) line, "STARTPROPERTIES %d", &nProps) != 1) ||
+ (nProps <= 0) ||
+ (nProps > ((INT32_MAX / sizeof(FontPropRec)) - BDF_GENPROPS))) {
bdfError("bad 'STARTPROPERTIES'\n");
return (FALSE);
}
--
cgit v0.10.2

View file

@ -1,33 +0,0 @@
From 78c2e3d70d29698244f70164428bd2868c0ab34c Mon Sep 17 00:00:00 2001
From: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri, 6 Feb 2015 15:54:00 -0800
Subject: bdfReadCharacters: bailout if a char's bitmap cannot be read
[CVE-2015-1803]
Previously would charge on ahead with a NULL pointer in ci->bits, and
then crash later in FontCharInkMetrics() trying to access the bits.
Found with afl-1.23b.
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Julien Cristau <jcristau@debian.org>
diff --git a/src/bitmap/bdfread.c b/src/bitmap/bdfread.c
index 6387908..1b29b81 100644
--- a/src/bitmap/bdfread.c
+++ b/src/bitmap/bdfread.c
@@ -458,7 +458,10 @@ bdfReadCharacters(FontFilePtr file, FontPtr pFont, bdfFileState *pState,
ci->metrics.descent = -bb;
ci->metrics.characterWidth = wx;
ci->bits = NULL;
- bdfReadBitmap(ci, file, bit, byte, glyph, scan, bitmapsSizes);
+ if (!bdfReadBitmap(ci, file, bit, byte, glyph, scan, bitmapsSizes)) {
+ bdfError("could not read bitmap for character '%s'\n", charName);
+ goto BAILOUT;
+ }
ci++;
ndx++;
} else
--
cgit v0.10.2

View file

@ -1,73 +0,0 @@
From 2351c83a77a478b49cba6beb2ad386835e264744 Mon Sep 17 00:00:00 2001
From: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri, 6 Mar 2015 22:54:58 -0800
Subject: bdfReadCharacters: ensure metrics fit into xCharInfo struct
[CVE-2015-1804]
We use 32-bit ints to read from the bdf file, but then try to stick
into a 16-bit int in the xCharInfo struct, so make sure they won't
overflow that range.
Found by afl-1.24b.
v2: Verify that additions won't overflow 32-bit int range either.
v3: As Julien correctly observes, the previous check for bh & bw not
being < 0 reduces the number of cases we need to check for overflow.
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Julien Cristau <jcristau@debian.org>
diff --git a/src/bitmap/bdfread.c b/src/bitmap/bdfread.c
index 1b29b81..a0ace8f 100644
--- a/src/bitmap/bdfread.c
+++ b/src/bitmap/bdfread.c
@@ -62,8 +62,16 @@ from The Open Group.
#if HAVE_STDINT_H
#include <stdint.h>
-#elif !defined(INT32_MAX)
-#define INT32_MAX 0x7fffffff
+#else
+# ifndef INT32_MAX
+# define INT32_MAX 0x7fffffff
+# endif
+# ifndef INT16_MAX
+# define INT16_MAX 0x7fff
+# endif
+# ifndef INT16_MIN
+# define INT16_MIN (0 - 0x8000)
+# endif
#endif
#define INDICES 256
@@ -417,6 +425,12 @@ bdfReadCharacters(FontFilePtr file, FontPtr pFont, bdfFileState *pState,
bdfError("DWIDTH y value must be zero\n");
goto BAILOUT;
}
+ /* xCharInfo metrics are stored as INT16 */
+ if ((wx < 0) || (wx > INT16_MAX)) {
+ bdfError("character '%s' has out of range width, %d\n",
+ charName, wx);
+ goto BAILOUT;
+ }
line = bdfGetLine(file, lineBuf, BDFLINELEN);
if ((!line) || (sscanf((char *) line, "BBX %d %d %d %d", &bw, &bh, &bl, &bb) != 4)) {
bdfError("bad 'BBX'\n");
@@ -427,6 +441,14 @@ bdfReadCharacters(FontFilePtr file, FontPtr pFont, bdfFileState *pState,
charName, bw, bh);
goto BAILOUT;
}
+ /* xCharInfo metrics are read as int, but stored as INT16 */
+ if ((bl > INT16_MAX) || (bl < INT16_MIN) ||
+ (bb > INT16_MAX) || (bb < INT16_MIN) ||
+ (bw > (INT16_MAX - bl)) || (bh > (INT16_MAX - bb))) {
+ bdfError("character '%s' has out of range metrics, %d %d %d %d\n",
+ charName, bl, (bl+bw), (bh+bb), -bb);
+ goto BAILOUT;
+ }
line = bdfGetLine(file, lineBuf, BDFLINELEN);
if ((line) && (bdfIsPrefix(line, "ATTRIBUTES"))) {
for (p = line + strlen("ATTRIBUTES ");
--
cgit v0.10.2

View file

@ -1,511 +0,0 @@
# - Find X11 installation
# Try to find X11 on UNIX systems. The following values are defined
# X11_FOUND - True if X11 is available
# X11_INCLUDE_DIR - include directories to use X11
# X11_LIBRARIES - link against these to use X11
#
# and also the following more fine grained variables:
# Include paths: X11_ICE_INCLUDE_PATH, X11_ICE_LIB, X11_ICE_FOUND
# X11_SM_INCLUDE_PATH, X11_SM_LIB, X11_SM_FOUND
# X11_X11_INCLUDE_PATH, X11_X11_LIB
# X11_Xaccessrules_INCLUDE_PATH, X11_Xaccess_FOUND
# X11_Xaccessstr_INCLUDE_PATH, X11_Xaccess_FOUND
# X11_Xau_INCLUDE_PATH, X11_Xau_LIB, X11_Xau_FOUND
# X11_Xcomposite_INCLUDE_PATH, X11_Xcomposite_LIB, X11_Xcomposite_FOUND
# X11_Xcursor_INCLUDE_PATH, X11_Xcursor_LIB, X11_Xcursor_FOUND
# X11_Xdamage_INCLUDE_PATH, X11_Xdamage_LIB, X11_Xdamage_FOUND
# X11_Xdmcp_INCLUDE_PATH, X11_Xdmcp_LIB, X11_Xdmcp_FOUND
# X11_Xext_LIB, X11_Xext_FOUND
# X11_dpms_INCLUDE_PATH, (in X11_Xext_LIB), X11_dpms_FOUND
# X11_XShm_INCLUDE_PATH, (in X11_Xext_LIB), X11_XShm_FOUND
# X11_Xshape_INCLUDE_PATH, (in X11_Xext_LIB), X11_Xshape_FOUND
# X11_xf86misc_INCLUDE_PATH, X11_Xxf86misc_LIB, X11_xf86misc_FOUND
# X11_xf86vmode_INCLUDE_PATH, X11_Xxf86vm_LIB X11_xf86vmode_FOUND
# X11_Xfixes_INCLUDE_PATH, X11_Xfixes_LIB, X11_Xfixes_FOUND
# X11_Xft_INCLUDE_PATH, X11_Xft_LIB, X11_Xft_FOUND
# X11_Xi_INCLUDE_PATH, X11_Xi_LIB, X11_Xi_FOUND
# X11_Xinerama_INCLUDE_PATH, X11_Xinerama_LIB, X11_Xinerama_FOUND
# X11_Xinput_INCLUDE_PATH, X11_Xinput_LIB, X11_Xinput_FOUND
# X11_Xkb_INCLUDE_PATH, X11_Xkb_FOUND
# X11_Xkblib_INCLUDE_PATH, X11_Xkb_FOUND
# X11_Xkbfile_INCLUDE_PATH, X11_Xkbfile_LIB, X11_Xkbfile_FOUND
# X11_Xmu_INCLUDE_PATH, X11_Xmu_LIB, X11_Xmu_FOUND
# X11_Xpm_INCLUDE_PATH, X11_Xpm_LIB, X11_Xpm_FOUND
# X11_XTest_INCLUDE_PATH, X11_XTest_LIB, X11_XTest_FOUND
# X11_Xrandr_INCLUDE_PATH, X11_Xrandr_LIB, X11_Xrandr_FOUND
# X11_Xrender_INCLUDE_PATH, X11_Xrender_LIB, X11_Xrender_FOUND
# X11_Xscreensaver_INCLUDE_PATH, X11_Xscreensaver_LIB, X11_Xscreensaver_FOUND
# X11_Xt_INCLUDE_PATH, X11_Xt_LIB, X11_Xt_FOUND
# X11_Xutil_INCLUDE_PATH, X11_Xutil_FOUND
# X11_Xv_INCLUDE_PATH, X11_Xv_LIB, X11_Xv_FOUND
# X11_XSync_INCLUDE_PATH, (in X11_Xext_LIB), X11_XSync_FOUND
#=============================================================================
# Copyright 2001-2009 Kitware, Inc.
#
# Distributed under the OSI-approved BSD License (the "License");
# see accompanying file Copyright.txt for details.
#
# This software is distributed WITHOUT ANY WARRANTY; without even the
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# See the License for more information.
#=============================================================================
# (To distribute this file outside of CMake, substitute the full
# License text for the above reference.)
if (UNIX)
set(X11_FOUND 0)
# X11 is never a framework and some header files may be
# found in tcl on the mac
set(CMAKE_FIND_FRAMEWORK_SAVE ${CMAKE_FIND_FRAMEWORK})
set(CMAKE_FIND_FRAMEWORK NEVER)
set(X11_INC_SEARCH_PATH
@_includedir@
/usr/pkg/xorg/include
/usr/X11R6/include
/usr/X11R7/include
/usr/include/X11
/usr/openwin/include
/usr/openwin/share/include
/opt/graphics/OpenGL/include
)
set(X11_LIB_SEARCH_PATH
@_libdir@
@_libdir@/tigervnc
/usr/pkg/xorg/lib
/usr/X11R6/lib
/usr/X11R7/lib
/usr/openwin/lib
)
find_path(X11_X11_INCLUDE_PATH X11/X.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xlib_INCLUDE_PATH X11/Xlib.h ${X11_INC_SEARCH_PATH})
# Look for includes; keep the list sorted by name of the cmake *_INCLUDE_PATH
# variable (which doesn't need to match the include file name).
# Solaris lacks XKBrules.h, so we should skip kxkbd there.
find_path(X11_ICE_INCLUDE_PATH X11/ICE/ICE.h ${X11_INC_SEARCH_PATH})
find_path(X11_SM_INCLUDE_PATH X11/SM/SM.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xaccessrules_INCLUDE_PATH X11/extensions/XKBrules.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xaccessstr_INCLUDE_PATH X11/extensions/XKBstr.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xau_INCLUDE_PATH X11/Xauth.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xcomposite_INCLUDE_PATH X11/extensions/Xcomposite.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xcursor_INCLUDE_PATH X11/Xcursor/Xcursor.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xdamage_INCLUDE_PATH X11/extensions/Xdamage.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xdmcp_INCLUDE_PATH X11/Xdmcp.h ${X11_INC_SEARCH_PATH})
find_path(X11_dpms_INCLUDE_PATH X11/extensions/dpms.h ${X11_INC_SEARCH_PATH})
find_path(X11_xf86misc_INCLUDE_PATH X11/extensions/xf86misc.h ${X11_INC_SEARCH_PATH})
find_path(X11_xf86vmode_INCLUDE_PATH X11/extensions/xf86vmode.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xfixes_INCLUDE_PATH X11/extensions/Xfixes.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xft_INCLUDE_PATH X11/Xft/Xft.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xi_INCLUDE_PATH X11/extensions/XInput.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xinerama_INCLUDE_PATH X11/extensions/Xinerama.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xinput_INCLUDE_PATH X11/extensions/XInput.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xkb_INCLUDE_PATH X11/extensions/XKB.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xkblib_INCLUDE_PATH X11/XKBlib.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xkbfile_INCLUDE_PATH X11/extensions/XKBfile.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xmu_INCLUDE_PATH X11/Xmu/Xmu.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xpm_INCLUDE_PATH X11/xpm.h ${X11_INC_SEARCH_PATH})
find_path(X11_XTest_INCLUDE_PATH X11/extensions/XTest.h ${X11_INC_SEARCH_PATH})
find_path(X11_XShm_INCLUDE_PATH X11/extensions/XShm.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xrandr_INCLUDE_PATH X11/extensions/Xrandr.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xrender_INCLUDE_PATH X11/extensions/Xrender.h ${X11_INC_SEARCH_PATH})
find_path(X11_XRes_INCLUDE_PATH X11/extensions/XRes.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xscreensaver_INCLUDE_PATH X11/extensions/scrnsaver.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xshape_INCLUDE_PATH X11/extensions/shape.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xutil_INCLUDE_PATH X11/Xutil.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xt_INCLUDE_PATH X11/Intrinsic.h ${X11_INC_SEARCH_PATH})
find_path(X11_Xv_INCLUDE_PATH X11/extensions/Xvlib.h ${X11_INC_SEARCH_PATH})
find_path(X11_XSync_INCLUDE_PATH X11/extensions/sync.h ${X11_INC_SEARCH_PATH})
find_path(X11_xcb_INCLUDE_PATH X11/xcb.h ${X11_INC_SEARCH_PATH})
find_library(X11_X11_LIB X11 ${X11_LIB_SEARCH_PATH})
# Find additional X libraries. Keep list sorted by library name.
find_library(X11_ICE_LIB ICE ${X11_LIB_SEARCH_PATH})
find_library(X11_SM_LIB SM ${X11_LIB_SEARCH_PATH})
find_library(X11_Xau_LIB Xau ${X11_LIB_SEARCH_PATH})
find_library(X11_Xcomposite_LIB Xcomposite ${X11_LIB_SEARCH_PATH})
find_library(X11_Xcursor_LIB Xcursor ${X11_LIB_SEARCH_PATH})
find_library(X11_Xdamage_LIB Xdamage ${X11_LIB_SEARCH_PATH})
find_library(X11_Xdmcp_LIB Xdmcp ${X11_LIB_SEARCH_PATH})
find_library(X11_Xext_LIB Xext ${X11_LIB_SEARCH_PATH})
find_library(X11_Xfixes_LIB Xfixes ${X11_LIB_SEARCH_PATH})
find_library(X11_Xft_LIB Xft ${X11_LIB_SEARCH_PATH})
find_library(X11_Xi_LIB Xi ${X11_LIB_SEARCH_PATH})
find_library(X11_Xinerama_LIB Xinerama ${X11_LIB_SEARCH_PATH})
find_library(X11_Xinput_LIB Xi ${X11_LIB_SEARCH_PATH})
find_library(X11_Xkbfile_LIB xkbfile ${X11_LIB_SEARCH_PATH})
find_library(X11_Xmu_LIB Xmu ${X11_LIB_SEARCH_PATH})
find_library(X11_Xpm_LIB Xpm ${X11_LIB_SEARCH_PATH})
find_library(X11_Xrandr_LIB Xrandr ${X11_LIB_SEARCH_PATH})
find_library(X11_Xrender_LIB Xrender ${X11_LIB_SEARCH_PATH})
find_library(X11_XRes_LIB XRes ${X11_LIB_SEARCH_PATH})
find_library(X11_Xscreensaver_LIB Xss ${X11_LIB_SEARCH_PATH})
find_library(X11_Xt_LIB Xt ${X11_LIB_SEARCH_PATH})
find_library(X11_XTest_LIB Xtst ${X11_LIB_SEARCH_PATH})
find_library(X11_Xv_LIB Xv ${X11_LIB_SEARCH_PATH})
find_library(X11_Xxf86misc_LIB Xxf86misc ${X11_LIB_SEARCH_PATH})
find_library(X11_Xxf86vm_LIB Xxf86vm ${X11_LIB_SEARCH_PATH})
find_library(X11_xcb_LIB xcb ${X11_LIB_SEARCH_PATH})
set(X11_LIBRARY_DIR "")
if(X11_X11_LIB)
get_filename_component(X11_LIBRARY_DIR ${X11_X11_LIB} PATH)
endif()
set(X11_INCLUDE_DIR) # start with empty list
if(X11_X11_INCLUDE_PATH)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_X11_INCLUDE_PATH})
endif()
if(X11_Xlib_INCLUDE_PATH)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xlib_INCLUDE_PATH})
endif()
if(X11_Xutil_INCLUDE_PATH)
set(X11_Xutil_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xutil_INCLUDE_PATH})
endif()
if(X11_Xshape_INCLUDE_PATH)
set(X11_Xshape_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xshape_INCLUDE_PATH})
endif()
set(X11_LIBRARIES) # start with empty list
if(X11_X11_LIB)
set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_X11_LIB} ${X11_xcb_LIB})
endif()
if(X11_Xext_LIB)
set(X11_Xext_FOUND TRUE)
set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xext_LIB})
endif()
if(X11_Xt_LIB AND X11_Xt_INCLUDE_PATH)
set(X11_Xt_FOUND TRUE)
endif()
if(X11_Xft_LIB AND X11_Xft_INCLUDE_PATH)
set(X11_Xft_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xft_INCLUDE_PATH})
endif()
if(X11_Xv_LIB AND X11_Xv_INCLUDE_PATH)
set(X11_Xv_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xv_INCLUDE_PATH})
endif()
if (X11_Xau_LIB AND X11_Xau_INCLUDE_PATH)
set(X11_Xau_FOUND TRUE)
set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xau_LIB})
endif ()
if (X11_Xdmcp_INCLUDE_PATH AND X11_Xdmcp_LIB)
set(X11_Xdmcp_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xdmcp_INCLUDE_PATH})
set(X11_LIBRARIES ${X11_LIBRARIES} ${X11_Xdmcp_LIB})
endif ()
if (X11_Xaccessrules_INCLUDE_PATH AND X11_Xaccessstr_INCLUDE_PATH)
set(X11_Xaccess_FOUND TRUE)
set(X11_Xaccess_INCLUDE_PATH ${X11_Xaccessstr_INCLUDE_PATH})
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xaccess_INCLUDE_PATH})
endif ()
if (X11_Xpm_INCLUDE_PATH AND X11_Xpm_LIB)
set(X11_Xpm_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xpm_INCLUDE_PATH})
endif ()
if (X11_Xcomposite_INCLUDE_PATH AND X11_Xcomposite_LIB)
set(X11_Xcomposite_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xcomposite_INCLUDE_PATH})
endif ()
if (X11_Xdamage_INCLUDE_PATH AND X11_Xdamage_LIB)
set(X11_Xdamage_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xdamage_INCLUDE_PATH})
endif ()
if (X11_XShm_INCLUDE_PATH)
set(X11_XShm_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_XShm_INCLUDE_PATH})
endif ()
if (X11_XTest_INCLUDE_PATH AND X11_XTest_LIB)
set(X11_XTest_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_XTest_INCLUDE_PATH})
endif ()
if (X11_Xi_INCLUDE_PATH AND X11_Xi_LIB)
set(X11_Xi_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xi_INCLUDE_PATH})
endif ()
if (X11_Xinerama_INCLUDE_PATH AND X11_Xinerama_LIB)
set(X11_Xinerama_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xinerama_INCLUDE_PATH})
endif ()
if (X11_Xfixes_INCLUDE_PATH AND X11_Xfixes_LIB)
set(X11_Xfixes_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xfixes_INCLUDE_PATH})
endif ()
if (X11_Xrender_INCLUDE_PATH AND X11_Xrender_LIB)
set(X11_Xrender_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xrender_INCLUDE_PATH})
endif ()
if (X11_XRes_INCLUDE_PATH AND X11_XRes_LIB)
set(X11_XRes_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_XRes_INCLUDE_PATH})
endif ()
if (X11_Xrandr_INCLUDE_PATH AND X11_Xrandr_LIB)
set(X11_Xrandr_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xrandr_INCLUDE_PATH})
endif ()
if (X11_xf86misc_INCLUDE_PATH AND X11_Xxf86misc_LIB)
set(X11_xf86misc_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_xf86misc_INCLUDE_PATH})
endif ()
if (X11_xf86vmode_INCLUDE_PATH AND X11_Xxf86vm_LIB)
set(X11_xf86vmode_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_xf86vmode_INCLUDE_PATH})
endif ()
if (X11_Xcursor_INCLUDE_PATH AND X11_Xcursor_LIB)
set(X11_Xcursor_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xcursor_INCLUDE_PATH})
endif ()
if (X11_Xscreensaver_INCLUDE_PATH AND X11_Xscreensaver_LIB)
set(X11_Xscreensaver_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xscreensaver_INCLUDE_PATH})
endif ()
if (X11_dpms_INCLUDE_PATH)
set(X11_dpms_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_dpms_INCLUDE_PATH})
endif ()
if (X11_Xkb_INCLUDE_PATH AND X11_Xkblib_INCLUDE_PATH AND X11_Xlib_INCLUDE_PATH)
set(X11_Xkb_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xkb_INCLUDE_PATH} )
endif ()
if (X11_Xkbfile_INCLUDE_PATH AND X11_Xkbfile_LIB AND X11_Xlib_INCLUDE_PATH)
set(X11_Xkbfile_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xkbfile_INCLUDE_PATH} )
endif ()
if (X11_Xmu_INCLUDE_PATH AND X11_Xmu_LIB)
set(X11_Xmu_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xmu_INCLUDE_PATH})
endif ()
if (X11_Xinput_INCLUDE_PATH AND X11_Xinput_LIB)
set(X11_Xinput_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_Xinput_INCLUDE_PATH})
endif ()
if (X11_XSync_INCLUDE_PATH)
set(X11_XSync_FOUND TRUE)
set(X11_INCLUDE_DIR ${X11_INCLUDE_DIR} ${X11_XSync_INCLUDE_PATH})
endif ()
if(X11_ICE_LIB AND X11_ICE_INCLUDE_PATH)
set(X11_ICE_FOUND TRUE)
endif()
if(X11_SM_LIB AND X11_SM_INCLUDE_PATH)
set(X11_SM_FOUND TRUE)
endif()
if(X11_xcb_LIB AND X11_xcb_INCLUDE_PATH)
set(X11_xcb_FOUND TRUE)
endif()
# Most of the X11 headers will be in the same directories, avoid
# creating a huge list of duplicates.
if (X11_INCLUDE_DIR)
list(REMOVE_DUPLICATES X11_INCLUDE_DIR)
endif ()
# Deprecated variable for backwards compatibility with CMake 1.4
if (X11_X11_INCLUDE_PATH AND X11_LIBRARIES)
set(X11_FOUND 1)
endif ()
if(X11_FOUND)
include(/usr/share/cmake28/Modules/CheckFunctionExists.cmake)
include(/usr/share/cmake28/Modules/CheckLibraryExists.cmake)
# Translated from an autoconf-generated configure script.
# See libs.m4 in autoconf's m4 directory.
if($ENV{ISC} MATCHES "^yes$")
set(X11_X_EXTRA_LIBS -lnsl_s -linet)
else()
set(X11_X_EXTRA_LIBS "-Wl,-Bdynamic -ldl")
# See if XOpenDisplay in X11 works by itself.
CHECK_LIBRARY_EXISTS("${X11_LIBRARIES}" "XOpenDisplay" "${X11_LIBRARY_DIR}" X11_LIB_X11_SOLO)
if(NOT X11_LIB_X11_SOLO)
# Find library needed for dnet_ntoa.
CHECK_LIBRARY_EXISTS("dnet" "dnet_ntoa" "" X11_LIB_DNET_HAS_DNET_NTOA)
if (X11_LIB_DNET_HAS_DNET_NTOA)
set (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -ldnet)
else ()
CHECK_LIBRARY_EXISTS("dnet_stub" "dnet_ntoa" "" X11_LIB_DNET_STUB_HAS_DNET_NTOA)
if (X11_LIB_DNET_STUB_HAS_DNET_NTOA)
set (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -ldnet_stub)
endif ()
endif ()
endif()
# Find library needed for gethostbyname.
CHECK_FUNCTION_EXISTS("gethostbyname" CMAKE_HAVE_GETHOSTBYNAME)
if(NOT CMAKE_HAVE_GETHOSTBYNAME)
CHECK_LIBRARY_EXISTS("nsl" "gethostbyname" "" CMAKE_LIB_NSL_HAS_GETHOSTBYNAME)
if (CMAKE_LIB_NSL_HAS_GETHOSTBYNAME)
set (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lnsl)
else ()
CHECK_LIBRARY_EXISTS("bsd" "gethostbyname" "" CMAKE_LIB_BSD_HAS_GETHOSTBYNAME)
if (CMAKE_LIB_BSD_HAS_GETHOSTBYNAME)
set (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lbsd)
endif ()
endif ()
endif()
# Find library needed for connect.
CHECK_FUNCTION_EXISTS("connect" CMAKE_HAVE_CONNECT)
if(NOT CMAKE_HAVE_CONNECT)
CHECK_LIBRARY_EXISTS("socket" "connect" "" CMAKE_LIB_SOCKET_HAS_CONNECT)
if (CMAKE_LIB_SOCKET_HAS_CONNECT)
set (X11_X_EXTRA_LIBS -lsocket ${X11_X_EXTRA_LIBS})
endif ()
endif()
# Find library needed for remove.
CHECK_FUNCTION_EXISTS("remove" CMAKE_HAVE_REMOVE)
if(NOT CMAKE_HAVE_REMOVE)
CHECK_LIBRARY_EXISTS("posix" "remove" "" CMAKE_LIB_POSIX_HAS_REMOVE)
if (CMAKE_LIB_POSIX_HAS_REMOVE)
set (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lposix)
endif ()
endif()
# Find library needed for shmat.
CHECK_FUNCTION_EXISTS("shmat" CMAKE_HAVE_SHMAT)
if(NOT CMAKE_HAVE_SHMAT)
CHECK_LIBRARY_EXISTS("ipc" "shmat" "" CMAKE_LIB_IPS_HAS_SHMAT)
if (CMAKE_LIB_IPS_HAS_SHMAT)
set (X11_X_EXTRA_LIBS ${X11_X_EXTRA_LIBS} -lipc)
endif ()
endif()
endif()
if (X11_ICE_FOUND)
CHECK_LIBRARY_EXISTS("ICE" "IceConnectionNumber" "${X11_LIBRARY_DIR}"
CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER)
if(CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER)
set (X11_X_PRE_LIBS ${X11_ICE_LIB})
if(X11_SM_LIB)
set (X11_X_PRE_LIBS ${X11_SM_LIB} ${X11_X_PRE_LIBS})
endif()
endif()
endif ()
# Build the final list of libraries.
set(X11_LIBRARIES ${X11_X_PRE_LIBS} ${X11_LIBRARIES} ${X11_X_EXTRA_LIBS})
include(/usr/share/cmake28/Modules/FindPackageMessage.cmake)
FIND_PACKAGE_MESSAGE(X11 "Found X11: ${X11_X11_LIB}"
"[${X11_X11_LIB}][${X11_INCLUDE_DIR}]")
else ()
if (X11_FIND_REQUIRED)
message(FATAL_ERROR "Could not find X11")
endif ()
endif ()
mark_as_advanced(
X11_X11_INCLUDE_PATH
X11_X11_LIB
X11_Xext_LIB
X11_Xau_LIB
X11_Xau_INCLUDE_PATH
X11_Xlib_INCLUDE_PATH
X11_Xutil_INCLUDE_PATH
X11_Xcomposite_INCLUDE_PATH
X11_Xcomposite_LIB
X11_Xaccess_INCLUDE_PATH
X11_Xfixes_LIB
X11_Xfixes_INCLUDE_PATH
X11_Xrandr_LIB
X11_Xrandr_INCLUDE_PATH
X11_Xdamage_LIB
X11_Xdamage_INCLUDE_PATH
X11_Xrender_LIB
X11_Xrender_INCLUDE_PATH
X11_XRes_LIB
X11_XRes_INCLUDE_PATH
X11_Xxf86misc_LIB
X11_xf86misc_INCLUDE_PATH
X11_Xxf86vm_LIB
X11_xf86vmode_INCLUDE_PATH
X11_Xi_LIB
X11_Xi_INCLUDE_PATH
X11_Xinerama_LIB
X11_Xinerama_INCLUDE_PATH
X11_XTest_LIB
X11_XTest_INCLUDE_PATH
X11_Xcursor_LIB
X11_Xcursor_INCLUDE_PATH
X11_dpms_INCLUDE_PATH
X11_Xt_LIB
X11_Xt_INCLUDE_PATH
X11_Xdmcp_LIB
X11_LIBRARIES
X11_Xaccessrules_INCLUDE_PATH
X11_Xaccessstr_INCLUDE_PATH
X11_Xdmcp_INCLUDE_PATH
X11_Xkb_INCLUDE_PATH
X11_Xkblib_INCLUDE_PATH
X11_Xkbfile_INCLUDE_PATH
X11_Xkbfile_LIB
X11_Xmu_INCLUDE_PATH
X11_Xmu_LIB
X11_Xscreensaver_INCLUDE_PATH
X11_Xscreensaver_LIB
X11_Xpm_INCLUDE_PATH
X11_Xpm_LIB
X11_Xinput_LIB
X11_Xinput_INCLUDE_PATH
X11_Xft_LIB
X11_Xft_INCLUDE_PATH
X11_Xshape_INCLUDE_PATH
X11_Xv_LIB
X11_Xv_INCLUDE_PATH
X11_XShm_INCLUDE_PATH
X11_ICE_LIB
X11_ICE_INCLUDE_PATH
X11_SM_LIB
X11_SM_INCLUDE_PATH
X11_xcb_LIB
X11_xcb_INCLUDE_PATH
X11_XSync_INCLUDE_PATH
)
set(CMAKE_FIND_FRAMEWORK ${CMAKE_FIND_FRAMEWORK_SAVE})
endif ()
# X11_FIND_REQUIRED_<component> could be checked too

View file

@ -1,29 +0,0 @@
--- a/configure 2015-02-22 16:20:48.000000000 -0500
+++ b/configure 2015-02-22 16:21:52.000000000 -0500
@@ -6793,7 +6793,7 @@
# See if we find them without any special options.
# Don't add to $LIBS permanently.
ac_save_LIBS=$LIBS
- LIBS="-lX11 $LIBS"
+ LIBS="-lX11 -lfreetype -lexpat -lXext -lXrender -lxcb -lXdmcp -lXau -lz $LIBS"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <X11/Xlib.h>
@@ -6935,7 +6935,7 @@
# Martyn Johnson says this is needed for Ultrix, if the X
# libraries were built with DECnet support. And Karl Berry says
# the Alpha needs dnet_stub (dnet does not exist).
- ac_xsave_LIBS="$LIBS"; LIBS="$LIBS $X_LIBS -lX11"
+ ac_xsave_LIBS="$LIBS"; LIBS="$LIBS $X_LIBS -lfreetype -lexpat -lX11 -lXext -lXrender -lxcb -lXdmcp -lXau -lz"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -7359,7 +7359,7 @@
$as_echo "$as_me: WARNING: Ignoring libraries \"$X_PRE_LIBS\" requested by configure." >&2;}
fi
- LIBS="$LIBS -lX11 $X_EXTRA_LIBS"
+ LIBS="$LIBS -lfreetype -lexpat -lX11 -lXext -lXrender -lxcb -lXdmcp -lXau -lz $X_EXTRA_LIBS"
CFLAGS="$CFLAGS $X_CFLAGS"
CXXFLAGS="$CXXFLAGS $X_CFLAGS"
LDFLAGS="$X_LIBS $LDFLAGS"

View file

@ -1,11 +0,0 @@
--- freetype-2.1.10/include/freetype/config/ftoption.h.enable-ft2-bci 2005-10-12 13:50:40.000000000 -0400
+++ freetype-2.1.10/include/freetype/config/ftoption.h 2005-10-12 14:18:50.000000000 -0400
@@ -436,7 +436,7 @@
/* Do not #undef this macro here, since the build system might */
/* define it for certain configurations only. */
/* */
-/* #define TT_CONFIG_OPTION_BYTECODE_INTERPRETER */
+#define TT_CONFIG_OPTION_BYTECODE_INTERPRETER
/*************************************************************************/

View file

@ -1,20 +0,0 @@
--- freetype-2.2.1/modules.cfg.orig 2006-07-07 21:01:09.000000000 -0400
+++ freetype-2.2.1/modules.cfg 2006-07-07 21:01:54.000000000 -0400
@@ -110,7 +110,7 @@
AUX_MODULES += cache
# TrueType GX/AAT table validation. Needs ftgxval.c below.
-# AUX_MODULES += gxvalid
+AUX_MODULES += gxvalid
# Support for streams compressed with gzip (files with suffix .gz).
#
@@ -124,7 +124,7 @@
# OpenType table validation. Needs ftotval.c below.
#
-# AUX_MODULES += otvalid
+AUX_MODULES += otvalid
# Auxiliary PostScript driver component to share common code.
#

View file

@ -1,11 +0,0 @@
--- freetype-2.3.0/include/freetype/config/ftoption.h.spf 2007-01-18 14:27:34.000000000 -0500
+++ freetype-2.3.0/include/freetype/config/ftoption.h 2007-01-18 14:27:48.000000000 -0500
@@ -92,7 +92,7 @@
/* This is done to allow FreeType clients to run unmodified, forcing */
/* them to display normal gray-level anti-aliased glyphs. */
/* */
-/* #define FT_CONFIG_OPTION_SUBPIXEL_RENDERING */
+#define FT_CONFIG_OPTION_SUBPIXEL_RENDERING
/*************************************************************************/

View file

@ -1,101 +0,0 @@
--- freetype-2.3.11/src/cff/cffgload.c.CVE-2010-1797-2 2009-09-10 17:52:21.000000000 +0200
+++ freetype-2.3.11/src/cff/cffgload.c 2010-08-11 13:39:32.000000000 +0200
@@ -2358,8 +2358,11 @@
return CFF_Err_Unimplemented_Feature;
}
- decoder->top = args;
+ decoder->top = args;
+ if ( decoder->top - stack >= CFF_MAX_OPERANDS )
+ goto Stack_Overflow;
+
} /* general operator processing */
} /* while ip < limit */
@@ -2627,48 +2630,54 @@
/* now load the unscaled outline */
error = cff_get_glyph_data( face, glyph_index,
&charstring, &charstring_len );
- if ( !error )
- {
- error = cff_decoder_prepare( &decoder, size, glyph_index );
- if ( !error )
- {
- error = cff_decoder_parse_charstrings( &decoder,
- charstring,
- charstring_len );
+ if ( error )
+ goto Glyph_Build_Finished;
+
+ error = cff_decoder_prepare( &decoder, size, glyph_index );
+ if ( error )
+ goto Glyph_Build_Finished;
- cff_free_glyph_data( face, &charstring, charstring_len );
+ error = cff_decoder_parse_charstrings( &decoder,
+ charstring,
+ charstring_len );
+
+ cff_free_glyph_data( face, &charstring, charstring_len );
+
+ if ( error )
+ goto Glyph_Build_Finished;
#ifdef FT_CONFIG_OPTION_INCREMENTAL
- /* Control data and length may not be available for incremental */
- /* fonts. */
- if ( face->root.internal->incremental_interface )
- {
- glyph->root.control_data = 0;
- glyph->root.control_len = 0;
- }
- else
+ /* Control data and length may not be available for incremental */
+ /* fonts. */
+ if ( face->root.internal->incremental_interface )
+ {
+ glyph->root.control_data = 0;
+ glyph->root.control_len = 0;
+ }
+ else
#endif /* FT_CONFIG_OPTION_INCREMENTAL */
- /* We set control_data and control_len if charstrings is loaded. */
- /* See how charstring loads at cff_index_access_element() in */
- /* cffload.c. */
- {
- CFF_Index csindex = &cff->charstrings_index;
+ /* We set control_data and control_len if charstrings is loaded. */
+ /* See how charstring loads at cff_index_access_element() in */
+ /* cffload.c. */
+ {
+ CFF_Index csindex = &cff->charstrings_index;
- if ( csindex->offsets )
- {
- glyph->root.control_data = csindex->bytes +
- csindex->offsets[glyph_index] - 1;
- glyph->root.control_len = charstring_len;
- }
- }
+ if ( csindex->offsets )
+ {
+ glyph->root.control_data = csindex->bytes +
+ csindex->offsets[glyph_index] - 1;
+ glyph->root.control_len = charstring_len;
}
}
- /* save new glyph tables */
- cff_builder_done( &decoder.builder );
+ Glyph_Build_Finished:
+ /* save new glyph tables, if no error */
+ if ( !error )
+ cff_builder_done( &decoder.builder );
+ /* XXX: anything to do for broken glyph entry? */
}
#ifdef FT_CONFIG_OPTION_INCREMENTAL

View file

@ -1,35 +0,0 @@
--- freetype-2.3.11/src/pshinter/pshalgo.c 2009-07-03 15:28:24.000000000 +0200
+++ freetype-2.3.11/src/pshinter/pshalgo.c 2010-07-13 13:14:22.000000000 +0200
@@ -4,7 +4,8 @@
/* */
/* PostScript hinting algorithm (body). */
/* */
-/* Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 by */
+/* Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 */
+/* by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used */
@@ -1690,7 +1691,10 @@
/* process secondary hints to `selected' points */
if ( num_masks > 1 && glyph->num_points > 0 )
{
- first = mask->end_point;
+ /* the `endchar' op can reduce the number of points */
+ first = mask->end_point > glyph->num_points
+ ? glyph->num_points
+ : mask->end_point;
mask++;
for ( ; num_masks > 1; num_masks--, mask++ )
{
@@ -1698,7 +1702,9 @@
FT_Int count;
- next = mask->end_point;
+ next = mask->end_point > glyph->num_points
+ ? glyph->num_points
+ : mask->end_point;
count = next - first;
if ( count > 0 )
{

View file

@ -1,39 +0,0 @@
--- freetype-2.3.11/src/base/ftobjs.c 2009-09-02 08:42:41.000000000 +0200
+++ freetype-2.3.11/src/base/ftobjs.c 2010-07-12 16:39:13.000000000 +0200
@@ -1531,6 +1531,8 @@
len += rlen;
else
{
+ if ( pfb_lenpos + 3 > pfb_len + 2 )
+ goto Exit2;
pfb_data[pfb_lenpos ] = (FT_Byte)( len );
pfb_data[pfb_lenpos + 1] = (FT_Byte)( len >> 8 );
pfb_data[pfb_lenpos + 2] = (FT_Byte)( len >> 16 );
@@ -1539,6 +1541,8 @@
if ( ( flags >> 8 ) == 5 ) /* End of font mark */
break;
+ if ( pfb_pos + 6 > pfb_len + 2 )
+ goto Exit2;
pfb_data[pfb_pos++] = 0x80;
type = flags >> 8;
@@ -1553,12 +1557,18 @@
}
error = FT_Stream_Read( stream, (FT_Byte *)pfb_data + pfb_pos, rlen );
+ if ( error )
+ goto Exit2;
pfb_pos += rlen;
}
+ if ( pfb_pos + 2 > pfb_len + 2 )
+ goto Exit2;
pfb_data[pfb_pos++] = 0x80;
pfb_data[pfb_pos++] = 3;
+ if ( pfb_lenpos + 3 > pfb_len + 2 )
+ goto Exit2;
pfb_data[pfb_lenpos ] = (FT_Byte)( len );
pfb_data[pfb_lenpos + 1] = (FT_Byte)( len >> 8 );
pfb_data[pfb_lenpos + 2] = (FT_Byte)( len >> 16 );

View file

@ -1,31 +0,0 @@
--- freetype-2.3.11/src/smooth/ftgrays.c 2009-07-31 18:45:19.000000000 +0200
+++ freetype-2.3.11/src/smooth/ftgrays.c 2010-07-13 10:26:58.000000000 +0200
@@ -1189,7 +1189,7 @@
/* first of all, compute the scanline offset */
p = (unsigned char*)map->buffer - y * map->pitch;
if ( map->pitch >= 0 )
- p += ( map->rows - 1 ) * map->pitch;
+ p += (unsigned)( ( map->rows - 1 ) * map->pitch );
for ( ; count > 0; count--, spans++ )
{
--- freetype-2.3.11/src/smooth/ftsmooth.c 2009-07-31 18:45:19.000000000 +0200
+++ freetype-2.3.11/src/smooth/ftsmooth.c 2010-07-13 10:26:58.000000000 +0200
@@ -4,7 +4,7 @@
/* */
/* Anti-aliasing renderer interface (body). */
/* */
-/* Copyright 2000-2001, 2002, 2003, 2004, 2005, 2006, 2009 by */
+/* Copyright 2000-2001, 2002, 2003, 2004, 2005, 2006, 2009, 2010 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -200,7 +200,7 @@
/* Required check is ( pitch * height < FT_ULONG_MAX ), */
/* but we care realistic cases only. Always pitch <= width. */
- if ( width > 0xFFFFU || height > 0xFFFFU )
+ if ( width > 0x7FFFU || height > 0x7FFFU )
{
FT_ERROR(( "ft_smooth_render_generic: glyph too large: %d x %d\n",
width, height ));

View file

@ -1,23 +0,0 @@
--- freetype-2.3.11/src/base/ftobjs.c 2010-07-12 17:03:47.000000000 +0200
+++ freetype-2.3.11/src/base/ftobjs.c 2010-07-12 17:07:06.000000000 +0200
@@ -1526,7 +1526,19 @@
goto Exit;
if ( FT_READ_USHORT( flags ) )
goto Exit;
- rlen -= 2; /* the flags are part of the resource */
+ FT_TRACE3(( "POST fragment[%d]: offsets=0x%08x, rlen=0x%08x, flags=0x%04x\n",
+ i, offsets[i], rlen, flags ));
+
+ if ( ( flags >> 8 ) == 0 ) /* Comment, should not be loaded */
+ continue;
+
+ /* the flags are part of the resource, so rlen >= 2. */
+ /* but some fonts declare rlen = 0 for empty fragment */
+ if ( rlen > 2 )
+ rlen -= 2;
+ else
+ rlen = 0;
+
if ( ( flags >> 8 ) == type )
len += rlen;
else

View file

@ -1,13 +0,0 @@
--- freetype-2.3.11/src/truetype/ttinterp.c 2009-07-31 18:45:19.000000000 +0200
+++ freetype-2.3.11/src/truetype/ttinterp.c 2010-07-15 14:44:23.000000000 +0200
@@ -6466,8 +6466,8 @@
end_point = CUR.pts.contours[contour] - CUR.pts.first_point;
first_point = point;
- if ( CUR.pts.n_points <= end_point )
- end_point = CUR.pts.n_points;
+ if ( BOUNDS ( end_point, CUR.pts.n_points ) )
+ end_point = CUR.pts.n_points - 1;
while ( point <= end_point && ( CUR.pts.tags[point] & mask ) == 0 )
point++;

View file

@ -1,154 +0,0 @@
--- freetype-2.3.11/ft2demos-2.3.11/src/ftdiff.c 2009-04-30 18:07:48.000000000 +0200
+++ freetype-2.3.11/ft2demos-2.3.11/src/ftdiff.c 2010-07-22 18:18:06.000000000 +0200
@@ -1054,11 +1054,11 @@
state->message = state->message0;
if ( total > 1 )
- sprintf( state->message0, "%s %d/%d @ %5.1fpt",
+ sprintf( state->message0, "%.100s %d/%d @ %5.1fpt",
state->filename, idx + 1, total,
state->char_size );
else
- sprintf( state->message0, "%s @ %5.1fpt",
+ sprintf( state->message0, "%.100s @ %5.1fpt",
state->filename,
state->char_size );
}
--- freetype-2.3.11/ft2demos-2.3.11/src/ftgrid.c 2009-04-30 18:15:21.000000000 +0200
+++ freetype-2.3.11/ft2demos-2.3.11/src/ftgrid.c 2010-07-22 18:18:06.000000000 +0200
@@ -2,7 +2,7 @@
/* */
/* The FreeType project -- a free and portable quality TrueType renderer. */
/* */
-/* Copyright 1996-2000, 2003, 2004, 2005, 2006, 2007, 2009 by */
+/* Copyright 1996-2000, 2003, 2004, 2005, 2006, 2007, 2009, 2010 by */
/* D. Turner, R.Wilhelm, and W. Lemberg */
/* */
/* */
@@ -787,22 +787,22 @@ grid_status_draw_outline( GridStatus
switch ( error_code )
{
case FT_Err_Ok:
- sprintf( status.header_buffer, "%s %s (file `%s')",
+ sprintf( status.header_buffer, "%.50s %.50s (file `%.100s')",
face->family_name, face->style_name, basename );
break;
case FT_Err_Invalid_Pixel_Size:
- sprintf( status.header_buffer, "Invalid pixel size (file `%s')",
+ sprintf( status.header_buffer, "Invalid pixel size (file `%.100s')",
basename );
break;
case FT_Err_Invalid_PPem:
- sprintf( status.header_buffer, "Invalid ppem value (file `%s')",
+ sprintf( status.header_buffer, "Invalid ppem value (file `%.100s')",
basename );
break;
default:
- sprintf( status.header_buffer, "File `%s': error 0x%04x",
+ sprintf( status.header_buffer, "File `%.100s': error 0x%04x",
basename, (FT_UShort)error_code );
break;
}
--- freetype-2.3.11/ft2demos-2.3.11/src/ftmulti.c 2009-03-14 14:58:28.000000000 +0100
+++ freetype-2.3.11/ft2demos-2.3.11/src/ftmulti.c 2010-07-22 18:18:39.000000000 +0200
@@ -2,7 +2,7 @@
/* */
/* The FreeType project -- a free and portable quality TrueType renderer. */
/* */
-/* Copyright 1996-2000, 2003, 2004, 2005 by */
+/* Copyright 1996-2000, 2003, 2004, 2005, 2010 by */
/* D. Turner, R.Wilhelm, and W. Lemberg */
/* */
/* */
@@ -34,7 +34,7 @@
#define MAXPTSIZE 500 /* dtp */
- char Header[128];
+ char Header[256];
char* new_header = 0;
const unsigned char* Text = (unsigned char*)
@@ -795,7 +795,7 @@
Render_All( Num, ptsize );
}
- sprintf( Header, "%s %s (file %s)",
+ sprintf( Header, "%.50s %.50s (file %.100s)",
face->family_name,
face->style_name,
ft_basename( argv[file] ) );
@@ -830,7 +830,7 @@
}
else
{
- sprintf( Header, "%s: not an MM font file, or could not be opened",
+ sprintf( Header, "%.100s: not an MM font file, or could not be opened",
ft_basename( argv[file] ) );
}
--- freetype-2.3.11/ft2demos-2.3.11/src/ftstring.c 2009-03-14 14:58:28.000000000 +0100
+++ freetype-2.3.11/ft2demos-2.3.11/src/ftstring.c 2010-07-22 18:18:06.000000000 +0200
@@ -2,7 +2,7 @@
/* */
/* The FreeType project -- a free and portable quality TrueType renderer. */
/* */
-/* Copyright 1996-2002, 2003, 2004, 2005, 2006, 2007, 2009 by */
+/* Copyright 1996-2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010 by */
/* D. Turner, R.Wilhelm, and W. Lemberg */
/* */
/* */
@@ -413,19 +413,20 @@
switch ( error_code )
{
case FT_Err_Ok:
- sprintf( status.header_buffer, "%s %s (file `%s')", face->family_name,
+ sprintf( status.header_buffer,
+ "%.50s %.50s (file `%.100s')", face->family_name,
face->style_name, basename );
break;
case FT_Err_Invalid_Pixel_Size:
- sprintf( status.header_buffer, "Invalid pixel size (file `%s')",
+ sprintf( status.header_buffer, "Invalid pixel size (file `%.100s')",
basename );
break;
case FT_Err_Invalid_PPem:
- sprintf( status.header_buffer, "Invalid ppem value (file `%s')",
+ sprintf( status.header_buffer, "Invalid ppem value (file `%.100s')",
basename );
break;
default:
- sprintf( status.header_buffer, "File `%s': error 0x%04x", basename,
+ sprintf( status.header_buffer, "File `%.100s': error 0x%04x", basename,
(FT_UShort)error_code );
break;
}
--- freetype-2.3.11/ft2demos-2.3.11/src/ftview.c 2009-04-30 20:08:25.000000000 +0200
+++ freetype-2.3.11/ft2demos-2.3.11/src/ftview.c 2010-07-22 18:18:06.000000000 +0200
@@ -1086,19 +1086,19 @@
switch ( error_code )
{
case FT_Err_Ok:
- sprintf( status.header_buffer, "%s %s (file `%s')",
+ sprintf( status.header_buffer, "%.50s %.50s (file `%.100s')",
face->family_name, face->style_name, basename );
break;
case FT_Err_Invalid_Pixel_Size:
- sprintf( status.header_buffer, "Invalid pixel size (file `%s')",
+ sprintf( status.header_buffer, "Invalid pixel size (file `%.100s')",
basename );
break;
case FT_Err_Invalid_PPem:
- sprintf( status.header_buffer, "Invalid ppem value (file `%s')",
+ sprintf( status.header_buffer, "Invalid ppem value (file `%.100s')",
basename );
break;
default:
- sprintf( status.header_buffer, "File `%s': error 0x%04x",
+ sprintf( status.header_buffer, "File `%.100s': error 0x%04x",
basename, (FT_UShort)error_code );
break;
}

View file

@ -1,11 +0,0 @@
--- freetype-2.3.11/src/base/ftstream.c 2009-08-03 19:51:40.000000000 +0200
+++ freetype-2.3.11/src/base/ftstream.c 2010-09-30 13:46:08.000000000 +0200
@@ -275,7 +275,7 @@
{
/* check current and new position */
if ( stream->pos >= stream->size ||
- stream->pos + count > stream->size )
+ stream->size - stream->pos < count )
{
FT_ERROR(( "FT_Stream_EnterFrame:"
" invalid i/o; pos = 0x%lx, count = %lu, size = 0x%lx\n",

View file

@ -1,41 +0,0 @@
--- freetype-2.3.11/src/type42/t42parse.c 2009-07-03 15:28:24.000000000 +0200
+++ freetype-2.3.11/src/type42/t42parse.c 2010-09-23 12:15:56.000000000 +0200
@@ -4,7 +4,7 @@
/* */
/* Type 42 font parser (body). */
/* */
-/* Copyright 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 by */
+/* Copyright 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 by */
/* Roberto Alameda. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -575,6 +575,12 @@
}
string_size = T1_ToInt( parser );
+ if ( string_size < 0 )
+ {
+ FT_ERROR(( "t42_parse_sfnts: invalid string size\n" ));
+ error = T42_Err_Invalid_File_Format;
+ goto Fail;
+ }
T1_Skip_PS_Token( parser ); /* `RD' */
if ( parser->root.error )
@@ -582,13 +588,14 @@
string_buf = parser->root.cursor + 1; /* one space after `RD' */
- parser->root.cursor += string_size + 1;
- if ( parser->root.cursor >= limit )
+ if ( limit - parser->root.cursor < string_size )
{
FT_ERROR(( "t42_parse_sfnts: too many binary data\n" ));
error = T42_Err_Invalid_File_Format;
goto Fail;
}
+ else
+ parser->root.cursor += string_size + 1;
}
if ( !string_buf )

View file

@ -1,21 +0,0 @@
--- freetype-2.3.11/src/base/ftobjs.c 2010-09-30 13:58:50.000000000 +0200
+++ freetype-2.3.11/src/base/ftobjs.c 2010-09-30 13:59:31.000000000 +0200
@@ -1529,6 +1529,7 @@
FT_TRACE3(( "POST fragment[%d]: offsets=0x%08x, rlen=0x%08x, flags=0x%04x\n",
i, offsets[i], rlen, flags ));
+ /* postpone the check of rlen longer than buffer until FT_Stream_Read() */
if ( ( flags >> 8 ) == 0 ) /* Comment, should not be loaded */
continue;
@@ -1568,6 +1569,10 @@
pfb_data[pfb_pos++] = 0;
}
+ error = FT_Err_Cannot_Open_Resource;
+ if ( pfb_pos > pfb_len || pfb_pos + rlen > pfb_len )
+ goto Exit2;
+
error = FT_Stream_Read( stream, (FT_Byte *)pfb_data + pfb_pos, rlen );
if ( error )
goto Exit2;

View file

@ -1,37 +0,0 @@
--- freetype-2.3.11/src/base/ftstream.c 2010-09-30 14:12:38.000000000 +0200
+++ freetype-2.3.11/src/base/ftstream.c 2010-09-30 14:12:59.000000000 +0200
@@ -59,8 +59,17 @@
{
FT_Error error = FT_Err_Ok;
+ /* note that seeking to the first position after the file is valid */
+ if ( pos > stream->size )
+ {
+ FT_ERROR(( "FT_Stream_Seek:"
+ " invalid i/o; pos = 0x%lx, size = 0x%lx\n",
+ pos, stream->size ));
- if ( stream->read )
+ error = FT_Err_Invalid_Stream_Operation;
+ }
+
+ if ( !error && stream->read )
{
if ( stream->read( stream, pos, 0, 0 ) )
{
@@ -71,15 +80,6 @@
error = FT_Err_Invalid_Stream_Operation;
}
}
- /* note that seeking to the first position after the file is valid */
- else if ( pos > stream->size )
- {
- FT_ERROR(( "FT_Stream_Seek:"
- " invalid i/o; pos = 0x%lx, size = 0x%lx\n",
- pos, stream->size ));
-
- error = FT_Err_Invalid_Stream_Operation;
- }
if ( !error )
stream->pos = pos;

View file

@ -1,20 +0,0 @@
--- freetype-2.3.11/src/truetype/ttgxvar.c.orig 2009-07-31 18:45:19.000000000 +0200
+++ freetype-2.3.11/src/truetype/ttgxvar.c 2010-10-22 08:52:37.000000000 +0200
@@ -157,7 +157,7 @@
runcnt = runcnt & GX_PT_POINT_RUN_COUNT_MASK;
first = points[i++] = FT_GET_USHORT();
- if ( runcnt < 1 )
+ if ( runcnt < 1 || i + runcnt >= n )
goto Exit;
/* first point not included in runcount */
@@ -168,7 +168,7 @@
{
first = points[i++] = FT_GET_BYTE();
- if ( runcnt < 1 )
+ if ( runcnt < 1 || i + runcnt >= n )
goto Exit;
for ( j = 0; j < runcnt; ++j )

View file

@ -1,108 +0,0 @@
--- freetype-2.3.11/src/psaux/t1decode.c 2009-09-29 19:51:31.000000000 +0200
+++ freetype-2.3.11/src/psaux/t1decode.c 2011-07-20 14:39:24.000000000 +0200
@@ -4,7 +4,7 @@
/* */
/* PostScript Type 1 decoding routines (body). */
/* */
-/* Copyright 2000-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 by */
+/* Copyright 2000-2011 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -27,6 +27,8 @@
#include "psauxerr.h"
+/* ensure proper sign extension */
+#define Fix2Int( f ) ( (FT_Int)(FT_Short)( (f) >> 16 ) )
/*************************************************************************/
/* */
@@ -665,7 +667,7 @@
if ( large_int )
FT_TRACE4(( " %ld", value ));
else
- FT_TRACE4(( " %ld", (FT_Int32)( value >> 16 ) ));
+ FT_TRACE4(( " %ld", Fix2Int( value ) ));
#endif
*top++ = value;
@@ -687,8 +689,8 @@
top -= 2;
- subr_no = (FT_Int)( top[1] >> 16 );
- arg_cnt = (FT_Int)( top[0] >> 16 );
+ subr_no = Fix2Int( top[1] );
+ arg_cnt = Fix2Int( top[0] );
/***********************************************************/
/* */
@@ -861,7 +863,7 @@
if ( arg_cnt != 1 || blend == NULL )
goto Unexpected_OtherSubr;
- idx = (FT_Int)( top[0] >> 16 );
+ idx = Fix2Int( top[0] );
if ( idx < 0 ||
idx + blend->num_designs > decoder->len_buildchar )
@@ -929,7 +931,7 @@
if ( arg_cnt != 2 || blend == NULL )
goto Unexpected_OtherSubr;
- idx = (FT_Int)( top[1] >> 16 );
+ idx = Fix2Int( top[1] );
if ( idx < 0 || (FT_UInt) idx >= decoder->len_buildchar )
goto Unexpected_OtherSubr;
@@ -950,7 +952,7 @@
if ( arg_cnt != 1 || blend == NULL )
goto Unexpected_OtherSubr;
- idx = (FT_Int)( top[0] >> 16 );
+ idx = Fix2Int( top[0] );
if ( idx < 0 || (FT_UInt) idx >= decoder->len_buildchar )
goto Unexpected_OtherSubr;
@@ -1008,11 +1010,15 @@
break;
default:
- FT_ERROR(( "t1_decoder_parse_charstrings:"
- " unknown othersubr [%d %d], wish me luck\n",
- arg_cnt, subr_no ));
- unknown_othersubr_result_cnt = arg_cnt;
- break;
+ if ( arg_cnt >= 0 && subr_no >= 0 )
+ {
+ FT_ERROR(( "t1_decoder_parse_charstrings:"
+ " unknown othersubr [%d %d], wish me luck\n",
+ arg_cnt, subr_no ));
+ unknown_othersubr_result_cnt = arg_cnt;
+ break;
+ }
+ /* fall through */
Unexpected_OtherSubr:
FT_ERROR(( "t1_decoder_parse_charstrings:"
@@ -1138,8 +1144,8 @@
top[0],
top[1],
top[2],
- (FT_Int)( top[3] >> 16 ),
- (FT_Int)( top[4] >> 16 ) );
+ Fix2Int( top[3] ),
+ Fix2Int( top[4] ) );
case op_sbw:
FT_TRACE4(( " sbw" ));
@@ -1313,7 +1319,7 @@
FT_TRACE4(( " callsubr" ));
- idx = (FT_Int)( top[0] >> 16 );
+ idx = Fix2Int( top[0] );
if ( idx < 0 || idx >= (FT_Int)decoder->num_subrs )
{
FT_ERROR(( "t1_decoder_parse_charstrings:"

View file

@ -1,92 +0,0 @@
--- freetype-2.3.11/src/base/ftbitmap.c 2009-07-31 18:45:18.000000000 +0200
+++ freetype-2.3.11/src/base/ftbitmap.c 2011-10-19 12:25:26.000000000 +0200
@@ -4,7 +4,7 @@
/* */
/* FreeType utility functions for bitmaps (body). */
/* */
-/* Copyright 2004, 2005, 2006, 2007, 2008, 2009 by */
+/* Copyright 2004-2009, 2011 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -417,6 +417,10 @@
target->pitch = source->width + pad;
+ if ( target->pitch > 0 &&
+ target->rows > FT_ULONG_MAX / target->pitch )
+ return FT_Err_Invalid_Argument;
+
if ( target->rows * target->pitch > old_size &&
FT_QREALLOC( target->buffer,
old_size, target->rows * target->pitch ) )
--- freetype-2.3.11/src/psaux/t1decode.c 2011-10-19 12:25:26.000000000 +0200
+++ freetype-2.3.11/src/psaux/t1decode.c 2011-10-19 12:25:26.000000000 +0200
@@ -748,6 +748,13 @@
if ( arg_cnt != 0 )
goto Unexpected_OtherSubr;
+ if ( decoder->flex_state == 0 )
+ {
+ FT_ERROR(( "t1_decoder_parse_charstrings:"
+ " missing flex start\n" ));
+ goto Syntax_Error;
+ }
+
/* note that we should not add a point for index 0; */
/* this will move our current position to the flex */
/* point without adding any point to the outline */
--- freetype-2.3.11/src/raster/ftrend1.c 2009-07-03 15:28:24.000000000 +0200
+++ freetype-2.3.11/src/raster/ftrend1.c 2011-10-19 13:26:02.000000000 +0200
@@ -4,7 +4,7 @@
/* */
/* The FreeType glyph rasterizer interface (body). */
/* */
-/* Copyright 1996-2001, 2002, 2003, 2005, 2006 by */
+/* Copyright 1996-2003, 2005, 2006, 2011 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -25,6 +25,7 @@
#include "rasterrs.h"
+#define FT_USHORT_MAX USHRT_MAX
/* initialize renderer -- init its raster */
static FT_Error
@@ -168,6 +169,13 @@
width = (FT_UInt)( ( cbox.xMax - cbox.xMin ) >> 6 );
height = (FT_UInt)( ( cbox.yMax - cbox.yMin ) >> 6 );
+
+ if ( width > FT_USHORT_MAX || height > FT_USHORT_MAX )
+ {
+ error = Raster_Err_Invalid_Argument;
+ goto Exit;
+ }
+
bitmap = &slot->bitmap;
memory = render->root.memory;
--- freetype-2.3.11/src/truetype/ttgxvar.c 2011-10-19 12:25:26.000000000 +0200
+++ freetype-2.3.11/src/truetype/ttgxvar.c 2011-10-19 12:25:26.000000000 +0200
@@ -4,7 +4,7 @@
/* */
/* TrueType GX Font Variation loader */
/* */
-/* Copyright 2004, 2005, 2006, 2007, 2008, 2009 by */
+/* Copyright 2004-2011 by */
/* David Turner, Robert Wilhelm, Werner Lemberg, and George Williams. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -1473,6 +1473,9 @@
{
for ( j = 0; j < point_count; ++j )
{
+ if ( localpoints[j] >= n_points )
+ continue;
+
delta_xy[localpoints[j]].x += FT_MulFix( deltas_x[j], apply );
delta_xy[localpoints[j]].y += FT_MulFix( deltas_y[j], apply );
}

View file

@ -1,76 +0,0 @@
--- freetype-2.3.11/src/cid/cidload.c 2009-07-03 15:28:24.000000000 +0200
+++ freetype-2.3.11/src/cid/cidload.c 2011-11-15 12:58:41.000000000 +0100
@@ -4,7 +4,7 @@
/* */
/* CID-keyed Type1 font loader (body). */
/* */
-/* Copyright 1996-2001, 2002, 2003, 2004, 2005, 2006, 2009 by */
+/* Copyright 1996-2006, 2009, 2011 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -110,7 +110,7 @@
CID_FaceDict dict;
- if ( parser->num_dict < 0 )
+ if ( parser->num_dict < 0 || parser->num_dict >= cid->num_dicts )
{
FT_ERROR(( "cid_load_keyword: invalid use of `%s'\n",
keyword->ident ));
@@ -158,7 +158,7 @@
FT_Fixed temp_scale;
- if ( parser->num_dict >= 0 )
+ if ( parser->num_dict >= 0 && parser->num_dict < face->cid.num_dicts )
{
dict = face->cid.font_dicts + parser->num_dict;
matrix = &dict->font_matrix;
@@ -249,7 +249,7 @@
CID_FaceDict dict;
- if ( parser->num_dict >= 0 )
+ if ( parser->num_dict >= 0 && parser->num_dict < face->cid.num_dicts )
{
dict = face->cid.font_dicts + parser->num_dict;
@@ -413,12 +413,25 @@
FT_Byte* p;
+ /* Check for possible overflow. */
+ if ( num_subrs == FT_UINT_MAX )
+ {
+ error = CID_Err_Syntax_Error;
+ goto Fail;
+ }
+
/* reallocate offsets array if needed */
if ( num_subrs + 1 > max_offsets )
{
FT_UInt new_max = FT_PAD_CEIL( num_subrs + 1, 4 );
+ if ( new_max <= max_offsets )
+ {
+ error = CID_Err_Syntax_Error;
+ goto Fail;
+ }
+
if ( FT_RENEW_ARRAY( offsets, max_offsets, new_max ) )
goto Fail;
@@ -436,6 +449,11 @@
FT_FRAME_EXIT();
+ /* offsets must be ordered */
+ for ( count = 1; count <= num_subrs; count++ )
+ if ( offsets[count - 1] > offsets[count] )
+ goto Fail;
+
/* now, compute the size of subrs charstrings, */
/* allocate, and read them */
data_len = offsets[num_subrs] - offsets[0];

View file

@ -1,20 +0,0 @@
--- freetype-2.3.11/src/bdf/bdflib.c 2009-09-12 23:14:25.000000000 +0200
+++ freetype-2.3.11/src/bdf/bdflib.c 2012-03-28 10:19:23.000000000 +0200
@@ -1,6 +1,6 @@
/*
* Copyright 2000 Computing Research Labs, New Mexico State University
- * Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009
+ * Copyright 2001-2012
* Francesco Zappa Nardelli
*
* Permission is hereby granted, free of charge, to any person obtaining a
@@ -1235,7 +1235,8 @@
ep = line + linelen;
/* Trim the leading whitespace if it exists. */
- *sp++ = 0;
+ if ( *sp )
+ *sp++ = 0;
while ( *sp &&
( *sp == ' ' || *sp == '\t' ) )
sp++;

View file

@ -1,43 +0,0 @@
--- freetype-2.3.11/src/bdf/bdflib.c 2012-03-28 10:20:31.000000000 +0200
+++ freetype-2.3.11/src/bdf/bdflib.c 2012-03-28 10:22:28.000000000 +0200
@@ -1092,6 +1092,7 @@
#define ACMSG13 "Glyph %ld extra rows removed.\n"
#define ACMSG14 "Glyph %ld extra columns removed.\n"
#define ACMSG15 "Incorrect glyph count: %ld indicated but %ld found.\n"
+#define ACMSG16 "Glyph %ld missing columns padded with zero bits.\n"
/* Error messages. */
#define ERRMSG1 "[line %ld] Missing \"%s\" line.\n"
@@ -1695,18 +1696,31 @@
for ( i = 0; i < nibbles; i++ )
{
c = line[i];
+ if ( !c )
+ break;
*bp = (FT_Byte)( ( *bp << 4 ) + a2i[c] );
if ( i + 1 < nibbles && ( i & 1 ) )
*++bp = 0;
}
+ /* If any line has not enough columns, */
+ /* indicate they have been padded with zero bits. */
+ if ( i < nibbles &&
+ !( p->flags & _BDF_GLYPH_WIDTH_CHECK ) )
+ {
+ FT_TRACE2(( "_bdf_parse_glyphs: " ACMSG16, glyph->encoding ));
+ p->flags |= _BDF_GLYPH_WIDTH_CHECK;
+ font->modified = 1;
+ }
+
/* Remove possible garbage at the right. */
mask_index = ( glyph->bbx.width * p->font->bpp ) & 7;
if ( glyph->bbx.width )
*bp &= nibble_mask[mask_index];
/* If any line has extra columns, indicate they have been removed. */
- if ( ( line[nibbles] == '0' || a2i[(int)line[nibbles]] != 0 ) &&
+ if ( i == nibbles &&
+ ( line[nibbles] == '0' || a2i[(int)line[nibbles]] != 0 ) &&
!( p->flags & _BDF_GLYPH_WIDTH_CHECK ) )
{
FT_TRACE2(( "_bdf_parse_glyphs: " ACMSG14, glyph->encoding ));

View file

@ -1,21 +0,0 @@
--- freetype-2.3.11/src/pcf/pcfread.c 2009-10-10 19:32:28.000000000 +0200
+++ freetype-2.3.11/src/pcf/pcfread.c 2012-03-28 10:29:54.000000000 +0200
@@ -2,7 +2,7 @@
FreeType font driver for pcf fonts
- Copyright 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 by
+ Copyright 2000-2010, 2012 by
Francesco Zappa Nardelli
Permission is hereby granted, free of charge, to any person obtaining a copy
@@ -495,7 +495,8 @@ THE SOFTWARE.
goto Bail;
}
- if ( FT_NEW_ARRAY( strings, string_size ) )
+ /* allocate one more byte so that we have a final null byte */
+ if ( FT_NEW_ARRAY( strings, string_size + 1 ) )
goto Bail;
error = FT_Stream_Read( stream, (FT_Byte*)strings, string_size );

View file

@ -1,40 +0,0 @@
--- freetype-2.3.11/src/smooth/ftsmooth.c 2012-03-28 10:30:52.000000000 +0200
+++ freetype-2.3.11/src/smooth/ftsmooth.c 2012-03-28 10:33:13.000000000 +0200
@@ -4,7 +4,7 @@
/* */
/* Anti-aliasing renderer interface (body). */
/* */
-/* Copyright 2000-2001, 2002, 2003, 2004, 2005, 2006, 2009, 2010 by */
+/* Copyright 2000-2006, 2009-2012 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -105,7 +105,7 @@
FT_Error error;
FT_Outline* outline = NULL;
FT_BBox cbox;
- FT_UInt width, height, height_org, width_org, pitch;
+ FT_Pos width, height, height_org, width_org, pitch;
FT_Bitmap* bitmap;
FT_Memory memory;
FT_Int hmul = mode == FT_RENDER_MODE_LCD;
@@ -140,8 +140,8 @@
cbox.xMax = FT_PIX_CEIL( cbox.xMax );
cbox.yMax = FT_PIX_CEIL( cbox.yMax );
- width = (FT_UInt)( ( cbox.xMax - cbox.xMin ) >> 6 );
- height = (FT_UInt)( ( cbox.yMax - cbox.yMin ) >> 6 );
+ width = ( cbox.xMax - cbox.xMin ) >> 6;
+ height = ( cbox.yMax - cbox.yMin ) >> 6;
bitmap = &slot->bitmap;
memory = render->root.memory;
@@ -200,7 +200,7 @@
/* Required check is ( pitch * height < FT_ULONG_MAX ), */
/* but we care realistic cases only. Always pitch <= width. */
- if ( width > 0x7FFFU || height > 0x7FFFU )
+ if ( width > 0x7FFF || height > 0x7FFF )
{
FT_ERROR(( "ft_smooth_render_generic: glyph too large: %d x %d\n",
width, height ));

View file

@ -1,130 +0,0 @@
--- freetype-2.3.11/src/psaux/psobjs.c 2009-07-31 18:45:18.000000000 +0200
+++ freetype-2.3.11/src/psaux/psobjs.c 2012-04-03 13:14:05.000000000 +0200
@@ -4,7 +4,7 @@
/* */
/* Auxiliary functions for PostScript fonts (body). */
/* */
-/* Copyright 1996-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 by */
+/* Copyright 1996-2012 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -589,7 +589,7 @@
}
Exit:
- if ( cur == parser->cursor )
+ if ( cur < limit && cur == parser->cursor )
{
FT_ERROR(( "ps_parser_skip_PS_token:"
" current token is `%c' which is self-delimiting\n"
--- freetype-2.3.11/src/type1/t1load.c 2009-09-01 08:07:32.000000000 +0200
+++ freetype-2.3.11/src/type1/t1load.c 2012-04-03 13:14:30.000000000 +0200
@@ -71,6 +71,13 @@
#include "t1errors.h"
+#ifdef FT_CONFIG_OPTION_INCREMENTAL
+#define IS_INCREMENTAL ( face->root.internal->incremental_interface != 0 )
+#else
+#define IS_INCREMENTAL 0
+#endif
+
+
/*************************************************************************/
/* */
/* The macro FT_COMPONENT is used in trace mode. It is an implicit */
@@ -1027,7 +1034,8 @@
static int
read_binary_data( T1_Parser parser,
FT_Long* size,
- FT_Byte** base )
+ FT_Byte** base,
+ FT_Bool incremental )
{
FT_Byte* cur;
FT_Byte* limit = parser->root.limit;
@@ -1057,8 +1065,12 @@
return !parser->root.error;
}
- FT_ERROR(( "read_binary_data: invalid size field\n" ));
- parser->root.error = T1_Err_Invalid_File_Format;
+ if( !incremental )
+ {
+ FT_ERROR(( "read_binary_data: invalid size field\n" ));
+ parser->root.error = T1_Err_Invalid_File_Format;
+ }
+
return 0;
}
@@ -1379,15 +1391,17 @@
FT_Byte* base;
- /* If the next token isn't `dup' we are done. */
- if ( ft_strncmp( (char*)parser->root.cursor, "dup", 3 ) != 0 )
+ /* If we are out of data, or if the next token isn't `dup', */
+ /* we are done. */
+ if ( parser->root.cursor + 4 >= parser->root.limit ||
+ ft_strncmp( (char*)parser->root.cursor, "dup", 3 ) != 0 )
break;
T1_Skip_PS_Token( parser ); /* `dup' */
idx = T1_ToInt( parser );
- if ( !read_binary_data( parser, &size, &base ) )
+ if ( !read_binary_data( parser, &size, &base, IS_INCREMENTAL ) )
return;
/* The binary string is followed by one token, e.g. `NP' */
@@ -1399,7 +1413,8 @@
return;
T1_Skip_Spaces ( parser );
- if ( ft_strncmp( (char*)parser->root.cursor, "put", 3 ) == 0 )
+ if ( parser->root.cursor + 4 < parser->root.limit &&
+ ft_strncmp( (char*)parser->root.cursor, "put", 3 ) == 0 )
{
T1_Skip_PS_Token( parser ); /* skip `put' */
T1_Skip_Spaces ( parser );
@@ -1572,7 +1587,7 @@
cur++; /* skip `/' */
len = parser->root.cursor - cur;
- if ( !read_binary_data( parser, &size, &base ) )
+ if ( !read_binary_data( parser, &size, &base, IS_INCREMENTAL ) )
return;
/* for some non-standard fonts like `Optima' which provides */
@@ -1861,7 +1876,7 @@
parser->root.cursor = start_binary;
- if ( !read_binary_data( parser, &s, &b ) )
+ if ( !read_binary_data( parser, &s, &b, IS_INCREMENTAL ) )
return T1_Err_Invalid_File_Format;
have_integer = 0;
}
@@ -1874,7 +1889,7 @@
parser->root.cursor = start_binary;
- if ( !read_binary_data( parser, &s, &b ) )
+ if ( !read_binary_data( parser, &s, &b, IS_INCREMENTAL ) )
return T1_Err_Invalid_File_Format;
have_integer = 0;
}
@@ -2148,9 +2163,7 @@
type1->subrs_len = loader.subrs.lengths;
}
-#ifdef FT_CONFIG_OPTION_INCREMENTAL
- if ( !face->root.internal->incremental_interface )
-#endif
+ if ( !IS_INCREMENTAL )
if ( !loader.charstrings.init )
{
FT_ERROR(( "T1_Open_Face: no `/CharStrings' array in face\n" ));

View file

@ -1,26 +0,0 @@
--- freetype-2.3.11/src/type1/t1parse.c 2009-07-03 15:28:24.000000000 +0200
+++ freetype-2.3.11/src/type1/t1parse.c 2012-03-28 10:39:25.000000000 +0200
@@ -4,7 +4,7 @@
/* */
/* Type 1 parser (body). */
/* */
-/* Copyright 1996-2001, 2002, 2003, 2004, 2005, 2008, 2009 by */
+/* Copyright 1996-2005, 2008, 2009, 2012 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -464,6 +464,14 @@
/* we now decrypt the encoded binary private dictionary */
psaux->t1_decrypt( parser->private_dict, parser->private_len, 55665U );
+ if ( parser->private_len < 4 )
+ {
+ FT_ERROR(( "T1_Get_Private_Dict:"
+ " invalid private dictionary section\n" ));
+ error = T1_Err_Invalid_File_Format;
+ goto Fail;
+ }
+
/* replace the four random bytes at the beginning with whitespace */
parser->private_dict[0] = ' ';
parser->private_dict[1] = ' ';

View file

@ -1,49 +0,0 @@
--- freetype-2.3.11/src/bdf/bdflib.c 2012-03-28 10:40:25.000000000 +0200
+++ freetype-2.3.11/src/bdf/bdflib.c 2012-03-28 10:44:30.000000000 +0200
@@ -1736,12 +1736,7 @@
if ( ft_memcmp( line, "SWIDTH", 6 ) == 0 )
{
if ( !( p->flags & _BDF_ENCODING ) )
- {
- /* Missing ENCODING field. */
- FT_ERROR(( "_bdf_parse_glyphs: " ERRMSG1, lineno, "ENCODING" ));
- error = BDF_Err_Missing_Encoding_Field;
- goto Exit;
- }
+ goto Missing_Encoding;
error = _bdf_list_split( &p->list, (char *)" +", line, linelen );
if ( error )
@@ -1756,6 +1751,9 @@
/* Expect the DWIDTH (scalable width) field next. */
if ( ft_memcmp( line, "DWIDTH", 6 ) == 0 )
{
+ if ( !( p->flags & _BDF_ENCODING ) )
+ goto Missing_Encoding;
+
error = _bdf_list_split( &p->list, (char *)" +", line, linelen );
if ( error )
goto Exit;
@@ -1781,6 +1779,9 @@
/* Expect the BBX field next. */
if ( ft_memcmp( line, "BBX", 3 ) == 0 )
{
+ if ( !( p->flags & _BDF_ENCODING ) )
+ goto Missing_Encoding;
+
error = _bdf_list_split( &p->list, (char *)" +", line, linelen );
if ( error )
goto Exit;
@@ -1880,6 +1881,12 @@
}
error = BDF_Err_Invalid_File_Format;
+ goto Exit;
+
+ Missing_Encoding:
+ /* Missing ENCODING field. */
+ FT_ERROR(( "_bdf_parse_glyphs: " ERRMSG1, lineno, "ENCODING" ));
+ error = BDF_Err_Missing_Encoding_Field;
Exit:
return error;

View file

@ -1,11 +0,0 @@
--- freetype-2.3.11/src/bdf/bdflib.c 2012-03-28 10:46:09.000000000 +0200
+++ freetype-2.3.11/src/bdf/bdflib.c 2012-03-28 10:45:50.000000000 +0200
@@ -424,7 +424,7 @@
if ( num_items > list->size )
{
unsigned long oldsize = list->size; /* same as _bdf_list_t.size */
- unsigned long newsize = oldsize + ( oldsize >> 1 ) + 4;
+ unsigned long newsize = oldsize + ( oldsize >> 1 ) + 5;
unsigned long bigsize = (unsigned long)( FT_INT_MAX / sizeof ( char* ) );
FT_Memory memory = list->memory;

View file

@ -1,33 +0,0 @@
--- freetype-2.3.11/src/bdf/bdflib.c 2012-03-28 10:49:56.000000000 +0200
+++ freetype-2.3.11/src/bdf/bdflib.c 2012-03-28 10:51:40.000000000 +0200
@@ -785,7 +785,7 @@
};
-#define isdigok( m, d ) (m[(d) >> 3] & ( 1 << ( (d) & 7 ) ) )
+#define isdigok( m, d ) (m[(unsigned char)(d) >> 3] & ( 1 << ( (d) & 7 ) ) )
/* Routine to convert an ASCII string into an unsigned long integer. */
@@ -1696,7 +1696,7 @@
for ( i = 0; i < nibbles; i++ )
{
c = line[i];
- if ( !c )
+ if ( !isdigok( hdigits, c ) )
break;
*bp = (FT_Byte)( ( *bp << 4 ) + a2i[c] );
if ( i + 1 < nibbles && ( i & 1 ) )
@@ -1719,9 +1719,9 @@
*bp &= nibble_mask[mask_index];
/* If any line has extra columns, indicate they have been removed. */
- if ( i == nibbles &&
- ( line[nibbles] == '0' || a2i[(int)line[nibbles]] != 0 ) &&
- !( p->flags & _BDF_GLYPH_WIDTH_CHECK ) )
+ if ( i == nibbles &&
+ isdigok( hdigits, line[nibbles] ) &&
+ !( p->flags & _BDF_GLYPH_WIDTH_CHECK ) )
{
FT_TRACE2(( "_bdf_parse_glyphs: " ACMSG14, glyph->encoding ));
p->flags |= _BDF_GLYPH_WIDTH_CHECK;

View file

@ -1,53 +0,0 @@
--- freetype-2.3.11/src/psaux/psconv.c 2009-07-31 18:45:18.000000000 +0200
+++ freetype-2.3.11/src/psaux/psconv.c 2012-03-28 10:55:16.000000000 +0200
@@ -4,7 +4,7 @@
/* */
/* Some convenience conversions (body). */
/* */
-/* Copyright 2006, 2008, 2009 by */
+/* Copyright 2006, 2008, 2009, 2012 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -79,7 +79,7 @@
FT_Bool sign = 0;
- if ( p == limit || base < 2 || base > 36 )
+ if ( p >= limit || base < 2 || base > 36 )
return 0;
if ( *p == '-' || *p == '+' )
@@ -150,7 +150,7 @@
FT_Bool sign = 0;
- if ( p == limit )
+ if ( p >= limit )
return 0;
if ( *p == '-' || *p == '+' )
@@ -346,7 +346,11 @@
#if 1
- p = *cursor;
+ p = *cursor;
+
+ if ( p >= limit )
+ return 0;
+
if ( n > (FT_UInt)( limit - p ) )
n = (FT_UInt)( limit - p );
@@ -434,6 +438,10 @@
#if 1
p = *cursor;
+
+ if ( p >= limit )
+ return 0;
+
if ( n > (FT_UInt)(limit - p) )
n = (FT_UInt)(limit - p);

Some files were not shown because too many files have changed in this diff Show more