San Mehat | a430b2b | 2014-09-23 08:30:51 -0700 | [diff] [blame] | 1 | 0.9.9 |
| 2 | - Overall changes: |
| 3 | * Added noVNC HTML5 VNC viewer (http://kanaka.github.com/noVNC/) connect possibility |
| 4 | to our http server. Pure JavaScript, no Java plugin required anymore! (But a |
| 5 | recent browser...) |
| 6 | * Added a GTK+ VNC viewer example. |
| 7 | |
| 8 | - LibVNCServer/LibVNCClient: |
| 9 | * Added support to build for Google Android. |
| 10 | * Complete IPv6 support in both LibVNCServer and LibVNCClient. |
| 11 | |
| 12 | - LibVNCServer: |
| 13 | * Split two event-loop related functions out of the rfbProcessEvents() mechanism. |
| 14 | This is required to be able to do proper event loop integration with Qt. Idea was |
| 15 | taken from Vino's libvncserver fork. |
| 16 | * Added TightPNG (http://wiki.qemu.org/VNC_Tight_PNG) encoding support. Like the |
| 17 | original Tight encoding, this still uses JPEG, but ZLIB encoded rects are encoded |
| 18 | with PNG here. |
| 19 | * Added suport for serving VNC sessions through WebSockets |
| 20 | (http://en.wikipedia.org/wiki/WebSocket), a web technology providing for multiplexing |
| 21 | bi-directional, full-duplex communications channels over a single TCP connection. |
| 22 | * Support connections from the Mac OS X built-in VNC client to LibVNCServer |
| 23 | instances running with no password. |
| 24 | * Replaced the Tight encoder with a TurboVNC one which is tremendously faster in most |
| 25 | cases, especially with high-color video or 3D workloads. |
| 26 | (http://www.virtualgl.org/pmwiki/uploads/About/tighttoturbo.pdf) |
| 27 | |
| 28 | - LibVNCClient: |
| 29 | * Added support to only listen for reverse connections on a specific IP address. |
| 30 | * Support for using OpenSSL instead of GnuTLS. This could come in handy on embedded |
| 31 | devices where only this TLS implementation is available. |
| 32 | * Added support to connect to UltraVNC Single Click servers. |
| 33 | |
| 34 | 0.9.8.2 |
| 35 | - Fixed a regression that crept in with the Apple Remote Desktop support. |
| 36 | |
| 37 | 0.9.8.1 |
| 38 | - Fixed an ABI compatibility issue. |
| 39 | |
| 40 | 0.9.8 |
| 41 | - Overall changes: |
| 42 | * Automagically generated API documentation using doxygen. |
| 43 | * Added support for pkg-config. |
| 44 | * Fixed Mingw32 cross compilation. |
| 45 | * Fixed CMake build system. |
| 46 | |
| 47 | - LibVNCServer/LibVNCClient: |
| 48 | * All files used by _both_ LibVNCServer and LibVNCClient were put into |
| 49 | a 'common' directory, reducing code duplication. |
| 50 | * Implemented xvp VNC extension. |
| 51 | * Updated minilzo library used for Ultra encoding to ver 2.04. |
| 52 | According to the minilzo README, this brings a significant |
| 53 | speedup on 64-bit architechtures. |
| 54 | |
| 55 | - LibVNCServer: |
| 56 | * Thread safety for ZRLE, Zlib, Tight, RRE, CoRRE and Ultra encodings. |
| 57 | This makes all VNC encodings safe to use with a multithreaded server. |
| 58 | * A DisplayFinishedHook for LibVNCServer. If set, this hook gets called |
| 59 | just before rfbSendFrameBufferUpdate() returns. |
| 60 | * Fix for tight security type for RFB 3.8 in TightVNC file transfer |
| 61 | (Debian Bug #517422). |
| 62 | |
| 63 | - LibVNCClient: |
| 64 | * Unix sockets support. |
| 65 | * Anonymous TLS security type support. |
| 66 | * VeNCrypt security type support. |
| 67 | * MSLogon security type support. |
| 68 | * ARD (Apple Remote Desktop) security type support. |
| 69 | * UltraVNC Repeater support. |
| 70 | * A new FinishedFrameBufferUpdate callback that is invoked after each |
| 71 | complete framebuffer update. |
| 72 | * A new non-forking listen (reverse VNC) function that works under |
| 73 | Windows. |
| 74 | * IPv6 support. LibVNCClient is now able to connect to IPv6 VNC servers. |
| 75 | * IP QoS support. This enables setting the DSCP/Traffic Class field of |
| 76 | IP/IPv6 packets sent by a client. For example starting a client with |
| 77 | -qosdscp 184 marks all outgoing traffic for expedited forwarding. |
| 78 | Implementation for Win32 is still a TODO, though. |
| 79 | * Fixed hostname resolution problems under Windows. |
| 80 | |
| 81 | - SDLvncviewer |
| 82 | * Is now resizable and can do key repeat, mouse wheel scrolling |
| 83 | and clipboard copy and paste. |
| 84 | |
| 85 | - LinuxVNC: |
| 86 | * Fix for no input possible because of ctrl key being stuck. |
| 87 | Issue was reported as Debian bug #555988. |
| 88 | |
| 89 | |
| 90 | 0.9.7 |
| 91 | Mark sent me patches to no longer need C++ for ZRLE encoding! |
| 92 | added --disable-cxx Option for configure |
| 93 | x11vnc changes from Karl Runge: |
| 94 | - Changed all those whimpy printf(...)'s into manly fprintf(stdxxx,...)'s. |
| 95 | |
| 96 | - Added -q switch (quiet) to suppress printing all the debug-looking output. |
| 97 | |
| 98 | - Added -bg switch to fork into background after everything is set up. |
| 99 | (checks for LIBVNCSERVER_HAVE_FORK and LIBVNCSERVER_HAVE_SETSID) |
| 100 | |
| 101 | - Print this string out to stdout: 'PORT=XXXX' (usually XXXX = 5900). |
| 102 | Combining with -bg, easy to write a ssh/rsh wrapper with something like: |
| 103 | port=`ssh $host "x11vnc -bg .."` then run vncviewer based on $port output. |
| 104 | (tunneling the vnc traffic thru ssh a bit more messy, but doable) |
| 105 | |
| 106 | - Quite a bit of code to be more careful when doing 8bpp indexed color, e.g. |
| 107 | not assuming NCOLORS is 256, handling 8bit TrueColor and Direct Color, etc |
| 108 | (I did all this probably in April, not quite clear in my mind now, but |
| 109 | I did test it out a fair amount on my old Sparcstation 20 wrt a user's |
| 110 | questions). |
| 111 | introduce rfbErr for Errors (Erik) |
| 112 | make rfbLog overridable (suggested by Erik) |
| 113 | don't reutrn on EINTR in WriteExact()/ReadExact() (suggested by Erik) |
| 114 | use AX_PREFIX_CONFIG_H to prefix constants in config.h to avoid |
| 115 | name clashes (also suggested by Erik) |
| 116 | transformed Bool, KeySym, Pixel to rfbBool, rfbKeySym, rfbPixel |
| 117 | (as suggested by Erik) |
| 118 | purged exit() calls (suggested by Erik) |
| 119 | fixed bug with maxRectsPerUpdate and Tight Encoding (these are incompatible) |
| 120 | checked sync with TightVNC 1.2.8: |
| 121 | viewonly/full passwords; if given a list, only the first is a full one |
| 122 | vncRandomBytes is a little more secure now |
| 123 | new weights for tight encoding |
| 124 | checked sync with RealVNC 3.3.7 |
| 125 | introduced maxRectsPerUpdate |
| 126 | added first alpha version of LibVNCClient |
| 127 | added simple and simple15 example (really simple examples) |
| 128 | finally got around to fix configure in CVS |
| 129 | long standing http bug (.jar was sent twice) fixed by a friend of Karl named Mike |
| 130 | http options in cargs |
| 131 | when closing a client and no longer listening for new ones, don't crash |
| 132 | fixed a bug with ClientConnectionGone |
| 133 | endianness is checked at configure time |
| 134 | fixed a bug that prevented the first client from being closed |
| 135 | fixed that annoying "libvncserver-config --link" bug |
| 136 | make rfbReverseByte public (for rdp2vnc) |
| 137 | fixed compilation on OS X, IRIX, Solaris |
| 138 | install target for headers is now ${prefix}/include/rfb ("#include <rfb/rfb.h>") |
| 139 | renamed "sraRegion.h" to "rfbregion.h" |
| 140 | CARD{8,16,32} are more standard uint{8,16,32}_t now |
| 141 | fixed LinuxVNC colour handling |
| 142 | fixed a bug with pthreads where the connection was not closed |
| 143 | moved vncterm to main package (LinuxVNC included) |
| 144 | portability fixes (IRIX, OSX, Solaris) |
| 145 | more portable way to determine endianness and types of a given size |
| 146 | through autoconf based methods |
| 147 | 0.5 |
| 148 | rpm packaging through autoconf |
| 149 | autoconf'ed the whole package (including optional support for zlib, |
| 150 | pthreads and libjpeg as well as zrle/c++) |
| 151 | moved appropriate files to contrib/ and examples/ respectively |
| 152 | fixed long standing cargs bug (Justin "Zippy" Dearing) |
| 153 | Even better x11vnc from Karl J. Runge! (supports different kbd layouts of |
| 154 | client/server) |
| 155 | Better x11vnc from Karl J. Runge! |
| 156 | fixed severe bug (Const Kaplinsky) |
| 157 | got patch from Const Kaplisnky with CursorPosUpdate encoding and some Docs |
| 158 | sync'ed with newest RealVNC (ZRLE encoding) |
| 159 | a HTTP request for tunnelling was added (to fool strict web proxies) |
| 160 | sync'ed with TightVNC 1.2.5 |
| 161 | 0.4 |
| 162 | support for NewFB from Const Kaplinsky |
| 163 | memory leaks squashed (localtime pseudo leak is still there :-) |
| 164 | small improvements for OSXvnc (still not working correctly) |
| 165 | synced with TightVNC 1.2.3 |
| 166 | solaris compile cleanups |
| 167 | many x11vnc improvements |
| 168 | added backchannel, an encoding which needs special clients to pass |
| 169 | arbitrary data to the client |
| 170 | changes from Tim Jansen regarding multi threading and client blocking |
| 171 | as well as C++ compliancy |
| 172 | x11vnc can be controlled by starting again with special options if compiling |
| 173 | with LOCAL_CONTROL defined |
| 174 | 0.3 |
| 175 | added x11vnc, a x0rfbserver clone |
| 176 | regard deferUpdateTime in processEvents, if usec<0 |
| 177 | initialize deferUpdateTime (memory "leak"!) |
| 178 | changed command line handling (arguments are parsed and then removed) |
| 179 | added very simple example: zippy |
| 180 | added rfbDrawLine, rfbDrawPixel |
| 181 | 0.2 |
| 182 | inserted a deferUpdate mechanism (X11 independent). |
| 183 | removed deletion of requestedRegion |
| 184 | added rfbLoadConsoleFont |
| 185 | fixed font colour handling. |
| 186 | added rfbSelectBox |
| 187 | added rfbDrawCharWithClip to allow for clipping and a background colour. |
| 188 | fixed font colours |
| 189 | added rfbFillRect |
| 190 | added IO function to check password. |
| 191 | rfbNewClient now sets the socket in the fd_set (for the select() call) |
| 192 | when compiling the library with HAVE_PTHREADS and an application |
| 193 | which includes "rfb.h" without, the structures got mixed up. |
| 194 | So, the pthreads section is now always at the end, and also |
| 195 | you get a linker error for rfbInitServer when using two different |
| 196 | pthread setups. |
| 197 | fixed two deadlocks: when setting a cursor and when using CopyRect |
| 198 | fixed CopyRect when copying modified regions (they lost the modified |
| 199 | property) |
| 200 | WIN32 target compiles and works for example :-) |
| 201 | fixed CopyRect (was using the wrong order of rectangles...) |
| 202 | should also work with pthreads, because copyrects are |
| 203 | always sent immediately (so that two consecutive copy rects |
| 204 | cannot conflict). |
| 205 | changed rfbUndrawCursor(rfbClientPtr) to (rfbScreenInfoPtr), because |
| 206 | this makes more sense! |
| 207 | flag backgroundLoop in rfbScreenInfo (if having pthreads) |
| 208 | CopyRect & CopyRegion were implemented. |
| 209 | if you use a rfbDoCopyR* function, it copies the data in the |
| 210 | framebuffer. If you prefer to do that yourself, use rfbScheduleCopyR* |
| 211 | instead; this doesn't modify the frameBuffer. |
| 212 | added flag to optionally not send XCursor updates, but only RichCursor, |
| 213 | or if that is not possible, fall back to server side cursor. |
| 214 | This is useful if your cursor has many nice colours. |
| 215 | fixed java viewer on server side: |
| 216 | SendCursorUpdate would send data even before the client pixel format |
| 217 | was set, but the java applet doesn't like the server's format. |
| 218 | fixed two pthread issues: |
| 219 | rfbSendFramebuffer was sent by a ProcessClientMessage function |
| 220 | (unprotected by updateMutex). |
| 221 | cursor coordinates were set without protection by cursorMutex |
| 222 | source is now equivalent to TridiaVNC 1.2.1 |
| 223 | pthreads now work (use iterators!) |
| 224 | cursors are supported (rfbSetCursor automatically undraws cursor) |
| 225 | support for 3 bytes/pixel (slow!) |
| 226 | server side colourmap support |
| 227 | fixed rfbCloseClient not to close the connection (pthreads!) |
| 228 | this is done lazily (and with proper signalling). |
| 229 | cleaned up mac.c (from original OSXvnc); now compiles (untested!) |
| 230 | compiles cleanly on Linux, IRIX, BSD, Apple (Darwin) |
| 231 | fixed prototypes |
| 232 | 0.1 |
| 233 | rewrote API to use pseudo-methods instead of required functions. |
| 234 | lots of clean up. |
| 235 | Example can show symbols now. |
| 236 | All encodings |
| 237 | HTTP |