]> source.dussan.org Git - tigervnc.git/log
tigervnc.git
7 years agoRename CMsgWriter functions to match C++ code
Brian P. Hinz [Sun, 12 Nov 2017 16:03:25 +0000 (11:03 -0500)]
Rename CMsgWriter functions to match C++ code

7 years agoMove XDesktop specific parameters in to same file
Pierre Ossman [Wed, 8 Nov 2017 15:00:05 +0000 (16:00 +0100)]
Move XDesktop specific parameters in to same file

7 years agoFully standardise on send()/recv()
Pierre Ossman [Wed, 8 Nov 2017 14:59:42 +0000 (15:59 +0100)]
Fully standardise on send()/recv()

We already assume sockets here since we use select().

7 years agoMerge branch 'x0-xdesktop-initial-cursor' of https://github.com/x11clone/x11clone
Pierre Ossman [Wed, 8 Nov 2017 14:22:44 +0000 (15:22 +0100)]
Merge branch 'x0-xdesktop-initial-cursor' of https://github.com/x11clone/x11clone

7 years agox0vncserver does not support SetDesktopSize; remove -AcceptSetDesktopSize 530/head
Peter Åstrand (astrand) [Wed, 18 Oct 2017 06:54:05 +0000 (08:54 +0200)]
x0vncserver does not support SetDesktopSize; remove -AcceptSetDesktopSize

Add a Configuration::removeParam to support such cases.

7 years agoConfiguration::listParams wants width/nameWidth; not ConfigurationObject
Peter Åstrand (astrand) [Tue, 17 Oct 2017 06:21:30 +0000 (08:21 +0200)]
Configuration::listParams wants width/nameWidth; not ConfigurationObject

7 years agoRemoved IRIX/Solaris overlay support
Peter Åstrand (astrand) [Mon, 16 Oct 2017 13:18:00 +0000 (15:18 +0200)]
Removed IRIX/Solaris overlay support

Legacy systems.

7 years agoRemove support for Lynx/OS
Peter Åstrand (astrand) [Mon, 16 Oct 2017 13:09:58 +0000 (15:09 +0200)]
Remove support for Lynx/OS

7 years agoAdded my/Cendio copyright where relevant
Peter Åstrand (astrand) [Mon, 16 Oct 2017 09:11:45 +0000 (11:11 +0200)]
Added my/Cendio copyright where relevant

7 years agoSet the correct cursor when starting
Peter Åstrand (astrand) [Wed, 11 Oct 2017 13:12:10 +0000 (15:12 +0200)]
Set the correct cursor when starting

XFixes only reports cursor changes. We must manually call
XFixesGetCursorImage() when starting.

7 years agoUse send() with MSG_DONTWAIT when possible
Peter Åstrand (astrand) [Tue, 10 Oct 2017 11:56:51 +0000 (13:56 +0200)]
Use send() with MSG_DONTWAIT when possible

7 years agoDefine cork() as pure virtual in Socket class
Peter Åstrand (astrand) [Tue, 10 Oct 2017 10:56:04 +0000 (12:56 +0200)]
Define cork() as pure virtual in Socket class

This makes it possible to create a derived class from Socket which is
not TCP based, without having VNCSConnectionST.cxx trying to call
setsockopt() on a non-socket.

7 years agoMove XDesktop to separate file
Peter Åstrand (astrand) [Tue, 10 Oct 2017 10:27:38 +0000 (12:27 +0200)]
Move XDesktop to separate file

Define ledNames in XDesktop.cxx, rename N_LEDS to XDESKTOP_N_LEDS

7 years agoUsing namespace rfb in header files is a bad idea
Peter Åstrand (astrand) [Mon, 9 Oct 2017 12:59:24 +0000 (14:59 +0200)]
Using namespace rfb in header files is a bad idea

7 years agoBuild with support for MIT-SHM
Peter Åstrand (astrand) [Mon, 9 Oct 2017 10:32:14 +0000 (12:32 +0200)]
Build with support for MIT-SHM

