This repository has been archived on 2024-04-08. You can view files and clone it, but cannot push or open issues or pull requests.
tsmpipe/tsmpipe.h
2018-03-21 00:13:36 +11:00

55 lines
2.4 KiB
C

#define TSMPIPE_VERSION 1
#define TSMPIPE_RELEASE 6
#define TSMPIPE_LEVEL 6
#define TSMPIPE_SUBLEVEL 0
#define INPUTLEN 1025
#define ACTION_INFO 1
#define ACTION_CREATE 2
#define ACTION_EXTRACT 3
#define ACTION_DELETE 4
#define ACTION_LIST 5
#define ACTION_UPDATE 6
#define ACTION_CREATE_UPDATE 7
#define ACTION_PASSWORD 8
#define ACTION_PURGE 9
#define DSM_COMM_TCPIP6 6 // There is no DSM_COMM_ const for TCPIPv6
// If you want to use MD5/SHA1 calculations as the data goes in here, ensure this is defined.
#define USE_DIGEST
#ifdef USE_DIGEST
#include <openssl/evp.h>
#endif
typedef int (*tsm_query_callback)(dsmQueryType, DataBlk *, void *, dsmBool_t friendly);
struct matchone_cb_data { int numfound; dsStruct64_t objId; dsUint32_t copyGroup; };
extern char *tsm_printerr (dsUint32_t dsmHandle, dsInt16_t rc);
extern void debugLog (int level, const char *func, char *message, int die);
extern dsmDate dsmStrToDate(char *s);
extern dsmObjName dsmNameToObjname(char *fsname, char *filename);
extern dsInt16_t tsm_queryfile(dsUint32_t sesshandle, dsmQueryType qType, tsm_query_callback usercb, void *userdata, qryArchiveData qaData, qryBackupData qbData, dsBool_t friendly);
extern dsUint32_t tsm_initsess(char *options, char *password);
extern dsBool_t compressEnabled;
extern int tsm_deletefile (dsUint32_t dsmHandle, dsmQueryType qType, qryArchiveData qaData, qryBackupData qbData);
extern int tsm_listfile (dsUint32_t dsmHandle, dsmQueryType qType, qryArchiveData qaData, qryBackupData qbData, dsBool_t friendly);
extern int tsm_restorefile(dsUint32_t dsmHandle, dsmQueryType qType, qryArchiveData qaData, qryBackupData qbData);
#ifdef USE_DIGEST
extern double tsm_sendfile (dsUint32_t dsmHandle, char *fsname, char *filename, long long length, char *description, dsmSendType sendtype, dsBool_t startstop, dsBool_t summary, char *digest);
#else
extern double tsm_sendfile (dsUint32_t dsmHandle, char *fsname, char *filename, long long length, char *description, dsmSendType sendtype, dsBool_t startstop, dsBoot_t summary);
#endif
extern int tsm_setpassword(char *options);
extern int tsm_sessioninfo(dsUint32_t dsmHandle);
extern int tsm_updatefs(dsUint32_t dsmHandle, char *fsname, long long size);
extern int tsm_datefs(dsUint32_t dsmHandle, char *fsname, int startstop);
extern char *dsmDateToStr(dsmDate date);
extern char *dsmObjnameToStr(dsmObjName objName);
extern double dsmSizeToNum(dsStruct64_t dsStruct64,dsBool_t inMB);