globus_connect_gridftp_server 16.16~rc1
Loading...
Searching...
No Matches
/build/globus-connect-gridftp-server-16.16~rc1/globus_i_gfs_data.h
1/*
2 * Copyright The University of Chicago
3 *
4 * All Rights Reserved.
5 */
6
7#ifndef GLOBUS_I_GFS_DATA_H
8#define GLOBUS_I_GFS_DATA_H
9
10#include "globus_i_gridftp_server.h"
11
12typedef globus_gfs_finished_info_t globus_gfs_data_reply_t;
13typedef globus_gfs_event_info_t globus_gfs_data_event_reply_t;
14
15typedef void
16(*globus_i_gfs_data_callback_t)(
17 globus_gfs_data_reply_t * reply,
18 void * user_arg);
19
20typedef void
21(*globus_i_gfs_data_event_callback_t)(
22 globus_gfs_data_event_reply_t * reply,
23 void * user_arg);
24
25void
26globus_i_gfs_data_init();
27
28void
29globus_i_gfs_data_request_stat(
30 globus_gfs_ipc_handle_t ipc_handle,
31 void * session_arg,
32 int id,
33 globus_gfs_stat_info_t * stat_info,
34 globus_i_gfs_data_callback_t cb,
35 void * user_arg);
36
37void
38globus_i_gfs_data_request_recv(
39 globus_gfs_ipc_handle_t ipc_handle,
40 void * session_arg,
41 int id,
42 globus_gfs_transfer_info_t * recv_info,
43 globus_i_gfs_data_callback_t cb,
44 globus_i_gfs_data_event_callback_t event_cb,
45 void * user_arg);
46
47void
48globus_i_gfs_data_request_send(
49 globus_gfs_ipc_handle_t ipc_handle,
50 void * session_arg,
51 int id,
52 globus_gfs_transfer_info_t * send_info,
53 globus_i_gfs_data_callback_t cb,
54 globus_i_gfs_data_event_callback_t event_cb,
55 void * user_arg);
56
57void
58globus_i_gfs_data_request_list(
59 globus_gfs_ipc_handle_t ipc_handle,
60 void * session_arg,
61 int id,
62 globus_gfs_transfer_info_t * list_info,
63 globus_i_gfs_data_callback_t cb,
64 globus_i_gfs_data_event_callback_t event_cb,
65 void * user_arg);
66
67void
68globus_i_gfs_data_request_command(
69 globus_gfs_ipc_handle_t ipc_handle,
70 void * session_arg,
71 int id,
72 globus_gfs_command_info_t * command_info,
73 globus_i_gfs_data_callback_t cb,
74 void * user_arg);
75
76void
77globus_i_gfs_data_request_passive(
78 globus_gfs_ipc_handle_t ipc_handle,
79 void * session_arg,
80 int id,
81 globus_gfs_data_info_t * data_info,
82 globus_i_gfs_data_callback_t cb,
83 void * user_arg);
84
85void
86globus_i_gfs_data_request_active(
87 globus_gfs_ipc_handle_t ipc_handle,
88 void * session_arg,
89 int id,
90 globus_gfs_data_info_t * data_info,
91 globus_i_gfs_data_callback_t cb,
92 void * user_arg);
93
94void
95globus_i_gfs_data_request_handle_destroy(
96 globus_gfs_ipc_handle_t ipc_handle,
97 void * session_arg,
98 void * data_arg);
99
100void
101globus_i_gfs_data_request_transfer_event(
102 globus_gfs_ipc_handle_t ipc_handle,
103 void * session_arg,
104 globus_gfs_event_info_t * event_info);
105
106void
107globus_i_gfs_data_request_set_cred(
108 globus_gfs_ipc_handle_t ipc_handle,
109 void * session_arg,
110 gss_cred_id_t del_cred);
111
112void
113globus_i_gfs_data_request_buffer_send(
114 globus_gfs_ipc_handle_t ipc_handle,
115 void * session_arg,
116 globus_byte_t * buffer,
117 int buffer_type,
118 globus_size_t buffer_len);
119
120void
121globus_i_gfs_data_session_start(
122 globus_gfs_ipc_handle_t ipc_handle,
123 const gss_ctx_id_t context,
124 globus_gfs_session_info_t * session_info,
125 globus_i_gfs_data_callback_t cb,
126 void * user_arg);
127
128void
129globus_i_gfs_data_session_stop(
130 globus_gfs_ipc_handle_t ipc_handle,
131 void * session_arg);
132
133globus_result_t
134globus_i_gfs_data_check_path(
135 void * session_arg,
136 char * in_path,
137 char ** ret_path,
138 int access_type,
139 globus_bool_t is_virtual);
140
141globus_result_t
142globus_i_gfs_data_virtualize_path(
143 void * session_arg,
144 char * in_string,
145 char ** ret_string);
146
147char *
148globus_i_gfs_kv_getval(
149 const char * kvstring,
150 const char * key,
151 globus_bool_t urldecode);
152
153char *
154globus_i_gfs_kv_replaceval(
155 char * kvstring,
156 char * key,
157 char * new_val,
158 globus_bool_t encode);
159
160char *
161globus_i_gfs_data_dsi_version();
162
163int
164globus_i_gfs_data_dsi_descriptor();
165
166const char *
167globus_i_gfs_data_dsi_checksum_support(
168 void * session_arg);
169
170#define GFS_L_READ 1<<0
171#define GFS_L_WRITE 1<<1
172#define GFS_L_LIST 1<<2
173#define GFS_L_DIR 1<<3
174#define GFS_L_NONE 1<<4
175
176#endif