mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-05 08:58:31 +02:00
3160 lines
138 KiB
ObjectPascal
3160 lines
138 KiB
ObjectPascal
{
|
|
Netware Server Imports for FreePascal, contains definition from the
|
|
following ndk header files:
|
|
|
|
nit/nwaccntg.h nit/nwafp.h nit/nwbindry.h nit/nwdatamg.h nit/nwdir.h
|
|
nit/nwenvrn.h nit/nwenvrn1.h nit/nwextatt.h nit/nwmsg.h nit/nwnit.h
|
|
nit/nwqueue.h nit/nwserial.h nit/nwservst.h nit/nwsync.h nit/nwtts.h
|
|
|
|
Initial Version 2002/02/22 Armin (diehl@nordrhein.de or armin@freepascal.org)
|
|
|
|
The C-NDK and Documentation can be found here:
|
|
http://developer.novell.com
|
|
|
|
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.
|
|
|
|
Do not blame Novell if there are errors in this file, instead
|
|
contact me and i will se what i can do.
|
|
|
|
}
|
|
|
|
{$IFNDEF FPC_DOTTEDUNITS}
|
|
unit nwnit;
|
|
{$ENDIF FPC_DOTTEDUNITS}
|
|
|
|
interface
|
|
|
|
{$mode objfpc}
|
|
{$packrecords C}
|
|
|
|
const
|
|
Clib='clib';
|
|
|
|
function AccountingInstalled (fileServerID:word):longint;cdecl;external Clib name 'AccountingInstalled';
|
|
function GetAccountStatus (binderyObjectType:word;
|
|
binderyObjectName:PAnsiChar;
|
|
balance,limits,holds:Plongint):longint;cdecl;external Clib name 'GetAccountStatus';
|
|
function GetAccountStatus (binderyObjectType:word;
|
|
binderyObjectName:PAnsiChar;
|
|
var balance,limits,holds:longint):longint;cdecl;external Clib name 'GetAccountStatus';
|
|
|
|
function SubmitAccountCharge(binderyObjectType:word;
|
|
binderyObjectName:PAnsiChar;
|
|
serviceType:word;
|
|
chargeAmount:longint;
|
|
cancelHoldAmount:longint;
|
|
commentType:word;
|
|
comment:PAnsiChar):longint;cdecl;external Clib name 'SubmitAccountCharge';
|
|
function SubmitAccountChargeWithLength(
|
|
binderyObjectType:word;
|
|
binderyObjectName:PAnsiChar;
|
|
serviceType:word;
|
|
chargeAmount:longint;
|
|
cancelHoldAmount:longint;
|
|
commentType:word;
|
|
commentData:pointer;
|
|
commentLength:word):longint;cdecl;external Clib name 'SubmitAccountChargeWithLength';
|
|
function SubmitAccountHold (binderyObjectType:word;
|
|
binderyObjectName:PAnsiChar;
|
|
reserveAmount:longint):longint;cdecl;external Clib name 'SubmitAccountHold';
|
|
function SubmitAccountNote (binderyObjectType:word;
|
|
binderyObjectName:PAnsiChar;
|
|
serviceType:word;
|
|
commentType:word;
|
|
comment:PAnsiChar):longint;cdecl;external Clib name 'SubmitAccountNote';
|
|
|
|
{------------------------------------------------------------------------------}
|
|
|
|
{$include npackon.inc}
|
|
|
|
type
|
|
PAFPFILEINFO = ^TAFPFILEINFO;
|
|
TAFPFILEINFO = record
|
|
entryID : longint;
|
|
parentID : longint;
|
|
attributes : word;
|
|
dataForkLength : longint;
|
|
resourceForkLength : longint;
|
|
numOffspring : word;
|
|
creationDate : word;
|
|
accessDate : word;
|
|
modifyDate : word;
|
|
modifyTime : word;
|
|
backupDate : word;
|
|
backupTime : word;
|
|
finderInfo : array[0..31] of byte;
|
|
longName : array[0..32] of AnsiChar;
|
|
pad1 : AnsiChar;
|
|
ownerID : longint;
|
|
shortName : array[0..12] of AnsiChar;
|
|
pad2 : AnsiChar;
|
|
accessPrivileges : word;
|
|
proDosInfo : array[0..5] of byte;
|
|
end;
|
|
|
|
PAFPSETINFO = ^TAFPSETINFO;
|
|
TAFPSETINFO = record
|
|
attributes : word;
|
|
creationDate : word;
|
|
accessDate : word;
|
|
modifyDate : word;
|
|
modifyTime : word;
|
|
backupDate : word;
|
|
backupTime : word;
|
|
finderInfo : array[0..31] of byte;
|
|
proDosInfo : array[0..5] of byte;
|
|
end;
|
|
{$include npackoff.inc}
|
|
|
|
function AFPAllocTemporaryDirHandle (connectionID:word;
|
|
volumeNum:byte;
|
|
AFPEntryID:longint;
|
|
AFPPathString:PAnsiChar;
|
|
NetWareDirectoryHandle:PBYTE;
|
|
AccessRights:PBYTE):longint; cdecl;external Clib name 'AFPAllocTemporaryDirHandle';
|
|
|
|
function AFPCreateDirectory (connectionID:word;
|
|
volumeNum:byte;
|
|
AFPEntryID:longint;
|
|
finderInfo:PBYTE;
|
|
AFPPathString:PAnsiChar;
|
|
newAFPEntryID:Plongint):longint;cdecl;external Clib name 'AFPCreateDirectory';
|
|
|
|
function AFPCreateFile (connectionID:word;
|
|
volumeNum:byte;
|
|
AFPEntryID:longint;
|
|
deleteExistingFile:byte;
|
|
finderInfo:PBYTE;
|
|
AFPPathString:PAnsiChar;
|
|
newAFPEntryID:Plongint):longint; cdecl;external Clib name 'AFPCreateFile';
|
|
|
|
function AFPDelete (connectionID:word;
|
|
volumeNum:byte;
|
|
AFPEntryID:longint;
|
|
AFPPathString:PAnsiChar):longint; cdecl;external Clib name 'AFPDelete';
|
|
|
|
function AFPDirectoryEntry (connectionID:word;
|
|
directoryHandle:byte;
|
|
pathName:PAnsiChar):longint; cdecl;external Clib name 'AFPDirectoryEntry';
|
|
|
|
function AFPGetEntryIDFromName (connectionID:word;
|
|
volumeNum:byte;
|
|
AFPEntryID:longint;
|
|
AFPPathString:PAnsiChar;
|
|
newAFPEntryID:Plongint):longint; cdecl;external Clib name 'AFPGetEntryIDFromName';
|
|
|
|
function AFPGetEntryIDFromNetWareHandle (connectionID:word;
|
|
NetWareHandle:PBYTE;
|
|
volumeID:PBYTE;
|
|
AFPEntryID:Plongint;
|
|
forkIndicator:PBYTE):longint; cdecl;external Clib name 'AFPGetEntryIDFromNetWareHandle';
|
|
|
|
function AFPGetEntryIDFromNetWareHandle (connectionID:word;
|
|
var NetWareHandle:byte;
|
|
var volumeID:byte;
|
|
var AFPEntryID:longint;
|
|
var forkIndicator:byte):longint; cdecl;external Clib name 'AFPGetEntryIDFromNetWareHandle';
|
|
|
|
function AFPGetEntryIDFromPathName (connectionID:word;
|
|
directoryHandle:byte;
|
|
pathName:PAnsiChar;
|
|
AFPEntryID:Plongint):longint; cdecl;external Clib name 'AFPGetEntryIDFromPathName';
|
|
|
|
function AFPGetFileInformation (connectionID:word;
|
|
volumeNum:byte;
|
|
AFPEntryID:longint;
|
|
requestBitMap:word;
|
|
AFPPathString:PAnsiChar;
|
|
strucSize:word;
|
|
AFPFileInfo:PAFPFILEINFO):longint; cdecl;external Clib name 'AFPGetFileInformation';
|
|
|
|
function AFPGetFileInformation (connectionID:word;
|
|
volumeNum:byte;
|
|
AFPEntryID:longint;
|
|
requestBitMap:word;
|
|
AFPPathString:PAnsiChar;
|
|
strucSize:word;
|
|
var AFPFileInfo:TAFPFILEINFO):longint; cdecl;external Clib name 'AFPGetFileInformation';
|
|
|
|
function AFPOpenFileFork (connectionID:word;
|
|
volumeNum:byte;
|
|
AFPEntryID:longint;
|
|
forkIndicator:byte;
|
|
accessMode:byte;
|
|
AFPPathString:PAnsiChar;
|
|
fileID:Plongint;
|
|
forkLength:Plongint;
|
|
NetWareHandle:PBYTE;
|
|
fileHandle:Plongint):longint; cdecl;external Clib name 'AFPOpenFileFork';
|
|
|
|
function AFPOpenFileFork (connectionID:word;
|
|
volumeNum:byte;
|
|
AFPEntryID:longint;
|
|
forkIndicator:byte;
|
|
accessMode:byte;
|
|
AFPPathString:PAnsiChar;
|
|
var fileID:longint;
|
|
var forkLength:longint;
|
|
var NetWareHandle:byte;
|
|
var fileHandle:longint):longint; cdecl;external Clib name 'AFPOpenFileFork';
|
|
|
|
|
|
function AFPRename (connectionID:word;
|
|
volumeNum:byte;
|
|
AFPSourceEntryID:longint;
|
|
AFPDestEntryID:longint;
|
|
AFPSourcePath:PAnsiChar;
|
|
AFPDestPath:PAnsiChar):longint; cdecl;external Clib name 'AFPRename';
|
|
|
|
function AFPScanFileInformation (connectionID:word;
|
|
volumeNum:byte;
|
|
AFPEntryID:longint;
|
|
AFPLastSeenID:Plongint;
|
|
searchBitMap:word;
|
|
requestBitMap:word;
|
|
AFPPathString:PAnsiChar;
|
|
strucSize:word;
|
|
AFPScanFileInfo:PAFPFILEINFO):longint; cdecl;external Clib name 'AFPScanFileInformation';
|
|
function AFPScanFileInformation (connectionID:word;
|
|
volumeNum:byte;
|
|
AFPEntryID:longint;
|
|
AFPLastSeenID:Plongint;
|
|
searchBitMap:word;
|
|
requestBitMap:word;
|
|
AFPPathString:PAnsiChar;
|
|
strucSize:word;
|
|
var AFPScanFileInfo:TAFPFILEINFO):longint; cdecl;external Clib name 'AFPScanFileInformation';
|
|
|
|
function AFPSetFileInformation (connectionID:word;
|
|
volumeNum:byte;
|
|
AFPEntryID:longint;
|
|
requestBitMap:word;
|
|
AFPPathString:PAnsiChar;
|
|
strucSize:word;
|
|
AFPSetInfo:PAFPSETINFO):longint; cdecl;external Clib name 'AFPSetFileInformation';
|
|
|
|
function AFPSetFileInformation (connectionID:word;
|
|
volumeNum:byte;
|
|
AFPEntryID:longint;
|
|
requestBitMap:word;
|
|
AFPPathString:PAnsiChar;
|
|
strucSize:word;
|
|
var AFPSetInfo:TAFPSETINFO):longint; cdecl;external Clib name 'AFPSetFileInformation';
|
|
|
|
function AFPSupported (connectionID:word):longint; cdecl;external Clib name 'AFPSupported';
|
|
|
|
|
|
{------------------------------------------------------------------------------}
|
|
const
|
|
BS_ANY_READ = $0000;
|
|
BS_ANY_WRITE = $0000; // Writeable by anyone
|
|
BS_LOGGED_READ = $0001; // Must be logged in to read
|
|
BS_OBJECT_READ = $0002; // Readable by same object or super
|
|
BS_SUPER_READ = $0003; // Readable by supervisor only
|
|
BS_BINDERY_READ = $0004; // Readable only by the bindery
|
|
BS_LOGGED_WRITE = $0010; // Must be logged in to write
|
|
BS_OBJECT_WRITE = $0020; // Writeable by same object or super
|
|
BS_SUPER_WRITE = $0030; // Writeable only by the supervisor
|
|
BS_BINDERY_WRITE = $0040; // Writeable by the bindery only
|
|
|
|
// Bindery object type definitions
|
|
OT_WILD = -(1);
|
|
|
|
OT_UNKNOWN = $0000;
|
|
OT_USER = $0001;
|
|
OT_USER_GROUP = $0002;
|
|
OT_GROUP = $0002;
|
|
OT_PRINT_QUEUE = $0003;
|
|
|
|
OT_FILE_SERVER = $0004;
|
|
OT_JOB_SERVER = $0005;
|
|
OT_GATEWAY = $0006;
|
|
OT_PRINT_SERVER = $0007;
|
|
OT_ARCHIVE_QUEUE = $0008;
|
|
|
|
OT_ARCHIVE_SERVER = $0009;
|
|
OT_JOB_QUEUE = $000A;
|
|
OT_ADMINISTRATION = $000B;
|
|
OT_NAS_SNA_GATEWAY = $0021;
|
|
OT_REMOTE_BRIDGE_SERVER = $0024;
|
|
OT_TCPIP_GATEWAY = $0027;
|
|
OT_TIME_SYNCHRONIZATION_SERVER = $002D;
|
|
OT_ARCHIVE_SERVER_DYNAMIC_SAP = $002E;
|
|
OT_ADVERTISING_PRINT_SERVER = $0047;
|
|
OT_BTRIEVE_VAP = $004B;
|
|
OT_NWSQL_VAP = $004C;
|
|
OT_PRINT_QUEUE_USER = $0053;
|
|
|
|
// Attributes of objects and properties in the bindery
|
|
BF_STATIC = $0000;
|
|
BF_DYNAMIC = $0001;
|
|
BF_ITEM = $0000;
|
|
BF_SET = $0002;
|
|
|
|
BL_OBJECT = 48; // Maximum lengths of object, properties, (includes terminating null)
|
|
BL_PROPERTY = 16;
|
|
BL_PASSWORD = 128;
|
|
|
|
function AddBinderyObjectToSet (objectName : PAnsiChar;
|
|
objectType : word;
|
|
propertyName : PAnsiChar;
|
|
memberName : PAnsiChar;
|
|
memberType : word):longint; cdecl;external Clib name 'AddBinderyObjectToSet';
|
|
|
|
function ChangeBinderyObjectPassword (objectName : PAnsiChar;
|
|
objectType : word;
|
|
oldPassword : PAnsiChar;
|
|
newPassword : PAnsiChar):longint; cdecl;external Clib name 'ChangeBinderyObjectPassword';
|
|
|
|
function ChangeBinderyObjectSecurity (objectName : PAnsiChar;
|
|
objectType : word;
|
|
newObjectSecurity : byte):longint; cdecl;external Clib name 'ChangeBinderyObjectSecurity';
|
|
|
|
|
|
function ChangePropertySecurity (objectName : PAnsiChar;
|
|
objectType : word;
|
|
propertyName : PAnsiChar;
|
|
newPropertySecurity: byte):longint; cdecl;external Clib name 'ChangePropertySecurity';
|
|
|
|
function CloseBindery:longint; cdecl;external Clib name 'CloseBindery';
|
|
function CreateBinderyObject (objectName : PAnsiChar;
|
|
objectType : word;
|
|
objectFlag : byte;
|
|
objectSecurity : byte):longint; cdecl;external Clib name 'CreateBinderyObject';
|
|
function CreateProperty (objectName : PAnsiChar;
|
|
objectType : word;
|
|
propertyName : PAnsiChar;
|
|
propertyFlags : byte;
|
|
propertySecurity : byte):longint; cdecl;external Clib name 'CreateProperty';
|
|
|
|
function DeleteBinderyObject (objectName : PAnsiChar;
|
|
objectType : word):longint; cdecl;external Clib name 'DeleteBinderyObject';
|
|
|
|
function DeleteBinderyObjectFromSet (objectName:PAnsiChar;
|
|
objectType:word;
|
|
propertyName:PAnsiChar;
|
|
memberName:PAnsiChar;
|
|
memberType:word):longint; cdecl;external Clib name 'DeleteBinderyObjectFromSet';
|
|
|
|
function DeleteProperty (objectName:PAnsiChar;
|
|
objectType:word;
|
|
propertyName:PAnsiChar):longint; cdecl;external Clib name 'DeleteProperty';
|
|
function GetBinderyAccessLevel (accessLevel:PBYTE;
|
|
objectID:Plongint):longint; cdecl;external Clib name 'GetBinderyAccessLevel';
|
|
function GetBinderyAccessLevel (var accessLevel:byte;
|
|
var objectID:longint):longint; cdecl;external Clib name 'GetBinderyAccessLevel';
|
|
|
|
function GetBinderyObjectID (objectName:PAnsiChar;
|
|
objectType:word;
|
|
objectID:Plongint):longint; cdecl;external Clib name 'GetBinderyObjectID';
|
|
function GetBinderyObjectID (objectName:PAnsiChar;
|
|
objectType:word;
|
|
var objectID:longint):longint; cdecl;external Clib name 'GetBinderyObjectID';
|
|
function GetBinderyObjectName (objectID:longint;
|
|
objectName:PAnsiChar;
|
|
objectType:PWORD):longint; cdecl;external Clib name 'GetBinderyObjectName';
|
|
function GetBinderyObjectName (objectID:longint;
|
|
objectName:PAnsiChar;
|
|
var objectType:word):longint; cdecl;external Clib name 'GetBinderyObjectName';
|
|
|
|
function IsBinderyObjectInSet (objectName:PAnsiChar;
|
|
objectType:word;
|
|
propertyName:PAnsiChar;
|
|
memberName:PAnsiChar;
|
|
memberType:word):longint; cdecl;external Clib name 'IsBinderyObjectInSet';
|
|
function OpenBindery:longint; cdecl;external Clib name 'OpenBindery';
|
|
function ReadPropertyValue (objectName : PAnsiChar;
|
|
objectType : word;
|
|
propertyName : PAnsiChar;
|
|
segmentNumber: longint;
|
|
propertyValue: PBYTE;
|
|
moreSegments : PBYTE;
|
|
propertyFlags: PBYTE):longint; cdecl;external Clib name 'ReadPropertyValue';
|
|
function ReadPropertyValue (objectName : PAnsiChar;
|
|
objectType : word;
|
|
propertyName : PAnsiChar;
|
|
segmentNumber: longint;
|
|
var propertyValue: byte;
|
|
var moreSegments : byte;
|
|
var propertyFlags: byte):longint; cdecl;external Clib name 'ReadPropertyValue';
|
|
|
|
function RenameBinderyObject (objectName : PAnsiChar;
|
|
newObjectName: PAnsiChar;
|
|
objectType : word):longint; cdecl;external Clib name 'RenameBinderyObject';
|
|
|
|
function ScanBinderyObject (searchObjectName:PAnsiChar;
|
|
searchObjectType:word;
|
|
objectID:Plongint;
|
|
objectName:PAnsiChar;
|
|
objectType:PWORD;
|
|
objectHasProperties:PAnsiChar;
|
|
objectFlag:PAnsiChar;
|
|
objectSecurity:PAnsiChar):longint; cdecl;external Clib name 'ScanBinderyObject';
|
|
function ScanBinderyObject (searchObjectName:PAnsiChar;
|
|
searchObjectType:word;
|
|
var objectID:longint;
|
|
objectName:PAnsiChar;
|
|
var objectType:word;
|
|
objectHasProperties:PAnsiChar;
|
|
objectFlag:PAnsiChar;
|
|
objectSecurity:PAnsiChar):longint; cdecl;external Clib name 'ScanBinderyObject';
|
|
|
|
function ScanProperty (objectName:PAnsiChar;
|
|
objectType:word;
|
|
searchPropertyName:PAnsiChar;
|
|
sequenceNumber:Plongint;
|
|
propertyName:PAnsiChar;
|
|
propertyFlags:PAnsiChar;
|
|
propertySecurity:PAnsiChar;
|
|
propertyHasValue:PAnsiChar;
|
|
moreProperties:Pbyte):longint; cdecl;external Clib name 'ScanProperty';
|
|
function ScanProperty (objectName:PAnsiChar;
|
|
objectType:word;
|
|
searchPropertyName:PAnsiChar;
|
|
var sequenceNumber:longint;
|
|
propertyName:PAnsiChar;
|
|
propertyFlags:PAnsiChar;
|
|
propertySecurity:PAnsiChar;
|
|
propertyHasValue:PAnsiChar;
|
|
var moreProperties:byte):longint; cdecl;external Clib name 'ScanProperty';
|
|
|
|
|
|
function VerifyBinderyObjectPassword (objectName : PAnsiChar;
|
|
objectType : word;
|
|
password : PAnsiChar):longint; cdecl;external Clib name 'VerifyBinderyObjectPassword';
|
|
|
|
function WritePropertyValue (objectName : PAnsiChar;
|
|
objectType : word;
|
|
propertyName : PAnsiChar;
|
|
segmentNumber : longint;
|
|
propertyValue : PBYTE;
|
|
moreSegments : byte):longint; cdecl;external Clib name 'WritePropertyValue';
|
|
function WritePropertyValue (objectName : PAnsiChar;
|
|
objectType : word;
|
|
propertyName : PAnsiChar;
|
|
segmentNumber : longint;
|
|
var propertyValue : byte;
|
|
moreSegments : byte):longint; cdecl;external Clib name 'WritePropertyValue';
|
|
|
|
|
|
{------------------------------------------------------------------------------}
|
|
const
|
|
ERR_INVALID_SUPPORT_MODULE_ID = 240;
|
|
ERR_SUPPORT_MODULE_ALREADY_REGISTERED = 241;
|
|
ERR_SUPPORT_MODULE_CREATE_FAILED = 242;
|
|
ERR_SUPPORT_MODULE_CLOSE_FAILED = 243;
|
|
ERR_SM_WRITE_NO_SPACE = 244;
|
|
ERR_SM_WRITE_IO_ERROR = 245;
|
|
ERR_SM_READ_IO_ERROR = 246;
|
|
ERR_SUPPORT_MODULE_OPEN_FAILED = 247;
|
|
ERR_SUPPORT_MODULE_DELETE_FAILED = 248;
|
|
MaximumNumberOfDataStreams = 3;
|
|
{$include npackon.inc}
|
|
(*
|
|
TInfo0Rep = record
|
|
rIOStatus : longint;
|
|
rInfoBlockSize: longint;
|
|
rAvailSpace: longint;
|
|
rUsedSpace: longint;
|
|
rSMString: byte;
|
|
end;
|
|
|
|
TInfo1Rep = record
|
|
rSMRegs : longint;
|
|
end;
|
|
|
|
TInfo2Rep = record
|
|
NameLength : byte;
|
|
end;
|
|
*)
|
|
|
|
type
|
|
PSUPPORT_MODULE_INFO = ^TSUPPORT_MODULE_INFO;
|
|
TSUPPORT_MODULE_INFO = record
|
|
IOStatus : longint;
|
|
InfoBlockSize : longint;
|
|
AvailSpace : longint;
|
|
UsedSpace : longint;
|
|
SMString : AnsiChar; // 128 length limit, Info block follows string
|
|
end;
|
|
|
|
{$include npackoff.inc}
|
|
|
|
|
|
function NWDeRegisterDMSupportModule (SupportModuleID:longint;
|
|
SupportModuleName:PAnsiChar;
|
|
SlotNumber:longint):longint; cdecl;external Clib name 'NWDeRegisterDMSupportModule';
|
|
function NWDeRegisterRTDataMigrationNLM (Station:longint;
|
|
DMTAG:PBYTE;
|
|
ForceFlag:longint):longint; cdecl;external Clib name 'NWDeRegisterRTDataMigrationNLM';
|
|
function NWDeRegisterRTDataMigrationNLM (Station:longint;
|
|
var DMTAG:byte;
|
|
ForceFlag:longint):longint; cdecl;external Clib name 'NWDeRegisterRTDataMigrationNLM';
|
|
{ Local and Remote Call }
|
|
procedure NWGetDataMigratorInfo (DMPresentFlag:PLongint;
|
|
majorVersion:PLongint;
|
|
minorVersion:PLongint;
|
|
numberOfSupportModules:PLongint); cdecl;external Clib name 'NWGetDataMigratorInfo';
|
|
procedure NWGetDataMigratorInfo (var DMPresentFlag:longint;
|
|
var majorVersion:longint;
|
|
var minorVersion:longint;
|
|
var numberOfSupportModules:longint); cdecl;external Clib name 'NWGetDataMigratorInfo';
|
|
{ Local and Remote call }
|
|
function NWGetDefaultSupportModule (defaultSupportModuleID:PLongint):longint; cdecl;external Clib name 'NWGetDefaultSupportModule';
|
|
function NWGetDefaultSupportModule (var defaultSupportModuleID:longint):longint; cdecl;external Clib name 'NWGetDefaultSupportModule';
|
|
|
|
{ Local and Remote call }
|
|
function NWGetDMFileInfo (path:PAnsiChar;
|
|
nameSpace:longint;
|
|
supportModuleID:PLongint;
|
|
validDataStreams:PLongint;
|
|
estRetrievalTime:PLongint;
|
|
info:PLongint):longint;cdecl;external Clib name 'NWGetDMFileInfo';
|
|
function NWGetDMFileInfo (path:PAnsiChar;
|
|
nameSpace:longint;
|
|
var supportModuleID:longint;
|
|
var validDataStreams:longint;
|
|
var estRetrievalTime:longint;
|
|
var info:longint):longint;cdecl;external Clib name 'NWGetDMFileInfo';
|
|
|
|
{ Local and Remote call }
|
|
function NWGetDMVolumeInfo (volume:longint;
|
|
supportModuleID:longint;
|
|
numberOfFilesMigrated:PLongint;
|
|
totalMigratedSize:PLongint;
|
|
spaceUsed:PLongint;
|
|
limboUsed:PLongint;
|
|
spaceMigrated:PLongint;
|
|
filesLimbo:PLongint):longint; cdecl;external Clib name 'NWGetDMVolumeInfo';
|
|
function NWGetDMVolumeInfo (volume:longint;
|
|
supportModuleID:longint;
|
|
var numberOfFilesMigrated:longint;
|
|
var totalMigratedSize:longint;
|
|
var spaceUsed:longint;
|
|
var limboUsed:longint;
|
|
var spaceMigrated:longint;
|
|
var filesLimbo:longint):longint; cdecl;external Clib name 'NWGetDMVolumeInfo';
|
|
{ Local and Remote call }
|
|
function NWGetSupportModuleInfo (informationLevel:longint;
|
|
supportModuleID:longint;
|
|
returnInfo:pointer;
|
|
returnInfoLen:PLongint):longint;cdecl;external Clib name 'NWGetSupportModuleInfo';
|
|
function NWGetSupportModuleInfo (informationLevel:longint;
|
|
supportModuleID:longint;
|
|
returnInfo:pointer;
|
|
var returnInfoLen:longint):longint;cdecl;external Clib name 'NWGetSupportModuleInfo';
|
|
|
|
function NWIsDataMigrationAllowed (Volume:longint):longint; cdecl;external Clib name 'NWIsDataMigrationAllowed';
|
|
{ Local and Remote call }
|
|
function NWMoveFileFromDM (path:PAnsiChar;
|
|
nameSpace:longint):longint; cdecl;external Clib name 'NWMoveFileFromDM';
|
|
{ Local and Remote call }
|
|
function NWMoveFileToDM (path:PAnsiChar;
|
|
nameSpace:longint;
|
|
SupportModuleID:longint;
|
|
flags:longint):longint; cdecl;external Clib name 'NWMoveFileToDM';
|
|
|
|
function NWPeekFileData (path:PAnsiChar;
|
|
nameSpace:longint;
|
|
noWaitFlag:longint;
|
|
startingSector:longint;
|
|
sectorsToRead:longint;
|
|
buffer:PBYTE;
|
|
sectorsRead:PLongint;
|
|
bytesRead:PLongint;
|
|
NoWaitReason:PLongint):longint; cdecl;external Clib name 'NWPeekFileData';
|
|
function NWPeekFileData (path:PAnsiChar;
|
|
nameSpace:longint;
|
|
noWaitFlag:longint;
|
|
startingSector:longint;
|
|
sectorsToRead:longint;
|
|
var buffer;
|
|
var sectorsRead:longint;
|
|
var bytesRead:longint;
|
|
var NoWaitReason:longint):longint; cdecl;external Clib name 'NWPeekFileData';
|
|
type TFunction = function : longint; cdecl;
|
|
|
|
function NWRegisterDMSupportModule (ioFlag:longint;
|
|
addr:array of TFunction;
|
|
SupportModuleName:PBYTE;
|
|
SupportModuleID:longint;
|
|
MaxSectorsXF:longint;
|
|
SlotNumber:PLongint):longint; cdecl;external Clib name 'NWRegisterDMSupportModule';
|
|
|
|
function NWRegisterRTDataMigrationNLM (Station:longint;
|
|
addr:array of TFunction;
|
|
DMTAG:PBYTE; majorVersion:longint;
|
|
minorVersion:longint):longint; cdecl;external Clib name 'NWRegisterRTDataMigrationNLM';
|
|
{ Local and Remote call }
|
|
function NWSetDefaultSupportModule (newSupportModuleID:longint;
|
|
currentSupportModuleID:PLongint):longint; cdecl;external Clib name 'NWSetDefaultSupportModule';
|
|
function NWSetDefaultSupportModule (newSupportModuleID:longint;
|
|
var currentSupportModuleID:longint):longint; cdecl;external Clib name 'NWSetDefaultSupportModule';
|
|
|
|
{------------------------------------------------------------------------------}
|
|
{ Trustee Access Rights in a network directory }
|
|
const
|
|
TA_NONE = $0000;
|
|
TA_READ = $0001;
|
|
TA_WRITE = $0002;
|
|
TA_CREATE = $0008;
|
|
TA_DELETE = $0010;
|
|
TA_ACCESSCONTROL = $0020;
|
|
TA_SEEFILES = $0040;
|
|
TA_MODIFY = $0080;
|
|
TA_SUPERVISOR = $0100;
|
|
TA_ALL = $01FB;
|
|
|
|
{ Old names for rights }
|
|
TA_OPEN = $0004;
|
|
TA_OWNERSHIP = $0020;
|
|
TA_SEARCH = $0040;
|
|
BYTES_PER_SECTOR = 512;
|
|
|
|
{ define volume types }
|
|
VINetWare386 = 0;
|
|
VINetWare286 = 1;
|
|
VINetWare386v30 = 2;
|
|
VINetWare386v31 = 3;
|
|
{ define the extended volume information status flag bits }
|
|
NWSubAllocEnabledBit = $01;
|
|
NWCompressionEnabledBit = $02;
|
|
NWMigrationEnabledBit = $04;
|
|
NWAuditingEnabledBit = $08;
|
|
NWReadOnlyEnabledBit = $10;
|
|
|
|
{$include npackon.inc}
|
|
type
|
|
PAnswerStructure = ^TAnswerStructure;
|
|
TAnswerStructure = record
|
|
ALevelNumber : byte;
|
|
AMaximumAmount : longint; // ?? TMisalignedLONG;
|
|
ACurrentAmount : longint; // ?? TMisalignedLONG;
|
|
end;
|
|
|
|
|
|
PVOLUME_STATS = ^TVOLUME_STATS;
|
|
TVOLUME_STATS = record
|
|
systemElapsedTime : longint;
|
|
volumeNumber : byte;
|
|
logicalDriveNumber : byte;
|
|
sectorsPerBlock : word;
|
|
startingBlock : longint;
|
|
totalBlocks : word;
|
|
availableBlocks : word;
|
|
totalDirectorySlots : word;
|
|
availableDirectorySlots : word;
|
|
maxDirectorySlotsUsed : word;
|
|
isHashing : byte;
|
|
isRemovable : byte;
|
|
isMounted : byte;
|
|
volumeName : array[0..16] of AnsiChar;
|
|
purgableBlocks : longint;
|
|
notYetPurgableBlocks : longint;
|
|
end;
|
|
|
|
PVOLUME_INFO = ^TVOLUME_INFO;
|
|
TVOLUME_INFO = record
|
|
systemElapsedTime : longint;
|
|
volumeNumber : byte;
|
|
logicalDriveNumber : byte;
|
|
sectorsPerBlock : word;
|
|
startingBlock : smallint;
|
|
totalBlocks : longint;
|
|
availableBlocks : longint;
|
|
totalDirectorySlots : longint;
|
|
availableDirectorySlots : longint;
|
|
isHashing : byte;
|
|
isRemovable : byte;
|
|
isMounted : byte;
|
|
volumeName : array[0..16] of AnsiChar;
|
|
purgableBlocks : longint;
|
|
notYetPurgableBlocks : longint;
|
|
end;
|
|
|
|
PNWVolExtendedInfo = ^TNWVolExtendedInfo;
|
|
TNWVolExtendedInfo = record
|
|
volType : longint;
|
|
statusFlag : longint;
|
|
sectorSize : longint;
|
|
sectorsPerCluster : longint;
|
|
volSizeInClusters : longint;
|
|
freeClusters : longint;
|
|
subAllocFreeableClusters : longint;
|
|
freeableLimboSectors : longint;
|
|
nonfreeableLimboSectors : longint;
|
|
availSubAllocSectors : longint;
|
|
nonuseableSubAllocSectors : longint;
|
|
subAllocClusters : longint;
|
|
numDataStreams : longint;
|
|
numLimboDataStreams : longint;
|
|
oldestDelFileAgeInTicks : longint;
|
|
numCompressedDataStreams : longint;
|
|
numCompressedLimboDataStreams : longint;
|
|
numNoncompressibleDataStreams : longint;
|
|
precompressedSectors : longint;
|
|
compressedSectors : longint;
|
|
numMigratedDataStreams : longint;
|
|
migratedSectors : longint;
|
|
clustersUsedByFAT : longint;
|
|
clustersUsedByDirs : longint;
|
|
clustersUsedByExtDirs : longint;
|
|
totalDirEntries : longint;
|
|
unusedDirEntries : longint;
|
|
totalExtDirExtants : longint;
|
|
unusedExtDirExtants : longint;
|
|
extAttrsDefined : longint;
|
|
extAttrExtantsUsed : longint;
|
|
directoryServicesObjectID : longint;
|
|
lastModifiedDateAndTime : longint;
|
|
end;
|
|
|
|
{$include npackoff.inc}
|
|
|
|
function AddSpaceRestrictionForDirectory (pathName:PAnsiChar;
|
|
value:longint;
|
|
allowWildCardsFlag:longint):longint;cdecl;external Clib name 'AddSpaceRestrictionForDirectory';
|
|
function AddTrustee (pathName:PAnsiChar;
|
|
trusteeID:longint;
|
|
newRights:word):longint; cdecl;external Clib name 'AddTrustee';
|
|
function AddUserSpaceRestriction (volume:longint;
|
|
trusteeID:longint;
|
|
value:longint):longint;cdecl;external Clib name 'AddUserSpaceRestriction';
|
|
function ChangeDirectoryEntry (pathName:PAnsiChar;
|
|
modifyVector:pointer; //PModifyStructure;
|
|
modifyBits:longint;
|
|
allowWildCardsFlag:longint):longint;cdecl;external Clib name 'ChangeDirectoryEntry';
|
|
function ChangeDirectoryEntry (pathName:PAnsiChar;
|
|
var modifyVector;
|
|
modifyBits:longint;
|
|
allowWildCardsFlag:longint):longint;cdecl;external Clib name 'ChangeDirectoryEntry';
|
|
function ConvertNameToFullPath (partialPath:PAnsiChar;
|
|
fullPath:PAnsiChar):longint;cdecl;external Clib name 'ConvertNameToFullPath';
|
|
function ConvertNameToVolumePath (fileName:PAnsiChar;
|
|
volumePath:PAnsiChar):longint;cdecl;external Clib name 'ConvertNameToVolumePath';
|
|
function DeleteTrustee (pathName:PAnsiChar;
|
|
trusteeID:longint):longint;cdecl;external Clib name 'DeleteTrustee';
|
|
function DeleteUserSpaceRestriction (volume:longint;
|
|
trusteeID:longint):longint;cdecl;external Clib name 'DeleteUserSpaceRestriction';
|
|
function GetAvailableUserDiskSpace (pathName:PAnsiChar;
|
|
availableSpace:PLongint):longint;cdecl;external Clib name 'GetAvailableUserDiskSpace';
|
|
function GetAvailableUserDiskSpace (pathName:PAnsiChar;
|
|
var availableSpace:longint):longint;cdecl;external Clib name 'GetAvailableUserDiskSpace';
|
|
function GetDiskSpaceUsedByObject (trusteeID:longint;
|
|
volume:longint;
|
|
usedSpace:PLongint):longint;cdecl;external Clib name 'GetDiskSpaceUsedByObject';
|
|
function GetDiskSpaceUsedByObject (trusteeID:longint;
|
|
volume:longint;
|
|
var usedSpace:longint):longint;cdecl;external Clib name 'GetDiskSpaceUsedByObject';
|
|
function GetEffectiveRights (pathName:PAnsiChar;
|
|
accessRights:PWORD):longint;cdecl;external Clib name 'GetEffectiveRights';
|
|
function GetEffectiveRights (pathName:PAnsiChar;
|
|
var accessRights:word):longint;cdecl;external Clib name 'GetEffectiveRights';
|
|
function GetMaximumUserSpaceRestriction (trusteeID, volume:longint; maxRestriction:PLongint):longint;cdecl;external Clib name 'GetMaximumUserSpaceRestriction';
|
|
function GetMaximumUserSpaceRestriction (trusteeID, volume:longint; var maxRestriction:longint):longint;cdecl;external Clib name 'GetMaximumUserSpaceRestriction';
|
|
function GetNumberOfVolumes : longint; cdecl;external Clib name 'GetNumberOfVolumes';
|
|
function GetVolumeInformation (connectionID:word;
|
|
volumeNumber:byte;
|
|
structSize:longint;
|
|
volumeStatistics:PVOLUME_STATS):longint;cdecl;external Clib name 'GetVolumeInformation';
|
|
function GetVolumeInformation (connectionID:word;
|
|
volumeNumber:byte;
|
|
structSize:longint;
|
|
var volumeStatistics:TVOLUME_STATS):longint;cdecl;external Clib name 'GetVolumeInformation';
|
|
function GetVolumeInfoWithNumber (volumeNumber:byte;
|
|
volumeName:PAnsiChar;
|
|
totalBlocks:PWORD;
|
|
sectorsPerBlock:PWORD;
|
|
availableBlocks:PWORD;
|
|
totalDirectorySlots:PWORD;
|
|
availableDirectorySlots:PWORD;
|
|
volumeIsRemovable:PWORD):longint;cdecl;external Clib name 'GetVolumeInfoWithNumber';
|
|
function GetVolumeInfoWithNumber (volumeNumber:byte;
|
|
volumeName:PAnsiChar;
|
|
var totalBlocks:word;
|
|
var sectorsPerBlock:word;
|
|
var availableBlocks:word;
|
|
var totalDirectorySlots:word;
|
|
var availableDirectorySlots:word;
|
|
var volumeIsRemovable:word):longint;cdecl;external Clib name 'GetVolumeInfoWithNumber';
|
|
function GetVolumeName(volumeNumber:longint; volumeName:PAnsiChar):longint;cdecl;external Clib name 'GetVolumeName';
|
|
|
|
function GetVolumeNumber(volumeName:PAnsiChar; volumeNumber:Plongint):longint;cdecl;external Clib name 'GetVolumeNumber';
|
|
function GetVolumeNumber(volumeName:PAnsiChar; var volumeNumber:longint):longint;cdecl;external Clib name 'GetVolumeNumber';
|
|
function GetVolumeStatistics (connectionID:word;
|
|
volumeNumber:byte;
|
|
structSize:longint;
|
|
volumeStatistics:PVOLUME_INFO):longint;cdecl;external Clib name 'GetVolumeStatistics';
|
|
function GetVolumeStatistics (connectionID:word;
|
|
volumeNumber:byte;
|
|
structSize:longint;
|
|
var volumeStatistics:TVOLUME_INFO):longint;cdecl;external Clib name 'GetVolumeStatistics';
|
|
|
|
procedure _makepath (path:PAnsiChar;
|
|
drive:PAnsiChar;
|
|
dir:PAnsiChar;
|
|
fname:PAnsiChar;
|
|
ext:PAnsiChar);cdecl;external Clib name '_makepath';
|
|
|
|
function ModifyInheritedRightsMask (path:PAnsiChar;
|
|
revokeRightsMask:word;
|
|
grantRightsMask:word):longint;cdecl;external Clib name 'ModifyInheritedRightsMask';
|
|
function NWGetExtendedVolumeInfo (volNumber:longint;
|
|
volName:PAnsiChar;
|
|
volInfo:PNWVolExtendedInfo):longint;cdecl;external Clib name 'NWGetExtendedVolumeInfo';
|
|
function NWGetExtendedVolumeInfo (volNumber:longint;
|
|
volName:PAnsiChar;
|
|
var volInfo:TNWVolExtendedInfo):longint;cdecl;external Clib name 'NWGetExtendedVolumeInfo';
|
|
function NWVolumeIsCDROM (volNumber:longint;
|
|
isCDROM:PLongint):longint;cdecl;external Clib name 'NWVolumeIsCDROM';
|
|
function NWVolumeIsCDROM (volNumber:longint;
|
|
var isCDROM:longint):longint;cdecl;external Clib name 'NWVolumeIsCDROM';
|
|
|
|
function ParsePath (path:PAnsiChar;
|
|
server:PAnsiChar;
|
|
volume:PAnsiChar;
|
|
directories:PAnsiChar):longint;cdecl;external Clib name 'ParsePath';
|
|
function PurgeTrusteeFromVolume (volume:longint;
|
|
trusteeID:longint):longint;cdecl;external Clib name 'PurgeTrusteeFromVolume';
|
|
|
|
function ReturnSpaceRestrictionForDirectory(pathName:PAnsiChar;
|
|
numberOfStructuresToReturn:longint;
|
|
answerBuffer:pointer;
|
|
numberOfStructuresReturned:PLongint):longint;cdecl;external Clib name 'ReturnSpaceRestrictionForDirectory';
|
|
function ScanBinderyObjectTrusteePaths (objectID:longint;
|
|
volumeNumber:byte;
|
|
sequenceNumber:Plongint;
|
|
trusteeAccessMask:PWORD;
|
|
trusteePathName:PAnsiChar):longint;cdecl;external Clib name 'ScanBinderyObjectTrusteePaths';
|
|
function ScanBinderyObjectTrusteePaths (objectID:longint;
|
|
volumeNumber:byte;
|
|
var sequenceNumber:longint;
|
|
var trusteeAccessMask:word;
|
|
trusteePathName:PAnsiChar):longint;cdecl;external Clib name 'ScanBinderyObjectTrusteePaths';
|
|
(* Const before type ignored *)
|
|
function ScanTrustees (pathName:PAnsiChar;
|
|
startingOffset:longint;
|
|
vectorSize:longint;
|
|
trusteeVector:PLongint;
|
|
maskVector:PWORD;
|
|
actualVectorSize:PLongint):longint;cdecl;external Clib name 'ScanTrustees';
|
|
function ScanTrustees (pathName:PAnsiChar;
|
|
startingOffset:longint;
|
|
vectorSize:longint;
|
|
var trusteeVector:longint;
|
|
var maskVector:longint;
|
|
var actualVectorSize:longint):longint;cdecl;external Clib name 'ScanTrustees';
|
|
function ScanUserSpaceRestrictions (volume:longint;
|
|
sequenceNumber:PLongint;
|
|
numberOfTrusteesToReturn:longint;
|
|
answerArea:PLongint;
|
|
numberOfTrusteesReturned:PLongint):longint;cdecl;external Clib name 'ScanUserSpaceRestrictions';
|
|
function ScanUserSpaceRestrictions (volume:longint;
|
|
var sequenceNumber:longint;
|
|
numberOfTrusteesToReturn:longint;
|
|
var answerArea;
|
|
var numberOfTrusteesReturned:longint):longint;cdecl;external Clib name 'ScanUserSpaceRestrictions';
|
|
|
|
function SetDirectoryInfo (pathName:PAnsiChar;
|
|
newCreationDateAndTime:PBYTE;
|
|
newOwnerObjectID:longint;
|
|
inheritedRightsMask:word):longint;cdecl;external Clib name 'SetDirectoryInfo';
|
|
|
|
function SetWildcardTranslationMode (newMode:byte):byte;cdecl;external Clib name 'SetWildcardTranslationMode';
|
|
|
|
procedure _splitpath (path:PAnsiChar;
|
|
drive:PAnsiChar;
|
|
dir:PAnsiChar;
|
|
fname:PAnsiChar;
|
|
ext:PAnsiChar);cdecl;external Clib name '_splitpath';
|
|
|
|
function StripFileServerFromPath (path:PAnsiChar;
|
|
server:PAnsiChar):PAnsiChar;cdecl;external Clib name 'StripFileServerFromPath';
|
|
function UpdateDirectoryEntry (handle:longint):longint;cdecl;external Clib name 'UpdateDirectoryEntry';
|
|
|
|
{------------------------------------------------------------------------------}
|
|
const
|
|
TYPE_NORMAL_SERVER = 0;
|
|
TYPE_IO_ENGINE = 1;
|
|
TYPE_MS_ENGINE = 2;
|
|
LOADER_TYPE_DOS = 1;
|
|
LOADER_TYPE_OS2 = 2;
|
|
LOADER_TYPE_MSWIN31 = 3;
|
|
RSUPER = 3;
|
|
{$include npackon.inc}
|
|
type
|
|
|
|
PFILE_SERV_INFO = ^TFILE_SERV_INFO;
|
|
TFILE_SERV_INFO = record
|
|
serverName : array[0..47] of AnsiChar;
|
|
netwareVersion : byte;
|
|
netwareSubVersion : byte;
|
|
maxConnectionsSupported : word;
|
|
connectionsInUse : word;
|
|
maxVolumesSupported : word;
|
|
revisionLevel : byte;
|
|
SFTLevel : byte;
|
|
TTSLevel : byte;
|
|
peakConnectionsUsed : word;
|
|
accountingVersion : byte;
|
|
VAPversion : byte;
|
|
queingVersion : byte;
|
|
printServerVersion : byte;
|
|
virtualConsoleVersion : byte;
|
|
securityRestrictionLevel : byte;
|
|
internetBridgeSupport : byte;
|
|
reserved : array[0..59] of byte;
|
|
CLibMajorVersion : byte;
|
|
CLibMinorVersion : byte;
|
|
CLibRevision : byte;
|
|
end;
|
|
|
|
{$include npackoff.inc}
|
|
|
|
function CheckConsolePrivileges:longint;cdecl;external Clib name 'CheckConsolePrivileges';
|
|
function CheckNetWareVersion (majorVersion,
|
|
minorVersion,
|
|
revisionNumber,
|
|
minimumSFTLevel,
|
|
minimumTTSLevel:word):longint;cdecl;external Clib name 'CheckNetWareVersion';
|
|
function ClearConnectionNumber(connectionNumber:word):longint;cdecl;external Clib name 'ClearConnectionNumber';
|
|
function DisableFileServerLogin:longint;cdecl;external Clib name 'DisableFileServerLogin';
|
|
function DisableTransactionTracking:longint;cdecl;external Clib name 'DisableTransactionTracking';
|
|
function DownFileServer(forceFlag:longint):longint;cdecl;external Clib name 'DownFileServer';
|
|
function EnableFileServerLogin:longint;cdecl;external Clib name 'EnableFileServerLogin';
|
|
function EnableTransactionTracking:longint;cdecl;external Clib name 'EnableTransactionTracking';
|
|
function GetBinderyObjectDiskSpaceLeft (connectionID:word;
|
|
binderyObjectID:longint;
|
|
systemElapsedTime:PLongint;
|
|
unusedDiskBlocks:PLongint;
|
|
restrictionEnforced:PBYTE):longint;cdecl;external Clib name 'GetBinderyObjectDiskSpaceLeft';
|
|
function GetBinderyObjectDiskSpaceLeft (connectionID:word;
|
|
binderyObjectID:longint;
|
|
var systemElapsedTime:Longint;
|
|
var unusedDiskBlocks:Longint;
|
|
var restrictionEnforced:byte):longint;cdecl;external Clib name 'GetBinderyObjectDiskSpaceLeft';
|
|
function GetDiskUtilization (objectID:longint;
|
|
volumeNumber:AnsiChar;
|
|
usedDirectories:PLongint;
|
|
usedFiles:PLongint;
|
|
usedBlocks:PLongint):longint;cdecl;external Clib name 'GetDiskUtilization';
|
|
function GetDiskUtilization (objectID:longint;
|
|
volumeNumber:AnsiChar;
|
|
var usedDirectories:Longint;
|
|
var usedFiles:Longint;
|
|
var usedBlocks:Longint):longint; cdecl;external Clib name 'GetDiskUtilization';
|
|
|
|
//procedure GetFileServerConnectionID(fileServerName:PAnsiChar; connectionID:PWORD);cdecl;external Clib name 'GetFileServerConnectionID';
|
|
procedure GetFileServerDateAndTime(dateAndTime:PBYTE);cdecl;external Clib name 'GetFileServerDateAndTime';
|
|
procedure GetFileServerDateAndTime(var dateAndTime);cdecl;external Clib name 'GetFileServerDateAndTime';
|
|
function GetFileServerDescriptionStrings (company_Name:PAnsiChar;
|
|
revision:PAnsiChar;
|
|
revisionDate:PAnsiChar;
|
|
copyrightNotice:PAnsiChar):longint;cdecl;external Clib name 'GetFileServerDescriptionStrings';
|
|
function GetFileServerLoginStatus (loginEnabledFlag:PLongint):longint;cdecl;external Clib name 'GetFileServerLoginStatus';
|
|
function GetFileServerLoginStatus (var loginEnabledFlag:Longint):longint;cdecl;external Clib name 'GetFileServerLoginStatus';
|
|
procedure GetFileServerName(connectionID:word; fileServerName:PAnsiChar);cdecl;external Clib name 'GetFileServerName';
|
|
function GetServerConfigurationInfo (serverType:PLongint;
|
|
loaderType:PLongint):longint;cdecl;external Clib name 'GetServerConfigurationInfo';
|
|
function GetServerConfigurationInfo (var serverType:Longint;
|
|
var loaderType:Longint):longint;cdecl;external Clib name 'GetServerConfigurationInfo';
|
|
function GetServerInformation (returnSize:longint;
|
|
serverInfo:PFILE_SERV_INFO):longint;cdecl;external Clib name 'GetServerInformation';
|
|
function GetServerInformation (returnSize:longint;
|
|
var serverInfo:TFILE_SERV_INFO):longint;cdecl;external Clib name 'GetServerInformation';
|
|
function GetServerMemorySize:longint;cdecl;external Clib name 'GetServerMemorySize';
|
|
function GetServerUtilization:longint;cdecl;external Clib name 'GetServerUtilization';
|
|
function SendConsoleBroadcast(msg:PAnsiChar;
|
|
connectionCount:word;
|
|
connectionList:PWORD):longint;cdecl;external Clib name 'SendConsoleBroadcast';
|
|
function SendConsoleBroadcast(msg:PAnsiChar;
|
|
connectionCount:word;
|
|
const connectionList:array of word):longint;cdecl;external Clib name 'SendConsoleBroadcast';
|
|
function SetFileServerDateAndTime (year,month,day,hour,minute,second:word):longint;cdecl;external Clib name 'SetFileServerDateAndTime';
|
|
|
|
|
|
{------------------------------------------------------------------------------}
|
|
const
|
|
ENVSERV_OVERHEAD_SIZE = 2 * cardinal(sizeof(WORD));
|
|
ENVSERV_BUFFER1_SIZE = 512 + ENVSERV_OVERHEAD_SIZE;
|
|
ENVSERV_CONN_TYPE_286 = 286;
|
|
ENVSERV_CONN_TYPE_386 = 386;
|
|
|
|
{$include npackon.inc}
|
|
type
|
|
|
|
PCONN_USAGE = ^TCONN_USAGE;
|
|
TCONN_USAGE = record
|
|
systemElapsedTime : longint;
|
|
bytesRead : array[0..5] of byte;
|
|
bytesWritten : array[0..5] of byte;
|
|
totalRequestPackets : longint;
|
|
end;
|
|
|
|
PDISK_CACHE_STATS = ^TDISK_CACHE_STATS;
|
|
TDISK_CACHE_STATS = record
|
|
systemElapsedTime : longint;
|
|
cacheBufferCount : word;
|
|
cacheBufferSize : word;
|
|
dirtyCacheBuffers : word;
|
|
cacheReadRequests : longint;
|
|
cacheWriteRequests : longint;
|
|
cacheHits : longint;
|
|
cacheMisses : longint;
|
|
physicalReadRequests : longint;
|
|
physicalWriteRequests : longint;
|
|
physicalReadErrors : word;
|
|
physicalWriteErrors : word;
|
|
cacheGetRequests : longint;
|
|
cacheFullWriteRequests : longint;
|
|
cachePartialWriteRequests : longint;
|
|
backgroundDirtyWrites : longint;
|
|
backgroundAgedWrites : longint;
|
|
totalCacheWrites : longint;
|
|
cacheAllocations : longint;
|
|
thrashingCount : word;
|
|
LRUBlockWasDirtyCount : word;
|
|
readBeyondWriteCount : word;
|
|
fragmentedWriteCount : word;
|
|
cacheHitOnUnavailCount : word;
|
|
cacheBlockScrappedCount : word;
|
|
end;
|
|
|
|
|
|
PDISK_CHANNEL_STATS = ^TDISK_CHANNEL_STATS;
|
|
TDISK_CHANNEL_STATS = record
|
|
systemElapsedTime : longint;
|
|
channelState : word;
|
|
channelSyncState : word;
|
|
driverType : byte;
|
|
driverMajorVersion : byte;
|
|
driverMinorVersion : byte;
|
|
driverDescription : array[0..64] of AnsiChar;
|
|
IOAddr1 : word;
|
|
IOAddr1Size : word;
|
|
IOAddr2 : word;
|
|
IOAddr2Size : word;
|
|
sharedMem1Seg : array[0..2] of byte;
|
|
sharedMem1Ofs : word;
|
|
sharedMem2Seg : array[0..2] of byte;
|
|
sharedMem2Ofs : word;
|
|
interrupt1Used : byte;
|
|
interrupt1 : byte;
|
|
interrupt2Used : byte;
|
|
interrupt2 : byte;
|
|
DMAChannel1Used : byte;
|
|
DMAChannel1 : byte;
|
|
DMAChannel2Used : byte;
|
|
DMAChannel2 : byte;
|
|
reserved2 : word;
|
|
configDescription : array[0..79] of AnsiChar;
|
|
end;
|
|
|
|
|
|
PDRIVE_MAP_TABLE = ^TDRIVE_MAP_TABLE;
|
|
TDRIVE_MAP_TABLE = record
|
|
systemElapsedTime : longint;
|
|
SFTLevel : byte;
|
|
logicalDriveCount : byte;
|
|
physicalDriveCount : byte;
|
|
diskChannelTable : array[0..4] of byte;
|
|
pendingIOCommands : word;
|
|
mappingTable : array[0..31] of byte;
|
|
driveMirrorTable : array[0..31] of byte;
|
|
deadMirrorTable : array[0..31] of byte;
|
|
remirroredDrive : byte;
|
|
reserved : byte;
|
|
remirroredBlock : longint;
|
|
SFTErrorTable : array[0..59] of word;
|
|
end;
|
|
|
|
|
|
PSERVER_LAN_IO = ^TSERVER_LAN_IO;
|
|
TSERVER_LAN_IO = record
|
|
systemElapsedTime : longint;
|
|
maxRoutingBuffersAvail : word;
|
|
maxRoutingBuffersUsed : word;
|
|
routingBuffersInUse : word;
|
|
totalFileServicePackets : longint;
|
|
fileServicePacketsBuffered : word;
|
|
invalidConnPacketCount : word;
|
|
badLogicalConnCount : word;
|
|
packetsRcvdDuringProcCount : word;
|
|
reprocessedRequestCount : word;
|
|
badSequenceNumberPacketCount : word;
|
|
duplicateReplyCount : word;
|
|
acknowledgementsSent : word;
|
|
badRequestTypeCount : word;
|
|
attachDuringProcCount : word;
|
|
attachWhileAttachingCount : word;
|
|
forgedDetachRequestCount : word;
|
|
badConnNumberOnDetachCount : word;
|
|
detachDuringProcCount : word;
|
|
repliesCanceledCount : word;
|
|
hopCountDiscardCount : word;
|
|
unknownNetDiscardCount : word;
|
|
noDGroupBufferDiscardCount : word;
|
|
outPacketNoBufferDiscardCount : word;
|
|
IPXNotMyNetworkCount : word;
|
|
NetBIOSPropagationCount : longint;
|
|
totalOtherPackets : longint;
|
|
totalRoutedPackets : longint;
|
|
end;
|
|
|
|
|
|
PSERVER_MISC_INFO = ^TSERVER_MISC_INFO;
|
|
TSERVER_MISC_INFO = record
|
|
systemElapsedTime : longint;
|
|
processorType : byte;
|
|
reserved : byte;
|
|
serviceProcessCount : byte;
|
|
serverUtilizationPercent : byte;
|
|
maxBinderyObjectsAvail : word;
|
|
maxBinderyObjectsUsed : word;
|
|
binderyObjectsInUse : word;
|
|
serverMemoryInK : word;
|
|
serverWastedMemoryInK : word;
|
|
dynamicAreaCount : word;
|
|
dynamicSpace1 : longint;
|
|
maxUsedDynamicSpace1 : longint;
|
|
dynamicSpaceInUse1 : longint;
|
|
dynamicSpace2 : longint;
|
|
maxUsedDynamicSpace2 : longint;
|
|
dynamicSpaceInUse2 : longint;
|
|
dynamicSpace3 : longint;
|
|
maxUsedDynamicSpace3 : longint;
|
|
dynamicSpaceInUse3 : longint;
|
|
end;
|
|
|
|
|
|
PFILE_SYS_STATS = ^TFILE_SYS_STATS;
|
|
TFILE_SYS_STATS = record
|
|
systemElapsedTime : longint;
|
|
maxOpenFiles : word;
|
|
maxFilesOpened : word;
|
|
currOpenFiles : word;
|
|
totalFilesOpened : longint;
|
|
totalReadRequests : longint;
|
|
totalWriteRequests : longint;
|
|
currChangedFATSectors : word;
|
|
totalChangedFATSectors : longint;
|
|
FATWriteErrors : word;
|
|
fatalFATWriteErrors : word;
|
|
FATScanErrors : word;
|
|
maxIndexFilesOpened : word;
|
|
currOpenIndexedFiles : word;
|
|
attachedIndexFiles : word;
|
|
availableIndexFiles : word;
|
|
end;
|
|
|
|
|
|
PLAN_CONFIG = ^TLAN_CONFIG;
|
|
TLAN_CONFIG = record
|
|
networkAddress : array[0..3] of byte;
|
|
hostAddress : array[0..5] of byte;
|
|
LANDriverInstalled : byte;
|
|
optionNumber : byte;
|
|
configurationText : array[0..159] of AnsiChar;
|
|
end;
|
|
|
|
PPHYS_DISK_STATS = ^TPHYS_DISK_STATS;
|
|
TPHYS_DISK_STATS = record
|
|
systemElapsedTime : longint;
|
|
diskChannel : byte;
|
|
diskRemovable : byte;
|
|
driveType : byte;
|
|
controllerDriveNumber : byte;
|
|
controllerNumber : byte;
|
|
controllerType : byte;
|
|
driveSize : longint;
|
|
driveCylinders : word;
|
|
driveHeads : byte;
|
|
sectorsPerTrack : byte;
|
|
driveDefinition : array[0..63] of AnsiChar;
|
|
IOErrorCount : word;
|
|
hotFixStart : longint;
|
|
hotFixSize : word;
|
|
hotFixBlockAvailable : word;
|
|
hotFixDisabled : byte;
|
|
end;
|
|
|
|
|
|
PTTS_STATS = ^TTTS_STATS;
|
|
TTTS_STATS = record
|
|
systemElapsedTime : longint;
|
|
TTS_Supported : byte;
|
|
TTS_Enabled : byte;
|
|
TTS_VolumeNumber : word;
|
|
TTS_MaxOpenTransactions : word;
|
|
TTS_MaxTransactionsOpened : word;
|
|
TTS_CurrTransactionsOpen : word;
|
|
TTS_TotalTransactions : longint;
|
|
TTS_TotalWrites : longint;
|
|
TTS_TotalBackouts : longint;
|
|
TTS_UnfilledBackouts : word;
|
|
TTS_DiskBlocksInUse : word;
|
|
TTS_FATAllocations : longint;
|
|
TTS_FileSizeChanges : longint;
|
|
TTS_FilesTruncated : longint;
|
|
numberOfTransactions : byte;
|
|
end;
|
|
|
|
PTTS_CONNECTIONS = ^TTTS_CONNECTIONS;
|
|
TTTS_CONNECTIONS = record
|
|
connectionNumber : byte;
|
|
taskNumber : byte;
|
|
end;
|
|
|
|
|
|
PCONN_OPEN_FILES_286 = ^TCONN_OPEN_FILES_286;
|
|
TCONN_OPEN_FILES_286 = record
|
|
taskNumber : byte;
|
|
lockType : byte;
|
|
accessControl : byte;
|
|
lockFlag : byte;
|
|
volumeNumber : byte;
|
|
dirEntry : word;
|
|
fileName : array[0..13] of AnsiChar;
|
|
end;
|
|
|
|
PCONN_OPEN_FILES_386 = ^TCONN_OPEN_FILES_386;
|
|
TCONN_OPEN_FILES_386 = record
|
|
taskNumber : word;
|
|
lockType : byte;
|
|
accessControl : byte;
|
|
lockFlag : byte;
|
|
volumeNumber : byte;
|
|
parentDirEntry : longint;
|
|
dirEntry : longint;
|
|
forkCount : byte;
|
|
nameSpace : byte;
|
|
nameLength : byte;
|
|
fileName : array[0..255] of byte;
|
|
end;
|
|
|
|
PCONN_OPEN_FILES = ^TCONN_OPEN_FILES;
|
|
TCONN_OPEN_FILES = record
|
|
unionType : word;
|
|
u : record
|
|
case longint of
|
|
0 : ( con286 : TCONN_OPEN_FILES_286 );
|
|
1 : ( con386 : TCONN_OPEN_FILES_386 );
|
|
end;
|
|
end;
|
|
|
|
PCONN_SEMAPHORE_286 = ^TCONN_SEMAPHORE_286;
|
|
TCONN_SEMAPHORE_286 = record
|
|
openCount : word;
|
|
semaphoreValue : byte;
|
|
taskNumber : byte;
|
|
nameLength : byte;
|
|
semaphoreName : array[0..254] of byte;
|
|
end;
|
|
|
|
PCONN_SEMAPHORE_386 = ^TCONN_SEMAPHORE_386;
|
|
TCONN_SEMAPHORE_386 = record
|
|
openCount : word;
|
|
semaphoreValue : word;
|
|
taskNumber : word;
|
|
nameLength : byte;
|
|
semaphoreName : array[0..254] of byte;
|
|
end;
|
|
|
|
PCONN_SEMAPHORE = ^TCONN_SEMAPHORE;
|
|
TCONN_SEMAPHORE = record
|
|
unionType : word;
|
|
u : record
|
|
case longint of
|
|
0 : ( con286 : TCONN_SEMAPHORE_286 );
|
|
1 : ( con386 : TCONN_SEMAPHORE_386 );
|
|
end;
|
|
end;
|
|
|
|
PCONN_TASK_INFO_286 = ^TCONN_TASK_INFO_286;
|
|
TCONN_TASK_INFO_286 = record
|
|
unionType : word;
|
|
lockStatus : byte;
|
|
waitRecord : record
|
|
case longint of
|
|
0 : ( LockStatus1 : record
|
|
taskNumber : byte;
|
|
beginAddress : word;
|
|
endAddress : word;
|
|
volumeNumber : byte;
|
|
directoryEntry : word;
|
|
nameLength : byte;
|
|
name : byte;
|
|
end );
|
|
1 : ( LockStatus2 : record
|
|
taskNumber : byte;
|
|
volumeNumber : byte;
|
|
directoryEntry : word;
|
|
nameLength : byte;
|
|
name : byte;
|
|
end );
|
|
2 : ( LockStatus3Or4 : record
|
|
taskNumber : byte;
|
|
nameLength : byte;
|
|
name : byte;
|
|
end );
|
|
end;
|
|
end;
|
|
|
|
PCONN_TASK_INFO_386 = ^TCONN_TASK_INFO_386;
|
|
TCONN_TASK_INFO_386 = record
|
|
unionType : word;
|
|
lockStatus : byte;
|
|
waitRecord : record
|
|
case longint of
|
|
0 : ( LockStatus1 : record
|
|
taskNumber : word;
|
|
beginAddress : longint;
|
|
endAddress : longint;
|
|
volumeNumber : word;
|
|
parentID : longint;
|
|
directoryEntry : longint;
|
|
forkCount : byte;
|
|
nameSpace : byte;
|
|
nameLength : byte;
|
|
name : byte;
|
|
end );
|
|
1 : ( LockStatus2 : record
|
|
taskNumber : word;
|
|
volumeNumber : word;
|
|
parentID : longint;
|
|
directoryEntry : longint;
|
|
forkCount : byte;
|
|
nameSpace : byte;
|
|
nameLength : byte;
|
|
name : byte;
|
|
end );
|
|
2 : ( LockStatus3Or4 : record
|
|
taskNumber : word;
|
|
nameLength : byte;
|
|
name : byte;
|
|
end );
|
|
end;
|
|
end;
|
|
|
|
PCONN_TASK_PAIRS_286 = ^TCONN_TASK_PAIRS_286;
|
|
TCONN_TASK_PAIRS_286 = record
|
|
task : byte;
|
|
taskStatus : byte;
|
|
end;
|
|
|
|
PCONN_TASK_PAIRS_386 = ^TCONN_TASK_PAIRS_386;
|
|
TCONN_TASK_PAIRS_386 = record
|
|
task : word;
|
|
taskStatus : byte;
|
|
end;
|
|
|
|
PCONN_USING_FILE_REQ_286 = ^TCONN_USING_FILE_REQ_286;
|
|
TCONN_USING_FILE_REQ_286 = record
|
|
lastRecordSeen : word;
|
|
directoryHandle : byte;
|
|
pathLength : byte;
|
|
path : array[0..254] of byte;
|
|
end;
|
|
|
|
PCONN_USING_FILE_REQ_386 = ^TCONN_USING_FILE_REQ_386;
|
|
TCONN_USING_FILE_REQ_386 = record
|
|
forkType : byte;
|
|
volume : byte;
|
|
directoryID : longint;
|
|
nextRecord : word;
|
|
end;
|
|
|
|
PCONN_USING_FILE_REQUEST = ^TCONN_USING_FILE_REQUEST;
|
|
TCONN_USING_FILE_REQUEST = record
|
|
unionType : word;
|
|
reserved1 : word;
|
|
reserved2 : byte;
|
|
request : record
|
|
case longint of
|
|
0 : ( req286 : TCONN_USING_FILE_REQ_286 );
|
|
1 : ( req386 : TCONN_USING_FILE_REQ_386 );
|
|
end;
|
|
end;
|
|
|
|
PCONN_USING_FILE_REPLY_286 = ^TCONN_USING_FILE_REPLY_286;
|
|
TCONN_USING_FILE_REPLY_286 = record
|
|
useCount : word;
|
|
openCount : word;
|
|
openForReadCount : word;
|
|
openForWriteCount : word;
|
|
denyReadCount : word;
|
|
denyWriteCount : word;
|
|
nextRequestRecord : word;
|
|
locked : byte;
|
|
numberOfRecords : word;
|
|
end;
|
|
|
|
PCONN_USING_FILE_REPLY_386 = ^TCONN_USING_FILE_REPLY_386;
|
|
TCONN_USING_FILE_REPLY_386 = record
|
|
nextRequestRecord : word;
|
|
useCount : word;
|
|
openCount : word;
|
|
openForReadCount : word;
|
|
openForWriteCount : word;
|
|
denyReadCount : word;
|
|
denyWriteCount : word;
|
|
locked : byte;
|
|
forkCount : byte;
|
|
numberOfRecords : word;
|
|
end;
|
|
|
|
PCONN_USING_FILE_RECORD_286 = ^TCONN_USING_FILE_RECORD_286;
|
|
TCONN_USING_FILE_RECORD_286 = record
|
|
connectionNumber : word;
|
|
taskNumber : byte;
|
|
lockType : byte;
|
|
accessFlags : byte;
|
|
lockStatus : byte;
|
|
end;
|
|
|
|
PCONN_USING_FILE_RECORD_386 = ^TCONN_USING_FILE_RECORD_386;
|
|
TCONN_USING_FILE_RECORD_386 = record
|
|
connectionNumber : word;
|
|
taskNumber : word;
|
|
lockType : byte;
|
|
accessFlags : byte;
|
|
lockStatus : byte;
|
|
end;
|
|
|
|
PCONN_USING_FILE_REPLY = ^TCONN_USING_FILE_REPLY;
|
|
TCONN_USING_FILE_REPLY = record
|
|
unionType : word;
|
|
reply : record
|
|
case longint of
|
|
0 : ( rep286 : TCONN_USING_FILE_REPLY_286 );
|
|
1 : ( rep386 : TCONN_USING_FILE_REPLY_386 );
|
|
end;
|
|
end;
|
|
|
|
PLOGICAL_RECORD_INFO_286 = ^TLOGICAL_RECORD_INFO_286;
|
|
TLOGICAL_RECORD_INFO_286 = record
|
|
useCount : word;
|
|
shareableLockCount : word;
|
|
nextRequestRecord : word;
|
|
locked : byte;
|
|
numberOfRecords : byte;
|
|
end;
|
|
|
|
PLOGICAL_RECORD_INFO_386 = ^TLOGICAL_RECORD_INFO_386;
|
|
TLOGICAL_RECORD_INFO_386 = record
|
|
useCount : word;
|
|
shareableLockCount : word;
|
|
locked : byte;
|
|
nextRequestRecord : word;
|
|
numberOfRecords : word;
|
|
end;
|
|
|
|
PLOGICAL_RECORD_286 = ^TLOGICAL_RECORD_286;
|
|
TLOGICAL_RECORD_286 = record
|
|
connectionNumber : word;
|
|
taskNumber : byte;
|
|
lockStatus : byte;
|
|
end;
|
|
|
|
PLOGICAL_RECORD_386 = ^TLOGICAL_RECORD_386;
|
|
TLOGICAL_RECORD_386 = record
|
|
connectionNumber : word;
|
|
taskNumber : word;
|
|
lockStatus : byte;
|
|
end;
|
|
|
|
PLOGICAL_RECORD_INFO = ^TLOGICAL_RECORD_INFO;
|
|
TLOGICAL_RECORD_INFO = record
|
|
unionType : word;
|
|
u : record
|
|
case longint of
|
|
0 : ( lr286 : TLOGICAL_RECORD_INFO_286 );
|
|
1 : ( lr386 : TLOGICAL_RECORD_INFO_386 );
|
|
end;
|
|
end;
|
|
|
|
PLOGICAL_RECORD_REQUEST = ^TLOGICAL_RECORD_REQUEST;
|
|
TLOGICAL_RECORD_REQUEST = record
|
|
reserved1 : word;
|
|
reserved2 : byte;
|
|
nextRecord : word;
|
|
nameLength : byte;
|
|
name : array[0..254] of byte;
|
|
end;
|
|
|
|
PCONN_LOGICAL_RECORD_286 = ^TCONN_LOGICAL_RECORD_286;
|
|
TCONN_LOGICAL_RECORD_286 = record
|
|
nextRequest : word;
|
|
numberOfRecords : byte;
|
|
end;
|
|
|
|
PCONN_LOGICAL_RECORD_386 = ^TCONN_LOGICAL_RECORD_386;
|
|
TCONN_LOGICAL_RECORD_386 = record
|
|
nextRequest : word;
|
|
numberOfRecords : word;
|
|
end;
|
|
|
|
PCONN_LOGICAL_RECORD = ^TCONN_LOGICAL_RECORD;
|
|
TCONN_LOGICAL_RECORD = record
|
|
unionType : word;
|
|
u : record
|
|
case longint of
|
|
0 : ( lr286 : TCONN_LOGICAL_RECORD_286 );
|
|
1 : ( lr386 : TCONN_LOGICAL_RECORD_386 );
|
|
end;
|
|
end;
|
|
|
|
PCONN_LOGICAL_RECORD_BLOCK_286 = ^TCONN_LOGICAL_RECORD_BLOCK_286;
|
|
TCONN_LOGICAL_RECORD_BLOCK_286 = record
|
|
taskNumber : byte;
|
|
lockStatus : byte;
|
|
lockNameLength : byte;
|
|
lockName : byte;
|
|
end;
|
|
|
|
PCONN_LOGICAL_RECORD_BLOCK_386 = ^TCONN_LOGICAL_RECORD_BLOCK_386;
|
|
TCONN_LOGICAL_RECORD_BLOCK_386 = record
|
|
taskNumber : word;
|
|
lockStatus : byte;
|
|
lockNameLength : byte;
|
|
lockName : byte;
|
|
end;
|
|
|
|
PFILE_PHYSICAL_RECORD_LOCK_286 = ^TFILE_PHYSICAL_RECORD_LOCK_286;
|
|
TFILE_PHYSICAL_RECORD_LOCK_286 = record
|
|
nextRequest : word;
|
|
numberOfLocks : byte;
|
|
reserved : byte;
|
|
end;
|
|
|
|
PFILE_PHYSICAL_RECORD_LOCK_386 = ^TFILE_PHYSICAL_RECORD_LOCK_386;
|
|
TFILE_PHYSICAL_RECORD_LOCK_386 = record
|
|
nextRequest : word;
|
|
numberOfLocks : word;
|
|
end;
|
|
|
|
PFILE_PHYSICAL_RECORD_LOCK = ^TFILE_PHYSICAL_RECORD_LOCK;
|
|
TFILE_PHYSICAL_RECORD_LOCK = record
|
|
unionType : word;
|
|
u : record
|
|
case longint of
|
|
0 : ( pr286 : TFILE_PHYSICAL_RECORD_LOCK_286 );
|
|
1 : ( pr386 : TFILE_PHYSICAL_RECORD_LOCK_286 );
|
|
end;
|
|
end;
|
|
|
|
PFILE_PHYSICAL_RECORD_286 = ^TFILE_PHYSICAL_RECORD_286;
|
|
TFILE_PHYSICAL_RECORD_286 = record
|
|
loggedCount : word;
|
|
shareLockCount : word;
|
|
recordStart : longint;
|
|
recordEnd : longint;
|
|
connectionNumber : word;
|
|
taskNumber : byte;
|
|
lockType : byte;
|
|
end;
|
|
|
|
PFILE_PHYSICAL_RECORD_386 = ^TFILE_PHYSICAL_RECORD_386;
|
|
TFILE_PHYSICAL_RECORD_386 = record
|
|
loggedCount : word;
|
|
shareLockCount : word;
|
|
recordStart : longint;
|
|
recordEnd : longint;
|
|
connectionNumber : word;
|
|
taskNumber : word;
|
|
lockType : byte;
|
|
end;
|
|
|
|
PFILE_PHYSICAL_REQUEST_286 = ^TFILE_PHYSICAL_REQUEST_286;
|
|
TFILE_PHYSICAL_REQUEST_286 = record
|
|
lastRecord : word;
|
|
directoryHandle : byte;
|
|
pathLength : byte;
|
|
name : array[0..254] of byte;
|
|
end;
|
|
|
|
PFILE_PHYSICAL_REQUEST_386 = ^TFILE_PHYSICAL_REQUEST_386;
|
|
TFILE_PHYSICAL_REQUEST_386 = record
|
|
forkType : byte;
|
|
volume : byte;
|
|
directoryID : longint;
|
|
next : word;
|
|
end;
|
|
|
|
PFILE_PHYSICAL_RECORD_REQUEST = ^TFILE_PHYSICAL_RECORD_REQUEST;
|
|
TFILE_PHYSICAL_RECORD_REQUEST = record
|
|
unionType : word;
|
|
reserved1 : word;
|
|
reserved2 : byte;
|
|
u : record
|
|
case longint of
|
|
0 : ( pr286 : TFILE_PHYSICAL_REQUEST_286 );
|
|
1 : ( pr386 : TFILE_PHYSICAL_REQUEST_386 );
|
|
end;
|
|
end;
|
|
|
|
PCONN_RECORD_LOCKS_286 = ^TCONN_RECORD_LOCKS_286;
|
|
TCONN_RECORD_LOCKS_286 = record
|
|
nextRecord : word;
|
|
numberOfLocks : byte;
|
|
reserved : byte;
|
|
end;
|
|
|
|
PCONN_RECORD_LOCKS_386 = ^TCONN_RECORD_LOCKS_386;
|
|
TCONN_RECORD_LOCKS_386 = record
|
|
nextRecord : word;
|
|
numberOfLocks : word;
|
|
end;
|
|
|
|
PCONN_RECORD_LOCKS = ^TCONN_RECORD_LOCKS;
|
|
TCONN_RECORD_LOCKS = record
|
|
unionType : word;
|
|
u : record
|
|
case longint of
|
|
0 : ( rl286 : TCONN_RECORD_LOCKS_286 );
|
|
1 : ( rl386 : TCONN_RECORD_LOCKS_386 );
|
|
end;
|
|
end;
|
|
|
|
PCONN_LOCK_RECORD_286 = ^TCONN_LOCK_RECORD_286;
|
|
TCONN_LOCK_RECORD_286 = record
|
|
taskNumber : byte;
|
|
lockFlag : byte;
|
|
recordStart : longint;
|
|
recordEnd : longint;
|
|
end;
|
|
|
|
PCONN_LOCK_RECORD_386 = ^TCONN_LOCK_RECORD_386;
|
|
TCONN_LOCK_RECORD_386 = record
|
|
taskNumber : word;
|
|
lockFlag : byte;
|
|
recordStart : longint;
|
|
recordEnd : longint;
|
|
end;
|
|
|
|
PCONN_LOCK_REQUEST_286 = ^TCONN_LOCK_REQUEST_286;
|
|
TCONN_LOCK_REQUEST_286 = record
|
|
connectionNumber : word;
|
|
lastRecord : word;
|
|
volume : byte;
|
|
directoryID : word;
|
|
pathLength : byte;
|
|
fileName : array[0..13] of byte;
|
|
end;
|
|
|
|
PCONN_LOCK_REQUEST_386 = ^TCONN_LOCK_REQUEST_386;
|
|
TCONN_LOCK_REQUEST_386 = record
|
|
connectionNumber : word;
|
|
forkType : byte;
|
|
volume : byte;
|
|
directoryID : longint;
|
|
next : word;
|
|
end;
|
|
|
|
PCONN_LOCK_REQUEST = ^TCONN_LOCK_REQUEST;
|
|
TCONN_LOCK_REQUEST = record
|
|
unionType : word;
|
|
reserved1 : word;
|
|
reserved2 : byte;
|
|
u : record
|
|
case longint of
|
|
0 : ( lr286 : TCONN_LOCK_REQUEST_286 );
|
|
1 : ( lr386 : TCONN_LOCK_REQUEST_386 );
|
|
end;
|
|
end;
|
|
|
|
PSEMAPHORE_INFO_286 = ^TSEMAPHORE_INFO_286;
|
|
TSEMAPHORE_INFO_286 = record
|
|
nextRequest : word;
|
|
openCount : word;
|
|
semaphoreValue : byte;
|
|
numberOfRecords : byte;
|
|
end;
|
|
|
|
PSEMAPHORE_INFO_386 = ^TSEMAPHORE_INFO_386;
|
|
TSEMAPHORE_INFO_386 = record
|
|
nextRequest : word;
|
|
openCount : word;
|
|
semaphoreValue : word;
|
|
numberOfRecords : word;
|
|
end;
|
|
|
|
PSEMAPHORE_INFO = ^TSEMAPHORE_INFO;
|
|
TSEMAPHORE_INFO = record
|
|
unionType : word;
|
|
u : record
|
|
case longint of
|
|
0 : ( si286 : TSEMAPHORE_INFO_286 );
|
|
1 : ( si386 : TSEMAPHORE_INFO_386 );
|
|
end;
|
|
end;
|
|
|
|
PSEMAPHORE_INFO_RECORD_286 = ^TSEMAPHORE_INFO_RECORD_286;
|
|
TSEMAPHORE_INFO_RECORD_286 = record
|
|
connectionNumber : word;
|
|
taskNumber : byte;
|
|
end;
|
|
|
|
PSEMAPHORE_INFO_RECORD_386 = ^TSEMAPHORE_INFO_RECORD_386;
|
|
TSEMAPHORE_INFO_RECORD_386 = record
|
|
connectionNumber : word;
|
|
taskNumber : word;
|
|
end;
|
|
|
|
PSEMAPHORE_INFO_REQUEST = ^TSEMAPHORE_INFO_REQUEST;
|
|
TSEMAPHORE_INFO_REQUEST = record
|
|
reserved1 : word;
|
|
reserved2 : byte;
|
|
nextRecord : word;
|
|
nameLength : byte;
|
|
name : array[0..254] of byte;
|
|
end;
|
|
|
|
{$include npackoff.inc}
|
|
|
|
function GetConnectionsOpenFiles(connectionNumber:word; lastRecord:Plongint; lastTask:Plongint; structSize:longint; openFiles:PCONN_OPEN_FILES;
|
|
buffer:pointer; bufferSize:longint):longint;cdecl;external Clib name 'GetConnectionsOpenFiles';
|
|
function GetConnectionsTaskInformation(connectionNumber:word; connectionTaskInfo:Ppointer; buffer:pointer; bufferSize:longint):longint;cdecl;external Clib name 'GetConnectionsTaskInformation';
|
|
function GetConnectionsUsageStats(connectionNumber:longint; connectionUsage:PCONN_USAGE):longint;cdecl;external Clib name 'GetConnectionsUsageStats';
|
|
function GetConnectionsUsingFile(requestSize:longint; request:pointer; buffer:pointer; bufferSize:longint):longint;cdecl;external Clib name 'GetConnectionsUsingFile';
|
|
function GetDiskCacheStats(cacheStats:PDISK_CACHE_STATS):longint;cdecl;external Clib name 'GetDiskCacheStats';
|
|
function GetDiskCacheStats(var cacheStats:TDISK_CACHE_STATS):longint;cdecl;external Clib name 'GetDiskCacheStats';
|
|
function GetDiskChannelStats(channelNumber:longint; diskChannelStats:PDISK_CHANNEL_STATS):longint;cdecl;external Clib name 'GetDiskChannelStats';
|
|
function GetDiskChannelStats(channelNumber:longint; var diskChannelStats:TDISK_CHANNEL_STATS):longint;cdecl;external Clib name 'GetDiskChannelStats';
|
|
function GetDriveMappingTable(driveMappingTable:PDRIVE_MAP_TABLE):longint;cdecl;external Clib name 'GetDriveMappingTable';
|
|
function GetDriveMappingTable(var driveMappingTable:TDRIVE_MAP_TABLE):longint;cdecl;external Clib name 'GetDriveMappingTable';
|
|
function GetFileServerLANIOStats(serverLANIOStats:PSERVER_LAN_IO):longint;cdecl;external Clib name 'GetFileServerLANIOStats';
|
|
function GetFileServerLANIOStats(var serverLANIOStats:TSERVER_LAN_IO):longint;cdecl;external Clib name 'GetFileServerLANIOStats';
|
|
function GetFileServerMiscInformation(miscInformation:PSERVER_MISC_INFO):longint;cdecl;external Clib name 'GetFileServerMiscInformation';
|
|
function GetFileServerMiscInformation(var miscInformation:TSERVER_MISC_INFO):longint;cdecl;external Clib name 'GetFileServerMiscInformation';
|
|
function GetFileSystemStats(fileSysStats:PFILE_SYS_STATS):longint;cdecl;external Clib name 'GetFileSystemStats';
|
|
function GetFileSystemStats(var fileSysStats:TFILE_SYS_STATS):longint;cdecl;external Clib name 'GetFileSystemStats';
|
|
function GetLANDriverConfigInfo(LANBoardNumber:byte; LANConfiguration:PLAN_CONFIG):longint;cdecl;external Clib name 'GetLANDriverConfigInfo';
|
|
function GetLANDriverConfigInfo(LANBoardNumber:byte; var LANConfiguration:TLAN_CONFIG):longint;cdecl;external Clib name 'GetLANDriverConfigInfo';
|
|
function GetLogicalRecordInformation(requestSize:longint; request:pointer; buffer:pointer; bufferSize:longint):longint;cdecl;external Clib name 'GetLogicalRecordInformation';
|
|
function GetLogicalRecordsByConnection(connectionNumber:word; nextRecord:word; buffer:pointer; bufferSize:longint):longint;cdecl;external Clib name 'GetLogicalRecordsByConnection';
|
|
function GetPathFromDirectoryEntry(volumeNumber:byte; directoryEntry:word; pathLength:PBYTE; path:PAnsiChar):longint;cdecl;external Clib name 'GetPathFromDirectoryEntry';
|
|
function GetPhysicalDiskStats(physicalDiskNumber:byte; physicalDiskStats:PPHYS_DISK_STATS):longint;cdecl;external Clib name 'GetPhysicalDiskStats';
|
|
function GetPhysicalDiskStats(physicalDiskNumber:byte; var physicalDiskStats:TPHYS_DISK_STATS):longint;cdecl;external Clib name 'GetPhysicalDiskStats';
|
|
function GetPhysicalRecordLocksByFile(requestSize:longint; request:pointer; buffer:pointer; bufferSize:longint):longint;cdecl;external Clib name 'GetPhysicalRecordLocksByFile';
|
|
function GetPhysRecLockByConnectAndFile(requestSize:longint; request:pointer; buffer:pointer; bufferSize:longint):longint;cdecl;external Clib name 'GetPhysRecLockByConnectAndFile';
|
|
function GetSemaphoreInformation(requestSize:longint; request:pointer; buffer:pointer; bufferSize:longint):longint;cdecl;external Clib name 'GetSemaphoreInformation';
|
|
function TTSGetStats(TTSStats:PTTS_STATS; bufferLen:longint; buffer:PBYTE):longint;cdecl;external Clib name 'TTSGetStats';
|
|
function TTSGetStats(var TTSStats:TTTS_STATS; bufferLen:longint; var buffer):longint;cdecl;external Clib name 'TTSGetStats';
|
|
|
|
{------------------------------------------------------------------------------}
|
|
{$include npackon.inc}
|
|
|
|
const
|
|
CRITICAL_ATTRIBUTE_FLAG = $00000080;
|
|
RESERVED_FLAGS_MASK = $0000FFFF;
|
|
USER_FLAGS_MASK = $FFFF0000;
|
|
{------------------------------------------------------------------
|
|
T_enumerateEAnoKey is the structure returned in the dataBuffer
|
|
by EnumerateEA if a empty key (or NULL) is specified. The
|
|
EAsInReply output parameter tells how many T_enumerateEAnoKey
|
|
structures are in the dataBuffer.
|
|
------------------------------------------------------------------ }
|
|
{ length of entire EA }
|
|
{ length of this field is given by keyLength }
|
|
type
|
|
|
|
PT_enumerateEAnoKey = ^TT_enumerateEAnoKey;
|
|
TT_enumerateEAnoKey = record
|
|
valueLength : longint;
|
|
keyLength : word;
|
|
accessFlags : longint;
|
|
keyValue : array[0..0] of AnsiChar;
|
|
end;
|
|
{----------------------------------------------------------------------
|
|
T_enumerateEAwithKey is the structure returned in the dataBuffer
|
|
by EnumerateEA if a non-empty key is specified. In this case the
|
|
EAsInReply output parameter will return one and there will only be
|
|
one T_enumerateEAwithKey structure in the dataBuffer.
|
|
---------------------------------------------------------------------- }
|
|
|
|
PT_enumerateEAwithKey = ^TT_enumerateEAwithKey;
|
|
TT_enumerateEAwithKey = record
|
|
valueLength : longint;
|
|
keyLength : word;
|
|
accessFlags : longint;
|
|
keyExtants : longint;
|
|
valueExtants : longint;
|
|
keyValue : array[0..0] of AnsiChar;
|
|
end;
|
|
|
|
{$include npackoff.inc}
|
|
|
|
function CloseEA(handle:longint):longint;cdecl;external Clib name 'CloseEA';
|
|
function CopyEA (srcPath,destPath:PAnsiChar; destVolumeNumber,destDirectoryNumber:longint;
|
|
EAcount,EAdataSize,EAkeySize:PLongint):longint;cdecl;external Clib name 'CopyEA';
|
|
function CopyEA (srcPath,destPath:PAnsiChar; destVolumeNumber,destDirectoryNumber:longint;
|
|
var EAcount,EAdataSize,EAkeySize:longint):longint;cdecl;external Clib name 'CopyEA';
|
|
|
|
function EnumerateEA(handle:longint; keyBuffer:PAnsiChar; dataBuffer:pointer; dataBufferSize:longint;
|
|
startPosition:longint;
|
|
dataSize,EAsInReply:PLongint):longint;cdecl;external Clib name 'EnumerateEA';
|
|
function EnumerateEA(handle:longint; keyBuffer:PAnsiChar; var dataBuffer; dataBufferSize:longint;
|
|
startPosition:longint;
|
|
var dataSize,EAsInReply:longint):longint;cdecl;external Clib name 'EnumerateEA';
|
|
function EnumerateEA(handle:longint; keyBuffer:PAnsiChar; dataBuffer:pointer; dataBufferSize:longint;
|
|
startPosition:longint;
|
|
var dataSize,EAsInReply:longint):longint;cdecl;external Clib name 'EnumerateEA';
|
|
function GetEAInfo (handle:longint; totalEAs,totalDataSizeOfEAs,totalKeySizeOfEAs:PLongint):longint;cdecl;external Clib name 'GetEAInfo';
|
|
function GetEAInfo (handle:longint; var totalEAs,totalDataSizeOfEAs,totalKeySizeOfEAs:longint):longint;cdecl;external Clib name 'GetEAInfo';
|
|
|
|
function OpenEA(path:PAnsiChar; reserved:longint):longint;cdecl;external Clib name 'OpenEA';
|
|
function ReadEA(handle:longint; keyBuffer:PAnsiChar; dataBuffer:PAnsiChar; dataBufferSize:longint; accessFlags:PLongint):longint;cdecl;external Clib name 'ReadEA';
|
|
function ReadEA(handle:longint; keyBuffer:PAnsiChar; dataBuffer:PAnsiChar; dataBufferSize:longint; var accessFlags:longint):longint;cdecl;external Clib name 'ReadEA';
|
|
function WriteEA(handle:longint; keyBuffer:PAnsiChar; dataBuffer:PAnsiChar; dataBufferSize:longint; accessFlags:longint):longint;cdecl;external Clib name 'WriteEA';
|
|
|
|
{------------------------------------------------------------------------------}
|
|
|
|
const MAX_CONSOLE_MESSAGE_LENGTH = 80;
|
|
MAX_MESSAGE_LENGTH = 58;
|
|
NEW_MAX_MESSAGE_LENGTH = 250;
|
|
|
|
function BroadcastToConsole (msg:PAnsiChar):longint; cdecl;external Clib name 'BroadcastToConsole';
|
|
function DisableStationBroadcasts:longint; cdecl;external Clib name 'DisableStationBroadcasts';
|
|
function EnableStationBroadcasts:longint; cdecl;external Clib name 'EnableStationBroadcasts';
|
|
function GetBroadcastMessage (msgBuffer:PAnsiChar):longint; cdecl;external Clib name 'GetBroadcastMessage';
|
|
function SendBroadcastMessage (msg:PAnsiChar;
|
|
connectionList:PWORD;
|
|
resultList:PBYTE;
|
|
connectionCount:word):longint; cdecl;external Clib name 'SendBroadcastMessage';
|
|
function SendBroadcastMessage (msg:PAnsiChar;
|
|
var connectionList;
|
|
var resultList;
|
|
var connectionCount:word):longint; cdecl;external Clib name 'SendBroadcastMessage';
|
|
|
|
{------------------------------------------------------------------------------}
|
|
{$include npackon.inc}
|
|
|
|
const
|
|
NWMAX_QENTRIES = 250;
|
|
{ the following manifest constant applies to server versions BELOW 3.X }
|
|
NWMAX_JOB_SERVERS = 25;
|
|
{ the following manifest constant applies to server versions ABOVE 2.X }
|
|
NWQ_MAX_JOB_SERVERS = 50;
|
|
QF_AUTO_START = $08;
|
|
QF_SERVICE_RESTART = $10;
|
|
QF_ENTRY_OPEN = $20;
|
|
QF_USER_HOLD = $40;
|
|
QF_OPERATOR_HOLD = $80;
|
|
{ Queue Status Flags }
|
|
QS_CANT_ADD_JOBS = $01;
|
|
QS_SERVERS_CANT_ATTACH = $02;
|
|
QS_CANT_SERVICE_JOBS = $04;
|
|
type
|
|
|
|
PJobStruct = ^TJobStruct;
|
|
TJobStruct = record
|
|
clientStation : byte;
|
|
clientTaskNumber : byte;
|
|
clientIDNumber : longint;
|
|
targetServerIDNumber : longint;
|
|
targetExecutionTime : array[0..5] of byte;
|
|
jobEntryTime : array[0..5] of byte;
|
|
jobNumber : word;
|
|
jobType : word;
|
|
jobPosition : byte;
|
|
jobControlFlags : byte;
|
|
jobFileName : array[0..13] of byte;
|
|
jobFileHandle : array[0..5] of byte;
|
|
serverStation : byte;
|
|
serverTaskNumber : byte;
|
|
serverIDNumber : longint;
|
|
textJobDescription : array[0..49] of byte;
|
|
clientRecordArea : array[0..151] of byte;
|
|
end;
|
|
{ (19)80 - (20)79 }
|
|
{ 1 = January, ... }
|
|
{ 1 - 31 }
|
|
{ 0 - 23 }
|
|
{ 0 - 59 }
|
|
{ 0 - 59 }
|
|
|
|
PNWStandardChronRec_t = ^TNWStandardChronRec_t;
|
|
TNWStandardChronRec_t = record
|
|
year : byte;
|
|
month : byte;
|
|
day : byte;
|
|
hour : byte;
|
|
minute : byte;
|
|
second : byte;
|
|
end;
|
|
|
|
PNWQChronRec_t = ^TNWQChronRec_t;
|
|
TNWQChronRec_t = TNWStandardChronRec_t;
|
|
|
|
PNWFileHandle_t = ^TNWFileHandle_t;
|
|
TNWFileHandle_t = byte;
|
|
|
|
PNWQEntityInfo_t = ^TNWQEntityInfo_t;
|
|
TNWQEntityInfo_t = record
|
|
clientConnNum : longint;
|
|
taskNum : longint;
|
|
id : longint;
|
|
end;
|
|
|
|
PNWQJobServerInfo_t = ^TNWQJobServerInfo_t;
|
|
TNWQJobServerInfo_t = record
|
|
id : longint;
|
|
executionTime : TNWQChronRec_t;
|
|
end;
|
|
|
|
PNWQJobInfo_t = ^TNWQJobInfo_t;
|
|
TNWQJobInfo_t = record
|
|
entryTime : TNWQChronRec_t;
|
|
num : longint;
|
|
_type : word;
|
|
position : word;
|
|
controlFlags : word;
|
|
assocFileName : array[0..13] of AnsiChar;
|
|
fileHandle : TNWFileHandle_t;
|
|
end;
|
|
|
|
PNWQPrintJobInfo_t = ^TNWQPrintJobInfo_t;
|
|
TNWQPrintJobInfo_t = record
|
|
entryTime : TNWQChronRec_t;
|
|
num : longint;
|
|
formType : word;
|
|
position : word;
|
|
controlFlags : word;
|
|
assocFileName : array[0..13] of AnsiChar;
|
|
fileHandle : TNWFileHandle_t;
|
|
end;
|
|
|
|
PNWQJobRec_t = ^TNWQJobRec_t;
|
|
TNWQJobRec_t = record
|
|
reserved : array[0..9] of byte;
|
|
client : TNWQEntityInfo_t;
|
|
target : TNWQJobServerInfo_t;
|
|
job : TNWQJobInfo_t;
|
|
jobServer : TNWQEntityInfo_t;
|
|
textJobDescription : array[0..49] of byte;
|
|
jobServerRecord : array[0..151] of byte;
|
|
end;
|
|
|
|
PNWQPrintServerRec_t = ^TNWQPrintServerRec_t;
|
|
TNWQPrintServerRec_t = record
|
|
versionNumber : byte;
|
|
tabSize : byte;
|
|
numberOfCopies : word;
|
|
printControlFlags : word;
|
|
maxLinesPerPage : word;
|
|
maxCharsPerLine : word;
|
|
formName : array[0..12] of AnsiChar;
|
|
reserve : array[0..8] of byte;
|
|
bannerNameField : array[0..12] of AnsiChar;
|
|
bannerFileField : array[0..12] of AnsiChar;
|
|
bannerFileName : array[0..13] of AnsiChar;
|
|
directoryPath : array[0..79] of AnsiChar;
|
|
end;
|
|
{$include npackoff.inc}
|
|
|
|
function AbortServicingQueueJobAndFile(queueID:longint; jobNumber:word; fileHandle:longint):longint;cdecl;external Clib name 'AbortServicingQueueJobAndFile';
|
|
function AttachQueueServerToQueue(queueID:longint):longint;cdecl;external Clib name 'AttachQueueServerToQueue';
|
|
function ChangeQueueJobEntry(queueID:longint; job:PJobStruct):longint;cdecl;external Clib name 'ChangeQueueJobEntry';
|
|
function ChangeQueueJobEntry(queueID:longint; var job:TJobStruct):longint;cdecl;external Clib name 'ChangeQueueJobEntry';
|
|
function ChangeQueueJobPosition(queueID:longint; jobNumber:word; newPosition:byte):longint;cdecl;external Clib name 'ChangeQueueJobPosition';
|
|
function ChangeToClientRights(queueID:longint; jobNumber:word):longint;cdecl;external Clib name 'ChangeToClientRights';
|
|
function CloseFileAndAbortQueueJob(queueID:longint; jobNumber:word; fileHandle:longint):longint;cdecl;external Clib name 'CloseFileAndAbortQueueJob';
|
|
function CloseFileAndStartQueueJob(queueID:longint; jobNumber:word; fileHandle:longint):longint;cdecl;external Clib name 'CloseFileAndStartQueueJob';
|
|
function CreateAQueue(queueName:PAnsiChar; queueType:longint; pathName:PAnsiChar; queueID:Plongint):longint;cdecl;external Clib name 'CreateAQueue';
|
|
function CreateAQueue(queueName:PAnsiChar; queueType:longint; pathName:PAnsiChar; var queueID:longint):longint;cdecl;external Clib name 'CreateAQueue';
|
|
function CreateQueueJobAndFile(queueID:longint; job:PJobStruct; fileHandle:Plongint):longint;cdecl;external Clib name 'CreateQueueJobAndFile';
|
|
function CreateQueueJobAndFile(queueID:longint; var job:TJobStruct; var fileHandle:longint):longint;cdecl;external Clib name 'CreateQueueJobAndFile';
|
|
function DestroyQueue(queueID:longint):longint;cdecl;external Clib name 'DestroyQueue';
|
|
function DetachQueueServerFromQueue(queueID:longint):longint;cdecl;external Clib name 'DetachQueueServerFromQueue';
|
|
function FinishServicingQueueJobAndFile(queueID:longint; jobNumber:word; charge:longint; fileHandle:longint):longint;cdecl;external Clib name 'FinishServicingQueueJobAndFile';
|
|
function GetQueueJobList(queueID:longint; jobCount:PWORD; jobNumberList:PWORD; maxJobNumbers:word):longint;cdecl;external Clib name 'GetQueueJobList';
|
|
function GetQueueJobsFileSize(queueID:longint; jobNumber:longint; fileSize:Plongint):longint;cdecl;external Clib name 'GetQueueJobsFileSize';
|
|
function NWQAbortJob(queueID:longint; jobNum:longint; fileHandle:longint):longint;cdecl;external Clib name 'NWQAbortJob';
|
|
function NWQAbortJobService(queueID:longint; jobNum:longint; fileHandle:longint):longint;cdecl;external Clib name 'NWQAbortJobService';
|
|
function NWQAttachServer(queueID:longint):longint;cdecl;external Clib name 'NWQAttachServer';
|
|
function NWQBeginJobService(queueID:longint; targetJobType:word; jobInfo:PNWQJobRec_t; fileHandle:Plongint):longint;cdecl;external Clib name 'NWQBeginJobService';
|
|
function NWQChangeJobEntry(queueID:longint; jobInfo:PNWQJobRec_t):longint;cdecl;external Clib name 'NWQChangeJobEntry';
|
|
function NWQChangeJobPosition(queueID:longint; jobNum:longint; newPosition:longint):longint;cdecl;external Clib name 'NWQChangeJobPosition';
|
|
function NWQChangeJobQueue(srcQueueID:longint; srcJobNum:longint; dstQueueID:longint; dstJobNum:Plongint):longint;cdecl;external Clib name 'NWQChangeJobQueue';
|
|
function NWQChangeToClientRights(queueID:longint; jobNum:longint):longint;cdecl;external Clib name 'NWQChangeToClientRights';
|
|
function NWQCreate(queueName:PAnsiChar; queueType:word; pathName:PAnsiChar; queueID:Plongint):longint;cdecl;external Clib name 'NWQCreate';
|
|
function NWQCreateJob(queueID:longint; jobInfo:PNWQJobRec_t; fileHandle:Plongint):longint;cdecl;external Clib name 'NWQCreateJob';
|
|
function NWQCreateJob(queueID:longint; var jobInfo:TNWQJobRec_t; fileHandle:Plongint):longint;cdecl;external Clib name 'NWQCreateJob';
|
|
function NWQDestroy(queueID:longint):longint;cdecl;external Clib name 'NWQDestroy';
|
|
function NWQDetachServer(queueID:longint):longint;cdecl;external Clib name 'NWQDetachServer';
|
|
function NWQEndJobService(queueID:longint; jobNum:longint; chargeInfo:longint; fileHandle:longint):longint;cdecl;external Clib name 'NWQEndJobService';
|
|
function NWQGetJobEntry(queueID:longint; jobNum:longint; jobInfo:PNWQJobRec_t):longint;cdecl;external Clib name 'NWQGetJobEntry';
|
|
function NWQGetJobEntry(queueID:longint; jobNum:longint; var jobInfo:TNWQJobRec_t):longint;cdecl;external Clib name 'NWQGetJobEntry';
|
|
function NWQGetJobFileSize(queueID:longint; jobNum:longint; fileSize:Plongint):longint;cdecl;external Clib name 'NWQGetJobFileSize';
|
|
function NWQGetJobFileSize(queueID:longint; jobNum:longint; var fileSize:longint):longint;cdecl;external Clib name 'NWQGetJobFileSize';
|
|
function NWQGetServers(queueID:longint; currentServers,qServerIDs,qServerConnNums:Plongint):longint;cdecl;external Clib name 'NWQGetServers';
|
|
function NWQGetServerStatus(queueID:longint; jobServerID:longint; jobServerConnNum:longint; jobServerRecord:pointer):longint;cdecl;external Clib name 'NWQGetServerStatus';
|
|
function NWQGetStatus(queueID:longint; queueStatus:Plongint; currentEntries:Plongint; currentServers:Plongint):longint;cdecl;external Clib name 'NWQGetStatus';
|
|
function NWQMarkJobForService(queueID:longint; jobNum:longint; fileHandle:longint):longint;cdecl;external Clib name 'NWQMarkJobForService';
|
|
function NWQRemoveJob(queueID:longint; jobNum:longint):longint;cdecl;external Clib name 'NWQRemoveJob';
|
|
function NWQRestoreServerRights:longint;cdecl;external Clib name 'NWQRestoreServerRights';
|
|
function NWQScanJobNums(queueID:longint; queueSequence:Plongint; totalJobs:Plongint; jobCount:Plongint; jobNumList:Plongint):longint;cdecl;external Clib name 'NWQScanJobNums';
|
|
function NWQServiceJob(queueID:longint; targetJobTypesCount:longint; targetJobTypes:PWORD; jobInfo:PNWQJobRec_t; fileHandle:Plongint):longint;cdecl;external Clib name 'NWQServiceJob';
|
|
function NWQSetServerStatus(queueID:longint; serverStatusRecord:pointer):longint;cdecl;external Clib name 'NWQSetServerStatus';
|
|
function NWQSetStatus(queueID:longint; queueStatus:longint):longint;cdecl;external Clib name 'NWQSetStatus';
|
|
function ReadQueueCurrentStatus(queueID:longint; queueStatus:PBYTE; numberOfJobs:PBYTE; numberOfServers:PBYTE; serverIDList:Plongint;
|
|
serverStationList:PWORD; maxNumberOfServers:word):longint;cdecl;external Clib name 'ReadQueueCurrentStatus';
|
|
function ReadQueueJobEntry(queueID:longint; jobNumber:word; job:PJobStruct):longint;cdecl;external Clib name 'ReadQueueJobEntry';
|
|
function ReadQueueServerCurrentStatus(queueID:longint; serverID:longint; serverStation:AnsiChar; serverStatusRecord:PAnsiChar):longint;cdecl;external Clib name 'ReadQueueServerCurrentStatus';
|
|
function RemoveJobFromQueue(queueID:longint; jobNumber:word):longint;cdecl;external Clib name 'RemoveJobFromQueue';
|
|
function RestoreQueueServerRights:longint;cdecl;external Clib name 'RestoreQueueServerRights';
|
|
function ServiceQueueJobAndOpenFile(queueID:longint; targetJobType:word; job:PJobStruct; fileHandle:Plongint):longint;cdecl;external Clib name 'ServiceQueueJobAndOpenFile';
|
|
function ServiceQueueJobAndOpenFile(queueID:longint; targetJobType:word; var job:TJobStruct; var fileHandle:longint):longint;cdecl;external Clib name 'ServiceQueueJobAndOpenFile';
|
|
function SetQueueCurrentStatus(queueID:longint; queueStatus:byte):longint;cdecl;external Clib name 'SetQueueCurrentStatus';
|
|
function SetQueueServerCurrentStatus(queueID:longint; serverStatusRecord:PBYTE):longint;cdecl;external Clib name 'SetQueueServerCurrentStatus';
|
|
function SetQueueServerCurrentStatus(queueID:longint; var serverStatusRecord):longint;cdecl;external Clib name 'SetQueueServerCurrentStatus';
|
|
|
|
{------------------------------------------------------------------------------}
|
|
function GetNetworkSerialNumber (networkSerialNumber : Plongint;
|
|
applicationNumber : Pword) : longint; cdecl; external Clib name 'GetNetworkSerialNumber';
|
|
function GetNetworkSerialNumber (var networkSerialNumber : longint;
|
|
var applicationNumber : word) : longint; cdecl; external Clib name 'GetNetworkSerialNumber';
|
|
function VerifyNetworkSerialNumber (networkSerialNumber : longint;
|
|
applicationNumber : Pword) : longint; cdecl; external Clib name 'VerifyNetworkSerialNumber';
|
|
function VerifyNetworkSerialNumber (networkSerialNumber : longint;
|
|
var applicationNumber : word) : longint; cdecl; external Clib name 'VerifyNetworkSerialNumber';
|
|
|
|
{------------------------------------------------------------------------------}
|
|
const
|
|
OLD_SS_DEFAULT_BUFFER_SIZE = 538;
|
|
SS_DEFAULT_BUFFER_SIZE = 600;
|
|
|
|
{ These connection types are used by SSGetActiveConnListByType }
|
|
{ They are all conditionally defined because some of them may appear in }
|
|
{ other clib header files. }
|
|
{ }
|
|
{ Connection service type }
|
|
{ NOTE: type 1 is reserved by CLIB for backward compatability }
|
|
|
|
NCP_CONNECTION_TYPE = 2;
|
|
NLM_CONNECTION_TYPE = 3;
|
|
AFP_CONNECTION_TYPE = 4;
|
|
FTAM_CONNECTION_TYPE = 5;
|
|
ANCP_CONNECTION_TYPE = 6;
|
|
|
|
{ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% }
|
|
{ User Interface Structures }
|
|
{ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% }
|
|
{$include npackon.inc}
|
|
type
|
|
|
|
PSSDefaultBuffer = ^TSSDefaultBuffer;
|
|
TSSDefaultBuffer = record
|
|
data : array[0..(SS_DEFAULT_BUFFER_SIZE)-1] of byte;
|
|
end;
|
|
|
|
PCacheMemoryCounters = ^TCacheMemoryCounters;
|
|
TCacheMemoryCounters = record
|
|
OriginalNumberOfCacheBuffers : longint;
|
|
CurrentNumberOfCacheBuffers : longint;
|
|
CacheDirtyBlockThreshold : longint;
|
|
debugCounters : array[0..6] of longint;
|
|
end;
|
|
|
|
PCacheTrendCounters = ^TCacheTrendCounters;
|
|
TCacheTrendCounters = record
|
|
NumOfCacheChecks : longint;
|
|
NumOfCacheHits : longint;
|
|
debugCounters : array[0..6] of longint;
|
|
LRUSittingTime : longint;
|
|
end;
|
|
|
|
PCacheInformation = ^TCacheInformation;
|
|
TCacheInformation = record
|
|
MaximumByteCount : longint;
|
|
MinimumNumberOfCacheBuffers : longint;
|
|
MinimumCacheReportThreshold : longint;
|
|
AllocateWaitingCount : longint;
|
|
NDirtyBlocks : longint;
|
|
CacheDirtyWaitTime : longint;
|
|
CacheMaximumConcurrentWrites : longint;
|
|
MaximumDirtyTime : longint;
|
|
NumberOfDirectoryCacheBuffers : longint;
|
|
CacheByteToBlockShiftFactor : longint;
|
|
end;
|
|
|
|
PGetCacheInfoStructure = ^TGetCacheInfoStructure;
|
|
TGetCacheInfoStructure = record
|
|
currentServerTime : longint;
|
|
VConsoleVersion : byte;
|
|
VConsoleRevision : byte;
|
|
reserved : word;
|
|
CacheCntrs : array[0..25] of longint;
|
|
MemoryCntrs : TCacheMemoryCounters;
|
|
TrendCntrs : TCacheTrendCounters;
|
|
CacheInfo : TCacheInformation;
|
|
end;
|
|
|
|
PServerInformation = ^TServerInformation;
|
|
TServerInformation = record
|
|
ReplyCanceledCount : longint;
|
|
WriteHeldOffCount : longint;
|
|
reserved1 : longint;
|
|
InvalidRequestTypeCount : longint;
|
|
BeingAbortedCount : longint;
|
|
AlreadyDoingReAllocateCount : longint;
|
|
reserved2 : array[0..2] of longint;
|
|
DeAllocateStillTransmittingCount : longint;
|
|
StartStationErrorCount : longint;
|
|
InvalidSlotCount : longint;
|
|
BeingProcessedCount : longint;
|
|
ForgedPacketCount : longint;
|
|
StillTransmittingCount : longint;
|
|
ReExecuteRequestCount : longint;
|
|
InvalidSequenceNumberCount : longint;
|
|
DuplicateIsBeingSentAlreadyCount : longint;
|
|
SentPositiveAcknowledgeCount : longint;
|
|
SentADuplicateReplyCount : longint;
|
|
NoMemoryForStationControlCount : longint;
|
|
NoAvailableConnectionsCount : longint;
|
|
ReAllocateSlotCount : longint;
|
|
ReAllocateSlotCameTooSoonCount : longint;
|
|
end;
|
|
|
|
PFSCounters = ^TFSCounters;
|
|
TFSCounters = record
|
|
TooManyHops : word;
|
|
UnknownNetwork : word;
|
|
NoSpaceForService : word;
|
|
NoRecieveBuffers : word;
|
|
NotMyNetwork : word;
|
|
NetBIOSPropagatedCount : longint;
|
|
TotalPacketsServiced : longint;
|
|
TotalPacketsRouted : longint;
|
|
end;
|
|
|
|
PGetFileServerInfoStructure = ^TGetFileServerInfoStructure;
|
|
TGetFileServerInfoStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
NCPStaInUseCnt : longint;
|
|
NCPPeakStaInUse : longint;
|
|
numOfNCPReqs : longint;
|
|
serverUtilization : longint;
|
|
serverInfo : TServerInformation;
|
|
fileServerCounters : TFSCounters;
|
|
end;
|
|
|
|
PGetFileSystemInfoStructure = ^TGetFileSystemInfoStructure;
|
|
TGetFileSystemInfoStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
debugCounters : array[0..12] of longint;
|
|
end;
|
|
|
|
PUserInformation = ^TUserInformation;
|
|
TUserInformation = record
|
|
connectionNumber : longint;
|
|
useCount : longint;
|
|
connectionServiceType : byte;
|
|
loginTime : array[0..6] of byte;
|
|
status : longint;
|
|
expirationTime : longint;
|
|
objectType : longint;
|
|
transactionFlag : byte;
|
|
logicalLockThreshold : byte;
|
|
recordLockThreshold : byte;
|
|
fileWriteFlags : byte;
|
|
fileWriteState : byte;
|
|
filler : byte;
|
|
fileLockCount : word;
|
|
recordLockCount : word;
|
|
totalBytesRead : array[0..5] of byte;
|
|
totalBytesWritten : array[0..5] of byte;
|
|
totalRequests : longint;
|
|
heldRequests : longint;
|
|
heldBytesRead : array[0..5] of byte;
|
|
heldBytesWritten : array[0..5] of byte;
|
|
end;
|
|
|
|
PGetUserInfoStructure = ^TGetUserInfoStructure;
|
|
TGetUserInfoStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
userInfo : TUserInformation;
|
|
userNameLen : byte;
|
|
username : byte;
|
|
end;
|
|
|
|
PPacketBurstInformation = ^TPacketBurstInformation;
|
|
TPacketBurstInformation = record
|
|
BigInvalidSlotCount : longint;
|
|
BigForgedPacketCount : longint;
|
|
BigInvalidPacketCount : longint;
|
|
BigStillTransmittingCount : longint;
|
|
StillDoingTheLastRequestCount : longint;
|
|
InvalidControlRequestCount : longint;
|
|
ControlInvalidMessageNumberCount : longint;
|
|
ControlBeingTornDownCount : longint;
|
|
BigRepeatTheFileReadCount : longint;
|
|
BigSendExtraCCCount : longint;
|
|
BigReturnAbortMessageCount : longint;
|
|
BigReadInvalidMessageNumberCount : longint;
|
|
BigReadDoItOverCount : longint;
|
|
BigReadBeingTornDownCount : longint;
|
|
PreviousControlPacketCount : longint;
|
|
SendHoldOffMessageCount : longint;
|
|
BigReadNoDataAvailableCount : longint;
|
|
BigReadTryingToReadTooMuchCount : longint;
|
|
ASyncReadErrorCount : longint;
|
|
BigReadPhysicalReadErrorCount : longint;
|
|
ControlBadACKFragmentListCount : longint;
|
|
ControlNoDataReadCount : longint;
|
|
WriteDuplicateRequestCount : longint;
|
|
ShouldntBeACKingHereCount : longint;
|
|
WriteInconsistentPacketLengthsCount : longint;
|
|
FirstPacketIsntAWriteCount : longint;
|
|
WriteTrashedDuplicateRequestCount : longint;
|
|
BigWriteInvalidMessageNumberCount : longint;
|
|
BigWriteBeingTornDownCount : longint;
|
|
BigWriteBeingAbortedCount : longint;
|
|
ZeroACKFragmentCountCount : longint;
|
|
WriteCurrentlyTransmittingCount : longint;
|
|
TryingToWriteTooMuchCount : longint;
|
|
WriteOutOfMemoryForControlNodesCount : longint;
|
|
WriteDidntNeedThisFragmentCount : longint;
|
|
WriteTooManyBuffersCheckedOutCount : longint;
|
|
WriteTimeOutCount : longint;
|
|
WriteGotAnACKCount : longint;
|
|
WriteGotAnACKCount1 : longint;
|
|
PollerAbortedTheConnectionCount : longint;
|
|
MaybeHadOutOfOrderWritesCount : longint;
|
|
HadAnOutOfOrderWriteCount : longint;
|
|
MovedTheACKBitDownCount : longint;
|
|
BumpedOutOfOrderWriteCount : longint;
|
|
PollerRemovedOldOutOfOrderCount : longint;
|
|
WriteDidntNeedButRequestedACKCount : longint;
|
|
WriteTrashedPacketCount : longint;
|
|
TooManyACKFragmentsCount : longint;
|
|
SavedAnOutOfOrderPacketCount : longint;
|
|
ConnectionBeingAbortedCount : longint;
|
|
end;
|
|
|
|
PGetPacketBurstInfoStructure = ^TGetPacketBurstInfoStructure;
|
|
TGetPacketBurstInfoStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
packetBurstInfo : TPacketBurstInformation;
|
|
end;
|
|
|
|
PIPXInformation = ^TIPXInformation;
|
|
TIPXInformation = record
|
|
IpxSendPacketCount : longint;
|
|
IpxMalformPacketCount : word;
|
|
IpxGetECBRequestCount : longint;
|
|
IpxGetECBFailCount : longint;
|
|
IpxAESEventCount : longint;
|
|
IpxPostponedAESCount : word;
|
|
IpxMaxConfiguredSocketCount : word;
|
|
IpxMaxOpenSocketCount : word;
|
|
IpxOpensocketFailCount : word;
|
|
IpxListenECBCount : longint;
|
|
IpxECBCancelFailCount : word;
|
|
IpxGetLocalTargetFailCount : word;
|
|
end;
|
|
|
|
PSPXInformation = ^TSPXInformation;
|
|
TSPXInformation = record
|
|
SpxMaxConnectionsCount : word;
|
|
SpxMaxUsedConnections : word;
|
|
SpxEstConnectionReq : word;
|
|
SpxEstConnectionFail : word;
|
|
SpxListenConnectReq : word;
|
|
SpxListenConnectFail : word;
|
|
SpxSendCount : longint;
|
|
SpxWindowChokeCount : longint;
|
|
SpxBadSendCount : word;
|
|
SpxSendFailCount : word;
|
|
SpxAbortedConnection : word;
|
|
SpxListenPacketCount : longint;
|
|
SpxBadListenCount : word;
|
|
SpxIncomingPacketCount : longint;
|
|
SpxBadInPacketCnt : word;
|
|
SpxSuppressedPackCnt : word;
|
|
SpxNoSesListenECBCnt : word;
|
|
SpxWatchDogDestSesCnt : word;
|
|
end;
|
|
|
|
PGetIPXSPXInfoStructure = ^TGetIPXSPXInfoStructure;
|
|
TGetIPXSPXInfoStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
IPXInfo : TIPXInformation;
|
|
SPXInfo : TSPXInformation;
|
|
end;
|
|
|
|
PGetGarbageCollInfoStructure = ^TGetGarbageCollInfoStructure;
|
|
TGetGarbageCollInfoStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
failedAllocReqCount : longint;
|
|
numberOfAllocs : longint;
|
|
noMoreMemAvlCnt : longint;
|
|
numOfGarbageColl : longint;
|
|
foundSomeMem : longint;
|
|
numOfChecks : longint;
|
|
end;
|
|
TGetGarbageCollInfoStruc = TGetGarbageCollInfoStructure;
|
|
PGetGarbageCollInfoStruc = ^TGetGarbageCollInfoStruc;
|
|
|
|
PCPUInformation = ^TCPUInformation;
|
|
TCPUInformation = record
|
|
numberOfCPUs : longint;
|
|
PageTableOwnerFlag : longint;
|
|
CPUType : longint;
|
|
CoProcessorFlag : longint;
|
|
BusType : longint;
|
|
IOEngineFlag : longint;
|
|
FSEngineFlag : longint;
|
|
NonDedFlag : longint;
|
|
end;
|
|
|
|
|
|
PGetCPUInfoStructure = ^TGetCPUInfoStructure;
|
|
TGetCPUInfoStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
CPUInfo : TCPUInformation;
|
|
variableStringsStart : byte;
|
|
end;
|
|
{ The LFSCountersStructure is provided }
|
|
{ so that you can see field names. It }
|
|
{ isn't referenced and developers will }
|
|
{ probably want to define their own }
|
|
{ structure. This structure may grow }
|
|
{ beyond what one call can return at }
|
|
{ some future date. }
|
|
{ }
|
|
|
|
PLFSCountersStructure = ^TLFSCountersStructure;
|
|
TLFSCountersStructure = record
|
|
ReadFile : longint;
|
|
WriteFile : longint;
|
|
DeleteFile : longint;
|
|
RenMove : longint;
|
|
OpenFile : longint;
|
|
CreateFile : longint;
|
|
CreateAndOpenFile : longint;
|
|
CloseFile : longint;
|
|
ScanDeleteFile : longint;
|
|
SalvageFile : longint;
|
|
PurgeFile : longint;
|
|
MigrateFile : longint;
|
|
DeMigrateFile : longint;
|
|
CreateDir : longint;
|
|
DeleteDir : longint;
|
|
DirectoryScans : longint;
|
|
MapPathToDirNum : longint;
|
|
ModifyDirEntry : longint;
|
|
GetAccessRights : longint;
|
|
GetAccessRightsFromIDs : longint;
|
|
MapDirNumToPath : longint;
|
|
GetEntryFromPathStrBase : longint;
|
|
GetOtherNSEntry : longint;
|
|
GetExtDirInfo : longint;
|
|
GetParentDirNum : longint;
|
|
AddTrusteeR : longint;
|
|
ScanTrusteeR : longint;
|
|
DelTrusteeR : longint;
|
|
PurgeTrust : longint;
|
|
FindNextTrustRef : longint;
|
|
ScanUserRestNodes : longint;
|
|
AddUserRest : longint;
|
|
DeleteUserRest : longint;
|
|
RtnDirSpaceRest : longint;
|
|
GetActualAvailDskSp : longint;
|
|
CntOwnedFilesAndDirs : longint;
|
|
MigFileInfo : longint;
|
|
VolMigInfo : longint;
|
|
ReadMigFileData : longint;
|
|
GetVolusageStats : longint;
|
|
GetActualVolUsageStats : longint;
|
|
GetDirUsageStats : longint;
|
|
NMFileReadsCount : longint;
|
|
NMFileWritesCount : longint;
|
|
MapPathToDirectoryNumberOrPhantom : longint;
|
|
StationHasAccessRightsGrantedBelow : longint;
|
|
GetDataStreamLengthsFromPathStringBase : longint;
|
|
CheckAndGetDirectoryEntry : longint;
|
|
GetDeletedEntry : longint;
|
|
GetOriginalNameSpace : longint;
|
|
GetActualFileSize : longint;
|
|
VerifyNameSpaceNumber : longint;
|
|
VerifyDataStreamNumber : longint;
|
|
CheckVolumeNumber : longint;
|
|
CommitFile : longint;
|
|
VMGetDirectoryEntry : longint;
|
|
CreateDMFileEntry : longint;
|
|
RenameNameSpaceEntry : longint;
|
|
LogFile : longint;
|
|
ReleaseFile : longint;
|
|
ClearFile : longint;
|
|
SetVolumeFlag : longint;
|
|
ClearVolumeFlag : longint;
|
|
GetOriginalInfo : longint;
|
|
CreateMigratedDir : longint;
|
|
F3OpenCreate : longint;
|
|
F3InitFileSearch : longint;
|
|
F3ContinueFileSearch : longint;
|
|
F3RenameFile : longint;
|
|
F3ScanForTrustees : longint;
|
|
F3ObtainFileInfo : longint;
|
|
F3ModifyInfo : longint;
|
|
F3EraseFile : longint;
|
|
F3SetDirHandle : longint;
|
|
F3AddTrustees : longint;
|
|
F3DeleteTrustees : longint;
|
|
F3AllocDirHandle : longint;
|
|
F3ScanSalvagedFiles : longint;
|
|
F3RecoverSalvagedFiles : longint;
|
|
F3PurgeSalvageableFile : longint;
|
|
F3GetNSSpecificInfo : longint;
|
|
F3ModifyNSSpecificInfo : longint;
|
|
F3SearchSet : longint;
|
|
F3GetDirBase : longint;
|
|
F3QueryNameSpaceInfo : longint;
|
|
F3GetNameSpaceList : longint;
|
|
F3GetHugeInfo : longint;
|
|
F3SetHugeInfo : longint;
|
|
F3GetFullPathString : longint;
|
|
F3GetEffectiveDirectoryRights : longint;
|
|
ParseTree : longint;
|
|
end;
|
|
|
|
PGetVolumeSwitchInfoStructure = ^TGetVolumeSwitchInfoStructure;
|
|
TGetVolumeSwitchInfoStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
totalLFSCounters : longint;
|
|
currentLFSCounters : longint;
|
|
counters : longint;
|
|
end;
|
|
|
|
PGetNLMLoadedListStructure = ^TGetNLMLoadedListStructure;
|
|
TGetNLMLoadedListStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
moreFlag : word;
|
|
NLMLoadedCount : longint;
|
|
NLMCount : longint;
|
|
NLMNumbers : longint;
|
|
end;
|
|
|
|
|
|
PNLMInformation = ^TNLMInformation;
|
|
TNLMInformation = record
|
|
nlmIdentificationNumber : longint;
|
|
nlmFlags : longint;
|
|
nlmType : longint;
|
|
nlmParentID : longint;
|
|
nlmMajorVersion : longint;
|
|
nlmMinorVersion : longint;
|
|
nlmRevision : longint;
|
|
nlmYear : longint;
|
|
nlmMonth : longint;
|
|
nlmDay : longint;
|
|
nlmAllocAvailBytes : longint;
|
|
nlmAllocFreeCount : longint;
|
|
nlmLastGarbCollect : longint;
|
|
nlmMessageLanguage : longint;
|
|
nlmNumberOfReferencedPublics : longint;
|
|
end;
|
|
|
|
{ In GetNLMInfoStructure: }
|
|
{ At startOFLStrings there will be three }
|
|
{ length preceeded strings -- they may be }
|
|
{ zero bytes long! The strings are: }
|
|
{ the file name, the NLM name, and the }
|
|
{ copyright. }
|
|
{ Each string consists of one byte which }
|
|
{ contains the length of the string }
|
|
{ followed by zero to 255 bytes of data, }
|
|
{ depending upon the value of the length }
|
|
{ byte. When the length byte is zero, no }
|
|
{ data is present for that string. }
|
|
{ }
|
|
{ 3 Len preceeded strings: filename, name, copyright }
|
|
|
|
PGetNLMInfoStructure = ^TGetNLMInfoStructure;
|
|
TGetNLMInfoStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
NLMInfo : TNLMInformation;
|
|
startOfLStrings : byte;
|
|
end;
|
|
|
|
PDirectoryCacheInformation = ^TDirectoryCacheInformation;
|
|
TDirectoryCacheInformation = record
|
|
MinimumTimeSinceFileDelete : longint;
|
|
AbsMinimumTimeSinceFileDelete : longint;
|
|
MinimumNumberOfDirCacheBuffers : longint;
|
|
MaximumNumberOfDirCacheBuffers : longint;
|
|
NumberOfDirectoryCacheBuffers : longint;
|
|
DCMinimumNonReferencedTime : longint;
|
|
DCWaitTimeBeforeNewBuffer : longint;
|
|
DCMaximumConcurrentWrites : longint;
|
|
DCDirtyWaitTime : longint;
|
|
debugCounters : array[0..3] of longint;
|
|
PercentOfVolumeUsedByDirs : longint;
|
|
end;
|
|
|
|
PGetDirCacheInfoStructure = ^TGetDirCacheInfoStructure;
|
|
TGetDirCacheInfoStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
dirCacheInfo : TDirectoryCacheInformation;
|
|
end;
|
|
|
|
PGetOSVersionInfoStructure = ^TGetOSVersionInfoStructure;
|
|
TGetOSVersionInfoStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
OSMajorVersion : byte;
|
|
OSMinorVersion : byte;
|
|
OSRevision : byte;
|
|
accountVersion : byte;
|
|
VAPVersion : byte;
|
|
queueingVersion : byte;
|
|
securityRestLvl : byte;
|
|
bridgingSupport : byte;
|
|
maxNumOfVol : longint;
|
|
maxNumOfConn : longint;
|
|
maxNumOfUsers : longint;
|
|
maxNumOfnameSpaces : longint;
|
|
maxNumOfLANS : longint;
|
|
maxNumOfMedias : longint;
|
|
maxNumOfStacks : longint;
|
|
maxDirDepth : longint;
|
|
maxDataStreams : longint;
|
|
maxNumOfSpoolPr : longint;
|
|
serverSerialNumber : longint;
|
|
serverApplicationNumber : word;
|
|
end;
|
|
|
|
PGetActiveConnListByTypeStructure = ^TGetActiveConnListByTypeStructure;
|
|
TGetActiveConnListByTypeStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
ActiveConnBitList : array[0..511] of byte;
|
|
end;
|
|
|
|
PRTagStructure = ^TRTagStructure;
|
|
TRTagStructure = record
|
|
rTagNumber : longint;
|
|
signature : longint;
|
|
count : longint;
|
|
name : byte;
|
|
end;
|
|
|
|
PGetNLMResourceTagList = ^TGetNLMResourceTagList;
|
|
TGetNLMResourceTagList = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
totalNumOfRTags : longint;
|
|
currentNumOfRTags : longint;
|
|
RTagStart : TRTagStructure;
|
|
end;
|
|
|
|
PGetActiveLANBoardListStructure = ^TGetActiveLANBoardListStructure;
|
|
TGetActiveLANBoardListStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
maxNumOfLANs : longint;
|
|
itemsCount : longint;
|
|
boardNumbers : longint;
|
|
end;
|
|
|
|
PDriverConfigStructure = ^TDriverConfigStructure;
|
|
TDriverConfigStructure = record
|
|
DriverCFG_MajorVersion : byte;
|
|
DriverCFG_MinorVersion : byte;
|
|
DriverNodeAddress : array[0..5] of byte;
|
|
DriverModeFlags : word;
|
|
DriverBoardNumber : word;
|
|
DriverBoardInstance : word;
|
|
DriverMaximumSize : longint;
|
|
DriverMaxRecvSize : longint;
|
|
DriverRecvSize : longint;
|
|
DriverCardName : longint;
|
|
DriverShortName : longint;
|
|
DriverMediaType : longint;
|
|
DriverCardID : word;
|
|
DriverMediaID : word;
|
|
DriverTransportTime : word;
|
|
DriverReserved : array[0..15] of byte;
|
|
DriverMajorVersion : byte;
|
|
DriverMinorVersion : byte;
|
|
DriverFlags : word;
|
|
DriverSendRetries : word;
|
|
DriverLink : longint;
|
|
DriverSharingFlags : word;
|
|
DriverSlot : word;
|
|
DriverIOPortsAndLengths : array[0..3] of word;
|
|
DriverMemoryDecode0 : longint;
|
|
DriverLength0 : word;
|
|
DriverMemoryDecode1 : longint;
|
|
DriverLength1 : word;
|
|
DriverInterrupt : array[0..1] of byte;
|
|
DriverDMAUsage : array[0..1] of byte;
|
|
DriverResourceTag : longint;
|
|
DriverConfig : longint;
|
|
DriverCommandString : longint;
|
|
DriverLogicalName : array[0..17] of byte;
|
|
DriverLinearMemory : array[0..1] of longint;
|
|
DriverChannelNumber : word;
|
|
DriverIOReserved : array[0..5] of byte;
|
|
end;
|
|
|
|
PGetLANConfigInfoStructure = ^TGetLANConfigInfoStructure;
|
|
TGetLANConfigInfoStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
LANConfig : TDriverConfigStructure;
|
|
end;
|
|
|
|
PCommonLANStructure = ^TCommonLANStructure;
|
|
TCommonLANStructure = record
|
|
notSupportedMask : longint;
|
|
TotalTxPacketCount : longint;
|
|
TotalRxPacketCount : longint;
|
|
NoECBAvailableCount : longint;
|
|
PacketTxTooBigCount : longint;
|
|
PacketTxTooSmallCount : longint;
|
|
PacketRxOverflowCount : longint;
|
|
PacketRxTooBigCount : longint;
|
|
PacketRxTooSmallCount : longint;
|
|
PacketTxMiscErrorCount : longint;
|
|
PacketRxMiscErrorCount : longint;
|
|
RetryTxCount : longint;
|
|
ChecksumErrorCount : longint;
|
|
HardwareRxMismatchCount : longint;
|
|
TotalTxOKByteCountLow : longint;
|
|
TotalTxOKByteCountHigh : longint;
|
|
TotalRxOKByteCountLow : longint;
|
|
TotalRxOKByteCountHigh : longint;
|
|
TotalGroupAddrTxCount : longint;
|
|
TotalGroupAddrRxCount : longint;
|
|
AdapterResetCount : longint;
|
|
AdapterOprTimeStamp : longint;
|
|
AdapterQueDepth : longint;
|
|
MediaSpecificCounter1 : longint;
|
|
MediaSpecificCounter2 : longint;
|
|
MediaSpecificCounter3 : longint;
|
|
MediaSpecificCounter4 : longint;
|
|
MediaSpecificCounter5 : longint;
|
|
MediaSpecificCounter6 : longint;
|
|
MediaSpecificCounter7 : longint;
|
|
MediaSpecificCounter8 : longint;
|
|
MediaSpecificCounter9 : longint;
|
|
MediaSpecificCounter10 : longint;
|
|
ValidMask1 : longint;
|
|
MediaSpecificCounter11 : longint;
|
|
MediaSpecificCounter12 : longint;
|
|
MediaSpecificCounter13 : longint;
|
|
MediaSpecificCounter14 : longint;
|
|
end;
|
|
|
|
PGetLANCommonCountersStructure = ^TGetLANCommonCountersStructure;
|
|
TGetLANCommonCountersStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
statMajorVersion : byte;
|
|
statMinorVersion : byte;
|
|
totalCommonCnts : longint;
|
|
totalCntBlocks : longint;
|
|
customCounters : longint;
|
|
nextCntBlock : longint;
|
|
info : TCommonLANStructure;
|
|
end;
|
|
|
|
PCustomCountersInfo = ^TCustomCountersInfo;
|
|
TCustomCountersInfo = record
|
|
value : longint;
|
|
stringLength : byte;
|
|
stringStart : byte;
|
|
end;
|
|
|
|
PGetCustomCountersInfoStructure = ^TGetCustomCountersInfoStructure;
|
|
TGetCustomCountersInfoStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
moreflag : word;
|
|
numberOfCustomCounters : longint;
|
|
startOfCustomCounters : byte;
|
|
end;
|
|
|
|
PLSLInformation = ^TLSLInformation;
|
|
TLSLInformation = record
|
|
RxBufs : longint;
|
|
RxBufs75PerCent : longint;
|
|
RxBufsCheckedOut : longint;
|
|
RxBufMaxSize : longint;
|
|
MaxPhysicalSize : longint;
|
|
LastTimeRxBufAllocated : longint;
|
|
MaxNumbersOfProtocols : longint;
|
|
MaxNumbersOfMediaTypes : longint;
|
|
TotalTXPackets : longint;
|
|
GetECBBfrs : longint;
|
|
GetECBFails : longint;
|
|
AESEventCounts : longint;
|
|
PostpondedEvents : longint;
|
|
ECBCxlFails : longint;
|
|
ValidBfrsReused : longint;
|
|
EnqueuedSendCnt : longint;
|
|
TotalRXPackets : longint;
|
|
UnclaimedPackets : longint;
|
|
StatisticsTableMajorVersion : byte;
|
|
StatisticsTableMinorVersion : byte;
|
|
end;
|
|
|
|
PGetLSLInfoStructure = ^TGetLSLInfoStructure;
|
|
TGetLSLInfoStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
LSLInfo : TLSLInformation;
|
|
end;
|
|
|
|
PLogicalBoard = ^TLogicalBoard;
|
|
TLogicalBoard = record
|
|
LogTtlTxPackets : longint;
|
|
LogTtlRxPackets : longint;
|
|
LogUnclaimedPackets : longint;
|
|
reserved : longint;
|
|
end;
|
|
|
|
PGetLSLBoardStatsStructure = ^TGetLSLBoardStatsStructure;
|
|
TGetLSLBoardStatsStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
boardStats : TLogicalBoard;
|
|
end;
|
|
|
|
PCopyOfPMStructure = ^TCopyOfPMStructure;
|
|
TCopyOfPMStructure = record
|
|
f1 : array[0..63] of byte;
|
|
f2 : longint;
|
|
f3 : longint;
|
|
end;
|
|
|
|
PCopyOfGenericInfoDef = ^TCopyOfGenericInfoDef;
|
|
TCopyOfGenericInfoDef = record
|
|
mediaInfo : TCopyOfPMStructure;
|
|
mediatype : longint;
|
|
cartridgetype : longint;
|
|
unitsize : longint;
|
|
blocksize : longint;
|
|
capacity : longint;
|
|
preferredunitsize : longint;
|
|
name : array[0..63] of byte;
|
|
_type : longint;
|
|
status : longint;
|
|
functionmask : longint;
|
|
controlmask : longint;
|
|
parentcount : longint;
|
|
siblingcount : longint;
|
|
childcount : longint;
|
|
specificinfosize : longint;
|
|
objectuniqueid : longint;
|
|
mediaslot : longint;
|
|
end;
|
|
|
|
PGetMManagerObjInfoStructure = ^TGetMManagerObjInfoStructure;
|
|
TGetMManagerObjInfoStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
info : TCopyOfGenericInfoDef;
|
|
end;
|
|
|
|
PGetMMObjectListsStructure = ^TGetMMObjectListsStructure;
|
|
TGetMMObjectListsStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
nextStartNum : longint;
|
|
objectCount : longint;
|
|
objects : longint;
|
|
end;
|
|
|
|
PGetMMObjectChildListStructure = ^TGetMMObjectChildListStructure;
|
|
TGetMMObjectChildListStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
nextStartNum : longint;
|
|
objectCount : longint;
|
|
objects : longint;
|
|
end;
|
|
|
|
PVolumeSegmentStructure = ^TVolumeSegmentStructure;
|
|
TVolumeSegmentStructure = record
|
|
segmentDevice : longint;
|
|
segmentOffset : longint;
|
|
segmentSize : longint;
|
|
end;
|
|
|
|
PGetVolumeSegmentListStructure = ^TGetVolumeSegmentListStructure;
|
|
TGetVolumeSegmentListStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
numberOfSegments : longint;
|
|
segment : TVolumeSegmentStructure;
|
|
end;
|
|
|
|
PProtocolStackInfo = ^TProtocolStackInfo;
|
|
TProtocolStackInfo = record
|
|
stackNumber : longint;
|
|
stackName : array[0..15] of byte;
|
|
end;
|
|
|
|
PGetActiveProtocolStackStructure = ^TGetActiveProtocolStackStructure;
|
|
TGetActiveProtocolStackStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
maxNumberOfStacks : longint;
|
|
stackCount : longint;
|
|
nextStartNumber : longint;
|
|
stackInfo : TProtocolStackInfo;
|
|
end;
|
|
|
|
PGetProtocolConfigStructure = ^TGetProtocolConfigStructure;
|
|
TGetProtocolConfigStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
configMajorVersion : byte;
|
|
configMinorVerstion : byte;
|
|
stackMajorVersion : byte;
|
|
stackMinorVersion : byte;
|
|
shortName : array[0..15] of byte;
|
|
fullNameLength : byte;
|
|
fullName : byte;
|
|
end;
|
|
|
|
PGetProtocolStatsStructure = ^TGetProtocolStatsStructure;
|
|
TGetProtocolStatsStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
StatMajorVersion : byte;
|
|
StatMinorVersion : byte;
|
|
GenericCounters : word;
|
|
ValidCntsMask : longint;
|
|
TotalTxPackets : longint;
|
|
TotalRxPackets : longint;
|
|
IgnoredRxPackets : longint;
|
|
NumberOfCustomCounters : word;
|
|
end;
|
|
|
|
PProtocolCustomInfo = ^TProtocolCustomInfo;
|
|
TProtocolCustomInfo = record
|
|
value : longint;
|
|
length : byte;
|
|
customData : byte;
|
|
end;
|
|
|
|
PGetProtocolCustomInfoStructure = ^TGetProtocolCustomInfoStructure;
|
|
TGetProtocolCustomInfoStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
customCount : longint;
|
|
info : TProtocolCustomInfo;
|
|
end;
|
|
|
|
PGetProtocolByMediaStructure = ^TGetProtocolByMediaStructure;
|
|
TGetProtocolByMediaStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
stackIDCount : longint;
|
|
stackID : longint;
|
|
end;
|
|
|
|
PGetProtocolByBoardStructure = ^TGetProtocolByBoardStructure;
|
|
TGetProtocolByBoardStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
stackIDCount : longint;
|
|
stackID : longint;
|
|
end;
|
|
|
|
PGetMediaNameByNumberStructure = ^TGetMediaNameByNumberStructure;
|
|
TGetMediaNameByNumberStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
mediaNameLength : byte;
|
|
mediaName : byte;
|
|
end;
|
|
|
|
PGetMediaNumberListStructure = ^TGetMediaNumberListStructure;
|
|
TGetMediaNumberListStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
maxNumberOfMedia : longint;
|
|
mediaListCount : longint;
|
|
mediaList : longint;
|
|
end;
|
|
|
|
PGetRouterAndSAPInfoStructure = ^TGetRouterAndSAPInfoStructure;
|
|
TGetRouterAndSAPInfoStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
RIPSocketNumber : longint;
|
|
routerDownFlag : longint;
|
|
trackOnFlag : longint;
|
|
extRouterActiveFlag : longint;
|
|
SAPSocketNumber : longint;
|
|
rpyNearestServerFlag : longint;
|
|
end;
|
|
|
|
PGetNetRouterInfoStructure = ^TGetNetRouterInfoStructure;
|
|
TGetNetRouterInfoStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
netIDNumber : longint;
|
|
hopsToNet : word;
|
|
netStatus : word;
|
|
timeToNet : word;
|
|
end;
|
|
|
|
PRoutersInfoStructure = ^TRoutersInfoStructure;
|
|
TRoutersInfoStructure = record
|
|
node : array[0..5] of byte;
|
|
connectedLAN : longint;
|
|
hopsToNetCount : word;
|
|
timeToNet : word;
|
|
end;
|
|
|
|
PGetNetworkRoutersInfoStructure = ^TGetNetworkRoutersInfoStructure;
|
|
TGetNetworkRoutersInfoStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
numberOfEntries : longint;
|
|
info : TRoutersInfoStructure;
|
|
end;
|
|
|
|
PKnownNetworksStructure = ^TKnownNetworksStructure;
|
|
TKnownNetworksStructure = record
|
|
netIDNumber : longint;
|
|
hopsToNet : word;
|
|
netStatus : word;
|
|
timeToNet : word;
|
|
end;
|
|
|
|
PGetKnownNetworksStructure = ^TGetKnownNetworksStructure;
|
|
TGetKnownNetworksStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
numberOfEntries : longint;
|
|
info : TKnownNetworksStructure;
|
|
end;
|
|
|
|
PGetServerInfoStructure = ^TGetServerInfoStructure;
|
|
TGetServerInfoStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
serverAddress : array[0..11] of byte;
|
|
hopsToServer : word;
|
|
end;
|
|
|
|
PServerSourceInfoStructure = ^TServerSourceInfoStructure;
|
|
TServerSourceInfoStructure = record
|
|
serverNode : array[0..5] of byte;
|
|
connectLAN : longint;
|
|
hopCount : word;
|
|
end;
|
|
|
|
PGetServerSourcesStructure = ^TGetServerSourcesStructure;
|
|
TGetServerSourcesStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
numberOfEntries : longint;
|
|
info : TServerSourceInfoStructure;
|
|
end;
|
|
|
|
PKnownServerStructure = ^TKnownServerStructure;
|
|
TKnownServerStructure = record
|
|
serverAddress : array[0..11] of byte;
|
|
hopCount : word;
|
|
serverNameLength : byte;
|
|
name : byte;
|
|
end;
|
|
|
|
PGetKnownServersInfoStructure = ^TGetKnownServersInfoStructure;
|
|
TGetKnownServersInfoStructure = record
|
|
currentServerTime : longint;
|
|
vConsoleVersion : byte;
|
|
vConsoleRevision : byte;
|
|
reserved : word;
|
|
numberOfEntries : longint;
|
|
info : TKnownServerStructure;
|
|
end;
|
|
|
|
{$include npackoff.inc}
|
|
|
|
function SSGetActiveConnListByType(startConnNumber:longint; connType:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetActiveConnListByType';
|
|
function SSGetActiveLANBoardList(startNumber:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetActiveLANBoardList';
|
|
function SSGetActiveProtocolStacks(startNumber:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetActiveProtocolStacks';
|
|
function SSGetCacheInfo(pointer:PBYTE; bufferLen:word):longint;cdecl;external Clib name 'SSGetCacheInfo';
|
|
function SSGetCPUInfo(CPUNumber:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetCPUInfo';
|
|
function SSGetDirCacheInfo(buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetDirCacheInfo';
|
|
function SSGetFileServerInfo(buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetFileServerInfo';
|
|
function SSGetFileSystemInfo(fileSystemID:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetFileSystemInfo';
|
|
function SSGetGarbageCollectionInfo(buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetGarbageCollectionInfo';
|
|
function SSGetIPXSPXInfo(buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetIPXSPXInfo';
|
|
function SSGetKnownNetworksInfo(startNumber:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetKnownNetworksInfo';
|
|
function SSGetKnownServersInfo(startNumber:longint; serverType:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetKnownServersInfo';
|
|
function SSGetLANCommonCounters(boardNumber:longint; blockNumber:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetLANCommonCounters';
|
|
function SSGetLANConfiguration(boardNumber:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetLANConfiguration';
|
|
function SSGetLANCustomCounters(boardNumber:longint; startNumber:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetLANCustomCounters';
|
|
function SSGetLSLInfo(buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetLSLInfo';
|
|
function SSGetLSLLogicalBoardStats(boardNumber:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetLSLLogicalBoardStats';
|
|
function SSGetLoadedMediaNumberList(buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetLoadedMediaNumberList';
|
|
function SSGetMediaManagerObjChildList(startNumber:longint; objType:longint; parentObjNumber:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetMediaManagerObjChildList';
|
|
function SSGetMediaManagerObjInfo(objNumber:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetMediaManagerObjInfo';
|
|
function SSGetMediaManagerObjList(startNumber:longint; objType:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetMediaManagerObjList';
|
|
function SSGetMediaNameByNumber(mediaNumber:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetMediaNameByNumber';
|
|
function SSGetNetRouterInfo(networkNumber:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetNetRouterInfo';
|
|
function SSGetNetworkRoutersInfo(networkNumber:longint; startNumber:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetNetworkRoutersInfo';
|
|
function SSGetNLMInfo(NLMNumber:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetNLMInfo';
|
|
function SSGetNLMLoadedList(startNumber:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetNLMLoadedList';
|
|
function SSGetNLMResourceTagList(NLMNumber:longint; startNumber:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetNLMResourceTagList';
|
|
function SSGetOSVersionInfo(buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetOSVersionInfo';
|
|
function SSGetPacketBurstInfo(buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetPacketBurstInfo';
|
|
function SSGetProtocolConfiguration(startNumber:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetProtocolConfiguration';
|
|
function SSGetProtocolCustomInfo(stackNumber:longint; customStartNumber:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetProtocolCustomInfo';
|
|
function SSGetProtocolNumbersByLANBoard(LANBoardNumber:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetProtocolNumbersByLANBoard';
|
|
function SSGetProtocolNumbersByMedia(mediaNumber:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetProtocolNumbersByMedia';
|
|
function SSGetProtocolStatistics(stackNumber:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetProtocolStatistics';
|
|
function SSGetRouterAndSAPInfo(buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetRouterAndSAPInfo';
|
|
function SSGetServerInfo(serverType:longint; nameLength:byte; name:PBYTE; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetServerInfo';
|
|
function SSGetServerSourcesInfo(startNumber:longint; serverType:longint; nameLength:byte; name:PAnsiChar; buffer:pointer;
|
|
bufferLen:word):longint;cdecl;external Clib name 'SSGetServerSourcesInfo';
|
|
function SSGetUserInfo(connectionNumber:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetUserInfo';
|
|
function SSGetVolumeSegmentList(volumeNumber:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetVolumeSegmentList';
|
|
function SSGetVolumeSwitchInfo(startNumber:longint; buffer:pointer; bufferLen:word):longint;cdecl;external Clib name 'SSGetVolumeSwitchInfo';
|
|
|
|
{------------------------------------------------------------------------------}
|
|
const _MAX_LOGREC_NAME = 128;
|
|
_MAX_SEMAPHORE_NAME = 128;
|
|
|
|
function ClearFile(fileName:PAnsiChar):longint; cdecl;external Clib name 'ClearFile';
|
|
procedure ClearFileSet; cdecl;external Clib name 'ClearFileSet';
|
|
function ClearLogicalRecord(logicalRecordName:PAnsiChar):longint;cdecl;external Clib name 'ClearLogicalRecord';
|
|
procedure ClearLogicalRecordSet; cdecl;external Clib name 'ClearLogicalRecordSet';
|
|
function ClearPhysicalRecord(fileHandle,recordStartOffset,recordLength:longint):longint;cdecl;external Clib name 'ClearPhysicalRecord';
|
|
procedure ClearPhysicalRecordSet;cdecl;external Clib name 'ClearPhysicalRecordSet';
|
|
function CloseSemaphore(semaphoreHandle:longint):longint;cdecl;external Clib name 'CloseSemaphore';
|
|
function ExamineSemaphore(semaphoreHandle:longint; semaphoreValue:Plongint; openCount:PWORD):longint;cdecl;external Clib name 'ExamineSemaphore';
|
|
function ExamineSemaphore(semaphoreHandle:longint; var semaphoreValue:longint; var openCount:word):longint;cdecl;external Clib name 'ExamineSemaphore';
|
|
function LockFileSet(timeoutLimit:word):longint;cdecl;external Clib name 'LockFileSet';
|
|
function LockLogicalRecordSet(timeoutLimit:word):longint;cdecl;external Clib name 'LockLogicalRecordSet';
|
|
function LockPhysicalRecordSet(lockDirective:byte; timeoutLimit:word):longint;cdecl;external Clib name 'LockPhysicalRecordSet';
|
|
function LogFile(fileName:PAnsiChar; lockDirective:byte; timeoutLimit:word):longint;cdecl;external Clib name 'LogFile';
|
|
function LogLogicalRecord(logicalRecordName:PAnsiChar; lockDirective:byte; timeoutLimit:word):longint;cdecl;external Clib name 'LogLogicalRecord';
|
|
function LogPhysicalRecord(fileHandle,recordStartOffset,recordLength:longint; lockDirective:byte; timeoutLimit:word):longint;cdecl;external Clib name 'LogPhysicalRecord';
|
|
function OpenSemaphore(semaphoreName:PAnsiChar; initialValue:longint; semaphoreHandle:Plongint; openCount:PWORD):longint;cdecl;external Clib name 'OpenSemaphore';
|
|
function OpenSemaphore(semaphoreName:PAnsiChar; initialValue:longint; var semaphoreHandle:longint; var openCount:word):longint;cdecl;external Clib name 'OpenSemaphore';
|
|
function ReleaseFile(fileName:PAnsiChar):longint;cdecl;external Clib name 'ReleaseFile';
|
|
procedure ReleaseFileSet;cdecl;external Clib name 'ReleaseFileSet';
|
|
function ReleaseLogicalRecord(logicalRecordName:PAnsiChar):longint;cdecl;external Clib name 'ReleaseLogicalRecord';
|
|
procedure ReleaseLogicalRecordSet;cdecl;external Clib name 'ReleaseLogicalRecordSet';
|
|
function ReleasePhysicalRecord(fileHandle,recordStartOffset,recordLength:longint):longint;cdecl;external Clib name 'ReleasePhysicalRecord';
|
|
procedure ReleasePhysicalRecordSet;cdecl;external Clib name 'ReleasePhysicalRecordSet';
|
|
function SignalSemaphore(semaphoreHandle:longint):longint;cdecl;external Clib name 'SignalSemaphore';
|
|
function WaitOnSemaphore(semaphoreHandle:longint; timeoutLimit:word):longint;cdecl;external Clib name 'WaitOnSemaphore';
|
|
|
|
{------------------------------------------------------------------------------}
|
|
|
|
function TTSAbortTransaction:longint;cdecl;external 'clib' name 'TTSAbortTransaction';
|
|
function TTSBeginTransaction:longint;cdecl;external 'clib' name 'TTSBeginTransaction';
|
|
function TTSEndTransaction(transactionNumber:Plongint):longint;cdecl;external 'clib' name 'TTSEndTransaction';
|
|
function TTSEndTransaction(var transactionNumber:longint):longint;cdecl;external 'clib' name 'TTSEndTransaction';
|
|
function TTSGetApplicationThresholds(logicalRecordLockThreshold:pbyte; physicalRecordLockThreshold:pbyte):longint;cdecl;external 'clib' name 'TTSGetApplicationThresholds';
|
|
function TTSGetWorkstationThresholds(logicalRecordLockThreshold:pbyte; physicalRecordLockThreshold:pbyte):longint;cdecl;external 'clib' name 'TTSGetWorkstationThresholds';
|
|
function TTSIsAvailable:longint;cdecl;external 'clib' name 'TTSIsAvailable';
|
|
function TTSSetApplicationThresholds(logicalRecordLockThreshold:pbyte; physicalRecordLockThreshold:pbyte):longint;cdecl;external 'clib' name 'TTSSetApplicationThresholds';
|
|
function TTSSetWorkstationThresholds(logicalRecordLockThreshold:pbyte; physicalRecordLockThreshold:pbyte):longint;cdecl;external 'clib' name 'TTSSetWorkstationThresholds';
|
|
function TTSTransactionStatus(transactionNumber:longint):longint;cdecl;external 'clib' name 'TTSTransactionStatus';
|
|
|
|
{------------------------------------------------------------------------------}
|
|
|
|
implementation
|
|
|
|
end.
|