Detecting Oplocks

Hello everybody.

Is there any way to detect that an oplock is active locally for a certain
file ?
(I mean, rdr has requested an oplock, it has been granted and it is still
active)

I need to know whether a file as been already oplocked
I need to perform this test at CREATE time.
I would prefer to use filename instead of using a handle, but I could use
handle or
fileobject too.

For example I would need something like:

BOOL IsThisFileOplocked ( PUNICODE_STRING UncFileName );

if not, I will be happy to have, at least, something like:

BOOL IsThisFileOplocked ( HANDLE h );

or
BOOL IsThisFileOplocked ( PFILE_OBJECT fo );

I have seen function FsRtlCheckOplock used at some places nut it uses FCB
special fields.

Any ideas ?

Inaki.