cscg24-guacamole

CSCG 2024 Challenge 'Guacamole Mashup'
git clone https://git.sinitax.com/sinitax/cscg24-guacamole
Log | Files | Refs | sfeed.txt

channels.h (2637B)


      1/**
      2 * FreeRDP: A Remote Desktop Protocol Implementation
      3 * Virtual Channel Manager
      4 *
      5 * Copyright 2009-2011 Jay Sorg
      6 * Copyright 2010-2011 Vic Lee
      7 *
      8 * Licensed under the Apache License, Version 2.0 (the "License");
      9 * you may not use this file except in compliance with the License.
     10 * You may obtain a copy of the License at
     11 *
     12 *     http://www.apache.org/licenses/LICENSE-2.0
     13 *
     14 * Unless required by applicable law or agreed to in writing, software
     15 * distributed under the License is distributed on an "AS IS" BASIS,
     16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     17 * See the License for the specific language governing permissions and
     18 * limitations under the License.
     19 */
     20
     21#ifndef FREERDP_CHANNELS_H
     22#define FREERDP_CHANNELS_H
     23
     24#include <winpr/crt.h>
     25#include <winpr/wtsapi.h>
     26
     27#include <freerdp/api.h>
     28#include <freerdp/types.h>
     29#include <freerdp/freerdp.h>
     30
     31#ifdef __cplusplus
     32extern "C"
     33{
     34#endif
     35
     36	FREERDP_API int freerdp_channels_client_load(rdpChannels* channels, rdpSettings* settings,
     37	                                             PVIRTUALCHANNELENTRY entry, void* data);
     38	FREERDP_API int freerdp_channels_client_load_ex(rdpChannels* channels, rdpSettings* settings,
     39	                                                PVIRTUALCHANNELENTRYEX entryEx, void* data);
     40	FREERDP_API int freerdp_channels_load_plugin(rdpChannels* channels, rdpSettings* settings,
     41	                                             const char* name, void* data);
     42	FREERDP_API BOOL freerdp_channels_get_fds(rdpChannels* channels, freerdp* instance,
     43	                                          void** read_fds, int* read_count, void** write_fds,
     44	                                          int* write_count);
     45	FREERDP_API BOOL freerdp_channels_check_fds(rdpChannels* channels, freerdp* instance);
     46
     47	FREERDP_API void* freerdp_channels_get_static_channel_interface(rdpChannels* channels,
     48	                                                                const char* name);
     49
     50	FREERDP_API HANDLE freerdp_channels_get_event_handle(freerdp* instance);
     51	FREERDP_API int freerdp_channels_process_pending_messages(freerdp* instance);
     52
     53	FREERDP_API BOOL freerdp_channels_data(freerdp* instance, UINT16 channelId, const BYTE* data,
     54	                                       size_t dataSize, UINT32 flags, size_t totalSize);
     55
     56	FREERDP_API UINT16 freerdp_channels_get_id_by_name(freerdp* instance, const char* channel_name);
     57	FREERDP_API const char* freerdp_channels_get_name_by_id(freerdp* instance, UINT16 channelId);
     58
     59	FREERDP_API PWtsApiFunctionTable FreeRDP_InitWtsApi(void);
     60
     61#ifdef __cplusplus
     62}
     63#endif
     64
     65#endif /* FREERDP_CHANNELS_H */