Is it ever possible that an IRP_MJ_WRITE for a NIFB file could ever have
IRP_MN_COMPLETE or IRP_PAGING_IO set, or could have WriteBehind enabled?
I’ve always assumed they couldn’t but am I assuming wrong? Thanks.
How about if the same file is opened for cached I/O as well?
Neil Weicher wrote:
Is it ever possible that an IRP_MJ_WRITE for a NIFB file could ever have
IRP_MN_COMPLETE or IRP_PAGING_IO set, or could have WriteBehind enabled?
I’ve always assumed they couldn’t but am I assuming wrong? Thanks.
–
Kind regards, Dejan M.
http://www.alfasp.com E-mail: xxxxx@alfasp.com
Alfa Transparent File Encryptor - Transparent file encryption services.
Alfa File Protector - File protection and hiding library for Win32 developers.
Alfa File Monitor - File monitoring library for Win32 developers.
File is opened exclusively. Thanks for the suggestion though.
----- Original Message -----
From: “Dejan Maksimovic”
To: “Windows File Systems Devs Interest List”
Sent: Saturday, November 05, 2005 12:15 AM
Subject: Re: [ntfsd] NIFB question
>
> How about if the same file is opened for cached I/O as well?
>
> Neil Weicher wrote:
>
> > Is it ever possible that an IRP_MJ_WRITE for a NIFB file could ever have
> > IRP_MN_COMPLETE or IRP_PAGING_IO set, or could have WriteBehind enabled?
> > I’ve always assumed they couldn’t but am I assuming wrong? Thanks.
>
> –
> Kind regards, Dejan M.
> http://www.alfasp.com E-mail: xxxxx@alfasp.com
> Alfa Transparent File Encryptor - Transparent file encryption services.
> Alfa File Protector - File protection and hiding library for Win32
developers.
> Alfa File Monitor - File monitoring library for Win32 developers.
>
>
>
>
> —
> Questions? First check the IFS FAQ at
https://www.osronline.com/article.cfm?id=17
>
> You are currently subscribed to ntfsd as: xxxxx@netlib.com
> To unsubscribe send a blank email to xxxxx@lists.osr.com
>
Logically it cannot.
But from FastFat sources, it checks only the IRP_NOCACHE flag during
IRP_MJ_WRITE; the NIFB is checked during Create only and the FO_CACHE_SUPPORTED
(which is set in non-NIFB case, and solely then) is not used anywhere except during
close.
I doubt the I/O manager does any checks on the validity on the parameters before
IRP_MJ_WRITE.
My guess is an MDL/Paging call would fail in NIFB case but would arrive to the
FS; you’d have to test it.
Neil Weicher wrote:
File is opened exclusively. Thanks for the suggestion though.
–
Kind regards, Dejan M.
http://www.alfasp.com E-mail: xxxxx@alfasp.com
Alfa Transparent File Encryptor - Transparent file encryption services.
Alfa File Protector - File protection and hiding library for Win32 developers.
Alfa File Monitor - File monitoring library for Win32 developers.