MCPcopy Create free account
hub / github.com/bobranten/Ext4Fsd / Ext2UserFsRequest

Function Ext2UserFsRequest

Ext4Fsd/fsctl.c:1900–2000  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1898}
1899
1900NTSTATUS
1901Ext2UserFsRequest (IN PEXT2_IRP_CONTEXT IrpContext)
1902{
1903 PIRP Irp;
1904 PIO_STACK_LOCATION IoStackLocation;
1905 ULONG FsControlCode;
1906 NTSTATUS Status;
1907
1908 ASSERT(IrpContext);
1909
1910 ASSERT((IrpContext->Identifier.Type == EXT2ICX) &&
1911 (IrpContext->Identifier.Size == sizeof(EXT2_IRP_CONTEXT)));
1912
1913 Irp = IrpContext->Irp;
1914 IoStackLocation = IoGetCurrentIrpStackLocation(Irp);
1915
1916#ifndef _GNU_NTIFS_
1917 FsControlCode =
1918 IoStackLocation->Parameters.FileSystemControl.FsControlCode;
1919#else
1920 FsControlCode = ((PEXTENDED_IO_STACK_LOCATION)
1921 IoStackLocation)->Parameters.FileSystemControl.FsControlCode;
1922#endif
1923
1924 switch (FsControlCode) {
1925
1926 case FSCTL_GET_REPARSE_POINT:
1927 Status = Ext2GetReparsePoint(IrpContext);
1928 break;
1929
1930 case FSCTL_SET_REPARSE_POINT:
1931 Status = Ext2SetReparsePoint(IrpContext);
1932 break;
1933
1934 case FSCTL_DELETE_REPARSE_POINT:
1935 Status = Ext2DeleteReparsePoint(IrpContext);
1936 break;
1937
1938 case FSCTL_LOCK_VOLUME:
1939 Status = Ext2LockVolume(IrpContext);
1940 break;
1941
1942 case FSCTL_UNLOCK_VOLUME:
1943 Status = Ext2UnlockVolume(IrpContext);
1944 break;
1945
1946 case FSCTL_DISMOUNT_VOLUME:
1947 Status = Ext2DismountVolume(IrpContext);
1948 break;
1949
1950 case FSCTL_IS_VOLUME_MOUNTED:
1951 Status = Ext2IsVolumeMounted(IrpContext);
1952 break;
1953
1954 case FSCTL_INVALIDATE_VOLUMES:
1955 Status = Ext2InvalidateVolumes(IrpContext);
1956 break;
1957

Callers 1

Ext2FileSystemControlFunction · 0.85

Calls 15

Ext2GetReparsePointFunction · 0.85
Ext2SetReparsePointFunction · 0.85
Ext2DeleteReparsePointFunction · 0.85
Ext2UnlockVolumeFunction · 0.85
Ext2IsVolumeMountedFunction · 0.85
Ext2InvalidateVolumesFunction · 0.85
Ext2AllowExtendedDasdIoFunction · 0.85
Ext2OplockRequestFunction · 0.85
Ext2IsVolumeDirtyFunction · 0.85
Ext2GetRetrievalPointersFunction · 0.85

Tested by

no test coverage detected