No need for ifdefs; we can assume MITSHM. Already done in vncviewer.

7 years agoAvoid corner case of applications rendering at frame rate
Pierre Ossman [Mon, 6 Nov 2017 12:16:35 +0000 (13:16 +0100)]
Avoid corner case of applications rendering at frame rate

There is a problematic corner case where an application is updating
at exactly the same rate that we're sending update. In that case we
may miss updates regularly, getting a very uneven final frame rate.
Avoid this by introducing a slight offset when we start updating.

7 years agoFix broken logic for sending mouse cursor
Pierre Ossman [Mon, 6 Nov 2017 12:15:55 +0000 (13:15 +0100)]
Fix broken logic for sending mouse cursor

The logic got inverted resulting in the cursor being sent needlessly
whenever the cursor moved.

7 years agoUpdate distro package requirements
Brian P. Hinz [Mon, 30 Oct 2017 01:55:40 +0000 (21:55 -0400)]
Update distro package requirements

7 years agoPatch the el7 xorg source appropriately
Brian P. Hinz [Mon, 30 Oct 2017 00:33:25 +0000 (20:33 -0400)]
Patch the el7 xorg source appropriately

7 years agoAdd debug trace when the clipboard changes
Pierre Ossman [Thu, 12 Oct 2017 15:07:15 +0000 (17:07 +0200)]
Add debug trace when the clipboard changes

7 years agoDon't validate timestamp on clipboard request
Pierre Ossman [Thu, 12 Oct 2017 15:06:18 +0000 (17:06 +0200)]
Don't validate timestamp on clipboard request

The normal Xorg server doesn't check this field, so neither can we
as there are applications relying on this leniancy.

7 years agoMake exception classes have clearer messages
Pierre Ossman [Thu, 12 Oct 2017 13:05:07 +0000 (15:05 +0200)]
Make exception classes have clearer messages

Include the type of exception in the string generated by each
subclass. Also simplify the constructs to what is needed.

7 years agoAdd Travis CI configuration 522/head
Pierre Ossman [Fri, 6 Oct 2017 11:51:01 +0000 (13:51 +0200)]
Add Travis CI configuration

7 years agoImprove test if library is a CMake target
Pierre Ossman [Fri, 6 Oct 2017 12:30:26 +0000 (14:30 +0200)]
Improve test if library is a CMake target

Newer CMake complains when you try to get the property of something
that isn't a target so use the specific if operator instead.

7 years agoAvoid getting LOCATION property
Pierre Ossman [Fri, 6 Oct 2017 12:29:54 +0000 (14:29 +0200)]
Avoid getting LOCATION property

It's not supported in newer CMake, so try to deduce the library
filename from the target name.

7 years agoPush query connect timeout back in to Xvnc 521/head
Pierre Ossman [Wed, 4 Oct 2017 14:21:57 +0000 (16:21 +0200)]
Push query connect timeout back in to Xvnc

It was moved to the common code in f8e3b34c6, but it was unreliable
because the state could sometimes get out of sync. Push it back in
to Xvnc since it isn't necessarily something all servers will have.

7 years agoDon't queue a query if it is directly rejected
Pierre Ossman [Wed, 4 Oct 2017 13:55:48 +0000 (15:55 +0200)]
Don't queue a query if it is directly rejected

Otherwise we'll wedge the desktop object which expects an approval
or rejection to eventually show up.

7 years agoKeep alpha in cursor alpha conversion
Pierre Ossman [Mon, 2 Oct 2017 09:06:04 +0000 (11:06 +0200)]
Keep alpha in cursor alpha conversion

Don't touch the existing value or we might mess it up when we avoid
division by zero.

7 years agoUse current server time for XUngrabKeyboard
Pierre Ossman [Mon, 2 Oct 2017 09:05:10 +0000 (11:05 +0200)]
Use current server time for XUngrabKeyboard

We might be calling this outside a normal FLTK event, so we cannot
trust fl_event_time to have a sane value.

