Mattiwatti / EfiGuard

Disable PatchGuard and Driver Signature Enforcement at boot time
GNU General Public License v3.0
1.69k stars 326 forks source link

Added some compile time options. #101

Closed utoni closed 9 months ago

utoni commented 10 months ago

Not sure if that may be of any use for anyone. But just in case, here is the PR.

Mattiwatti commented 9 months ago

Hi, thanks for your contribution.

A general comment re: your PR: I don't love compile time defines, and your PR adds 3. I know that EfiGuard already has CONFIGURE_DRIVER currently, but I sometimes wonder if adding this as a build time option wasn't a mistake compared to some of the alternatives such as having a configuration text file or command line arguments, or just removing the interactive loader altogether (I've never had a single report from anyone using it - but maybe people do use it and it just works well? I don't know.) Right now, CONFIGURE_DRIVER requires me to add an additional build target to each release ZIP, which makes releases more confusing for new users (what's this extra file for? Do I need it? Etc.) Any added boolean switch on top of this would require a further 2x the current number of build targets.

Other than this, there are a few ideas here, so I will address them individually:

So in conclusion, I won't be accepting this. I do want to say thanks regardless for bringing the EAC issue to my attention, especially in a way that gave me enough to go on to reproduce it and narrow down potential causes myself.

utoni commented 9 months ago

Thanks for taking the time to review this PR. The PR itself is actually not ready to merge. The idea was to help others using EfiGuard together with EAC. I've should have mark this PR as draft..

I basically did the changes which leaves PG intact by trial-and-error w/o spending time on RE. Thanks for sharing your knowledge. It might come handy.

As I still need to be able to load drivers while fully disabling PG is only a nice2have for me.

For all I can say my current driver loading workflow is the following:

I played hours and by now w/o encountering any BugCheck.

Cheers!