Commit Graph

66 Commits (53cc1fa18a3b96d2c31a145d971017564fca39bb)

Author SHA1 Message Date
Stefan Weil 9c7efb7633 Fix some typos (found by codespell)
Signed-off-by: Stefan Weil <sw@weilnetz.de>
9 years ago
Christian Beier 612de004c4 Revert "LibVNCClient: Add H.264 encoding for framebuffer updates"
This reverts commit d891478ec9.

Conflicts:
	configure.ac
	libvncclient/h264.c
10 years ago
Floris Bos aaee22aaa2 Fix compiler warnings libvncclient + gtkvncviewer
Fixes the following compiler warnings.

gtkvncviewer:

==
  CC       gtkvncviewer-gtkvncviewer.o
gtkvncviewer.c: In function ‘GtkDefaultLog’:
gtkvncviewer.c:591:2: warning: format not a string literal and no format arguments [-Wformat-security]
  fprintf (stdout, buf);
  ^
==

libvncclient:

==
  CC       rfbproto.lo
In file included from rfbproto.c:2376:0:
zrle.c: In function 'HandleZRLE8':
zrle.c:201:5: warning: pointer targets in passing argument 2 of 'HandleZRLETile8' differ in signedness [-Wpointer-sign]
     int result=HandleZRLETile(client,buf,remaining,rx+i,ry+j,subWidth,subHeight);
     ^
zrle.c:37:33: note: expected 'uint8_t *' but argument is of type 'char *'
 #define HandleZRLETile CONCAT2E(HandleZRLETile,REALBPP)
                                 ^
rfbproto.c:2364:22: note: in definition of macro 'CONCAT2'
 #define CONCAT2(a,b) a##b
                      ^
zrle.c:37:24: note: in expansion of macro 'CONCAT2E'
 #define HandleZRLETile CONCAT2E(HandleZRLETile,REALBPP)
                        ^
