Condividi tramite


DF - Test IOCTL del buffer di lunghezza fuzz zero (affidabilità)

Durante il test del buffer Zero-Length, il test Fuzz invia una serie di chiamate alla funzione DeviceIoControl con lunghezze del buffer di input e/o di output pari a 0. Il test genera codici di controllo I/O diversi usando codici di funzione diversi, tipi di dispositivo, metodi di trasferimento dei dati e requisiti di accesso. Per informazioni sul contenuto dei codici di controllo I/O, vedere Definizione dei codici di controllo I/O.

Per testare la gestione dei puntatori del buffer non validi, i puntatori del buffer in queste chiamate in modalità utente specificano indirizzi elevati nello spazio indirizzi virtuali del kernel, ad esempio 0xFFFFFC00.

Il test Fuzz esegue il test del buffer Zero-Length su tutti i dispositivi aperti durante i test di base e aperti aggiuntivi. È possibile personalizzare questo test usando i parametri di comando MinFunctionCode e MaxFunctionCode per specificare l'intervallo di codici di funzione IOCTL usati nelle chiamate e MinDeviceType e MaxDeviceType per specificare l'intervallo di tipi di dispositivo usati nelle chiamate.

  • Test binario: Devfund_FuzzTest.dll
  • Metodo di test: DoZeroLengthBufferIOCTLTest

Dettagli del test

   
Specifiche
  • Device.DevFund.Reliability.BasicReliabilityAndPerformance
  • Device.DevFund.Reliability.BasicSecurity
  • Device.DevFund.DriverFramework.KMDF.Reliability
  • Device.DevFund.DriverFramework.UMDF.Reliability
Piattaforme
  • Windows 10, edizioni client (x86)
  • Windows 10, edizioni client (x64)
  • Windows Server 2016 (x64)
  • Windows 10, edizioni client (Arm64)
  • Windows 10, mobile edition (Arm)
  • Windows 10, mobile edition (Arm64)
Versioni supportate
  • Windows 10
  • Windows 10 versione 1511
  • Windows 10 versione 1607
  • Windows 10 versione 1703
  • Windows 10, versione 1709
  • Windows 10, versione 1803
  • Windows 10, versione 1809
  • Windows 10, versione 1903
  • Aggiornamento successivo a Windows 10
Tempo di esecuzione previsto (in minuti) 15
Categoria Scenario
Timeout (in minuti) 180
Richiede il riavvio false
Richiede una configurazione speciale true
Tipo automatic

 

Documentazione aggiuntiva

I test in questa area di funzionalità potrebbero avere documentazione aggiuntiva, inclusi prerequisiti, configurazione e informazioni sulla risoluzione dei problemi, disponibili negli argomenti seguenti:

Esecuzione del test

Prima di eseguire il test, completare la configurazione del test come descritto nei requisiti di test: Prerequisiti di affidabilità di Device.Fundamentals.

Risoluzione dei problemi relativi

Per la risoluzione dei problemi generici degli errori di test HLK, vedere Risoluzione dei problemi di test di Windows HLK.

Per informazioni sulla risoluzione dei problemi specifiche dei test dei concetti fondamentali del dispositivo in HLK e WDK, vedere La documentazione aggiuntiva di Device.DevFund.

Altre informazioni

Parametri

Nome parametro Descrizione dei parametri
DQ Query WDTF SDEL usata per identificare i dispositivi di destinazione - https://go.microsoft.com/fwlink/?LinkId=232678
Wpa2PskAesSsid Obbligatorio SOLO se DUT o uno dei relativi dispositivi figlio è una scheda WiFi. Specificare SSID di una rete WiFi WPA2 che il test può usare per testare la scheda WiFi. Il valore predefinito è "kitstestssid".
Wpa2PskPassword Obbligatorio SOLO se DUT o uno dei relativi dispositivi figlio è una scheda WiFi. Specificare la password della rete WiFi WPA2 specificata usando il parametro Wpa2PskAesSsid. Il valore predefinito è "password".
ChangeBufferProtectionFlags Vero o Falso. Modifica i flag di protezione della memoria dei buffer passati al dispositivo testato. I flag di protezione della memoria alternativi tra nessun accesso, sola lettura e sola lettura con la protezione della pagina.
Impersonate Vero o Falso. Esegue il test come utente non amministrativo.
FillZeroPageWithNull Vero o Falso. Esegue il mapping della pagina zero e lo riempie con valori NULL. Questo test identifica i driver che non verificano un riferimento puntatore prima di rinviare un puntatore.
DoPoolCheck Vero o Falso. Monitora l'uso del driver dei pool di memoria di sistema paginati e non paginati usando tag del pool e elenchi lookaside. Questa opzione monitora anche le modifiche nel numero di eccezioni gestite che potrebbero indicare errori nella gestione delle eccezioni.
DoSync Vero o Falso. Apre anche gli handle del dispositivo in modalità SYNC (FILE_SYNCHRONOUS_IO_ALERT). Le operazioni di lettura e scrittura casuali vengono ignorate.
TestCycles Numero di cicli di test.
DriverVerifierAdditionalDrivers Driver aggiuntivi che devono avere abilitato il verifica driver
DriverVerifierExcludedFlags Segnaposto per i flag di verifica driver che possono essere esclusi manualmente per l'esecuzione del test
WDKDeviceID ID dispositivo del dispositivo in fase di test
QueryHardwareID ID hardware del dispositivo in fase di test
WDTFREMOTESYSTEM Obbligatorio SOLO se DUT o uno dei relativi dispositivi figlio è una scheda di interfaccia di rete cablata che non ha un indirizzo gateway IPv6. Se è necessario, specificare un indirizzo IPv6 che la scheda di interfaccia di rete di test può eseguire il ping per testare l'I/O di rete. Ad esempio: fe80::78b6:810:9c12:46cd
DriverVerifierCustomizeConfiguration Specifica che questo test potrebbe voler aggiornare automaticamente le impostazioni di Driver Verifier
MinDeviceType Specifica il valore minimo del campo DeviceType negli IOCTLs. Il valore minimo possibile è 0. Usare -1 per il rilevamento automatico dei tipi (preferito).
MaxDeviceType Specifica il valore massimo del campo DeviceType negli IOCTLs. Il valore massimo possibile è 65535. Usare -1 per il rilevamento automatico dei tipi (preferito).
MinFunctionCode Specifica il valore minimo del campo FunctionCode negli IOCTLs. Il valore minimo possibile è 0.
MaxFunctionCode Specifica il valore massimo del campo FunctionCode negli IOCTLs. Il valore massimo possibile è 4095.