00001
00002
00003
00004
00005
00006 #include "dataObjCreate.h"
00007 #include "dataObjCreateAndStat.h"
00008 #include "rodsLog.h"
00009 #include "rsGlobalExtern.h"
00010 #include "rcGlobalExtern.h"
00011 #include "reGlobalsExtern.h"
00012
00013 int
00014 rsDataObjCreateAndStat (rsComm_t *rsComm, dataObjInp_t *dataObjInp,
00015 openStat_t **openStat)
00016 {
00017 int status;
00018
00019 status = rsDataObjCreate (rsComm, dataObjInp);
00020
00021 if (status >= 0) {
00022 *openStat = (openStat_t*)malloc (sizeof (openStat_t));
00023 (*openStat)->dataSize = L1desc[status].dataObjInfo->dataSize;
00024 rstrcpy ((*openStat)->dataMode, L1desc[status].dataObjInfo->dataMode,
00025 SHORT_STR_LEN);
00026 rstrcpy ((*openStat)->dataType, L1desc[status].dataObjInfo->dataType,
00027 NAME_LEN);
00028 (*openStat)->l3descInx = L1desc[status].l3descInx;
00029 (*openStat)->replStatus = L1desc[status].replStatus;
00030 (*openStat)->replNum = L1desc[status].dataObjInfo->replNum;
00031 } else {
00032 *openStat = NULL;
00033 }
00034
00035 return (status);
00036 }
00037