Files
mars-nwe/include/nwnss/comnSA/zFriends.h
2026-06-16 16:45:55 +02:00

180 lines
3.9 KiB
C

/****************************************************************************
|
| (C) Copyright 1985, 1991, 1993, 1996 Novell, Inc.
| All Rights Reserved.
|
| This program is free software; you can redistribute it and/or
| modify it under the terms of version 2 of the GNU General Public
| License as published by the Free Software Foundation.
|
| This program 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 General Public License for more details.
|
| You should have received a copy of the GNU General Public License
| along with this program; if not, contact Novell, Inc.
|
| To contact Novell about this file by physical or electronic mail,
| you may find current contact information at www.novell.com
|
|***************************************************************************
|
| NetWare Advance File Services (NSS) module
|
|---------------------------------------------------------------------------
|
| $Author: gpachner $
| $Date: 2007-05-16 21:30:03 +0530 (Wed, 16 May 2007) $
|
| $RCSfile$
| $Revision: 1992 $
|
|---------------------------------------------------------------------------
| This module is used to:
| Function prototypes for NLMs friendly to NSS.
+-------------------------------------------------------------------------*/
#ifndef _ZFRIENDS_H_
#define _ZFRIENDS_H_
#ifndef _ZOMNI_H_
# include <zOmni.h>
#endif
#ifndef _ZPARAMS_H_
# include <zParams.h>
#endif
#ifndef _CHUNK_H_
# include <chunk.h>
#endif
#ifdef __cplusplus
extern "C" {
#endif
STATUS zChangeConnection(
Key_t key,
NINT connectionID,
NINT taskID,
Key_t *retKey);
STATUS zReadPageChunks(
Key_t key,
Xid_t xid,
QUAD startingOffset,
NINT bytesToRead,
NSSChunk_s *chunks,
NINT maxChunks,
NINT *numChunks);
STATUS zReleasePageChunks(
NSSChunk_s *chunks,
NINT numChunks);
STATUS zZIDCreate(
Key_t key,
NINT taskID,
Xid_t xid,
NINT nameSpace,
VolumeID_t *volumeID,
Zid_t zid,
const void *path,
NINT fileType,
QUAD fileAttributes,
NINT createFlags,
NINT requestedRights,
Key_t *retKey);
STATUS zZIDLink(
Key_t key,
Xid_t xid,
VolumeID_t *srcVolumeID,
Zid_t srcZid,
Zid_t dstZid,
NINT dstNameSpace,
const void *dstPath,
NINT renameFlags);
STATUS xMangleConnection(
Key_t key,
NINT connectionID);
STATUS xSharedOpLock(
Key_t key,
voidfunc_t callback,
void *userdata);
STATUS xAdjustQuotaFileLen(
Key_t key,
SQUAD adjustFactor);
STATUS xGetMyZid (
Key_t key,
Zid_t *pzid);
/* DEPRECATED please use zZIDOpen*/
STATUS zOpenByZid( /* DEPRECATED */
Key_t key,
NINT taskID,
Zid_t zid,
NINT requestedRights,
Key_t *retKey);
/* END DEPRECATED */
/*
* The following two routines can be used to convert
* to/from traditional 32 bit ids and the NDS GUID for
* trustees and creators of files.
*/
STATUS xIdToGuid(LONG id, NDSid_t *guid);
STATUS xGuidToId(NDSid_t *guid, LONG *idp);
/*
* Convert to/from utc/dos time.
*/
DOSTime_t xUTC2dosTime(Time_t utc);
Time_t xDOS2utcTime(DOSTime_t dosTime);
STATUS xPoolGUIDToName(
VolumeID_t *poolID,
unicode_t *poolName,
NINT poolNameSizeInUnicode);
STATUS xPoolNameToGUID(
unicode_t *poolName,
VolumeID_t *poolID);
STATUS xPoolGetEnabledFeatures(
VolumeID_t *poolID,
QUAD *enabledFeatures );
STATUS xVolumeGUIDToName(
VolumeID_t *volumeID,
unicode_t *volumeName,
NINT volumeNameSizeInUnicode);
STATUS xVolumeNameToGUID(
unicode_t *volumeName,
VolumeID_t *volumeID);
/*
* The following two routines are for clustering to use when forcing a
* volume to upgrade.
*/
STATUS xForceVolumeUpgrade (
unicode_t *volName,
STATUS (*callBack)(NINT processedCount, NINT updatedCount),
NINT *processedCount,
NINT *upgradedCount);
BOOL xIsVolumeUpgraded(unicode_t *volName);
#ifdef __cplusplus
}
#endif
#endif