aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Removed IRIX/Solaris overlay supportPeter Åstrand (astrand)2017-11-085-289/+4
| | | | Legacy systems.
* Remove support for Lynx/OSPeter Åstrand (astrand)2017-11-084-20/+0
|
* Added my/Cendio copyright where relevantPeter Åstrand (astrand)2017-11-084-0/+4
|
* Set the correct cursor when startingPeter Åstrand (astrand)2017-11-082-6/+16
| | | | | XFixes only reports cursor changes. We must manually call XFixesGetCursorImage() when starting.
* Use send() with MSG_DONTWAIT when possiblePeter Åstrand (astrand)2017-11-081-1/+9
|
* Define cork() as pure virtual in Socket classPeter Åstrand (astrand)2017-11-084-7/+8
| | | | | | 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.
* Move XDesktop to separate filePeter Åstrand (astrand)2017-11-084-419/+499
| | | | Define ledNames in XDesktop.cxx, rename N_LEDS to XDESKTOP_N_LEDS
* Using namespace rfb in header files is a bad ideaPeter Åstrand (astrand)2017-11-075-17/+15
|
* Build with support for MIT-SHMPeter Åstrand (astrand)2017-11-072-11/+1
| | | | No need for ifdefs; we can assume MITSHM. Already done in vncviewer.
* Add debug trace when the clipboard changesPierre Ossman2017-10-121-0/+3
|
* Don't validate timestamp on clipboard requestPierre Ossman2017-10-121-7/+5
| | | | | The normal Xorg server doesn't check this field, so neither can we as there are applications relying on this leniancy.
* Make exception classes have clearer messagesPierre Ossman2017-10-126-39/+47
| | | | | Include the type of exception in the string generated by each subclass. Also simplify the constructs to what is needed.
* Add Travis CI configurationPierre Ossman2017-10-061-0/+17
|
* Improve test if library is a CMake targetPierre Ossman2017-10-061-2/+1
| | | | | Newer CMake complains when you try to get the property of something that isn't a target so use the specific if operator instead.
* Avoid getting LOCATION propertyPierre Ossman2017-10-061-3/+2
| | | | | It's not supported in newer CMake, so try to deduce the library filename from the target name.
* Push query connect timeout back in to XvncPierre Ossman2017-10-046-21/+30
| | | | | | 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.
* Don't queue a query if it is directly rejectedPierre Ossman2017-10-041-6/+6
| | | | | Otherwise we'll wedge the desktop object which expects an approval or rejection to eventually show up.
* Keep alpha in cursor alpha conversionPierre Ossman2017-10-021-1/+0
| | | | | Don't touch the existing value or we might mess it up when we avoid division by zero.
* Use current server time for XUngrabKeyboardPierre Ossman2017-10-021-1/+1
| | | | | We might be calling this outside a normal FLTK event, so we cannot trust fl_event_time to have a sane value.
* Remove accidental debug outputPierre Ossman2017-09-221-1/+0
|
* Make sure to start the frame timer after a buffer changePierre Ossman2017-09-221-0/+1
| | | | | The buffer is considered changed right away, so we might not get any add_changed() calls to trigger a start of the timer.
* Get rid of getFbSize()/getDesktopSize() in commonPierre Ossman2017-09-229-20/+15
| | | | It was only used by WinVNC, so push it there instead.
* Switch back to low resolution mode on macOSPierre Ossman2017-09-211-1/+1
| | | | | | 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.
* Update keyboard test notes for raw keyboard modePierre Ossman2017-09-181-4/+20
|
* Add keyboard test notes for LED state handlingPierre Ossman2017-09-181-1/+12
|
* Be explicit which Exception class we wantPierre Ossman2017-09-181-2/+2
|
* Release pointer grab when cursor leaves windowPierre Ossman2017-09-182-13/+77
| | | | | | 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.
* Don't throw exceptions in destructorsPierre Ossman2017-09-151-10/+2
|
* Handle unknown keysyms properly in x0vncserverPierre Ossman2017-09-151-1/+1
| | | | | We would accidentally store they keycode 0 for unknown keysyms, wedging the lookup table.
* Handle XKB groups properly in x0vncserverPierre Ossman2017-09-151-2/+5
|
* Update mouse cursor position in x0vncserverPierre Ossman2017-09-151-0/+8
| | | | | This is necessary to make sure the server side rendered cursor works properly.
* Only select XFixes event oncePierre Ossman2017-09-151-11/+4
| | | | | We never un-select it, and it's not a problem if we get extra ones so register it once right away.
* Merge branch 'cursor' of https://github.com/alanc/tigervncPierre Ossman2017-09-152-2/+93
|\
| * x0vncserver: Use Xfixes to display cursors if availableAlan Coopersmith2017-08-052-12/+106
| | | | | | | | | | | | | | | | | | | | 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>
* | Merge branch 'fix-warnings'Pierre Ossman2017-09-1520-21/+54
|\ \
| * | rfb: Avoid unused argument warnings in headersSteve Kondik2017-09-154-7/+18
| | | | | | | | | | | | | | | Don't force users of these headers to squash compiler warnings about unused arguments, annotate with __unused_attr.
| * | rfb: vsnprintf returns an int, not size_tSteve Kondik2017-07-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | rfb: Silence nonliteral format string warning in LoggerSteve Kondik2017-07-102-4/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | rfb: Fix inheritance in CMsgWriterSteve Kondik2017-07-082-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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) {} ^
| * | rfb: Fix struct-vs-class warningsSteve Kondik2017-07-085-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * | rdr: Fix incorrect error checking after fread()Steve Kondik2017-07-081-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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)) ~ ^ ~
| * | Add missing virtual destructorsSteve Kondik2017-07-086-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * | rfb: Fix hidden function overload warningsSteve Kondik2017-07-081-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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();
* | | Fix shift state test in lock key heuristicsPierre Ossman2017-09-152-18/+18
| | |
* | | Merge branch 'x0vncshift' of https://github.com/CendioOssman/tigervncPierre Ossman2017-09-151-4/+52
|\ \ \
| * | | Respect modifiers in x0vncserverPierre Ossman2017-08-211-4/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | | Merge branch 'securemsg' of https://github.com/CendioOssman/tigervncPierre Ossman2017-09-1517-28/+415
|\ \ \ \
| * | | | Use better security method description when using VeNCryptPierre Ossman2017-09-012-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | The sub-modules generally provide a better description than just the short security method name.
| * | | | Add better error message for insecure certificate algorithmsPierre Ossman2017-09-011-0/+3
| | | | |
| * | | | Display security state when asking for passwordPierre Ossman2017-09-0116-7/+370
| | | | | | | | | | | | | | | | | | | | | | | | | Indicate to the user how secure the transport channel is so they can avoid entering their password for untrusted sites.