int rsModDataObjMeta( rsComm_t *rsComm, modDataObjMeta_t *modDataObjMetaInp ) { int status; rodsServerHost_t *rodsServerHost = NULL; dataObjInfo_t *dataObjInfo; dataObjInfo = modDataObjMetaInp->dataObjInfo; status = getAndConnRcatHost( rsComm, MASTER_RCAT, dataObjInfo->objPath, &rodsServerHost ); if ( status < 0 || NULL == rodsServerHost ) { // JMC cppcheck - nullptr return( status ); } if ( rodsServerHost->localFlag == LOCAL_HOST ) { #ifdef RODS_CAT status = _rsModDataObjMeta( rsComm, modDataObjMetaInp ); #else status = SYS_NO_RCAT_SERVER_ERR; #endif } else { status = rcModDataObjMeta( rodsServerHost->conn, modDataObjMetaInp ); } if ( status >= 0 ) { status = _call_file_modified_for_modification( rsComm, modDataObjMetaInp ); } return ( status ); }
int rsModDataObjMeta (rsComm_t *rsComm, modDataObjMeta_t *modDataObjMetaInp) { int status; rodsServerHost_t *rodsServerHost = NULL; dataObjInfo_t *dataObjInfo; keyValPair_t *regParam; regParam = modDataObjMetaInp->regParam; dataObjInfo = modDataObjMetaInp->dataObjInfo; status = getAndConnRcatHost (rsComm, MASTER_RCAT, dataObjInfo->objPath, &rodsServerHost); if (status < 0) { return(status); } if (rodsServerHost->localFlag == LOCAL_HOST) { #ifdef RODS_CAT status = _rsModDataObjMeta (rsComm, modDataObjMetaInp); #else status = SYS_NO_RCAT_SERVER_ERR; #endif } else { status = rcModDataObjMeta (rodsServerHost->conn, modDataObjMetaInp); if (getIrodsErrno (status) == SYS_HEADER_READ_LEN_ERR || getIrodsErrno (status) == SYS_HEADER_WRITE_LEN_ERR) { /* this connection may be broken. try again */ int status1 = svrToSvrReConnect (rsComm, rodsServerHost); if (status1 >= 0) { status = rcModDataObjMeta (rodsServerHost->conn, modDataObjMetaInp); } } } return (status); }