├── README.md ├── rdesktop ├── rdp2tcp ├── rdp2tcp.exe ├── rdp2tcp.py ├── rdpupload ├── sources ├── compile-notes.txt ├── rdesktop-1.8.3 │ ├── .cvsignore │ ├── COPYING │ ├── Makefile │ ├── Makefile.in │ ├── README │ ├── aclocal.m4 │ ├── asn.c │ ├── asn.o │ ├── autom4te.cache │ │ ├── output.0 │ │ ├── output.1 │ │ ├── requests │ │ ├── traces.0 │ │ └── traces.1 │ ├── bitmap.c │ ├── bitmap.o │ ├── bootstrap │ ├── cache.c │ ├── cache.o │ ├── channels.c │ ├── channels.c.orig │ ├── channels.o │ ├── cliprdr.c │ ├── cliprdr.c.orig │ ├── cliprdr.o │ ├── config.guess │ ├── config.log │ ├── config.status │ ├── config.sub │ ├── configure │ ├── configure.ac │ ├── constants.h │ ├── cssp.c │ ├── cssp.o │ ├── ctrl.c │ ├── ctrl.o │ ├── disk.c │ ├── disk.h │ ├── disk.o │ ├── doc │ │ ├── AUTHORS │ │ ├── ChangeLog │ │ ├── HACKING │ │ ├── TODO │ │ ├── ctrl.txt │ │ ├── ipv6.txt │ │ ├── keymap-names.txt │ │ ├── keymapping.txt │ │ ├── keynums.png │ │ ├── licensing.txt │ │ ├── lspci-channel.txt │ │ ├── makerelease.txt │ │ ├── patches.txt │ │ ├── rdesktop.1 │ │ ├── rdpsnd-rec.txt │ │ ├── rdpsnd.txt │ │ ├── redirection.txt │ │ └── seamlessrdp-channel.txt │ ├── ewmhints.c │ ├── ewmhints.o │ ├── genauthors │ ├── indent-all.sh │ ├── install-sh │ ├── iso.c │ ├── iso.o │ ├── keymaps │ │ ├── ar │ │ ├── common │ │ ├── convert-map │ │ ├── cs │ │ ├── da │ │ ├── de │ │ ├── de-ch │ │ ├── en-dv │ │ ├── en-gb │ │ ├── en-us │ │ ├── en-us-intl │ │ ├── es │ │ ├── et │ │ ├── fi │ │ ├── fo │ │ ├── fr │ │ ├── fr-be │ │ ├── fr-bepo │ │ ├── fr-ca │ │ ├── fr-ch │ │ ├── he │ │ ├── hr │ │ ├── hu │ │ ├── is │ │ ├── it │ │ ├── ja │ │ ├── ko │ │ ├── lt │ │ ├── lv │ │ ├── mk │ │ ├── modifiers │ │ ├── nl │ │ ├── nl-be │ │ ├── no │ │ ├── pl │ │ ├── pt │ │ ├── pt-br │ │ ├── ru │ │ ├── sk │ │ ├── sl │ │ ├── sv │ │ ├── th │ │ └── tr │ ├── licence.c │ ├── licence.o │ ├── lspci.c │ ├── lspci.c.orig │ ├── lspci.o │ ├── mcs.c │ ├── mcs.o │ ├── mppc.c │ ├── mppc.o │ ├── oop-1.8.1.patch │ ├── orders.c │ ├── orders.h │ ├── orders.o │ ├── parallel.c │ ├── parallel.o │ ├── parse.h │ ├── printer.c │ ├── printer.o │ ├── printercache.c │ ├── printercache.o │ ├── proto.h │ ├── proto.h.orig │ ├── proto.head │ ├── proto.tail │ ├── pstcache.c │ ├── pstcache.o │ ├── rdesktop │ ├── rdesktop.c │ ├── rdesktop.c.orig │ ├── rdesktop.h │ ├── rdesktop.h.orig │ ├── rdesktop.o │ ├── rdesktop.spec │ ├── rdp.c │ ├── rdp.o │ ├── rdp5.c │ ├── rdp5.o │ ├── rdpdr.c │ ├── rdpdr.c.orig │ ├── rdpdr.o │ ├── rdpsnd.c │ ├── rdpsnd.c.orig │ ├── rdpsnd.h │ ├── rdpsnd.o │ ├── rdpsnd_alsa.c │ ├── rdpsnd_dsp.c │ ├── rdpsnd_dsp.h │ ├── rdpsnd_dsp.o │ ├── rdpsnd_libao.c │ ├── rdpsnd_oss.c │ ├── rdpsnd_oss.o │ ├── rdpsnd_sgi.c │ ├── rdpsnd_sun.c │ ├── scancodes.h │ ├── scard.c │ ├── scard.h │ ├── seamless.c │ ├── seamless.c.orig │ ├── seamless.h │ ├── seamless.o │ ├── secure.c │ ├── secure.o │ ├── serial.c │ ├── serial.o │ ├── ssl.c │ ├── ssl.h │ ├── ssl.o │ ├── tcp.c │ ├── tcp.o │ ├── tests │ │ ├── brushtest.c │ │ ├── brushtest.exe │ │ ├── brushtestMakefile │ │ ├── notepadbehindwordpad.c │ │ └── notepadbehindwordpad.exe │ ├── types.h │ ├── types.h.orig │ ├── uiports │ │ ├── makefile_nanox │ │ ├── makefile_qt │ │ ├── makefile_qte │ │ ├── makefile_svga │ │ ├── makefile_xxx │ │ ├── nanoxreadme.txt │ │ ├── nanoxwin.c │ │ ├── qtereadme.txt │ │ ├── qtewin.cpp │ │ ├── qtewin.h │ │ ├── qtreadme.txt │ │ ├── qtwin.cpp │ │ ├── qtwin.h │ │ ├── readme.txt │ │ ├── svgareadme.txt │ │ ├── svgawin.c │ │ └── xxxwin.c │ ├── utils.c │ ├── utils.o │ ├── vnc │ │ ├── vnc.c │ │ ├── vnc.h │ │ ├── x11stubs.c │ │ └── x11stubs.h │ ├── xclip.c │ ├── xclip.o │ ├── xkeymap.c │ ├── xkeymap.o │ ├── xproto.h │ ├── xwin.c │ ├── xwin.c.orig │ └── xwin.o ├── rdp2tcp │ ├── .svn │ │ ├── entries │ │ ├── format │ │ ├── pristine │ │ │ ├── 19 │ │ │ │ └── 193087b05a9b4814eb244e15235260fa496c1fa8.svn-base │ │ │ ├── 23 │ │ │ │ └── 23aa44b55aa947c26c869e485c9e98771fa4cdd1.svn-base │ │ │ ├── 33 │ │ │ │ └── 33ea12ba6a104346e5f224be5a5d00fec40adf7c.svn-base │ │ │ ├── 37 │ │ │ │ └── 370f16f6c73dbcd8845a3b4123a94fe8a8fae6b7.svn-base │ │ │ ├── 42 │ │ │ │ └── 426a82eeaa5dca937e72016e430697d3f32dc86f.svn-base │ │ │ ├── 45 │ │ │ │ └── 454f618dc096d42e09e70a1e22771859c7c3f5ae.svn-base │ │ │ ├── 50 │ │ │ │ └── 50dd51e9be3b29f44d707eb4b040f70b6ab0aba1.svn-base │ │ │ ├── 52 │ │ │ │ └── 521ce05b4ca46cd2006a24892d3914c05a51024c.svn-base │ │ │ ├── 56 │ │ │ │ └── 567ba5b1663dd09edcbc5022ca5ee51f4fa7e765.svn-base │ │ │ ├── 62 │ │ │ │ └── 62ca0614f5b61147ff5e61eeb9e9931df668ef58.svn-base │ │ │ ├── 65 │ │ │ │ └── 65e668e69f123c0d1c30ac73f20213c1b588a8f9.svn-base │ │ │ ├── 75 │ │ │ │ └── 7539fe3d9d9843d8292dc356c7ee087d8eaa74a2.svn-base │ │ │ ├── 85 │ │ │ │ └── 8552107e53df46ec368b920979703bcd0deaa080.svn-base │ │ │ ├── 86 │ │ │ │ └── 8624bcdae55baeef00cd11d5dfcfa60f68710a02.svn-base │ │ │ ├── 95 │ │ │ │ └── 95a26ef655769dea3276f2398dee05dd8216920a.svn-base │ │ │ ├── 97 │ │ │ │ └── 97f0afb105dae662ffb8096ea07db926782552f3.svn-base │ │ │ ├── 07 │ │ │ │ └── 075ce15dd1964b2eec834d4d3bc710b882ed711b.svn-base │ │ │ ├── 0c │ │ │ │ └── 0c987a7e555f2ea3c0065ef4a5060ae083adb6e6.svn-base │ │ │ ├── 1b │ │ │ │ └── 1bcc2417d68eff3b0b82ccebec9c979da0350e1a.svn-base │ │ │ ├── 2a │ │ │ │ └── 2abc936608f16630060c4c205614b727a91f42e9.svn-base │ │ │ ├── 2b │ │ │ │ └── 2b1f25f4590fe1c0c0672582aafac42507813a02.svn-base │ │ │ ├── 2f │ │ │ │ └── 2fbe0d56de6b4b6db96883bb3f6f34dab6f934a4.svn-base │ │ │ ├── 3b │ │ │ │ └── 3b8b559e1a0dfef97820d81a0bb6619c12aa32cc.svn-base │ │ │ ├── 3f │ │ │ │ └── 3fa4d3a825d370fd9a433dd7ebe5af5ca1348109.svn-base │ │ │ ├── 4a │ │ │ │ ├── 4a20de93dc890d5c415d6fe210e43f96f1201b4a.svn-base │ │ │ │ └── 4a9a8db6888b28705717574b63ba043bfcd5bbf3.svn-base │ │ │ ├── 4e │ │ │ │ └── 4ee6a19e80e1f4dcf123bed012c0e90385f23c88.svn-base │ │ │ ├── 5c │ │ │ │ └── 5cb913881bd7e36c82d94bb2bef0a2c4ea87e4ff.svn-base │ │ │ ├── 5d │ │ │ │ └── 5d233a857a33c9effa95c7a0c386d09afda6e213.svn-base │ │ │ ├── 6a │ │ │ │ └── 6ac9f283bfc5c97c6ceabd2c6222fd32cc351317.svn-base │ │ │ ├── 7a │ │ │ │ └── 7aa3e81b26f94f94d4c2f8a233e247e4c6979acb.svn-base │ │ │ ├── 9c │ │ │ │ └── 9c7e73ff175592f0802d0f40853ca12caa627916.svn-base │ │ │ ├── a6 │ │ │ │ └── a654100ad6087b182f37e5d819c39bf588859bee.svn-base │ │ │ ├── aa │ │ │ │ └── aa68de173cc8d885d7718fc5e61503b777359cd5.svn-base │ │ │ ├── ab │ │ │ │ └── abdfa247345bbfc7a035a6781dfe83f5a02a1517.svn-base │ │ │ ├── ad │ │ │ │ └── ad5d5113159bdc3cebdfc01246928f987ce4a7c5.svn-base │ │ │ ├── b0 │ │ │ │ └── b0e260f4255ada8c53bb0c1ba5fa05368939892b.svn-base │ │ │ ├── b1 │ │ │ │ └── b111cd79f67a9b4455b9c0f9bf0bf621d421b12a.svn-base │ │ │ ├── bc │ │ │ │ └── bc1399dc20eb2a3906c5d6f00e8825b105a5d98a.svn-base │ │ │ ├── c4 │ │ │ │ └── c400540e571755fd249f2bac0ca0c7b6ebe93034.svn-base │ │ │ ├── c8 │ │ │ │ └── c8fab9213804fa6a4da2a120999e5530d3fd0baa.svn-base │ │ │ ├── cb │ │ │ │ └── cb5b06fcf6542a4742ca14556d7247ee0b7844aa.svn-base │ │ │ ├── ce │ │ │ │ └── ceb15baac09d7752901416ac798d5c87673f8ccf.svn-base │ │ │ ├── d0 │ │ │ │ └── d0129f029d077b234b490ab8110c163181490de4.svn-base │ │ │ ├── d1 │ │ │ │ └── d1db017af5db2ede520de89a1ac2192a12c399cf.svn-base │ │ │ ├── dc │ │ │ │ └── dc39a127a42b34048877cac54dd9f5dc11fec5cb.svn-base │ │ │ ├── ea │ │ │ │ └── ead6b46ce23c150b7f69ac54f0501c83ca80f2ee.svn-base │ │ │ ├── ed │ │ │ │ └── ed2792a66ed6b4e6066b8087fd50a474ed7370b0.svn-base │ │ │ ├── ee │ │ │ │ └── eea93db0b24baabe92ebbfc308fe268c02e81987.svn-base │ │ │ ├── fb │ │ │ │ └── fb58813530d621481596b11d37a5367f99da1d6f.svn-base │ │ │ ├── fd │ │ │ │ └── fda5cef26ab0b88bc6784b9c6743f1fb8c3afdf5.svn-base │ │ │ └── fe │ │ │ │ └── fe3562e0737182b6ec95af550bf7a3f81ee58165.svn-base │ │ ├── wc.db │ │ └── wc.db-journal │ ├── AUTHORS │ ├── COPYING │ ├── ChangeLog │ ├── Doxyfile-client │ ├── Doxyfile-server │ ├── FAQ │ ├── INSTALL │ ├── Makefile │ ├── README │ ├── TODO │ ├── client │ │ ├── Makefile │ │ ├── channel.c │ │ ├── channel.o │ │ ├── commands.c │ │ ├── commands.o │ │ ├── controller.c │ │ ├── controller.o │ │ ├── main.c │ │ ├── main.o │ │ ├── memcheck.sh │ │ ├── netsock.c │ │ ├── netsock.o │ │ ├── r2tcli.h │ │ ├── rdp2tcp │ │ ├── socks5-proto.h │ │ ├── socks5.c │ │ ├── socks5.o │ │ ├── tunnel.c │ │ └── tunnel.o │ ├── common │ │ ├── Makefile │ │ ├── Makefile.mingw32 │ │ ├── compiler.h │ │ ├── debug.h │ │ ├── iobuf.c │ │ ├── iobuf.h │ │ ├── iobuf.o │ │ ├── list.h │ │ ├── msgparser.c │ │ ├── msgparser.h │ │ ├── msgparser.o │ │ ├── netaddr.c │ │ ├── netaddr.o │ │ ├── nethelper.c │ │ ├── nethelper.h │ │ ├── nethelper.o │ │ ├── print.c │ │ ├── print.h │ │ ├── print.o │ │ └── rdp2tcp.h │ ├── server │ │ ├── Makefile.mingw32 │ │ ├── Makefile.nmake │ │ ├── aio.c │ │ ├── aio.o │ │ ├── channel.c │ │ ├── channel.o │ │ ├── commands.c │ │ ├── commands.o │ │ ├── errors.c │ │ ├── errors.o │ │ ├── events.c │ │ ├── events.o │ │ ├── main.c │ │ ├── main.o │ │ ├── process.c │ │ ├── process.o │ │ ├── r2twin.h │ │ ├── rdp2tcp.exe │ │ ├── tunnel.c │ │ ├── tunnel.o │ │ └── wtsapi32.h │ └── tools │ │ ├── Makefile │ │ ├── rdp2tcp.py │ │ ├── rdp2tcp.pyc │ │ ├── rdpupload │ │ └── test-client └── vchannel-samples │ ├── vchannel-sample.tar.gz │ └── vchannel.zip ├── test-client └── xte /README.md: -------------------------------------------------------------------------------- 1 | rdp2tcp lets you tunnel TCP traffic over an RDP Virtual Channel. It includes port forwards, reverse port forwards, and a redimentary SOCKS5 proxy. It does this by redirecting a local named pipe to the terminal services client. 2 | 3 | I got tired of having to compile the tool, so this is pre-compiled using rdesktop 1.8.3 4 | 5 | To run it, launch the included rdesktop client with: 6 | ./rdesktop -r addin:rdp2tcp:./rdp2tcp 7 | 8 | You should see: 9 | controller listening on 127.0.0.1:8477 10 | virtual channel disconnected 11 | 12 | Upload rdp2tcp.exe to the Terminal Server. try copy/pasting the binary into a local wordpad document, opening wordpad on the terminal server, then copy/pasting the OLE object. This has a fairly high success rate. 13 | if this isn't possible, you can try to use rdpupload. This will use sendkeys() to the active window (which should be rdesktop) to generate a vbscript file that'll write the EXE to disk. Start notepad on the Terminal Server, then run this on the client: 14 | ./rdpupload -x -f vb rdp2tcp.exe - | xte 15 | Then give the rdesktop window focus. This takes FOREVER. 16 | 17 | Once you get rdp2tcp.exe on the Terminal Server, run it. You should see this on your rdesktop client logs: 18 | chan < 6 19 | virtual channel connected 20 | and this on the Terminal Server: 21 | chan < 6 22 | channel connected 23 | 24 | To add port forwards, use the rdp2tcp.py script. 25 | Straight Port Forward 26 | ./rdp2tcp.py add forward 27 | 28 | Reverse Port Forward 29 | ./rdp2tcp.py add reverse 30 | 31 | Bind a remote process to a local port (like a cmd.exe bindshell) 32 | ./rdp2tcp.py add process 33 | 34 | SOCKS5 Proxy (very basic. advanced stuff not supported) 35 | ./rdp2tcp.py socks5 36 | 37 | Run a shell command on the Terminal Server in 'cmd /c' 38 | ./rdp2tcp.py sh 39 | 40 | 41 | -------------------------------------------------------------------------------- /rdesktop: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/rdesktop -------------------------------------------------------------------------------- /rdp2tcp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/rdp2tcp -------------------------------------------------------------------------------- /rdp2tcp.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/rdp2tcp.exe -------------------------------------------------------------------------------- /sources/compile-notes.txt: -------------------------------------------------------------------------------- 1 | 1. apt-get install libx11-dev libssl1.0-dev 2 | 2. svn co https://rdp2tcp.svn.sourceforge.net/svnroot/rdp2tcp/trunk/rdp2tcp rdp2tcp 3 | 3. cd rdp2tcp 4 | 4. cd client 5 | 5. make 6 | 6. cp rdp2tcp /usr/local/sbin/rdp2tcp 7 | 7. cd ../../tools 8 | 8. sudo cp rdp2tcp.py /usr/local/sbin/ 9 | 10 | 9. Download rdesktop 1.8.3 https://github.com/rdesktop/rdesktop/releases 11 | 12 | 10. Download the OOP Patch: https://sourceforge.net/p/rdesktop/patches/107/?page=2 13 | https://sourceforge.net/p/rdesktop/patches/_discuss/thread/066465c7/1ace/attachment/oop-1.8.1.patch 14 | 15 | 11. Patch rdesktop source: patch -p1 < oop.patch 16 | 17 | 12. Bootstrap the config with ./bootstrap 18 | Apt-get install build-essential 19 | apt-get install gcc make autoconf automake 20 | 21 | 13. ./configure –disable-smartcard 22 | make 23 | https://github.com/rdesktop/rdesktop/issues/138 24 | 25 | apt-get install libssl1.0-dev 26 | make clean 27 | make 28 | 29 | Edit server/Makefile.mingw32: 30 | CC=i686-w64-mingw32-gcc 31 | make server-mingw32 32 | 33 | 34 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/.cvsignore: -------------------------------------------------------------------------------- 1 | rdesktop 2 | rdp2vnc 3 | autom4te.cache 4 | Makefile 5 | config.log 6 | config.status 7 | configure 8 | rdesktop*.tar.gz 9 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/README: -------------------------------------------------------------------------------- 1 | ========================================== 2 | rdesktop: A Remote Desktop Protocol client 3 | ========================================== 4 | 5 | rdesktop is an open source client for Microsoft's RDP protocol. It is 6 | known to work with Windows versions such as NT 4 Terminal Server, 7 | 2000, XP, 2003, 2003 R2, Vista, 2008, 7, and 2008 R2. rdesktop 8 | currently implements the RDP version 4 and 5 protocols. 9 | 10 | Installation 11 | ------------ 12 | rdesktop uses a GNU-style build procedure. Typically all that is necessary 13 | to install rdesktop is the following:: 14 | 15 | % ./configure 16 | % make 17 | % make install 18 | 19 | The default is to install under /usr/local. This can be changed by adding 20 | --prefix=directory to the configure line. 21 | 22 | Note for Subversion users 23 | ------------------------- 24 | If you have downloaded a snapshot of rdesktop using Subversion, you 25 | will first need to run ./bootstrap in order to generate the build 26 | infrastructure. This is not necessary for release versions of 27 | rdesktop. 28 | 29 | Invocation 30 | ---------- 31 | Simply run:: 32 | 33 | % rdesktop server 34 | 35 | where server is the name of the Terminal Services machine. (If you receive 36 | "Connection refused", this probably means that the server does not have 37 | Terminal Services enabled, or there is a firewall blocking access.) 38 | 39 | You can also specify a number of options on the command line. These are listed 40 | in the rdesktop manual page (run "man rdesktop"). 41 | 42 | Smart-card support notes 43 | ------------------------ 44 | The smart-card support module uses PCSC-lite. You should use PCSC-lite 1.2.9 or 45 | later. 46 | 47 | To enable smart-card support in the rdesktop just run "./configure" with the 48 | "--enable-smartcard" option. Also you can enable smart-card debug with 49 | additional "--with-debug-smartcard" option. 50 | 51 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/asn.c: -------------------------------------------------------------------------------- 1 | /* -*- c-basic-offset: 8 -*- 2 | rdesktop: A Remote Desktop Protocol client. 3 | ASN.1 utility functions 4 | Copyright 2012 Henrik Andersson for Cendio AB 5 | 6 | This program is free software: you can redistribute it and/or modify 7 | it under the terms of the GNU General Public License as published by 8 | the Free Software Foundation, either version 3 of the License, or 9 | (at your option) any later version. 10 | 11 | This program is distributed in the hope that it will be useful, 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | GNU General Public License for more details. 15 | 16 | You should have received a copy of the GNU General Public License 17 | along with this program. If not, see . 18 | */ 19 | 20 | #include "rdesktop.h" 21 | 22 | 23 | /* Parse an ASN.1 BER header */ 24 | RD_BOOL 25 | ber_parse_header(STREAM s, int tagval, int *length) 26 | { 27 | int tag, len; 28 | 29 | if (tagval > 0xff) 30 | { 31 | in_uint16_be(s, tag); 32 | } 33 | else 34 | { 35 | in_uint8(s, tag); 36 | } 37 | 38 | if (tag != tagval) 39 | { 40 | error("expected tag %d, got %d\n", tagval, tag); 41 | return False; 42 | } 43 | 44 | in_uint8(s, len); 45 | 46 | if (len & 0x80) 47 | { 48 | len &= ~0x80; 49 | *length = 0; 50 | while (len--) 51 | next_be(s, *length); 52 | } 53 | else 54 | *length = len; 55 | 56 | return s_check(s); 57 | } 58 | 59 | /* Output an ASN.1 BER header */ 60 | void 61 | ber_out_header(STREAM s, int tagval, int length) 62 | { 63 | if (tagval > 0xff) 64 | { 65 | out_uint16_be(s, tagval); 66 | } 67 | else 68 | { 69 | out_uint8(s, tagval); 70 | } 71 | 72 | if (length >= 0x80) 73 | { 74 | out_uint8(s, 0x82); 75 | out_uint16_be(s, length); 76 | } 77 | else 78 | out_uint8(s, length); 79 | } 80 | 81 | /* Output an ASN.1 BER integer */ 82 | void 83 | ber_out_integer(STREAM s, int value) 84 | { 85 | ber_out_header(s, BER_TAG_INTEGER, 2); 86 | out_uint16_be(s, value); 87 | } 88 | 89 | RD_BOOL 90 | ber_in_header(STREAM s, int *tagval, int *decoded_len) 91 | { 92 | in_uint8(s, *tagval); 93 | in_uint8(s, *decoded_len); 94 | 95 | if (*decoded_len < 0x80) 96 | return True; 97 | else if (*decoded_len == 0x81) 98 | { 99 | in_uint8(s, *decoded_len); 100 | return True; 101 | } 102 | else if (*decoded_len == 0x82) 103 | { 104 | in_uint16_be(s, *decoded_len); 105 | return True; 106 | } 107 | 108 | return False; 109 | } 110 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/asn.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/asn.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/bitmap.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/bitmap.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/bootstrap: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | rm -rf autom4te.cache 3 | autoreconf -i 4 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/cache.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/cache.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/channels.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/channels.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/cliprdr.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/cliprdr.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/cssp.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/cssp.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/ctrl.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/ctrl.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/disk.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/disk.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/doc/AUTHORS: -------------------------------------------------------------------------------- 1 | This is an attempt at a list of people who have made significant 2 | contributions to the code. If you have been unintentionally omitted 3 | please let one of the team members know. 4 | 5 | Alexi Volkov 6 | Erik Forsberg 7 | GuoJunBo 8 | Henrik Andersson for Cendio AB 9 | Hugo Trippaers 10 | Jay Sorg 11 | Jeremy Meng 12 | Jeroen Meijer 13 | Matrox Graphics Inc. 14 | Matthew Chapman 15 | Michael Gernoth 16 | Michal Mihalik 17 | Norbert Federa 18 | Peter Astrand for Cendio AB 19 | Peter Kallden 20 | Pierre Ossman for Cendio AB 21 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/doc/HACKING: -------------------------------------------------------------------------------- 1 | 2 | Code style / indentation 3 | ------------------------ 4 | The file indent-all.sh contains information about the current code 5 | style. Run this script before commits. 6 | 7 | 8 | Variable argument macros 9 | ------------------------ 10 | Variable argument macros are non-portable in general, and should be 11 | avoided. Either use a second set of parentheses like DEBUG, or create 12 | a variable argument function like error. 13 | 14 | 15 | Structure 16 | --------- 17 | The core protocol stack should be system-independent (i.e. ANSI C89 18 | only) so that it is easy to port. This currently applies to the 19 | following files: 20 | 21 | bitmap.c licence.c orders.c rdp.c rdp5.c cache.c iso.c mcs.c 22 | secure.c mppc.c channels.c 23 | rdesktop.c 24 | 25 | 26 | Compiler support 27 | ---------------- 28 | 29 | The source code should be compatible with ANSI C89. One exception is 30 | the SeamlessRDP ServerEXE and ClientDLL, which should be compatible 31 | with ANSI C99. 32 | 33 | 34 | RDP resources 35 | ------------- 36 | http://dev.remotenetworktechnology.com/refdata.htm 37 | 38 | 39 | Checking for out of memory conditions 40 | ------------------------------------- 41 | Try to handle out of memory conditions gracefully. Use the xmalloc 42 | routines from rdesktop.c, instead of calling malloc manually. Also, 43 | remember that several Xlib functions can return NULL. This includes 44 | XGetImage. Use exit_if_null to verify returned pointers. 45 | 46 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/doc/TODO: -------------------------------------------------------------------------------- 1 | * General 2 | 3 | * Rework main loop to a generic event handler (i.e. move select() to 4 | the top of the stack, not the end). Also means rewriting the connect 5 | procedure as a state machine. 6 | 7 | * Stop using static objects for packets and make it more clear when it 8 | is in use (explicit allocation and free). 9 | 10 | * Clipboard: 11 | 12 | * Support other data types than plain text. 13 | 14 | * Conversion between different character sets. 15 | 16 | 17 | * Drive Redirection: 18 | 19 | * Real support for file locking 20 | 21 | * Handle reconnections correctly. 22 | 23 | * Various deficiencies; see FIXMEs in source code. 24 | 25 | 26 | * Serial Port Redirection: 27 | 28 | * More testing needed. 29 | 30 | 31 | * Printer Redirection: 32 | 33 | * More testing needed. 34 | 35 | 36 | * Keymapping: 37 | 38 | 39 | * Sound redirection 40 | 41 | * Use timestamps in audio packets. 42 | 43 | * Add resampling to supported samplerates of audio-hardware. 44 | 45 | * Lower CPU-usage with an audio thread. 46 | 47 | 48 | * Smartcard redirection 49 | 50 | * Merge patches currently implementing sc-redirection. 51 | 52 | 53 | * Miscellaneous 54 | 55 | * Clean up header files. The current "proto.h" and "xproto.h" is far 56 | from optimal. 57 | 58 | * Go through the many trackers (bugs/patches/RFEs) at SourceForge. 59 | 60 | * More fancy homepage. 61 | 62 | * Enhance documentation. Write a FAQ. 63 | 64 | 65 | * SeamlessRDP mode 66 | 67 | * Add a client to server message for starting additional 68 | applications. 69 | 70 | * Support cmd.exe. 71 | 72 | * Support for Input Contexts. 73 | 74 | * Enhanced support for WM_DELETE_WINDOW: Instead of terminating 75 | rdesktop, close the window on the server side. 76 | 77 | * Systray support. 78 | 79 | * Better support for non-EWMH window managers. 80 | 81 | * Support for non-rectangular windows. 82 | 83 | * The focus handling of menus is a bit crude. 84 | 85 | * Support for sending focus information from client to server. 86 | 87 | * Implement something similiar to explhook.dll - support for running 88 | explorer.exe in non-shell mode. 89 | 90 | * Better compatibility with Task Manager. 91 | 92 | * XINERAMA support. 93 | 94 | * When enumerating windows, make sure to send info about windows 95 | that are transient for other windows after the referred window. 96 | 97 | * We support topmost windows at creating time, but we do not detect 98 | when this property is added or removed. This can be verified with 99 | task manager, which has an "Always on top" option. 100 | 101 | * Window icons are not set when reconnecting. get_icon/update_icon 102 | needs to be called from enum_cb. 103 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/doc/ctrl.txt: -------------------------------------------------------------------------------- 1 | TODO 2 | ---- 3 | 4 | Overview 5 | ======== 6 | 7 | The protocol is a UTF-8 line based bidirectional protocol were a slave sends 8 | a method with optional argument to the master and a result of operation is 9 | returned to the slave in a synchronous send recv operation. 10 | 11 | 12 | A method call from Slave to the Master have the following syntax: 13 | 14 | METHOD [ARG1[ ARG2 [...]]] 15 | 16 | Argument string sent for a method call should be escaped as descibed below under 17 | String escaping section. 18 | 19 | 20 | A result from Master to the Slave have the following syntax: 21 | 22 | "OK" || "ERROR" 23 | 24 | Result CODE is specific to the method implementation except for 0xffffffff which 25 | is internal to the protocol and means that method does not exist. 26 | 27 | 28 | One line may not exceed 1024 bytes, including newline. 29 | 30 | 31 | String escaping 32 | =============== 33 | Percentage sign has been choosen as escaping character. 34 | 35 | The rules for escaping are: 36 | 37 | Characters < 32 and % are escaped to %xx where xx is the byte value of the 38 | escaped character. 39 | 40 | 41 | Implemented methods 42 | ======================= 43 | 44 | seamless.spawn 45 | -------------- 46 | 47 | Spawns a new windows command in the current seamless channel of the master. 48 | 49 | Syntax: 50 | seamless.spawn 51 | 52 | Spawns a seamless process in the current seamless channel of the master with COMMANDLINE. 53 | 54 | Errorcodes: 55 | 56 | 0x1 Master does not have a seamless rdp channel established. 57 | 58 | 59 | 60 | 61 | 62 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/doc/ipv6.txt: -------------------------------------------------------------------------------- 1 | 2 | IPv6 support in rdesktop 3 | ======================== 4 | The IPv6 support was developed by Mike Dawson : 5 | 6 | Attached is a patch to tcp.c to enable IPv6 support. Build with 7 | 'IPv6' defined to enable it. It's so far only been tested on 8 | Linux 2.4.21 connecting to Windows XP SP1. 9 | 10 | Since terminal services doesn't seem to bind to the ipv6 interface 11 | on XP I had to run 'netsh interface portproxy add v6tov4 12 | listenport=3389 connectport=3389' from the windows command prompt 13 | to get it to work. 14 | 15 | 16 | rdesktop now supports numeric IPv6 addresses: 17 | 18 | It checks for two or more colons in an address to decide what it's 19 | dealing with so you can now do: 20 | 21 | rdesktop 2001:1:2:3::4 22 | 23 | without it getting confused with an ipv4:port specification. I've 24 | also followed the square bracket convention used by browsers 25 | (http://www.ietf.org/rfc/rfc2732.txt) so if you want to specify a 26 | non-standard port with an ipv6 address you can use the format: 27 | 28 | rdesktop [2001:1:2:3::4]:3390 29 | 30 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/doc/keynums.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/doc/keynums.png -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/doc/licensing.txt: -------------------------------------------------------------------------------- 1 | 2 | To be able to connect to Microsoft Windows 2000 Terminal Services (and 3 | probably later versions), you'll need to deal with licensing. This is 4 | complicated. This file is supposed to contain some information about 5 | how rdesktop works with Microsofts license systems. 6 | 7 | There's a lot of information on the MS web site, for example, 8 | http://support.microsoft.com/default.aspx?scid=kb;EN-US;287687. 9 | 10 | From the rdesktop mailing list: 11 | 12 | Peter Åstrand , 2003-02-06 13 | 14 | > We are running rdesktop 1.2 on machine A and connects to a Windows 2000 15 | > Server (machine B). The W2K machine has 5 real licenses installed ("Windows 16 | > 2000 Terminal Services Client Access License", "Open" type). This can be 17 | > verifier by using "Terminal Services Licensing". The problem is that all 18 | > issued licenses have an expire-date. The expire date for the license issued 19 | > to A was reached today, and no more connections could be made until we 20 | > changed the client name (by using -n). 21 | > 22 | > We also have another similiar systems, with Linux machine C and W2K server 23 | > D. This server has 200 licenses installed of the type "Select". On this 24 | > server, the issued licenses seems to be permanent: The expire date is set 25 | > to "-", and we have no problem with this system. 26 | > 27 | > The question of course is why the first system issues license with 28 | > expiration date, while the second system issues permanent licenses. 29 | 30 | 31 | Darryn Capes-Davis, 2003-02-07 32 | 33 | > I have been through the problems and can tell you what is going 34 | > on. The main difference of Machine B (Server 1) and Machine D (Server 35 | > 2) is that from what I see Machine B has Service Pack 3 installed and 36 | > Machine D does not. You see in Service Pack 3 there was a change made 37 | > to TS Licencing in that Microsoft introduced a licence recovery 38 | > mechanism. To cut to the point (I don't know the details) rdesktop 1.2 39 | > with SAVE_LICENCE defined works fine. In the new lic method the 40 | > terminal server expects a valid licence to be presented to renew 41 | > it. Otherwise it just expires it - and a day later you will see it 42 | > actually gone (it does housekeeping once a day)! So if SAVE_LICENCE 43 | > code is not enabled then it just expires and you can't use the licence 44 | > until it cleans it away - and this is where a little gotcha is - if 45 | > you move from using an rdesktop without SAVE_LICENCE to one with 46 | > SAVE_LICENCE then it still won't recover an 'expired' licence. You 47 | > have to wait for the daily housekeeping to clean it up - this really 48 | > had me going for half a day or so! This is exactly what happened to 49 | > you. 50 | > 51 | > The Server pre Spk 3 has the old model where licences never expire. To 52 | > recover a licence that you never wanted to use again you have to call 53 | > the Microsoft Clearing House. That's why they introduced the new 54 | > method. And if you upgrade a Pre Spk3 server to Spk3 then the licences 55 | > granted still stay with the old method - only new licences granted 56 | > will use the new expiry method. 57 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/doc/lspci-channel.txt: -------------------------------------------------------------------------------- 1 | 2 | Protocol overview 3 | ================= 4 | 5 | The lspci virtual channel makes it possible for the remote RDP server 6 | to enumerate the local PCI devices. The protocol on this channel is 7 | text based and line oriented: One single line per request or 8 | response. UNIX-style LF line breaks are used. The maximum line length 9 | is 1023, newline included. 10 | 11 | rdesktop acts as a server, with only one request: 12 | 13 | LSPCI 14 | 15 | The response is several lines with this syntax: 16 | 17 | ,,,,,, 18 | 19 | After the last line, a line with a single dot is sent. 20 | 21 | Example: 22 | 23 | 0300,102b,0525,102b,0338,04,00 24 | 0401,8086,24d5,1028,0174,02,8f 25 | . 26 | 27 | 28 | Usage 29 | ===== 30 | 31 | To enable to lspci virtual channel, run rdesktop with "-r lspci". 32 | 33 | 34 | References 35 | ========== 36 | 37 | http://www.microsoft.com/msj/1099/terminal/terminal.aspx 38 | http://msdn.microsoft.com/library/default.asp?url=/library/en-us/termserv/termserv/terminal_services_virtual_channels.asp 39 | 40 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/doc/makerelease.txt: -------------------------------------------------------------------------------- 1 | 2 | * Update doc/ChangeLog 3 | 4 | * Update version in configure.ac and rdesktop.spec 5 | 6 | * Create a tarball: "make dist". Verify that it contains only relevant files 7 | 8 | * Test build the tarball on a few systems. Test "rpmbuild -ta" as well 9 | 10 | * Tag: 11 | svn copy https://rdesktop.svn.sourceforge.net/svnroot/rdesktop/rdesktop/trunk \ 12 | https://rdesktop.svn.sourceforge.net/svnroot/rdesktop/rdesktop/tags/rdesktop-x.y.z 13 | 14 | * Do a new SF file release 15 | 16 | * Update web page 17 | 18 | * Send announcement to the mailing list 19 | 20 | * Update Freshmeat entry 21 | 22 | * Append "post" to VERSION 23 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/doc/redirection.txt: -------------------------------------------------------------------------------- 1 | 2 | Syntax for configuring RDP redirection modules 3 | ============================================== 4 | 5 | General 6 | ------- 7 | 8 | All redirection is configured using the -r option. The general syntax 9 | is: 10 | 11 | -r : 12 | 13 | is the name of the redirection module. The following names 14 | are valid: disk, printer, lptport, comport, clipboard, sound. 15 | 16 | is interpreted by each redirection module. 17 | 18 | The redirection modules are described below. 19 | 20 | 21 | disk mapping 22 | ------------- 23 | Multiple mappings possible: yes 24 | Default: no disk redirected 25 | Syntax: -r disk:= 26 | Example: -r disk:home=/home/johndoe 27 | 28 | 29 | printer mapping 30 | --------------- 31 | Multiple mappings possible: yes 32 | Default: no printers redirected 33 | Syntax: -r printer: 34 | Example: -r printer:mydeskjet 35 | 36 | 37 | 38 | LPT port mapping 39 | ---------------- 40 | Multiple mappings possible: yes 41 | Default: no LPT ports redirected 42 | Syntax: -r lptport:= 43 | Example: -r lptport:LPT1=/dev/lp0 44 | 45 | 46 | COM port mapping 47 | ---------------- 48 | Multiple mappings possible: yes 49 | Default: no COM ports redirected 50 | Syntax: -r comport:= 51 | Example: -r comport:COM1=/dev/ttyS0 52 | 53 | 54 | clipboard mapping 55 | ----------------- 56 | Multiple mappings possible: no 57 | Default: yes 58 | Syntax: -r clipboard:[yes|no] 59 | Example: -r clipboard:no 60 | 61 | 62 | sound mapping 63 | ------------- 64 | Multiple mappings possible: no 65 | Default: off 66 | Syntax: -r sound:[local|off|remote] 67 | 68 | "local" means "Bring to this computer" 69 | "off" means "Do not play" 70 | "remote" means "Leave at remote computer" 71 | 72 | Example: -r sound:remote 73 | 74 | 75 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/ewmhints.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/ewmhints.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/genauthors: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # -*-mode: python; coding: utf-8 -*- 3 | 4 | import re 5 | import sys 6 | 7 | # Filled in with historical authors which are not mentioned in the source 8 | authors = { 9 | "Hugo Trippaers ": 1, 10 | "Michal Mihalik ": 1, 11 | "Norbert Federa ": 1, 12 | "Peter Kallden ": 1, 13 | } 14 | 15 | 16 | def dostatement(s): 17 | # Get rid of (C) 18 | s = re.sub('\(C\)', '', s).strip() 19 | 20 | # Get rid of years 21 | s = re.sub('\d\d\d\d(-\d\d\d\d)?', '', s).strip() 22 | 23 | # Get rid of in-code statements 24 | if s.find('"') != -1: 25 | return 26 | 27 | global authors 28 | authors[s] = 1 29 | 30 | 31 | def dofile(fname): 32 | f = open(fname) 33 | pt = re.compile('\sCopyright (.*)') 34 | for line in f: 35 | m = pt.search(line) 36 | if m != None: 37 | dostatement(m.group(1).strip()) 38 | 39 | 40 | def main(): 41 | for fname in sys.argv[1:]: 42 | dofile(fname) 43 | 44 | print """This is an attempt at a list of people who have made significant 45 | contributions to the code. If you have been unintentionally omitted 46 | please let one of the team members know. 47 | """ 48 | 49 | keys = authors.keys() 50 | keys.sort() 51 | for k in keys: 52 | print k 53 | 54 | 55 | 56 | 57 | 58 | main() 59 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/indent-all.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | indent -bli0 -i8 -cli8 -npcs -l100 *.h *.c vnc/*.h vnc/*.c 3 | # Tweak in order to support both indent 2.2.10 and 2.2.11 4 | perl -pi -e 's|!!|! !|g' *.c 5 | 6 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/iso.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/iso.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/ar: -------------------------------------------------------------------------------- 1 | # generated from XKB map ar 2 | include common 3 | map 0x401 4 | exclam 0x02 shift 5 | at 0x03 shift 6 | numbersign 0x04 shift 7 | dollar 0x05 shift 8 | percent 0x06 shift 9 | asciicircum 0x07 shift 10 | ampersand 0x08 shift 11 | asterisk 0x09 shift 12 | parenleft 0x0a shift 13 | parenright 0x0b shift 14 | minus 0x0c 15 | underscore 0x0c shift 16 | equal 0x0d 17 | plus 0x0d shift 18 | Arabic_dad 0x10 altgr 19 | Arabic_fatha 0x10 shift altgr 20 | Arabic_sad 0x11 altgr 21 | Arabic_fathatan 0x11 shift altgr 22 | Arabic_theh 0x12 altgr 23 | Arabic_damma 0x12 shift altgr 24 | Arabic_qaf 0x13 altgr 25 | Arabic_dammatan 0x13 shift altgr 26 | Arabic_feh 0x14 altgr 27 | UFEF9 0x14 shift altgr 28 | Arabic_ghain 0x15 altgr 29 | Arabic_hamzaunderalef 0x15 shift altgr 30 | Arabic_ain 0x16 altgr 31 | grave 0x16 shift altgr 32 | Arabic_ha 0x17 altgr 33 | division 0x17 shift altgr 34 | Arabic_khah 0x18 altgr 35 | multiply 0x18 shift altgr 36 | Arabic_hah 0x19 altgr 37 | Arabic_semicolon 0x19 shift altgr 38 | bracketleft 0x1a 39 | braceleft 0x1a shift 40 | Arabic_jeem 0x1a altgr 41 | bracketright 0x1b 42 | braceright 0x1b shift 43 | Arabic_dal 0x1b altgr 44 | Arabic_sheen 0x1e altgr 45 | backslash 0x1e shift altgr 46 | Arabic_seen 0x1f altgr 47 | Arabic_yeh 0x20 altgr 48 | bracketleft 0x20 shift altgr 49 | Arabic_beh 0x21 altgr 50 | bracketright 0x21 shift altgr 51 | Arabic_lam 0x22 altgr 52 | UFEF7 0x22 shift altgr 53 | Arabic_alef 0x23 altgr 54 | Arabic_hamzaonalef 0x23 shift altgr 55 | Arabic_teh 0x24 altgr 56 | Arabic_tatweel 0x24 shift altgr 57 | Arabic_noon 0x25 altgr 58 | Arabic_comma 0x25 shift altgr 59 | Arabic_meem 0x26 altgr 60 | slash 0x26 shift altgr 61 | semicolon 0x27 62 | colon 0x27 shift 63 | Arabic_kaf 0x27 altgr 64 | apostrophe 0x28 65 | quotedbl 0x28 shift 66 | Arabic_tah 0x28 altgr 67 | grave 0x29 68 | asciitilde 0x29 shift 69 | Arabic_thal 0x29 altgr 70 | Arabic_shadda 0x29 shift altgr 71 | backslash 0x2b 72 | bar 0x2b shift 73 | less 0x2b altgr 74 | greater 0x2b shift altgr 75 | Arabic_hamzaonyeh 0x2c altgr 76 | asciitilde 0x2c shift altgr 77 | Arabic_hamza 0x2d altgr 78 | Arabic_sukun 0x2d shift altgr 79 | Arabic_hamzaonwaw 0x2e altgr 80 | Arabic_kasra 0x2e shift altgr 81 | Arabic_ra 0x2f altgr 82 | Arabic_kasratan 0x2f shift altgr 83 | UFEFB 0x30 altgr 84 | UFEF5 0x30 shift altgr 85 | Arabic_alefmaksura 0x31 altgr 86 | Arabic_maddaonalef 0x31 shift altgr 87 | Arabic_tehmarbuta 0x32 altgr 88 | apostrophe 0x32 shift altgr 89 | comma 0x33 90 | less 0x33 shift 91 | Arabic_waw 0x33 altgr 92 | period 0x34 93 | greater 0x34 shift 94 | Arabic_zain 0x34 altgr 95 | slash 0x35 96 | question 0x35 shift 97 | Arabic_zah 0x35 altgr 98 | Arabic_question_mark 0x35 shift altgr 99 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/convert-map: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python2 2 | # -*-Python-*- 3 | # 4 | # Copyright 2001 Peter Åstrand for Cendio AB 5 | # 6 | # This program is free software; you can redistribute it and/or modify 7 | # it under the terms of the GNU General Public License as published by 8 | # the Free Software Foundation; version 2 of the License. 9 | # 10 | # This program is distributed in the hope that it will be useful, 11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | # GNU General Public License for more details. 14 | # 15 | # You should have received a copy of the GNU General Public License 16 | # along with this program; if not, write to the Free Software 17 | # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 18 | 19 | import sys 20 | 21 | def main(): 22 | f = open(sys.argv[1]) 23 | while 1: 24 | line = f.readline() 25 | if not line: break 26 | 27 | if line.startswith("#") or line.startswith("include"): 28 | print line, 29 | continue 30 | 31 | fields = line.split() 32 | 33 | if line.startswith("map"): 34 | print "map 0x%s" % fields[1] 35 | continue 36 | 37 | scancode = fields[0] 38 | for pos in range(1, len(fields)): 39 | keysym = fields[pos] 40 | 41 | if pos == 1: 42 | modifiers = "" 43 | elif pos == 2: 44 | modifiers = "shift" 45 | elif pos == 3: 46 | modifiers = "altgr" 47 | elif pos == 4: 48 | modifiers = "shift altgr" 49 | else: 50 | raise("Invalid line: %s" % line) 51 | 52 | print "%s 0x%s %s" % (keysym, scancode, modifiers) 53 | 54 | 55 | 56 | if __name__ == "__main__": 57 | if len(sys.argv) < 2: 58 | print "Convert old-style keymaps to new style" 59 | print "Usage: %s " % sys.argv[0] 60 | sys.exit(1) 61 | else: 62 | main() 63 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/da: -------------------------------------------------------------------------------- 1 | # generated from XKB map dk 2 | include common 3 | map 0x406 4 | exclam 0x02 shift 5 | exclamdown 0x02 altgr 6 | onesuperior 0x02 shift altgr 7 | quotedbl 0x03 shift 8 | at 0x03 altgr 9 | twosuperior 0x03 shift altgr 10 | numbersign 0x04 shift 11 | sterling 0x04 altgr 12 | threesuperior 0x04 shift altgr 13 | currency 0x05 shift 14 | dollar 0x05 altgr 15 | onequarter 0x05 shift altgr 16 | percent 0x06 shift 17 | onehalf 0x06 altgr 18 | cent 0x06 shift altgr 19 | ampersand 0x07 shift 20 | yen 0x07 altgr 21 | fiveeighths 0x07 shift altgr 22 | slash 0x08 shift 23 | braceleft 0x08 altgr 24 | division 0x08 shift altgr 25 | parenleft 0x09 shift 26 | bracketleft 0x09 altgr 27 | guillemotleft 0x09 shift altgr 28 | parenright 0x0a shift 29 | bracketright 0x0a altgr 30 | guillemotright 0x0a shift altgr 31 | equal 0x0b shift 32 | braceright 0x0b altgr 33 | degree 0x0b shift altgr 34 | plus 0x0c 35 | question 0x0c shift 36 | plusminus 0x0c altgr 37 | questiondown 0x0c shift altgr 38 | dead_acute 0x0d 39 | dead_grave 0x0d shift 40 | bar 0x0d altgr 41 | brokenbar 0x0d shift altgr 42 | Greek_OMEGA 0x10 shift altgr 43 | lstroke 0x11 altgr 44 | Lstroke 0x11 shift altgr 45 | EuroSign 0x12 altgr 46 | cent 0x12 shift altgr 47 | registered 0x13 altgr 48 | thorn 0x14 altgr 49 | THORN 0x14 shift altgr 50 | leftarrow 0x15 altgr 51 | yen 0x15 shift altgr 52 | downarrow 0x16 altgr 53 | uparrow 0x16 shift altgr 54 | rightarrow 0x17 altgr 55 | idotless 0x17 shift altgr 56 | oe 0x18 altgr 57 | OE 0x18 shift altgr 58 | thorn 0x19 altgr 59 | THORN 0x19 shift altgr 60 | aring 0x1a 61 | Aring 0x1a shift 62 | dead_diaeresis 0x1a altgr 63 | dead_abovering 0x1a shift altgr 64 | dead_diaeresis 0x1b 65 | dead_circumflex 0x1b shift 66 | dead_tilde 0x1b altgr 67 | dead_caron 0x1b shift altgr 68 | ordfeminine 0x1e altgr 69 | masculine 0x1e shift altgr 70 | ssharp 0x1f altgr 71 | section 0x1f shift altgr 72 | eth 0x20 altgr 73 | ETH 0x20 shift altgr 74 | dstroke 0x21 altgr 75 | ordfeminine 0x21 shift altgr 76 | eng 0x22 altgr 77 | ENG 0x22 shift altgr 78 | hstroke 0x23 altgr 79 | Hstroke 0x23 shift altgr 80 | kra 0x25 altgr 81 | lstroke 0x26 altgr 82 | Lstroke 0x26 shift altgr 83 | ae 0x27 84 | AE 0x27 shift 85 | oslash 0x28 86 | Ooblique 0x28 shift 87 | dead_caron 0x28 shift altgr 88 | onehalf 0x29 89 | section 0x29 shift 90 | threequarters 0x29 altgr 91 | paragraph 0x29 shift altgr 92 | apostrophe 0x2b 93 | asterisk 0x2b shift 94 | dead_doubleacute 0x2b altgr 95 | multiply 0x2b shift altgr 96 | guillemotleft 0x2c altgr 97 | guillemotright 0x2d altgr 98 | copyright 0x2e altgr 99 | leftdoublequotemark 0x2f altgr 100 | grave 0x2f shift altgr 101 | rightdoublequotemark 0x30 altgr 102 | mu 0x32 altgr 103 | masculine 0x32 shift altgr 104 | comma 0x33 105 | semicolon 0x33 shift 106 | dead_cedilla 0x33 altgr 107 | dead_ogonek 0x33 shift altgr 108 | period 0x34 109 | colon 0x34 shift 110 | periodcentered 0x34 altgr 111 | dead_abovedot 0x34 shift altgr 112 | minus 0x35 113 | underscore 0x35 shift 114 | hyphen 0x35 altgr 115 | macron 0x35 shift altgr 116 | nobreakspace 0x39 altgr 117 | less 0x56 118 | greater 0x56 shift 119 | backslash 0x56 altgr 120 | notsign 0x56 shift altgr 121 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/de: -------------------------------------------------------------------------------- 1 | # generated from XKB map de 2 | include common 3 | map 0x407 4 | exclam 0x02 shift 5 | onesuperior 0x02 altgr 6 | exclamdown 0x02 shift altgr 7 | quotedbl 0x03 shift 8 | twosuperior 0x03 altgr 9 | oneeighth 0x03 shift altgr 10 | section 0x04 shift 11 | threesuperior 0x04 altgr 12 | sterling 0x04 shift altgr 13 | dollar 0x05 shift 14 | onequarter 0x05 altgr 15 | currency 0x05 shift altgr 16 | percent 0x06 shift 17 | onehalf 0x06 altgr 18 | threeeighths 0x06 shift altgr 19 | ampersand 0x07 shift 20 | threequarters 0x07 altgr 21 | fiveeighths 0x07 shift altgr 22 | slash 0x08 shift 23 | braceleft 0x08 altgr 24 | seveneighths 0x08 shift altgr 25 | parenleft 0x09 shift 26 | bracketleft 0x09 altgr 27 | trademark 0x09 shift altgr 28 | parenright 0x0a shift 29 | bracketright 0x0a altgr 30 | plusminus 0x0a shift altgr 31 | equal 0x0b shift 32 | braceright 0x0b altgr 33 | ssharp 0x0c 34 | question 0x0c shift 35 | backslash 0x0c altgr 36 | questiondown 0x0c shift altgr 37 | acute 0x0d 38 | dead_acute 0x0d 39 | grave 0x0d shift 40 | dead_grave 0x0d shift 41 | dead_cedilla 0x0d altgr 42 | dead_ogonek 0x0d shift altgr 43 | at 0x10 altgr 44 | Greek_OMEGA 0x10 shift altgr 45 | EuroSign 0x12 altgr 46 | paragraph 0x13 altgr 47 | registered 0x13 shift altgr 48 | tslash 0x14 altgr 49 | Tslash 0x14 shift altgr 50 | z 0x15 addupper 51 | leftarrow 0x15 altgr 52 | yen 0x15 shift altgr 53 | downarrow 0x16 altgr 54 | uparrow 0x16 shift altgr 55 | rightarrow 0x17 altgr 56 | idotless 0x17 shift altgr 57 | oslash 0x18 altgr 58 | Ooblique 0x18 shift altgr 59 | thorn 0x19 altgr 60 | THORN 0x19 shift altgr 61 | udiaeresis 0x1a 62 | Udiaeresis 0x1a shift 63 | dead_diaeresis 0x1a altgr 64 | dead_abovering 0x1a shift altgr 65 | plus 0x1b 66 | asterisk 0x1b shift 67 | asciitilde 0x1b altgr 68 | dead_tilde 0x1b altgr 69 | dead_macron 0x1b shift altgr 70 | ae 0x1e altgr 71 | AE 0x1e shift altgr 72 | eth 0x20 altgr 73 | ETH 0x20 shift altgr 74 | dstroke 0x21 altgr 75 | ordfeminine 0x21 shift altgr 76 | eng 0x22 altgr 77 | ENG 0x22 shift altgr 78 | hstroke 0x23 altgr 79 | Hstroke 0x23 shift altgr 80 | kra 0x25 altgr 81 | odiaeresis 0x27 82 | Odiaeresis 0x27 shift 83 | dead_doubleacute 0x27 altgr 84 | adiaeresis 0x28 85 | Adiaeresis 0x28 shift 86 | dead_caron 0x28 shift altgr 87 | asciicircum 0x29 88 | dead_circumflex 0x29 89 | degree 0x29 shift 90 | notsign 0x29 altgr 91 | numbersign 0x2b 92 | apostrophe 0x2b shift 93 | dead_breve 0x2b shift altgr 94 | y 0x2c addupper 95 | guillemotleft 0x2c altgr 96 | guillemotright 0x2d altgr 97 | cent 0x2e altgr 98 | copyright 0x2e shift altgr 99 | leftdoublequotemark 0x2f altgr 100 | rightdoublequotemark 0x30 altgr 101 | mu 0x32 altgr 102 | masculine 0x32 shift altgr 103 | comma 0x33 104 | semicolon 0x33 shift 105 | horizconnector 0x33 altgr 106 | multiply 0x33 shift altgr 107 | period 0x34 108 | colon 0x34 shift 109 | periodcentered 0x34 altgr 110 | division 0x34 shift altgr 111 | minus 0x35 112 | underscore 0x35 shift 113 | dead_belowdot 0x35 altgr 114 | dead_abovedot 0x35 shift altgr 115 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/de-ch: -------------------------------------------------------------------------------- 1 | # rdesktop Swiss-German (de-ch) keymap file 2 | # 2003-06-03 by noldi@tristar.ch 3 | # 4 | include common 5 | map 0x00000807 6 | # 7 | # Scan Code 1 8 | section 0x29 9 | degree 0x29 shift 10 | notsign 0x29 altgr inhibit 11 | # 12 | # Scan Code 2 13 | plus 0x2 shift 14 | brokenbar 0x02 altgr 15 | # 16 | # Scan Code 3 17 | quotedbl 0x03 shift 18 | at 0x03 altgr 19 | # 20 | # Scan Code 4 21 | asterisk 0x04 shift 22 | numbersign 0x04 altgr 23 | # 24 | # Scan Code 5 25 | ccedilla 0x05 shift 26 | onequarter 0x05 altgr inhibit 27 | # 28 | # Scan Code 6 29 | percent 0x06 shift 30 | onehalf 0x06 altgr inhibit 31 | # 32 | # Scan Code 7 33 | ampersand 0x07 shift 34 | notsign 0x07 altgr 35 | # 36 | # Scan Code 8 37 | slash 0x08 shift 38 | bar 0x08 altgr 39 | # 40 | # Scan Code 9 41 | parenleft 0x09 shift 42 | cent 0x09 altgr 43 | # 44 | # Scan Code 10 45 | parenright 0x0a shift 46 | # 47 | # Scan Code 11 48 | equal 0x0b shift 49 | braceright 0x0b altgr inhibit 50 | # 51 | # Scan Code 12 52 | apostrophe 0x0c 53 | question 0x0c shift 54 | dead_acute 0x0c altgr 55 | # 56 | # Scan Code 13 57 | dead_circumflex 0x0d 58 | dead_grave 0x0d shift 59 | dead_tilde 0x0d altgr 60 | # 61 | # Scan Code 19 62 | EuroSign 0x12 altgr 63 | # 64 | # Scan Code 22 65 | z 0x15 addupper 66 | # 67 | # Scan Code 27 68 | udiaeresis 0x1a 69 | egrave 0x1a shift 70 | bracketleft 0x1a altgr 71 | # 72 | # Scan Code 28 73 | dead_diaeresis 0x1b 74 | exclam 0x1b shift 75 | bracketright 0x1b altgr 76 | # 77 | # Scan Code 40 78 | odiaeresis 0x27 79 | eacute 0x27 shift 80 | # 81 | # Scan Code 41 82 | adiaeresis 0x28 83 | agrave 0x28 shift 84 | braceleft 0x28 altgr 85 | # 86 | # Scan Code 42 (only on international keyboards) 87 | dollar 0x2b 88 | sterling 0x2b shift 89 | braceright 0x2b altgr 90 | # 91 | # Scan Code 45 (only on international keyboards) 92 | backslash 0x56 altgr 93 | # 94 | # Scan Code 46 95 | y 0x2c addupper 96 | # 97 | # Scan Code 53 98 | comma 0x33 99 | semicolon 0x33 shift 100 | # 101 | # Scan Code 54 102 | period 0x34 103 | colon 0x34 shift 104 | # 105 | # Scan Code 55 106 | minus 0x35 107 | underscore 0x35 shift 108 | # 109 | # Suppress Windows unsupported AltGr keys 110 | # 111 | # Scan Code 17 112 | paragraph 0x10 altgr inhibit 113 | # 114 | # Scan Code 21 115 | tslash 0x14 altgr inhibit 116 | # 117 | # Scan Code 22 118 | leftarrow 0x15 altgr inhibit 119 | # 120 | # Scan Code 23 121 | downarrow 0x16 altgr inhibit 122 | # 123 | # Scan Code 24 124 | rightarrow 0x17 altgr inhibit 125 | # 126 | # Scan Code 25 127 | oslash 0x18 altgr inhibit 128 | # 129 | # Scan Code 26 130 | thorn 0x19 altgr inhibit 131 | # 132 | # Scan Code 31 133 | ae 0x1e altgr inhibit 134 | # 135 | # Scan Code 32 136 | ssharp 0x1f altgr inhibit 137 | # 138 | # Scan Code 33 139 | eth 0x20 altgr inhibit 140 | # 141 | # Scan Code 34 142 | dstroke 0x21 altgr inhibit 143 | # 144 | # Scan Code 35 145 | eng 0x22 altgr inhibit 146 | # 147 | # Scan Code 36 148 | hstroke 0x23 altgr inhibit 149 | # 150 | # Scan Code 38 151 | kra 0x25 altgr inhibit 152 | # 153 | # Scan Code 39 154 | lstroke 0x26 altgr inhibit 155 | # 156 | # Scan Code 46 157 | guillemotleft 0x2c altgr inhibit 158 | # 159 | # Scan Code 47 160 | guillemotright 0x2d altgr inhibit 161 | # 162 | # Scan Code 49 163 | leftdoublequotemark 0x2f altgr inhibit 164 | # 165 | # Scan Code 50 166 | rightdoublequotemark 0x30 altgr inhibit 167 | # 168 | # Scan Code 52 169 | mu 0x32 altgr inhibit 170 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/en-gb: -------------------------------------------------------------------------------- 1 | # generated from XKB map gb 2 | include common 3 | map 0x809 4 | exclam 0x02 shift 5 | onesuperior 0x02 altgr 6 | exclamdown 0x02 shift altgr 7 | quotedbl 0x03 shift 8 | twosuperior 0x03 altgr 9 | oneeighth 0x03 shift altgr 10 | sterling 0x04 shift 11 | threesuperior 0x04 altgr 12 | dollar 0x05 shift 13 | EuroSign 0x05 altgr 14 | percent 0x06 shift 15 | onehalf 0x06 altgr 16 | threeeighths 0x06 shift altgr 17 | asciicircum 0x07 shift 18 | threequarters 0x07 altgr 19 | fiveeighths 0x07 shift altgr 20 | ampersand 0x08 shift 21 | braceleft 0x08 altgr 22 | seveneighths 0x08 shift altgr 23 | asterisk 0x09 shift 24 | bracketleft 0x09 altgr 25 | trademark 0x09 shift altgr 26 | parenleft 0x0a shift 27 | bracketright 0x0a altgr 28 | plusminus 0x0a shift altgr 29 | parenright 0x0b shift 30 | braceright 0x0b altgr 31 | degree 0x0b shift altgr 32 | minus 0x0c 33 | underscore 0x0c shift 34 | backslash 0x0c altgr 35 | questiondown 0x0c shift altgr 36 | equal 0x0d 37 | plus 0x0d shift 38 | dead_cedilla 0x0d altgr 39 | dead_ogonek 0x0d shift altgr 40 | at 0x10 altgr 41 | Greek_OMEGA 0x10 shift altgr 42 | lstroke 0x11 altgr 43 | Lstroke 0x11 shift altgr 44 | paragraph 0x13 altgr 45 | registered 0x13 shift altgr 46 | tslash 0x14 altgr 47 | Tslash 0x14 shift altgr 48 | leftarrow 0x15 altgr 49 | yen 0x15 shift altgr 50 | downarrow 0x16 altgr 51 | uparrow 0x16 shift altgr 52 | rightarrow 0x17 altgr 53 | idotless 0x17 shift altgr 54 | oslash 0x18 altgr 55 | Ooblique 0x18 shift altgr 56 | thorn 0x19 altgr 57 | THORN 0x19 shift altgr 58 | bracketleft 0x1a 59 | braceleft 0x1a shift 60 | dead_diaeresis 0x1a altgr 61 | dead_abovering 0x1a shift altgr 62 | bracketright 0x1b 63 | braceright 0x1b shift 64 | dead_tilde 0x1b altgr 65 | dead_macron 0x1b shift altgr 66 | ae 0x1e altgr 67 | AE 0x1e shift altgr 68 | ssharp 0x1f altgr 69 | section 0x1f shift altgr 70 | eth 0x20 altgr 71 | ETH 0x20 shift altgr 72 | dstroke 0x21 altgr 73 | ordfeminine 0x21 shift altgr 74 | eng 0x22 altgr 75 | ENG 0x22 shift altgr 76 | hstroke 0x23 altgr 77 | Hstroke 0x23 shift altgr 78 | kra 0x25 altgr 79 | lstroke 0x26 altgr 80 | Lstroke 0x26 shift altgr 81 | semicolon 0x27 82 | colon 0x27 shift 83 | dead_acute 0x27 altgr 84 | dead_doubleacute 0x27 shift altgr 85 | apostrophe 0x28 86 | at 0x28 shift 87 | dead_circumflex 0x28 altgr 88 | dead_caron 0x28 shift altgr 89 | grave 0x29 90 | notsign 0x29 shift 91 | bar 0x29 altgr 92 | numbersign 0x2b 93 | asciitilde 0x2b shift 94 | dead_grave 0x2b altgr 95 | dead_breve 0x2b shift altgr 96 | guillemotleft 0x2c altgr 97 | less 0x2c shift altgr 98 | guillemotright 0x2d altgr 99 | greater 0x2d shift altgr 100 | cent 0x2e altgr 101 | copyright 0x2e shift altgr 102 | leftdoublequotemark 0x2f altgr 103 | rightdoublequotemark 0x30 altgr 104 | mu 0x32 altgr 105 | masculine 0x32 shift altgr 106 | comma 0x33 107 | less 0x33 shift 108 | horizconnector 0x33 altgr 109 | multiply 0x33 shift altgr 110 | period 0x34 111 | greater 0x34 shift 112 | periodcentered 0x34 altgr 113 | division 0x34 shift altgr 114 | slash 0x35 115 | question 0x35 shift 116 | dead_belowdot 0x35 altgr 117 | dead_abovedot 0x35 shift altgr 118 | backslash 0x56 119 | bar 0x56 shift 120 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/en-us: -------------------------------------------------------------------------------- 1 | # generated from XKB map us 2 | include common 3 | map 0x409 4 | exclam 0x02 shift 5 | at 0x03 shift 6 | numbersign 0x04 shift 7 | dollar 0x05 shift 8 | percent 0x06 shift 9 | asciicircum 0x07 shift 10 | ampersand 0x08 shift 11 | asterisk 0x09 shift 12 | parenleft 0x0a shift 13 | parenright 0x0b shift 14 | minus 0x0c 15 | underscore 0x0c shift 16 | equal 0x0d 17 | plus 0x0d shift 18 | bracketleft 0x1a 19 | braceleft 0x1a shift 20 | bracketright 0x1b 21 | braceright 0x1b shift 22 | semicolon 0x27 23 | colon 0x27 shift 24 | apostrophe 0x28 25 | quotedbl 0x28 shift 26 | grave 0x29 27 | asciitilde 0x29 shift 28 | backslash 0x2b 29 | bar 0x2b shift 30 | comma 0x33 31 | less 0x33 shift 32 | period 0x34 33 | greater 0x34 shift 34 | slash 0x35 35 | question 0x35 shift 36 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/en-us-intl: -------------------------------------------------------------------------------- 1 | include en-us 2 | map 0x20409 3 | 4 | # Top row 5 | dead_grave 0x29 6 | dead_tilde 0x29 shift 7 | 8 | exclamdown 0x02 altgr 9 | onesuperior 0x02 shift altgr 10 | 11 | twosuperior 0x03 altgr 12 | dead_doubleacute 0x03 shift altgr 13 | 14 | threesuperior 0x04 altgr 15 | dead_macron 0x04 shift altgr 16 | 17 | currency 0x05 altgr 18 | sterling 0x05 shift altgr 19 | 20 | EuroSign 0x06 altgr 21 | 22 | dead_circumflex 0x7 shift 23 | onequarter 0x07 altgr 24 | circumflex 0x7 shift altgr 25 | 26 | onehalf 0x08 altgr 27 | dead_horn 0x08 shift altgr 28 | 29 | threequarters 0x09 altgr 30 | dead_ogonek 0x09 shift altgr 31 | 32 | leftsinglequotemark 0x0a altgr 33 | dead_breve 0x0a shift altgr 34 | 35 | rightsinglequotemark 0x0b altgr 36 | dead_abovering 0x0b shift altgr 37 | 38 | yen 0x0c altgr 39 | dead_belowdot 0x0c shift altgr 40 | 41 | multiply 0x0d altgr 42 | division 0x0d shift altgr 43 | 44 | # Qwerty first row 45 | adiaeresis 0x10 altgr 46 | Adiaeresis 0x10 shift altgr 47 | 48 | aring 0x11 altgr 49 | Aring 0x11 shift altgr 50 | 51 | eacute 0x12 altgr 52 | Eacute 0x12 shift altgr 53 | 54 | registered 0x13 altgr 55 | 56 | thorn 0x14 altgr 57 | THORN 0x14 shift altgr 58 | 59 | udiaeresis 0x15 altgr 60 | Udiaeresis 0x15 shift altgr 61 | 62 | uacute 0x16 altgr 63 | Uacute 0x16 shift altgr 64 | 65 | iacute 0x17 altgr 66 | Iacute 0x17 shift altgr 67 | 68 | oacute 0x18 altgr 69 | Oacute 0x18 shift altgr 70 | 71 | odiaeresis 0x19 altgr 72 | Odiaeresis 0x19 shift altgr 73 | 74 | guillemotleft 0x1a altgr 75 | leftdoublequotemark 0x1a shift altgr 76 | 77 | guillemotright 0x1b altgr 78 | rightdoublequotemark 0x1b shift altgr 79 | 80 | # Qwerty second row 81 | aacute 0x1e altgr 82 | Aacute 0x1e shift altgr 83 | 84 | ssharp 0x1f altgr 85 | section 0x1f shift altgr 86 | 87 | eth 0x20 altgr 88 | ETH 0x20 shift altgr 89 | 90 | oe 0x25 altgr 91 | OE 0x25 shift altgr 92 | 93 | oslash 0x26 altgr 94 | Oslash 0x26 shift altgr 95 | 96 | paragraph 0x27 altgr 97 | degree 0x27 shift altgr 98 | 99 | dead_acute 0x28 100 | dead_diaeresis 0x28 shift 101 | apostrophe 0x28 altgr 102 | quotedbl 0x28 shift altgr 103 | 104 | notsign 0x2b altgr 105 | brokenbar 0x2b shift altgr 106 | 107 | # Qwerty third row 108 | ae 0x2c altgr 109 | AE 0x2c shift altgr 110 | 111 | copyright 0x2e altgr 112 | cent 0x2e shift altgr 113 | 114 | ntilde 0x31 altgr 115 | Ntilde 0x31 shift altgr 116 | 117 | mu 0x32 altgr 118 | 119 | ccedilla 0x33 altgr 120 | Ccedilla 0x33 shift altgr 121 | 122 | dead_abovedot 0x34 altgr 123 | dead_caron 0x34 shift altgr 124 | 125 | questiondown 0x35 altgr 126 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/es: -------------------------------------------------------------------------------- 1 | # generated from XKB map es 2 | include common 3 | map 0x40a 4 | exclam 0x02 shift 5 | bar 0x02 altgr 6 | quotedbl 0x03 shift 7 | at 0x03 altgr 8 | oneeighth 0x03 shift altgr 9 | periodcentered 0x04 shift 10 | numbersign 0x04 altgr 11 | sterling 0x04 shift altgr 12 | dollar 0x05 shift 13 | asciitilde 0x05 altgr 14 | percent 0x06 shift 15 | onehalf 0x06 altgr 16 | threeeighths 0x06 shift altgr 17 | ampersand 0x07 shift 18 | notsign 0x07 altgr 19 | fiveeighths 0x07 shift altgr 20 | slash 0x08 shift 21 | seveneighths 0x08 shift altgr 22 | parenleft 0x09 shift 23 | trademark 0x09 shift altgr 24 | parenright 0x0a shift 25 | plusminus 0x0a shift altgr 26 | equal 0x0b shift 27 | degree 0x0b shift altgr 28 | apostrophe 0x0c 29 | question 0x0c shift 30 | exclamdown 0x0d 31 | questiondown 0x0d shift 32 | Greek_OMEGA 0x10 shift altgr 33 | lstroke 0x11 altgr 34 | Lstroke 0x11 shift altgr 35 | EuroSign 0x12 altgr 36 | paragraph 0x13 altgr 37 | registered 0x13 shift altgr 38 | tslash 0x14 altgr 39 | Tslash 0x14 shift altgr 40 | leftarrow 0x15 altgr 41 | yen 0x15 shift altgr 42 | downarrow 0x16 altgr 43 | uparrow 0x16 shift altgr 44 | rightarrow 0x17 altgr 45 | idotless 0x17 shift altgr 46 | oslash 0x18 altgr 47 | Ooblique 0x18 shift altgr 48 | thorn 0x19 altgr 49 | THORN 0x19 shift altgr 50 | dead_grave 0x1a 51 | dead_circumflex 0x1a shift 52 | bracketleft 0x1a altgr 53 | dead_abovering 0x1a shift altgr 54 | plus 0x1b 55 | asterisk 0x1b shift 56 | bracketright 0x1b altgr 57 | dead_macron 0x1b shift altgr 58 | ae 0x1e altgr 59 | AE 0x1e shift altgr 60 | ssharp 0x1f altgr 61 | section 0x1f shift altgr 62 | eth 0x20 altgr 63 | ETH 0x20 shift altgr 64 | dstroke 0x21 altgr 65 | eng 0x22 altgr 66 | ENG 0x22 shift altgr 67 | hstroke 0x23 altgr 68 | Hstroke 0x23 shift altgr 69 | kra 0x25 altgr 70 | lstroke 0x26 altgr 71 | Lstroke 0x26 shift altgr 72 | ntilde 0x27 73 | Ntilde 0x27 shift 74 | dead_doubleacute 0x27 shift altgr 75 | dead_acute 0x28 76 | dead_diaeresis 0x28 shift 77 | braceleft 0x28 altgr 78 | masculine 0x29 79 | ordfeminine 0x29 shift 80 | backslash 0x29 altgr 81 | ccedilla 0x2b 82 | Ccedilla 0x2b shift 83 | braceright 0x2b altgr 84 | dead_breve 0x2b shift altgr 85 | guillemotleft 0x2c altgr 86 | less 0x56 87 | greater 0x56 shift 88 | guillemotright 0x2d altgr 89 | cent 0x2e altgr 90 | copyright 0x2e shift altgr 91 | leftdoublequotemark 0x2f altgr 92 | grave 0x2f shift altgr 93 | rightdoublequotemark 0x30 altgr 94 | mu 0x32 altgr 95 | comma 0x33 96 | semicolon 0x33 shift 97 | horizconnector 0x33 altgr 98 | multiply 0x33 shift altgr 99 | period 0x34 100 | colon 0x34 shift 101 | division 0x34 shift altgr 102 | minus 0x35 103 | underscore 0x35 shift 104 | dead_belowdot 0x35 altgr 105 | dead_abovedot 0x35 shift altgr 106 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/et: -------------------------------------------------------------------------------- 1 | map 0x00000425 2 | include common 3 | 4 | # 5 | # Top row 6 | # 7 | dead_caron 0x29 8 | dead_tilde 0x29 shift 9 | 10 | # 1 11 | exclam 0x2 shift 12 | 13 | # 2 14 | quotedbl 0x3 shift 15 | at 0x3 altgr 16 | 17 | # 3 18 | numbersign 0x4 shift 19 | sterling 0x4 altgr 20 | # 4 21 | currency 0x5 shift 22 | dollar 0x5 altgr 23 | # 5 24 | percent 0x6 shift 25 | # 6 26 | ampersand 0x7 shift 27 | # 7 28 | slash 0x8 shift 29 | braceleft 0x8 altgr 30 | # 8 31 | parenleft 0x9 shift 32 | bracketleft 0x9 altgr 33 | # 9 34 | parenright 0xa shift 35 | bracketright 0xa altgr 36 | # 0 37 | equal 0xb shift 38 | braceright 0xb altgr 39 | 40 | plus 0xc 41 | question 0xc shift 42 | backslash 0xc altgr 43 | 44 | acute 0xd 45 | dead_acute 0xd 46 | grave 0xd shift 47 | dead_grave 0xd shift 48 | 49 | # 50 | # QWERTY first row 51 | # 52 | EuroSign 0x12 altgr 53 | udiaeresis 0x1a 54 | Udiaeresis 0x1a shift 55 | otilde 0x1b 56 | Otilde 0x1b shift 57 | section 0x1b altgr 58 | 59 | # 60 | # QWERTY second row 61 | # 62 | scaron 0x1f altgr 63 | Scaron 0x1f altgr shift 64 | odiaeresis 0x27 65 | Odiaeresis 0x27 shift 66 | adiaeresis 0x28 67 | Adiaeresis 0x28 shift 68 | asciicircum 0x28 altgr 69 | apostrophe 0x2b 70 | asterisk 0x2b shift 71 | onehalf 0x2b altgr 72 | # 73 | # QWERTY third row 74 | # 75 | less 0x56 76 | greater 0x56 shift 77 | bar 0x56 altgr 78 | zcaron 0x2c altgr 79 | Zcaron 0x2c altgr shift 80 | comma 0x33 81 | semicolon 0x33 shift 82 | period 0x34 83 | colon 0x34 shift 84 | minus 0x35 85 | underscore 0x35 shift 86 | 87 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/fi: -------------------------------------------------------------------------------- 1 | # Finnish keyboard layout 2 | # Originally generated from XKB map se_FI (wrong!), modified afterwards. 3 | 4 | include common 5 | map 0x40b 6 | 7 | exclam 0x02 shift 8 | exclamdown 0x02 altgr 9 | onesuperior 0x02 shift altgr 10 | quotedbl 0x03 shift 11 | at 0x03 altgr 12 | twosuperior 0x03 shift altgr 13 | numbersign 0x04 shift 14 | sterling 0x04 altgr 15 | threesuperior 0x04 shift altgr 16 | currency 0x05 shift 17 | dollar 0x05 altgr 18 | onequarter 0x05 shift altgr 19 | percent 0x06 shift 20 | onehalf 0x06 altgr 21 | cent 0x06 shift altgr 22 | ampersand 0x07 shift 23 | yen 0x07 altgr 24 | fiveeighths 0x07 shift altgr 25 | slash 0x08 shift 26 | braceleft 0x08 altgr 27 | division 0x08 shift altgr 28 | parenleft 0x09 shift 29 | bracketleft 0x09 altgr 30 | guillemotleft 0x09 shift altgr 31 | parenright 0x0a shift 32 | bracketright 0x0a altgr 33 | guillemotright 0x0a shift altgr 34 | equal 0x0b shift 35 | braceright 0x0b altgr 36 | degree 0x0b shift altgr 37 | plus 0x0c 38 | question 0x0c shift 39 | backslash 0x0c altgr 40 | questiondown 0x0c shift altgr 41 | dead_acute 0x0d 42 | dead_grave 0x0d shift 43 | plusminus 0x0d altgr 44 | notsign 0x0d shift altgr 45 | Greek_OMEGA 0x10 shift altgr 46 | lstroke 0x11 altgr 47 | Lstroke 0x11 shift altgr 48 | EuroSign 0x12 altgr 49 | cent 0x12 shift altgr 50 | registered 0x13 altgr 51 | thorn 0x14 altgr 52 | THORN 0x14 shift altgr 53 | leftarrow 0x15 altgr 54 | yen 0x15 shift altgr 55 | downarrow 0x16 altgr 56 | uparrow 0x16 shift altgr 57 | rightarrow 0x17 altgr 58 | idotless 0x17 shift altgr 59 | oe 0x18 altgr 60 | OE 0x18 shift altgr 61 | thorn 0x19 altgr 62 | THORN 0x19 shift altgr 63 | aring 0x1a 64 | Aring 0x1a shift 65 | dead_diaeresis 0x1a altgr 66 | dead_abovering 0x1a shift altgr 67 | dead_diaeresis 0x1b 68 | dead_circumflex 0x1b shift 69 | dead_tilde 0x1b altgr 70 | dead_caron 0x1b shift altgr 71 | ordfeminine 0x1e altgr 72 | masculine 0x1e shift altgr 73 | ssharp 0x1f altgr 74 | section 0x1f shift altgr 75 | eth 0x20 altgr 76 | ETH 0x20 shift altgr 77 | dstroke 0x21 altgr 78 | ordfeminine 0x21 shift altgr 79 | eng 0x22 altgr 80 | ENG 0x22 shift altgr 81 | hstroke 0x23 altgr 82 | Hstroke 0x23 shift altgr 83 | kra 0x25 altgr 84 | lstroke 0x26 altgr 85 | Lstroke 0x26 shift altgr 86 | odiaeresis 0x27 87 | Odiaeresis 0x27 shift 88 | oslash 0x27 altgr 89 | Ooblique 0x27 shift altgr 90 | adiaeresis 0x28 91 | Adiaeresis 0x28 shift 92 | ae 0x28 altgr 93 | AE 0x28 shift altgr 94 | section 0x29 95 | onehalf 0x29 shift 96 | paragraph 0x29 altgr 97 | threequarters 0x29 shift altgr 98 | apostrophe 0x2b 99 | asterisk 0x2b shift 100 | acute 0x2b altgr 101 | multiply 0x2b shift altgr 102 | guillemotleft 0x2c altgr 103 | guillemotright 0x2d altgr 104 | copyright 0x2e altgr 105 | leftdoublequotemark 0x2f altgr 106 | grave 0x2f shift altgr 107 | rightdoublequotemark 0x30 altgr 108 | mu 0x32 altgr 109 | masculine 0x32 shift altgr 110 | comma 0x33 111 | semicolon 0x33 shift 112 | dead_cedilla 0x33 altgr 113 | dead_ogonek 0x33 shift altgr 114 | period 0x34 115 | colon 0x34 shift 116 | periodcentered 0x34 altgr 117 | dead_abovedot 0x34 shift altgr 118 | minus 0x35 119 | underscore 0x35 shift 120 | hyphen 0x35 altgr 121 | macron 0x35 shift altgr 122 | nobreakspace 0x39 altgr 123 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/fo: -------------------------------------------------------------------------------- 1 | map 0x438 2 | include common 3 | 4 | # 5 | # Top row 6 | # 7 | onehalf 0x29 8 | section 0x29 shift 9 | 10 | # 1 11 | exclam 0x2 shift 12 | 13 | # 2 14 | quotedbl 0x3 shift 15 | at 0x3 altgr 16 | 17 | # 3 18 | numbersign 0x4 shift 19 | sterling 0x4 altgr 20 | # 4 21 | currency 0x5 shift 22 | dollar 0x5 altgr 23 | # 5 24 | percent 0x6 shift 25 | # 6 26 | ampersand 0x7 shift 27 | # 7 28 | slash 0x8 shift 29 | braceleft 0x8 altgr 30 | # 8 31 | parenleft 0x9 shift 32 | bracketleft 0x9 altgr 33 | # 9 34 | parenright 0xa shift 35 | bracketright 0xa altgr 36 | # 0 37 | equal 0xb shift 38 | braceright 0xb altgr 39 | 40 | plus 0xc 41 | question 0xc shift 42 | plusminus 0xc altgr 43 | 44 | bar 0xd altgr 45 | dead_acute 0xd 46 | 47 | # 48 | # QWERTY first row 49 | # 50 | EuroSign 0x12 altgr 51 | aring 0x1a 52 | Aring 0x1a shift 53 | eth 0x1b addupper 54 | asciitilde 0x1b altgr 55 | 56 | # 57 | # QWERTY second row 58 | # 59 | ae 0x27 addupper 60 | oslash 0x28 61 | Ooblique 0x28 shift 62 | apostrophe 0x2b 63 | asterisk 0x2b shift 64 | 65 | # 66 | # QWERTY third row 67 | # 68 | less 0x56 69 | greater 0x56 shift 70 | backslash 0x56 altgr 71 | comma 0x33 72 | semicolon 0x33 shift 73 | period 0x34 74 | colon 0x34 shift 75 | minus 0x35 76 | underscore 0x35 shift 77 | 78 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/fr-be: -------------------------------------------------------------------------------- 1 | # generated from XKB map be 2 | include common 3 | map 0x80c 4 | ampersand 0x02 5 | 1 0x02 shift 6 | bar 0x02 altgr 7 | exclamdown 0x02 shift altgr 8 | eacute 0x03 9 | 2 0x03 shift 10 | at 0x03 altgr 11 | oneeighth 0x03 shift altgr 12 | quotedbl 0x04 13 | 3 0x04 shift 14 | numbersign 0x04 altgr 15 | sterling 0x04 shift altgr 16 | apostrophe 0x05 17 | 4 0x05 shift 18 | onequarter 0x05 altgr 19 | dollar 0x05 shift altgr 20 | parenleft 0x06 21 | 5 0x06 shift 22 | onehalf 0x06 altgr 23 | threeeighths 0x06 shift altgr 24 | section 0x07 25 | 6 0x07 shift 26 | asciicircum 0x07 altgr 27 | fiveeighths 0x07 shift altgr 28 | egrave 0x08 29 | 7 0x08 shift 30 | braceleft 0x08 altgr 31 | seveneighths 0x08 shift altgr 32 | exclam 0x09 33 | 8 0x09 shift 34 | bracketleft 0x09 altgr 35 | trademark 0x09 shift altgr 36 | ccedilla 0x0a 37 | 9 0x0a shift 38 | braceleft 0x0a altgr 39 | plusminus 0x0a shift altgr 40 | agrave 0x0b 41 | 0 0x0b shift 42 | braceright 0x0b altgr 43 | degree 0x0b shift altgr 44 | parenright 0x0c 45 | degree 0x0c shift 46 | backslash 0x0c altgr 47 | questiondown 0x0c shift altgr 48 | minus 0x0d 49 | underscore 0x0d shift 50 | dead_cedilla 0x0d altgr 51 | dead_ogonek 0x0d shift altgr 52 | a 0x10 addupper 53 | Greek_OMEGA 0x10 shift altgr 54 | z 0x11 addupper 55 | lstroke 0x11 altgr 56 | Lstroke 0x11 shift altgr 57 | EuroSign 0x12 altgr 58 | cent 0x12 shift altgr 59 | paragraph 0x13 altgr 60 | registered 0x13 shift altgr 61 | tslash 0x14 altgr 62 | Tslash 0x14 shift altgr 63 | leftarrow 0x15 altgr 64 | yen 0x15 shift altgr 65 | downarrow 0x16 altgr 66 | uparrow 0x16 shift altgr 67 | rightarrow 0x17 altgr 68 | idotless 0x17 shift altgr 69 | oslash 0x18 altgr 70 | Ooblique 0x18 shift altgr 71 | thorn 0x19 altgr 72 | THORN 0x19 shift altgr 73 | dead_circumflex 0x1a 74 | dead_diaeresis 0x1a shift 75 | bracketleft 0x1a altgr 76 | dead_abovering 0x1a shift altgr 77 | dollar 0x1b 78 | asterisk 0x1b shift 79 | bracketright 0x1b altgr 80 | dead_macron 0x1b shift altgr 81 | q 0x1e addupper 82 | ae 0x1e altgr 83 | AE 0x1e shift altgr 84 | ssharp 0x1f altgr 85 | eth 0x20 altgr 86 | ETH 0x20 shift altgr 87 | dstroke 0x21 altgr 88 | ordfeminine 0x21 shift altgr 89 | eng 0x22 altgr 90 | ENG 0x22 shift altgr 91 | hstroke 0x23 altgr 92 | Hstroke 0x23 shift altgr 93 | kra 0x25 altgr 94 | lstroke 0x26 altgr 95 | Lstroke 0x26 shift altgr 96 | m 0x27 addupper 97 | dead_acute 0x27 altgr 98 | dead_doubleacute 0x27 shift altgr 99 | ugrave 0x28 100 | percent 0x28 shift 101 | dead_acute 0x28 altgr 102 | dead_caron 0x28 shift altgr 103 | twosuperior 0x29 104 | threesuperior 0x29 shift 105 | notsign 0x29 altgr 106 | mu 0x2b 107 | sterling 0x2b shift 108 | dead_grave 0x2b altgr 109 | dead_breve 0x2b shift altgr 110 | w 0x2c addupper 111 | guillemotleft 0x2c altgr 112 | guillemotright 0x2d altgr 113 | cent 0x2e altgr 114 | copyright 0x2e shift altgr 115 | leftdoublequotemark 0x2f altgr 116 | grave 0x2f shift altgr 117 | rightdoublequotemark 0x30 altgr 118 | comma 0x32 119 | question 0x32 shift 120 | dead_cedilla 0x32 altgr 121 | masculine 0x32 shift altgr 122 | semicolon 0x33 123 | period 0x33 shift 124 | horizconnector 0x33 altgr 125 | multiply 0x33 shift altgr 126 | colon 0x34 127 | slash 0x34 shift 128 | periodcentered 0x34 altgr 129 | division 0x34 shift altgr 130 | equal 0x35 131 | plus 0x35 shift 132 | dead_tilde 0x35 altgr 133 | dead_abovedot 0x35 shift altgr 134 | backslash 0x56 altgr 135 | 136 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/fr-bepo: -------------------------------------------------------------------------------- 1 | include common 2 | map 0x40c 3 | # 4 | # Top row 5 | # 6 | dollar 0x29 7 | numbersign 0x29 shift 8 | paragraph 0x29 shift altgr 9 | 10 | quotedbl 0x02 11 | 1 0x02 shift 12 | emdash 0x02 altgr 13 | 14 | guillemotleft 0x03 15 | 2 0x03 shift 16 | less 0x03 altgr 17 | 18 | guillemotright 0x04 19 | 3 0x04 shift 20 | greater 0x04 altgr 21 | 22 | parenleft 0x05 23 | 4 0x05 shift 24 | bracketleft 0x05 altgr 25 | 26 | parenright 0x06 27 | 5 0x06 shift 28 | bracketright 0x06 altgr 29 | 30 | at 0x07 31 | 6 0x07 shift 32 | 33 | plus 0x08 34 | 7 0x08 shift 35 | 36 | minus 0x09 37 | 8 0x09 shift 38 | 39 | slash 0x0a 40 | 9 0x0a shift 41 | 42 | asterisk 0x0b 43 | 0 0x0b shift 44 | 45 | equal 0x0c 46 | degree 0x0c shift 47 | 48 | percent 0x0d 49 | grave 0x0d shift 50 | 51 | # 52 | # BÉPO first row 53 | # 54 | 55 | b 0x10 addupper 56 | bar 0x10 altgr 57 | 58 | eacute 0x11 59 | Eacute 0x11 shift 60 | 61 | p 0x12 addupper 62 | ampersand 0x12 altgr 63 | 64 | o 0x13 addupper 65 | oe 0x13 altgr 66 | OE 0x13 shift altgr 67 | 68 | egrave 0x14 69 | Egrave 0x14 shift 70 | 71 | exclam 0x15 72 | dead_circumflex 0x15 shift 73 | 74 | v 0x16 addupper 75 | 76 | d 0x17 addupper 77 | 78 | l 0x18 addupper 79 | 80 | j 0x19 addupper 81 | 82 | z 0x1a addupper 83 | 84 | w 0x1b addupper 85 | 86 | # 87 | # BÉPO second row 88 | # 89 | a 0x1e addupper 90 | ae 0x1e altgr 91 | AE 0x1e shift altgr 92 | 93 | u 0x1f addupper 94 | ugrave 0x1f altgr 95 | Ugrave 0x1f shift altgr 96 | 97 | i 0x20 addupper 98 | dead_diaeresis 0x1a altgr 99 | 100 | e 0x21 addupper 101 | EuroSign 0x21 altgr 102 | 103 | comma 0x22 104 | semicolon 0x22 shift 105 | 106 | c 0x23 addupper 107 | 108 | t 0x24 addupper 109 | 110 | s 0x25 addupper 111 | 112 | r 0x26 addupper 113 | 114 | n 0x27 addupper 115 | 116 | m 0x28 addupper 117 | 118 | ccedilla 0x2b 119 | Ccedilla 0x2b shift 120 | 121 | # 122 | # BÉPO third row 123 | # 124 | ecircumflex 0x56 125 | Ecircumflex 0x56 shift 126 | 127 | agrave 0x2c 128 | Agrave 0x2c shift 129 | backslash 0x2c altgr 130 | 131 | y 0x2d addupper 132 | braceleft 0x2d altgr 133 | 134 | x 0x2e addupper 135 | braceright 0x2e altgr 136 | 137 | period 0x2f 138 | colon 0x2f shift 139 | ellipsis 0x2f altgr 140 | 141 | k 0x30 addupper 142 | asciitilde 0x30 altgr 143 | 144 | quote 0x30 145 | question 0x30 shift 146 | 147 | apostrophe 0x31 148 | question 0x31 shift 149 | 150 | q 0x32 addupper 151 | 152 | g 0x33 addupper 153 | 154 | h 0x34 addupper 155 | 156 | f 0x35 addupper -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/fr-ca: -------------------------------------------------------------------------------- 1 | # Canadian French 2 | # By Simon Germain 3 | include common 4 | map 0xc0c 5 | 6 | backslash 0x29 altgr 7 | plusminus 0x2 altgr 8 | at 0x3 altgr 9 | sterling 0x4 altgr 10 | cent 0x5 altgr 11 | currency 0x6 altgr 12 | notsign 0x7 altgr 13 | bar 0x29 shift 14 | twosuperior 0x9 altgr 15 | threesuperior 0xa altgr 16 | onequarter 0xb altgr 17 | onehalf 0xc altgr 18 | threequarters 0xd altgr 19 | section 0x18 altgr 20 | paragraph 0x19 altgr 21 | bracketleft 0x1a altgr 22 | bracketright 0x1b altgr 23 | asciitilde 0x27 altgr 24 | braceleft 0x28 altgr 25 | braceright 0x2b altgr 26 | less 0x2b 27 | greater 0x2b shift 28 | guillemotleft 0x56 29 | guillemotright 0x56 shift 30 | degree 0x56 altgr 31 | mu 0x32 altgr 32 | eacute 0x35 33 | dead_acute 0x35 altgr 34 | dead_grave 0x28 35 | dead_circumflex 0x1a 36 | dead_circumflex 0x1a shift 37 | dead_cedilla 0x1b 38 | dead_diaeresis 0x1b shift 39 | exclam 0x2 shift 40 | quotedbl 0x3 shift 41 | comma 0x33 42 | apostrophe 0x33 shift 43 | period 0x34 shift 44 | slash 0x4 shift 45 | dollar 0x5 shift 46 | percent 0x6 shift 47 | question 0x7 shift 48 | ampersand 0x8 shift 49 | asterisk 0x9 shift 50 | parenleft 0xa shift 51 | parenright 0xb shift 52 | underscore 0xc shift 53 | plus 0xd shift 54 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/fr-ch: -------------------------------------------------------------------------------- 1 | # rdesktop suisse-french keymap file 2 | # 3 | #map 0x00000807 4 | map 0x0000100C 5 | include common 6 | # 7 | # Scan Code 1 8 | section 0x29 9 | degree 0x29 shift 10 | notsign 0x29 altgr inhibit 11 | # 12 | # Scan Code 2 13 | plus 0x2 shift 14 | brokenbar 0x02 altgr 15 | # 16 | # Scan Code 3 17 | quotedbl 0x03 shift 18 | at 0x03 altgr 19 | # 20 | # Scan Code 4 21 | asterisk 0x04 shift 22 | numbersign 0x04 altgr 23 | # 24 | # Scan Code 5 25 | ccedilla 0x05 shift 26 | onequarter 0x05 altgr inhibit 27 | # 28 | # Scan Code 6 29 | percent 0x06 shift 30 | onehalf 0x06 altgr inhibit 31 | # 32 | # Scan Code 7 33 | ampersand 0x07 shift 34 | notsign 0x07 altgr 35 | # 36 | # Scan Code 8 37 | slash 0x08 shift 38 | bar 0x08 altgr 39 | # 40 | # Scan Code 9 41 | parenleft 0x09 shift 42 | cent 0x09 altgr 43 | # 44 | # Scan Code 10 45 | parenright 0x0a shift 46 | # 47 | # Scan Code 11 48 | equal 0x0b shift 49 | braceright 0x0b altgr inhibit 50 | # 51 | # Scan Code 12 52 | apostrophe 0x0c 53 | question 0x0c shift 54 | dead_acute 0x0c altgr 55 | # 56 | # Scan Code 13 57 | dead_circumflex 0x0d 58 | dead_grave 0x0d shift 59 | dead_tilde 0x0d altgr 60 | # 61 | # Scan Code 19 62 | EuroSign 0x12 altgr 63 | # 64 | # Scan Code 22 65 | z 0x15 addupper 66 | # 67 | # Scan Code 27 68 | udiaeresis 0x1a shift 69 | egrave 0x1a 70 | bracketleft 0x1a altgr 71 | # 72 | # Scan Code 28 73 | dead_diaeresis 0x1b 74 | exclam 0x1b shift 75 | bracketright 0x1b altgr 76 | # 77 | # Scan Code 40 78 | odiaeresis 0x27 shift 79 | eacute 0x27 80 | # 81 | # Scan Code 41 82 | adiaeresis 0x28 shift 83 | agrave 0x28 84 | braceleft 0x28 altgr 85 | # 86 | # Scan Code 42 (only on international keyboards) 87 | dollar 0x2b 88 | sterling 0x2b shift 89 | braceright 0x2b altgr 90 | # 91 | # Scan Code 45 (only on international keyboards) 92 | backslash 0x56 altgr 93 | # 94 | # Scan Code 46 95 | y 0x2c addupper 96 | # 97 | # Scan Code 53 98 | comma 0x33 99 | semicolon 0x33 shift 100 | # 101 | # Scan Code 54 102 | period 0x34 103 | colon 0x34 shift 104 | # 105 | # Scan Code 55 106 | minus 0x35 107 | underscore 0x35 shift 108 | # 109 | # Suppress Windows unsupported AltGr keys 110 | # 111 | # Scan Code 17 112 | paragraph 0x10 altgr inhibit 113 | # 114 | # Scan Code 21 115 | tslash 0x14 altgr inhibit 116 | # 117 | # Scan Code 22 118 | leftarrow 0x15 altgr inhibit 119 | # 120 | # Scan Code 23 121 | downarrow 0x16 altgr inhibit 122 | # 123 | # Scan Code 24 124 | rightarrow 0x17 altgr inhibit 125 | # 126 | # Scan Code 25 127 | oslash 0x18 altgr inhibit 128 | # 129 | # Scan Code 26 130 | thorn 0x19 altgr inhibit 131 | # 132 | # Scan Code 31 133 | ae 0x1e altgr inhibit 134 | # 135 | # Scan Code 32 136 | ssharp 0x1f altgr inhibit 137 | # 138 | # Scan Code 33 139 | eth 0x20 altgr inhibit 140 | # 141 | # Scan Code 34 142 | dstroke 0x21 altgr inhibit 143 | # 144 | # Scan Code 35 145 | eng 0x22 altgr inhibit 146 | # 147 | # Scan Code 36 148 | hstroke 0x23 altgr inhibit 149 | # 150 | # Scan Code 38 151 | kra 0x25 altgr inhibit 152 | # 153 | # Scan Code 39 154 | lstroke 0x26 altgr inhibit 155 | # 156 | # Scan Code 46 157 | guillemotleft 0x2c altgr inhibit 158 | # 159 | # Scan Code 47 160 | guillemotright 0x2d altgr inhibit 161 | # 162 | # Scan Code 49 163 | leftdoublequotemark 0x2f altgr inhibit 164 | # 165 | # Scan Code 50 166 | rightdoublequotemark 0x30 altgr inhibit 167 | # 168 | # Scan Code 52 169 | mu 0x32 altgr inhibit 170 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/he: -------------------------------------------------------------------------------- 1 | # Generated by Shlomil 2 | # Please send your comments and corrections to 3 | include common 4 | map 0x040D 5 | 6 | 7 | # 8 | # Top row 9 | # 10 | 11 | slash 0x10 altgr 12 | apostrophe 0x11 altgr 13 | hebrew_qoph 0x12 altgr 14 | hebrew_resh 0x13 altgr 15 | hebrew_aleph 0x14 altgr 16 | hebrew_tet 0x15 altgr 17 | hebrew_waw 0x16 altgr 18 | hebrew_finalnun 0x17 altgr 19 | hebrew_finalmem 0x18 altgr 20 | hebrew_pe 0x19 altgr 21 | 22 | # 23 | # Second row 24 | # 25 | 26 | hebrew_shin 0x1e altgr 27 | hebrew_dalet 0x1f altgr 28 | hebrew_gimel 0x20 altgr 29 | hebrew_kaph 0x21 altgr 30 | hebrew_ayin 0x22 altgr 31 | hebrew_yod 0x23 altgr 32 | hebrew_chet 0x24 altgr 33 | hebrew_lamed 0x25 altgr 34 | hebrew_finalkaph 0x26 altgr 35 | hebrew_finalpe 0x27 altgr 36 | comma 0x28 altgr 37 | 38 | # 39 | # Third row 40 | # 41 | 42 | hebrew_zain 0x2c altgr 43 | hebrew_samech 0x2d altgr 44 | hebrew_bet 0x2e altgr 45 | hebrew_he 0x2f altgr 46 | hebrew_nun 0x30 altgr 47 | hebrew_mem 0x31 altgr 48 | hebrew_zade 0x32 altgr 49 | 50 | hebrew_taw 0x33 altgr 51 | hebrew_finalzade 0x34 altgr 52 | period 0x35 altgr 53 | 54 | 55 | # 56 | # en-us 57 | # 58 | 59 | 60 | exclam 0x02 shift 61 | at 0x03 shift 62 | numbersign 0x04 shift 63 | dollar 0x05 shift 64 | percent 0x06 shift 65 | asciicircum 0x07 shift 66 | ampersand 0x08 shift 67 | asterisk 0x09 shift 68 | parenleft 0x0a shift 69 | parenright 0x0b shift 70 | minus 0x0c 71 | underscore 0x0c shift 72 | equal 0x0d 73 | plus 0x0d shift 74 | bracketleft 0x1a 75 | braceleft 0x1a shift 76 | bracketright 0x1b 77 | braceright 0x1b shift 78 | semicolon 0x27 79 | colon 0x27 shift 80 | apostrophe 0x28 81 | quotedbl 0x28 shift 82 | grave 0x29 83 | asciitilde 0x29 shift 84 | backslash 0x2b 85 | bar 0x2b shift 86 | comma 0x33 87 | less 0x33 shift 88 | period 0x34 89 | greater 0x34 shift 90 | slash 0x35 91 | question 0x35 shift 92 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/hr: -------------------------------------------------------------------------------- 1 | # generated from XKB map hr 2 | include common 3 | map 0x41a 4 | exclam 0x02 shift 5 | asciitilde 0x02 altgr 6 | dead_tilde 0x02 shift altgr 7 | quotedbl 0x03 shift 8 | dead_caron 0x03 altgr 9 | caron 0x03 shift altgr 10 | numbersign 0x04 shift 11 | asciicircum 0x04 altgr 12 | dead_circumflex 0x04 shift altgr 13 | dollar 0x05 shift 14 | dead_breve 0x05 altgr 15 | breve 0x05 shift altgr 16 | percent 0x06 shift 17 | degree 0x06 altgr 18 | dead_abovering 0x06 shift altgr 19 | ampersand 0x07 shift 20 | dead_ogonek 0x07 altgr 21 | ogonek 0x07 shift altgr 22 | slash 0x08 shift 23 | grave 0x08 altgr 24 | dead_grave 0x08 shift altgr 25 | parenleft 0x09 shift 26 | dead_abovedot 0x09 altgr 27 | abovedot 0x09 shift altgr 28 | parenright 0x0a shift 29 | dead_acute 0x0a altgr 30 | apostrophe 0x0a shift altgr 31 | equal 0x0b shift 32 | dead_doubleacute 0x0b altgr 33 | doubleacute 0x0b shift altgr 34 | apostrophe 0x0c 35 | question 0x0c shift 36 | dead_diaeresis 0x0c altgr 37 | diaeresis 0x0c shift altgr 38 | plus 0x0d 39 | asterisk 0x0d shift 40 | dead_cedilla 0x0d altgr 41 | cedilla 0x0d shift altgr 42 | backslash 0x10 altgr 43 | Greek_OMEGA 0x10 shift altgr 44 | bar 0x11 altgr 45 | Lstroke 0x11 shift altgr 46 | EuroSign 0x12 altgr 47 | paragraph 0x13 altgr 48 | registered 0x13 shift altgr 49 | tslash 0x14 altgr 50 | Tslash 0x14 shift altgr 51 | z 0x15 addupper 52 | leftarrow 0x15 altgr 53 | yen 0x15 shift altgr 54 | downarrow 0x16 altgr 55 | uparrow 0x16 shift altgr 56 | rightarrow 0x17 altgr 57 | idotless 0x17 shift altgr 58 | oslash 0x18 altgr 59 | Ooblique 0x18 shift altgr 60 | thorn 0x19 altgr 61 | THORN 0x19 shift altgr 62 | scaron 0x1a 63 | Scaron 0x1a shift 64 | division 0x1a altgr 65 | dead_abovering 0x1a shift altgr 66 | dstroke 0x1b 67 | Dstroke 0x1b shift 68 | multiply 0x1b altgr 69 | dead_macron 0x1b shift altgr 70 | ae 0x1e altgr 71 | AE 0x1e shift altgr 72 | ssharp 0x1f altgr 73 | section 0x1f shift altgr 74 | eth 0x20 altgr 75 | ETH 0x20 shift altgr 76 | bracketleft 0x21 altgr 77 | ordfeminine 0x21 shift altgr 78 | bracketright 0x22 altgr 79 | ENG 0x22 shift altgr 80 | hstroke 0x23 altgr 81 | Hstroke 0x23 shift altgr 82 | lstroke 0x25 altgr 83 | ampersand 0x25 shift altgr 84 | Lstroke 0x26 altgr 85 | ccaron 0x27 86 | Ccaron 0x27 shift 87 | dead_acute 0x27 altgr 88 | dead_doubleacute 0x27 shift altgr 89 | cacute 0x28 90 | Cacute 0x28 shift 91 | ssharp 0x28 altgr 92 | dead_caron 0x28 shift altgr 93 | dead_cedilla 0x29 94 | dead_diaeresis 0x29 shift 95 | notsign 0x29 altgr 96 | zcaron 0x2b 97 | Zcaron 0x2b shift 98 | currency 0x2b altgr 99 | dead_breve 0x2b shift altgr 100 | y 0x2c addupper 101 | guillemotleft 0x2c altgr 102 | less 0x2c shift altgr 103 | guillemotright 0x2d altgr 104 | greater 0x2d shift altgr 105 | cent 0x2e altgr 106 | copyright 0x2e shift altgr 107 | at 0x2f altgr 108 | grave 0x2f shift altgr 109 | braceleft 0x30 altgr 110 | apostrophe 0x30 shift altgr 111 | braceright 0x31 altgr 112 | section 0x32 altgr 113 | masculine 0x32 shift altgr 114 | comma 0x33 115 | semicolon 0x33 shift 116 | horizconnector 0x33 altgr 117 | multiply 0x33 shift altgr 118 | period 0x34 119 | colon 0x34 shift 120 | periodcentered 0x34 altgr 121 | division 0x34 shift altgr 122 | minus 0x35 123 | underscore 0x35 shift 124 | dead_belowdot 0x35 altgr 125 | dead_abovedot 0x35 shift altgr 126 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/hu: -------------------------------------------------------------------------------- 1 | # Hungarian keyboard layout (QWERTZ) 2 | # Created by: The NeverGone 3 | 4 | include common 5 | map 0x40e 6 | 7 | 8 | # AltGr keys: 9 | notsign 0x29 altgr 10 | asciitilde 0x02 altgr 11 | caron 0x03 altgr 12 | asciicircum 0x04 altgr 13 | breve 0x05 altgr 14 | degree 0x06 altgr 15 | ogonek 0x07 altgr 16 | grave 0x08 altgr 17 | abovedot 0x09 altgr 18 | acute 0x0a altgr 19 | doubleacute 0x0b altgr 20 | diaeresis 0x0c altgr 21 | cedilla 0x0d altgr 22 | backslash 0x10 altgr 23 | bar 0x11 altgr 24 | EuroSign 0x12 altgr 25 | Iacute 0x17 altgr 26 | division 0x1a altgr 27 | multiply 0x1b altgr 28 | dstroke 0x1f altgr 29 | Dstroke 0x20 altgr 30 | bracketleft 0x21 altgr 31 | bracketright 0x22 altgr 32 | iacute 0x24 altgr 33 | lstroke 0x25 altgr 34 | Lstroke 0x26 altgr 35 | dollar 0x27 altgr 36 | ssharp 0x28 altgr 37 | currency 0x2b altgr 38 | less 0x56 altgr 39 | greater 0x2c altgr 40 | numbersign 0x2d altgr 41 | ampersand 0x2e altgr 42 | at 0x2f altgr 43 | braceleft 0x30 altgr 44 | braceright 0x31 altgr 45 | semicolon 0x33 altgr 46 | asterisk 0x35 altgr 47 | 48 | 49 | # Shift keys: 50 | section 0x29 shift 51 | apostrophe 0x02 shift 52 | quotedbl 0x03 shift 53 | plus 0x04 shift 54 | exclam 0x05 shift 55 | percent 0x06 shift 56 | slash 0x07 shift 57 | equal 0x08 shift 58 | parenleft 0x09 shift 59 | parenright 0x0a shift 60 | Odiaeresis 0x0b shift 61 | Udiaeresis 0x0c shift 62 | Oacute 0x0d shift 63 | Z 0x15 shift 64 | Odoubleacute 0x1a shift 65 | Uacute 0x1b shift 66 | Eacute 0x27 shift 67 | Aacute 0x28 shift 68 | Udoubleacute 0x2b shift 69 | Y 0x2c shift 70 | question 0x33 shift 71 | colon 0x34 shift 72 | underscore 0x35 shift 73 | F13 0x3b shift 74 | F14 0x3c shift 75 | F15 0x3d shift 76 | F16 0x3e shift 77 | F17 0x3f shift 78 | F18 0x40 shift 79 | F19 0x41 shift 80 | F20 0x42 shift 81 | F21 0x43 shift 82 | F22 0x44 shift 83 | F23 0x57 shift 84 | F24 0x58 shift 85 | 86 | 87 | # Ctrl keys: 88 | F25 0x3b ctrl 89 | F26 0x3c ctrl 90 | F27 0x3d ctrl 91 | F28 0x3e ctrl 92 | F29 0x3f ctrl 93 | F30 0x40 ctrl 94 | F31 0x41 ctrl 95 | F32 0x42 ctrl 96 | F33 0x43 ctrl 97 | F34 0x44 ctrl 98 | F35 0x57 ctrl 99 | #NoSymbol 0x58 ctrl 100 | 101 | 102 | 0 0x29 103 | odiaeresis 0x0b 104 | udiaeresis 0x0c 105 | oacute 0x0d 106 | z 0x15 107 | odoubleacute 0x1a 108 | uacute 0x1b 109 | eacute 0x27 110 | aacute 0x28 111 | udoubleacute 0x2b 112 | y 0x2c 113 | comma 0x33 114 | period 0x34 115 | minus 0x35 116 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/it: -------------------------------------------------------------------------------- 1 | # generated from XKB map it 2 | include common 3 | map 0x410 4 | exclam 0x02 shift 5 | onesuperior 0x02 altgr 6 | exclamdown 0x02 shift altgr 7 | quotedbl 0x03 shift 8 | twosuperior 0x03 altgr 9 | oneeighth 0x03 shift altgr 10 | sterling 0x04 shift 11 | threesuperior 0x04 altgr 12 | dollar 0x05 shift 13 | onequarter 0x05 altgr 14 | percent 0x06 shift 15 | onehalf 0x06 altgr 16 | threeeighths 0x06 shift altgr 17 | ampersand 0x07 shift 18 | threequarters 0x07 altgr 19 | fiveeighths 0x07 shift altgr 20 | slash 0x08 shift 21 | seveneighths 0x08 shift altgr 22 | parenleft 0x09 shift 23 | trademark 0x09 shift altgr 24 | parenright 0x0a shift 25 | plusminus 0x0a shift altgr 26 | equal 0x0b shift 27 | degree 0x0b shift altgr 28 | apostrophe 0x0c 29 | question 0x0c shift 30 | grave 0x0c altgr 31 | questiondown 0x0c shift altgr 32 | igrave 0x0d 33 | asciicircum 0x0d shift 34 | asciitilde 0x0d altgr 35 | dead_ogonek 0x0d shift altgr 36 | at 0x10 altgr 37 | Greek_OMEGA 0x10 shift altgr 38 | lstroke 0x11 altgr 39 | Lstroke 0x11 shift altgr 40 | EuroSign 0x12 altgr 41 | cent 0x12 shift altgr 42 | paragraph 0x13 altgr 43 | registered 0x13 shift altgr 44 | tslash 0x14 altgr 45 | Tslash 0x14 shift altgr 46 | leftarrow 0x15 altgr 47 | yen 0x15 shift altgr 48 | downarrow 0x16 altgr 49 | uparrow 0x16 shift altgr 50 | rightarrow 0x17 altgr 51 | idotless 0x17 shift altgr 52 | oslash 0x18 altgr 53 | Ooblique 0x18 shift altgr 54 | thorn 0x19 altgr 55 | THORN 0x19 shift altgr 56 | egrave 0x1a 57 | eacute 0x1a shift 58 | bracketleft 0x1a altgr 59 | braceleft 0x1a shift altgr 60 | plus 0x1b 61 | asterisk 0x1b shift 62 | bracketright 0x1b altgr 63 | braceright 0x1b shift altgr 64 | ae 0x1e altgr 65 | AE 0x1e shift altgr 66 | ssharp 0x1f altgr 67 | section 0x1f shift altgr 68 | eth 0x20 altgr 69 | ETH 0x20 shift altgr 70 | dstroke 0x21 altgr 71 | ordfeminine 0x21 shift altgr 72 | eng 0x22 altgr 73 | ENG 0x22 shift altgr 74 | hstroke 0x23 altgr 75 | Hstroke 0x23 shift altgr 76 | kra 0x25 altgr 77 | lstroke 0x26 altgr 78 | Lstroke 0x26 shift altgr 79 | ograve 0x27 80 | ccedilla 0x27 shift 81 | at 0x27 altgr 82 | dead_doubleacute 0x27 shift altgr 83 | agrave 0x28 84 | degree 0x28 shift 85 | numbersign 0x28 altgr 86 | backslash 0x29 87 | bar 0x29 shift 88 | notsign 0x29 altgr 89 | ugrave 0x2b 90 | section 0x2b shift 91 | dead_grave 0x2b altgr 92 | dead_breve 0x2b shift altgr 93 | guillemotleft 0x2c altgr 94 | guillemotright 0x2d altgr 95 | cent 0x2e altgr 96 | copyright 0x2e shift altgr 97 | leftdoublequotemark 0x2f altgr 98 | grave 0x2f shift altgr 99 | rightdoublequotemark 0x30 altgr 100 | mu 0x32 altgr 101 | masculine 0x32 shift altgr 102 | comma 0x33 103 | semicolon 0x33 shift 104 | horizconnector 0x33 altgr 105 | multiply 0x33 shift altgr 106 | period 0x34 107 | colon 0x34 shift 108 | periodcentered 0x34 altgr 109 | division 0x34 shift altgr 110 | minus 0x35 111 | underscore 0x35 shift 112 | dead_belowdot 0x35 altgr 113 | dead_abovedot 0x35 shift altgr 114 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/ja: -------------------------------------------------------------------------------- 1 | # generated from XKB map jp106 2 | # See OADG Technical reference for official scancodes: 3 | # http://www.oadg.or.jp/tosho/index.htm#techref 4 | include common 5 | map 0xe0010411 6 | keyboard_type 0x7 7 | keyboard_subtype 0x2 8 | keyboard_functionkeys 0xc 9 | exclam 0x02 shift 10 | kana_NU 0x02 altgr 11 | quotedbl 0x03 shift 12 | kana_FU 0x03 altgr 13 | numbersign 0x04 shift 14 | kana_A 0x04 altgr 15 | kana_a 0x04 shift altgr 16 | dollar 0x05 shift 17 | kana_U 0x05 altgr 18 | kana_u 0x05 shift altgr 19 | percent 0x06 shift 20 | kana_E 0x06 altgr 21 | kana_e 0x06 shift altgr 22 | ampersand 0x07 shift 23 | kana_O 0x07 altgr 24 | kana_o 0x07 shift altgr 25 | apostrophe 0x08 shift 26 | kana_YA 0x08 altgr 27 | kana_ya 0x08 shift altgr 28 | parenleft 0x09 shift 29 | kana_YU 0x09 altgr 30 | kana_yu 0x09 shift altgr 31 | parenright 0x0a shift 32 | kana_YO 0x0a altgr 33 | kana_yo 0x0a shift altgr 34 | asciitilde 0x0b shift 35 | kana_WA 0x0b altgr 36 | kana_WO 0x0b shift altgr 37 | minus 0x0c 38 | equal 0x0c shift 39 | kana_HO 0x0c altgr 40 | asciicircum 0x0d 41 | asciitilde 0x0d shift 42 | kana_HE 0x0d altgr 43 | kana_TA 0x10 altgr 44 | kana_TE 0x11 altgr 45 | kana_I 0x12 altgr 46 | kana_i 0x12 shift altgr 47 | kana_SU 0x13 altgr 48 | kana_KA 0x14 altgr 49 | kana_N 0x15 altgr 50 | kana_NA 0x16 altgr 51 | kana_NI 0x17 altgr 52 | kana_RA 0x18 altgr 53 | kana_SE 0x19 altgr 54 | at 0x1a 55 | grave 0x1a shift 56 | voicedsound 0x1a altgr 57 | bracketleft 0x1b 58 | braceleft 0x1b shift 59 | semivoicedsound 0x1b altgr 60 | kana_openingbracket 0x1b shift altgr 61 | kana_CHI 0x1e altgr 62 | kana_TO 0x1f altgr 63 | kana_SHI 0x20 altgr 64 | kana_HA 0x21 altgr 65 | kana_KI 0x22 altgr 66 | kana_KU 0x23 altgr 67 | kana_MA 0x24 altgr 68 | kana_NO 0x25 altgr 69 | kana_RI 0x26 altgr 70 | semicolon 0x27 71 | plus 0x27 shift 72 | kana_RE 0x27 altgr 73 | colon 0x28 74 | asterisk 0x28 shift 75 | kana_KE 0x28 altgr 76 | Zenkaku_Hankaku 0x29 77 | Kanji 0x29 78 | bracketright 0x2b 79 | braceright 0x2b shift 80 | kana_MU 0x2b altgr 81 | kana_closingbracket 0x2b shift altgr 82 | kana_TSU 0x2c altgr 83 | kana_tsu 0x2c shift altgr 84 | kana_SA 0x2d altgr 85 | kana_SO 0x2e altgr 86 | kana_HI 0x2f altgr 87 | kana_KO 0x30 altgr 88 | kana_MI 0x31 altgr 89 | kana_MO 0x32 altgr 90 | comma 0x33 91 | less 0x33 shift 92 | kana_NE 0x33 altgr 93 | kana_comma 0x33 shift altgr 94 | period 0x34 95 | greater 0x34 shift 96 | kana_RU 0x34 altgr 97 | kana_fullstop 0x34 shift altgr 98 | slash 0x35 99 | question 0x35 shift 100 | kana_ME 0x35 altgr 101 | kana_conjunctive 0x35 shift altgr 102 | Execute 0x54 shift 103 | backslash 0x73 104 | bar 0x7d shift 105 | underscore 0x73 shift 106 | Henkan_Mode 0x79 107 | Hiragana_Katakana 0x70 localstate 108 | Katakana 0x70 109 | Romaji 0x70 110 | Muhenkan 0x7b 111 | # Plain [Eisu_toggle/Caps_Lock] should NOT have shift 112 | Eisu_toggle 0x3a 113 | # [Eisu_toggle/Caps_Lock] key will generate Caps_Lock keysym 114 | # only with shift+capslock stroke. Windows also expect this, so prefix a shift 115 | Caps_Lock 0x3a shift 116 | # Windows,Menu 117 | F13 0xdc 118 | Menu 0xdd 119 | #todo: Alt_R+Romaji doesnt romaji the IME (Alt_L+Romaji works) 120 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/ko: -------------------------------------------------------------------------------- 1 | # generated from XKB map ko 2 | include common 3 | map 0xe0010412 4 | exclam 0x02 shift 5 | at 0x03 shift 6 | numbersign 0x04 shift 7 | dollar 0x05 shift 8 | percent 0x06 shift 9 | asciicircum 0x07 shift 10 | ampersand 0x08 shift 11 | asterisk 0x09 shift 12 | parenleft 0x0a shift 13 | parenright 0x0b shift 14 | minus 0x0c 15 | underscore 0x0c shift 16 | equal 0x0d 17 | plus 0x0d shift 18 | bracketleft 0x1a 19 | braceleft 0x1a shift 20 | bracketright 0x1b 21 | braceright 0x1b shift 22 | semicolon 0x27 23 | colon 0x27 shift 24 | apostrophe 0x28 25 | quotedbl 0x28 shift 26 | grave 0x29 27 | asciitilde 0x29 shift 28 | backslash 0x2b 29 | bar 0x2b shift 30 | comma 0x33 31 | less 0x33 shift 32 | period 0x34 33 | greater 0x34 shift 34 | slash 0x35 35 | question 0x35 shift 36 | Hangul 0xf2 37 | Hangul_Hanja 0xf1 38 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/lt: -------------------------------------------------------------------------------- 1 | # generated from XKB map lt 2 | include common 3 | map 0x427 4 | exclam 0x02 shift 5 | aogonek 0x02 altgr 6 | Aogonek 0x02 shift altgr 7 | at 0x03 shift 8 | ccaron 0x03 altgr 9 | Ccaron 0x03 shift altgr 10 | numbersign 0x04 shift 11 | eogonek 0x04 altgr 12 | Eogonek 0x04 shift altgr 13 | dollar 0x05 shift 14 | eabovedot 0x05 altgr 15 | Eabovedot 0x05 shift altgr 16 | percent 0x06 shift 17 | iogonek 0x06 altgr 18 | Iogonek 0x06 shift altgr 19 | asciicircum 0x07 shift 20 | scaron 0x07 altgr 21 | Scaron 0x07 shift altgr 22 | ampersand 0x08 shift 23 | uogonek 0x08 altgr 24 | Uogonek 0x08 shift altgr 25 | asterisk 0x09 shift 26 | umacron 0x09 altgr 27 | Umacron 0x09 shift altgr 28 | parenleft 0x0a shift 29 | doublelowquotemark 0x0a altgr 30 | parenright 0x0b shift 31 | leftdoublequotemark 0x0b altgr 32 | minus 0x0c 33 | underscore 0x0c shift 34 | equal 0x0d 35 | plus 0x0d shift 36 | zcaron 0x0d altgr 37 | Zcaron 0x0d shift altgr 38 | bracketleft 0x1a 39 | braceleft 0x1a shift 40 | bracketright 0x1b 41 | braceright 0x1b shift 42 | semicolon 0x27 43 | colon 0x27 shift 44 | apostrophe 0x28 45 | quotedbl 0x28 shift 46 | grave 0x29 47 | asciitilde 0x29 shift 48 | backslash 0x2b 49 | bar 0x2b shift 50 | comma 0x33 51 | less 0x33 shift 52 | period 0x34 53 | greater 0x34 shift 54 | slash 0x35 55 | question 0x35 shift 56 | endash 0x56 57 | EuroSign 0x56 shift 58 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/lv: -------------------------------------------------------------------------------- 1 | # generated from XKB map lv 2 | include common 3 | map 0x426 4 | exclam 0x02 shift 5 | onesuperior 0x02 altgr 6 | exclamdown 0x02 shift altgr 7 | at 0x03 shift 8 | twosuperior 0x03 altgr 9 | oneeighth 0x03 shift altgr 10 | numbersign 0x04 shift 11 | threesuperior 0x04 altgr 12 | sterling 0x04 shift altgr 13 | dollar 0x05 shift 14 | EuroSign 0x05 altgr 15 | cent 0x05 shift altgr 16 | percent 0x06 shift 17 | onehalf 0x06 altgr 18 | threeeighths 0x06 shift altgr 19 | asciicircum 0x07 shift 20 | threequarters 0x07 altgr 21 | fiveeighths 0x07 shift altgr 22 | ampersand 0x08 shift 23 | braceleft 0x08 altgr 24 | seveneighths 0x08 shift altgr 25 | asterisk 0x09 shift 26 | bracketleft 0x09 altgr 27 | trademark 0x09 shift altgr 28 | parenleft 0x0a shift 29 | bracketright 0x0a altgr 30 | plusminus 0x0a shift altgr 31 | parenright 0x0b shift 32 | braceright 0x0b altgr 33 | degree 0x0b shift altgr 34 | minus 0x0c 35 | underscore 0x0c shift 36 | backslash 0x0c altgr 37 | questiondown 0x0c shift altgr 38 | equal 0x0d 39 | plus 0x0d shift 40 | dead_cedilla 0x0d altgr 41 | dead_ogonek 0x0d shift altgr 42 | at 0x10 altgr 43 | Greek_OMEGA 0x10 shift altgr 44 | lstroke 0x11 altgr 45 | Lstroke 0x11 shift altgr 46 | emacron 0x12 altgr 47 | Emacron 0x12 shift altgr 48 | rcedilla 0x13 altgr 49 | Rcedilla 0x13 shift altgr 50 | tslash 0x14 altgr 51 | Tslash 0x14 shift altgr 52 | leftarrow 0x15 altgr 53 | yen 0x15 shift altgr 54 | umacron 0x16 altgr 55 | Umacron 0x16 shift altgr 56 | imacron 0x17 altgr 57 | Imacron 0x17 shift altgr 58 | omacron 0x18 altgr 59 | Omacron 0x18 shift altgr 60 | thorn 0x19 altgr 61 | THORN 0x19 shift altgr 62 | bracketleft 0x1a 63 | braceleft 0x1a shift 64 | dead_diaeresis 0x1a altgr 65 | dead_abovering 0x1a shift altgr 66 | bracketright 0x1b 67 | braceright 0x1b shift 68 | dead_tilde 0x1b altgr 69 | dead_macron 0x1b shift altgr 70 | ISO_Next_Group 0x1c shift 71 | amacron 0x1e altgr 72 | Amacron 0x1e shift altgr 73 | scaron 0x1f altgr 74 | Scaron 0x1f shift altgr 75 | eth 0x20 altgr 76 | ETH 0x20 shift altgr 77 | dstroke 0x21 altgr 78 | ordfeminine 0x21 shift altgr 79 | gcedilla 0x22 altgr 80 | Gcedilla 0x22 shift altgr 81 | hstroke 0x23 altgr 82 | Hstroke 0x23 shift altgr 83 | kcedilla 0x25 altgr 84 | Kcedilla 0x25 shift altgr 85 | lcedilla 0x26 altgr 86 | Lcedilla 0x26 shift altgr 87 | semicolon 0x27 88 | colon 0x27 shift 89 | dead_acute 0x27 altgr 90 | dead_doubleacute 0x27 shift altgr 91 | apostrophe 0x28 92 | quotedbl 0x28 shift 93 | leftdoublequotemark 0x28 altgr 94 | doublelowquotemark 0x28 shift altgr 95 | grave 0x29 96 | asciitilde 0x29 shift 97 | notsign 0x29 altgr 98 | backslash 0x2b 99 | bar 0x2b shift 100 | dead_grave 0x2b altgr 101 | dead_breve 0x2b shift altgr 102 | zcaron 0x2c altgr 103 | Zcaron 0x2c shift altgr 104 | guillemotright 0x2d altgr 105 | greater 0x2d shift altgr 106 | ccaron 0x2e altgr 107 | Ccaron 0x2e shift altgr 108 | leftdoublequotemark 0x2f altgr 109 | grave 0x2f shift altgr 110 | rightdoublequotemark 0x30 altgr 111 | apostrophe 0x30 shift altgr 112 | ncedilla 0x31 altgr 113 | Ncedilla 0x31 shift altgr 114 | mu 0x32 altgr 115 | masculine 0x32 shift altgr 116 | comma 0x33 117 | less 0x33 shift 118 | horizconnector 0x33 altgr 119 | multiply 0x33 shift altgr 120 | period 0x34 121 | greater 0x34 shift 122 | periodcentered 0x34 altgr 123 | division 0x34 shift altgr 124 | slash 0x35 125 | question 0x35 shift 126 | dead_belowdot 0x35 altgr 127 | dead_abovedot 0x35 shift altgr 128 | nobreakspace 0x39 altgr 129 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/mk: -------------------------------------------------------------------------------- 1 | # generated from XKB map mk 2 | include common 3 | map 0x42f 4 | exclam 0x02 shift 5 | at 0x03 shift 6 | doublelowquotemark 0x03 shift altgr 7 | numbersign 0x04 shift 8 | leftdoublequotemark 0x04 shift altgr 9 | dollar 0x05 shift 10 | percent 0x06 shift 11 | asciicircum 0x07 shift 12 | ampersand 0x08 shift 13 | asterisk 0x09 shift 14 | parenleft 0x0a shift 15 | parenright 0x0b shift 16 | minus 0x0c 17 | underscore 0x0c shift 18 | equal 0x0d 19 | plus 0x0d shift 20 | Cyrillic_lje 0x10 altgr 21 | Cyrillic_LJE 0x10 shift altgr 22 | Cyrillic_nje 0x11 altgr 23 | Cyrillic_NJE 0x11 shift altgr 24 | Cyrillic_ie 0x12 altgr 25 | Cyrillic_IE 0x12 shift altgr 26 | Cyrillic_er 0x13 altgr 27 | Cyrillic_ER 0x13 shift altgr 28 | Cyrillic_te 0x14 altgr 29 | Cyrillic_TE 0x14 shift altgr 30 | Macedonia_dse 0x15 altgr 31 | Macedonia_DSE 0x15 shift altgr 32 | Cyrillic_u 0x16 altgr 33 | Cyrillic_U 0x16 shift altgr 34 | Cyrillic_i 0x17 altgr 35 | Cyrillic_I 0x17 shift altgr 36 | Cyrillic_o 0x18 altgr 37 | Cyrillic_O 0x18 shift altgr 38 | Cyrillic_pe 0x19 altgr 39 | Cyrillic_PE 0x19 shift altgr 40 | bracketleft 0x1a 41 | braceleft 0x1a shift 42 | Cyrillic_sha 0x1a altgr 43 | Cyrillic_SHA 0x1a shift altgr 44 | bracketright 0x1b 45 | braceright 0x1b shift 46 | Macedonia_gje 0x1b altgr 47 | Macedonia_GJE 0x1b shift altgr 48 | Cyrillic_a 0x1e altgr 49 | Cyrillic_A 0x1e shift altgr 50 | Cyrillic_es 0x1f altgr 51 | Cyrillic_ES 0x1f shift altgr 52 | Cyrillic_de 0x20 altgr 53 | Cyrillic_DE 0x20 shift altgr 54 | Cyrillic_ef 0x21 altgr 55 | Cyrillic_EF 0x21 shift altgr 56 | Cyrillic_ghe 0x22 altgr 57 | Cyrillic_GHE 0x22 shift altgr 58 | Cyrillic_ha 0x23 altgr 59 | Cyrillic_HA 0x23 shift altgr 60 | Cyrillic_je 0x24 altgr 61 | Cyrillic_JE 0x24 shift altgr 62 | Cyrillic_ka 0x25 altgr 63 | Cyrillic_KA 0x25 shift altgr 64 | Cyrillic_el 0x26 altgr 65 | Cyrillic_EL 0x26 shift altgr 66 | semicolon 0x27 67 | colon 0x27 shift 68 | Cyrillic_che 0x27 altgr 69 | Cyrillic_CHE 0x27 shift altgr 70 | apostrophe 0x28 71 | quotedbl 0x28 shift 72 | Macedonia_kje 0x28 altgr 73 | Macedonia_KJE 0x28 shift altgr 74 | grave 0x29 75 | asciitilde 0x29 shift 76 | backslash 0x2b 77 | bar 0x2b shift 78 | Cyrillic_zhe 0x2b altgr 79 | Cyrillic_ZHE 0x2b shift altgr 80 | Cyrillic_ze 0x2c altgr 81 | Cyrillic_ZE 0x2c shift altgr 82 | Cyrillic_dzhe 0x2d altgr 83 | Cyrillic_DZHE 0x2d shift altgr 84 | Cyrillic_tse 0x2e altgr 85 | Cyrillic_TSE 0x2e shift altgr 86 | Cyrillic_ve 0x2f altgr 87 | Cyrillic_VE 0x2f shift altgr 88 | Cyrillic_be 0x30 altgr 89 | Cyrillic_BE 0x30 shift altgr 90 | Cyrillic_en 0x31 altgr 91 | Cyrillic_EN 0x31 shift altgr 92 | Cyrillic_em 0x32 altgr 93 | Cyrillic_EM 0x32 shift altgr 94 | comma 0x33 95 | less 0x33 shift 96 | semicolon 0x33 shift altgr 97 | period 0x34 98 | greater 0x34 shift 99 | colon 0x34 shift altgr 100 | slash 0x35 101 | question 0x35 shift 102 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/modifiers: -------------------------------------------------------------------------------- 1 | Shift_R 0x36 2 | Shift_L 0x2a 3 | 4 | Alt_R 0xb8 5 | Mode_switch 0xb8 6 | ISO_Level3_Shift 0xb8 7 | 8 | Alt_L 0x38 9 | 10 | Control_R 0x9d 11 | Control_L 0x1d 12 | 13 | # Translate Meta, Super and Hyper to Windows keys. 14 | # This is hardcoded. See documentation for details. 15 | 16 | # Translate Menu to the Windows Application key. 17 | # This one does not work either. 18 | Menu 0xdd 19 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/nl: -------------------------------------------------------------------------------- 1 | # Dutch (Netherlands) 2 | include common 3 | map 0x413 4 | 5 | exclam 0x02 shift 6 | onesuperior 0x02 altgr 7 | quotebl 0x03 shift 8 | twosuperior 0x03 altgr 9 | numbersign 0x04 shift 10 | threesuperior 0x04 altgr 11 | dollar 0x05 shift 12 | onequarter 0x05 altgr 13 | percent 0x06 shift 14 | onehalf 0x06 altgr 15 | ampersand 0x07 shift 16 | threequarters 0x07 altgr 17 | underscore 0x08 shift 18 | sterling 0x08 altgr 19 | parenleft 0x09 shift 20 | braceleft 0x09 altgr 21 | parenright 0x0a shift 22 | braceright 0x0a altgr 23 | apostrophe 0x0b shift 24 | slash 0x0c 25 | question 0x0c shift 26 | backslash 0x0c altgr 27 | degree 0x0d 28 | dead_tilde 0x0d shift 29 | dead_cedilla 0x0d altgr 30 | EuroSign 0x12 altgr 31 | paragraph 0x13 altgr 32 | dead_diaeresis 0x1a 33 | dead_circumflex 0x1a shift 34 | asterisk 0x1b 35 | bar 0x1b shift 36 | ssharp 0x1f altgr 37 | plus 0x27 38 | plusminus 0x27 shift 39 | dead_acute 0x28 40 | dead_grave 0x28 shift 41 | at 0x29 42 | section 0x29 shift 43 | notsign 0x29 altgr 44 | less 0x2b 45 | greater 0x2b shift 46 | guillemotleft 0x2c altgr 47 | guillemotright 0x2d altgr 48 | copyright 0x2e altgr 49 | mu 0x32 altgr 50 | comma 0x33 51 | semicolon 0x33 shift 52 | period 0x34 53 | colon 0x34 shift 54 | periodcentered 0x34 altgr 55 | minus 0x35 56 | equal 0x35 shift 57 | bracketright 0x56 58 | bracketleft 0x56 shift 59 | brokenbar 0x56 altgr 60 | 61 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/no: -------------------------------------------------------------------------------- 1 | # generated from XKB map no 2 | include common 3 | map 0x414 4 | exclam 0x02 shift 5 | exclamdown 0x02 altgr 6 | onesuperior 0x02 shift altgr 7 | quotedbl 0x03 shift 8 | at 0x03 altgr 9 | twosuperior 0x03 shift altgr 10 | numbersign 0x04 shift 11 | sterling 0x04 altgr 12 | threesuperior 0x04 shift altgr 13 | currency 0x05 shift 14 | dollar 0x05 altgr 15 | onequarter 0x05 shift altgr 16 | percent 0x06 shift 17 | onehalf 0x06 altgr 18 | cent 0x06 shift altgr 19 | ampersand 0x07 shift 20 | yen 0x07 altgr 21 | fiveeighths 0x07 shift altgr 22 | slash 0x08 shift 23 | braceleft 0x08 altgr 24 | division 0x08 shift altgr 25 | parenleft 0x09 shift 26 | bracketleft 0x09 altgr 27 | guillemotleft 0x09 shift altgr 28 | parenright 0x0a shift 29 | bracketright 0x0a altgr 30 | guillemotright 0x0a shift altgr 31 | equal 0x0b shift 32 | braceright 0x0b altgr 33 | degree 0x0b shift altgr 34 | plus 0x0c 35 | question 0x0c shift 36 | plusminus 0x0c altgr 37 | questiondown 0x0c shift altgr 38 | backslash 0x0d 39 | dead_grave 0x0d shift 40 | dead_acute 0x0d altgr 41 | notsign 0x0d shift altgr 42 | Greek_OMEGA 0x10 shift altgr 43 | lstroke 0x11 altgr 44 | Lstroke 0x11 shift altgr 45 | EuroSign 0x12 altgr 46 | cent 0x12 shift altgr 47 | registered 0x13 altgr 48 | thorn 0x14 altgr 49 | THORN 0x14 shift altgr 50 | leftarrow 0x15 altgr 51 | yen 0x15 shift altgr 52 | downarrow 0x16 altgr 53 | uparrow 0x16 shift altgr 54 | rightarrow 0x17 altgr 55 | idotless 0x17 shift altgr 56 | oe 0x18 altgr 57 | OE 0x18 shift altgr 58 | thorn 0x19 altgr 59 | THORN 0x19 shift altgr 60 | aring 0x1a 61 | Aring 0x1a shift 62 | dead_diaeresis 0x1a altgr 63 | dead_abovering 0x1a shift altgr 64 | dead_diaeresis 0x1b 65 | dead_circumflex 0x1b shift 66 | asciicircum 0x01b shift 67 | dead_tilde 0x1b altgr 68 | asciitilde 0x1b altgr 69 | dead_caron 0x1b shift altgr 70 | ordfeminine 0x1e altgr 71 | masculine 0x1e shift altgr 72 | ssharp 0x1f altgr 73 | section 0x1f shift altgr 74 | eth 0x20 altgr 75 | ETH 0x20 shift altgr 76 | dstroke 0x21 altgr 77 | ordfeminine 0x21 shift altgr 78 | eng 0x22 altgr 79 | ENG 0x22 shift altgr 80 | hstroke 0x23 altgr 81 | Hstroke 0x23 shift altgr 82 | kra 0x25 altgr 83 | lstroke 0x26 altgr 84 | Lstroke 0x26 shift altgr 85 | oslash 0x27 86 | Ooblique 0x27 shift 87 | dead_doubleacute 0x27 shift altgr 88 | ae 0x28 89 | AE 0x28 shift 90 | dead_caron 0x28 shift altgr 91 | bar 0x29 92 | section 0x29 shift 93 | brokenbar 0x29 altgr 94 | paragraph 0x29 shift altgr 95 | apostrophe 0x2b 96 | asterisk 0x2b shift 97 | multiply 0x2b shift altgr 98 | guillemotleft 0x2c altgr 99 | guillemotright 0x2d altgr 100 | copyright 0x2e altgr 101 | leftdoublequotemark 0x2f altgr 102 | rightdoublequotemark 0x30 altgr 103 | mu 0x32 altgr 104 | masculine 0x32 shift altgr 105 | comma 0x33 106 | semicolon 0x33 shift 107 | dead_cedilla 0x33 altgr 108 | dead_ogonek 0x33 shift altgr 109 | period 0x34 110 | colon 0x34 shift 111 | periodcentered 0x34 altgr 112 | dead_abovedot 0x34 shift altgr 113 | minus 0x35 114 | underscore 0x35 shift 115 | hyphen 0x35 altgr 116 | macron 0x35 shift altgr 117 | nobreakspace 0x39 altgr 118 | onehalf 0x56 altgr 119 | threequarters 0x56 shift altgr 120 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/pl: -------------------------------------------------------------------------------- 1 | # generated from XKB map pl 2 | include common 3 | map 0x415 4 | exclam 0x02 shift 5 | onesuperior 0x02 altgr 6 | exclamdown 0x02 shift altgr 7 | at 0x03 shift 8 | twosuperior 0x03 altgr 9 | oneeighth 0x03 shift altgr 10 | numbersign 0x04 shift 11 | threesuperior 0x04 altgr 12 | sterling 0x04 shift altgr 13 | dollar 0x05 shift 14 | onequarter 0x05 altgr 15 | percent 0x06 shift 16 | onehalf 0x06 altgr 17 | threeeighths 0x06 shift altgr 18 | asciicircum 0x07 shift 19 | threequarters 0x07 altgr 20 | fiveeighths 0x07 shift altgr 21 | ampersand 0x08 shift 22 | braceleft 0x08 altgr 23 | seveneighths 0x08 shift altgr 24 | asterisk 0x09 shift 25 | bracketleft 0x09 altgr 26 | trademark 0x09 shift altgr 27 | parenleft 0x0a shift 28 | bracketright 0x0a altgr 29 | plusminus 0x0a shift altgr 30 | parenright 0x0b shift 31 | braceright 0x0b altgr 32 | degree 0x0b shift altgr 33 | minus 0x0c 34 | underscore 0x0c shift 35 | backslash 0x0c altgr 36 | questiondown 0x0c shift altgr 37 | equal 0x0d 38 | plus 0x0d shift 39 | dead_cedilla 0x0d altgr 40 | dead_ogonek 0x0d shift altgr 41 | Greek_OMEGA 0x10 shift altgr 42 | lstroke 0x11 altgr 43 | Lstroke 0x11 shift altgr 44 | eogonek 0x12 altgr 45 | Eogonek 0x12 shift altgr 46 | paragraph 0x13 altgr 47 | registered 0x13 shift altgr 48 | tslash 0x14 altgr 49 | Tslash 0x14 shift altgr 50 | leftarrow 0x15 altgr 51 | yen 0x15 shift altgr 52 | EuroSign 0x16 altgr 53 | uparrow 0x16 shift altgr 54 | rightarrow 0x17 altgr 55 | idotless 0x17 shift altgr 56 | oacute 0x18 altgr 57 | Oacute 0x18 shift altgr 58 | thorn 0x19 altgr 59 | THORN 0x19 shift altgr 60 | bracketleft 0x1a 61 | braceleft 0x1a shift 62 | dead_diaeresis 0x1a altgr 63 | dead_abovering 0x1a shift altgr 64 | bracketright 0x1b 65 | braceright 0x1b shift 66 | dead_tilde 0x1b altgr 67 | dead_macron 0x1b shift altgr 68 | aogonek 0x1e altgr 69 | Aogonek 0x1e shift altgr 70 | sacute 0x1f altgr 71 | Sacute 0x1f shift altgr 72 | eth 0x20 altgr 73 | ETH 0x20 shift altgr 74 | dstroke 0x21 altgr 75 | ordfeminine 0x21 shift altgr 76 | eng 0x22 altgr 77 | ENG 0x22 shift altgr 78 | hstroke 0x23 altgr 79 | Hstroke 0x23 shift altgr 80 | kra 0x25 altgr 81 | lstroke 0x26 altgr 82 | Lstroke 0x26 shift altgr 83 | semicolon 0x27 84 | colon 0x27 shift 85 | dead_acute 0x27 altgr 86 | dead_doubleacute 0x27 shift altgr 87 | apostrophe 0x28 88 | quotedbl 0x28 shift 89 | dead_circumflex 0x28 altgr 90 | dead_caron 0x28 shift altgr 91 | grave 0x29 92 | asciitilde 0x29 shift 93 | notsign 0x29 altgr 94 | backslash 0x2b 95 | bar 0x2b shift 96 | dead_grave 0x2b altgr 97 | dead_breve 0x2b shift altgr 98 | zabovedot 0x2c altgr 99 | Zabovedot 0x2c shift altgr 100 | zacute 0x2d altgr 101 | Zacute 0x2d shift altgr 102 | cacute 0x2e altgr 103 | Cacute 0x2e shift altgr 104 | leftdoublequotemark 0x2f altgr 105 | grave 0x2f shift altgr 106 | rightdoublequotemark 0x30 altgr 107 | nacute 0x31 altgr 108 | Nacute 0x31 shift altgr 109 | mu 0x32 altgr 110 | masculine 0x32 shift altgr 111 | comma 0x33 112 | less 0x33 shift 113 | horizconnector 0x33 altgr 114 | multiply 0x33 shift altgr 115 | period 0x34 116 | greater 0x34 shift 117 | periodcentered 0x34 altgr 118 | division 0x34 shift altgr 119 | slash 0x35 120 | question 0x35 shift 121 | dead_belowdot 0x35 altgr 122 | dead_abovedot 0x35 shift altgr 123 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/pt: -------------------------------------------------------------------------------- 1 | # generated from XKB map pt 2 | include common 3 | map 0x816 4 | exclam 0x02 shift 5 | onesuperior 0x02 altgr 6 | exclamdown 0x02 shift altgr 7 | quotedbl 0x03 shift 8 | at 0x03 altgr 9 | oneeighth 0x03 shift altgr 10 | numbersign 0x04 shift 11 | sterling 0x04 altgr 12 | dollar 0x05 shift 13 | section 0x05 altgr 14 | percent 0x06 shift 15 | onehalf 0x06 altgr 16 | threeeighths 0x06 shift altgr 17 | ampersand 0x07 shift 18 | threequarters 0x07 altgr 19 | fiveeighths 0x07 shift altgr 20 | slash 0x08 shift 21 | braceleft 0x08 altgr 22 | seveneighths 0x08 shift altgr 23 | parenleft 0x09 shift 24 | bracketleft 0x09 altgr 25 | trademark 0x09 shift altgr 26 | parenright 0x0a shift 27 | bracketright 0x0a altgr 28 | plusminus 0x0a shift altgr 29 | equal 0x0b shift 30 | braceright 0x0b altgr 31 | degree 0x0b shift altgr 32 | apostrophe 0x0c 33 | question 0x0c shift 34 | backslash 0x0c altgr 35 | questiondown 0x0c shift altgr 36 | guillemotleft 0x0d 37 | guillemotright 0x0d shift 38 | dead_cedilla 0x0d altgr 39 | dead_ogonek 0x0d shift altgr 40 | Greek_OMEGA 0x10 shift altgr 41 | lstroke 0x11 altgr 42 | Lstroke 0x11 shift altgr 43 | EuroSign 0x12 altgr 44 | cent 0x12 shift altgr 45 | paragraph 0x13 altgr 46 | registered 0x13 shift altgr 47 | tslash 0x14 altgr 48 | Tslash 0x14 shift altgr 49 | leftarrow 0x15 altgr 50 | yen 0x15 shift altgr 51 | downarrow 0x16 altgr 52 | uparrow 0x16 shift altgr 53 | rightarrow 0x17 altgr 54 | idotless 0x17 shift altgr 55 | oslash 0x18 altgr 56 | Ooblique 0x18 shift altgr 57 | thorn 0x19 altgr 58 | THORN 0x19 shift altgr 59 | plus 0x1a 60 | asterisk 0x1a shift 61 | dead_diaeresis 0x1a altgr 62 | dead_abovering 0x1a shift altgr 63 | dead_acute 0x1b 64 | dead_grave 0x1b shift 65 | dead_tilde 0x1b altgr 66 | dead_macron 0x1b shift altgr 67 | ae 0x1e altgr 68 | AE 0x1e shift altgr 69 | ssharp 0x1f altgr 70 | eth 0x20 altgr 71 | ETH 0x20 shift altgr 72 | dstroke 0x21 altgr 73 | ordfeminine 0x21 shift altgr 74 | eng 0x22 altgr 75 | ENG 0x22 shift altgr 76 | hstroke 0x23 altgr 77 | Hstroke 0x23 shift altgr 78 | kra 0x25 altgr 79 | lstroke 0x26 altgr 80 | Lstroke 0x26 shift altgr 81 | ccedilla 0x27 82 | Ccedilla 0x27 shift 83 | dead_doubleacute 0x27 shift altgr 84 | masculine 0x28 85 | ordfeminine 0x28 shift 86 | dead_circumflex 0x28 altgr 87 | dead_caron 0x28 shift altgr 88 | backslash 0x29 89 | bar 0x29 shift 90 | notsign 0x29 altgr 91 | dead_tilde 0x2b 92 | dead_circumflex 0x2b shift 93 | dead_breve 0x2b shift altgr 94 | less 0x56 95 | greater 0x56 shift 96 | cent 0x2e altgr 97 | copyright 0x2e shift altgr 98 | leftdoublequotemark 0x2f altgr 99 | grave 0x2f shift altgr 100 | rightdoublequotemark 0x30 altgr 101 | mu 0x32 altgr 102 | comma 0x33 103 | semicolon 0x33 shift 104 | horizconnector 0x33 altgr 105 | multiply 0x33 shift altgr 106 | period 0x34 107 | colon 0x34 shift 108 | periodcentered 0x34 altgr 109 | division 0x34 shift altgr 110 | minus 0x35 111 | underscore 0x35 shift 112 | dead_belowdot 0x35 altgr 113 | dead_abovedot 0x35 shift altgr 114 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/pt-br: -------------------------------------------------------------------------------- 1 | # generated from XKB map br 2 | include common 3 | map 0x416 4 | exclam 0x02 shift 5 | onesuperior 0x02 altgr 6 | exclamdown 0x02 shift altgr 7 | at 0x03 shift 8 | twosuperior 0x03 altgr 9 | onehalf 0x03 shift altgr 10 | numbersign 0x04 shift 11 | threesuperior 0x04 altgr 12 | threequarters 0x04 shift altgr 13 | dollar 0x05 shift 14 | sterling 0x05 altgr 15 | onequarter 0x05 shift altgr 16 | percent 0x06 shift 17 | cent 0x06 altgr 18 | dead_diaeresis 0x07 shift 19 | notsign 0x07 altgr 20 | diaeresis 0x07 shift altgr 21 | ampersand 0x08 shift 22 | braceleft 0x08 altgr 23 | asterisk 0x09 shift 24 | bracketleft 0x09 altgr 25 | parenleft 0x0a shift 26 | bracketright 0x0a altgr 27 | parenright 0x0b shift 28 | braceright 0x0b altgr 29 | minus 0x0c 30 | underscore 0x0c shift 31 | backslash 0x0c altgr 32 | equal 0x0d 33 | plus 0x0d shift 34 | section 0x0d altgr 35 | EuroSign 0x12 altgr 36 | registered 0x13 altgr 37 | dead_acute 0x1a 38 | dead_grave 0x1a shift 39 | acute 0x1a altgr 40 | grave 0x1a shift altgr 41 | bracketleft 0x1b 42 | braceleft 0x1b shift 43 | ordfeminine 0x1b altgr 44 | ccedilla 0x27 45 | Ccedilla 0x27 shift 46 | dead_tilde 0x28 47 | dead_circumflex 0x28 shift 48 | asciitilde 0x28 altgr 49 | asciicircum 0x28 shift altgr 50 | apostrophe 0x29 51 | quotedbl 0x29 shift 52 | bracketright 0x2b 53 | braceright 0x2b shift 54 | masculine 0x2b altgr 55 | copyright 0x2e altgr 56 | mu 0x32 altgr 57 | comma 0x33 58 | less 0x33 shift 59 | period 0x34 60 | greater 0x34 shift 61 | semicolon 0x35 62 | colon 0x35 shift 63 | comma 0x53 numlock 64 | backslash 0x56 65 | bar 0x56 shift 66 | slash 0x73 67 | question 0x73 shift 68 | degree 0x73 altgr 69 | KP_Decimal 0x34 70 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/ru: -------------------------------------------------------------------------------- 1 | # generated from XKB map ru 2 | include common 3 | map 0x419 4 | exclam 0x02 shift 5 | at 0x03 shift 6 | quotedbl 0x03 shift altgr 7 | numbersign 0x04 shift 8 | dollar 0x05 shift 9 | asterisk 0x05 shift altgr 10 | percent 0x06 shift 11 | colon 0x06 shift altgr 12 | asciicircum 0x07 shift 13 | comma 0x07 shift altgr 14 | ampersand 0x08 shift 15 | period 0x08 shift altgr 16 | asterisk 0x09 shift 17 | semicolon 0x09 shift altgr 18 | parenleft 0x0a shift 19 | parenright 0x0b shift 20 | minus 0x0c 21 | underscore 0x0c shift 22 | equal 0x0d 23 | plus 0x0d shift 24 | Cyrillic_shorti 0x10 altgr 25 | Cyrillic_SHORTI 0x10 shift altgr 26 | Cyrillic_tse 0x11 altgr 27 | Cyrillic_TSE 0x11 shift altgr 28 | Cyrillic_u 0x12 altgr 29 | Cyrillic_U 0x12 shift altgr 30 | Cyrillic_ka 0x13 altgr 31 | Cyrillic_KA 0x13 shift altgr 32 | Cyrillic_ie 0x14 altgr 33 | Cyrillic_IE 0x14 shift altgr 34 | Cyrillic_en 0x15 altgr 35 | Cyrillic_EN 0x15 shift altgr 36 | Cyrillic_ghe 0x16 altgr 37 | Cyrillic_GHE 0x16 shift altgr 38 | Cyrillic_sha 0x17 altgr 39 | Cyrillic_SHA 0x17 shift altgr 40 | Cyrillic_shcha 0x18 altgr 41 | Cyrillic_SHCHA 0x18 shift altgr 42 | Cyrillic_ze 0x19 altgr 43 | Cyrillic_ZE 0x19 shift altgr 44 | bracketleft 0x1a 45 | braceleft 0x1a shift 46 | Cyrillic_ha 0x1a altgr 47 | Cyrillic_HA 0x1a shift altgr 48 | bracketright 0x1b 49 | braceright 0x1b shift 50 | Cyrillic_hardsign 0x1b altgr 51 | Cyrillic_HARDSIGN 0x1b shift altgr 52 | Cyrillic_ef 0x1e altgr 53 | Cyrillic_EF 0x1e shift altgr 54 | Cyrillic_yeru 0x1f altgr 55 | Cyrillic_YERU 0x1f shift altgr 56 | Cyrillic_ve 0x20 altgr 57 | Cyrillic_VE 0x20 shift altgr 58 | Cyrillic_a 0x21 altgr 59 | Cyrillic_A 0x21 shift altgr 60 | Cyrillic_pe 0x22 altgr 61 | Cyrillic_PE 0x22 shift altgr 62 | Cyrillic_er 0x23 altgr 63 | Cyrillic_ER 0x23 shift altgr 64 | Cyrillic_o 0x24 altgr 65 | Cyrillic_O 0x24 shift altgr 66 | Cyrillic_el 0x25 altgr 67 | Cyrillic_EL 0x25 shift altgr 68 | Cyrillic_de 0x26 altgr 69 | Cyrillic_DE 0x26 shift altgr 70 | semicolon 0x27 71 | colon 0x27 shift 72 | Cyrillic_zhe 0x27 altgr 73 | Cyrillic_ZHE 0x27 shift altgr 74 | apostrophe 0x28 75 | quotedbl 0x28 shift 76 | Cyrillic_e 0x28 altgr 77 | Cyrillic_E 0x28 shift altgr 78 | grave 0x29 79 | asciitilde 0x29 shift 80 | Cyrillic_io 0x29 altgr 81 | Cyrillic_IO 0x29 shift altgr 82 | backslash 0x2b 83 | bar 0x2b shift 84 | Cyrillic_ya 0x2c altgr 85 | Cyrillic_YA 0x2c shift altgr 86 | Cyrillic_che 0x2d altgr 87 | Cyrillic_CHE 0x2d shift altgr 88 | Cyrillic_es 0x2e altgr 89 | Cyrillic_ES 0x2e shift altgr 90 | Cyrillic_em 0x2f altgr 91 | Cyrillic_EM 0x2f shift altgr 92 | Cyrillic_i 0x30 altgr 93 | Cyrillic_I 0x30 shift altgr 94 | Cyrillic_te 0x31 altgr 95 | Cyrillic_TE 0x31 shift altgr 96 | Cyrillic_softsign 0x32 altgr 97 | Cyrillic_SOFTSIGN 0x32 shift altgr 98 | comma 0x33 99 | less 0x33 shift 100 | Cyrillic_be 0x33 altgr 101 | Cyrillic_BE 0x33 shift altgr 102 | period 0x34 103 | greater 0x34 shift 104 | Cyrillic_yu 0x34 altgr 105 | Cyrillic_YU 0x34 shift altgr 106 | slash 0x35 107 | question 0x35 shift 108 | slash 0x56 altgr 109 | bar 0x56 shift altgr 110 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/sl: -------------------------------------------------------------------------------- 1 | # generated from XKB map sl 2 | include common 3 | map 0x424 4 | exclam 0x02 shift 5 | asciitilde 0x02 altgr 6 | dead_tilde 0x02 shift altgr 7 | quotedbl 0x03 shift 8 | dead_caron 0x03 altgr 9 | caron 0x03 shift altgr 10 | numbersign 0x04 shift 11 | asciicircum 0x04 altgr 12 | dead_circumflex 0x04 shift altgr 13 | dollar 0x05 shift 14 | dead_breve 0x05 altgr 15 | breve 0x05 shift altgr 16 | percent 0x06 shift 17 | degree 0x06 altgr 18 | dead_abovering 0x06 shift altgr 19 | ampersand 0x07 shift 20 | dead_ogonek 0x07 altgr 21 | ogonek 0x07 shift altgr 22 | slash 0x08 shift 23 | grave 0x08 altgr 24 | dead_grave 0x08 shift altgr 25 | parenleft 0x09 shift 26 | dead_abovedot 0x09 altgr 27 | abovedot 0x09 shift altgr 28 | parenright 0x0a shift 29 | dead_acute 0x0a altgr 30 | equal 0x0b shift 31 | dead_doubleacute 0x0b altgr 32 | doubleacute 0x0b shift altgr 33 | apostrophe 0x0c 34 | question 0x0c shift 35 | dead_diaeresis 0x0c altgr 36 | diaeresis 0x0c shift altgr 37 | plus 0x0d 38 | asterisk 0x0d shift 39 | dead_cedilla 0x0d altgr 40 | cedilla 0x0d shift altgr 41 | backslash 0x10 altgr 42 | Greek_OMEGA 0x10 shift altgr 43 | bar 0x11 altgr 44 | Lstroke 0x11 shift altgr 45 | EuroSign 0x12 altgr 46 | paragraph 0x13 altgr 47 | registered 0x13 shift altgr 48 | tslash 0x14 altgr 49 | Tslash 0x14 shift altgr 50 | z 0x15 addupper 51 | leftarrow 0x15 altgr 52 | yen 0x15 shift altgr 53 | downarrow 0x16 altgr 54 | uparrow 0x16 shift altgr 55 | rightarrow 0x17 altgr 56 | idotless 0x17 shift altgr 57 | oslash 0x18 altgr 58 | Ooblique 0x18 shift altgr 59 | thorn 0x19 altgr 60 | THORN 0x19 shift altgr 61 | scaron 0x1a 62 | Scaron 0x1a shift 63 | division 0x1a altgr 64 | dstroke 0x1b 65 | Dstroke 0x1b shift 66 | multiply 0x1b altgr 67 | dead_macron 0x1b shift altgr 68 | ae 0x1e altgr 69 | AE 0x1e shift altgr 70 | ssharp 0x1f altgr 71 | section 0x1f shift altgr 72 | eth 0x20 altgr 73 | ETH 0x20 shift altgr 74 | bracketleft 0x21 altgr 75 | ordfeminine 0x21 shift altgr 76 | bracketright 0x22 altgr 77 | ENG 0x22 shift altgr 78 | hstroke 0x23 altgr 79 | Hstroke 0x23 shift altgr 80 | lstroke 0x25 altgr 81 | Lstroke 0x26 altgr 82 | ccaron 0x27 83 | Ccaron 0x27 shift 84 | cacute 0x28 85 | Cacute 0x28 shift 86 | ssharp 0x28 altgr 87 | dead_cedilla 0x29 88 | notsign 0x29 altgr 89 | zcaron 0x2b 90 | Zcaron 0x2b shift 91 | currency 0x2b altgr 92 | y 0x2c addupper 93 | guillemotleft 0x2c altgr 94 | guillemotright 0x2d altgr 95 | cent 0x2e altgr 96 | copyright 0x2e shift altgr 97 | at 0x2f altgr 98 | braceleft 0x30 altgr 99 | braceright 0x31 altgr 100 | section 0x32 altgr 101 | masculine 0x32 shift altgr 102 | comma 0x33 103 | semicolon 0x33 shift 104 | horizconnector 0x33 altgr 105 | period 0x34 106 | colon 0x34 shift 107 | periodcentered 0x34 altgr 108 | minus 0x35 109 | underscore 0x35 shift 110 | dead_belowdot 0x35 altgr 111 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/sv: -------------------------------------------------------------------------------- 1 | map 0x0000041d 2 | include common 3 | 4 | # 5 | # Top row 6 | # 7 | section 0x29 8 | onehalf 0x29 shift 9 | 10 | # 1 11 | exclam 0x2 shift 12 | 13 | # 2 14 | quotedbl 0x3 shift 15 | at 0x3 altgr 16 | 17 | # 3 18 | numbersign 0x4 shift 19 | sterling 0x4 altgr 20 | # 4 21 | currency 0x5 shift 22 | dollar 0x5 altgr 23 | # 5 24 | percent 0x6 shift 25 | # 6 26 | ampersand 0x7 shift 27 | # 7 28 | slash 0x8 shift 29 | braceleft 0x8 altgr 30 | # 8 31 | parenleft 0x9 shift 32 | bracketleft 0x9 altgr 33 | # 9 34 | parenright 0xa shift 35 | bracketright 0xa altgr 36 | # 0 37 | equal 0xb shift 38 | braceright 0xb altgr 39 | 40 | plus 0xc 41 | question 0xc shift 42 | backslash 0xc altgr 43 | 44 | dead_acute 0xd 45 | dead_grave 0xd shift 46 | 47 | # 48 | # QWERTY first row 49 | # 50 | EuroSign 0x12 altgr 51 | aring 0x1a 52 | Aring 0x1a shift 53 | dead_diaeresis 0x1b 54 | dead_circumflex 0x1b shift 55 | dead_tilde 0x1b altgr 56 | 57 | # 58 | # QWERTY second row 59 | # 60 | odiaeresis 0x27 61 | Odiaeresis 0x27 shift 62 | adiaeresis 0x28 63 | Adiaeresis 0x28 shift 64 | apostrophe 0x2b 65 | asterisk 0x2b shift 66 | 67 | # 68 | # QWERTY third row 69 | # 70 | less 0x56 71 | greater 0x56 shift 72 | bar 0x56 altgr 73 | mu 0x32 altgr 74 | comma 0x33 75 | semicolon 0x33 shift 76 | period 0x34 77 | colon 0x34 shift 78 | minus 0x35 79 | underscore 0x35 shift 80 | 81 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/keymaps/tr: -------------------------------------------------------------------------------- 1 | # rdesktop Turkish Q Keyboard Layout 2 | # 3 | # Modified by Umit Oztosun 20040328 4 | # 5 | # Modified from the original mapping file provided with rdesktop 1.3.1. 6 | # This version works correctly with the right X settings. 7 | 8 | include common 9 | map 0x41f 10 | 11 | # First row 12 | quotedbl 0x29 13 | eacute 0x29 shift 14 | backslash 0x29 altgr 15 | 16 | exclam 0x02 shift 17 | onesuperior 0x02 altgr 18 | exclamdown 0x02 shift altgr 19 | 20 | apostrophe 0x03 shift 21 | sterling 0x03 altgr 22 | twosuperior 0x03 shift altgr 23 | 24 | dead_circumflex 0x04 shift 25 | numbersign 0x04 altgr 26 | threesuperior 0x04 shift altgr 27 | 28 | plus 0x05 shift 29 | dollar 0x05 altgr 30 | onequarter 0x05 shift altgr 31 | 32 | percent 0x06 shift 33 | onehalf 0x06 altgr 34 | threeeighths 0x06 shift altgr 35 | 36 | ampersand 0x07 shift 37 | threequarters 0x07 altgr 38 | 39 | slash 0x08 shift 40 | braceleft 0x08 altgr 41 | 42 | parenleft 0x09 shift 43 | bracketleft 0x09 altgr 44 | 45 | parenright 0x0a shift 46 | bracketright 0x0a altgr 47 | plusminus 0x0a shift altgr 48 | 49 | equal 0x0b shift 50 | braceright 0x0b altgr 51 | degree 0x0b shift altgr 52 | 53 | asterisk 0x0c 54 | question 0x0c shift 55 | backslash 0x0c altgr 56 | questiondown 0x0c shift altgr 57 | 58 | minus 0x0d 59 | underscore 0x0d shift 60 | division 0x0d altgr 61 | 62 | at 0x10 altgr 63 | 64 | EuroSign 0x12 altgr 65 | 66 | trademark 0x14 altgr 67 | 68 | ucircumflex 0x16 altgr 69 | Ucircumflex 0x16 shift altgr 70 | 71 | idotless 0x17 72 | I 0x17 shift 73 | icircumflex 0x17 altgr 74 | Icircumflex 0x17 altgr shift 75 | 76 | ocircumflex 0x18 altgr 77 | Ocircumflex 0x18 shift altgr 78 | 79 | gbreve 0x1a 80 | Gbreve 0x1a shift 81 | 82 | udiaeresis 0x1b 83 | Udiaeresis 0x1b shift 84 | asciitilde 0x1b altgr 85 | dead_macron 0x1b shift altgr 86 | 87 | comma 0x2b 88 | semicolon 0x2b shift 89 | grave 0x2b altgr 90 | dead_grave 0x2b altgr shift 91 | 92 | # Second row 93 | 94 | acircumflex 0x1e altgr 95 | Acircumflex 0x1e shift altgr 96 | 97 | section 0x1f altgr 98 | 99 | ordfeminine 0x21 altgr 100 | 101 | scedilla 0x27 102 | Scedilla 0x27 shift 103 | acute 0x27 altgr 104 | dead_acute 0x27 shift altgr 105 | 106 | i 0x28 107 | Iabovedot 0x28 shift 108 | dead_caron 0x28 shift altgr 109 | 110 | less 0x56 111 | greater 0x56 shift 112 | bar 0x56 altgr 113 | brokenbar 0x56 shift altgr 114 | 115 | cent 0x2e altgr 116 | copyright 0x2e shift altgr 117 | 118 | leftdoublequotemark 0x2f altgr 119 | 120 | rightdoublequotemark 0x30 altgr 121 | 122 | mu 0x32 altgr 123 | masculine 0x32 shift altgr 124 | 125 | odiaeresis 0x33 126 | Odiaeresis 0x33 shift 127 | multiply 0x33 altgr 128 | 129 | ccedilla 0x34 130 | Ccedilla 0x34 shift 131 | periodcentered 0x34 altgr 132 | division 0x34 shift altgr 133 | 134 | period 0x35 135 | colon 0x35 shift 136 | dead_abovedot 0x35 altgr 137 | dead_abovedot 0x35 shift altgr 138 | 139 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/licence.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/licence.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/lspci.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/lspci.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/mcs.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/mcs.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/mppc.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/mppc.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/orders.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/orders.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/parallel.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/parallel.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/printer.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/printer.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/printercache.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/printercache.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/proto.head: -------------------------------------------------------------------------------- 1 | /* -*- c-basic-offset: 8 -*- 2 | rdesktop: A Remote Desktop Protocol client. 3 | Copyright (C) Matthew Chapman 1999-2007 4 | 5 | This program is free software: you can redistribute it and/or modify 6 | it under the terms of the GNU General Public License as published by 7 | the Free Software Foundation, either version 3 of the License, or 8 | (at your option) any later version. 9 | 10 | This program is distributed in the hope that it will be useful, 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | GNU General Public License for more details. 14 | 15 | You should have received a copy of the GNU General Public License 16 | along with this program. If not, see . 17 | */ 18 | 19 | #ifndef RDESKTOP_PROTO_H 20 | #define RDESKTOP_PROTO_H 21 | 22 | /* *INDENT-OFF* */ 23 | #ifdef __cplusplus 24 | extern "C" { 25 | #endif 26 | /* *INDENT-ON* */ 27 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/proto.tail: -------------------------------------------------------------------------------- 1 | 2 | /* *INDENT-OFF* */ 3 | #ifdef __cplusplus 4 | } 5 | #endif 6 | /* *INDENT-ON* */ 7 | 8 | #endif 9 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/pstcache.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/pstcache.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/rdesktop: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/rdesktop -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/rdesktop.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/rdesktop.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/rdesktop.spec: -------------------------------------------------------------------------------- 1 | Summary: Remote Desktop Protocol client 2 | Name: rdesktop 3 | Version: 1.8.3 4 | Release: 1 5 | License: GPL; see COPYING 6 | Group: Applications/Communications 7 | Source: rdesktop-%{version}.tar.gz 8 | BuildRoot: %{_tmppath}/%{name}-buildroot 9 | Packager: Peter Åstrand 10 | 11 | %description 12 | rdesktop is a client for Remote Desktop Protocol (RDP), used in a number of 13 | Microsoft products including Windows NT Terminal Server, Windows 2000 Server, 14 | Windows XP, Windows 2003 Server and Windows 2008r2. 15 | 16 | %prep 17 | rm -rf $RPM_BUILD_ROOT 18 | 19 | %setup 20 | %build 21 | ./configure --prefix=%{_prefix} --bindir=%{_bindir} --mandir=%{_mandir} 22 | make 23 | 24 | %install 25 | make install DESTDIR=$RPM_BUILD_ROOT 26 | 27 | %files 28 | %defattr(-,root,root) 29 | %doc COPYING doc/AUTHORS doc/keymapping.txt doc/keymap-names.txt doc/ipv6.txt doc/ChangeLog 30 | %{_bindir}/rdesktop 31 | %{_mandir}/man1/rdesktop.1* 32 | %{_datadir}/rdesktop/keymaps 33 | 34 | %clean 35 | rm -rf $RPM_BUILD_ROOT 36 | 37 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/rdp.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/rdp.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/rdp5.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/rdp5.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/rdpdr.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/rdpdr.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/rdpsnd.h: -------------------------------------------------------------------------------- 1 | /* 2 | rdesktop: A Remote Desktop Protocol client. 3 | Sound infrastructure 4 | Copyright (C) Michael Gernoth 2006-2008 5 | 6 | This program is free software: you can redistribute it and/or modify 7 | it under the terms of the GNU General Public License as published by 8 | the Free Software Foundation, either version 3 of the License, or 9 | (at your option) any later version. 10 | 11 | This program is distributed in the hope that it will be useful, 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | GNU General Public License for more details. 15 | 16 | You should have received a copy of the GNU General Public License 17 | along with this program. If not, see . 18 | */ 19 | 20 | struct audio_packet 21 | { 22 | struct stream s; 23 | uint16 tick; 24 | uint8 index; 25 | 26 | struct timeval arrive_tv; 27 | struct timeval completion_tv; 28 | }; 29 | 30 | struct audio_driver 31 | { 32 | void (*add_fds) (int *n, fd_set * rfds, fd_set * wfds, struct timeval * tv); 33 | void (*check_fds) (fd_set * rfds, fd_set * wfds); 34 | 35 | RD_BOOL(*wave_out_open) (void); 36 | void (*wave_out_close) (void); 37 | RD_BOOL(*wave_out_format_supported) (RD_WAVEFORMATEX * pwfx); 38 | RD_BOOL(*wave_out_set_format) (RD_WAVEFORMATEX * pwfx); 39 | void (*wave_out_volume) (uint16 left, uint16 right); 40 | 41 | RD_BOOL(*wave_in_open) (void); 42 | void (*wave_in_close) (void); 43 | RD_BOOL(*wave_in_format_supported) (RD_WAVEFORMATEX * pwfx); 44 | RD_BOOL(*wave_in_set_format) (RD_WAVEFORMATEX * pwfx); 45 | void (*wave_in_volume) (uint16 left, uint16 right); 46 | 47 | char *name; 48 | char *description; 49 | int need_byteswap_on_be; 50 | int need_resampling; 51 | struct audio_driver *next; 52 | }; 53 | 54 | /* Driver register functions */ 55 | struct audio_driver *alsa_register(char *options); 56 | struct audio_driver *libao_register(char *options); 57 | struct audio_driver *oss_register(char *options); 58 | struct audio_driver *sgi_register(char *options); 59 | struct audio_driver *sun_register(char *options); 60 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/rdpsnd.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/rdpsnd.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/rdpsnd_dsp.h: -------------------------------------------------------------------------------- 1 | /* 2 | rdesktop: A Remote Desktop Protocol client. 3 | Sound DSP routines 4 | Copyright (C) Michael Gernoth 2006-2008 5 | 6 | This program is free software: you can redistribute it and/or modify 7 | it under the terms of the GNU General Public License as published by 8 | the Free Software Foundation, either version 3 of the License, or 9 | (at your option) any later version. 10 | 11 | This program is distributed in the hope that it will be useful, 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | GNU General Public License for more details. 15 | 16 | You should have received a copy of the GNU General Public License 17 | along with this program. If not, see . 18 | */ 19 | 20 | /* Software volume control */ 21 | void rdpsnd_dsp_softvol_set(uint16 left, uint16 right); 22 | 23 | /* Endian conversion */ 24 | void rdpsnd_dsp_swapbytes(unsigned char *buffer, unsigned int size, RD_WAVEFORMATEX * format); 25 | 26 | /* Resample control */ 27 | RD_BOOL rdpsnd_dsp_resample_set(uint32 device_srate, uint16 device_bitspersample, 28 | uint16 device_channels); 29 | RD_BOOL rdpsnd_dsp_resample_supported(RD_WAVEFORMATEX * pwfx); 30 | 31 | STREAM rdpsnd_dsp_process(unsigned char *data, unsigned int size, 32 | struct audio_driver *current_driver, RD_WAVEFORMATEX * format); 33 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/rdpsnd_dsp.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/rdpsnd_dsp.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/rdpsnd_oss.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/rdpsnd_oss.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/seamless.h: -------------------------------------------------------------------------------- 1 | /* 2 | rdesktop: A Remote Desktop Protocol client. 3 | Seamless Windows support 4 | Copyright 2005-2008 Peter Astrand for Cendio AB 5 | 6 | This program is free software: you can redistribute it and/or modify 7 | it under the terms of the GNU General Public License as published by 8 | the Free Software Foundation, either version 3 of the License, or 9 | (at your option) any later version. 10 | 11 | This program is distributed in the hope that it will be useful, 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | GNU General Public License for more details. 15 | 16 | You should have received a copy of the GNU General Public License 17 | along with this program. If not, see . 18 | */ 19 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/seamless.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/seamless.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/secure.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/secure.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/serial.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/serial.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/ssl.h: -------------------------------------------------------------------------------- 1 | /* -*- c-basic-offset: 8 -*- 2 | rdesktop: A Remote Desktop Protocol client. 3 | Secure sockets abstraction layer 4 | Copyright (C) Matthew Chapman 1999-2008 5 | Copyright (C) Jay Sorg 2006-2008 6 | 7 | This program is free software: you can redistribute it and/or modify 8 | it under the terms of the GNU General Public License as published by 9 | the Free Software Foundation, either version 3 of the License, or 10 | (at your option) any later version. 11 | 12 | This program is distributed in the hope that it will be useful, 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with this program. If not, see . 19 | */ 20 | 21 | #ifndef _RDSSL_H 22 | #define _RDSSL_H 23 | 24 | #include 25 | #include 26 | #include 27 | #include 28 | #include 29 | #include 30 | 31 | #if defined(OPENSSL_VERSION_NUMBER) && (OPENSSL_VERSION_NUMBER >= 0x0090800f) 32 | #define D2I_X509_CONST const 33 | #else 34 | #define D2I_X509_CONST 35 | #endif 36 | 37 | #define RDSSL_RC4 RC4_KEY 38 | #define RDSSL_SHA1 SHA_CTX 39 | #define RDSSL_MD5 MD5_CTX 40 | #define RDSSL_CERT X509 41 | #define RDSSL_RKEY RSA 42 | 43 | void rdssl_sha1_init(RDSSL_SHA1 * sha1); 44 | void rdssl_sha1_update(RDSSL_SHA1 * sha1, uint8 * data, uint32 len); 45 | void rdssl_sha1_final(RDSSL_SHA1 * sha1, uint8 * out_data); 46 | void rdssl_md5_init(RDSSL_MD5 * md5); 47 | void rdssl_md5_update(RDSSL_MD5 * md5, uint8 * data, uint32 len); 48 | void rdssl_md5_final(RDSSL_MD5 * md5, uint8 * out_data); 49 | void rdssl_rc4_set_key(RDSSL_RC4 * rc4, uint8 * key, uint32 len); 50 | void rdssl_rc4_crypt(RDSSL_RC4 * rc4, uint8 * in_data, uint8 * out_data, uint32 len); 51 | void rdssl_rsa_encrypt(uint8 * out, uint8 * in, int len, uint32 modulus_size, uint8 * modulus, 52 | uint8 * exponent); 53 | RDSSL_CERT *rdssl_cert_read(uint8 * data, uint32 len); 54 | void rdssl_cert_free(RDSSL_CERT * cert); 55 | RDSSL_RKEY *rdssl_cert_to_rkey(RDSSL_CERT * cert, uint32 * key_len); 56 | RD_BOOL rdssl_certs_ok(RDSSL_CERT * server_cert, RDSSL_CERT * cacert); 57 | int rdssl_cert_print_fp(FILE * fp, RDSSL_CERT * cert); 58 | void rdssl_rkey_free(RDSSL_RKEY * rkey); 59 | int rdssl_rkey_get_exp_mod(RDSSL_RKEY * rkey, uint8 * exponent, uint32 max_exp_len, uint8 * modulus, 60 | uint32 max_mod_len); 61 | RD_BOOL rdssl_sig_ok(uint8 * exponent, uint32 exp_len, uint8 * modulus, uint32 mod_len, 62 | uint8 * signature, uint32 sig_len); 63 | 64 | void rdssl_hmac_md5(const void *key, int key_len, 65 | const unsigned char *msg, int msg_len, unsigned char *md); 66 | 67 | #endif 68 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/ssl.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/ssl.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/tcp.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/tcp.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/tests/brushtest.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/tests/brushtest.exe -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/tests/brushtestMakefile: -------------------------------------------------------------------------------- 1 | 2 | # by Jay Sorg, public domain 3 | # borland makefile 4 | 5 | OBJS = brushtest.obj 6 | 7 | CFLAGS = -O2 8 | LDFLAGS = -W 9 | 10 | all: brushtest.exe 11 | 12 | brushtest.exe: $(OBJS) 13 | $(CC) -ebrushtest.exe $(LDFLAGS) $(OBJS) 14 | 15 | clean: 16 | del /q $(OBJS) brushtest.exe *.tds 17 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/tests/notepadbehindwordpad.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | 5 | 6 | 7 | int 8 | main(int argc, char *argv[]) 9 | { 10 | HWND notepad, wordpad; 11 | 12 | notepad = FindWindow("Notepad", NULL); 13 | wordpad = FindWindow("WordPadClass", NULL); 14 | 15 | SetWindowPos(notepad, wordpad, 0, 0, 0, 0, SWP_NOACTIVATE | SWP_NOMOVE | SWP_NOSIZE); 16 | 17 | return 0; 18 | } 19 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/tests/notepadbehindwordpad.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/tests/notepadbehindwordpad.exe -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/uiports/makefile_nanox: -------------------------------------------------------------------------------- 1 | # 2 | # nanoxrdesktop makefile 3 | # 4 | # These two following lines must point to the currently installed version of 5 | # nano-X. You can override them on the make command line to point at your 6 | # installation without changing this file. 7 | # 8 | NXINCLUDES=/usr/local/nanox/src/include 9 | NXLIBS=/usr/local/nanox/src/lib/libnano-X.a 10 | 11 | CC = gcc 12 | CFLAGS = -Os -Wall -I$(NXINCLUDES) 13 | RESTOBJ = ../tcp.o ../iso.o ../mcs.o ../secure.o ../rdp.o ../rdp5.o ../orders.o ../cache.o ../mppc.o ../licence.o ../bitmap.o ../channels.o ../pstcache.o 14 | LDFLAGS = -lcrypto 15 | 16 | all: nanoxrd 17 | 18 | nanoxrd: $(RESTOBJ) nanoxwin.o 19 | $(CC) -o nanoxrdesktop nanoxwin.o $(NXLIBS) $(RESTOBJ) $(LDFLAGS) 20 | strip nanoxrdesktop 21 | 22 | clean: 23 | rm -f nanoxrdesktop 24 | rm -f *.o 25 | rm -f ../*.o 26 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/uiports/makefile_qt: -------------------------------------------------------------------------------- 1 | # 2 | # qtrdesktop makefile 3 | # qt should be installed in /usr/local/qt or /usr/lib/qt3 4 | # set QTBDIR to this location 5 | 6 | QTBDIR = /usr/lib/qt3 7 | 8 | CC = g++ 9 | CPPFLAGS = -O2 -Wall -I$(QTBDIR)/include -I.. 10 | # the next line is for sound 11 | #CPPFLAGS += -DWITH_RDPSND 12 | RESTOBJ = tcp.o iso.o mcs.o secure.o rdp.o rdp5.o 13 | RESTOBJ += orders.o cache.o mppc.o licence.o bitmap.o 14 | RESTOBJ += channels.o pstcache.o ssl.o 15 | # the next line is for sound 16 | #RESTOBJ += rdpsnd.o rdpsnd_oss.o rdpsnd_dsp.o 17 | LD2FLAGS = -L$(QTBDIR)/lib -L/usr/X11R6/lib 18 | LDFLAGS = -lcrypto -lqt-mt -lXext -lX11 -lm 19 | MOCFILE = $(QTBDIR)/bin/moc 20 | 21 | all: qtrd 22 | 23 | qtrd: $(RESTOBJ) qtwin.o 24 | $(MOCFILE) qtwin.h > moc_qtwin.cpp 25 | $(CC) $(CPPFLAGS) -c moc_qtwin.cpp 26 | $(CC) -o qtrdesktop $(LD2FLAGS) qtwin.o moc_qtwin.o $(RESTOBJ) $(LDFLAGS) 27 | strip qtrdesktop 28 | 29 | clean: 30 | rm -f qtrdesktop 31 | rm -f *.o 32 | rm -f ../*.o 33 | rm -f moc_qtwin.cpp 34 | 35 | # common files 36 | 37 | tcp.o: ../tcp.c 38 | $(CC) $(CPPFLAGS) -c ../tcp.c 39 | 40 | iso.o: ../iso.c 41 | $(CC) $(CPPFLAGS) -c ../iso.c 42 | 43 | mcs.o: ../mcs.c 44 | $(CC) $(CPPFLAGS) -c ../mcs.c 45 | 46 | secure.o: ../secure.c 47 | $(CC) $(CPPFLAGS) -c ../secure.c 48 | 49 | rdp.o: ../rdp.c 50 | $(CC) $(CPPFLAGS) -c ../rdp.c 51 | 52 | rdp5.o: ../rdp5.c 53 | $(CC) $(CPPFLAGS) -c ../rdp5.c 54 | 55 | orders.o: ../orders.c 56 | $(CC) $(CPPFLAGS) -c ../orders.c 57 | 58 | cache.o: ../cache.c 59 | $(CC) $(CPPFLAGS) -c ../cache.c 60 | 61 | mppc.o: ../mppc.c 62 | $(CC) $(CPPFLAGS) -c ../mppc.c 63 | 64 | licence.o: ../licence.c 65 | $(CC) $(CPPFLAGS) -c ../licence.c 66 | 67 | bitmap.o: ../bitmap.c 68 | $(CC) $(CPPFLAGS) -c ../bitmap.c 69 | 70 | channels.o: ../channels.c 71 | $(CC) $(CPPFLAGS) -c ../channels.c 72 | 73 | pstcache.o: ../pstcache.c 74 | $(CC) $(CPPFLAGS) -c ../pstcache.c 75 | 76 | ssl.o: ../ssl.c 77 | $(CC) $(CPPFLAGS) -c ../ssl.c 78 | 79 | rdpsnd.o: ../rdpsnd.c 80 | $(CC) $(CPPFLAGS) -c ../rdpsnd.c 81 | 82 | rdpsnd_oss.o: ../rdpsnd_oss.c 83 | $(CC) $(CPPFLAGS) -c ../rdpsnd_oss.c 84 | 85 | rdpsnd_dsp.o: ../rdpsnd_dsp.c 86 | $(CC) $(CPPFLAGS) -c ../rdpsnd_dsp.c 87 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/uiports/makefile_qte: -------------------------------------------------------------------------------- 1 | # 2 | # qterdesktop makefile 3 | # qt should be installed in /usr/local/qt 4 | # 5 | CC = g++ 6 | CPPFLAGS = -DQWS -fno-exceptions -fno-rtti -Wall -Os -Wall -I/usr/local/qt/include -DWITH_RDPSND -DNO_DEBUG 7 | RESTOBJ = ../tcp.o ../iso.o ../mcs.o ../secure.o ../rdp.o ../rdp5.o ../orders.o ../cache.o ../mppc.o ../licence.o ../bitmap.o ../channels.o ../pstcache.o ../rdpsnd.o ../rdpsnd_oss.o 8 | LD2FLAGS = -L/usr/local/qt/lib 9 | LDFLAGS = -lcrypto -lqte 10 | MOCFILE = /usr/local/qt/bin/moc 11 | 12 | all: qtrd 13 | 14 | qtrd: $(RESTOBJ) qtewin.o 15 | $(MOCFILE) qtewin.h > moc_qtewin.cpp 16 | $(CC) $(CPPFLAGS) -c moc_qtewin.cpp 17 | $(CC) -o qterdesktop $(LD2FLAGS) qtewin.o moc_qtewin.o $(RESTOBJ) $(LDFLAGS) 18 | strip qterdesktop 19 | 20 | clean: 21 | rm -f qterdesktop 22 | rm -f *.o 23 | rm -f ../*.o 24 | rm -f moc_qtewin.cpp 25 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/uiports/makefile_svga: -------------------------------------------------------------------------------- 1 | CC = gcc 2 | CFLAGS = -Os -DWITH_OPENSSL -DL_ENDIAN -Wall 3 | RESTOBJ = ../tcp.o ../iso.o ../mcs.o ../secure.o ../rdp.o ../rdp5.o ../orders.o ../cache.o ../mppc.o ../licence.o ../bitmap.o ../channels.o ../pstcache.o ../ssl.o 4 | LDFLAGS = -lvga -lcrypto 5 | 6 | #LDFLAGS = -lm /usr/local/lib/libvga.a /usr/lib/libcrypto.a 7 | #LDFLAGS = -lvga /usr/lib/libcrypto.a 8 | 9 | all: svgard 10 | svgard: svgawin.o $(RESTOBJ) 11 | $(CC) -o svgardesktop svgawin.o $(RESTOBJ) $(LDFLAGS) 12 | strip svgardesktop 13 | 14 | #rest: $(RESTOBJ) 15 | #rest: tcp.o iso.o mcs.o secure.o rdp.o rdp5.o orders.o cache.o mppc.o licence.o bitmap.o channels.o pstcache.o 16 | rest: ../tcp.c ../iso.c ../mcs.c ../secure.c ../rdp.c ../rdp5.c ../orders.c ../cache.c ../mppc.c ../licence.c ../bitmap.c ../channels.c ../pstcache.c 17 | $(CC) $(CFLAGS) -c ../tcp.c -o ../tcp.o 18 | $(CC) $(CFLAGS) -c ../iso.c -o ../iso.o 19 | $(CC) $(CFLAGS) -c ../mcs.c -o ../mcs.o 20 | $(CC) $(CFLAGS) -c ../secure.c -o ../secue.o 21 | $(CC) $(CFLAGS) -c ../rdp.c -o ../rdp.o 22 | $(CC) $(CFLAGS) -c ../rdp5.c -o ../rdp5.o 23 | $(CC) $(CFLAGS) -c ../orders.c -o ../orders.o 24 | $(CC) $(CFLAGS) -c ../cache.c -o ../cache.o 25 | $(CC) $(CFLAGS) -c ../mppc.c -o ../mppc.o 26 | $(CC) $(CFLAGS) -c ../licence.c -o ../licence.o 27 | $(CC) $(CFLAGS) -c ../bitmap.c -o ../bitmap.o 28 | $(CC) $(CFLAGS) -c ../channels.c -o ../channels.o 29 | $(CC) $(CFLAGS) -c ../pstcache.c -o ../pstcache.o 30 | 31 | svgawin.o: svgawin.c 32 | $(CC) $(CFLAGS) -c $*.c 33 | clean: 34 | rm -f svgardesktop 35 | rm -f *.o 36 | rm -f ../*.o 37 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/uiports/makefile_xxx: -------------------------------------------------------------------------------- 1 | # 2 | # xxxrdesktop makefile 3 | # 4 | CC = gcc 5 | CFLAGS = -O2 -Wall 6 | RESTOBJ = ../tcp.o ../iso.o ../mcs.o ../secure.o ../rdp.o ../rdp5.o ../orders.o ../cache.o ../mppc.o ../licence.o ../bitmap.o ../channels.o ../pstcache.o ../ssl.o 7 | LDFLAGS = -lcrypto 8 | 9 | all: xxxrd 10 | 11 | xxxrd: $(RESTOBJ) xxxwin.o 12 | $(CC) -o xxxrdesktop xxxwin.o $(RESTOBJ) $(LDFLAGS) 13 | strip xxxrdesktop 14 | 15 | clean: 16 | rm -f xxxrdesktop 17 | rm -f *.o 18 | rm -f ../*.o 19 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/uiports/nanoxreadme.txt: -------------------------------------------------------------------------------- 1 | This is the nanox ui port 2 | tested with versions 0.90 3 | 4 | makefile_nanox can be edited to change file localtions 5 | run make -f makefile_nanox in this directory to compile it 6 | 7 | nanoxreadme.txt - notes, this file 8 | makefile_nanox - makefile 9 | nanoxwin.cpp - ui lib 10 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/uiports/qtereadme.txt: -------------------------------------------------------------------------------- 1 | This is the Qt/Emb ui port 2 | qt should be installed in /usr/local/qt 3 | you may need to have LD_LIBRARY_PATH and QTDIR defined to run qtrdesktop 4 | tested with versions 2.3, 3.1 5 | 6 | makefile_qte can be edited to change file localtions 7 | run make -f makefile_qte in this directory to compile it 8 | 9 | qtereadme.txt - notes, this file 10 | makefile_qte - makefile 11 | qtewin.cpp - ui lib 12 | qtewin.h - header 13 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/uiports/qtewin.h: -------------------------------------------------------------------------------- 1 | 2 | #include 3 | #include 4 | #include 5 | #include 6 | #include 7 | #include 8 | #include 9 | #include 10 | #include 11 | 12 | class QMyConnectionItem 13 | { 14 | public: 15 | QString ServerName; 16 | QString UserName; 17 | QString ServerIP; 18 | int Width; 19 | int Height; 20 | int FullScreen; 21 | }; 22 | 23 | class QMyDialog: public QDialog 24 | { 25 | Q_OBJECT 26 | public: 27 | QMyDialog(QWidget*); 28 | ~QMyDialog(); 29 | public: 30 | QListBox* ListBox; 31 | QPushButton* OKButton; 32 | QPushButton* CancelButton; 33 | QLabel* Label1; 34 | QLineEdit* ServerNameEdit; 35 | QLabel* Label2; 36 | QLineEdit* UserNameEdit; 37 | QLabel* Label3; 38 | QLineEdit* IPEdit; 39 | QLineEdit* WidthEdit; 40 | QLineEdit* HeightEdit; 41 | QComboBox* WidthHeightBox; 42 | QPushButton* AddButton; 43 | QPushButton* EditButton; 44 | QPushButton* SaveButton; 45 | QPushButton* RemoveButton; 46 | QCheckBox* FullScreenCheckBox; 47 | public slots: 48 | void ComboChanged(int); 49 | void OKClicked(); 50 | void CancelClicked(); 51 | void AddClicked(); 52 | void EditClicked(); 53 | void SaveClicked(); 54 | void RemoveClicked(); 55 | void ListBoxChanged(); 56 | void ListBoxSelected(int); 57 | public: 58 | QString ServerName; 59 | QString UserName; 60 | QString ServerIP; 61 | int Width; 62 | int Height; 63 | int FullScreen; 64 | QMyConnectionItem* ConnectionList[10]; 65 | }; 66 | 67 | class QMyScrollView: public QScrollView 68 | { 69 | Q_OBJECT 70 | public: 71 | QMyScrollView(); 72 | ~QMyScrollView(); 73 | void keyPressEvent(QKeyEvent*); 74 | void keyReleaseEvent(QKeyEvent*); 75 | void showEvent(QShowEvent*); 76 | void show(); 77 | void polish(); 78 | void timerEvent(QTimerEvent*); 79 | public: 80 | int timer_id; 81 | int sound_timer_id; 82 | }; 83 | 84 | class QMyMainWindow: public QWidget 85 | { 86 | Q_OBJECT 87 | public: 88 | QMyMainWindow(); 89 | ~QMyMainWindow(); 90 | void paintEvent(QPaintEvent*); 91 | void mouseMoveEvent(QMouseEvent*); 92 | void mousePressEvent(QMouseEvent*); 93 | void mouseReleaseEvent(QMouseEvent*); 94 | void wheelEvent(QWheelEvent*); 95 | void closeEvent(QCloseEvent*); 96 | void timerEvent(QTimerEvent*); 97 | public slots: 98 | void dataReceived(); 99 | void soundSend(); 100 | void MemuClicked(int); 101 | public: 102 | QPopupMenu* PopupMenu; 103 | int timer_id; 104 | int mx; 105 | int my; 106 | }; 107 | 108 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/uiports/qtreadme.txt: -------------------------------------------------------------------------------- 1 | This is the Qt/X11 ui port 2 | qt should be installed in /usr/local/qt 3 | you may need to have LD_LIBRARY_PATH defined to run qtrdesktop 4 | tested with versions 2.3.2, 3.1.2 5 | 6 | makefile_qt can be edited to change file localtions 7 | run make -f makefile_qt in this directory to compile it 8 | 9 | qtreadme.txt - notes, this file 10 | makefile_qt - makefile 11 | qtwin.cpp - ui lib 12 | qtwin.h - header 13 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/uiports/qtwin.h: -------------------------------------------------------------------------------- 1 | 2 | #include 3 | #include 4 | 5 | class QMyScrollView: public QScrollView 6 | { 7 | Q_OBJECT 8 | public: 9 | void keyPressEvent(QKeyEvent*); 10 | void keyReleaseEvent(QKeyEvent*); 11 | }; 12 | 13 | class QMyMainWindow: public QWidget 14 | { 15 | Q_OBJECT 16 | public: 17 | QMyMainWindow(); 18 | ~QMyMainWindow(); 19 | void paintEvent(QPaintEvent*); 20 | void mouseMoveEvent(QMouseEvent*); 21 | void mousePressEvent(QMouseEvent*); 22 | void mouseReleaseEvent(QMouseEvent*); 23 | void wheelEvent(QWheelEvent*); 24 | void keyPressEvent(QKeyEvent*); 25 | void keyReleaseEvent(QKeyEvent*); 26 | void closeEvent(QCloseEvent*); 27 | bool event(QEvent*); 28 | public slots: 29 | void dataReceived(); 30 | void soundSend(); 31 | }; 32 | 33 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/uiports/readme.txt: -------------------------------------------------------------------------------- 1 | This directory contains information on uiports. 2 | uiports are different graphics libraries using the same core 3 | rdesktop files. 4 | 5 | This directory is provided to include information and examples 6 | on how to do a new uiport. Not all ports of rdesktop can 7 | be included. 8 | 9 | see xxxreadme.txt for info on a blank empty uiport 10 | 11 | see qtreadme.txt for info on the Qt/X11 uiport 12 | 13 | see qtereadme.txt for info on the Qt embeded uiport 14 | 15 | see svgareadme.txt for info on the svga uiport 16 | 17 | see nanoxreadme.txt for info on the nanox uiport 18 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/uiports/svgareadme.txt: -------------------------------------------------------------------------------- 1 | This is the svga ui port 2 | send any fixes or improvments to me Jay Sorg(j@american-data.com) 3 | svgalib should be installed 4 | tested with versions 1.4.3, 1.9.x 5 | 6 | thanks to 7 | Donald Gordon - original work 8 | Peter Nikolow - misc fixes 9 | 10 | run make -f makefile_svga to compile it 11 | 12 | svgareadme.txt - notes, this file 13 | makefile_svga - makefile 14 | svgawin.c - ui lib 15 | 16 | svgalib has some support for acceleration but most drivers 17 | do not support it. I hope they fix this. 18 | The ones that do are Cirus Logic and ATI Mach 32 cards. 19 | If running on really slow hardware(486), use one of these cards, 20 | it improves performance alot. 21 | 22 | run ./svgardesktop with no parameters to see a list of 23 | commnad line options 24 | 25 | You will need to modify the libvga.config file most likely. 26 | Its in /etc/vga. 27 | Here is what mine looks like. 28 | BOF 29 | mouse imps2 30 | mouse_fake_kbd_event 112 113 31 | mouse_accel_mult 1.5 32 | mouse_accel_type normal 33 | HorizSync 31.5 56.0 34 | VertRefresh 50 90 35 | nosigint 36 | EOF 37 | The mouse_fake_kbd_event line makes the wheel mouse work. 38 | 39 | Jay 40 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/utils.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/utils.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/vnc/vnc.h: -------------------------------------------------------------------------------- 1 | #ifndef VNC_H 2 | #define VNC_H 3 | 4 | #define BOOL rfb_BOOL 5 | #include 6 | #undef BOOL 7 | 8 | typedef unsigned int vncPixel; 9 | 10 | typedef struct 11 | { 12 | uint16_t w, h; 13 | uint16_t linew; 14 | rfbPixelFormat *format; 15 | char *data; 16 | BOOL owner; 17 | } 18 | vncBuffer; 19 | 20 | extern int vncPreparedClientSocket; 21 | extern int vncPreparedServerSocket; 22 | 23 | /* - Buffer management */ 24 | extern vncBuffer *vncNewBuffer(int w, int h, int depth); 25 | extern vncBuffer *vncDupBuffer(vncBuffer * b); 26 | extern void vncDeleteBuffer(vncBuffer * b); 27 | 28 | /* - Colourmaps */ 29 | typedef struct 30 | { 31 | uint8_t r, g, b; 32 | } 33 | vncColour; 34 | 35 | extern void vncSetColourMap(rfbScreenInfoPtr s, rfbColourMap * m); 36 | extern rfbColourMap *vncNewColourMap(rfbScreenInfoPtr s, int n); 37 | extern void vncSetColourMapEntry(rfbColourMap * m, int i, vncPixel r, vncPixel g, vncPixel b); 38 | extern void vncDeleteColourMap(rfbColourMap * m); 39 | 40 | /* - Simple pixel manipulation */ 41 | extern vncPixel vncGetPixel(vncBuffer * b, int x, int y); 42 | extern void vncSetPixel(vncBuffer * b, int x, int y, vncPixel c); 43 | 44 | /* - Drawing primitives */ 45 | extern void vncSetRect(rfbScreenInfoPtr s, int x, int y, int w, int h, vncPixel c); 46 | extern void vncCopyBlit(rfbScreenInfoPtr s, int x, int y, int w, int h, int srcx, int srcy); 47 | extern void vncCopyBlitFrom(rfbScreenInfoPtr s, int x, int y, int w, int h, 48 | vncBuffer * b, int srcx, int srcy); 49 | extern void vncTransBlitFrom(rfbScreenInfoPtr s, int x, int y, int w, int h, 50 | vncBuffer * b, int srcx, int srcy, int bg); 51 | extern void vncXorBlitFrom(rfbScreenInfoPtr s, int x, int y, int w, int h, 52 | vncBuffer * b, int srcx, int srcy); 53 | extern void vncAndBlitFrom(rfbScreenInfoPtr s, int x, int y, int w, int h, 54 | vncBuffer * b, int srcx, int srcy); 55 | extern vncBuffer *vncGetRect(rfbScreenInfoPtr s, int x, int y, int w, int h); 56 | 57 | // - Low level VNC update primitives upon which the rest are based 58 | extern void vncQueueCopyRect(rfbScreenInfoPtr s, int x, int y, int w, int h, int src_x, int src_y); 59 | extern void vncQueueUpdate(rfbScreenInfoPtr s, int x, int y, int w, int h); 60 | 61 | /* cursor */ 62 | extern rfbCursorPtr vncNewCursor(vncBuffer * mask, vncBuffer * pointer, int hotx, int hoty); 63 | extern void vncSetCursor(rfbScreenInfoPtr s, rfbCursorPtr c); 64 | 65 | int vncListenAtTcpAddr(unsigned short port); 66 | void vncPrintStats(); 67 | 68 | #endif 69 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/vnc/x11stubs.h: -------------------------------------------------------------------------------- 1 | #ifndef NOXKEYMAP_H 2 | #define NOXKEYMAP_H 3 | 4 | /* Fake a few X11 calls */ 5 | 6 | #define XK_MISCELLANY 7 | #include 8 | #include 9 | 10 | #define NoSymbol 0L 11 | #define ShiftMask (1<<0) 12 | #define LockMask (1<<1) 13 | #define ControlMask (1<<2) 14 | #define Mod1Mask (1<<3) 15 | #define Mod2Mask (1<<4) 16 | #define Mod3Mask (1<<5) 17 | #define Mod4Mask (1<<6) 18 | #define Mod5Mask (1<<7) 19 | #define Button1 1 20 | #define Button2 2 21 | #define Button3 3 22 | #define Button4 4 23 | #define Button5 5 24 | 25 | typedef int Display; 26 | typedef int Window; 27 | typedef rfbKeySym KeySym; 28 | 29 | KeySym XStringToKeysym(const char *str); 30 | const char *XKeysymToString(KeySym keysym); 31 | void XDisplayKeycodes(Display * display, int *min_keycode, int *max_keycode); 32 | 33 | #endif 34 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/xclip.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/xclip.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/xkeymap.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/xkeymap.o -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/xproto.h: -------------------------------------------------------------------------------- 1 | void xclip_handle_SelectionNotify(XSelectionEvent * event); 2 | void xclip_handle_SelectionRequest(XSelectionRequestEvent * xevent); 3 | void xclip_handle_SelectionClear(void); 4 | void xclip_handle_PropertyNotify(XPropertyEvent * xev); 5 | int ewmh_get_window_state(Window w); 6 | int ewmh_change_state(Window wnd, int state); 7 | int ewmh_move_to_desktop(Window wnd, unsigned int desktop); 8 | int ewmh_get_window_desktop(Window wnd); 9 | void ewmh_set_wm_name(Window wnd, const char *title); 10 | int ewmh_set_window_popup(Window wnd); 11 | int ewmh_set_window_modal(Window wnd); 12 | void ewmh_set_icon(Window wnd, int width, int height, const char *rgba_data); 13 | void ewmh_del_icon(Window wnd, int width, int height); 14 | int ewmh_set_window_above(Window wnd); 15 | RD_BOOL ewmh_is_window_above(Window w); 16 | void set_keypress_keysym(unsigned int keycode, KeySym keysym); 17 | KeySym reset_keypress_keysym(unsigned int keycode, KeySym keysym); 18 | -------------------------------------------------------------------------------- /sources/rdesktop-1.8.3/xwin.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdesktop-1.8.3/xwin.o -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/entries: -------------------------------------------------------------------------------- 1 | 12 2 | -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/format: -------------------------------------------------------------------------------- 1 | 12 2 | -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/pristine/07/075ce15dd1964b2eec834d4d3bc710b882ed711b.svn-base: -------------------------------------------------------------------------------- 1 | CC=gcc 2 | CFLAGS=-Wall -g 3 | # -DDEBUG 4 | OBJS= iobuf.o print.o msgparser.o nethelper.o netaddr.o 5 | 6 | all: $(OBJS) 7 | 8 | %.o: %.c 9 | $(CC) $(CFLAGS) -o $@ -c $< 10 | 11 | clean: 12 | rm -f $(OBJS) $(BIN) 13 | -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/pristine/0c/0c987a7e555f2ea3c0065ef4a5060ae083adb6e6.svn-base: -------------------------------------------------------------------------------- 1 | all: client 2 | 3 | client: client/rdp2tcp 4 | client/rdp2tcp: 5 | make -C client 6 | 7 | server-mingw32: server/rdp2tcp.exe 8 | server/rdp2tcp.exe: 9 | make -C server -f Makefile.mingw32 10 | 11 | clean: 12 | make -C client clean 13 | make -C server -f Makefile.mingw32 clean 14 | make -C tools clean 15 | -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/pristine/19/193087b05a9b4814eb244e15235260fa496c1fa8.svn-base: -------------------------------------------------------------------------------- 1 | 2 | Q: I started rdesktop without the "-r addin:rdp2tcp:" argument, ... 3 | A: It is not possible to start the client on-demand if the rdesktop 4 | has not been started with the correct command line. 5 | This feature will not be implemented since it would require extra 6 | patches for rdesktop. 7 | 8 | Q: I want to use rdp2tcp without rdesktop because ... 9 | A: It is not possible to use the client without rdesktop already running. 10 | rdp2tcp is a rdesktop virtual channel helper, not a RDP implementation. 11 | 12 | Q: How to check if rdesktop is compiled with OOP patch ? 13 | A: Run "rdesktop 2>&1 | grep addin". If you see no result, 14 | rdesktop is not patched. 15 | 16 | Q: rdesktop says "Error executing child: No such file or directory" 17 | A: The rdp2tcp client path provided with the "-r addin:rdp2tcp:" 18 | argument is not correct. 19 | 20 | Q: I get "error: cannot attach RDP stream" when i start rdp2tcp server 21 | A: rdp2tcp.exe was not started within a Terminal Server session. 22 | 23 | Q: I forwarded remote port 445 on my Linux host but smbclient fails 24 | when trying to connect to local port XYZ. 25 | A: This is a smbclient bug, not a rdp2tcp bug! smbclient selects its 26 | protocol (netbios or SMB) based on the port number. It will try 27 | to use netbios protocol whenever the destination port is not 445. 28 | Therefore you have 3 choices: 29 | - patch smbclient :) 30 | - wrap the smbclient with a SOCKS5 client (tsocks, proxychains, ...) 31 | - starts another tunneling tools (ex: socat) locally to forward 32 | port 445 to port XYZ (must be done as root since 445 < 1024). 33 | 34 | Q: the input generated by rdpupload looks like garbage 35 | A: your keyboard layout is different than the keyboard layout of the TS. 36 | restart rdesktop with "-g " 37 | 38 | Q: rdpupload is slow ... 39 | A: It is not expected to run fast ... 40 | "debug" encoding generates smaller payload than "vb" encoding. 41 | try to play with "-s" option (ex: -s 0.5). 42 | compress/pack the file you are trying to upload (ex: upx) 43 | 44 | Q: Where can I find a precompiled rdp2tcp.exe server binary ? 45 | A: Precompiled binaries are not provided ... Use mingw32. 46 | 47 | -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/pristine/2f/2fbe0d56de6b4b6db96883bb3f6f34dab6f934a4.svn-base: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | valgrind --tool=memcheck \ 3 | -v --log-file=/tmp/rdp2tcp.log \ 4 | --leak-check=full --show-reachable=yes \ 5 | --leak-resolution=med --track-origins=yes \ 6 | ./rdp2tcp 7 | -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/pristine/33/33ea12ba6a104346e5f224be5a5d00fec40adf7c.svn-base: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of rdp2tcp 3 | * 4 | * Copyright (C) 2010-2011, Nicolas Collignon 5 | * 6 | * This program is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program. If not, see . 18 | */ 19 | #ifndef __R2TMSG_PARSER_H__ 20 | #define __R2TMSG_PARSER_H__ 21 | 22 | #include "rdp2tcp.h" 23 | 24 | typedef int (*cmdhandler_t)(const r2tmsg_t *, unsigned int); 25 | 26 | int commands_parse(iobuf_t *); 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/pristine/3f/3fa4d3a825d370fd9a433dd7ebe5af5ca1348109.svn-base: -------------------------------------------------------------------------------- 1 | BIN=rdp2tcp 2 | CC=gcc 3 | CFLAGS=-Wall -g -I../common 4 | #CFLAGS=-Wall -g -I../common -DDEBUG 5 | LDFLAGS= 6 | OBJS=main.o netsock.o tunnel.o channel.o commands.o controller.o socks5.o \ 7 | ../common/nethelper.o \ 8 | ../common/netaddr.o \ 9 | ../common/iobuf.o \ 10 | ../common/print.o \ 11 | ../common/msgparser.o 12 | 13 | all: clean_common $(BIN) 14 | 15 | clean_common: 16 | $(MAKE) -C ../common clean 17 | 18 | $(BIN): $(OBJS) 19 | $(CC) -o $@ $(OBJS) $(LDFLAGS) 20 | 21 | %.o: %.c 22 | $(CC) $(CFLAGS) -o $@ -c $< 23 | 24 | clean: 25 | rm -f $(OBJS) $(BIN) 26 | -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/pristine/45/454f618dc096d42e09e70a1e22771859c7c3f5ae.svn-base: -------------------------------------------------------------------------------- 1 | /** 2 | * @file errors.c 3 | * windows error printing 4 | */ 5 | /* 6 | * This file is part of rdp2tcp 7 | * 8 | * Copyright (C) 2010-2011, Nicolas Collignon 9 | * 10 | * This program is free software: you can redistribute it and/or modify 11 | * it under the terms of the GNU General Public License as published by 12 | * the Free Software Foundation, either version 3 of the License, or 13 | * (at your option) any later version. 14 | * 15 | * This program is distributed in the hope that it will be useful, 16 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 | * GNU General Public License for more details. 19 | * 20 | * You should have received a copy of the GNU General Public License 21 | * along with this program. If not, see . 22 | */ 23 | #include "r2twin.h" 24 | 25 | #include 26 | #include 27 | 28 | 29 | static int do_error(const char *func, DWORD err) 30 | { 31 | char *buffer; 32 | 33 | buffer = NULL; 34 | if (FormatMessageA(FORMAT_MESSAGE_FROM_SYSTEM 35 | |FORMAT_MESSAGE_ALLOCATE_BUFFER 36 | |FORMAT_MESSAGE_MAX_WIDTH_MASK 37 | |FORMAT_MESSAGE_IGNORE_INSERTS, 38 | NULL, err, 39 | MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), 40 | (LPSTR)&buffer, 0, NULL) > 0) { 41 | if (buffer) { 42 | error("%s (%lu: %s)\n", func, err, buffer); 43 | LocalFree(buffer); 44 | return -1; 45 | } 46 | } 47 | 48 | return error("%s (%lu)\n", func, err); 49 | } 50 | 51 | /** print winsock-level error */ 52 | int wsaerror(const char *func) 53 | { 54 | return do_error(func, WSAGetLastError()); 55 | } 56 | 57 | /** print win32-level error */ 58 | int syserror(const char *func) 59 | { 60 | return do_error(func, GetLastError()); 61 | } 62 | 63 | -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/pristine/5c/5cb913881bd7e36c82d94bb2bef0a2c4ea87e4ff.svn-base: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of rdp2tcp 3 | * 4 | * Copyright (C) 2010-2011, Nicolas Collignon 5 | * 6 | * This program is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program. If not, see . 18 | */ 19 | #ifndef __PRINT_H__ 20 | #define __PRINT_H__ 21 | 22 | #include 23 | #include "debug.h" 24 | 25 | void print_init(void); 26 | 27 | void info(int, const char *, ...); 28 | int warn(const char *, ...); 29 | int error(const char *, ...); 30 | 31 | void print_xfer(const char *, char, unsigned int); 32 | 33 | #ifdef DEBUG 34 | void fprint_hex(void *, unsigned int, FILE *); 35 | #endif 36 | 37 | #endif 38 | // vim: ts=3 sw=3 39 | -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/pristine/85/8552107e53df46ec368b920979703bcd0deaa080.svn-base: -------------------------------------------------------------------------------- 1 | BIN=rdp2tcp.exe 2 | CC=i586-mingw32msvc-gcc 3 | CFLAGS=-Wall -g \ 4 | -D_WIN32_WINNT=0x0501 \ 5 | -I../common 6 | 7 | # -D_WIN32_WINNT=0x0501 8 | # -D_WIN32_WINNT=0x0501 -DDEBUG 9 | 10 | LDFLAGS=-lwtsapi32 -lws2_32 11 | OBJS= ../common/iobuf.o \ 12 | ../common/print.o \ 13 | ../common/msgparser.o \ 14 | ../common/nethelper.o \ 15 | ../common/netaddr.o \ 16 | errors.o aio.o events.o \ 17 | tunnel.o channel.o process.o commands.o main.o 18 | 19 | all: clean_common $(BIN) 20 | 21 | clean_common: 22 | $(MAKE) -C ../common clean 23 | 24 | $(BIN): $(OBJS) 25 | $(CC) -o $@ $(OBJS) $(LDFLAGS) 26 | 27 | %.o: %.c 28 | $(CC) $(CFLAGS) -o $@ -c $< 29 | 30 | clean: 31 | rm -f $(OBJS) $(BIN) 32 | -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/pristine/9c/9c7e73ff175592f0802d0f40853ca12caa627916.svn-base: -------------------------------------------------------------------------------- 1 | /** 2 | * @file msgparser.c 3 | * rdp2tcp commands parser 4 | */ 5 | /* 6 | * This file is part of rdp2tcp 7 | * 8 | * Copyright (C) 2010-2011, Nicolas Collignon 9 | * 10 | * This program is free software: you can redistribute it and/or modify 11 | * it under the terms of the GNU General Public License as published by 12 | * the Free Software Foundation, either version 3 of the License, or 13 | * (at your option) any later version. 14 | * 15 | * This program is distributed in the hope that it will be useful, 16 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 | * GNU General Public License for more details. 19 | * 20 | * You should have received a copy of the GNU General Public License 21 | * along with this program. If not, see . 22 | */ 23 | #include "print.h" 24 | #include "iobuf.h" 25 | #include "msgparser.h" 26 | 27 | #include 28 | #ifndef _WIN32 29 | #include 30 | #else 31 | #include 32 | #endif 33 | 34 | extern int debug_level; 35 | extern const cmdhandler_t cmd_handlers[]; 36 | 37 | /** 38 | * parse rdp2tcp commands and call specific handlers 39 | * @param[in] ibuf input buffer 40 | * @return 0 on success, -1 on error 41 | */ 42 | int commands_parse(iobuf_t *ibuf) 43 | { 44 | unsigned char cmd, *data; 45 | unsigned int off, msg_len, avail; 46 | static const unsigned char r2t_min_size[R2TCMD_MAX] = { 47 | 3, // R2TCMD_CONN 48 | 2, // R2TCMD_CLOSE 49 | 2, // R2TCMD_DATA 50 | 1, // R2TCMD_PING 51 | 3, // R2TCMD_BIND 52 | 2 // R2TCMD_RCONN 53 | }; 54 | 55 | assert(valid_iobuf(ibuf) && (iobuf_datalen(ibuf)>0)); 56 | 57 | #ifdef DEBUG 58 | if (debug_level > 0) iobuf_dump(ibuf); 59 | #endif 60 | 61 | off = 0; 62 | data = iobuf_dataptr(ibuf); 63 | avail = iobuf_datalen(ibuf); 64 | debug(1, "commands_parse(avail=%u)", avail); 65 | 66 | // for each command 67 | while (off + 5 < avail) { 68 | 69 | msg_len = ntohl(*(unsigned int*)(data+off)); 70 | if (!msg_len || (msg_len > RDP2TCP_MAX_MSGLEN)) 71 | return error("invalid channel msg size 0x%08x", msg_len); 72 | 73 | if (off+msg_len+4 > avail) 74 | break; 75 | 76 | off += 4; 77 | 78 | cmd = data[off]; 79 | if (cmd >= R2TCMD_MAX) 80 | return error("invalid command id 0x%02x", cmd); 81 | 82 | if (msg_len < (unsigned int)r2t_min_size[cmd]) 83 | return error("command 0x%02x too short 0x%08x < 0x%08x", 84 | cmd, msg_len, (unsigned int)r2t_min_size[cmd]); 85 | 86 | if (!cmd_handlers[cmd]) 87 | return error("command 0x%02x not supported", cmd); 88 | 89 | // call specific command handler 90 | if (cmd_handlers[cmd]((const r2tmsg_t*)(data+off), msg_len)) 91 | return -1; 92 | 93 | off += msg_len; 94 | } 95 | 96 | if (off > 0) 97 | iobuf_consume(ibuf, off); 98 | 99 | return 0; 100 | } 101 | 102 | // R2TERR_xxx error strings 103 | const char *r2t_errors[R2TERR_MAX] = { 104 | "", 105 | "generic error", 106 | "bad message", 107 | "connection refused", 108 | "forbidden", 109 | "address not available", 110 | "failed to resolve hostname", 111 | "executable not found" 112 | }; 113 | 114 | -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/pristine/aa/aa68de173cc8d885d7718fc5e61503b777359cd5.svn-base: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of rdp2tcp 3 | * 4 | * Copyright (C) 2010-2011, Nicolas Collignon 5 | * 6 | * This program is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program. If not, see . 18 | */ 19 | #ifndef __MPROXY_IOBUF_H__ 20 | #define __MPROXY_IOBUF_H__ 21 | 22 | #include "debug.h" 23 | #include 24 | 25 | #ifndef IOBUF_MIN_SIZE 26 | #define IOBUF_MIN_SIZE 2048 27 | #endif 28 | 29 | /** I/O buffer */ 30 | typedef struct iobuf { 31 | unsigned int size; /**< used size */ 32 | unsigned int total; /**< allocated size */ 33 | char *data; /**< data buffer */ 34 | #ifdef DEBUG 35 | const char *name; 36 | char type; 37 | #endif 38 | } iobuf_t; 39 | 40 | #ifdef DEBUG 41 | #define valid_iobuf(x) \ 42 | ((x) && (((x)->size <= (x)->total) && ((x)->data || !((x)->total))) \ 43 | && (x)->name && (((x)->type == 'r') || (x)->type == 'w')) 44 | void iobuf_dump(iobuf_t *); 45 | void __iobuf_init(iobuf_t *, char, const char *); 46 | void __iobuf_init2(iobuf_t *, iobuf_t *, const char *); 47 | #define iobuf_init(buf, type, name) __iobuf_init(buf, type, name) 48 | #define iobuf_init2(buf1, buf2, name) __iobuf_init2(buf1, buf2, name) 49 | 50 | #else 51 | #define valid_iobuf(x) \ 52 | ((x) && (((x)->size <= (x)->total) && ((x)->data || !((x)->total)))) 53 | void __iobuf_init(iobuf_t *); 54 | void __iobuf_init2(iobuf_t *, iobuf_t *); 55 | #define iobuf_init(buf, type, name) __iobuf_init(buf) 56 | #define iobuf_init2(buf1, buf2, name) __iobuf_init2(buf1, buf2) 57 | #endif 58 | 59 | #define assert_iobuf(x) assert(valid_iobuf(x)) 60 | 61 | void iobuf_kill(iobuf_t *); 62 | void iobuf_kill2(iobuf_t *, iobuf_t *); 63 | 64 | #if defined(_WIN32) && !defined(__GNUC__) 65 | #define inline __inline 66 | #endif 67 | 68 | static inline unsigned int iobuf_datalen(iobuf_t *buf) 69 | { 70 | return buf->size; 71 | } 72 | 73 | static inline void *iobuf_dataptr(iobuf_t *buf) 74 | { 75 | return buf->size ? buf->data : 0; 76 | } 77 | 78 | static inline void *iobuf_allocptr(iobuf_t *buf) 79 | { 80 | return ((char *)buf->data) + buf->size; 81 | } 82 | 83 | void iobuf_consume(iobuf_t *, unsigned int); 84 | 85 | void *iobuf_reserve(iobuf_t *, unsigned int, unsigned int *); 86 | void iobuf_commit(iobuf_t *, unsigned int); 87 | void *iobuf_append(iobuf_t *, const void *, unsigned int); 88 | //void iobuf_xfer(iobuf_t *, iobuf_t *); 89 | 90 | #endif 91 | // vim: ts=3 sw=3 92 | -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/pristine/ab/abdfa247345bbfc7a035a6781dfe83f5a02a1517.svn-base: -------------------------------------------------------------------------------- 1 | /** 2 | * @file socks5-proto.h 3 | * SOCKS5 protocol specifications 4 | */ 5 | /* 6 | * This file is part of rdp2tcp 7 | * 8 | * Copyright (C) 2010-2011, Nicolas Collignon 9 | * 10 | * This program is free software: you can redistribute it and/or modify 11 | * it under the terms of the GNU General Public License as published by 12 | * the Free Software Foundation, either version 3 of the License, or 13 | * (at your option) any later version. 14 | * 15 | * This program is distributed in the hope that it will be useful, 16 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 | * GNU General Public License for more details. 19 | * 20 | * You should have received a copy of the GNU General Public License 21 | * along with this program. If not, see . 22 | */ 23 | #ifndef __SOCKS5_PROTO_H__ 24 | #define __SOCKS5_PROTO_H__ 25 | 26 | // http://tools.ietf.org/html/rfc1928 27 | 28 | #define SOCKS5_VERSION 0x05 29 | 30 | #define SOCKS5_ATYPE_IPV4 0x01 31 | #define SOCKS5_ATYPE_FQDN 0x03 32 | #define SOCKS5_ATYPE_IPV6 0x04 33 | 34 | #define SOCKS5_NOAUTH 0x00 35 | 36 | #define SOCKS5_CONNECT 0x01 37 | #define SOCKS5_BIND 0x02 38 | #define SOCKS5_UDPASSOC 0x03 39 | 40 | #define SOCKS5_SUCCESS 0x00 41 | #define SOCKS5_ERROR 0x01 42 | #define SOCKS5_FORBIDDEN 0x02 43 | #define SOCKS5_NETUNREACH 0x03 44 | #define SOCKS5_PORTUNREACH 0x04 45 | #define SOCKS5_CONNREFUSED 0x05 46 | #define SOCKS5_TTLEXPIRED 0x06 47 | #define SOCKS5_UNKCOMMAND 0x07 48 | #define SOCKS5_UNKADDRTYPE 0x08 49 | 50 | #endif 51 | -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/pristine/c4/c400540e571755fd249f2bac0ca0c7b6ebe93034.svn-base: -------------------------------------------------------------------------------- 1 | /** 2 | * @file compiler.h 3 | * Microsoft Visual Studio compiler support 4 | */ 5 | /* 6 | * This file is part of rdp2tcp 7 | * 8 | * Copyright (C) 2010-2011, Nicolas Collignon 9 | * 10 | * This program is free software: you can redistribute it and/or modify 11 | * it under the terms of the GNU General Public License as published by 12 | * the Free Software Foundation, either version 3 of the License, or 13 | * (at your option) any later version. 14 | * 15 | * This program is distributed in the hope that it will be useful, 16 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 | * GNU General Public License for more details. 19 | * 20 | * You should have received a copy of the GNU General Public License 21 | * along with this program. If not, see . 22 | */ 23 | #ifndef __COMPILER_H__ 24 | #define __COMPILER_H__ 25 | 26 | #ifdef __GNUC__ 27 | // gcc 28 | #define PACK(decl) decl __attribute__((__packed__)) 29 | #else 30 | #define PACK(decl) __pragma(pack(push,1)) decl __pragma(pack(pop)) 31 | // Visual Studio 32 | #if defined(_DEBUG) && !defined(DEBUG) 33 | #define DEBUG 34 | #endif 35 | #define ssize_t int 36 | #define inline __inline 37 | #define snprintf _snprintf 38 | #define typeof(x) void * 39 | #endif 40 | 41 | #endif 42 | -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/pristine/c8/c8fab9213804fa6a4da2a120999e5530d3fd0baa.svn-base: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of rdp2tcp 3 | * 4 | * Copyright (C) 2010-2011, Nicolas Collignon 5 | * 6 | * This program is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program. If not, see . 18 | */ 19 | #ifndef __NETHELPER_H__ 20 | #define __NETHELPER_H__ 21 | 22 | #include "compiler.h" 23 | #include "iobuf.h" 24 | 25 | #define NETERR_RESOLVE -1 26 | #define NETERR_NOADDR -2 27 | #define NETERR_SOCKET -3 28 | #define NETERR_BIND -4 29 | #define NETERR_LISTEN -5 30 | #define NETERR_CONNECT -6 31 | #define NETERR_RECV -7 32 | #define NETERR_SEND -8 33 | 34 | #define NETERR_CLOSED -1000 35 | 36 | #ifndef _WIN32 37 | #include 38 | #include 39 | #include 40 | #include 41 | 42 | typedef int sock_t; 43 | #define net_init() ((void)0) 44 | #define net_exit() ((void)0) 45 | #define net_close(x) close(x) 46 | #define net_pending() ((errno == EINPROGRESS) || (errno == EAGAIN)) 47 | #define valid_sock(s) ((s) && (*(s) != -1)) 48 | 49 | #else 50 | #include 51 | #include 52 | 53 | typedef struct { 54 | SOCKET fd; 55 | WSAEVENT evt; 56 | } sock_t; 57 | 58 | void net_init(void); 59 | #define net_exit() WSACleanup() 60 | void net_close(sock_t *); 61 | #define net_pending() (WSAGetLastError() == WSAEWOULDBLOCK) 62 | #define valid_sock(s) ((s) && ((s)->fd != INVALID_SOCKET) \ 63 | && ((s)->evt != WSA_INVALID_EVENT)) 64 | 65 | int net_update_watch(sock_t *, iobuf_t *); 66 | #endif 67 | 68 | #ifndef NETBUF_MAX_SIZE 69 | #define NETBUF_MAX_SIZE (1024*16) 70 | #endif 71 | 72 | /** peer address */ 73 | typedef union { 74 | struct sockaddr_in ip4; /**< IPv4 address */ 75 | struct sockaddr_in6 ip6; /**< IPv6 address */ 76 | unsigned int pid; /**< process identifier */ 77 | } netaddr_t; 78 | 79 | #define netaddr_af(na) (na)->ip4.sin_family 80 | void netaddr_set(int, const void *, unsigned short, netaddr_t *); 81 | 82 | int netaddr_cmp(const netaddr_t *, const netaddr_t *); 83 | #define NETADDRSTR_MAXSIZE (1+INET6_ADDRSTRLEN+1+1+5+1) 84 | const char *netaddr_print(const netaddr_t *, char *); 85 | 86 | const char *net_error(int, int); 87 | 88 | int net_resolve(int, const char *, unsigned short, netaddr_t *, int *); 89 | int net_server(int, const char *, unsigned short, sock_t *, netaddr_t *,int*); 90 | int net_client(int, const char *, unsigned short, sock_t *, netaddr_t *,int*); 91 | int net_accept(sock_t *, sock_t *, netaddr_t *); 92 | int net_read(sock_t*, iobuf_t*, unsigned int, unsigned int*, unsigned int*); 93 | int net_write(sock_t *, iobuf_t *, const void *, unsigned int, unsigned int *); 94 | 95 | #endif 96 | -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/pristine/cb/cb5b06fcf6542a4742ca14556d7247ee0b7844aa.svn-base: -------------------------------------------------------------------------------- 1 | CC=i586-mingw32msvc-gcc 2 | CFLAGS=-Wall -g \ 3 | -D_WIN32_WINNT=0x0501 -DDEBUG 4 | OBJS= iobuf.o print.o msgparser.o nethelper.o netaddr.o 5 | 6 | all: $(OBJS) 7 | 8 | %.o: %.c 9 | $(CC) $(CFLAGS) -o $@ -c $< 10 | 11 | clean: 12 | rm -f $(OBJS) $(BIN) 13 | -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/pristine/ce/ceb15baac09d7752901416ac798d5c87673f8ccf.svn-base: -------------------------------------------------------------------------------- 1 | - tunnel id on 16 bits ? 2 | - support fixed address family 3 | FIXME: 64 bits ? 4 | -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/pristine/d0/d0129f029d077b234b490ab8110c163181490de4.svn-base: -------------------------------------------------------------------------------- 1 | 2 | all: 3 | 4 | 5 | clean: 6 | rm -f *.pyc 7 | -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/pristine/ea/ead6b46ce23c150b7f69ac54f0501c83ca80f2ee.svn-base: -------------------------------------------------------------------------------- 1 | 2 | -[ prerequisites ]----------------------------- 3 | 4 | - rdesktop dependencies 5 | - a compiler for the rdesktop host 6 | - a compiler for Windows 7 | 8 | -[ steps ]------------------------------------- 9 | 10 | 1) get rdesktop source code 11 | http://www.rdesktop.org/#download 12 | 13 | 2) get rdesktop out-of-process virtual channel patch (oop.patch) 14 | http://sf.net/tracker/index.php?func=detail&aid=1472969&group_id=24366&atid=381349 15 | 16 | 3) apply rdesktop patch 17 | 18 | 4) compile & install patched rdesktop 19 | 20 | 5) compile client with "make client" 21 | 22 | 6) compile server 23 | 24 | case 1: cross-compilation from UNIX, use mingw32 25 | you may have to fix the compiler path in server/Makefile.mingw32 26 | run "make server-mingw32" 27 | 28 | case 2: compilation from Windows, use whatever you want .. 29 | ex: "nmake /nologo /f Makefile.nmake" 30 | 31 | -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/pristine/ed/ed2792a66ed6b4e6066b8087fd50a474ed7370b0.svn-base: -------------------------------------------------------------------------------- 1 | Version 0.1 public release (OSSIR) 2 | + SOCKS5 minimal support 3 | + doxygenification 4 | + stricter controller protocol 5 | + added X11 scripting tool (rdpupload) 6 | + added rdp2tcp test script (test-client) 7 | + dozen of bug fixes 8 | 9 | Version 0.0.3 10 | + tcp reverse connect 11 | + process stdin/stdout forwarding 12 | + IPv6 support 13 | + dozen of bug fixes 14 | 15 | Version 0.0.2 almost reliable tunneling ... 16 | + added controller listener to add tunnel on-demand 17 | 18 | Version 0.0.1 SSTIC rump nuked edition :) 19 | -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/pristine/ee/eea93db0b24baabe92ebbfc308fe268c02e81987.svn-base: -------------------------------------------------------------------------------- 1 | Nicolas Collignon 2 | -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/pristine/fb/fb58813530d621481596b11d37a5367f99da1d6f.svn-base: -------------------------------------------------------------------------------- 1 | BIN=rdp2tcp.exe 2 | CFLAGS=/nologo /D_CRT_SECURE_NO_WARNINGS /W3 /I..\common 3 | #CFLAGS=/nologo /DEBUG /D_CRT_SECURE_NO_WARNINGS /W3 /I..\common 4 | LDFLAGS=/nologo 5 | #LDFLAGS=/nologo /DEBUG 6 | 7 | LIBS= wtsapi32.lib ws2_32.lib 8 | OBJS= ..\common\iobuf.obj \ 9 | ..\common\print.obj \ 10 | ..\common\msgparser.obj \ 11 | ..\common\nethelper.obj \ 12 | ..\common\netaddr.obj \ 13 | errors.obj aio.obj events.obj \ 14 | tunnel.obj channel.obj process.obj commands.obj main.obj 15 | 16 | all: $(BIN) 17 | 18 | $(BIN): $(OBJS) 19 | link /out:$(BIN) $(LDFLAGS) *.obj $(LIBS) 20 | 21 | clean: 22 | erase $(OBJS) $(BIN) 23 | 24 | -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/pristine/fe/fe3562e0737182b6ec95af550bf7a3f81ee58165.svn-base: -------------------------------------------------------------------------------- 1 | /** 2 | * @file debug.h 3 | * debug/trace support 4 | */ 5 | /* 6 | * This file is part of rdp2tcp 7 | * 8 | * Copyright (C) 2010-2011, Nicolas Collignon 9 | * 10 | * This program is free software: you can redistribute it and/or modify 11 | * it under the terms of the GNU General Public License as published by 12 | * the Free Software Foundation, either version 3 of the License, or 13 | * (at your option) any later version. 14 | * 15 | * This program is distributed in the hope that it will be useful, 16 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 | * GNU General Public License for more details. 19 | * 20 | * You should have received a copy of the GNU General Public License 21 | * along with this program. If not, see . 22 | */ 23 | #ifndef __DEBUG_H__ 24 | #define __DEBUG_H__ 25 | 26 | #if defined(_DEBUG) && !defined(DEBUG) 27 | #define DEBUG 28 | #endif 29 | 30 | #ifndef DEBUG 31 | #define NDEBUG 32 | #endif 33 | 34 | #include 35 | 36 | #ifdef DEBUG 37 | #define debug __debug 38 | void __debug(int, const char *, ...); 39 | 40 | extern int tracing_flags; 41 | 42 | void __trace(const char *, int, const char *, const char *, ...); 43 | 44 | #define trace(cat, ...) \ 45 | { if (tracing_flags & (1 << (cat))){ \ 46 | __trace(__FILE__, __LINE__, __FUNCTION__, __VA_ARGS__);} } 47 | 48 | #define LIB_TRACING_CATS \ 49 | "iobuf", "sock", "chan", "evt", "proc", "ctrl", "tun", "socks" 50 | 51 | #else 52 | /** print debug statement */ 53 | #define debug(a, ...) ((void)0) 54 | /** generate call trace */ 55 | #define trace(...) ((void)0) 56 | #endif 57 | 58 | #define trace_iobuf(...) trace(0, __VA_ARGS__) 59 | #define trace_sock(...) trace(1, __VA_ARGS__) 60 | #define trace_chan(...) trace(2, __VA_ARGS__) 61 | #define trace_evt(...) trace(3, __VA_ARGS__) 62 | #define trace_proc(...) trace(4, __VA_ARGS__) 63 | #define trace_ctrl(...) trace(5, __VA_ARGS__) 64 | #define trace_tun(...) trace(6, __VA_ARGS__) 65 | #define trace_socks(...) trace(7, __VA_ARGS__) 66 | 67 | #endif 68 | -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/wc.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/.svn/wc.db -------------------------------------------------------------------------------- /sources/rdp2tcp/.svn/wc.db-journal: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/.svn/wc.db-journal -------------------------------------------------------------------------------- /sources/rdp2tcp/AUTHORS: -------------------------------------------------------------------------------- 1 | Nicolas Collignon 2 | -------------------------------------------------------------------------------- /sources/rdp2tcp/ChangeLog: -------------------------------------------------------------------------------- 1 | Version 0.1 public release (OSSIR) 2 | + SOCKS5 minimal support 3 | + doxygenification 4 | + stricter controller protocol 5 | + added X11 scripting tool (rdpupload) 6 | + added rdp2tcp test script (test-client) 7 | + dozen of bug fixes 8 | 9 | Version 0.0.3 10 | + tcp reverse connect 11 | + process stdin/stdout forwarding 12 | + IPv6 support 13 | + dozen of bug fixes 14 | 15 | Version 0.0.2 almost reliable tunneling ... 16 | + added controller listener to add tunnel on-demand 17 | 18 | Version 0.0.1 SSTIC rump nuked edition :) 19 | -------------------------------------------------------------------------------- /sources/rdp2tcp/FAQ: -------------------------------------------------------------------------------- 1 | 2 | Q: I started rdesktop without the "-r addin:rdp2tcp:" argument, ... 3 | A: It is not possible to start the client on-demand if the rdesktop 4 | has not been started with the correct command line. 5 | This feature will not be implemented since it would require extra 6 | patches for rdesktop. 7 | 8 | Q: I want to use rdp2tcp without rdesktop because ... 9 | A: It is not possible to use the client without rdesktop already running. 10 | rdp2tcp is a rdesktop virtual channel helper, not a RDP implementation. 11 | 12 | Q: How to check if rdesktop is compiled with OOP patch ? 13 | A: Run "rdesktop 2>&1 | grep addin". If you see no result, 14 | rdesktop is not patched. 15 | 16 | Q: rdesktop says "Error executing child: No such file or directory" 17 | A: The rdp2tcp client path provided with the "-r addin:rdp2tcp:" 18 | argument is not correct. 19 | 20 | Q: I get "error: cannot attach RDP stream" when i start rdp2tcp server 21 | A: rdp2tcp.exe was not started within a Terminal Server session. 22 | 23 | Q: I forwarded remote port 445 on my Linux host but smbclient fails 24 | when trying to connect to local port XYZ. 25 | A: This is a smbclient bug, not a rdp2tcp bug! smbclient selects its 26 | protocol (netbios or SMB) based on the port number. It will try 27 | to use netbios protocol whenever the destination port is not 445. 28 | Therefore you have 3 choices: 29 | - patch smbclient :) 30 | - wrap the smbclient with a SOCKS5 client (tsocks, proxychains, ...) 31 | - starts another tunneling tools (ex: socat) locally to forward 32 | port 445 to port XYZ (must be done as root since 445 < 1024). 33 | 34 | Q: the input generated by rdpupload looks like garbage 35 | A: your keyboard layout is different than the keyboard layout of the TS. 36 | restart rdesktop with "-g " 37 | 38 | Q: rdpupload is slow ... 39 | A: It is not expected to run fast ... 40 | "debug" encoding generates smaller payload than "vb" encoding. 41 | try to play with "-s" option (ex: -s 0.5). 42 | compress/pack the file you are trying to upload (ex: upx) 43 | 44 | Q: Where can I find a precompiled rdp2tcp.exe server binary ? 45 | A: Precompiled binaries are not provided ... Use mingw32. 46 | 47 | -------------------------------------------------------------------------------- /sources/rdp2tcp/INSTALL: -------------------------------------------------------------------------------- 1 | 2 | -[ prerequisites ]----------------------------- 3 | 4 | - rdesktop dependencies 5 | - a compiler for the rdesktop host 6 | - a compiler for Windows 7 | 8 | -[ steps ]------------------------------------- 9 | 10 | 1) get rdesktop source code 11 | http://www.rdesktop.org/#download 12 | 13 | 2) get rdesktop out-of-process virtual channel patch (oop.patch) 14 | http://sf.net/tracker/index.php?func=detail&aid=1472969&group_id=24366&atid=381349 15 | 16 | 3) apply rdesktop patch 17 | 18 | 4) compile & install patched rdesktop 19 | 20 | 5) compile client with "make client" 21 | 22 | 6) compile server 23 | 24 | case 1: cross-compilation from UNIX, use mingw32 25 | you may have to fix the compiler path in server/Makefile.mingw32 26 | run "make server-mingw32" 27 | 28 | case 2: compilation from Windows, use whatever you want .. 29 | ex: "nmake /nologo /f Makefile.nmake" 30 | 31 | -------------------------------------------------------------------------------- /sources/rdp2tcp/Makefile: -------------------------------------------------------------------------------- 1 | all: client 2 | 3 | client: client/rdp2tcp 4 | client/rdp2tcp: 5 | make -C client 6 | 7 | server-mingw32: server/rdp2tcp.exe 8 | server/rdp2tcp.exe: 9 | make -C server -f Makefile.mingw32 10 | 11 | clean: 12 | make -C client clean 13 | make -C server -f Makefile.mingw32 clean 14 | make -C tools clean 15 | -------------------------------------------------------------------------------- /sources/rdp2tcp/TODO: -------------------------------------------------------------------------------- 1 | - tunnel id on 16 bits ? 2 | - support fixed address family 3 | FIXME: 64 bits ? 4 | -------------------------------------------------------------------------------- /sources/rdp2tcp/client/Makefile: -------------------------------------------------------------------------------- 1 | BIN=rdp2tcp 2 | CC=gcc 3 | CFLAGS=-Wall -g -I../common 4 | #CFLAGS=-Wall -g -I../common -DDEBUG 5 | LDFLAGS= 6 | OBJS=main.o netsock.o tunnel.o channel.o commands.o controller.o socks5.o \ 7 | ../common/nethelper.o \ 8 | ../common/netaddr.o \ 9 | ../common/iobuf.o \ 10 | ../common/print.o \ 11 | ../common/msgparser.o 12 | 13 | all: clean_common $(BIN) 14 | 15 | clean_common: 16 | $(MAKE) -C ../common clean 17 | 18 | $(BIN): $(OBJS) 19 | $(CC) -o $@ $(OBJS) $(LDFLAGS) 20 | 21 | %.o: %.c 22 | $(CC) $(CFLAGS) -o $@ -c $< 23 | 24 | clean: 25 | rm -f $(OBJS) $(BIN) 26 | -------------------------------------------------------------------------------- /sources/rdp2tcp/client/channel.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/client/channel.o -------------------------------------------------------------------------------- /sources/rdp2tcp/client/commands.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/client/commands.o -------------------------------------------------------------------------------- /sources/rdp2tcp/client/controller.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/client/controller.o -------------------------------------------------------------------------------- /sources/rdp2tcp/client/main.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/client/main.o -------------------------------------------------------------------------------- /sources/rdp2tcp/client/memcheck.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | valgrind --tool=memcheck \ 3 | -v --log-file=/tmp/rdp2tcp.log \ 4 | --leak-check=full --show-reachable=yes \ 5 | --leak-resolution=med --track-origins=yes \ 6 | ./rdp2tcp 7 | -------------------------------------------------------------------------------- /sources/rdp2tcp/client/netsock.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/client/netsock.o -------------------------------------------------------------------------------- /sources/rdp2tcp/client/rdp2tcp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/client/rdp2tcp -------------------------------------------------------------------------------- /sources/rdp2tcp/client/socks5-proto.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file socks5-proto.h 3 | * SOCKS5 protocol specifications 4 | */ 5 | /* 6 | * This file is part of rdp2tcp 7 | * 8 | * Copyright (C) 2010-2011, Nicolas Collignon 9 | * 10 | * This program is free software: you can redistribute it and/or modify 11 | * it under the terms of the GNU General Public License as published by 12 | * the Free Software Foundation, either version 3 of the License, or 13 | * (at your option) any later version. 14 | * 15 | * This program is distributed in the hope that it will be useful, 16 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 | * GNU General Public License for more details. 19 | * 20 | * You should have received a copy of the GNU General Public License 21 | * along with this program. If not, see . 22 | */ 23 | #ifndef __SOCKS5_PROTO_H__ 24 | #define __SOCKS5_PROTO_H__ 25 | 26 | // http://tools.ietf.org/html/rfc1928 27 | 28 | #define SOCKS5_VERSION 0x05 29 | 30 | #define SOCKS5_ATYPE_IPV4 0x01 31 | #define SOCKS5_ATYPE_FQDN 0x03 32 | #define SOCKS5_ATYPE_IPV6 0x04 33 | 34 | #define SOCKS5_NOAUTH 0x00 35 | 36 | #define SOCKS5_CONNECT 0x01 37 | #define SOCKS5_BIND 0x02 38 | #define SOCKS5_UDPASSOC 0x03 39 | 40 | #define SOCKS5_SUCCESS 0x00 41 | #define SOCKS5_ERROR 0x01 42 | #define SOCKS5_FORBIDDEN 0x02 43 | #define SOCKS5_NETUNREACH 0x03 44 | #define SOCKS5_PORTUNREACH 0x04 45 | #define SOCKS5_CONNREFUSED 0x05 46 | #define SOCKS5_TTLEXPIRED 0x06 47 | #define SOCKS5_UNKCOMMAND 0x07 48 | #define SOCKS5_UNKADDRTYPE 0x08 49 | 50 | #endif 51 | -------------------------------------------------------------------------------- /sources/rdp2tcp/client/socks5.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/client/socks5.o -------------------------------------------------------------------------------- /sources/rdp2tcp/client/tunnel.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/client/tunnel.o -------------------------------------------------------------------------------- /sources/rdp2tcp/common/Makefile: -------------------------------------------------------------------------------- 1 | CC=gcc 2 | CFLAGS=-Wall -g 3 | # -DDEBUG 4 | OBJS= iobuf.o print.o msgparser.o nethelper.o netaddr.o 5 | 6 | all: $(OBJS) 7 | 8 | %.o: %.c 9 | $(CC) $(CFLAGS) -o $@ -c $< 10 | 11 | clean: 12 | rm -f $(OBJS) $(BIN) 13 | -------------------------------------------------------------------------------- /sources/rdp2tcp/common/Makefile.mingw32: -------------------------------------------------------------------------------- 1 | CC=i586-mingw32msvc-gcc 2 | CFLAGS=-Wall -g \ 3 | -D_WIN32_WINNT=0x0501 -DDEBUG 4 | OBJS= iobuf.o print.o msgparser.o nethelper.o netaddr.o 5 | 6 | all: $(OBJS) 7 | 8 | %.o: %.c 9 | $(CC) $(CFLAGS) -o $@ -c $< 10 | 11 | clean: 12 | rm -f $(OBJS) $(BIN) 13 | -------------------------------------------------------------------------------- /sources/rdp2tcp/common/compiler.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file compiler.h 3 | * Microsoft Visual Studio compiler support 4 | */ 5 | /* 6 | * This file is part of rdp2tcp 7 | * 8 | * Copyright (C) 2010-2011, Nicolas Collignon 9 | * 10 | * This program is free software: you can redistribute it and/or modify 11 | * it under the terms of the GNU General Public License as published by 12 | * the Free Software Foundation, either version 3 of the License, or 13 | * (at your option) any later version. 14 | * 15 | * This program is distributed in the hope that it will be useful, 16 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 | * GNU General Public License for more details. 19 | * 20 | * You should have received a copy of the GNU General Public License 21 | * along with this program. If not, see . 22 | */ 23 | #ifndef __COMPILER_H__ 24 | #define __COMPILER_H__ 25 | 26 | #ifdef __GNUC__ 27 | // gcc 28 | #define PACK(decl) decl __attribute__((__packed__)) 29 | #else 30 | #define PACK(decl) __pragma(pack(push,1)) decl __pragma(pack(pop)) 31 | // Visual Studio 32 | #if defined(_DEBUG) && !defined(DEBUG) 33 | #define DEBUG 34 | #endif 35 | #define ssize_t int 36 | #define inline __inline 37 | #define snprintf _snprintf 38 | #define typeof(x) void * 39 | #endif 40 | 41 | #endif 42 | -------------------------------------------------------------------------------- /sources/rdp2tcp/common/debug.h: -------------------------------------------------------------------------------- 1 | /** 2 | * @file debug.h 3 | * debug/trace support 4 | */ 5 | /* 6 | * This file is part of rdp2tcp 7 | * 8 | * Copyright (C) 2010-2011, Nicolas Collignon 9 | * 10 | * This program is free software: you can redistribute it and/or modify 11 | * it under the terms of the GNU General Public License as published by 12 | * the Free Software Foundation, either version 3 of the License, or 13 | * (at your option) any later version. 14 | * 15 | * This program is distributed in the hope that it will be useful, 16 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 | * GNU General Public License for more details. 19 | * 20 | * You should have received a copy of the GNU General Public License 21 | * along with this program. If not, see . 22 | */ 23 | #ifndef __DEBUG_H__ 24 | #define __DEBUG_H__ 25 | 26 | #if defined(_DEBUG) && !defined(DEBUG) 27 | #define DEBUG 28 | #endif 29 | 30 | #ifndef DEBUG 31 | #define NDEBUG 32 | #endif 33 | 34 | #include 35 | 36 | #ifdef DEBUG 37 | #define debug __debug 38 | void __debug(int, const char *, ...); 39 | 40 | extern int tracing_flags; 41 | 42 | void __trace(const char *, int, const char *, const char *, ...); 43 | 44 | #define trace(cat, ...) \ 45 | { if (tracing_flags & (1 << (cat))){ \ 46 | __trace(__FILE__, __LINE__, __FUNCTION__, __VA_ARGS__);} } 47 | 48 | #define LIB_TRACING_CATS \ 49 | "iobuf", "sock", "chan", "evt", "proc", "ctrl", "tun", "socks" 50 | 51 | #else 52 | /** print debug statement */ 53 | #define debug(a, ...) ((void)0) 54 | /** generate call trace */ 55 | #define trace(...) ((void)0) 56 | #endif 57 | 58 | #define trace_iobuf(...) trace(0, __VA_ARGS__) 59 | #define trace_sock(...) trace(1, __VA_ARGS__) 60 | #define trace_chan(...) trace(2, __VA_ARGS__) 61 | #define trace_evt(...) trace(3, __VA_ARGS__) 62 | #define trace_proc(...) trace(4, __VA_ARGS__) 63 | #define trace_ctrl(...) trace(5, __VA_ARGS__) 64 | #define trace_tun(...) trace(6, __VA_ARGS__) 65 | #define trace_socks(...) trace(7, __VA_ARGS__) 66 | 67 | #endif 68 | -------------------------------------------------------------------------------- /sources/rdp2tcp/common/iobuf.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of rdp2tcp 3 | * 4 | * Copyright (C) 2010-2011, Nicolas Collignon 5 | * 6 | * This program is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program. If not, see . 18 | */ 19 | #ifndef __MPROXY_IOBUF_H__ 20 | #define __MPROXY_IOBUF_H__ 21 | 22 | #include "debug.h" 23 | #include 24 | 25 | #ifndef IOBUF_MIN_SIZE 26 | #define IOBUF_MIN_SIZE 2048 27 | #endif 28 | 29 | /** I/O buffer */ 30 | typedef struct iobuf { 31 | unsigned int size; /**< used size */ 32 | unsigned int total; /**< allocated size */ 33 | char *data; /**< data buffer */ 34 | #ifdef DEBUG 35 | const char *name; 36 | char type; 37 | #endif 38 | } iobuf_t; 39 | 40 | #ifdef DEBUG 41 | #define valid_iobuf(x) \ 42 | ((x) && (((x)->size <= (x)->total) && ((x)->data || !((x)->total))) \ 43 | && (x)->name && (((x)->type == 'r') || (x)->type == 'w')) 44 | void iobuf_dump(iobuf_t *); 45 | void __iobuf_init(iobuf_t *, char, const char *); 46 | void __iobuf_init2(iobuf_t *, iobuf_t *, const char *); 47 | #define iobuf_init(buf, type, name) __iobuf_init(buf, type, name) 48 | #define iobuf_init2(buf1, buf2, name) __iobuf_init2(buf1, buf2, name) 49 | 50 | #else 51 | #define valid_iobuf(x) \ 52 | ((x) && (((x)->size <= (x)->total) && ((x)->data || !((x)->total)))) 53 | void __iobuf_init(iobuf_t *); 54 | void __iobuf_init2(iobuf_t *, iobuf_t *); 55 | #define iobuf_init(buf, type, name) __iobuf_init(buf) 56 | #define iobuf_init2(buf1, buf2, name) __iobuf_init2(buf1, buf2) 57 | #endif 58 | 59 | #define assert_iobuf(x) assert(valid_iobuf(x)) 60 | 61 | void iobuf_kill(iobuf_t *); 62 | void iobuf_kill2(iobuf_t *, iobuf_t *); 63 | 64 | #if defined(_WIN32) && !defined(__GNUC__) 65 | #define inline __inline 66 | #endif 67 | 68 | static inline unsigned int iobuf_datalen(iobuf_t *buf) 69 | { 70 | return buf->size; 71 | } 72 | 73 | static inline void *iobuf_dataptr(iobuf_t *buf) 74 | { 75 | return buf->size ? buf->data : 0; 76 | } 77 | 78 | static inline void *iobuf_allocptr(iobuf_t *buf) 79 | { 80 | return ((char *)buf->data) + buf->size; 81 | } 82 | 83 | void iobuf_consume(iobuf_t *, unsigned int); 84 | 85 | void *iobuf_reserve(iobuf_t *, unsigned int, unsigned int *); 86 | void iobuf_commit(iobuf_t *, unsigned int); 87 | void *iobuf_append(iobuf_t *, const void *, unsigned int); 88 | //void iobuf_xfer(iobuf_t *, iobuf_t *); 89 | 90 | #endif 91 | // vim: ts=3 sw=3 92 | -------------------------------------------------------------------------------- /sources/rdp2tcp/common/iobuf.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/common/iobuf.o -------------------------------------------------------------------------------- /sources/rdp2tcp/common/msgparser.c: -------------------------------------------------------------------------------- 1 | /** 2 | * @file msgparser.c 3 | * rdp2tcp commands parser 4 | */ 5 | /* 6 | * This file is part of rdp2tcp 7 | * 8 | * Copyright (C) 2010-2011, Nicolas Collignon 9 | * 10 | * This program is free software: you can redistribute it and/or modify 11 | * it under the terms of the GNU General Public License as published by 12 | * the Free Software Foundation, either version 3 of the License, or 13 | * (at your option) any later version. 14 | * 15 | * This program is distributed in the hope that it will be useful, 16 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 | * GNU General Public License for more details. 19 | * 20 | * You should have received a copy of the GNU General Public License 21 | * along with this program. If not, see . 22 | */ 23 | #include "print.h" 24 | #include "iobuf.h" 25 | #include "msgparser.h" 26 | 27 | #include 28 | #ifndef _WIN32 29 | #include 30 | #else 31 | #include 32 | #endif 33 | 34 | extern int debug_level; 35 | extern const cmdhandler_t cmd_handlers[]; 36 | 37 | /** 38 | * parse rdp2tcp commands and call specific handlers 39 | * @param[in] ibuf input buffer 40 | * @return 0 on success, -1 on error 41 | */ 42 | int commands_parse(iobuf_t *ibuf) 43 | { 44 | unsigned char cmd, *data; 45 | unsigned int off, msg_len, avail; 46 | static const unsigned char r2t_min_size[R2TCMD_MAX] = { 47 | 3, // R2TCMD_CONN 48 | 2, // R2TCMD_CLOSE 49 | 2, // R2TCMD_DATA 50 | 1, // R2TCMD_PING 51 | 3, // R2TCMD_BIND 52 | 2 // R2TCMD_RCONN 53 | }; 54 | 55 | assert(valid_iobuf(ibuf) && (iobuf_datalen(ibuf)>0)); 56 | 57 | #ifdef DEBUG 58 | if (debug_level > 0) iobuf_dump(ibuf); 59 | #endif 60 | 61 | off = 0; 62 | data = iobuf_dataptr(ibuf); 63 | avail = iobuf_datalen(ibuf); 64 | debug(1, "commands_parse(avail=%u)", avail); 65 | 66 | // for each command 67 | while (off + 5 < avail) { 68 | 69 | msg_len = ntohl(*(unsigned int*)(data+off)); 70 | if (!msg_len || (msg_len > RDP2TCP_MAX_MSGLEN)) 71 | return error("invalid channel msg size 0x%08x", msg_len); 72 | 73 | if (off+msg_len+4 > avail) 74 | break; 75 | 76 | off += 4; 77 | 78 | cmd = data[off]; 79 | if (cmd >= R2TCMD_MAX) 80 | return error("invalid command id 0x%02x", cmd); 81 | 82 | if (msg_len < (unsigned int)r2t_min_size[cmd]) 83 | return error("command 0x%02x too short 0x%08x < 0x%08x", 84 | cmd, msg_len, (unsigned int)r2t_min_size[cmd]); 85 | 86 | if (!cmd_handlers[cmd]) 87 | return error("command 0x%02x not supported", cmd); 88 | 89 | // call specific command handler 90 | if (cmd_handlers[cmd]((const r2tmsg_t*)(data+off), msg_len)) 91 | return -1; 92 | 93 | off += msg_len; 94 | } 95 | 96 | if (off > 0) 97 | iobuf_consume(ibuf, off); 98 | 99 | return 0; 100 | } 101 | 102 | // R2TERR_xxx error strings 103 | const char *r2t_errors[R2TERR_MAX] = { 104 | "", 105 | "generic error", 106 | "bad message", 107 | "connection refused", 108 | "forbidden", 109 | "address not available", 110 | "failed to resolve hostname", 111 | "executable not found" 112 | }; 113 | 114 | -------------------------------------------------------------------------------- /sources/rdp2tcp/common/msgparser.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of rdp2tcp 3 | * 4 | * Copyright (C) 2010-2011, Nicolas Collignon 5 | * 6 | * This program is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program. If not, see . 18 | */ 19 | #ifndef __R2TMSG_PARSER_H__ 20 | #define __R2TMSG_PARSER_H__ 21 | 22 | #include "rdp2tcp.h" 23 | 24 | typedef int (*cmdhandler_t)(const r2tmsg_t *, unsigned int); 25 | 26 | int commands_parse(iobuf_t *); 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /sources/rdp2tcp/common/msgparser.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/common/msgparser.o -------------------------------------------------------------------------------- /sources/rdp2tcp/common/netaddr.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/common/netaddr.o -------------------------------------------------------------------------------- /sources/rdp2tcp/common/nethelper.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of rdp2tcp 3 | * 4 | * Copyright (C) 2010-2011, Nicolas Collignon 5 | * 6 | * This program is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program. If not, see . 18 | */ 19 | #ifndef __NETHELPER_H__ 20 | #define __NETHELPER_H__ 21 | 22 | #include "compiler.h" 23 | #include "iobuf.h" 24 | 25 | #define NETERR_RESOLVE -1 26 | #define NETERR_NOADDR -2 27 | #define NETERR_SOCKET -3 28 | #define NETERR_BIND -4 29 | #define NETERR_LISTEN -5 30 | #define NETERR_CONNECT -6 31 | #define NETERR_RECV -7 32 | #define NETERR_SEND -8 33 | 34 | #define NETERR_CLOSED -1000 35 | 36 | #ifndef _WIN32 37 | #include 38 | #include 39 | #include 40 | #include 41 | 42 | typedef int sock_t; 43 | #define net_init() ((void)0) 44 | #define net_exit() ((void)0) 45 | #define net_close(x) close(x) 46 | #define net_pending() ((errno == EINPROGRESS) || (errno == EAGAIN)) 47 | #define valid_sock(s) ((s) && (*(s) != -1)) 48 | 49 | #else 50 | #include 51 | #include 52 | 53 | typedef struct { 54 | SOCKET fd; 55 | WSAEVENT evt; 56 | } sock_t; 57 | 58 | void net_init(void); 59 | #define net_exit() WSACleanup() 60 | void net_close(sock_t *); 61 | #define net_pending() (WSAGetLastError() == WSAEWOULDBLOCK) 62 | #define valid_sock(s) ((s) && ((s)->fd != INVALID_SOCKET) \ 63 | && ((s)->evt != WSA_INVALID_EVENT)) 64 | 65 | int net_update_watch(sock_t *, iobuf_t *); 66 | #endif 67 | 68 | #ifndef NETBUF_MAX_SIZE 69 | #define NETBUF_MAX_SIZE (1024*16) 70 | #endif 71 | 72 | /** peer address */ 73 | typedef union { 74 | struct sockaddr_in ip4; /**< IPv4 address */ 75 | struct sockaddr_in6 ip6; /**< IPv6 address */ 76 | unsigned int pid; /**< process identifier */ 77 | } netaddr_t; 78 | 79 | #define netaddr_af(na) (na)->ip4.sin_family 80 | void netaddr_set(int, const void *, unsigned short, netaddr_t *); 81 | 82 | int netaddr_cmp(const netaddr_t *, const netaddr_t *); 83 | #define NETADDRSTR_MAXSIZE (1+INET6_ADDRSTRLEN+1+1+5+1) 84 | const char *netaddr_print(const netaddr_t *, char *); 85 | 86 | const char *net_error(int, int); 87 | 88 | int net_resolve(int, const char *, unsigned short, netaddr_t *, int *); 89 | int net_server(int, const char *, unsigned short, sock_t *, netaddr_t *,int*); 90 | int net_client(int, const char *, unsigned short, sock_t *, netaddr_t *,int*); 91 | int net_accept(sock_t *, sock_t *, netaddr_t *); 92 | int net_read(sock_t*, iobuf_t*, unsigned int, unsigned int*, unsigned int*); 93 | int net_write(sock_t *, iobuf_t *, const void *, unsigned int, unsigned int *); 94 | 95 | #endif 96 | -------------------------------------------------------------------------------- /sources/rdp2tcp/common/nethelper.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/common/nethelper.o -------------------------------------------------------------------------------- /sources/rdp2tcp/common/print.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of rdp2tcp 3 | * 4 | * Copyright (C) 2010-2011, Nicolas Collignon 5 | * 6 | * This program is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program. If not, see . 18 | */ 19 | #ifndef __PRINT_H__ 20 | #define __PRINT_H__ 21 | 22 | #include 23 | #include "debug.h" 24 | 25 | void print_init(void); 26 | 27 | void info(int, const char *, ...); 28 | int warn(const char *, ...); 29 | int error(const char *, ...); 30 | 31 | void print_xfer(const char *, char, unsigned int); 32 | 33 | #ifdef DEBUG 34 | void fprint_hex(void *, unsigned int, FILE *); 35 | #endif 36 | 37 | #endif 38 | // vim: ts=3 sw=3 39 | -------------------------------------------------------------------------------- /sources/rdp2tcp/common/print.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/common/print.o -------------------------------------------------------------------------------- /sources/rdp2tcp/server/Makefile.mingw32: -------------------------------------------------------------------------------- 1 | BIN=rdp2tcp.exe 2 | #CC=i586-mingw32msvc-gcc 3 | CC=i686-w64-mingw32-gcc 4 | CFLAGS=-Wall -g \ 5 | -D_WIN32_WINNT=0x0501 \ 6 | -I../common 7 | 8 | # -D_WIN32_WINNT=0x0501 9 | # -D_WIN32_WINNT=0x0501 -DDEBUG 10 | 11 | LDFLAGS=-lwtsapi32 -lws2_32 12 | OBJS= ../common/iobuf.o \ 13 | ../common/print.o \ 14 | ../common/msgparser.o \ 15 | ../common/nethelper.o \ 16 | ../common/netaddr.o \ 17 | errors.o aio.o events.o \ 18 | tunnel.o channel.o process.o commands.o main.o 19 | 20 | all: clean_common $(BIN) 21 | 22 | clean_common: 23 | $(MAKE) -C ../common clean 24 | 25 | $(BIN): $(OBJS) 26 | $(CC) -o $@ $(OBJS) $(LDFLAGS) 27 | 28 | %.o: %.c 29 | $(CC) $(CFLAGS) -o $@ -c $< 30 | 31 | clean: 32 | rm -f $(OBJS) $(BIN) 33 | -------------------------------------------------------------------------------- /sources/rdp2tcp/server/Makefile.nmake: -------------------------------------------------------------------------------- 1 | BIN=rdp2tcp.exe 2 | CFLAGS=/nologo /D_CRT_SECURE_NO_WARNINGS /W3 /I..\common 3 | #CFLAGS=/nologo /DEBUG /D_CRT_SECURE_NO_WARNINGS /W3 /I..\common 4 | LDFLAGS=/nologo 5 | #LDFLAGS=/nologo /DEBUG 6 | 7 | LIBS= wtsapi32.lib ws2_32.lib 8 | OBJS= ..\common\iobuf.obj \ 9 | ..\common\print.obj \ 10 | ..\common\msgparser.obj \ 11 | ..\common\nethelper.obj \ 12 | ..\common\netaddr.obj \ 13 | errors.obj aio.obj events.obj \ 14 | tunnel.obj channel.obj process.obj commands.obj main.obj 15 | 16 | all: $(BIN) 17 | 18 | $(BIN): $(OBJS) 19 | link /out:$(BIN) $(LDFLAGS) *.obj $(LIBS) 20 | 21 | clean: 22 | erase $(OBJS) $(BIN) 23 | 24 | -------------------------------------------------------------------------------- /sources/rdp2tcp/server/aio.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/server/aio.o -------------------------------------------------------------------------------- /sources/rdp2tcp/server/channel.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/server/channel.o -------------------------------------------------------------------------------- /sources/rdp2tcp/server/commands.c: -------------------------------------------------------------------------------- 1 | /** 2 | * @file commands.c 3 | * rdp2tcp commands handling 4 | */ 5 | /* 6 | * This file is part of rdp2tcp 7 | * 8 | * Copyright (C) 2010-2011, Nicolas Collignon 9 | * 10 | * This program is free software: you can redistribute it and/or modify 11 | * it under the terms of the GNU General Public License as published by 12 | * the Free Software Foundation, either version 3 of the License, or 13 | * (at your option) any later version. 14 | * 15 | * This program is distributed in the hope that it will be useful, 16 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 | * GNU General Public License for more details. 19 | * 20 | * You should have received a copy of the GNU General Public License 21 | * along with this program. If not, see . 22 | */ 23 | #include "rdp2tcp.h" 24 | #include "r2twin.h" 25 | #include "msgparser.h" 26 | 27 | static int protoerror(unsigned char tid, unsigned char err, const char *errstr) 28 | { 29 | channel_write(R2TCMD_CONN, tid, &err, 1); 30 | return error("protocol error (%s)", errstr); 31 | } 32 | 33 | static int start_tcp_tunnel( 34 | const r2tmsg_connreq_t *msg, 35 | unsigned int len, 36 | int bind_tunnel) 37 | { 38 | static const int r2taf_to_sysaf[3] = { AF_UNSPEC, AF_INET, AF_INET6 }; 39 | 40 | if (len < 7) 41 | return protoerror(msg->id, R2TERR_BADMSG, "command too small"); 42 | 43 | if (tunnel_lookup(msg->id)) 44 | return error("tunnel 0x%02x is already used", msg->id); 45 | 46 | if (msg->af > TUNAF_IPV6) 47 | return protoerror(msg->id, R2TERR_BADMSG, "invalid address family"); 48 | 49 | if (msg->hostname[len-6]) 50 | return protoerror(msg->id, R2TERR_BADMSG, "invalid hostname"); 51 | 52 | tunnel_create(msg->id, r2taf_to_sysaf[msg->af], 53 | msg->hostname, ntohs(msg->port), bind_tunnel); 54 | 55 | return 0; 56 | } 57 | 58 | static int cmd_conn(const r2tmsg_connreq_t *msg, unsigned int len) 59 | { 60 | trace_chan("len=%u, tid=0x%02x, af=0x%02x, port=0x%04x", 61 | len, msg->id, msg->af, msg->port); 62 | 63 | return start_tcp_tunnel(msg, len, 0); 64 | } 65 | 66 | static int cmd_bind(const r2tmsg_connreq_t *msg, unsigned int len) 67 | { 68 | trace_chan("len=%u, tid=0x%02x, af=0x%02x, port=0x%04x", 69 | len, msg->id, msg->af, msg->port); 70 | 71 | return start_tcp_tunnel(msg, len, 1); 72 | } 73 | 74 | static int cmd_close(const r2tmsg_t *msg, unsigned int len) 75 | { 76 | tunnel_t *tun; 77 | 78 | trace_chan("len=%u, tid=0x%02x", len, msg->id); 79 | tun = tunnel_lookup(msg->id); 80 | if (!tun) { 81 | error("invalid tunnel id 0x%02x", msg->id); 82 | return 0; 83 | } 84 | 85 | tunnel_close(tun); 86 | return 0; 87 | } 88 | 89 | static int cmd_data(const r2tmsg_t *msg, unsigned int len) 90 | { 91 | tunnel_t *tun; 92 | 93 | trace_chan("len=%u, id=0x%02x", len, msg->id); 94 | tun = tunnel_lookup(msg->id); 95 | if (!tun) { 96 | error("invalid tunnel id 0x%02x", msg->id); 97 | return 0; 98 | } 99 | 100 | return tunnel_write(tun, ((const char *)msg)+2, len-2); 101 | } 102 | 103 | const cmdhandler_t cmd_handlers[R2TCMD_MAX] = { 104 | (cmdhandler_t) cmd_conn, /* R2TCMD_CONN */ 105 | (cmdhandler_t) cmd_close, /* R2TCMD_CLOSE */ 106 | (cmdhandler_t) cmd_data, /* R2TCMD_DATA */ 107 | NULL, 108 | (cmdhandler_t) cmd_bind, /* R2TCMD_BIND */ 109 | NULL 110 | }; 111 | 112 | -------------------------------------------------------------------------------- /sources/rdp2tcp/server/commands.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/server/commands.o -------------------------------------------------------------------------------- /sources/rdp2tcp/server/errors.c: -------------------------------------------------------------------------------- 1 | /** 2 | * @file errors.c 3 | * windows error printing 4 | */ 5 | /* 6 | * This file is part of rdp2tcp 7 | * 8 | * Copyright (C) 2010-2011, Nicolas Collignon 9 | * 10 | * This program is free software: you can redistribute it and/or modify 11 | * it under the terms of the GNU General Public License as published by 12 | * the Free Software Foundation, either version 3 of the License, or 13 | * (at your option) any later version. 14 | * 15 | * This program is distributed in the hope that it will be useful, 16 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 | * GNU General Public License for more details. 19 | * 20 | * You should have received a copy of the GNU General Public License 21 | * along with this program. If not, see . 22 | */ 23 | #include "r2twin.h" 24 | 25 | #include 26 | #include 27 | 28 | 29 | static int do_error(const char *func, DWORD err) 30 | { 31 | char *buffer; 32 | 33 | buffer = NULL; 34 | if (FormatMessageA(FORMAT_MESSAGE_FROM_SYSTEM 35 | |FORMAT_MESSAGE_ALLOCATE_BUFFER 36 | |FORMAT_MESSAGE_MAX_WIDTH_MASK 37 | |FORMAT_MESSAGE_IGNORE_INSERTS, 38 | NULL, err, 39 | MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), 40 | (LPSTR)&buffer, 0, NULL) > 0) { 41 | if (buffer) { 42 | error("%s (%lu: %s)\n", func, err, buffer); 43 | LocalFree(buffer); 44 | return -1; 45 | } 46 | } 47 | 48 | return error("%s (%lu)\n", func, err); 49 | } 50 | 51 | /** print winsock-level error */ 52 | int wsaerror(const char *func) 53 | { 54 | return do_error(func, WSAGetLastError()); 55 | } 56 | 57 | /** print win32-level error */ 58 | int syserror(const char *func) 59 | { 60 | return do_error(func, GetLastError()); 61 | } 62 | 63 | -------------------------------------------------------------------------------- /sources/rdp2tcp/server/errors.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/server/errors.o -------------------------------------------------------------------------------- /sources/rdp2tcp/server/events.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/server/events.o -------------------------------------------------------------------------------- /sources/rdp2tcp/server/main.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/server/main.o -------------------------------------------------------------------------------- /sources/rdp2tcp/server/process.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/server/process.o -------------------------------------------------------------------------------- /sources/rdp2tcp/server/rdp2tcp.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/server/rdp2tcp.exe -------------------------------------------------------------------------------- /sources/rdp2tcp/server/tunnel.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/server/tunnel.o -------------------------------------------------------------------------------- /sources/rdp2tcp/tools/Makefile: -------------------------------------------------------------------------------- 1 | 2 | all: 3 | 4 | 5 | clean: 6 | rm -f *.pyc 7 | -------------------------------------------------------------------------------- /sources/rdp2tcp/tools/rdp2tcp.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/rdp2tcp/tools/rdp2tcp.pyc -------------------------------------------------------------------------------- /sources/vchannel-samples/vchannel-sample.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/vchannel-samples/vchannel-sample.tar.gz -------------------------------------------------------------------------------- /sources/vchannel-samples/vchannel.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/sources/vchannel-samples/vchannel.zip -------------------------------------------------------------------------------- /xte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NotMedic/rdp-tunnel/35151da906d652c64c34c4cfab31fc0a28a67b37/xte --------------------------------------------------------------------------------