irods  4.2.8
About: iRODS (the integrated Rule Oriented Data System) is a distributed data-management system for creating data grids, digital libraries, persistent archives, and real-time data systems.
  Fossies Dox: irods-4.2.8.tar.gz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

dataObjInpOut.h
Go to the documentation of this file.
1 
6 
10 #ifndef DATA_OBJ_INP_OUT_H__
11 #define DATA_OBJ_INP_OUT_H__
12 
13 #include "rodsDef.h"
14 #include "rodsType.h"
15 #include "objInfo.h"
16 
17 #if defined(aix_platform)
18 #ifndef _AIX_PTHREADS_D7
19 #define pthread_mutexattr_default NULL
20 #define pthread_condattr_default NULL
21 #define pthread_attr_default NULL
22 #endif /* _AIX_PTHREADS_D7 */
23 #else /* aix_platform */
24 #define pthread_mutexattr_default NULL
25 #define pthread_condattr_default NULL
26 #define pthread_attr_default NULL
27 #endif /* aix_platform */
28 
29 typedef struct {
30  int portNum; /* the port number */
31  int cookie;
32  int sock; /* The server's sock number. no meaning for client */
34  char hostAddr[LONG_NAME_LEN];
35 } portList_t;
36 
65 typedef struct DataObjInp {
68  int openFlags; /* used for specCollInx in rcQuerySpecColl */
72  int oprType;
74  keyValPair_t condInput; /* include chksum flag and value */
76 
104 typedef struct OpenedDataObjInp {
105  int l1descInx; /* for read, write, close */
106  int len; /* length of operation for read, write */
107  int whence; /* used for lseek */
108  int oprType;
110  rodsLong_t bytesWritten; /* for close */
111  keyValPair_t condInput; /* include chksum flag and value */
113 
114 typedef struct portalOprOut {
115  int status;
121 
122 typedef struct DataOprInp {
123  int oprType;
129  /* XXXXXXX offset and dataSize moved to here because of problem with
130  * 64 bit susue linux that condInput has pointer's in it which
131  * cause condInput to be aligned at 64 the beginning and end of condInput */
136 
157 typedef struct CollInp {
159  int flags;
160  int oprType;
163 
164 /* definition for oprType in dataObjInp_t, portalOpr_t and l1desc_t */
165 
166 #define DONE_OPR 9999
167 #define PUT_OPR 1
168 #define GET_OPR 2
169 #define SAME_HOST_COPY_OPR 3
170 #define COPY_TO_LOCAL_OPR 4
171 #define COPY_TO_REM_OPR 5
172 #define REPLICATE_OPR 6
173 #define REPLICATE_DEST 7
174 #define REPLICATE_SRC 8
175 #define COPY_DEST 9
176 #define COPY_SRC 10
177 #define RENAME_DATA_OBJ 11
178 #define RENAME_COLL 12
179 #define MOVE_OPR 13
180 #define RSYNC_OPR 14
181 #define PHYMV_OPR 15
182 #define PHYMV_SRC 16
183 #define PHYMV_DEST 17
184 #define QUERY_DATA_OBJ 18
185 #define QUERY_DATA_OBJ_RECUR 19
186 #define QUERY_COLL_OBJ 20
187 #define QUERY_COLL_OBJ_RECUR 21
188 #define RENAME_UNKNOWN_TYPE 22
189 #define REMOTE_ZONE_OPR 24
190 #define UNREG_OPR 26
191 
192 /* definition for openType in l1desc_t */
193 #define CREATE_TYPE 1
194 #define OPEN_FOR_READ_TYPE 2
195 #define OPEN_FOR_WRITE_TYPE 3
196 
197 typedef struct PortalOpr {
198  int oprType;
201  char shared_secret[ NAME_LEN ]; // shared secret for encryption
203 
204 /* definition for flags */
205 #define STREAMING_FLAG 0x1
206 #define NO_CHK_COPY_LEN_FLAG 0x2
207 
208 typedef struct TransferHeader {
209  int oprType;
210  int flags;
214 
215 #endif // DATA_OBJ_INP_OUT_H__
DataObjInp::objPath
char objPath[(1024+64)]
Definition: dataObjInpOut.h:66
OpenedDataObjInp
Definition: dataObjInpOut.h:104
DataOprInp::condInput
keyValPair_t condInput
Definition: dataObjInpOut.h:134
DataObjInp::openFlags
int openFlags
Definition: dataObjInpOut.h:68
portalOprOut
Definition: dataObjInpOut.h:114
CollInp
Definition: dataObjInpOut.h:157
DataObjInp::specColl
specColl_t * specColl
Definition: dataObjInpOut.h:73
transferHeader_t
struct TransferHeader transferHeader_t
PortalOpr::shared_secret
char shared_secret[64]
Definition: dataObjInpOut.h:201
DataObjInp::dataSize
rodsLong_t dataSize
Definition: dataObjInpOut.h:70
PortalOpr::dataOprInp
dataOprInp_t dataOprInp
Definition: dataObjInpOut.h:199
OpenedDataObjInp::l1descInx
int l1descInx
Definition: dataObjInpOut.h:105
DataOprInp::srcL3descInx
int srcL3descInx
Definition: dataObjInpOut.h:125
DataOprInp::numThreads
int numThreads
Definition: dataObjInpOut.h:124
LONG_NAME_LEN
#define LONG_NAME_LEN
Definition: rodsDef.h:57
collInp_t
struct CollInp collInp_t
SpecColl
Definition: objInfo.h:76
OpenedDataObjInp::whence
int whence
Definition: dataObjInpOut.h:107
portalOprOut::status
int status
Definition: dataObjInpOut.h:115
CollInp::flags
int flags
Definition: dataObjInpOut.h:159
TransferHeader::flags
int flags
Definition: dataObjInpOut.h:210
portList_t::portNum
int portNum
Definition: dataObjInpOut.h:30
portList_t::windowSize
int windowSize
Definition: dataObjInpOut.h:33
portalOpr_t
struct PortalOpr portalOpr_t
PortalOpr
Definition: dataObjInpOut.h:197
TransferHeader
Definition: dataObjInpOut.h:208
PortalOpr::portList
portList_t portList
Definition: dataObjInpOut.h:200
OpenedDataObjInp::bytesWritten
rodsLong_t bytesWritten
Definition: dataObjInpOut.h:110
rodsType.h
OpenedDataObjInp::len
int len
Definition: dataObjInpOut.h:106
rodsDef.h
DataObjInp
Definition: dataObjInpOut.h:65
MAX_NAME_LEN
#define MAX_NAME_LEN
Definition: rodsDef.h:61
CollInp::condInput
keyValPair_t condInput
Definition: dataObjInpOut.h:161
portalOprOut::portList
portList_t portList
Definition: dataObjInpOut.h:119
portList_t
Definition: dataObjInpOut.h:29
DataObjInp::createMode
int createMode
Definition: dataObjInpOut.h:67
portalOprOut::l1descInx
int l1descInx
Definition: dataObjInpOut.h:116
TransferHeader::offset
rodsLong_t offset
Definition: dataObjInpOut.h:211
OpenedDataObjInp::condInput
keyValPair_t condInput
Definition: dataObjInpOut.h:111
objInfo.h
TransferHeader::length
rodsLong_t length
Definition: dataObjInpOut.h:212
portalOprOut::chksum
char chksum[64]
Definition: dataObjInpOut.h:118
DataOprInp::offset
rodsLong_t offset
Definition: dataObjInpOut.h:132
DataOprInp::srcRescTypeInx
int srcRescTypeInx
Definition: dataObjInpOut.h:127
portList_t::sock
int sock
Definition: dataObjInpOut.h:32
DataObjInp::oprType
int oprType
Definition: dataObjInpOut.h:72
dataOprInp_t
struct DataOprInp dataOprInp_t
portalOprOut_t
struct portalOprOut portalOprOut_t
portalOprOut::numThreads
int numThreads
Definition: dataObjInpOut.h:117
DataOprInp
Definition: dataObjInpOut.h:122
DataOprInp::destL3descInx
int destL3descInx
Definition: dataObjInpOut.h:126
CollInp::collName
char collName[(1024+64)]
Definition: dataObjInpOut.h:158
OpenedDataObjInp::offset
rodsLong_t offset
Definition: dataObjInpOut.h:109
DataOprInp::oprType
int oprType
Definition: dataObjInpOut.h:123
DataObjInp::condInput
keyValPair_t condInput
Definition: dataObjInpOut.h:74
portList_t::cookie
int cookie
Definition: dataObjInpOut.h:31
NAME_LEN
#define NAME_LEN
Definition: rodsDef.h:55
KeyValPair
Definition: objInfo.h:120
DataObjInp::offset
rodsLong_t offset
Definition: dataObjInpOut.h:69
OpenedDataObjInp::oprType
int oprType
Definition: dataObjInpOut.h:108
dataObjInp_t
struct DataObjInp dataObjInp_t
DataOprInp::dataSize
rodsLong_t dataSize
Definition: dataObjInpOut.h:133
DataObjInp::numThreads
int numThreads
Definition: dataObjInpOut.h:71
TransferHeader::oprType
int oprType
Definition: dataObjInpOut.h:209
openedDataObjInp_t
struct OpenedDataObjInp openedDataObjInp_t
DataOprInp::destRescTypeInx
int destRescTypeInx
Definition: dataObjInpOut.h:128
rodsLong_t
long long rodsLong_t
Definition: rodsType.h:32
CollInp::oprType
int oprType
Definition: dataObjInpOut.h:160
PortalOpr::oprType
int oprType
Definition: dataObjInpOut.h:198