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.
dscho
d6082b6941
|
23 years ago | |
---|---|---|
classes | 23 years ago | |
include | 23 years ago | |
.gdb_history | 24 years ago | |
COPYING | 24 years ago | |
Makefile | 23 years ago | |
README | 24 years ago | |
TODO | 23 years ago | |
auth.c | 24 years ago | |
bdf2c.pl | 24 years ago | |
corre.c | 24 years ago | |
cursor.c | 23 years ago | |
cutpaste.c | 24 years ago | |
d3des.c | 23 years ago | |
d3des.h | 23 years ago | |
example.c | 23 years ago | |
go | 24 years ago | |
hextile.c | 24 years ago | |
httpd.c | 24 years ago | |
kbdptr.c | 24 years ago | |
keysym.h | 23 years ago | |
mac.c | 24 years ago | |
main.c | 23 years ago | |
miregion.c | 23 years ago | |
pnmshow.c | 23 years ago | |
radon.h | 24 years ago | |
region.h | 23 years ago | |
rfb.h | 23 years ago | |
rfbproto.h | 24 years ago | |
rfbserver.c | 23 years ago | |
rre.c | 24 years ago | |
sockets.c | 23 years ago | |
stats.c | 24 years ago | |
storepasswd.c | 23 years ago | |
tableinitcmtemplate.c | 24 years ago | |
tableinittctemplate.c | 24 years ago | |
tabletranstemplate.c | 23 years ago | |
tight.c | 24 years ago | |
translate.c | 24 years ago | |
vncauth.c | 23 years ago | |
xalloc.c | 23 years ago | |
zlib.c | 24 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/.