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.
 
 
 
 
 
 

97 lines
2.6 KiB

/**
Copyright(c) Maynard Electronics, Inc. 1984-89
Name: os2dblk.h
Date Updated: $./FDT$ $./FTM$
Description: This file contains the definition of the OS2
file and directory control blocks.
$Log: O:/LOGFILES/OS2DBLK.H_V $
*
* Rev 1.3 15 Jan 1993 17:31:28 TIMN
* Added support to OS2 FSYS for MTF
*
* Rev 1.2 30 Jan 1992 17:56:42 BARRY
* Added acl_info_complete so os info calls could be separated from ACL calls.
* (Purely a performance change.)
*
* Rev 1.1 30 Oct 1991 10:57:58 LORIB
* Changes for ACL.
*
* Rev 1.0 09 May 1991 13:31:32 HUNTER
* Initial revision.
**/
#ifndef os2dblk_h
#define os2dblk_h
#include "queues.h"
#include "os2com.h"
/* $end$ include list */
#define EA_LONG_NAME ".LONGNAME"
typedef struct STD_OBJ_INFO {
FDATE cdate ;
FTIME ctime ;
FDATE adate ;
FTIME atime ;
FDATE date ;
FTIME time ;
UINT32 size ;
UINT32 alloc_size ;
UINT16 attr;
UINT16 ea_size ;
UINT16 acl_size ;
} STD_OBJ_INFO;
typedef struct OS2_FDB_INFO {
BOOLEAN inuse_attrib ;
HFILE handle ; /* set by: OS2_CreateFile */
UINT16 lname_leng ;
UINT16 long_name ; /* used for backup only */
UINT16 os_name ;
UINT16 name ;
} OS2_FDB_INFO, *OS2_FDB_INFO_PTR;
typedef struct OS2_DDB_INFO {
BOOLEAN empty_attrib ;
UINT16 os_path ;
UINT16 os_path_leng ;
UINT16 path_leng ; /* does not count \0 */
UINT16 path ;
UINT16 lpath_leng ; /* only used for backup */
UINT16 long_path ; /* */
} OS2_DDB_INFO, *OS2_DDB_INFO_PTR;
typedef struct OS2_DBLK {
UINT8 blk_type; /* values: DDB_ID, FDB_ID */
COM_DBLK fs_reserved ;
STD_OBJ_INFO dta;
BOOLEAN os_info_complete; /* TRUE if GetObjInfo doesn't have to do anything */
BOOLEAN acl_info_complete; /* TRUE if GetObjInfo doesn't have to call ACL code */
UINT32 data_fork_offset ;
UINT32 ea_fork_offset ;
UINT32 acl_fork_offset ;
union {
OS2_DDB_INFO d;
OS2_FDB_INFO f;
} b;
} OS2_DBLK, *OS2_DBLK_PTR;
typedef struct OS2_MIN_DDB {
Q_ELEM q ;
HDIR handle ;
UINT16 psize ; /* size of path string */
CHAR_PTR path; /* build from "name" and current dir */
} OS2_MIN_DDB, *OS2_MIN_DDB_PTR;
#endif