7 years agoRemove accidental debug output
Pierre Ossman [Fri, 22 Sep 2017 14:49:10 +0000 (16:49 +0200)]
Remove accidental debug output

7 years agoMake sure to start the frame timer after a buffer change
Pierre Ossman [Fri, 22 Sep 2017 14:48:14 +0000 (16:48 +0200)]
Make sure to start the frame timer after a buffer change

The buffer is considered changed right away, so we might not get any
add_changed() calls to trigger a start of the timer.

7 years agoGet rid of getFbSize()/getDesktopSize() in common
Pierre Ossman [Fri, 22 Sep 2017 14:43:50 +0000 (16:43 +0200)]
Get rid of getFbSize()/getDesktopSize() in common

It was only used by WinVNC, so push it there instead.

7 years agoSwitch back to low resolution mode on macOS
Pierre Ossman [Thu, 21 Sep 2017 13:43:58 +0000 (15:43 +0200)]
Switch back to low resolution mode on macOS

This is a revert of 6c0181c. Testing showed that we got a big
performance hit by enabling this, and we also saw some graphical
artifacts. More work is needed before this can be enabled by default.

7 years agoUpdate keyboard test notes for raw keyboard mode
Pierre Ossman [Mon, 18 Sep 2017 14:22:41 +0000 (16:22 +0200)]
Update keyboard test notes for raw keyboard mode

7 years agoAdd keyboard test notes for LED state handling
Pierre Ossman [Mon, 18 Sep 2017 14:22:09 +0000 (16:22 +0200)]
Add keyboard test notes for LED state handling

7 years agoBe explicit which Exception class we want
Pierre Ossman [Mon, 18 Sep 2017 14:07:12 +0000 (16:07 +0200)]
Be explicit which Exception class we want

7 years agoRelease pointer grab when cursor leaves window
Pierre Ossman [Mon, 18 Sep 2017 14:05:48 +0000 (16:05 +0200)]
Release pointer grab when cursor leaves window

We don't need the grab any more if the pointer cannot click on our
window. This makes it possible to shift focus to another application
when we aren't covering all monitors.

7 years agoDon't throw exceptions in destructors
Pierre Ossman [Fri, 15 Sep 2017 13:40:47 +0000 (15:40 +0200)]
Don't throw exceptions in destructors

7 years agoHandle unknown keysyms properly in x0vncserver
Pierre Ossman [Fri, 15 Sep 2017 13:34:43 +0000 (15:34 +0200)]
Handle unknown keysyms properly in x0vncserver

We would accidentally store they keycode 0 for unknown keysyms, wedging
the lookup table.

7 years agoHandle XKB groups properly in x0vncserver
Pierre Ossman [Fri, 15 Sep 2017 13:34:24 +0000 (15:34 +0200)]
Handle XKB groups properly in x0vncserver

7 years agoUpdate mouse cursor position in x0vncserver
Pierre Ossman [Fri, 15 Sep 2017 12:52:21 +0000 (14:52 +0200)]
Update mouse cursor position in x0vncserver

This is necessary to make sure the server side rendered cursor works
properly.

7 years agoOnly select XFixes event once
Pierre Ossman [Fri, 15 Sep 2017 12:23:34 +0000 (14:23 +0200)]
Only select XFixes event once

We never un-select it, and it's not a problem if we get extra ones so
register it once right away.

7 years agoMerge branch 'cursor' of https://github.com/alanc/tigervnc
Pierre Ossman [Fri, 15 Sep 2017 11:10:54 +0000 (13:10 +0200)]
Merge branch 'cursor' of https://github.com/alanc/tigervnc

7 years agoMerge branch 'fix-warnings'
Pierre Ossman [Fri, 15 Sep 2017 11:03:33 +0000 (13:03 +0200)]
Merge branch 'fix-warnings'

7 years agorfb: Avoid unused argument warnings in headers
Steve Kondik [Mon, 10 Jul 2017 15:56:00 +0000 (08:56 -0700)]
rfb: Avoid unused argument warnings in headers

