[channels,drive] log FSInformationClass

This commit is contained in:
akallabeth
2025-03-05 21:16:34 +01:00
parent 7d87de6572
commit 3ed1545319
2 changed files with 13 additions and 4 deletions

View File

@@ -503,6 +503,8 @@ static BOOL drive_file_query_from_handle_information(const DRIVE_FILE* file,
default:
/* Unhandled FsInformationClass */
WLog_WARN(TAG, "Unhandled FSInformationClass %s [0x%08" PRIx32 "]",
FSInformationClass2Tag(FsInformationClass), FsInformationClass);
return FALSE;
}
@@ -568,6 +570,8 @@ static BOOL drive_file_query_from_attributes(const DRIVE_FILE* file,
default:
/* Unhandled FsInformationClass */
WLog_WARN(TAG, "Unhandled FSInformationClass %s [0x%08" PRIx32 "]",
FSInformationClass2Tag(FsInformationClass), FsInformationClass);
return FALSE;
}
@@ -822,6 +826,8 @@ BOOL drive_file_set_information(DRIVE_FILE* file, UINT32 FsInformationClass, UIN
break;
default:
WLog_WARN(TAG, "Unhandled FSInformationClass %s [0x%08" PRIx32 "]",
FSInformationClass2Tag(FsInformationClass), FsInformationClass);
return FALSE;
}
@@ -1003,7 +1009,8 @@ BOOL drive_file_query_directory(DRIVE_FILE* file, UINT32 FsInformationClass, BYT
break;
default:
WLog_ERR(TAG, "unhandled FsInformationClass %" PRIu32, FsInformationClass);
WLog_WARN(TAG, "Unhandled FSInformationClass %s [0x%08" PRIx32 "]",
FSInformationClass2Tag(FsInformationClass), FsInformationClass);
/* Unhandled FsInformationClass */
goto out_fail;
}

View File

@@ -570,6 +570,8 @@ static UINT drive_process_irp_query_volume_information(DRIVE_DEVICE* drive, IRP*
break;
default:
WLog_WARN(TAG, "Unhandled FSInformationClass %s [0x%08" PRIx32 "]",
FSInformationClass2Tag(FsInformationClass), FsInformationClass);
irp->IoStatus = STATUS_UNSUCCESSFUL;
Stream_Write_UINT32(output, 0); /* Length */
break;
@@ -587,15 +589,15 @@ static UINT drive_process_irp_query_volume_information(DRIVE_DEVICE* drive, IRP*
*/
static UINT drive_process_irp_silent_ignore(DRIVE_DEVICE* drive, IRP* irp)
{
UINT32 FsInformationClass = 0;
if (!drive || !irp || !irp->output || !irp->Complete)
return ERROR_INVALID_PARAMETER;
if (!Stream_CheckAndLogRequiredLength(TAG, irp->input, 4))
return ERROR_INVALID_DATA;
Stream_Read_UINT32(irp->input, FsInformationClass);
const uint32_t FsInformationClass = Stream_Get_UINT32(irp->input);
WLog_VRB(TAG, "Silently ignore FSInformationClass %s [0x%08" PRIx32 "]",
FSInformationClass2Tag(FsInformationClass), FsInformationClass);
Stream_Write_UINT32(irp->output, 0); /* Length */
return irp->Complete(irp);
}