zrle.c:79:12: note: in expansion of macro 'HandleZRLETile'
 static int HandleZRLETile(rfbClient* client,
            ^
In file included from rfbproto.c:2385:0:
zrle.c: In function 'HandleZRLE16':
zrle.c:201:5: warning: pointer targets in passing argument 2 of 'HandleZRLETile16' differ in signedness [-Wpointer-sign]
     int result=HandleZRLETile(client,buf,remaining,rx+i,ry+j,subWidth,subHeight);
     ^
zrle.c:37:33: note: expected 'uint8_t *' but argument is of type 'char *'
 #define HandleZRLETile CONCAT2E(HandleZRLETile,REALBPP)
                                 ^
rfbproto.c:2364:22: note: in definition of macro 'CONCAT2'
 #define CONCAT2(a,b) a##b
                      ^
zrle.c:37:24: note: in expansion of macro 'CONCAT2E'
 #define HandleZRLETile CONCAT2E(HandleZRLETile,REALBPP)
                        ^
zrle.c:79:12: note: in expansion of macro 'HandleZRLETile'
 static int HandleZRLETile(rfbClient* client,
            ^
In file included from rfbproto.c:2387:0:
zrle.c: In function 'HandleZRLE15':
zrle.c:201:5: warning: pointer targets in passing argument 2 of 'HandleZRLETile15' differ in signedness [-Wpointer-sign]
     int result=HandleZRLETile(client,buf,remaining,rx+i,ry+j,subWidth,subHeight);
     ^
zrle.c:37:33: note: expected 'uint8_t *' but argument is of type 'char *'
 #define HandleZRLETile CONCAT2E(HandleZRLETile,REALBPP)
                                 ^
rfbproto.c:2364:22: note: in definition of macro 'CONCAT2'
 #define CONCAT2(a,b) a##b
                      ^
zrle.c:37:24: note: in expansion of macro 'CONCAT2E'
 #define HandleZRLETile CONCAT2E(HandleZRLETile,REALBPP)
                        ^
zrle.c:79:12: note: in expansion of macro 'HandleZRLETile'
 static int HandleZRLETile(rfbClient* client,
            ^
In file included from rfbproto.c:2396:0:
zrle.c: In function 'HandleZRLE32':
zrle.c:201:5: warning: pointer targets in passing argument 2 of 'HandleZRLETile32' differ in signedness [-Wpointer-sign]
     int result=HandleZRLETile(client,buf,remaining,rx+i,ry+j,subWidth,subHeight);
     ^
zrle.c:37:33: note: expected 'uint8_t *' but argument is of type 'char *'
 #define HandleZRLETile CONCAT2E(HandleZRLETile,REALBPP)
                                 ^
rfbproto.c:2364:22: note: in definition of macro 'CONCAT2'
 #define CONCAT2(a,b) a##b
                      ^
zrle.c:37:24: note: in expansion of macro 'CONCAT2E'
 #define HandleZRLETile CONCAT2E(HandleZRLETile,REALBPP)
                        ^
zrle.c:79:12: note: in expansion of macro 'HandleZRLETile'
 static int HandleZRLETile(rfbClient* client,
            ^
In file included from rfbproto.c:2398:0:
zrle.c: In function 'HandleZRLE24':
zrle.c:201:5: warning: pointer targets in passing argument 2 of 'HandleZRLETile24' differ in signedness [-Wpointer-sign]
     int result=HandleZRLETile(client,buf,remaining,rx+i,ry+j,subWidth,subHeight);
     ^
zrle.c:37:33: note: expected 'uint8_t *' but argument is of type 'char *'
 #define HandleZRLETile CONCAT2E(HandleZRLETile,REALBPP)
                                 ^
rfbproto.c:2364:22: note: in definition of macro 'CONCAT2'
 #define CONCAT2(a,b) a##b
                      ^
zrle.c:37:24: note: in expansion of macro 'CONCAT2E'
 #define HandleZRLETile CONCAT2E(HandleZRLETile,REALBPP)
                        ^
zrle.c:79:12: note: in expansion of macro 'HandleZRLETile'
 static int HandleZRLETile(rfbClient* client,
            ^
In file included from rfbproto.c:2401:0:
zrle.c: In function 'HandleZRLE24Down':
zrle.c:201:5: warning: pointer targets in passing argument 2 of 'HandleZRLETile24Down' differ in signedness [-Wpointer-sign]
     int result=HandleZRLETile(client,buf,remaining,rx+i,ry+j,subWidth,subHeight);
     ^
zrle.c:40:33: note: expected 'uint8_t *' but argument is of type 'char *'
 #define HandleZRLETile CONCAT3E(HandleZRLETile,REALBPP,Down)
                                 ^
rfbproto.c:2366:24: note: in definition of macro 'CONCAT3'
 #define CONCAT3(a,b,c) a##b##c
                        ^
zrle.c:40:24: note: in expansion of macro 'CONCAT3E'
 #define HandleZRLETile CONCAT3E(HandleZRLETile,REALBPP,Down)
                        ^
zrle.c:79:12: note: in expansion of macro 'HandleZRLETile'
 static int HandleZRLETile(rfbClient* client,
            ^
In file included from rfbproto.c:2404:0:
zrle.c: In function 'HandleZRLE24Up':
zrle.c:201:5: warning: pointer targets in passing argument 2 of 'HandleZRLETile24Up' differ in signedness [-Wpointer-sign]
     int result=HandleZRLETile(client,buf,remaining,rx+i,ry+j,subWidth,subHeight);
     ^
zrle.c:43:33: note: expected 'uint8_t *' but argument is of type 'char *'
 #define HandleZRLETile CONCAT3E(HandleZRLETile,REALBPP,Up)
                                 ^
rfbproto.c:2366:24: note: in definition of macro 'CONCAT3'
 #define CONCAT3(a,b,c) a##b##c
                        ^
zrle.c:43:24: note: in expansion of macro 'CONCAT3E'
 #define HandleZRLETile CONCAT3E(HandleZRLETile,REALBPP,Up)
                        ^
zrle.c:79:12: note: in expansion of macro 'HandleZRLETile'
 static int HandleZRLETile(rfbClient* client,
            ^
==

Signed-off-by: Floris Bos <bos@je-eigen-domein.nl>
10 years ago
Brian Bidulock 57b0e4f4fe Rename obsolete INCLUDES to AM_CPPFLAGS 11 years ago
Christian Beier fdf5f8876f The HAVE_X11 define is not there anymore, but we don't need it either. 11 years ago
David Verbeiren d891478ec9 LibVNCClient: Add H.264 encoding for framebuffer updates
This patch implements support in LibVNCClient for framebuffer updates
encoded as H.264 frames. Hardware accelerated decoding is performed
using VA API.

This is experimental support to let the community explore the possibilities
offered by the potential bandwidth and latency reductions that H.264 encoding
allows. This may be particularly useful for use cases such as online gaming,
hosted desktops, hosted set top boxes...

This patch only provides the client side support and is meant to be used
with corresponding server-side support, as provided by an upcoming patch for
qemu ui/vnc module (to view the display of a virtual machine executing under
QEMU).

With this H.264-based encoding, if multiple framebuffer update messages
are generated for a single server framebuffer modification, the H.264
frame data is sent only with the first update message. Subsequent update
framebuffer messages will contain only the coordinates and size of the
additional updated regions.

Instructions/Requirements:
* The patch should be applied on top of the previous patch I submitted with
minor enhancements to the gtkvncviewer application:
http://sourceforge.net/mailarchive/message.php?msg_id=30323804
* Currently only works with libva 1.0: use branch "v1.0-branch" for libva and
intel-driver. Those can be built as follows:
   cd libva
   git checkout v1.0-branch
   ./autogen.sh
   make
   sudo make install
   cd ..
   git clone git://anongit.freedesktop.org/vaapi/intel-driver
   cd intel-driver
   git checkout v1.0-branch
   ./autogen.sh
   make
   sudo make install

Signed-off-by: David Verbeiren <david.verbeiren@intel.com>
12 years ago
David Verbeiren 98d49517ed gtkvncviewer enhancements
Hide "Connecting" dialog in gtkvncviewer once an update is received.

Hide local cusror in gtkvncviewer.
12 years ago
Christian Beier efcdab50cc Merge branch 'server-ipv6' 13 years ago
Johannes Schindelin ee4593425f SDLvncviewer: map Apple/Windows keys correctly
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
13 years ago
Johannes Schindelin f11e49b4e7 SDLvncviewer: fix the SDL_KEYUP issue
Keys got stuck because unicode is 0 upon SDL_KEYUP events, even if the
same key event sets unicode correctly in SDL_KEYDOWN events.

Work around that for the common case (ASCII) using the fact that both SDL
and X11 keysyms were created with ASCII compatibility in mind. So as long
as we type ASCII symbols, we can map things trivially.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
13 years ago
Christian Beier 75bfb1f5d3 IPv6 support for LibVNCServer, part three: make reverse connections IPv6-capable.
Besided making libvncserver reverseVNC IPv6-aware, this introduces some changes
on the client side as well to make clients listen on IPv6 sockets, too. Like
the server side, this also uses a separate-socket approach.
13 years ago
Mateus Cesar Groess 1078e8a8b0 Here is a port of SDLvncviewer to GTK+2.
I think it may encourage people to implement more features for the viewer,
because a GTK GUI seems to be easier to implement than a SDL one
(and it is more integrated with the major Linux Desktops out there).

Signed-off-by: Christian Beier <dontmind@freeshell.org>
13 years ago
Johannes Schindelin 84be9d3f49 SDLvncviewer: make it resizable by default
I got annoyed having to specify -resizable all the time; I never use it in
another mode anymore, since I am on a netbook.

The option -no-resizable was added to be able to switch off that feature.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
14 years ago
Christian Beier 558a58e039 Remove unneeded files concerning CVS.
We have a git repo nowadays and I guess we won't go back to CVS.

Signed-off-by: Christian Beier <dontmind@freeshell.org>
14 years ago
Christian Beier 824644d0a2 SDLvncviewer: fix compilation from dist tarball.
Signed-off-by: Christian Beier <dontmind@freeshell.org>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
14 years ago
Christian Beier 705a5d46e6 Add doxygen documentation support.
Adds automagically generating libvncserver/libvncclient API
    documentation using doxygen. This gives a nice overview on both APIs,
    include dependencies and function call/caller dependencies.

    TODO: Modify all the explaining comments in the .c files for use with
          doxygen as well.

    This patch only changes comments, no functional changes at all!

Signed-off-by: Christian Beier <dontmind@freeshell.org>
14 years ago
Johannes Schindelin 166f0b9887 Another try to fix the _SOURCES issue
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
15 years ago
Johannes Schindelin 14854d2e5e Fix compilation with newer automake
For some reason, this developer's automake no longer understands _SOURCES
lines anymore. Work around that.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
15 years ago
Johannes Schindelin 9a9a1c5fbc Rename HAVE_X -> HAVE_X11
This change is just for consistency reasons.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
15 years ago
Vic Lee a4cc897222 Fix various compilation warnings
Signed-off-by: Vic Lee <llyzs@163.com>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
15 years ago
Christian Beier 76b468ceb0 SDLvncviewer: don't call clean up the same client twice.
If rfbInitConnection fails, it cleans up the client, so protect against
doing it ourselves again.

Signed-off-by: Christian Beier <dontmind@freeshell.org>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
16 years ago
Christian Beier 7ed1c0aeac SDLvncviewer: add SIGINT handler to be able to actually stop program.
Signed-off-by: Christian Beier <dontmind@freeshell.org>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
16 years ago
Christian Beier 1f6c560985 SDLvncviewer: use -listennofork when -listen specified.
As -listen mode isn't really working under UNIX and not at all under
windows, use -listennofork and an outer listen loop instead.

Signed-off-by: Christian Beier <dontmind@freeshell.org>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
16 years ago
Christian Beier 3b608cd39b SDLvncviewer: make listen mode work _somewhat_.
set the port to listen on and really ensure that the
window of the fork()ed instance is closed.

works somewhat: it's now actually possible to listen for an
incoming connection and to close it again, but the second
connection attempt fails with 'XIO:  fatal IO error 11
(Resource temporarily unavailable)'. this could relate to the
fact that SDL uses threads internally and we're fork()ing
here...

Signed-off-by: Christian Beier <dontmind@freeshell.org>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
16 years ago
dscho e2874d343a Teach SDLvncviewer about scroll wheel events
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
16 years ago
dscho 76db22022c SDLvncviewer: fix passing a wrong pointer type
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
16 years ago
dscho ebe79c28c3 Clipboard support for SDLvncviewer
The clipboard support has only been tested on Linux so far.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
16 years ago
dscho eb1cc7608b SDLvncviewer: upon focus loss, force releasing the Alt keys
When switching windows using the Alt+Tab shortcut, SDLvncviewer would
get the "down" event, but not the "up" event.  This patch provides
a workaround.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
16 years ago
dscho e12c4ccf23 SDLvncviewer: refactor event handling
Instead of having deep indent levels, put the code to handle events into
its own function.  That also helps readability.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
16 years ago
dscho a02607fe35 Teach SDLvncviewer to be resizable
Using "SDLvncviewer -resizable", you make the window resizable.  This
means that you can shrink the window (e.g. when you are trying to access
an x11vnc from your little netbook), or you can enlarge it.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
16 years ago
dscho 3ab7d5d766 SDLvncviewer: enable key repeat
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
16 years ago
dscho 3d2eab575e clean up build flags
The flag handling (both compiler options and include paths) are a mess at
the moment.  There is no point in forcing "-O2 -g" when these are already
the defaults, and if someone changes the defaults, chances are good they
don't want you clobbering their choices.

The -Wall flag should be handled in configure and thrown into CFLAGS once
rather than every Makefile.am.  Plus, this way we can control which
compilers the flag actually gets used with.

Finally, the INCLUDES variable is for -I paths, not AM_CFLAGS.  Nor should
it contain -I. as this is already in the default includes setup.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
16 years ago
dscho a824cf443d SDLvncviewer: update screen correctly after a resize
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
17 years ago
dscho b069f1dc01 SDLvncviewer: add -viewonly
Just like its siblings from other projects, SDLvncviewer now supports
viewonly connections.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
17 years ago
dscho e526c4816b SDLvncviewer: fix button handling
For some reason, I swapped buttons 2 and 3 on Dec 7, 2005, in commit
"translate keys based on unicode (much more reliable than sym)".
I do not remember why, nor what I smoked, but this was wrong.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
17 years ago
dscho 2530c5fa4c SDLvncviewer: fix Ctrl+<letter>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
17 years ago
dscho 20fe2c2e96 SDLvncviewer: fix translation of the Tab key
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
17 years ago
dscho ca805667e6 Build shared libraries per default
Thanks to Guillaume Rousse, we now use libtool to build shared libraries.
18 years ago
steven_carr ccdbe8f325 The great UltraVNC Compatibility Commit 19 years ago
dscho 7602f0e750 libvncclient: support changing of framebuffer size; make SDLvncviewer use it 19 years ago
dscho 9b51d63d49 fix SDLvncviewer for widths which are not divisible by 8 19 years ago
runge 3c80351a1c Make VPATH building work with -I $(top_srcdir) for rfb/rfb.h 19 years ago
dscho 1602b345f3 add KeyboardLedState extension 19 years ago
dscho 1b81e342cb assorted fixes for MinGW32 19 years ago
dscho 6a7736f87a translate keys based on unicode (much more reliable than sym) 19 years ago
dscho 194a76df11 add an extension mechanism for LibVNCClient, modify the client data handling
so that more than one data structure can be attached, and add an example
to speak the client part of the back channel.
20 years ago
dscho 808b6a0b23 do it right: it is not DEFINES, but AM_CFLAGS 20 years ago
dscho 6bdd2e466a support new ffmpeg version 20 years ago
dscho 714bd045e7 link to libmp3lame only if exists 20 years ago
dscho 93ab95b1d3 try 32 bit first 20 years ago