Don't force users of these headers to squash compiler
warnings about unused arguments, annotate with __unused_attr.

7 years agoFix shift state test in lock key heuristics
Pierre Ossman [Tue, 12 Sep 2017 14:44:44 +0000 (16:44 +0200)]
Fix shift state test in lock key heuristics

7 years agoMerge branch 'x0vncshift' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Fri, 15 Sep 2017 09:17:02 +0000 (11:17 +0200)]
Merge branch 'x0vncshift' of https://github.com/CendioOssman/tigervnc

7 years agoMerge branch 'securemsg' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Fri, 15 Sep 2017 09:07:53 +0000 (11:07 +0200)]
Merge branch 'securemsg' of https://github.com/CendioOssman/tigervnc

7 years agoMerge branch 'qemukbd-merge' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Fri, 15 Sep 2017 09:03:48 +0000 (11:03 +0200)]
Merge branch 'qemukbd-merge' of https://github.com/CendioOssman/tigervnc

7 years agoClear client cursor when switching to server side
Pierre Ossman [Fri, 15 Sep 2017 09:03:12 +0000 (11:03 +0200)]
Clear client cursor when switching to server side

Otherwise the client can end up with two visible cursors.

7 years agoRemove unused FLTKPixelBuffer files
Pierre Ossman [Tue, 12 Sep 2017 10:07:21 +0000 (12:07 +0200)]
Remove unused FLTKPixelBuffer files

These are unused since 403ac27d, but the files were never removed.

7 years agoAdd support for raw keyboard in vncviewer 513/head
Pierre Ossman [Thu, 13 Jul 2017 13:54:11 +0000 (15:54 +0200)]
Add support for raw keyboard in vncviewer

Make sure it can map between the key codes of the local system
in to the key codes used by the protocol.

7 years agoFix indentation bug
Pierre Ossman [Tue, 16 May 2017 15:00:34 +0000 (17:00 +0200)]
Fix indentation bug

7 years agoAdd support for raw key codes to Xvnc/libvnc.so
Pierre Ossman [Tue, 16 May 2017 12:42:07 +0000 (14:42 +0200)]
Add support for raw key codes to Xvnc/libvnc.so

7 years agorfb_win32: Use scan codes if available
Rahul Kale [Wed, 12 Jul 2017 22:35:58 +0000 (00:35 +0200)]
rfb_win32: Use scan codes if available

If scan codes are available using QEMU Extended Keyboard Messages
from clients, use that to inject scancodes directly into the
system using the SendInput API.

No conversion is needed as Windows uses the same scancode encoding.

Signed-off-by: Rahul Kale <Rahul.Kale@barco.com>
Signed-off-by: Peter Korsgaard <peter.korsgaard@barco.com>
7 years agox0vncserver: keyEvent(): use scancodes if available
Peter Korsgaard [Wed, 12 Jul 2017 22:35:57 +0000 (00:35 +0200)]
x0vncserver: keyEvent(): use scancodes if available

Use the client provided (using QEMU extendend key event) scancodes if
available instead of reverse mapping the keysym.

X11 unfortunately uses keyboard driver specific keycodes and provides
no direct way to query this, so guess based on the keyboard mapping.

Handle the two most likely keyboard drivers, the old xorgkbd and evdev.

Signed-off-by: Peter Korsgaard <peter.korsgaard@barco.com>
7 years agoInclude server name in TLS handshake for SNI
Pierre Ossman [Fri, 8 Sep 2017 13:28:39 +0000 (15:28 +0200)]
Include server name in TLS handshake for SNI

In case the server is a front-end to multiple systems and needs to
know which system we're after.

7 years agoUse better security method description when using VeNCrypt 506/head
Pierre Ossman [Fri, 1 Sep 2017 09:15:57 +0000 (11:15 +0200)]
Use better security method description when using VeNCrypt

The sub-modules generally provide a better description than just the
short security method name.

7 years agoAdd better error message for insecure certificate algorithms
Pierre Ossman [Fri, 1 Sep 2017 09:15:31 +0000 (11:15 +0200)]
Add better error message for insecure certificate algorithms

