FreeRDP
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Modules Pages
sshagent.h
1
20#ifndef FREERDP_CHANNEL_CLIENT_SSHAGENT_H
21#define FREERDP_CHANNEL_CLIENT_SSHAGENT_H
22
23#include <freerdp/api.h>
24#include <freerdp/types.h>
25
26#include <freerdp/message.h>
27#include <freerdp/channels/cliprdr.h>
28
29#ifdef __cplusplus
30extern "C"
31{
32#endif
33
34 typedef struct
35 {
36 int ProtocolVersion;
37 int MaxConnections;
39
40 /*
41 * The channel is defined by the sshagent channel in xrdp as follows.
42 *
43 * Server to client commands
44 * -------------------------
45 *
46 * Capabilities (at start of channel stream):
47 *
48 * INT32 SA_TAG_CAPABILITY
49 * INT32 SSHAGENT_CHAN_PROT_VERSION := 1
50 * INT32 SSHAGENT_MAX_CONNECTIONS
51 *
52 * Open connection:
53 *
54 * INT32 SA_TAG_OPEN
55 * INT32 Connection id (0, ..., SSHAGENT_MAX_CONNECTIONS - 1)
56 *
57 * Send data:
58 *
59 * INT32 SA_TAG_WRITE
60 * INT32 Connection id (0, ..., SSHAGENT_MAX_CONNECTIONS - 1)
61 * INT32 Data length
62 * DATA ...
63 *
64 * Close connection:
65 *
66 * INT32 SA_TAG_CLOSE
67 * INT32 Connection id (0, ..., SSHAGENT_MAX_CONNECTIONS - 1)
68 *
69 * Client to server commands
70 * -------------------------
71 *
72 * Capabilities (in reply to server capabilities):
73 *
74 * INT32 SA_TAG_CAPABILITY
75 * INT32 SSHAGENT_CHAN_PROT_VERSION := 1
76 * INT32 SSHAGENT_MAX_CONNECTIONS
77 *
78 * Send data:
79 *
80 * INT32 SA_TAG_WRITE
81 * INT32 Connection id (0, ..., SSHAGENT_MAX_CONNECTIONS - 1)
82 * INT32 Data length
83 * DATA ...
84 *
85 * Close connection (abnormal):
86 *
87 * INT32 SA_TAG_CLOSE
88 * INT32 Connection id (0, ..., SSHAGENT_MAX_CONNECTIONS - 1)
89 */
90
91#ifdef __cplusplus
92}
93#endif
94
95#endif /* FREERDP_CHANNEL_CLIENT_SSHAGENT_H */