Další chyby při zpracování irps

Následující jsou další chyby, které ovladače někdy provádějí při zpracování IRP.

Ztracené nebo dvojitě dokončené IRPs

Tyto problémy spolu s chybějícími voláními rutin I/O manageru, jako je IoStartNextPacket, se často vyskytují v cestách pro zpracování chyb. Rychlé kontroly cest ovladačů mohou takové problémy nalézt.

Sblížení veřejných cest IOCTL a privátních cest IOCTL

Obecně platí, že ovladače by měly obsahovat samostatné výkonnostní cesty pro veřejné a soukromé IOCTLs (nebo FSCTLs). Ovladač nemůže určit, jestli požadavek IOCTL nebo FSCTL pochází z režimu jádra nebo uživatelského režimu, a to tak, že se podíváte na řídicí kód. V důsledku toho může zpracování veřejných i privátních kódů ve stejné cestě provádění (nebo provádění minimálního ověření a následné volání stejných rutin) otevřít ovladač pro porušení zabezpečení. Pokud je privátní IOCTL nebo FSCTL privilegovaný, mohou k němu získat přístup neprivilegovaní uživatelé, kteří znají kontrolní kódy. Proto pokud váš ovladač podporuje privátní požadavky IOCTL nebo FSCTL, ujistěte se, že tyto požadavky zpracovává odděleně od všech veřejných požadavků IOCTL nebo FSCTL, které musí také podporovat.