7 years agoDisplay security state when asking for password
Pierre Ossman [Fri, 1 Sep 2017 09:14:35 +0000 (11:14 +0200)]
Display security state when asking for password

Indicate to the user how secure the transport channel is so they
can avoid entering their password for untrusted sites.

7 years agoMerge authentication dialogs
Pierre Ossman [Fri, 1 Sep 2017 07:24:43 +0000 (09:24 +0200)]
Merge authentication dialogs

Avoid having two separate code paths for the user/password and
only password dialogs. Makes it easier to extend things in the future.

7 years agoTrack keys based on client supplied key codes
Pierre Ossman [Tue, 16 May 2017 12:33:43 +0000 (14:33 +0200)]
Track keys based on client supplied key codes

This makes it easier to provide more sane events to the backend code
even with crazy clients.

7 years agoRemove unused needsLastRect state variable
Pierre Ossman [Tue, 16 May 2017 12:32:58 +0000 (14:32 +0200)]
Remove unused needsLastRect state variable

7 years agoFix wrong argument for CMsgWriter::clientCutText()
Pierre Ossman [Tue, 16 May 2017 12:32:09 +0000 (14:32 +0200)]
Fix wrong argument for CMsgWriter::clientCutText()

As a result we weren't overloading properly.

7 years agoBasic support for QEMU Extended Key Events
Pierre Ossman [Tue, 16 May 2017 12:30:38 +0000 (14:30 +0200)]
Basic support for QEMU Extended Key Events

This adds the basic infrastructure and handshake for the QEMU
Extended Key Events extension. No viewer or server makes use of
the extra functionality yet though.

7 years agorfb_win32: Add support for LED state notifications
Rahul Kale [Wed, 12 Jul 2017 22:36:02 +0000 (00:36 +0200)]
rfb_win32: Add support for LED state notifications

LED support added using Windows GetKeyState() API call.

The state is polled for change in CapsLock/NumLock/ScrollLock
status in the same code block where chages to Cursor shape is polled.

Signed-off-by: Rahul Kale <Rahul.Kale@barco.com>
Signed-off-by: Peter Korsgaard <peter.korsgaard@barco.com>
7 years agox0vncserver: add support for led state notifications
Peter Korsgaard [Wed, 12 Jul 2017 22:36:01 +0000 (00:36 +0200)]
x0vncserver: add support for led state notifications

Listen for XKb XkbIndicatorStateNotify events for scroll/num/caps lock and
map them to the RFB protocol.

Signed-off-by: Peter Korsgaard <peter.korsgaard@barco.com>
7 years agoSend lock LED state from server to client
Pierre Ossman [Mon, 12 Dec 2016 15:59:15 +0000 (16:59 +0100)]
Send lock LED state from server to client

7 years agoAdd support for lock LED state to Xvnc/libvnc.so
Pierre Ossman [Mon, 12 Dec 2016 14:39:54 +0000 (15:39 +0100)]
Add support for lock LED state to Xvnc/libvnc.so

7 years agoAdd server side lock key sync heuristic
Pierre Ossman [Sun, 11 Dec 2016 11:41:26 +0000 (12:41 +0100)]
Add server side lock key sync heuristic

Based on QEMU's behaviour.

7 years agoSync LED state when gaining focus
Pierre Ossman [Sat, 10 Dec 2016 16:13:40 +0000 (17:13 +0100)]
Sync LED state when gaining focus

The state might have changed when we didn't have focus. Get
everything back in sync once we're back in control.

7 years agoAdd client support for LED state sync
Pierre Ossman [Mon, 5 Dec 2016 14:26:21 +0000 (15:26 +0100)]
Add client support for LED state sync

7 years agoAdd libpng as a dependency for freetype for static builds
Pierre Ossman [Thu, 24 Aug 2017 09:28:33 +0000 (11:28 +0200)]
Add libpng as a dependency for freetype for static builds

