Windows NT 4.0 source code leak
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

301 lines
7.8 KiB

/**
Copyright(c) Maynard Electronics, Inc. 1984-89
Name: afp_fs.h
Date Updated: $./FDT$ $./FTM$
Description:
Location:
$Log: N:/LOGFILES/AFP_FS.H_V $
*
* Rev 1.14 05 Jan 1993 13:21:22 CHUCKB
* Change per code review (took out AFP_IsBlkComplete).
*
* Rev 1.13 03 Dec 1992 16:48:24 CHUCKB
* Added prototype for AFP_IsBlockComplete().
*
* Rev 1.12 25 Nov 1992 10:51:10 CHUCKB
* Made changes for MTF 4.0.
*
* Rev 1.11 25 Sep 1992 16:08:18 CARLS
* added AFP_GetDispSizeDBLK
*
* Rev 1.10 24 Sep 1992 17:28:44 CHUCKB
* Changes for Graceful Red.
*
* Rev 1.9 22 Sep 1992 17:15:00 CHUCKB
* Removed references to fs_GetTotalSizeDBLK().
*
* Rev 1.8 17 Sep 1992 13:51:54 CHUCKB
* Changed return type of prototype for AFP_DetachDLE().
*
* Rev 1.7 28 Aug 1992 16:09:48 BARRY
* Added some 64-bit structures.
*
* Rev 1.6 28 May 1992 10:39:36 BARRY
* Added search mode support prototypes.
*
* Rev 1.5 20 Dec 1991 09:13:10 STEVEN
* move common functions into tables
*
* Rev 1.4 10 Sep 1991 18:18:36 DON
* if NLM, then handles need to be INT32
*
* Rev 1.3 15 Aug 1991 14:18:08 DON
* if OS_NLM, need a LONG trust_index
*
* Rev 1.2 23 May 1991 18:20:46 BARRY
* Remove prototype for function that's been removed.
*
* Rev 1.1 23 May 1991 16:46:38 BARRY
* Changes for FindFirst/Next to scan for dirs only
*
* Rev 1.0 09 May 1991 13:31:02 HUNTER
* Initial revision.
**/
/* $end$ */
#ifndef AFP_FS_H
#define AFP_FS_H
typedef struct AFP_FILE_HAND_STRUCT {
#if defined(OS_NLM)
UINT32 res_hand ;
UINT32 data_hand ;
#else
UINT8 res_hand ;
UINT8 data_hand ;
#endif
UINT32 res_size ;
UINT32 data_size ;
UINT32 res_offset ;
UINT32 data_offset ;
UINT32 trust_size ;
UINT32 trust_offset ;
UINT8 trust_format ;
#if defined(OS_NLM)
UINT32 trust_index ; /* Holds trust read index between calls */
#else
UINT16 trust_index ; /* Holds trust read index between calls */
#endif
CHAR file_name[14] ; /* File name for subsequent trust calls */
UINT64 nextStreamHeaderPosition;
UINT64 objPos; /* Object position on restore */
UINT64 dataStart; /* Position start of stream's data */
UINT32 active_stream_id ; /* id of the stream being processed */
} AFP_FILE_HAND_STRUCT, *AFP_FILE_HAND;
typedef struct AFP_RESERVED_SH_STRUCT {
INT16 fhdl ; /* AFP file handle */
INT16 active ; /* is stream being processed */
STREAM_INFO sh ; /* AFP reserved stream info */
} AFP_RESERVED_SH, *AFP_RESERVED_SH_PTR ;
/* sizeof FILE_HAND plus afp reserved struct */
#define FS_SIZEOF_RESERVED_FILE_HAND \
( sizeof(FILE_HAND_STRUCT) + sizeof(AFP_RESERVED_SH) )
INT16 AFP_FindDrives( DLE_HAND hand, BE_CFG_PTR cfg, UINT32 mask );
INT16 AFP_AttachToDLE(
FSYS_HAND fsh, /* I - File system handle */
GENERIC_DLE_PTR dle, /*I/O- drive to attach to. list element expanded */
CHAR_PTR u_name, /* I - user name NOT USED */
CHAR_PTR pswd ); /* I - passowrd NOT USED */
INT16 AFP_DetachDLE( FSYS_HAND fsh ) ;
INT16 AFP_PopMinDDB( FSYS_HAND fsh, DBLK_PTR ddb ) ;
INT16 AFP_PushMinDDB(
FSYS_HAND fsh,
DBLK_PTR dblk ) ;
INT16 AFP_FindFirst(
FSYS_HAND fsh,
DBLK_PTR dblk,
CHAR_PTR sname,
UINT16 find_type );
INT16 AFP_GetObjInfo(
FSYS_HAND fsh ,
DBLK_PTR dblk );
INT16 AFP_VerObjInfo(
FSYS_HAND fsh,
DBLK_PTR dblk ) ;
INT16 AFP_SetObjInfo(
FSYS_HAND fsh,
DBLK_PTR dblk );
INT16 AFP_FindNext(
FSYS_HAND fsh,
DBLK_PTR dblk ) ;
INT16 AFP_ChangeDir(
FSYS_HAND fsh,
CHAR_PTR path,
INT16 psize ) ;
INT16 AFP_UpDir( FSYS_HAND fsh ) ;
INT16 AFP_GetCurrentPath(
FSYS_HAND fsh,
CHAR_PTR path,
INT16 *size );
INT16 AFP_GetBasePath(
FSYS_HAND fsh,
CHAR_PTR base_path,
INT16 *size );
INT16 AFP_GetCurrentDDB(
FSYS_HAND fsh,
DBLK_PTR dblk );
INT16 AFP_GetSpecDBLKS(
FSYS_HAND fsh,
DBLK_PTR dblk,
INT32 *index ) ;
INT16 AFP_DeleteObj(
FSYS_HAND fsh,
DBLK_PTR dblk ) ;
INT16 AFP_MatchDBLK(
FSYS_HAND fsh,
DBLK_PTR dblk1,
DBLK_PTR dblk2,
BOOLEAN disp_flag,
struct FSE *fse) ;
INT16 AFP_SetAFPInfo( FSYS_HAND fsh, DBLK_PTR dblk ) ;
INT16 AFP_CreateObj(
FSYS_HAND fsh,
DBLK_PTR dblk );
INT16 AFP_OpenObj(
FSYS_HAND fsh,
FILE_HAND *hand,
DBLK_PTR dblk,
OPEN_MODE mode ) ;
INT16 AFP_CloseObj( FILE_HAND hand ) ;
INT16 AFP_ReadObj(
FILE_HAND hand,
CHAR_PTR buf,
UINT16 *size,
UINT16 *blk_size,
STREAM_INFO_PTR s_info ) ;
INT16 AFP_SeekObj(
FILE_HAND hand,
UINT32 *offset );
INT16 AFP_VerObj(
FILE_HAND hand,
CHAR_PTR buf,
CHAR_PTR data,
UINT16 *size,
UINT16 *blk_size,
STREAM_INFO_PTR s_info ) ;
INT16 AFP_WriteObj(
FILE_HAND hand,
CHAR_PTR buf,
UINT16 *size,
UINT16 *blk_size,
STREAM_INFO_PTR s_info ) ;
INT16 AFP_ModFnameFDB( FSYS_HAND fsh, BOOLEAN set_it, DBLK_PTR fdb, CHAR_PTR buf, INT16 *size );
INT16 AFP_ModPathDDB( FSYS_HAND fsh, BOOLEAN set_it, DBLK_PTR fdb, CHAR_PTR buf, INT16 *size );
INT16 AFP_GetOSFnameFDB( DBLK_PTR fdb, CHAR_PTR buf );
INT16 AFP_GetOSPathDDB( FSYS_HAND fsh, DBLK_PTR fdb, CHAR_PTR buf );
INT16 AFP_GetDirIDinDDB( DBLK_PTR ddb, CHAR_PTR buf );
INT16 AFP_GetCdateDBLK( DBLK_PTR dblk, DATE_TIME *buf ) ;
INT16 AFP_ModBdateDBLK( BOOLEAN set_it, DBLK_PTR dblk, DATE_TIME *buf ) ;
INT16 AFP_GetMdateDBLK( DBLK_PTR dblk, DATE_TIME *buf ) ;
INT16 AFP_ModAdateDBLK( BOOLEAN set_it, DBLK_PTR dblk, DATE_TIME *buf ) ;
UINT64 AFP_GetDisplaySizeDBLK( FSYS_HAND fsh, DBLK_PTR dblk ) ;
INT16 AFP_GetFileVerFDB( DBLK_PTR dblk, UINT32 *ver ) ;
INT16 AFP_ModAttribDBLK( BOOLEAN get_set, DBLK_PTR dblk, UINT32 *attrib) ;
INT16 AFP_GetObjTypeDBLK( DBLK_PTR dblk, OBJECT_TYPE *type ) ;
INT16 AFP_GetOS_InfoDBLK( DBLK_PTR dblk, CHAR_PTR os_info, INT16 *size ) ;
INT16 AFP_GetActualSizeDBLK( FSYS_HAND fsh, DBLK_PTR dblk ) ;
INT16 AFP_SizeofFname( FSYS_HAND fsh, DBLK_PTR fdb ) ;
INT16 AFP_SizeofOSFname( FSYS_HAND fsh, DBLK_PTR fdb ) ;
INT16 AFP_SizeofOSPath( FSYS_HAND fsh, DBLK_PTR ddb ) ;
INT16 AFP_SizeofDirID( FSYS_HAND fsh, DBLK_PTR ddb ) ;
INT16 AFP_SizeofPath( FSYS_HAND fsh, DBLK_PTR ddb ) ;
INT16 AFP_SizeofOSInfo( FSYS_HAND fsh, DBLK_PTR ddb ) ;
INT16 AFP_CreateFDB( FSYS_HAND fsh, GEN_FDB_DATA_PTR data ) ;
INT16 AFP_CreateDDB( FSYS_HAND fsh, GEN_DDB_DATA_PTR data ) ;
VOID AFP_SetOwnerId( FSYS_HAND fsh, DBLK_PTR dblk, UINT32 id ) ;
INT16 AFP_ChangeIntoDDB( FSYS_HAND fsh, DBLK_PTR ddb ) ;
INT16 AFP_GetFileInfo386( FSYS_HAND fsh, DBLK_PTR fdb ) ;
INT16 AFP_GetDirInfo386( FSYS_HAND fsh, DBLK_PTR ddb ) ;
INT16 AFP_GetSearchMode( FSYS_HAND fsh, DBLK_PTR fdb ) ;
INT16 AFP_SetFileInfo386( FSYS_HAND fsh, DBLK_PTR fdb ) ;
UINT64 AFP_GetDispSizeDBLK( FSYS_HAND fsh, DBLK_PTR dblk ) ;
UINT16 AFP_SpecExcludeObj( FSYS_HAND fsh, /* I - File system handle */
DBLK_PTR ddb, /* I - Descriptor block of ddb */
DBLK_PTR fdb ) ; /* I - Descriptor block of fdb */
UINT16 AFP_SetDataSize( FSYS_HAND fsh, /* I - File system handle */
DBLK_PTR ddb, /* I - Descriptor block of ddb */
UINT32 size ) ; /* I - new size */
VOID AFP_CheckBindClose( FSYS_HAND fsh, DBLK_PTR dblk ) ;
INT16 AFP_ChangeIntoSubDir( FSYS_HAND fsh, CHAR_PTR l_path,
CHAR_PTR s_name, UINT32 entry_id ) ;
VOID AFP_InitMakeData( FSYS_HAND fsh,
INT16 blkType,
CREATE_DBLK_PTR data );
#endif