Accepting request 107750 from home:yecril71pl:branches:X11:XOrg
This is former Xvnc but rebuilt to use dynamic server link and containing untested patches. Handle with care. OBS-URL: https://build.opensuse.org/request/show/107750 OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/tigervnc?expand=0&rev=1
This commit is contained in:
commit
f264e6c6cd
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
## Default LFS
|
||||
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||
*.png filter=lfs diff=lfs merge=lfs -text
|
||||
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
.osc
|
3
_service:download_files:tigervnc-1.1.0.tar.gz
Normal file
3
_service:download_files:tigervnc-1.1.0.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:594b70825a2c24863afd7b8dd2a5bc1935807118c6726e1d98396dee44d060f4
|
||||
size 2742707
|
15
tigervnc-sf3492352.diff
Normal file
15
tigervnc-sf3492352.diff
Normal file
@ -0,0 +1,15 @@
|
||||
diff -aur o/doc/rfbtight.tex n/doc/rfbtight.tex
|
||||
--- o/doc/rfbtight.tex 2011-08-09 23:16:48.000000000 +0200
|
||||
+++ n/doc/rfbtight.tex 2012-02-23 19:45:07.473906253 +0100
|
||||
@@ -4,8 +4,9 @@
|
||||
\setlength{\parindent}{0pt}
|
||||
\setlength{\parskip}{1ex plus 0.5ex minus 0.2ex}
|
||||
|
||||
-\newcommand{\typestr}[1]{\textit{#1}}
|
||||
-\newcommand{\literal}[1]{\textit{\textbf{#1}}}
|
||||
+\newcommand\standout{\hspace{0pt plus4em}}
|
||||
+\newcommand{\typestr}[1]{\standout\hspace*{0pt}\textbf{#1}\standout}
|
||||
+\newcommand{\literal}[1]{\standout\hspace*{0pt}\textit{\textbf{#1}}\standout}
|
||||
|
||||
\begin{document}
|
||||
|
62
tigervnc-sf3492503.patch
Normal file
62
tigervnc-sf3492503.patch
Normal file
@ -0,0 +1,62 @@
|
||||
--- o/configure.ac 2011-08-09 23:16:48.000000000 +0200
|
||||
+++ n/configure.ac 2012-02-24 00:50:00.998676744 +0100
|
||||
@@ -1,8 +1,8 @@
|
||||
dnl Process this file with autoconf to produce a configure script.
|
||||
-AC_PREREQ([2.57])
|
||||
+AC_PREREQ([2.68])
|
||||
|
||||
dnl Modify also RCVERSION variable when modifying release
|
||||
-AC_INIT([tigervnc], [1.1.0], [http://www.tigervnc.org])
|
||||
+AC_INIT([tigervnc],[1.1.0],[http://www.tigervnc.org])
|
||||
RCVERSION="1,1,0,0"
|
||||
AC_SUBST([RCVERSION])
|
||||
|
||||
@@ -98,17 +98,17 @@
|
||||
SAVE_CPPFLAGS=${CPPFLAGS}
|
||||
CPPFLAGS="${CPPFLAGS} ${GNUTLS_CFLAGS}"
|
||||
AC_MSG_CHECKING([for GnuTLS library])
|
||||
- AC_LINK_IFELSE(AC_LANG_CALL([], gnutls_global_init),
|
||||
+ AC_LINK_IFELSE([AC_LANG_CALL([], gnutls_global_init)],
|
||||
[GNUTLS_LIBS=${GNUTLS_LDFLAGS}
|
||||
AC_DEFINE(HAVE_GNUTLS, 1, [Is gnutls present? ])
|
||||
AC_MSG_RESULT(yes)], AC_MSG_RESULT(no))
|
||||
AC_MSG_CHECKING([for gnutls_transport_set_global_errno() function])
|
||||
- AC_LINK_IFELSE(AC_LANG_CALL([], gnutls_transport_set_global_errno),
|
||||
+ AC_LINK_IFELSE([AC_LANG_CALL([], gnutls_transport_set_global_errno)],
|
||||
AC_MSG_RESULT(yes),
|
||||
[AC_DEFINE(HAVE_OLD_GNUTLS, 1, [Does gnutls lack the gnutls_transport_set_global_errno() function? ])
|
||||
AC_MSG_RESULT(no)])
|
||||
AC_MSG_CHECKING([for gnutls_x509_crt_print() function])
|
||||
- AC_LINK_IFELSE(AC_LANG_CALL([], gnutls_x509_crt_print),
|
||||
+ AC_LINK_IFELSE([AC_LANG_CALL([], gnutls_x509_crt_print)],
|
||||
[AC_DEFINE(HAVE_GNUTLS_X509_CRT_PRINT, 1, [Is the gnutls_x509_crt_print() function present? ])
|
||||
AC_MSG_RESULT(yes)],
|
||||
AC_MSG_RESULT(no))
|
||||
@@ -172,13 +172,10 @@
|
||||
dnl gethostbyname, inet_addr, htons etc. Check if it's necessary.
|
||||
dnl NOTE: Did not want to use AC_SEARCH_LIBS which would add
|
||||
dnl -lbsd to LIBS. We set INET_LIB instead.
|
||||
-AC_LANG_SAVE
|
||||
-AC_LANG_C
|
||||
AC_CHECK_FUNC(gethostbyname,INET_LIB_REQ=,INET_LIB_REQ=yes)
|
||||
if test "$INET_LIB_REQ" = yes; then
|
||||
AC_CHECK_LIB(bsd,gethostbyname,INET_LIB=-lbsd,INET_LIB=)
|
||||
fi
|
||||
-AC_LANG_RESTORE
|
||||
AC_SUBST(INET_LIB)
|
||||
|
||||
AC_CHECK_FUNC(setenv, AC_DEFINE([HAVE_SETENV], [1], [Is setenv() present?]))
|
||||
@@ -240,7 +237,7 @@
|
||||
AC_CONFIG_FILES([makemacpkg:release/makemacpkg.in])
|
||||
AC_CONFIG_FILES([maketarball:release/maketarball.in])
|
||||
|
||||
-AC_OUTPUT([
|
||||
+AC_CONFIG_FILES([
|
||||
Makefile
|
||||
common/Makefile
|
||||
common/os/Makefile
|
||||
@@ -262,3 +259,4 @@
|
||||
win/resdefs.h
|
||||
po/Makefile.in
|
||||
])
|
||||
+AC_OUTPUT
|
143
tigervnc-sf3493012.patch
Normal file
143
tigervnc-sf3493012.patch
Normal file
@ -0,0 +1,143 @@
|
||||
--- o/LICENCE.TXT 2011-08-09 23:16:48.000000000 +0200
|
||||
+++ n/LICENCE.TXT 2010-09-08 17:52:33.000000000 +0200
|
||||
@@ -1,12 +1,12 @@
|
||||
- GNU GENERAL PUBLIC LICENSE
|
||||
- Version 2, June 1991
|
||||
+ GNU GENERAL PUBLIC LICENSE
|
||||
+ Version 2, June 1991
|
||||
|
||||
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||
- 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
|
||||
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
- Preamble
|
||||
+ Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
@@ -15,7 +15,7 @@
|
||||
General Public License applies to most of the Free Software
|
||||
Foundation's software and to any other program whose authors commit to
|
||||
using it. (Some other Free Software Foundation software is covered by
|
||||
-the GNU Library General Public License instead.) You can apply it to
|
||||
+the GNU Lesser General Public License instead.) You can apply it to
|
||||
your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
@@ -55,8 +55,8 @@
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
-
|
||||
- GNU GENERAL PUBLIC LICENSE
|
||||
+
|
||||
+ GNU GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License applies to any program or other work which contains
|
||||
@@ -110,7 +110,7 @@
|
||||
License. (Exception: if the Program itself is interactive but
|
||||
does not normally print such an announcement, your work based on
|
||||
the Program is not required to print an announcement.)
|
||||
-
|
||||
+
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Program,
|
||||
and can be reasonably considered independent and separate works in
|
||||
@@ -168,7 +168,7 @@
|
||||
access to copy the source code from the same place counts as
|
||||
distribution of the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
-
|
||||
+
|
||||
4. You may not copy, modify, sublicense, or distribute the Program
|
||||
except as expressly provided under this License. Any attempt
|
||||
otherwise to copy, modify, sublicense or distribute the Program is
|
||||
@@ -225,7 +225,7 @@
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
-
|
||||
+
|
||||
8. If the distribution and/or use of the Program is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Program under this License
|
||||
@@ -255,7 +255,7 @@
|
||||
of preserving the free status of all derivatives of our free software and
|
||||
of promoting the sharing and reuse of software generally.
|
||||
|
||||
- NO WARRANTY
|
||||
+ NO WARRANTY
|
||||
|
||||
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
||||
@@ -277,9 +277,9 @@
|
||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
- END OF TERMS AND CONDITIONS
|
||||
-
|
||||
- Appendix: How to Apply These Terms to Your New Programs
|
||||
+ END OF TERMS AND CONDITIONS
|
||||
+
|
||||
+ How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
@@ -291,7 +291,7 @@
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
- Copyright (C) 19yy <name of author>
|
||||
+ Copyright (C) <year> <name of author>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
@@ -303,17 +303,16 @@
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
- You should have received a copy of the GNU General Public License
|
||||
- along with this program; if not, write to the Free Software
|
||||
- Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
|
||||
- USA.
|
||||
+ You should have received a copy of the GNU General Public License along
|
||||
+ with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program is interactive, make it output a short notice like this
|
||||
when it starts in an interactive mode:
|
||||
|
||||
- Gnomovision version 69, Copyright (C) 19yy name of author
|
||||
+ Gnomovision version 69, Copyright (C) year name of author
|
||||
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
@@ -336,5 +335,5 @@
|
||||
This General Public License does not permit incorporating your program into
|
||||
proprietary programs. If your program is a subroutine library, you may
|
||||
consider it more useful to permit linking proprietary applications with the
|
||||
-library. If this is what you want to do, use the GNU Library General
|
||||
+library. If this is what you want to do, use the GNU Lesser General
|
||||
Public License instead of this License.
|
||||
--- o/unix/vncserver 2011-08-09 23:16:37.000000000 +0200
|
||||
+++ n/unix/vncserver 2012-03-01 22:35:29.692130619 +0100
|
||||
@@ -16,10 +16,9 @@
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
-# You should have received a copy of the GNU General Public License
|
||||
-# along with this software; if not, write to the Free Software
|
||||
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
|
||||
-# USA.
|
||||
+# You should have received a copy of the GNU General Public License along
|
||||
+# with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
#
|
||||
|
||||
#
|
242
tigervnc-sf3495623.patch
Normal file
242
tigervnc-sf3495623.patch
Normal file
@ -0,0 +1,242 @@
|
||||
Tylko w o/common/network: Makefile
|
||||
diff -aur o/common/network/Socket.h n/common/network/Socket.h
|
||||
--- o/common/network/Socket.h 2011-08-09 23:16:40.000000000 +0200
|
||||
+++ n/common/network/Socket.h 2012-03-01 15:36:05.274711896 +0100
|
||||
@@ -22,9 +22,9 @@
|
||||
#define __NETWORK_SOCKET_H__
|
||||
|
||||
#include <limits.h>
|
||||
-#include <rdr/FdInStream.h>
|
||||
-#include <rdr/FdOutStream.h>
|
||||
-#include <rdr/Exception.h>
|
||||
+#include "../rdr/FdInStream.h"
|
||||
+#include "../rdr/FdOutStream.h"
|
||||
+#include "../rdr/Exception.h"
|
||||
|
||||
namespace network {
|
||||
|
||||
diff -aur o/common/network/TcpSocket.cxx n/common/network/TcpSocket.cxx
|
||||
--- o/common/network/TcpSocket.cxx 2011-08-09 23:16:40.000000000 +0200
|
||||
+++ n/common/network/TcpSocket.cxx 2012-03-01 15:47:39.684622379 +0100
|
||||
@@ -20,6 +20,9 @@
|
||||
#include <config.h>
|
||||
#endif
|
||||
|
||||
+#include <memory>
|
||||
+#include <limits>
|
||||
+
|
||||
#ifdef WIN32
|
||||
//#include <io.h>
|
||||
#include <winsock2.h>
|
||||
@@ -41,10 +44,10 @@
|
||||
#endif
|
||||
|
||||
#include <stdlib.h>
|
||||
-#include <network/TcpSocket.h>
|
||||
-#include <os/net.h>
|
||||
-#include <rfb/util.h>
|
||||
-#include <rfb/LogWriter.h>
|
||||
+#include "../network/TcpSocket.h"
|
||||
+#include "../os/net.h"
|
||||
+#include "../rfb/util.h"
|
||||
+#include "../rfb/LogWriter.h"
|
||||
|
||||
#ifndef INADDR_NONE
|
||||
#define INADDR_NONE ((unsigned long)-1)
|
||||
@@ -53,6 +56,71 @@
|
||||
#define INADDR_LOOPBACK ((unsigned long)0x7F000001)
|
||||
#endif
|
||||
|
||||
+template < class P_T >
|
||||
+class temporary_buffer:protected::std::pair < P_T *,::std::ptrdiff_t >
|
||||
+{
|
||||
+public:typedef P_T
|
||||
+ item_type;
|
||||
+public:typedef class
|
||||
+ temporary_buffer <
|
||||
+ item_type >
|
||||
+ itself, &
|
||||
+ ref;
|
||||
+ typedef itself const &
|
||||
+ cref;
|
||||
+public:typedef
|
||||
+ class::std::pair <
|
||||
+ item_type *,::std::ptrdiff_t >
|
||||
+ inherited;
|
||||
+public:typedef typename
|
||||
+ inherited::second_type
|
||||
+ size_type;
|
||||
+public:
|
||||
+temporary_buffer (::std::ptrdiff_t const &p_s = 01)
|
||||
+:inherited (::std::get_temporary_buffer < item_type > (p_s))
|
||||
+ {
|
||||
+ }
|
||||
+private:temporary_buffer (cref);
|
||||
+ ref
|
||||
+ operator = (cref);
|
||||
+public:~temporary_buffer ()
|
||||
+ {
|
||||
+ ::std::return_temporary_buffer (inherited::first);
|
||||
+ }
|
||||
+public:size_type const &
|
||||
+ size () const
|
||||
+ {
|
||||
+ return
|
||||
+ inherited::second;
|
||||
+ }
|
||||
+public:item_type * const &
|
||||
+ buffer () const
|
||||
+ {
|
||||
+ return
|
||||
+ inherited::first;
|
||||
+ }
|
||||
+public:ref
|
||||
+ clear ()
|
||||
+ {
|
||||
+ inherited::second = size_type ();
|
||||
+ return *this;
|
||||
+ }
|
||||
+protected:inherited & base ()
|
||||
+ {
|
||||
+ return *this;
|
||||
+ }
|
||||
+protected:inherited const &
|
||||
+ base () const
|
||||
+ {
|
||||
+ return *
|
||||
+ this;
|
||||
+ }
|
||||
+public:void
|
||||
+ swap (ref that)
|
||||
+ {
|
||||
+ ::std::swap (base (), that.base ());
|
||||
+}};
|
||||
+
|
||||
using namespace network;
|
||||
using namespace rdr;
|
||||
|
||||
@@ -433,8 +501,36 @@
|
||||
}
|
||||
|
||||
void TcpListener::getMyAddresses(std::list<char*>* result) {
|
||||
- const hostent* addrs = gethostbyname(0);
|
||||
- if (addrs == 0)
|
||||
+ hostent a_he, *addrs; typedef ::temporary_buffer < char > tbuf;
|
||||
+ tbuf a_hb ((BUFSIZ));
|
||||
+ {
|
||||
+ tbuf a_hn ((BUFSIZ)); int a_herr;
|
||||
+ typedef::std::numeric_limits < tbuf::size_type > tlp;
|
||||
+ /* TASK: get host name */
|
||||
+ while (a_hn.size ())
|
||||
+ if (::gethostname (a_hn.buffer (), a_hn.size ()))
|
||||
+ if (a_hn.size () <= tlp::max () >> 01)
|
||||
+ if (ENAMETOOLONG == errno)
|
||||
+ {
|
||||
+ tbuf a_h1 (a_hn.size () << 01);
|
||||
+ if (a_h1.size () > a_hn.size ()) a_hn.swap (a_h1);
|
||||
+ else throw rdr::SystemException("gethostname", errorNumber);
|
||||
+ } else throw rdr::SystemException("gethostname", errorNumber);
|
||||
+ else throw rdr::SystemException("gethostname", errorNumber);
|
||||
+ else break;
|
||||
+ /* TASK: get host address */
|
||||
+ while
|
||||
+ (::gethostbyname_r (a_hn. buffer (), &a_he, a_hb. buffer (), a_hb. size (), &addrs, &a_herr))
|
||||
+ if (ERANGE == errno)
|
||||
+ if (a_hb .size () < tlp ::max () >> 01)
|
||||
+ {
|
||||
+ tbuf a_h1 (a_hb. size () << 01);
|
||||
+ if (a_h1. size () > a_hb .size ()) a_hb. swap (a_h1);
|
||||
+ else break;
|
||||
+ } else break;
|
||||
+ else throw rdr::SystemException("gethostbyname", errorNumber);
|
||||
+ }
|
||||
+ if (addrs != &a_he)
|
||||
throw rdr::SystemException("gethostbyname", errorNumber);
|
||||
if (addrs->h_addrtype != AF_INET)
|
||||
throw rdr::Exception("getMyAddresses: bad family");
|
||||
diff -aur o/common/network/TcpSocket.h n/common/network/TcpSocket.h
|
||||
--- o/common/network/TcpSocket.h 2011-08-09 23:16:40.000000000 +0200
|
||||
+++ n/common/network/TcpSocket.h 2012-03-01 15:35:15.950711772 +0100
|
||||
@@ -28,7 +28,7 @@
|
||||
#ifndef __NETWORK_TCP_SOCKET_H__
|
||||
#define __NETWORK_TCP_SOCKET_H__
|
||||
|
||||
-#include <network/Socket.h>
|
||||
+#include "../network/Socket.h"
|
||||
|
||||
#include <list>
|
||||
|
||||
diff -aur o/common/rdr/FdInStream.h n/common/rdr/FdInStream.h
|
||||
--- o/common/rdr/FdInStream.h 2011-08-09 23:16:40.000000000 +0200
|
||||
+++ n/common/rdr/FdInStream.h 2012-03-01 15:37:56.128712175 +0100
|
||||
@@ -23,7 +23,7 @@
|
||||
#ifndef __RDR_FDINSTREAM_H__
|
||||
#define __RDR_FDINSTREAM_H__
|
||||
|
||||
-#include <rdr/InStream.h>
|
||||
+#include "../rdr/InStream.h"
|
||||
|
||||
namespace rdr {
|
||||
|
||||
diff -aur o/common/rdr/FdOutStream.h n/common/rdr/FdOutStream.h
|
||||
--- o/common/rdr/FdOutStream.h 2011-08-09 23:16:40.000000000 +0200
|
||||
+++ n/common/rdr/FdOutStream.h 2012-03-01 15:39:48.662712452 +0100
|
||||
@@ -23,7 +23,7 @@
|
||||
#ifndef __RDR_FDOUTSTREAM_H__
|
||||
#define __RDR_FDOUTSTREAM_H__
|
||||
|
||||
-#include <rdr/OutStream.h>
|
||||
+#include "../rdr/OutStream.h"
|
||||
|
||||
namespace rdr {
|
||||
|
||||
diff -aur o/common/rdr/InStream.h n/common/rdr/InStream.h
|
||||
--- o/common/rdr/InStream.h 2011-08-09 23:16:40.000000000 +0200
|
||||
+++ n/common/rdr/InStream.h 2012-03-01 15:38:39.737712279 +0100
|
||||
@@ -24,7 +24,7 @@
|
||||
#ifndef __RDR_INSTREAM_H__
|
||||
#define __RDR_INSTREAM_H__
|
||||
|
||||
-#include <rdr/types.h>
|
||||
+#include "../rdr/types.h"
|
||||
#include <string.h> // for memcpy
|
||||
|
||||
namespace rdr {
|
||||
diff -aur o/common/rdr/OutStream.h n/common/rdr/OutStream.h
|
||||
--- o/common/rdr/OutStream.h 2011-08-09 23:16:40.000000000 +0200
|
||||
+++ n/common/rdr/OutStream.h 2012-03-01 15:40:25.833712551 +0100
|
||||
@@ -24,7 +24,7 @@
|
||||
#ifndef __RDR_OUTSTREAM_H__
|
||||
#define __RDR_OUTSTREAM_H__
|
||||
|
||||
-#include <rdr/types.h>
|
||||
+#include "../rdr/types.h"
|
||||
#include <string.h> // for memcpy
|
||||
|
||||
namespace rdr {
|
||||
diff -aur o/common/rfb/Configuration.h n/common/rfb/Configuration.h
|
||||
--- o/common/rfb/Configuration.h 2011-08-09 23:16:44.000000000 +0200
|
||||
+++ n/common/rfb/Configuration.h 2012-03-01 15:43:33.825713012 +0100
|
||||
@@ -43,7 +43,7 @@
|
||||
#ifndef __RFB_CONFIGURATION_H__
|
||||
#define __RFB_CONFIGURATION_H__
|
||||
|
||||
-#include <rfb/util.h>
|
||||
+#include "../rfb/util.h"
|
||||
|
||||
namespace rfb {
|
||||
class VoidParameter;
|
||||
diff -aur o/common/rfb/LogWriter.h n/common/rfb/LogWriter.h
|
||||
--- o/common/rfb/LogWriter.h 2011-08-09 23:16:44.000000000 +0200
|
||||
+++ n/common/rfb/LogWriter.h 2012-03-01 15:42:44.843712885 +0100
|
||||
@@ -22,8 +22,8 @@
|
||||
#define __RFB_LOG_WRITER_H__
|
||||
|
||||
#include <stdarg.h>
|
||||
-#include <rfb/Logger.h>
|
||||
-#include <rfb/Configuration.h>
|
||||
+#include "../rfb/Logger.h"
|
||||
+#include "../rfb/Configuration.h"
|
||||
|
||||
// Each log writer instance has a unique textual name,
|
||||
// and is attached to a particular Log instance and
|
64
tigervnc.changes
Normal file
64
tigervnc.changes
Normal file
@ -0,0 +1,64 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 24 20:47:33 UTC 2012 - giecrilj@stegny.2a.pl
|
||||
|
||||
- bump to 1.1 (current stable)
|
||||
- add documentation (bnc#748504)
|
||||
- build dynamic server
|
||||
- eliminate gethostbyname, patch submitted upstream
|
||||
- incidental clean-up
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Feb 9 15:07:34 UTC 2011 - sndirsch@novell.com
|
||||
|
||||
- added jpeg-devel to BuildRequires
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Feb 9 14:00:16 UTC 2011 - sndirsch@novell.com
|
||||
|
||||
- use system jpeg for building
|
||||
- fixed xkb path
|
||||
- added more reasonable options for Xvfb building
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Feb 9 08:57:06 UTC 2011 - sndirsch@novell.com
|
||||
|
||||
- added Reinhard's xdmcp fix (bnc #625593)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Feb 9 08:50:10 UTC 2011 - sndirsch@novell.com
|
||||
|
||||
- TigerVNC build
|
||||
* fix fontpatch
|
||||
* cleanup
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Feb 9 04:41:24 UTC 2011 - sndirsch@novell.com
|
||||
|
||||
- build Xvnc of TigerVNC project when %tigervnc is set; make this
|
||||
the default for now
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Feb 8 17:00:32 UTC 2011 - sndirsch@novell.com
|
||||
|
||||
- latest version of Perl script
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Feb 3 17:41:02 UTC 2011 - sndirsch@novell.com
|
||||
|
||||
- renamed package from xorg-x11-Xvnc-ng to xorg-x11-Xvnc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Feb 3 17:26:04 UTC 2011 - sndirsch@novell.com
|
||||
|
||||
- rewritten wrapper script in Perl
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jan 26 10:07:10 UTC 2011 - sndirsch@novell.com
|
||||
|
||||
- added services file for SuSEfirewall2
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jan 26 00:43:01 UTC 2011 - sndirsch@novell.com
|
||||
|
||||
- created package
|
||||
|
202
tigervnc.spec
Normal file
202
tigervnc.spec
Normal file
@ -0,0 +1,202 @@
|
||||
#
|
||||
# spec file for package xorg-x11-Xvnc
|
||||
#
|
||||
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
# norootforbuild
|
||||
|
||||
%define tigervnc 1
|
||||
%bcond_with Xstatic
|
||||
%bcond_without dox
|
||||
|
||||
Name: tigervnc
|
||||
Version: 1.1.0
|
||||
Release: 0
|
||||
License: GPL-2.0 and MIT
|
||||
%if %tigervnc
|
||||
# BuildRequires: xorg-x11-server-sdk Mesa-devel libopenssl-devel gcc-c++ libjpeg-devel
|
||||
BuildRequires: nasm gcc-c++ pkgconfig(xproto) pkgconfig(x11) pkgconfig(xext) pkgconfig(xtst)
|
||||
BuildRequires: autoconf automake libtool binutils-gold
|
||||
BuildRequires: xorg-x11-libICE-devel xorg-x11-libSM-devel pkgconfig(libtasn1) pkgconfig(gnutls) libgcrypt-devel libgpg-error-devel pam-devel
|
||||
%if %{with Xstatic}
|
||||
BuildRequires: pkgconfig(fontutil)
|
||||
BuildRequires: pkg-config xmlto pkgconfig(pixman-1) >= 0.15.20 pkgconfig(glproto) pkgconfig(gl) pkgconfig(dri) pkgconfig(openssl)
|
||||
BuildRequires: pkgconfig(fixesproto) >= 4.1 pkgconfig(damageproto) >= 1.1 pkgconfig(xcmiscproto) >= 1.2.0 pkgconfig(xtrans) >= 1.2.2
|
||||
BuildRequires: pkgconfig(bigreqsproto) >= 1.1.0 pkgconfig(xproto) >= 7.0.17 pkgconfig(randrproto) >= 1.2.99.3 pkgconfig(renderproto) >= 0.11
|
||||
BuildRequires: pkgconfig(xextproto) >= 7.0.99.3 pkgconfig(inputproto) >= 1.9.99.902 pkgconfig(kbproto) >= 1.0.3 pkgconfig(fontsproto)
|
||||
BuildRequires: pkgconfig(videoproto) pkgconfig(compositeproto) >= 0.4 pkgconfig(recordproto) >= 1.13.99.1 pkgconfig(scrnsaverproto) >= 1.1
|
||||
BuildRequires: pkgconfig(resourceproto) pkgconfig(xineramaproto) pkgconfig(xkbfile) pkgconfig(xau) pkgconfig(xdmcp) pkgconfig(xfont) >= 1.4.2
|
||||
BuildRequires: pkgconfig(pciaccess) >= 0.8.0
|
||||
%endif %{nil Xstatic}
|
||||
%if %{with dox}
|
||||
BuildRequires: texlive-latex
|
||||
%endif %{nil with dox}
|
||||
URL: http://sourceforge.net/apps/mediawiki/tigervnc/
|
||||
%else
|
||||
Requires: x11vnc
|
||||
%endif
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Group: System/X11/Servers/XF86_4
|
||||
%if %tigervnc
|
||||
Summary: A high-performance, platform-neutral implementation of VNC
|
||||
# _____________*_________*_________*_________*_________*_________*_________*
|
||||
%else
|
||||
Summary: Xvnc wrapper script which makes use of Xvfb/x11vnc
|
||||
%endif
|
||||
%if %tigervnc
|
||||
Source1: http://netcologne.dl.sourceforge.net/project/%{name}/%{name}/%{version}/%{name}-%{version}.tar.gz
|
||||
%if %{with Xstatic}
|
||||
Source2: xorg-server-1.9.3.tar.bz2
|
||||
Patch: xorg-server-xdmcp.patch
|
||||
Patch3: xorg-bug38185.patch
|
||||
%endif
|
||||
Patch1: tigervnc-sf3492352.diff
|
||||
Patch2: tigervnc-sf3492503.patch
|
||||
Patch4: tigervnc-sf3493012.patch
|
||||
Patch5: tigervnc-sf3495623.patch
|
||||
%else
|
||||
Source0: Xvnc.pl
|
||||
%endif
|
||||
|
||||
%description
|
||||
%if %tigervnc
|
||||
TigerVNC is a high-performance, platform-neutral implementation of VNC (Virtual Network Computing),
|
||||
a client/server application that allows users to launch and interact with graphical applications on remote machines.
|
||||
TigerVNC provides the levels of performance necessary to run 3D and video applications;
|
||||
it attempts to maintain a common look and feel and re-use components, where possible, across the various platforms that it supports.
|
||||
TigerVNC also provides extensions for advanced authentication methods and TLS encryption.
|
||||
%else
|
||||
This is a wrapper script, which makes use of Xvfb/x11vnc to implement
|
||||
a Xvnc server.
|
||||
%endif
|
||||
|
||||
%prep
|
||||
%if %tigervnc
|
||||
%setup -T -n %{name}-%{version}/unix/xserver -b1 \
|
||||
%if %{with Xstatic}
|
||||
-b2
|
||||
cp -r -t. ../../../xorg-server-*/*
|
||||
patch -p1 < ../xserver19.patch
|
||||
%patch -p2
|
||||
%patch3 -p1
|
||||
%endif
|
||||
|
||||
cd ../..
|
||||
%patch1 -p1
|
||||
%patch2 -p1
|
||||
%patch4 -p1
|
||||
%patch5 -p1
|
||||
cd doc
|
||||
mv ft-protocol-problems.txt ft-protocol-problems.eml
|
||||
%endif
|
||||
|
||||
%define xcflags -include $PWD/deprec.h -fuse-linker-plugin
|
||||
%build
|
||||
%if %tigervnc
|
||||
pushd ../..
|
||||
%if %{with dox}
|
||||
cd doc
|
||||
for s in rfbtight
|
||||
do while [[ ! -r "$s.toc" ]] || grep "^No file .*$s\\.toc" "$s.log" && latex "$s.tex"
|
||||
do :
|
||||
done
|
||||
done
|
||||
cd ..
|
||||
%endif %{nil with dox}
|
||||
autoreconf -fiv -Werror
|
||||
echo>deprec.h '#ifdef __cplusplus
|
||||
#define CDECL118 "C"
|
||||
#else
|
||||
#define CDECL118
|
||||
#endif
|
||||
extern CDECL118 struct hostent *gethostbyname (const char *__name) __attribute__ ((deprecated));
|
||||
#undef __DATE__
|
||||
#undef __TIME__
|
||||
#define __DATE__ "(rpm -qif $0)"
|
||||
#define __TIME__ __DATE__
|
||||
|
||||
'
|
||||
%configure --disable-static --with-system-jpeg --with-system-zlib \
|
||||
CFLAGS="$CFLAGS %{xcflags}" CXXFLAGS="$CXXFLAGS %{xcflags}"
|
||||
make %{?jobs:-j %jobs}
|
||||
%if %{with Xstatic}
|
||||
popd
|
||||
: ./autogen.sh
|
||||
autoreconf -fiv -Werror
|
||||
%configure --disable-xvfb --disable-xnest --disable-xorg --disable-dmx \
|
||||
--disable-xwin --disable-xephyr --disable-kdrive --with-pic \
|
||||
--disable-static --disable-xinerama \
|
||||
--disable-composite \
|
||||
--with-xkb-path="/usr/share/X11/xkb" \
|
||||
--with-xkb-output="/var/lib/xkb/compiled" \
|
||||
--disable-dri2 \
|
||||
--enable-glx \
|
||||
--disable-config-dbus \
|
||||
--disable-config-hal \
|
||||
--disable-config-udev \
|
||||
--without-dtrace \
|
||||
--with-fontrootdir=/usr/share/fonts
|
||||
%make_jobs
|
||||
%endif %{nil with Xstatic}
|
||||
%endif %{nil tigervnc}
|
||||
|
||||
%install
|
||||
%if %tigervnc
|
||||
cd ../..
|
||||
%makeinstall
|
||||
%else %{nil tigervnc}
|
||||
mkdir -p $RPM_BUILD_ROOT/usr/bin
|
||||
install -m 755 $RPM_SOURCE_DIR/Xvnc.pl $RPM_BUILD_ROOT/usr/bin/Xvnc
|
||||
%endif %{nil tigervnc}
|
||||
mkdir -p $RPM_BUILD_ROOT/etc/sysconfig/SuSEfirewall2.d/services
|
||||
cat > $RPM_BUILD_ROOT/etc/sysconfig/SuSEfirewall2.d/services/%{name} << EOF
|
||||
## Name: VNC Server
|
||||
## Description: Opens ports for VNC Server
|
||||
TCP="5801 5901"
|
||||
EOF
|
||||
%find_lang '%{name}'
|
||||
|
||||
%clean
|
||||
rm -rf "$RPM_BUILD_ROOT"
|
||||
|
||||
%files -f ../../%{name}.lang
|
||||
%defattr(-,root,root)
|
||||
%config /etc/sysconfig/SuSEfirewall2.d/services/%{name}
|
||||
%{_bindir}/*
|
||||
%if %tigervnc
|
||||
%doc %{_mandir}/man1/*
|
||||
%if %{with Xstatic}
|
||||
%exclude %{_mandir}/man1/Xserver.1*
|
||||
%exclude /usr/%{_lib}/xorg/protocol.txt
|
||||
%exclude /usr/%{_lib}/xorg/modules/extensions/libvnc.la
|
||||
%exclude /usr/%{_lib}/xorg/modules/extensions/libvnc.so
|
||||
%exclude /var/lib/xkb/compiled/README.compiled
|
||||
%endif %{nil Xstatic}
|
||||
%exclude /usr/lib/debug/*
|
||||
%exclude /usr/lib/debug/.*
|
||||
%exclude /usr/src/debug
|
||||
%endif
|
||||
%if %{with Xstatic}
|
||||
%doc COPYING
|
||||
%endif %{nil with Xstatic}
|
||||
%doc ../../README.txt ../../LICENCE.TXT
|
||||
%doc ../../doc/ft-protocol-problems.eml ../../doc/realvnc-internals.txt ../../doc/registered-codes.txt
|
||||
%if %{with dox}
|
||||
%doc ../../doc/rfbtight.dvi
|
||||
%else %{nil with dox}
|
||||
%doc ../../doc/rfbtight.tex
|
||||
%endif %{nil with dox}
|
||||
|
||||
%changelog
|
54
xorg-bug38185.patch
Normal file
54
xorg-bug38185.patch
Normal file
@ -0,0 +1,54 @@
|
||||
diff -aur o/configure.ac n/configure.ac
|
||||
--- o/configure.ac 2011-06-17 10:20:19.257000012 +0200
|
||||
+++ n/configure.ac 2011-06-17 10:05:40.696000013 +0200
|
||||
@@ -322,7 +322,7 @@
|
||||
old_CFLAGS="$CFLAGS"
|
||||
CFLAGS="-mapcs-frame"
|
||||
AC_COMPILE_IFELSE(
|
||||
- AC_LANG_PROGRAM([[ ]]),
|
||||
+ [AC_LANG_SOURCE([[ ]])],
|
||||
ARM_BACKTRACE_CFLAGS="$CFLAGS",
|
||||
ARM_BACKTRACE_CFLAGS=""
|
||||
)
|
||||
@@ -749,7 +749,7 @@
|
||||
AC_CACHE_CHECK([whether to build Xquartz],xorg_cv_Carbon_framework,[
|
||||
save_LDFLAGS=$LDFLAGS
|
||||
LDFLAGS="$LDFLAGS -framework Carbon"
|
||||
- AC_LINK_IFELSE([char FSFindFolder(); int main() { FSFindFolder(); return 0;}],
|
||||
+ AC_LINK_IFELSE([AC_LANG_SOURCE([[char FSFindFolder(); int main() { FSFindFolder(); return 0;}]])],
|
||||
[xorg_cv_Carbon_framework=yes],
|
||||
[xorg_cv_Carbon_framework=no])
|
||||
LDFLAGS=$save_LDFLAGS])
|
||||
@@ -899,10 +899,12 @@
|
||||
|
||||
AC_MSG_CHECKING([for glibc...])
|
||||
AC_PREPROC_IFELSE([
|
||||
+AC_LANG_SOURCE([[
|
||||
#include <features.h>
|
||||
#ifndef __GLIBC__
|
||||
#error
|
||||
#endif
|
||||
+]])
|
||||
], glibc=yes, glibc=no)
|
||||
AC_MSG_RESULT([$glibc])
|
||||
|
||||
@@ -928,9 +930,10 @@
|
||||
fi
|
||||
|
||||
AC_RUN_IFELSE([
|
||||
+AC_LANG_SOURCE([[
|
||||
#include <time.h>
|
||||
|
||||
-int main(int argc, char *argv[[]]) {
|
||||
+int main(int argc, char *argv[]) {
|
||||
struct timespec tp;
|
||||
|
||||
if (clock_gettime(CLOCK_MONOTONIC, &tp) == 0)
|
||||
@@ -938,6 +941,7 @@
|
||||
else
|
||||
return 1;
|
||||
}
|
||||
+]])
|
||||
], [MONOTONIC_CLOCK=yes], [MONOTONIC_CLOCK=no],
|
||||
[MONOTONIC_CLOCK="cross compiling"])
|
||||
|
28
xorg-server-xdmcp.patch
Normal file
28
xorg-server-xdmcp.patch
Normal file
@ -0,0 +1,28 @@
|
||||
--- unix/xserver/os/access.c 2012-02-24 15:32:16.683508316 +0100
|
||||
+++ unix/xserver/os/access.c 2012-02-24 15:32:16.899508318 +0100
|
||||
@@ -802,7 +802,9 @@
|
||||
|
||||
/*
|
||||
* ignore 'localhost' entries as they're not useful
|
||||
- * on the other end of the wire
|
||||
+ * on the other end of the wire and because on hosts
|
||||
+ * with shared home dirs they'll result in conflic
|
||||
+ * entries in ~/.Xauthority
|
||||
*/
|
||||
if (ifr->ifa_flags & IFF_LOOPBACK)
|
||||
continue;
|
||||
@@ -825,6 +827,14 @@
|
||||
else if (family == FamilyInternet6 &&
|
||||
IN6_IS_ADDR_LOOPBACK((struct in6_addr *)addr))
|
||||
continue;
|
||||
+
|
||||
+ /* Ignore IPv6 link local addresses (fe80::/10), because
|
||||
+ * they need a scope identifier, which we have no way
|
||||
+ * of telling to the other end.
|
||||
+ */
|
||||
+ if (family == FamilyInternet6 &&
|
||||
+ IN6_IS_ADDR_LINKLOCAL((struct in6_addr *)addr))
|
||||
+ continue;
|
||||
#endif
|
||||
XdmcpRegisterConnection(family, (char *)addr, len);
|
||||
#if defined(IPv6) && defined(AF_INET6)
|
Loading…
Reference in New Issue
Block a user