Newer versions of Freetype requires libpng as well.

7 years agoRespect modifiers in x0vncserver 496/head
Pierre Ossman [Wed, 16 Aug 2017 13:20:20 +0000 (15:20 +0200)]
Respect modifiers in x0vncserver

Using XKeysymToKeycode() often gives the incorrect keycode as it
doesn't respect the current modifier state. Use XKB to find the
proper key instead.

This however also means that we need to track the mapping for all
pressed keys to make sure we know the correct keycode when it is
time to release the key.

7 years agoSupport clients that only support alpha cursors
Pierre Ossman [Wed, 16 Aug 2017 14:26:11 +0000 (16:26 +0200)]
Support clients that only support alpha cursors

7 years agoSend cursor pseudo-encodings in order of preference
Pierre Ossman [Wed, 16 Aug 2017 14:25:24 +0000 (16:25 +0200)]
Send cursor pseudo-encodings in order of preference

Some servers respect the ordering of pseudo-encodings as well, so
make sure we list the best one first.

7 years agoFully implement support for alpha cursor pseudo encoding.
Brian P. Hinz [Sun, 13 Aug 2017 00:19:50 +0000 (20:19 -0400)]
Fully implement support for alpha cursor pseudo encoding.
Alpha cursors are not supported in java on Windows so disable
it in that case.  Ideally it would be nice to be able to test
whether or not the client OS supports it, but at the moment
MS Windows is the only one that I'm aware of that doesn't.

7 years agoUpdate min version of gettext required to build with .desktop files
Brian P. Hinz [Wed, 9 Aug 2017 02:21:14 +0000 (22:21 -0400)]
Update min version of gettext required to build with .desktop files

.desktop files support was not added to msgfmt until v0.19

7 years agoFixed issue where CLI paramters specified as "-param value" caused
Brian P. Hinz [Sun, 6 Aug 2017 19:00:09 +0000 (15:00 -0400)]
Fixed issue where CLI paramters specified as "-param value" caused
a java.nio.BufferOverflowException while the same parameter specified
as "-param=value" worked fine.

7 years agoFixed issue where -dotWhenNoCUrsor cli arg was not being honored
Brian P. Hinz [Sun, 6 Aug 2017 18:59:09 +0000 (14:59 -0400)]
Fixed issue where -dotWhenNoCUrsor cli arg was not being honored

7 years agox0vncserver: Use Xfixes to display cursors if available 493/head
Alan Coopersmith [Sat, 5 Aug 2017 22:16:29 +0000 (15:16 -0700)]
x0vncserver: Use Xfixes to display cursors if available

https://github.com/TigerVNC/tigervnc/issues/361

This is a simple implementation that refetches and transforms the cursor
image every time it changes, and doesn't use the cursor naming functions
of the XFixes extension to save & cache cursor images.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
7 years agoFix for NPE when zero width or height alpha cursor is sent
Brian P. Hinz [Fri, 4 Aug 2017 01:14:54 +0000 (21:14 -0400)]
Fix for NPE when zero width or height alpha cursor is sent

7 years agoHandle certificate verification for saved certs correctly
Brian P. Hinz [Thu, 20 Jul 2017 02:54:09 +0000 (22:54 -0400)]
Handle certificate verification for saved certs correctly

7 years agoAllow multiple certs with same DN in saved certs file.
Brian P. Hinz [Wed, 12 Jul 2017 03:23:01 +0000 (23:23 -0400)]
Allow multiple certs with same DN in saved certs file.

7 years agoAdd fallbacks for translating .desktop file
Pierre Ossman [Fri, 21 Jul 2017 12:07:15 +0000 (14:07 +0200)]
Add fallbacks for translating .desktop file

Only fairly recent versions of gettext can translate .desktop files.
So fall back to the older intltool on older systems, or just a plain
copy if intltool is also missing.

7 years agoIncrease default pointer event interval
Pierre Ossman [Wed, 19 Jul 2017 09:20:53 +0000 (11:20 +0200)]
Increase default pointer event interval

