1 |
/* -*- c-basic-offset: 8 -*- |
2 |
rdesktop: A Remote Desktop Protocol client. |
3 |
Seamless windows - Virtual channel handling |
4 |
|
5 |
Copyright (C) Pierre Ossman <ossman@cendio.se> 2006 |
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 2 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, write to the Free Software |
19 |
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. |
20 |
*/ |
21 |
|
22 |
#ifndef __VCHANNEL_H__ |
23 |
#define __VCHANNEL_H__ |
24 |
|
25 |
#define DLL_EXPORT __declspec(dllexport) |
26 |
|
27 |
#define VCHANNEL_MAX_LINE 1024 |
28 |
|
29 |
DLL_EXPORT void debug(char *format, ...); |
30 |
|
31 |
DLL_EXPORT const char *unicode_to_utf8(const unsigned short *string); |
32 |
|
33 |
DLL_EXPORT int vchannel_open(); |
34 |
DLL_EXPORT void vchannel_close(); |
35 |
|
36 |
DLL_EXPORT int vchannel_is_open(); |
37 |
|
38 |
/* read may only be used by a single process. write is completely safe */ |
39 |
DLL_EXPORT int vchannel_read(char *line, size_t length); |
40 |
DLL_EXPORT int vchannel_write(const char *command, const char *format, ...); |
41 |
|
42 |
DLL_EXPORT void vchannel_block(); |
43 |
DLL_EXPORT void vchannel_unblock(); |
44 |
|
45 |
DLL_EXPORT const char *vchannel_strfilter(char *string); |
46 |
DLL_EXPORT const char *vchannel_strfilter_unicode(const unsigned short *string); |
47 |
|
48 |
#endif |