Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Role Types Correctly Used Query (#94)
* Initial work at IRQL-checking * Significant extra IRQL work. * In-progress work * More puttering around with IRQL * Update to CodeQL 2.14.4 Update cpp-all to 0.9.2, cpp-queries to 0.7.4 * Commit more IRQL code. Needs cleanup. * Some cleanup and minor fixes to entry IRQL evaluation. * Replace old Irql high/low checks with new version and update library. Still needs cleanup. * Irql.qll cleanup * Get rid of old prototype version of IrqlTooLow * Update README.md * Clean up file names * Clean up queries. * Update test script for IRQL queries. * Update build-codeql.yaml Signed-off-by: NateD-MSFT <[email protected]> * Update ported_driver_ca_checks.qls * Add IrqlSetTooHigh/IrqlSetTooLow queries. * Bugfix for IrqlTooHigh/IrqlTooLow The changes to Irql.qll needed for IrqlSetTooHigh, etc. means we are more likely to see IRQL evaluations that return -1. Update queries to exclude those numbers. * Fix test issues for several IRQL checks. * WIP unit tests for IrqlSetTooHigh and IrqlSetTooLow queries * WIP unit tests for IrqlSetTooHigh and IrqlSetTooLow queries * WIP more tests and comments * bug fixes * WIP updates to tests * WIP update tests * remove bad tests. Fix run script to run all tests again. run script now cleans first automatically. * update tests for IrqlSetTooHigh * WIP IrqlSetTooLow tests * Fix typo in Irql.qll * irqlSetTooHigh tests remove calls to KeGetCurrentIRQL as they are not needed * update IrqlSetTooLow tests * update tests. line 90 should be a failling test but isnt * fix IrqlLowerWithFunctionCall1 to call IrqlMinDispatchLowerIrql_fail1 * Revert"fix IrqlLowerWithFunctionCall1 to call IrqlMinDispatchLowerIrql_fail1" This reverts commit fd9084b. * fix IrqlLowerWithFunctionCall1 to call IrqlMinDispatchLowerIrql_fail1 * add WDF function class and structure class * add kmdf callback functions * syntax updates * add comments * Expand WdmDrivers.qll. Add missing WDM Callback Routine types and Role Type class * WIP query to check role types * queries for implicit and explicit role types * move implicit role type query to library as a class * update wdmdrivers.qll * RoleTypeCorrectlyUsed query * WIP * update query * WIP updating wdmdrivers.qll to better define role type functions * update query message * adding KMDF support for role types * updates to role type query for kmdf and wdm * move wdm role type query to wdm folder * WIP library for NDIS * WIP NDIS role type query * WIP storport library * WIP storport query * add irql level to wdm role types * create generic RoleTypes library to include wdm, kmdf, ndis, and storport * generic role type query * add function annotation role types. Add extra role types from wdfroletypes.h * ignore c++ functions for now until codeql issue figured out * update role type query to remove double results * update role type query * update sarif results, diff, and test script * fix conflict in WdmDrivers.qll * remove irql level from role type library due to conflict * fix WdmDrivers.qll * fix wdmdrivers.qll * remove irql library from wdmdrivers.qll * remove old/unused role type queries * Update src/drivers/storport/libraries/StorportDrivers.qll Co-authored-by: NateD-MSFT <[email protected]> Signed-off-by: Jacob Ronstadt <[email protected]> * Update src/drivers/storport/libraries/StorportDrivers.qll Co-authored-by: NateD-MSFT <[email protected]> Signed-off-by: Jacob Ronstadt <[email protected]> * Update src/drivers/storport/libraries/StorportDrivers.qll Co-authored-by: NateD-MSFT <[email protected]> Signed-off-by: Jacob Ronstadt <[email protected]> * Update src/drivers/storport/libraries/StorportDrivers.qll Co-authored-by: NateD-MSFT <[email protected]> Signed-off-by: Jacob Ronstadt <[email protected]> * Update src/drivers/storport/libraries/StorportDrivers.qll Co-authored-by: NateD-MSFT <[email protected]> Signed-off-by: Jacob Ronstadt <[email protected]> * fix issue causing problems with diffs * changes for pull request --------- Signed-off-by: NateD-MSFT <[email protected]> Signed-off-by: Jacob Ronstadt <[email protected]> Co-authored-by: NateD-MSFT <[email protected]>
- Loading branch information