Fix delete operations
This commit is contained in:
parent
2c08c83b24
commit
80e513f9fb
22
tsmpipe.c
22
tsmpipe.c
@ -408,7 +408,7 @@ typedef int (*tsm_query_callback)(dsmQueryType, DataBlk *, void *);
|
||||
|
||||
dsInt16_t tsm_queryfile(dsUint32_t sesshandle, dsmObjName *objName,
|
||||
char *description, dsmSendType sendtype, char verbose,
|
||||
tsm_query_callback usercb, void * userdata, char *pitdate)
|
||||
tsm_query_callback usercb, void * userdata, char *pitdate, int querytype)
|
||||
{
|
||||
dsmQueryType qType;
|
||||
qryArchiveData qaData;
|
||||
@ -451,7 +451,7 @@ dsInt16_t tsm_queryfile(dsUint32_t sesshandle, dsmObjName *objName,
|
||||
qbData.stVersion = qryBackupDataVersion;
|
||||
qbData.objName = objName;
|
||||
qbData.owner = "";
|
||||
qbData.objState = DSM_ANY_MATCH;
|
||||
qbData.objState = querytype;
|
||||
|
||||
if (pitdate) {
|
||||
qbData.pitDate = xStringToDate(pitdate);
|
||||
@ -563,7 +563,7 @@ int tsm_matchone_cb(dsmQueryType qType, DataBlk *qResp, void * userdata)
|
||||
|
||||
|
||||
int tsm_deletefile(dsUint32_t sesshandle, char *fsname, char *filename,
|
||||
char *description, dsmSendType sendtype, char verbose, char *pitdate)
|
||||
char *description, dsmSendType sendtype, char verbose)
|
||||
{
|
||||
dsInt16_t rc;
|
||||
dsUint16_t reason=0;
|
||||
@ -583,7 +583,7 @@ int tsm_deletefile(dsUint32_t sesshandle, char *fsname, char *filename,
|
||||
|
||||
cbdata.numfound = 0;
|
||||
rc = tsm_queryfile(sesshandle, &objName, description, sendtype,
|
||||
verbose, tsm_matchone_cb, &cbdata, pitdate);
|
||||
verbose, tsm_matchone_cb, &cbdata, NULL, DSM_ACTIVE);
|
||||
if(rc != DSM_RC_OK) {
|
||||
return 0;
|
||||
}
|
||||
@ -659,7 +659,7 @@ int tsm_restorefile(dsUint32_t sesshandle, char *fsname, char *filename,
|
||||
cbdata.numfound = 0;
|
||||
|
||||
rc = tsm_queryfile(sesshandle, &objName, description, sendtype,
|
||||
verbose, tsm_matchone_cb, &cbdata, pitdate);
|
||||
verbose, tsm_matchone_cb, &cbdata, pitdate, DSM_ANY_MATCH);
|
||||
if(rc != DSM_RC_OK) {
|
||||
return 0;
|
||||
}
|
||||
@ -729,18 +729,18 @@ int tsm_restorefile(dsUint32_t sesshandle, char *fsname, char *filename,
|
||||
}
|
||||
|
||||
// Display the dsmDate value as a string
|
||||
static void QryDateToStr(char *s,dsmDate date)
|
||||
void QryDateToStr(char *s,dsmDate date)
|
||||
{
|
||||
sprintf(s,"%i/%02i/%02i %02i:%02i:%02i",
|
||||
date.year,
|
||||
sprintf(s,"%02i/%02i/%02i %02i:%02i:%02i",
|
||||
(dsInt16_t)date.month,
|
||||
(dsInt16_t)date.day,
|
||||
date.year,
|
||||
(dsInt16_t)date.hour,
|
||||
(dsInt16_t)date.minute,
|
||||
(dsInt16_t)date.second);
|
||||
}
|
||||
|
||||
static dsmDate xStringToDate(char *s)
|
||||
dsmDate xStringToDate(char *s)
|
||||
{
|
||||
dsUint32_t temp;
|
||||
dsUint32_t temp1;
|
||||
@ -837,7 +837,7 @@ int tsm_listfile(dsUint32_t sesshandle, char *fsname, char *filename,
|
||||
}
|
||||
|
||||
rc = tsm_queryfile(sesshandle, &objName, description, sendtype,
|
||||
verbose, tsm_listfile_cb, NULL, pitdate);
|
||||
verbose, tsm_listfile_cb, NULL, pitdate, DSM_ANY_MATCH);
|
||||
if(rc != DSM_RC_OK && rc != DSM_RC_ABORT_NO_MATCH) {
|
||||
return 0;
|
||||
}
|
||||
@ -1033,7 +1033,7 @@ int main(int argc, char *argv[]) {
|
||||
}
|
||||
|
||||
if(delete) {
|
||||
if(!tsm_deletefile(sesshandle, space, filename, desc, sendtype, verbose, pitdate)) {
|
||||
if(!tsm_deletefile(sesshandle, space, filename, desc, sendtype, verbose)) {
|
||||
dsmTerminate(sesshandle);
|
||||
exit(7);
|
||||
}
|
||||
|
Reference in New Issue
Block a user