/*********************************************************************** * * Copyright (C) 2005-2006 Novell, Inc. All Rights Reserved. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; version 2.1 * of the License. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Library Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, Novell, Inc. * * To contact Novell about this file by physical or electronic mail, * you may find current contact information at www.novell.com. * ***********************************************************************/ #if ! defined ( NWMIGRAT_H ) #define NWMIGRAT_H #if ! defined ( NTYPES_H ) # include "ntypes.h" #endif #if ! defined ( NWCALDEF_H ) # include "nwcaldef.h" #endif #include "npackon.h" #ifdef __cplusplus extern "C" { #endif #define MAX_NUM_OF_DATA_STREAMS 3 #define MAX_SIZE_OF_SM_STRING 128 #define MAX_SIZE_OF_SM_INFO 128 #define MAX_NUM_OF_SM 32 #define ERR_INVALID_SM_ID 240 #define ERR_SM_ALREADY_REGISTERED 241 #define ERR_SM_CREATE_FAILED 242 #define ERR_SM_CLOSE_FAILED 243 #define ERR_SM_WRITE_NO_SPACE 244 #define ERR_SM_WRITE_IO_ERROR 245 #define ERR_SM_READ_IO_ERROR 246 #define ERR_SM_OPEN_FAILED 247 #define ERR_SM_DELETE_FAILED 248 typedef struct { nuint32 IOStatus; nuint32 InfoBlockSize; nuint32 AvailSpace; nuint32 UsedSpace; /* A length preceded string is followed by SMInfo data */ nuint8 SMInfo[MAX_SIZE_OF_SM_STRING + MAX_SIZE_OF_SM_INFO]; } SUPPORT_MODULE_INFO; typedef struct { nuint32 numberOfSMs; nuint32 SMIDs[MAX_NUM_OF_SM]; } SUPPORT_MODULE_IDS; #if defined( N_PLAT_NLM ) #define NWMoveFileToDM NWMoveFileToDM2 #define NWMoveFileFromDM NWMoveFileFromDM2 #define NWGetDMFileInfo NWGetDMFileInfo2 #define NWGetDMVolumeInfo NWGetDMVolumeInfo2 #define NWGetDefaultSupportModule NWGetDefaultSupportModule2 #define NWSetDefaultSupportModule NWSetDefaultSupportModule2 #define NWGetDataMigratorInfo NWGetDataMigratorInfo2 #define NWGetSupportModuleInfo NWGetSupportModuleInfo2 #endif N_EXTERN_LIBRARY( NWCCODE ) NWMoveFileToDM ( NWCONN_HANDLE conn, NWDIR_HANDLE dirHandle, const nstr8 N_FAR * path, nuint8 nameSpace, nuint32 supportModuleID, nuint32 saveKeyFlag ); N_EXTERN_LIBRARY( NWCCODE ) NWMoveFileFromDM ( NWCONN_HANDLE conn, NWDIR_HANDLE dirHandle, const nstr8 N_FAR * path, nuint8 nameSpace ); N_EXTERN_LIBRARY( NWCCODE ) NWGetDMFileInfo ( NWCONN_HANDLE conn, NWDIR_HANDLE dirHandle, const nstr8 N_FAR * path, nuint8 nameSpace, pnuint32 supportModuleID, pnuint32 restoreTime, pnuint32 dataStreams ); N_EXTERN_LIBRARY( NWCCODE ) NWGetDMVolumeInfo ( NWCONN_HANDLE conn, nuint16 volume, nuint32 supportModuleID, pnuint32 numberOfFilesMigrated, pnuint32 totalMigratedSize, pnuint32 spaceUsedOnDM, pnuint32 limboSpaceUsedOnDM, pnuint32 spaceMigrated, pnuint32 filesInLimbo ); N_EXTERN_LIBRARY( NWCCODE ) NWGetSupportModuleInfo ( NWCONN_HANDLE conn, nuint32 infomationLevel, nuint32 supportModuleID, pnuint8 returnInfo, pnuint32 returnInfoLen ); N_EXTERN_LIBRARY( NWCCODE ) NWGetDataMigratorInfo ( NWCONN_HANDLE conn, pnuint32 DMPresentFlag, pnuint32 majorVersion, pnuint32 minorVersion, pnuint32 DMSMRegistered ); N_EXTERN_LIBRARY( NWCCODE ) NWGetDefaultSupportModule ( NWCONN_HANDLE conn, pnuint32 supportModuleID ); N_EXTERN_LIBRARY( NWCCODE ) NWSetDefaultSupportModule ( NWCONN_HANDLE conn, pnuint32 supportModuleID ); N_EXTERN_LIBRARY( NWCCODE ) NWGetSupportModuleCapacity ( NWCONN_HANDLE conn, nuint32 luSupportModuleID, nuint32 luVolume, nuint32 luDirectoryBase, pnuint32 pluSMBlockSizeInSectors, pnuint32 pluSMTotalBlocks, pnuint32 pluSMUsedBlocks ); #ifdef __cplusplus } #endif #include "npackoff.h" #endif