| 213 | |
| 214 | |
| 215 | NTSTATUS |
| 216 | Ext2DispatchRequest (IN PEXT2_IRP_CONTEXT IrpContext) |
| 217 | { |
| 218 | ASSERT(IrpContext); |
| 219 | |
| 220 | ASSERT((IrpContext->Identifier.Type == EXT2ICX) && |
| 221 | (IrpContext->Identifier.Size == sizeof(EXT2_IRP_CONTEXT))); |
| 222 | |
| 223 | switch (IrpContext->MajorFunction) { |
| 224 | |
| 225 | case IRP_MJ_CREATE: |
| 226 | return Ext2Create(IrpContext); |
| 227 | |
| 228 | case IRP_MJ_CLOSE: |
| 229 | return Ext2Close(IrpContext); |
| 230 | |
| 231 | case IRP_MJ_READ: |
| 232 | return Ext2Read(IrpContext); |
| 233 | |
| 234 | case IRP_MJ_WRITE: |
| 235 | return Ext2Write(IrpContext); |
| 236 | |
| 237 | case IRP_MJ_FLUSH_BUFFERS: |
| 238 | return Ext2Flush(IrpContext); |
| 239 | |
| 240 | case IRP_MJ_QUERY_INFORMATION: |
| 241 | return Ext2QueryFileInformation(IrpContext); |
| 242 | |
| 243 | case IRP_MJ_SET_INFORMATION: |
| 244 | return Ext2SetFileInformation(IrpContext); |
| 245 | |
| 246 | case IRP_MJ_QUERY_VOLUME_INFORMATION: |
| 247 | return Ext2QueryVolumeInformation(IrpContext); |
| 248 | |
| 249 | case IRP_MJ_SET_VOLUME_INFORMATION: |
| 250 | return Ext2SetVolumeInformation(IrpContext); |
| 251 | |
| 252 | case IRP_MJ_DIRECTORY_CONTROL: |
| 253 | return Ext2DirectoryControl(IrpContext); |
| 254 | |
| 255 | case IRP_MJ_FILE_SYSTEM_CONTROL: |
| 256 | return Ext2FileSystemControl(IrpContext); |
| 257 | |
| 258 | case IRP_MJ_DEVICE_CONTROL: |
| 259 | return Ext2DeviceControl(IrpContext); |
| 260 | |
| 261 | case IRP_MJ_LOCK_CONTROL: |
| 262 | return Ext2LockControl(IrpContext); |
| 263 | |
| 264 | case IRP_MJ_CLEANUP: |
| 265 | return Ext2Cleanup(IrpContext); |
| 266 | |
| 267 | case IRP_MJ_SHUTDOWN: |
| 268 | return Ext2ShutDown(IrpContext); |
| 269 | |
| 270 | case IRP_MJ_QUERY_EA: |
| 271 | return Ext2QueryEa(IrpContext); |
| 272 |
no test coverage detected