13 #include <openssl/md5.h>
16 #include "gridftp_hdfs_error.h"
24 #pragma GCC visibility push(hidden)
27 #define default_id 00;
31 extern globus_version_t gridftp_hdfs_local_version;
33 #define HDFS_CKSM_TYPE_CKSUM 1
34 #define HDFS_CKSM_TYPE_CRC32 2
35 #define HDFS_CKSM_TYPE_ADLER32 4
36 #define HDFS_CKSM_TYPE_MD5 8
38 typedef struct globus_l_gfs_hdfs_handle_s
43 globus_off_t file_size;
45 globus_off_t op_length;
50 globus_gfs_operation_t op;
52 globus_off_t * offsets;
56 unsigned int max_buffer_count;
57 unsigned int max_file_buffer_count;
58 unsigned int buffer_count;
59 unsigned int outstanding;
64 unsigned int mount_point_len;
65 unsigned int replicas;
67 char * tmp_file_pattern;
74 unsigned int io_block_size;
75 unsigned long long io_count;
80 const char * cksm_root;
81 unsigned char cksm_types;
83 char md5_output[MD5_DIGEST_LENGTH];
84 char md5_output_human[MD5_DIGEST_LENGTH*2+1];
86 char adler32_human[2*
sizeof(uint32_t)+1];
89 } globus_l_gfs_hdfs_handle_t;
90 typedef globus_l_gfs_hdfs_handle_t hdfs_handle_t;
93 extern char err_msg[MSG_SIZE];
98 globus_gfs_operation_t op,
99 globus_gfs_transfer_info_t * transfer_info,
106 globus_gfs_operation_t op,
107 globus_gfs_transfer_info_t * transfer_info,
113 globus_l_gfs_hdfs_handle_t * hdfs_handle,
120 globus_l_gfs_hdfs_handle_t * hdfs_handle);
123 hdfs_dump_buffer_immed(
124 hdfs_handle_t * hdfs_handle,
131 hdfs_handle_t * hdfs_handle,
136 hdfs_handle_t * hdfs_handle,
141 hdfs_handle_t * hdfs_handle);
145 hdfs_handle_t * hdfs_handle,
150 hdfs_handle_t * hdfs_handle);
156 globus_gfs_operation_t op,
157 globus_gfs_stat_info_t * stat_info,
164 hdfs_handle_t * hdfs_handle,
169 hdfs_handle_t * hdfs_handle,
174 hdfs_handle_t * hdfs_handle);
178 hdfs_handle_t * hdfs_handle);
182 hdfs_parse_checksum_types(
183 hdfs_handle_t * hdfs_handle,
187 hdfs_initialize_checksums(
188 hdfs_handle_t * hdfs_handle);
191 hdfs_update_checksums(
192 hdfs_handle_t * hdfs_handle,
197 hdfs_finalize_checksums(
198 hdfs_handle_t * hdfs_handle);
202 hdfs_handle_t * hdfs_handle);
206 hdfs_handle_t * hdfs_handle,
207 const char * pathname,
208 const char * requested_cksm,
211 #pragma GCC visibility pop
int globus_bool_t
Boolean type.
Definition: globus_types.h:93
Mutex.
Definition: globus_thread.h:107
size_t globus_size_t
Standard size of memory objectThe globus_size_t is the size of a memory object. It is identical to si...
Definition: globus_types.h:48
unsigned char globus_byte_t
Unsigned byte datatypeThis is used for byte-addressable arrays of arbitrary data which is not subject...
Definition: globus_types.h:85
uint32_t globus_result_t
Definition: globus_types.h:99