FreeRDP
Loading...
Searching...
No Matches
rpc_client.h
1
20#ifndef FREERDP_LIB_CORE_GATEWAY_RPC_CLIENT_H
21#define FREERDP_LIB_CORE_GATEWAY_RPC_CLIENT_H
22
23#include <winpr/wtypes.h>
24#include <winpr/stream.h>
25#include <freerdp/api.h>
26
27#include "rpc.h"
28
29WINPR_ATTR_NODISCARD
30FREERDP_LOCAL RpcClientCall* rpc_client_call_find_by_id(wLog* log, RpcClient* client,
31 UINT32 CallId);
32
33WINPR_ATTR_NODISCARD
34FREERDP_LOCAL BOOL rpc_client_call_add(wLog* log, RpcClient* client, RpcClientCall* call);
35
36FREERDP_LOCAL void rpc_client_call_advance(wLog* log, RpcClient* client, UINT32 CallId,
37 RPC_CLIENT_CALL_STATE expected, BOOL success);
38
39FREERDP_LOCAL void rpc_client_call_discard(wLog* log, RpcClient* client, UINT32 CallId);
40
41FREERDP_LOCAL void rpc_client_call_free(RpcClientCall* clientCall);
42
43WINPR_ATTR_MALLOC(rpc_client_call_free, 1)
44FREERDP_LOCAL RpcClientCall* rpc_client_call_new(UINT32 CallId, UINT32 OpNum);
45
46WINPR_ATTR_NODISCARD
47FREERDP_LOCAL int rpc_in_channel_send_pdu(RpcInChannel* inChannel, const BYTE* buffer,
48 size_t length);
49
50WINPR_ATTR_NODISCARD
51FREERDP_LOCAL int rpc_client_in_channel_recv(rdpRpc* rpc);
52
53WINPR_ATTR_NODISCARD
54FREERDP_LOCAL int rpc_client_out_channel_recv(rdpRpc* rpc);
55
56WINPR_ATTR_NODISCARD
57FREERDP_LOCAL int rpc_client_receive_pipe_read(RpcClient* client, BYTE* buffer, size_t length);
58
59WINPR_ATTR_NODISCARD
60FREERDP_LOCAL BOOL rpc_client_write_call(rdpRpc* rpc, wStream* s, UINT16 opnum);
61
62FREERDP_LOCAL void rpc_client_free(RpcClient* client);
63
64WINPR_ATTR_MALLOC(rpc_client_free, 1)
65WINPR_ATTR_NODISCARD
66FREERDP_LOCAL RpcClient* rpc_client_new(rdpContext* context, UINT32 max_recv_frag);
67
68#endif /* FREERDP_LIB_CORE_GATEWAY_RPC_CLIENT_H */