Some systems (e.g. macOS) send massive amounts of pointer events, so
we need to start rate limiting things to something sensible by default.
One event per screen refresh should be more than sufficient.

7 years agoAllow removal of GUI prompt on fatal errors
Dr. David Alan Gilbert [Tue, 11 Jul 2017 11:11:50 +0000 (12:11 +0100)]
Allow removal of GUI prompt on fatal errors

Add a new parameter 'alertOnFatalError' which guards
the displaying of the GUI alert on fatal errors, and
thus when false just gives the textual error.

Now I can do:

  while true
  do
    vncviewer alertOnFatalError=false vm:0
    sleep 1
  done

and it'll reappear when my VM appears without me getting error
dialogs.

Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
--

7 years agoAdd generic name to .desktop file
Pierre Ossman [Wed, 19 Jul 2017 08:57:46 +0000 (10:57 +0200)]
Add generic name to .desktop file

This often gives the user more information about what kind of
application this is.

7 years agoGenerate translations in .desktop file from po files
Pierre Ossman [Wed, 19 Jul 2017 08:56:21 +0000 (10:56 +0200)]
Generate translations in .desktop file from po files

7 years agoMove languages to standard LINGUAS file
Pierre Ossman [Wed, 19 Jul 2017 08:57:00 +0000 (10:57 +0200)]
Move languages to standard LINGUAS file

This is necessary for other translation tools to work properly.

7 years agoMerge branch 'patch-1' of https://github.com/scootergrisen/tigervnc
Pierre Ossman [Wed, 19 Jul 2017 08:21:57 +0000 (10:21 +0200)]
Merge branch 'patch-1' of https://github.com/scootergrisen/tigervnc

7 years agoAdd danish translation 486/head
scootergrisen [Thu, 13 Jul 2017 22:57:07 +0000 (00:57 +0200)]
Add danish translation

7 years agossize_t must be signed even in windows 485/head
Sayed Adel [Tue, 11 Jul 2017 22:17:55 +0000 (00:17 +0200)]
ssize_t must be signed even in windows

7 years agorfb: vsnprintf returns an int, not size_t
Steve Kondik [Sat, 8 Jul 2017 09:08:43 +0000 (02:08 -0700)]
rfb: vsnprintf returns an int, not size_t

Fixes:

