globus_connect_gridftp_server  16.9
/build/globus-connect-gridftp-server-16.9/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 
12 typedef globus_gfs_finished_info_t globus_gfs_data_reply_t;
13 typedef globus_gfs_event_info_t globus_gfs_data_event_reply_t;
14 
15 typedef void
16 (*globus_i_gfs_data_callback_t)(
17  globus_gfs_data_reply_t * reply,
18  void * user_arg);
19 
20 typedef void
21 (*globus_i_gfs_data_event_callback_t)(
22  globus_gfs_data_event_reply_t * reply,
23  void * user_arg);
24 
25 void
26 globus_i_gfs_data_init();
27 
28 void
29 globus_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 
37 void
38 globus_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 
47 void
48 globus_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 
57 void
58 globus_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 
67 void
68 globus_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 
76 void
77 globus_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 
85 void
86 globus_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 
94 void
95 globus_i_gfs_data_request_handle_destroy(
96  globus_gfs_ipc_handle_t ipc_handle,
97  void * session_arg,
98  void * data_arg);
99 
100 void
101 globus_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 
106 void
107 globus_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 
112 void
113 globus_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 
120 void
121 globus_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 
128 void
129 globus_i_gfs_data_session_stop(
130  globus_gfs_ipc_handle_t ipc_handle,
131  void * session_arg);
132 
133 globus_result_t
134 globus_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 
141 globus_result_t
142 globus_i_gfs_data_virtualize_path(
143  void * session_arg,
144  char * in_string,
145  char ** ret_string);
146 
147 char *
148 globus_i_gfs_kv_getval(
149  const char * kvstring,
150  const char * key,
151  globus_bool_t urldecode);
152 
153 char *
154 globus_i_gfs_kv_replaceval(
155  char * kvstring,
156  char * key,
157  char * new_val,
158  globus_bool_t encode);
159 
160 char *
161 globus_i_gfs_data_dsi_version();
162 
163 int
164 globus_i_gfs_data_dsi_descriptor();
165 
166 const char *
167 globus_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