Shared TDE VNC library sources
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Go to file
dscho 1e83d9a599
cleaned up warnings, cursor changes
23 years ago
classes http added, prepare for cursor 23 years ago
include Initial revision 23 years ago
libvncauth Initial revision 23 years ago
.DS_Store Initial revision 23 years ago
.depend Initial revision 23 years ago
.gdb_history Initial revision 23 years ago
COPYING Initial revision 23 years ago
Makefile cleaned up warnings, cursor changes 23 years ago
README cleaned up warnings, cursor changes 23 years ago
TODO cleaned up warnings, cursor changes 23 years ago
auth.c Initial revision 23 years ago
bdf2c.pl Now you can write something in addition to mouse movements ... 23 years ago
corre.c Initial revision 23 years ago
cursor.c cleaned up warnings, cursor changes 23 years ago
cutpaste.c Initial revision 23 years ago
example.c cleaned up warnings, cursor changes 23 years ago
go Initial revision 23 years ago
hextile.c Initial revision 23 years ago
httpd.c cleaned up warnings, cursor changes 23 years ago
kbdptr.c Initial revision 23 years ago
mac.c Initial revision 23 years ago
main.c cleaned up warnings, cursor changes 23 years ago
miregion.c Initial revision 23 years ago
pnmshow.c comments & new example: pnmshow 23 years ago
radon.h Now you can write something in addition to mouse movements ... 23 years ago
rfb.h cleaned up warnings, cursor changes 23 years ago
rfbproto.h Initial revision 23 years ago
rfbserver.c cleaned up warnings, cursor changes 23 years ago
rre.c Initial revision 23 years ago
sockets.c cleaned up warnings, cursor changes 23 years ago
stats.c Initial revision 23 years ago
storepasswd.c Initial revision 23 years ago
tableinitcmtemplate.c Initial revision 23 years ago
tableinittctemplate.c Initial revision 23 years ago
tabletranstemplate.c Initial revision 23 years ago
tight.c Initial revision 23 years ago
translate.c Initial revision 23 years ago
xalloc.c Initial revision 23 years ago
zlib.c cleaned up warnings, cursor changes 23 years ago

README

LibVNCServer: a library for easy implementation of a RDP/VNC server.
Copyright (C) 2001 Johannes E. Schindelin

What is it?
-----------

VNC is set of programs using the RFB (Remote Frame Buffer) protocol. They
are designed to "export" a frame buffer via net. It is already in wide use
for administration, but it is not that easy to make a server yourself.

This has been changed by LibVNCServer.

There are two examples included:
 - example, a shared scribble sheet
 - pnmshow, a program to show PNMs (pictures) over the net.

The examples are not too well documented, but easy straight forward and a
good starting point.

How to use
----------

To make a server, you just have to initialise a server structure using the
function rfbDefaultScreenInit, like
  rfbScreenInfoPtr rfbScreen =
    rfbDefaultScreenInit(argc,argv,maxx,maxy,8,3,bpp);

You then can set hooks and io functions (see below).

You can use a blocking event loop, a background (pthread based) event loop,
or implement your own using the processEvents function.

Also, there is functionality included to draw a cursor (see below).

To start also an HTTP server (running on port 5800+display_number), you have
to set rfbScreen->httpdDir to a directory containing vncviewer.jar and
index.vnc (like the included "classes" directory).

Hooks and IO functions
----------------------

TODO

Cursor handling
---------------

The rfbCursor structure consists mainly of a mask and a source. The mask
describes, which pixels are drawn for the cursor (a cursor needn't be
rectangular). The source describes, which colour those pixels should have.

The standard is an XCursor: a cursor with a foreground and a background
colour (stored in backRed and similar with a range from 0-0xffff). The
arrays "mask" and "source" consist of byte padded rows in MSB order (i.e. a
10x4 cursor's mask has 2x4 bytes, because 2 bytes are needed to hold 10 bits).

It is very easy to make a cursor like this:

char* cur="    "
          " xx "
	  " x  "
	  "    ";
char* mask="xxxx"
           "xxxx"
	   "xxxx"
	   "xxx ";
rfbCursorPtr c=rfbMakeXCursor(4,4,cur,mask);

You can even set "mask" to NULL in this call and LibVNCServer will calculate
a mask for you.

There is also an array named "richSource" for colourful cursors. They have
the same format as the frameBuffer.

History
-------

LibVNCServer is based on Tridia VNC and OSXvnc, which in turn are based on
the original code from ORL/AT&T.

License
-------

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.dfdf


For help with OSXvnc, please visit http://www.osxvnc.com/.