FILE_OPEN_REPARSE_POINT

According to MSDN’s CreateFile docs: (the flag is named
FILE_FLAG_OPEN_REPARSE_POINT in userland):

“Specifying this flag inhibits the reparse behavior of NTFS reparse
points. When the file is opened, a file handle is returned, whether the
filter that controls the reparse point is operational or not. This flag
cannot be used with the CREATE_ALWAYS flag.”

Just ignore the flag in your filter. Things Will Just Work.

As a filter, the only thing you need to care about in regards to reparse
points/operations is the return value STATUS_REPARSE that you may see
from create. This means that the I/O manager should retry the create
with a reparsed filename (such as for paths that contain mount points).
Your filter should ignore creates that return STATUS_REPARSE, not treat
them as success, even though the NT_SUCCESS macro will return TRUE for
this return value.

  • Nicholas Ryan

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Nir Livni
Sent: Sunday, January 19, 2003 5:10 AM
To: File Systems Developers
Subject: [ntfsd] FILE_OPEN_REPARSE_POINT

I am writing a filter driver.
Sometimes I get an IRP_MJ_CREATE, when options=FILE_OPEN_REPARSE_POINT

What is it , and what am I supposed to do with it ?

You are currently subscribed to ntfsd as: xxxxx@nryan.com
To unsubscribe send a blank email to xxxxx@lists.osr.com

Can I use the REPARSE in my filter in order to direct all IRP’s that are
intended for local drive E: to access network drive X: ?

-----Original Message-----
From: Nicholas Ryan [mailto:xxxxx@nryan.com]
Sent: Monday, January 20, 2003 8:24 AM
To: File Systems Developers
Subject: [ntfsd] RE: FILE_OPEN_REPARSE_POINT

According to MSDN’s CreateFile docs: (the flag is named
FILE_FLAG_OPEN_REPARSE_POINT in userland):

“Specifying this flag inhibits the reparse behavior of NTFS reparse points.
When the file is opened, a file handle is returned, whether the filter that
controls the reparse point is operational or not. This flag cannot be used
with the CREATE_ALWAYS flag.”

Just ignore the flag in your filter. Things Will Just Work.

As a filter, the only thing you need to care about in regards to reparse
points/operations is the return value STATUS_REPARSE that you may see from
create. This means that the I/O manager should retry the create with a
reparsed filename (such as for paths that contain mount points). Your filter
should ignore creates that return STATUS_REPARSE, not treat them as success,
even though the NT_SUCCESS macro will return TRUE for this return value.

  • Nicholas Ryan

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Nir Livni
Sent: Sunday, January 19, 2003 5:10 AM
To: File Systems Developers
Subject: [ntfsd] FILE_OPEN_REPARSE_POINT

I am writing a filter driver.
Sometimes I get an IRP_MJ_CREATE, when options=FILE_OPEN_REPARSE_POINT

What is it , and what am I supposed to do with it ?

You are currently subscribed to ntfsd as: xxxxx@nryan.com
To unsubscribe send a blank email to xxxxx@lists.osr.com


You are currently subscribed to ntfsd as: xxxxx@cyber-ark.com
To unsubscribe send a blank email to xxxxx@lists.osr.com

Yes. This has been discussed on this list before so check the archive.
Even check OSR’s FAQ.

Pete

Peter Scott
xxxxx@KernelDrivers.com
www.KernelDrivers.com

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Nir Livni
Sent: Monday, January 20, 2003 3:30 AM
To: File Systems Developers
Subject: [ntfsd] RE: FILE_OPEN_REPARSE_POINT

Can I use the REPARSE in my filter in order to direct all IRP’s that are
intended for local drive E: to access network drive X: ?

-----Original Message-----
From: Nicholas Ryan [mailto:xxxxx@nryan.com]
Sent: Monday, January 20, 2003 8:24 AM
To: File Systems Developers
Subject: [ntfsd] RE: FILE_OPEN_REPARSE_POINT

According to MSDN’s CreateFile docs: (the flag is named
FILE_FLAG_OPEN_REPARSE_POINT in userland):

“Specifying this flag inhibits the reparse behavior of NTFS reparse
points.
When the file is opened, a file handle is returned, whether the filter
that
controls the reparse point is operational or not. This flag cannot be
used
with the CREATE_ALWAYS flag.”

Just ignore the flag in your filter. Things Will Just Work.

As a filter, the only thing you need to care about in regards to reparse
points/operations is the return value STATUS_REPARSE that you may see
from
create. This means that the I/O manager should retry the create with a
reparsed filename (such as for paths that contain mount points). Your
filter
should ignore creates that return STATUS_REPARSE, not treat them as
success,
even though the NT_SUCCESS macro will return TRUE for this return value.

  • Nicholas Ryan

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Nir Livni
Sent: Sunday, January 19, 2003 5:10 AM
To: File Systems Developers
Subject: [ntfsd] FILE_OPEN_REPARSE_POINT

I am writing a filter driver.
Sometimes I get an IRP_MJ_CREATE, when options=FILE_OPEN_REPARSE_POINT

What is it , and what am I supposed to do with it ?

You are currently subscribed to ntfsd as: xxxxx@nryan.com
To unsubscribe send a blank email to xxxxx@lists.osr.com


You are currently subscribed to ntfsd as: xxxxx@cyber-ark.com
To unsubscribe send a blank email to xxxxx@lists.osr.com


You are currently subscribed to ntfsd as: xxxxx@kerneldrivers.com
To unsubscribe send a blank email to xxxxx@lists.osr.com