добрый день, друзья!
тут нужны специалисты по C в совокупности с небольшим знанием UEFI, и свежей головой :-) ..
помоготе мне пожалуйста понять вешь.. думаю это какая-то простая вешь, но всё равно у меня тут возник СТУПОР в её понимании.. :-(
проблема: не погу понять при каких условиях Меню Программы будет показывать пользователю команду «Reset MOK» [эта команда должна вызвать функцию mok_reset_prompt()]
или... перефразирую свой вопрос: что именно должен сделать пользователь этой Программы, чтобы Программа смогла бы начать выполнять функцию mok_reset_prompt() ?
вот исходный код: https://github.com/rhinstaller/shim/blob/0.8/MokManager.c
--------------------------------------------------
что мы уже знаем:
функция «efi_main(...)» один раз вызывает функцию «check_mok_request(...)»
в свою очередь функция «check_mok_request(...)» один раз вызывает функцию «enter_mok_menu(...)»
функция «enter_mok_menu(...)» способена вызвать *нужную**нам* функцию «mok_reset_prompt(...)» , НО при определённых условиях...
вот эти условия:
if (MokNew || MokAuth) {
if (!MokNew) {
// в этом случае -- всё будет норм!
в этом случае (зная всё это) я могу ещё раз перефразировать свой вопрос: какие действия должен сделать пользователь (пользователь(!) а не программист), чтобы переменная «MokAuth» была бы НЕнулевой и одновременно с ней переменная «MokNew» была бы нулевой?
всем заранее спасибо! :-) я в нас верю :-)
##################################################
разгадка квеста:
1. исходный код «shim/MokManager.c» и его mok_reset_prompt() (комментарий)
2. исходный код «shim/MokManager.c» и его mok_reset_prompt() (комментарий)