/home/shade/dev/tigervnc/common/rfb/util.cxx:55:13: error: comparison of unsigned expression < 0 is always false [-Werror,-Wtautological-compare]
    if (len < 0) {
        ~~~ ^ ~
1 error generated.

7 years agorfb: Silence nonliteral format string warning in Logger
Steve Kondik [Sat, 8 Jul 2017 09:06:16 +0000 (02:06 -0700)]
rfb: Silence nonliteral format string warning in Logger

Clang complains loudly about this with Wformat=2, so add
a __printf_attr to help out.

Fixes:

/home/shade/dev/tigervnc/common/rfb/Logger.cxx:48:35: error: format string is not a string literal [-Werror,-Wformat-nonliteral]
  vsnprintf(buf1, sizeof(buf1)-1, format, ap);
                                  ^~~~~~
1 error generated.

7 years agorfb: Fix inheritance in CMsgWriter
Steve Kondik [Sat, 8 Jul 2017 09:04:41 +0000 (02:04 -0700)]
rfb: Fix inheritance in CMsgWriter

InputHandler declares the second parameter of clientCutText
as an int.

Fixes:

/home/shade/dev/tigervnc/common/rfb/CMsgWriter.h:60:18: error: 'rfb::CMsgWriter::clientCutText' hides overloaded virtual function [-Werror,-Woverloaded-virtual]
    virtual void clientCutText(const char* str, rdr::U32 len);
                 ^
/home/shade/dev/tigervnc/common/rfb/InputHandler.h:36:18: note: hidden overloaded virtual function 'rfb::InputHandler::clientCutText' declared here: type mismatch at 2nd parameter ('int' vs 'rdr::U32' (aka 'unsigned int'))
    virtual void clientCutText(const char* str, int len) {}
                 ^

7 years agorfb: Fix struct-vs-class warnings
Steve Kondik [Sat, 8 Jul 2017 09:00:49 +0000 (02:00 -0700)]
rfb: Fix struct-vs-class warnings

Clang doesn't like when struct and class are used to refer
to the same thing interchangeably.

Fixes all instances of:

In file included from /home/shade/dev/tigervnc/common/rfb/CConnection.cxx:29:
In file included from /home/shade/dev/tigervnc/common/rfb/CConnection.h:28:
/home/shade/dev/tigervnc/common/rfb/DecodeManager.h:35:3: error: class 'Exception' was previously declared as a struct [-Werror,-Wmismatched-tags]
  class Exception;
  ^
/home/shade/dev/tigervnc/common/rdr/Exception.h:32:10: note: previous use is here
  struct Exception {
         ^
/home/shade/dev/tigervnc/common/rfb/DecodeManager.h:35:3: note: did you mean struct here?
  class Exception;
  ^~~~~
  struct
/home/shade/dev/tigervnc/common/rfb/DecodeManager.h:43:3: error: class 'Rect' was previously declared as a struct [-Werror,-Wmismatched-tags]
  class Rect;
  ^
/home/shade/dev/tigervnc/common/rfb/Rect.h:68:10: note: previous use is here
  struct Rect {
         ^
/home/shade/dev/tigervnc/common/rfb/DecodeManager.h:43:3: note: did you mean struct here?
  class Rect;
  ^~~~~
  struct

7 years agordr: Fix incorrect error checking after fread()
Steve Kondik [Sat, 8 Jul 2017 08:57:16 +0000 (01:57 -0700)]
rdr: Fix incorrect error checking after fread()

fread() returns size_t, which is unsigned. Don't check
for negative values to avoid warnings from Clang.

/home/shade/dev/tigervnc/common/rdr/FileInStream.cxx:74:13: error: comparison of unsigned expression < 0 is always false [-Werror,-Wtautological-compare]
      if (n < 0 || ferror(file))
          ~ ^ ~

7 years agoAdd missing virtual destructors
Steve Kondik [Sat, 8 Jul 2017 08:49:14 +0000 (01:49 -0700)]
Add missing virtual destructors

Fix warnings emitted by Clang:

/home/shade/dev/tigervnc/common/rdr/FdInStream.h:30:9: error: 'rdr::FdInStreamBlockCallback' has virtual functions but non-virtual destructor [-Werror,-Wnon-virtual-dtor]
  class FdInStreamBlockCallback {
        ^
In file included from /home/shade/dev/tigervnc/common/network/TcpSocket.cxx:44:
In file included from /home/shade/dev/tigervnc/common/network/TcpSocket.h:31:
/home/shade/dev/tigervnc/common/network/Socket.h:82:9: error: 'network::ConnectionFilter' has virtual functions but non-virtual destructor [-Werror,-Wnon-virtual-dtor]
  class ConnectionFilter {
        ^
..etc

7 years agorfb: Fix hidden function overload warnings
Steve Kondik [Sat, 8 Jul 2017 08:45:10 +0000 (01:45 -0700)]
rfb: Fix hidden function overload warnings

Fix the following warnings emitted by Clang:

/home/shade/dev/tigervnc/common/rfb/Configuration.h:164:18: note: hidden overloaded virtual function 'rfb::VoidParameter::setParam' declared here: different number of parameters (0 vs 1)
    virtual bool setParam();
                 ^
/home/shade/dev/tigervnc/common/rfb/Configuration.h:256:18: error: 'rfb::BinaryParameter::setParam' hides overloaded virtual function [-Werror,-Woverloaded-virtual]
    virtual void setParam(const void* v, int l);
                 ^
/home/shade/dev/tigervnc/common/rfb/Configuration.h:164:18: note: hidden overloaded virtual function 'rfb::VoidParameter::setParam' declared here: different number of parameters (0 vs 2)
    virtual bool setParam();