ggivnc project is a VNC client using libraries from the GGI project to draw graphics and handle input.
The reason this VNC client came about was to fill the need for a companion to the VNC target in libggi. All existing VNC code was at the time of writing and to the best of my knowledge GPL and originating from the original AT&T code base (either that, or hidden from sight). This VNC client is an implementation from scratch featuring the following encodings:
Raw, CopyRect, RRE, CoRRE, Hextile, Zlib, ZlibHex, ZRLE and LastRect.
What's New in This Release:
· Added --gii option to overcome the removal of the GGI_INPUT environment variable in libggi-current. Makes automation work.
· Reduced memory footprint by making different encodings share work buffer.
· Add support for the WMVi pseudo-encoding.
· When other rectangles appear after a DesktopSize pseudo-rectangle in a FramebufferUpdate message, take the new desktop size into account when interpreting those following rectangles (this is a corner case, the specification requires DesktopSize pseudo-rectangles to be last).
· Fix handling of write(2) to handle short writes and other "unusual" events.
· Fix visual glitch where the visual was sometimes resized after the full update - requested as a result of desktop-size changes on the server - was received. The bad ordering resulted in black areas and mostly affected users with GGI 2.2.x. Reported by Christoph Egger (and associate).
· Fix segfault on desktop-size when using stable GGI 2.2.x. Reported by Christoph Egger (and associate).
· Copy/paste support for rfb (no copy/paste support in the widgets yet).
· Add preliminary support for reversed connections.
· Add support for the TightVNC protocol extension (security type 16).
· Add support for the desktop name pseudo-encoding.
· Add possibility to control what RFB protocol version to use.
· Make use of hstrerror() if it is suitable and available.
· Add support for long options, i.e. --encodings etc.