17 #ifndef GLOBUS_I_GRIDFTP_SERVER_H 18 #define GLOBUS_I_GRIDFTP_SERVER_H 20 #include "globus_i_gridftp_server_config.h" 22 #include "globus_gridftp_server_control.h" 23 #include "globus_i_gfs_acl.h" 24 #include "globus_xio.h" 25 #include "globus_xio_system.h" 30 #include "globus_usage.h" 32 #define _GSSL(s) globus_common_i18n_get_string_by_key(\ 34 "globus_gridftp_server", \ 37 #define _FSSL(s,p) globus_common_i18n_get_string_by_key(\ 39 "globus_gridftp_server", \ 43 (*globus_i_gfs_server_close_cb_t)(
45 globus_object_t * error);
47 typedef struct globus_i_gfs_monitor_s
52 } globus_i_gfs_monitor_t;
54 typedef struct gfs_i_stack_entry_s
56 globus_xio_driver_t driver;
59 } gfs_i_stack_entry_t;
70 } globus_i_gfs_cmd_ent_t;
72 typedef struct globus_i_gfs_op_info_s
75 globus_hashtable_t custom_command_table;
79 globus_i_gfs_cmd_ent_t * cmd_ent;
82 } globus_i_gfs_op_info_t;
85 globus_i_gfs_monitor_init(
86 globus_i_gfs_monitor_t * monitor);
89 globus_i_gfs_monitor_destroy(
90 globus_i_gfs_monitor_t * monitor);
93 globus_i_gfs_monitor_wait(
94 globus_i_gfs_monitor_t * monitor);
97 globus_i_gfs_monitor_signal(
98 globus_i_gfs_monitor_t * monitor);
101 globus_i_gfs_ipc_stop();
104 globus_i_gfs_control_stop();
107 globus_i_gfs_control_init();
110 globus_i_gfs_brain_init(
112 void * ready_cb_arg);
115 globus_i_gfs_control_end_421(
119 globus_l_gfs_data_brain_ready(
123 globus_i_gfs_get_full_path(
124 const char * home_dir,
125 const char * server_cwd,
127 const char * in_path,
131 #define GlobusGFSErrorGenericStr(_res, _fmt) \ 135 _tmp_str = globus_common_create_string _fmt; \ 136 _res = globus_error_put( \ 137 globus_error_construct_error( \ 140 GLOBUS_GFS_ERROR_GENERIC, \ 146 globus_free(_tmp_str); \ 150 extern globus_gfs_acl_module_t globus_gfs_acl_cas_module;
151 extern globus_gfs_acl_module_t globus_gfs_acl_test_module;
153 typedef enum globus_l_gfs_auth_level_e
155 GLOBUS_L_GFS_AUTH_NONE = 0x00,
156 GLOBUS_L_GFS_AUTH_IDENTIFY = 0x01,
157 GLOBUS_L_GFS_AUTH_ACTION = 0x02,
158 GLOBUS_L_GFS_AUTH_NOSETUID = 0x04,
159 GLOBUS_L_GFS_AUTH_NOGRIDMAP = 0x08,
160 GLOBUS_L_GFS_AUTH_DATA_NODE_PATH = 0x10,
161 GLOBUS_L_GFS_AUTH_ALL = 0xFF
162 } globus_l_gfs_auth_level_t;
164 #include "globus_i_gfs_log.h" 165 #include "globus_i_gfs_control.h" 166 #include "globus_i_gfs_ipc.h" 167 #include "globus_i_gfs_data.h" 168 #include "globus_i_gfs_config.h" GridFTP Control Connection API.
int globus_bool_t
Boolean type.
Definition: globus_types.h:93
Header file for XIO TCP Driver.
Mutex.
Definition: globus_thread.h:107
Condition variable.
Definition: globus_thread.h:124
uint32_t globus_result_t
Definition: globus_types.h:99
void(* globus_callback_func_t)(void *user_arg)
Globus callback prototype.
Definition: globus_callback.h:314