PMRX_EXTENDFILE_CALLDOWN parameters and return value...

PMRX_EXTENDFILE_CALLDOWN is define as:

typedef
ULONG
(NTAPI *PMRX_EXTENDFILE_CALLDOWN) (
IN OUT PRX_CONTEXT RxContext,
IN OUT PLARGE_INTEGER NewFileSize,
OUT PLARGE_INTEGER NewAllocationSize
);

  1. What is the meaning of the return value? Is it
    a NTSTATUS [that is how NulMRx declares it.]

  2. NewFileSize is declared IN OUT. Under what circumstances
    would I modify NewFileSize? What would be done with the
    value if I did modify it?

Thanks,

Joseph