Update to 1.5.0
This commit is contained in:
parent
df29ea27c1
commit
590f96d67c
1
.gitignore
vendored
1
.gitignore
vendored
@ -14,3 +14,4 @@ tigervnc-1.0.90-20100721svn4113.tar.bz2
|
|||||||
/tigervnc-1.4.2.tar.gz
|
/tigervnc-1.4.2.tar.gz
|
||||||
/tigervnc-1.4.3.tar.gz
|
/tigervnc-1.4.3.tar.gz
|
||||||
/tigervnc-49d0629dd87c0eb695d72dec7481e9169f55ae9e.tar.gz
|
/tigervnc-49d0629dd87c0eb695d72dec7481e9169f55ae9e.tar.gz
|
||||||
|
/tigervnc-1.5.0.tar.gz
|
||||||
|
2
sources
2
sources
@ -1 +1 @@
|
|||||||
7df7399ed51716d7ed72ecdf19a4e14f tigervnc-49d0629dd87c0eb695d72dec7481e9169f55ae9e.tar.gz
|
b11cc4c4d5249b9b8e355ee6f47ec4fe tigervnc-1.5.0.tar.gz
|
||||||
|
@ -1,12 +0,0 @@
|
|||||||
diff -up tigervnc-1.3.0/vncviewer/vncviewer.cxx.format-security tigervnc-1.3.0/vncviewer/vncviewer.cxx
|
|
||||||
--- tigervnc-1.3.0/vncviewer/vncviewer.cxx.format-security 2013-12-03 16:47:04.802800182 +0000
|
|
||||||
+++ tigervnc-1.3.0/vncviewer/vncviewer.cxx 2013-12-03 16:47:08.680820024 +0000
|
|
||||||
@@ -309,7 +309,7 @@ interpretViaParam(char *remoteHost, int
|
|
||||||
|
|
||||||
snprintf(vncServerName, VNCSERVERNAMELEN, "localhost::%d", localPort);
|
|
||||||
vncServerName[VNCSERVERNAMELEN - 1] = '\0';
|
|
||||||
- vlog.error(vncServerName);
|
|
||||||
+ vlog.error("%s", vncServerName);
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
@ -1,96 +1,96 @@
|
|||||||
diff -up tigervnc-1.4.2/unix/xserver/hw/vnc/InputXKB.cc.getmaster tigervnc-1.4.2/unix/xserver/hw/vnc/InputXKB.cc
|
diff -up tigervnc-1.4.2/unix/xserver/hw/vnc/c.getmaster tigervnc-1.4.2/unix/xserver/hw/vnc/InputXKB.c
|
||||||
--- tigervnc-1.4.2/unix/xserver/hw/vnc/InputXKB.cc.getmaster 2015-01-23 23:37:23.000000000 +0000
|
--- tigervnc-1.4.2/unix/xserver/hw/vnc/InputXKB.c.getmaster 2015-01-23 23:37:23.000000000 +0000
|
||||||
+++ tigervnc-1.4.2/unix/xserver/hw/vnc/InputXKB.cc 2015-02-13 12:32:54.398502082 +0000
|
+++ tigervnc-1.4.2/unix/xserver/hw/vnc/InputXKB.c 2015-02-13 12:32:54.398502082 +0000
|
||||||
@@ -208,10 +208,7 @@ void InputDevice::PrepareInputDevices(vo
|
@@ -210,10 +210,7 @@ void vncPrepareInputDevices(void)
|
||||||
|
|
||||||
unsigned InputDevice::getKeyboardState(void)
|
unsigned vncGetKeyboardState(void)
|
||||||
{
|
{
|
||||||
- DeviceIntPtr master;
|
- DeviceIntPtr master;
|
||||||
-
|
-
|
||||||
- master = GetMaster(keyboardDev, KEYBOARD_OR_FLOAT);
|
- master = GetMaster(vncKeyboardDev, KEYBOARD_OR_FLOAT);
|
||||||
- return XkbStateFieldFromRec(&master->key->xkbInfo->state);
|
- return XkbStateFieldFromRec(&master->key->xkbInfo->state);
|
||||||
+ return XkbStateFieldFromRec(&keyboardDev->master->key->xkbInfo->state);
|
+ return XkbStateFieldFromRec(&vncKeyboardDev->master->key->xkbInfo->state);
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned InputDevice::getLevelThreeMask(void)
|
unsigned vncGetLevelThreeMask(void)
|
||||||
@@ -232,7 +229,7 @@ unsigned InputDevice::getLevelThreeMask(
|
@@ -232,7 +229,7 @@ unsigned InputDevice::vncGetLevelThreeMask(
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
- xkb = GetMaster(keyboardDev, KEYBOARD_OR_FLOAT)->key->xkbInfo->desc;
|
- xkb = GetMaster(vncKeyboardDev, KEYBOARD_OR_FLOAT)->key->xkbInfo->desc;
|
||||||
+ xkb = keyboardDev->master->key->xkbInfo->desc;
|
+ xkb = vncKeyboardDev->master->key->xkbInfo->desc;
|
||||||
|
|
||||||
act = XkbKeyActionPtr(xkb, keycode, state);
|
act = XkbKeyActionPtr(xkb, keycode, state);
|
||||||
if (act == NULL)
|
if (act == NULL)
|
||||||
@@ -257,7 +254,7 @@ KeyCode InputDevice::pressShift(void)
|
@@ -257,7 +254,7 @@ KeyCode InputDevice::vncPressShift(void)
|
||||||
if (state & ShiftMask)
|
if (state & ShiftMask)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
- xkb = GetMaster(keyboardDev, KEYBOARD_OR_FLOAT)->key->xkbInfo->desc;
|
- xkb = GetMaster(vncKeyboardDev, KEYBOARD_OR_FLOAT)->key->xkbInfo->desc;
|
||||||
+ xkb = keyboardDev->master->key->xkbInfo->desc;
|
+ xkb = vncKeyboardDev->master->key->xkbInfo->desc;
|
||||||
for (key = xkb->min_key_code; key <= xkb->max_key_code; key++) {
|
for (key = xkb->min_key_code; key <= xkb->max_key_code; key++) {
|
||||||
XkbAction *act;
|
XkbAction *act;
|
||||||
unsigned char mask;
|
unsigned char mask;
|
||||||
@@ -294,7 +291,7 @@ std::list<KeyCode> InputDevice::releaseS
|
@@ -299,7 +296,7 @@ size_t vncReleaseShift(KeyCode *keys, size_t maxKeys)
|
||||||
if (!(state & ShiftMask))
|
|
||||||
return keys;
|
|
||||||
|
|
||||||
- master = GetMaster(keyboardDev, KEYBOARD_OR_FLOAT);
|
count = 0;
|
||||||
+ master = keyboardDev->master;
|
|
||||||
|
- master = GetMaster(vncKeyboardDev, KEYBOARD_OR_FLOAT);
|
||||||
|
+ master = vncKeyboardDev->master;
|
||||||
xkb = master->key->xkbInfo->desc;
|
xkb = master->key->xkbInfo->desc;
|
||||||
for (key = xkb->min_key_code; key <= xkb->max_key_code; key++) {
|
for (key = xkb->min_key_code; key <= xkb->max_key_code; key++) {
|
||||||
XkbAction *act;
|
XkbAction *act;
|
||||||
@@ -347,7 +344,7 @@ KeyCode InputDevice::pressLevelThree(voi
|
@@ -347,7 +344,7 @@ KeyCode InputDevice::vncPressLevelThree(voi
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
- xkb = GetMaster(keyboardDev, KEYBOARD_OR_FLOAT)->key->xkbInfo->desc;
|
- xkb = GetMaster(vncKeyboardDev, KEYBOARD_OR_FLOAT)->key->xkbInfo->desc;
|
||||||
+ xkb = keyboardDev->master->key->xkbInfo->desc;
|
+ xkb = vncKeyboardDev->master->key->xkbInfo->desc;
|
||||||
|
|
||||||
act = XkbKeyActionPtr(xkb, keycode, state);
|
act = XkbKeyActionPtr(xkb, keycode, state);
|
||||||
if (act == NULL)
|
if (act == NULL)
|
||||||
@@ -375,7 +372,7 @@ std::list<KeyCode> InputDevice::releaseL
|
@@ -386,7 +383,7 @@ size_t vncReleaseLevelThree(KeyCode *keys, size_t maxKeys)
|
||||||
if (!(state & mask))
|
|
||||||
return keys;
|
|
||||||
|
|
||||||
- master = GetMaster(keyboardDev, KEYBOARD_OR_FLOAT);
|
count = 0;
|
||||||
+ master = keyboardDev->master;
|
|
||||||
|
- master = GetMaster(vncKeyboardDev, KEYBOARD_OR_FLOAT);
|
||||||
|
+ master = vncKeyboardDev->master;
|
||||||
xkb = master->key->xkbInfo->desc;
|
xkb = master->key->xkbInfo->desc;
|
||||||
for (key = xkb->min_key_code; key <= xkb->max_key_code; key++) {
|
for (key = xkb->min_key_code; key <= xkb->max_key_code; key++) {
|
||||||
XkbAction *act;
|
XkbAction *act;
|
||||||
@@ -416,7 +413,7 @@ KeyCode InputDevice::keysymToKeycode(Key
|
@@ -416,7 +413,7 @@ KeyCode InputDevice::vncKeysymToKeycode(Key
|
||||||
if (new_state != NULL)
|
if (new_state != NULL)
|
||||||
*new_state = state;
|
*new_state = state;
|
||||||
|
|
||||||
- xkb = GetMaster(keyboardDev, KEYBOARD_OR_FLOAT)->key->xkbInfo->desc;
|
- xkb = GetMaster(vncKeyboardDev, KEYBOARD_OR_FLOAT)->key->xkbInfo->desc;
|
||||||
+ xkb = keyboardDev->master->key->xkbInfo->desc;
|
+ xkb = vncKeyboardDev->master->key->xkbInfo->desc;
|
||||||
for (key = xkb->min_key_code; key <= xkb->max_key_code; key++) {
|
for (key = xkb->min_key_code; key <= xkb->max_key_code; key++) {
|
||||||
unsigned int state_out;
|
unsigned int state_out;
|
||||||
KeySym dummy;
|
KeySym dummy;
|
||||||
@@ -473,7 +470,7 @@ bool InputDevice::isLockModifier(KeyCode
|
@@ -473,7 +470,7 @@ bool InputDevice::vncIsLockModifier(KeyCode
|
||||||
XkbDescPtr xkb;
|
XkbDescPtr xkb;
|
||||||
XkbAction *act;
|
XkbAction *act;
|
||||||
|
|
||||||
- xkb = GetMaster(keyboardDev, KEYBOARD_OR_FLOAT)->key->xkbInfo->desc;
|
- xkb = GetMaster(vncKeyboardDev, KEYBOARD_OR_FLOAT)->key->xkbInfo->desc;
|
||||||
+ xkb = keyboardDev->master->key->xkbInfo->desc;
|
+ xkb = vncKeyboardDev->master->key->xkbInfo->desc;
|
||||||
|
|
||||||
act = XkbKeyActionPtr(xkb, keycode, state);
|
act = XkbKeyActionPtr(xkb, keycode, state);
|
||||||
if (act == NULL)
|
if (act == NULL)
|
||||||
@@ -511,7 +508,7 @@ bool InputDevice::isAffectedByNumLock(Ke
|
@@ -524,7 +521,7 @@ int vncIsAffectedByNumLock(KeyCode keycode)
|
||||||
if (numlock_keycode == 0)
|
if (numlock_keycode == 0)
|
||||||
return false;
|
return 0;
|
||||||
|
|
||||||
- xkb = GetMaster(keyboardDev, KEYBOARD_OR_FLOAT)->key->xkbInfo->desc;
|
- xkb = GetMaster(vncKeyboardDev, KEYBOARD_OR_FLOAT)->key->xkbInfo->desc;
|
||||||
+ xkb = keyboardDev->master->key->xkbInfo->desc;
|
+ xkb = vncKeyboardDev->master->key->xkbInfo->desc;
|
||||||
|
|
||||||
act = XkbKeyActionPtr(xkb, numlock_keycode, state);
|
act = XkbKeyActionPtr(xkb, numlock_keycode, state);
|
||||||
if (act == NULL)
|
if (act == NULL)
|
||||||
@@ -545,7 +542,7 @@ KeyCode InputDevice::addKeysym(KeySym ke
|
@@ -545,7 +542,7 @@ KeyCode InputDevice::vncAddKeysym(KeySym ke
|
||||||
KeySym *syms;
|
KeySym *syms;
|
||||||
KeySym upper, lower;
|
KeySym upper, lower;
|
||||||
|
|
||||||
- master = GetMaster(keyboardDev, KEYBOARD_OR_FLOAT);
|
- master = GetMaster(vncKeyboardDev, KEYBOARD_OR_FLOAT);
|
||||||
+ master = keyboardDev->master;
|
+ master = vncKeyboardDev->master;
|
||||||
xkb = master->key->xkbInfo->desc;
|
xkb = master->key->xkbInfo->desc;
|
||||||
for (key = xkb->max_key_code; key >= xkb->min_key_code; key--) {
|
for (key = xkb->max_key_code; key >= xkb->min_key_code; key--) {
|
||||||
if (XkbKeyNumGroups(xkb, key) == 0)
|
if (XkbKeyNumGroups(xkb, key) == 0)
|
||||||
|
@ -1,68 +0,0 @@
|
|||||||
Patch by Nikos Mavrogiannopoulos <nmavrogi@redhat.com>
|
|
||||||
|
|
||||||
gnutls 3.4.0 drops gnutls_kx_set_priority which is used by tigervnc. The
|
|
||||||
attached patch fixes this issue and allows tigervnc to compile with new gnutls
|
|
||||||
versions.
|
|
||||||
|
|
||||||
diff --git a/common/rfb/CSecurityTLS.cxx b/common/rfb/CSecurityTLS.cxx
|
|
||||||
index 222748c..f7e9dfd 100644
|
|
||||||
--- a/common/rfb/CSecurityTLS.cxx
|
|
||||||
+++ b/common/rfb/CSecurityTLS.cxx
|
|
||||||
@@ -202,13 +202,12 @@ bool CSecurityTLS::processMsg(CConnection* cc)
|
|
||||||
|
|
||||||
void CSecurityTLS::setParam()
|
|
||||||
{
|
|
||||||
- static const int kx_anon_priority[] = { GNUTLS_KX_ANON_DH, 0 };
|
|
||||||
- static const int kx_priority[] = { GNUTLS_KX_DHE_DSS, GNUTLS_KX_RSA,
|
|
||||||
- GNUTLS_KX_DHE_RSA, GNUTLS_KX_SRP, 0 };
|
|
||||||
+ int ret;
|
|
||||||
|
|
||||||
if (anon) {
|
|
||||||
- if (gnutls_kx_set_priority(session, kx_anon_priority) != GNUTLS_E_SUCCESS)
|
|
||||||
- throw AuthFailureException("gnutls_kx_set_priority failed");
|
|
||||||
+ ret = gnutls_priority_set_direct(session, "NORMAL:+ANON-ECDH:+ANON-DH", NULL);
|
|
||||||
+ if (ret < 0)
|
|
||||||
+ throw AuthFailureException("gnutls_priority_set_direct failed");
|
|
||||||
|
|
||||||
if (gnutls_anon_allocate_client_credentials(&anon_cred) != GNUTLS_E_SUCCESS)
|
|
||||||
throw AuthFailureException("gnutls_anon_allocate_client_credentials failed");
|
|
||||||
@@ -218,8 +217,9 @@ void CSecurityTLS::setParam()
|
|
||||||
|
|
||||||
vlog.debug("Anonymous session has been set");
|
|
||||||
} else {
|
|
||||||
- if (gnutls_kx_set_priority(session, kx_priority) != GNUTLS_E_SUCCESS)
|
|
||||||
- throw AuthFailureException("gnutls_kx_set_priority failed");
|
|
||||||
+ ret = gnutls_set_default_priority(session);
|
|
||||||
+ if (ret < 0)
|
|
||||||
+ throw AuthFailureException("gnutls_set_default_priority failed");
|
|
||||||
|
|
||||||
if (gnutls_certificate_allocate_credentials(&cert_cred) != GNUTLS_E_SUCCESS)
|
|
||||||
throw AuthFailureException("gnutls_certificate_allocate_credentials failed");
|
|
||||||
diff --git a/common/rfb/SSecurityTLS.cxx b/common/rfb/SSecurityTLS.cxx
|
|
||||||
index d4e88d7..7ac4652 100644
|
|
||||||
--- a/common/rfb/SSecurityTLS.cxx
|
|
||||||
+++ b/common/rfb/SSecurityTLS.cxx
|
|
||||||
@@ -166,13 +166,17 @@ bool SSecurityTLS::processMsg(SConnection *sc)
|
|
||||||
|
|
||||||
void SSecurityTLS::setParams(gnutls_session session)
|
|
||||||
{
|
|
||||||
- static const int kx_anon_priority[] = { GNUTLS_KX_ANON_DH, 0 };
|
|
||||||
- static const int kx_priority[] = { GNUTLS_KX_DHE_DSS, GNUTLS_KX_RSA,
|
|
||||||
- GNUTLS_KX_DHE_RSA, GNUTLS_KX_SRP, 0 };
|
|
||||||
+ int ret;
|
|
||||||
|
|
||||||
- if (gnutls_kx_set_priority(session, anon ? kx_anon_priority : kx_priority)
|
|
||||||
- != GNUTLS_E_SUCCESS)
|
|
||||||
- throw AuthFailureException("gnutls_kx_set_priority failed");
|
|
||||||
+ if (anon) {
|
|
||||||
+ ret = gnutls_priority_set_direct(session, "NORMAL:+ANON-ECDH:+ANON-DH", NULL);
|
|
||||||
+ if (ret < 0)
|
|
||||||
+ throw AuthFailureException("gnutls_priority_set_direct failed");
|
|
||||||
+ } else {
|
|
||||||
+ ret = gnutls_set_default_priority(session);
|
|
||||||
+ if (ret < 0)
|
|
||||||
+ throw AuthFailureException("gnutls_set_default_priority failed");
|
|
||||||
+ }
|
|
||||||
|
|
||||||
if (gnutls_dh_params_init(&dh_params) != GNUTLS_E_SUCCESS)
|
|
||||||
throw AuthFailureException("gnutls_dh_params_init failed");
|
|
@ -1,23 +1,24 @@
|
|||||||
diff -up tigervnc-1.2.80-20130314svn5065/common/network/TcpSocket.cxx.inetd-nowait tigervnc-1.2.80-20130314svn5065/common/network/TcpSocket.cxx
|
diff --git a/common/network/TcpSocket.cxx b/common/network/TcpSocket.cxx
|
||||||
--- tigervnc-1.2.80-20130314svn5065/common/network/TcpSocket.cxx.inetd-nowait 2013-05-23 12:20:35.836386218 +0100
|
index 1ebaeec..2d7a52f 100644
|
||||||
+++ tigervnc-1.2.80-20130314svn5065/common/network/TcpSocket.cxx 2013-05-23 12:23:04.698003213 +0100
|
--- a/common/network/TcpSocket.cxx
|
||||||
@@ -325,18 +325,12 @@ bool TcpSocket::cork(int sock, bool enab
|
+++ b/common/network/TcpSocket.cxx
|
||||||
|
@@ -369,18 +369,12 @@ bool TcpSocket::cork(int sock, bool enable) {
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
-bool TcpSocket::isSocket(int sock)
|
-bool TcpSocket::isSocket(int sock)
|
||||||
+bool TcpSocket::isListening(int sock)
|
-{
|
||||||
{
|
- vnc_sockaddr_t sa;
|
||||||
- struct sockaddr_in info;
|
- socklen_t sa_size = sizeof(sa);
|
||||||
- socklen_t info_size = sizeof(info);
|
- return getsockname(sock, &sa.u.sa, &sa_size) >= 0;
|
||||||
- return getsockname(sock, (struct sockaddr *)&info, &info_size) >= 0;
|
|
||||||
-}
|
-}
|
||||||
-
|
-
|
||||||
-bool TcpSocket::isConnected(int sock)
|
-bool TcpSocket::isConnected(int sock)
|
||||||
-{
|
+bool TcpSocket::isListening(int sock)
|
||||||
- struct sockaddr_in info;
|
{
|
||||||
- socklen_t info_size = sizeof(info);
|
- vnc_sockaddr_t sa;
|
||||||
- return getpeername(sock, (struct sockaddr *)&info, &info_size) >= 0;
|
- socklen_t sa_size = sizeof(sa);
|
||||||
|
- return getpeername(sock, &sa.u.sa, &sa_size) >= 0;
|
||||||
+ int listening = 0;
|
+ int listening = 0;
|
||||||
+ socklen_t listening_size = sizeof(listening);
|
+ socklen_t listening_size = sizeof(listening);
|
||||||
+ return getsockopt(sock, SOL_SOCKET, SO_ACCEPTCONN, &listening,
|
+ return getsockopt(sock, SOL_SOCKET, SO_ACCEPTCONN, &listening,
|
||||||
@ -25,10 +26,11 @@ diff -up tigervnc-1.2.80-20130314svn5065/common/network/TcpSocket.cxx.inetd-nowa
|
|||||||
}
|
}
|
||||||
|
|
||||||
int TcpSocket::getSockPort(int sock)
|
int TcpSocket::getSockPort(int sock)
|
||||||
diff -up tigervnc-1.2.80-20130314svn5065/common/network/TcpSocket.h.inetd-nowait tigervnc-1.2.80-20130314svn5065/common/network/TcpSocket.h
|
diff --git a/common/network/TcpSocket.h b/common/network/TcpSocket.h
|
||||||
--- tigervnc-1.2.80-20130314svn5065/common/network/TcpSocket.h.inetd-nowait 2013-05-23 12:20:35.835386220 +0100
|
index 979cd4b..2bfe47b 100644
|
||||||
+++ tigervnc-1.2.80-20130314svn5065/common/network/TcpSocket.h 2013-05-23 12:21:58.861730647 +0100
|
--- a/common/network/TcpSocket.h
|
||||||
@@ -57,8 +57,7 @@ namespace network {
|
+++ b/common/network/TcpSocket.h
|
||||||
|
@@ -65,8 +65,7 @@ namespace network {
|
||||||
|
|
||||||
static bool enableNagles(int sock, bool enable);
|
static bool enableNagles(int sock, bool enable);
|
||||||
static bool cork(int sock, bool enable);
|
static bool cork(int sock, bool enable);
|
||||||
@ -38,16 +40,17 @@ diff -up tigervnc-1.2.80-20130314svn5065/common/network/TcpSocket.h.inetd-nowait
|
|||||||
static int getSockPort(int sock);
|
static int getSockPort(int sock);
|
||||||
private:
|
private:
|
||||||
bool closeFd;
|
bool closeFd;
|
||||||
diff -up tigervnc-1.2.80-20130314svn5065/unix/xserver/hw/vnc/vncExtInit.cc.inetd-nowait tigervnc-1.2.80-20130314svn5065/unix/xserver/hw/vnc/vncExtInit.cc
|
diff --git a/unix/xserver/hw/vnc/vncExtInit.cc b/unix/xserver/hw/vnc/vncExtInit.cc
|
||||||
--- tigervnc-1.2.80-20130314svn5065/unix/xserver/hw/vnc/vncExtInit.cc.inetd-nowait 2013-03-14 17:11:22.000000000 +0000
|
index e307e31..dc449bd 100644
|
||||||
+++ tigervnc-1.2.80-20130314svn5065/unix/xserver/hw/vnc/vncExtInit.cc 2013-05-23 12:21:10.545530308 +0100
|
--- a/unix/xserver/hw/vnc/vncExtInit.cc
|
||||||
@@ -225,8 +225,7 @@ void vncExtensionInit()
|
+++ b/unix/xserver/hw/vnc/vncExtInit.cc
|
||||||
network::TcpListener* listener = 0;
|
@@ -137,8 +137,7 @@ void vncExtensionInit(void)
|
||||||
network::TcpListener* httpListener = 0;
|
std::list<network::TcpListener> listeners;
|
||||||
|
std::list<network::TcpListener> httpListeners;
|
||||||
if (scr == 0 && vncInetdSock != -1) {
|
if (scr == 0 && vncInetdSock != -1) {
|
||||||
- if (network::TcpSocket::isSocket(vncInetdSock) &&
|
- if (network::TcpSocket::isSocket(vncInetdSock) &&
|
||||||
- !network::TcpSocket::isConnected(vncInetdSock))
|
- !network::TcpSocket::isConnected(vncInetdSock))
|
||||||
+ if (network::TcpSocket::isListening(vncInetdSock))
|
+ if (network::TcpSocket::isListening(vncInetdSock))
|
||||||
{
|
{
|
||||||
listener = new network::TcpListener(NULL, 0, 0, vncInetdSock, true);
|
listeners.push_back (network::TcpListener(vncInetdSock));
|
||||||
vlog.info("inetd wait");
|
vlog.info("inetd wait");
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
diff -up tigervnc-1.4.2/unix/xserver/hw/vnc/Makefile.am.libvnc-os tigervnc-1.4.2/unix/xserver/hw/vnc/Makefile.am
|
diff --git a/unix/xserver/hw/vnc/Makefile.am b/unix/xserver/hw/vnc/Makefile.am
|
||||||
--- tigervnc-1.4.2/unix/xserver/hw/vnc/Makefile.am.libvnc-os 2015-02-13 13:22:19.519322622 +0000
|
index d7ab259..fb477c5 100644
|
||||||
+++ tigervnc-1.4.2/unix/xserver/hw/vnc/Makefile.am 2015-02-13 13:22:19.521322636 +0000
|
--- a/unix/xserver/hw/vnc/Makefile.am
|
||||||
|
+++ b/unix/xserver/hw/vnc/Makefile.am
|
||||||
@@ -5,6 +5,7 @@ RFB_LIB=$(LIB_DIR)/rfb/librfb.la
|
@@ -5,6 +5,7 @@ RFB_LIB=$(LIB_DIR)/rfb/librfb.la
|
||||||
RDR_LIB=$(LIB_DIR)/rdr/librdr.la
|
RDR_LIB=$(LIB_DIR)/rdr/librdr.la
|
||||||
NETWORK_LIB=$(LIB_DIR)/network/libnetwork.la
|
NETWORK_LIB=$(LIB_DIR)/network/libnetwork.la
|
||||||
@ -8,8 +9,8 @@ diff -up tigervnc-1.4.2/unix/xserver/hw/vnc/Makefile.am.libvnc-os tigervnc-1.4.2
|
|||||||
+OS_LIB=$(LIB_DIR)/os/libos.la
|
+OS_LIB=$(LIB_DIR)/os/libos.la
|
||||||
COMMON_LIBS=$(NETWORK_LIB) $(RFB_LIB) $(RDR_LIB) $(XREGION_LIB)
|
COMMON_LIBS=$(NETWORK_LIB) $(RFB_LIB) $(RDR_LIB) $(XREGION_LIB)
|
||||||
|
|
||||||
# Hack to get the C headers to work when included from C++ code
|
noinst_LTLIBRARIES = libvnccommon.la
|
||||||
@@ -58,7 +59,7 @@ libvnc_la_CPPFLAGS = $(XVNC_CPPFLAGS) -I
|
@@ -64,6 +65,6 @@ libvnc_la_CPPFLAGS = $(XVNC_CPPFLAGS) -I$(TIGERVNC_SRCDIR)/common -UHAVE_CONFIG_
|
||||||
|
|
||||||
libvnc_la_LDFLAGS = -module -avoid-version -Wl,-z,now
|
libvnc_la_LDFLAGS = -module -avoid-version -Wl,-z,now
|
||||||
|
|
||||||
@ -17,4 +18,3 @@ diff -up tigervnc-1.4.2/unix/xserver/hw/vnc/Makefile.am.libvnc-os tigervnc-1.4.2
|
|||||||
+libvnc_la_LIBADD = libvnccommon.la $(COMMON_LIBS) $(OS_LIB)
|
+libvnc_la_LIBADD = libvnccommon.la $(COMMON_LIBS) $(OS_LIB)
|
||||||
|
|
||||||
EXTRA_DIST = Xvnc.man
|
EXTRA_DIST = Xvnc.man
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
diff -Nur tigervnc-49d0629dd87c0eb695d72dec7481e9169f55ae9e.orig/unix/xserver/hw/vnc/Input.cc tigervnc-49d0629dd87c0eb695d72dec7481e9169f55ae9e/unix/xserver/hw/vnc/Input.cc
|
diff --git a/unix/xserver/hw/vnc/Input.c b/unix/xserver/hw/vnc/Input.c
|
||||||
--- tigervnc-49d0629dd87c0eb695d72dec7481e9169f55ae9e.orig/unix/xserver/hw/vnc/Input.cc 2015-03-01 12:58:35.000000000 -0700
|
--- a/unix/xserver/hw/vnc/Input.c
|
||||||
+++ tigervnc-49d0629dd87c0eb695d72dec7481e9169f55ae9e/unix/xserver/hw/vnc/Input.cc 2015-08-04 10:02:26.234604801 -0600
|
+++ b/unix/xserver/hw/vnc/Input.c
|
||||||
@@ -378,7 +378,7 @@
|
@@ -301,7 +301,7 @@ static inline void pressKey(DeviceIntPtr dev, int kc, Bool down, const char *msg
|
||||||
n = GetKeyboardEvents(eventq, dev, action, kc);
|
n = GetKeyboardEvents(eventq, dev, action, kc);
|
||||||
enqueueEvents(dev, n);
|
enqueueEvents(dev, n);
|
||||||
#else
|
#else
|
||||||
|
@ -1,46 +1,16 @@
|
|||||||
diff -Nur tigervnc-49d0629dd87c0eb695d72dec7481e9169f55ae9e.orig/unix/xserver/hw/vnc/xorg-version.h tigervnc-49d0629dd87c0eb695d72dec7481e9169f55ae9e/unix/xserver/hw/vnc/xorg-version.h
|
diff -Nur tigervnc-49d0629dd87c0eb695d72dec7481e9169f55ae9e.orig/unix/xserver/hw/vnc/xorg-version.h tigervnc-49d0629dd87c0eb695d72dec7481e9169f55ae9e/unix/xserver/hw/vnc/xorg-version.h
|
||||||
--- tigervnc-49d0629dd87c0eb695d72dec7481e9169f55ae9e.orig/unix/xserver/hw/vnc/xorg-version.h 2015-03-01 12:58:35.000000000 -0700
|
--- tigervnc-49d0629dd87c0eb695d72dec7481e9169f55ae9e.orig/unix/xserver/hw/vnc/xorg-version.h 2015-03-01 12:58:35.000000000 -0700
|
||||||
+++ tigervnc-49d0629dd87c0eb695d72dec7481e9169f55ae9e/unix/xserver/hw/vnc/xorg-version.h 2015-08-04 09:46:14.796336147 -0600
|
+++ tigervnc-49d0629dd87c0eb695d72dec7481e9169f55ae9e/unix/xserver/hw/vnc/xorg-version.h 2015-08-04 09:46:14.796336147 -0600
|
||||||
@@ -48,8 +48,12 @@
|
@@ -48,8 +48,10 @@
|
||||||
#define XORG 115
|
|
||||||
#elif XORG_VERSION_CURRENT < ((1 * 10000000) + (16 * 100000) + (99 * 1000))
|
|
||||||
#define XORG 116
|
#define XORG 116
|
||||||
+#elif XORG_VERSION_CURRENT < ((1 * 10000000) + (17 * 100000) + (99 * 1000))
|
#elif XORG_VERSION_CURRENT < ((1 * 10000000) + (17 * 100000) + (99 * 1000))
|
||||||
+#define XORG 117
|
#define XORG 117
|
||||||
+#elif XORG_VERSION_CURRENT < ((1 * 10000000) + (18 * 100000) + (99 * 1000))
|
+#elif XORG_VERSION_CURRENT < ((1 * 10000000) + (18 * 100000) + (99 * 1000))
|
||||||
+#define XORG 118
|
+#define XORG 118
|
||||||
#else
|
#else
|
||||||
-#error "X.Org newer than 1.16 is not supported"
|
-#error "X.Org newer than 1.17 is not supported"
|
||||||
+#error "X.Org newer than 1.18 is not supported"
|
+#error "X.Org newer than 1.18 is not supported"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
diff -Nur tigervnc-49d0629dd87c0eb695d72dec7481e9169f55ae9e.orig/unix/xserver/hw/vnc/xvnc.cc tigervnc-49d0629dd87c0eb695d72dec7481e9169f55ae9e/unix/xserver/hw/vnc/xvnc.cc
|
|
||||||
--- tigervnc-49d0629dd87c0eb695d72dec7481e9169f55ae9e.orig/unix/xserver/hw/vnc/xvnc.cc 2015-03-01 12:58:35.000000000 -0700
|
|
||||||
+++ tigervnc-49d0629dd87c0eb695d72dec7481e9169f55ae9e/unix/xserver/hw/vnc/xvnc.cc 2015-08-04 09:48:07.632507101 -0600
|
|
||||||
@@ -717,9 +717,9 @@
|
|
||||||
entries = pmap->pVisual->ColormapEntries;
|
|
||||||
pVisual = pmap->pVisual;
|
|
||||||
|
|
||||||
- ppix = (Pixel *)xalloc(entries * sizeof(Pixel));
|
|
||||||
- prgb = (xrgb *)xalloc(entries * sizeof(xrgb));
|
|
||||||
- defs = (xColorItem *)xalloc(entries * sizeof(xColorItem));
|
|
||||||
+ ppix = (Pixel *)calloc(entries, sizeof(Pixel));
|
|
||||||
+ prgb = (xrgb *)calloc(entries, sizeof(xrgb));
|
|
||||||
+ defs = (xColorItem *)calloc(entries, sizeof(xColorItem));
|
|
||||||
|
|
||||||
for (i = 0; i < entries; i++) ppix[i] = i;
|
|
||||||
/* XXX truecolor */
|
|
||||||
@@ -738,9 +738,9 @@
|
|
||||||
}
|
|
||||||
(*pmap->pScreen->StoreColors)(pmap, entries, defs);
|
|
||||||
|
|
||||||
- xfree(ppix);
|
|
||||||
- xfree(prgb);
|
|
||||||
- xfree(defs);
|
|
||||||
+ free(ppix);
|
|
||||||
+ free(prgb);
|
|
||||||
+ free(defs);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
@ -1,11 +1,6 @@
|
|||||||
# https://fedoraproject.org/wiki/Packaging:SourceURL?rd=Packaging/SourceURL#Github
|
|
||||||
# Full hash for v1.4.3 tag:
|
|
||||||
%global commit 49d0629dd87c0eb695d72dec7481e9169f55ae9e
|
|
||||||
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
|
||||||
|
|
||||||
Name: tigervnc
|
Name: tigervnc
|
||||||
Version: 1.4.3
|
Version: 1.5.0
|
||||||
Release: 12%{?dist}
|
Release: 1%{?dist}
|
||||||
Summary: A TigerVNC remote display system
|
Summary: A TigerVNC remote display system
|
||||||
|
|
||||||
%global _hardened_build 1
|
%global _hardened_build 1
|
||||||
@ -14,7 +9,7 @@ Group: User Interface/Desktops
|
|||||||
License: GPLv2+
|
License: GPLv2+
|
||||||
URL: http://www.tigervnc.com
|
URL: http://www.tigervnc.com
|
||||||
|
|
||||||
Source0: https://github.com/TigerVNC/tigervnc/archive/%{commit}/tigervnc-%{commit}.tar.gz
|
Source0: %{name}-%{version}.tar.gz
|
||||||
Source1: vncserver.service
|
Source1: vncserver.service
|
||||||
Source2: vncserver.sysconfig
|
Source2: vncserver.sysconfig
|
||||||
Source3: 10-libvnc.conf
|
Source3: 10-libvnc.conf
|
||||||
@ -51,18 +46,15 @@ Provides: tightvnc = 1.5.0-0.15.20090204svn3586
|
|||||||
Obsoletes: tightvnc < 1.5.0-0.15.20090204svn3586
|
Obsoletes: tightvnc < 1.5.0-0.15.20090204svn3586
|
||||||
|
|
||||||
Patch1: tigervnc-cookie.patch
|
Patch1: tigervnc-cookie.patch
|
||||||
Patch2: tigervnc11-ldnow.patch
|
|
||||||
Patch3: tigervnc-libvnc-os.patch
|
Patch3: tigervnc-libvnc-os.patch
|
||||||
Patch4: tigervnc11-rh692048.patch
|
Patch4: tigervnc11-rh692048.patch
|
||||||
Patch5: tigervnc-inetd-nowait.patch
|
Patch5: tigervnc-inetd-nowait.patch
|
||||||
Patch7: tigervnc-manpages.patch
|
Patch7: tigervnc-manpages.patch
|
||||||
Patch8: tigervnc-getmaster.patch
|
Patch8: tigervnc-getmaster.patch
|
||||||
Patch9: tigervnc-shebang.patch
|
Patch9: tigervnc-shebang.patch
|
||||||
Patch11: tigervnc-format-security.patch
|
|
||||||
Patch14: tigervnc-xstartup.patch
|
Patch14: tigervnc-xstartup.patch
|
||||||
Patch15: tigervnc-xserver118.patch
|
Patch15: tigervnc-xserver118.patch
|
||||||
Patch16: tigervnc-gnutls-3.4.patch
|
Patch17: tigervnc-xorg118-QueueKeyboardEvents.patch
|
||||||
Patch17: tigervnc-xorg118-QueueKeyboardEvents.patch
|
|
||||||
|
|
||||||
# This is tigervnc-%%{version}/unix/xserver116.patch rebased on the latest xorg
|
# This is tigervnc-%%{version}/unix/xserver116.patch rebased on the latest xorg
|
||||||
Patch100: tigervnc-xserver116-rebased.patch
|
Patch100: tigervnc-xserver116-rebased.patch
|
||||||
@ -158,10 +150,9 @@ BuildArch: noarch
|
|||||||
This package contains icons for TigerVNC viewer
|
This package contains icons for TigerVNC viewer
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -qn %{name}-%{commit}
|
%setup -q
|
||||||
|
|
||||||
%patch1 -p1 -b .cookie
|
%patch1 -p1 -b .cookie
|
||||||
%patch2 -p1 -b .ldnow
|
|
||||||
%patch3 -p1 -b .libvnc-os
|
%patch3 -p1 -b .libvnc-os
|
||||||
%patch4 -p1 -b .rh692048
|
%patch4 -p1 -b .rh692048
|
||||||
|
|
||||||
@ -186,18 +177,15 @@ popd
|
|||||||
# Don't use shebang in vncserver script.
|
# Don't use shebang in vncserver script.
|
||||||
%patch9 -p1 -b .shebang
|
%patch9 -p1 -b .shebang
|
||||||
|
|
||||||
# Fixed build failure with -Werror=format-security (bug #1037358).
|
|
||||||
%patch11 -p1 -b .format-security
|
|
||||||
|
|
||||||
# Clearer xstartup file (bug #923655).
|
# Clearer xstartup file (bug #923655).
|
||||||
%patch14 -p1 -b .xstartup
|
%patch14 -p1 -b .xstartup
|
||||||
|
|
||||||
# Allow build against xorg-x11-server-1.18.
|
# Allow build against xorg-x11-server-1.18.
|
||||||
%patch15 -p1 -b .xserver118
|
%patch15 -p1 -b .xserver118
|
||||||
|
|
||||||
# Fix the build with gnutls 3.4 (bug #1218518).
|
%if 0%{?fedora} > 23
|
||||||
%patch16 -p1 -b .gnutls-3.4
|
%patch17 -p1 -b .xorg118-QueueKeyboardEvents
|
||||||
%patch17 -p1
|
%endif
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%ifarch sparcv9 sparc64 s390 s390x
|
%ifarch sparcv9 sparc64 s390 s390x
|
||||||
@ -366,7 +354,10 @@ fi
|
|||||||
%{_datadir}/icons/hicolor/*/apps/*
|
%{_datadir}/icons/hicolor/*/apps/*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Tue Aug 04 2015 Kevin Fenzi <kevin@scrye.com> 1.4.3-12
|
* Wed Aug 19 2015 Jan Grulich <jgrulich@redhat.com> - 1.5.0-1
|
||||||
|
- 1.5.0
|
||||||
|
|
||||||
|
* Tue Aug 04 2015 Kevin Fenzi <kevin@scrye.com> - 1.4.3-12
|
||||||
- Rebuild to fix broken deps and build against xorg 1.18 prerelease
|
- Rebuild to fix broken deps and build against xorg 1.18 prerelease
|
||||||
|
|
||||||
* Thu Jun 25 2015 Tim Waugh <twaugh@redhat.com> - 1.4.3-11
|
* Thu Jun 25 2015 Tim Waugh <twaugh@redhat.com> - 1.4.3-11
|
||||||
|
@ -1,12 +0,0 @@
|
|||||||
diff -up tigervnc-1.2.0/unix/xserver/hw/vnc/Makefile.am.ldnow tigervnc-1.2.0/unix/xserver/hw/vnc/Makefile.am
|
|
||||||
--- tigervnc-1.2.0/unix/xserver/hw/vnc/Makefile.am.ldnow 2011-10-31 09:14:40.000000000 +0100
|
|
||||||
+++ tigervnc-1.2.0/unix/xserver/hw/vnc/Makefile.am 2012-08-22 15:51:47.013241342 +0200
|
|
||||||
@@ -53,7 +53,7 @@ libvnc_la_CPPFLAGS = $(XVNC_CPPFLAGS) -I
|
|
||||||
-I$(top_srcdir)/include \
|
|
||||||
${XSERVERLIBS_CFLAGS} -I$(includedir)
|
|
||||||
|
|
||||||
-libvnc_la_LDFLAGS = -module -avoid-version
|
|
||||||
+libvnc_la_LDFLAGS = -module -avoid-version -Wl,-z,now
|
|
||||||
|
|
||||||
libvnc_la_LIBADD = libvnccommon.la $(COMMON_LIBS)
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user