73 lines
1.1 KiB
C++
73 lines
1.1 KiB
C++
#if !defined(HPFS_ACL_DEFINED)
|
|
|
|
#define HPFS_ACL_DEFINED
|
|
|
|
#include "fnode.hxx"
|
|
#include "verify.hxx"
|
|
|
|
//
|
|
// Forward references
|
|
//
|
|
|
|
DECLARE_CLASS( DEFERRED_ACTIONS_LIST );
|
|
DECLARE_CLASS( HPFS_ACL );
|
|
DECLARE_CLASS( HPFS_SA );
|
|
DECLARE_CLASS( LOG_IO_DP_DRIVE );
|
|
DECLARE_CLASS( MESSAGE );
|
|
DECLARE_CLASS( HPFS_PATH );
|
|
DECLARE_CLASS( HPFS_ORPHANS );
|
|
|
|
|
|
class HPFS_ACL : public OBJECT {
|
|
|
|
|
|
public:
|
|
|
|
DECLARE_CONSTRUCTOR( HPFS_ACL );
|
|
|
|
VIRTUAL
|
|
~HPFS_ACL(
|
|
);
|
|
|
|
BOOLEAN
|
|
Initialize(
|
|
PLOG_IO_DP_DRIVE Drive,
|
|
_FNODE* FnodeData,
|
|
LBN FnodeLbn
|
|
);
|
|
|
|
VERIFY_RETURN_CODE
|
|
VerifyAndFix(
|
|
IN HPFS_SA* SuperArea,
|
|
IN PDEFERRED_ACTIONS_LIST DeferredActions,
|
|
IN PHPFS_PATH CurrentPath,
|
|
IN OUT PMESSAGE Message,
|
|
IN OUT PBOOLEAN ErrorsDetected,
|
|
IN BOOLEAN UpdateAllowed = FALSE,
|
|
IN OUT PHPFS_ORPHANS OrphansList = NULL
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
QueryFnodeModified(
|
|
);
|
|
|
|
NONVIRTUAL
|
|
BOOLEAN
|
|
FindAndResolveHotfix(
|
|
IN PHPFS_SA SuperArea
|
|
);
|
|
|
|
|
|
private:
|
|
|
|
PLOG_IO_DP_DRIVE _Drive;
|
|
_FNODE* _FnodeData;
|
|
LBN _FnodeLbn;
|
|
|
|
BOOLEAN _FnodeModified;
|
|
|
|
};
|
|
|
|
#endif
|