имитация nmcli --ask в прямом управлении dbus networkmanager

Я просматриваю программный продукт Java и заменяю exec() вызовы nmcli более прямым управлением NetworkManager через dbus. Я застрял на nmcli connection up (ourconnection) --ask; в частности, --ask бит.

Я понимаю, что это будет вызов ActivateConnection, как описано в документация NetworkManager, но не вижу, как эмулировать --ask. Когда вы указываете --ask, это вариант, который NetworkManager принимает и активирует, или nmcli запрашивает пароль перед его передачей NetworkManager?

Этот вопрос конкретно о --ask; В целом я понимаю, как взаимодействовать с NetworkManager через dbus, используя классы Java, полученные из вызовов API отражения, и делал это для получения списков SSID, устройств и подключений, а также настройки обработчиков для таких сигналов, как Добавлена ​​точка доступа; но я не понимаю, как программно сообщить NetworkManager, чтобы он запрашивал пароль у пользователя-человека.


person Michael restore Monica Cellio    schedule 18.11.2019    source источник
comment
Попробуйте использовать Bustle (gitlab.freedesktop.org/bustle/bustle), чтобы захватить D-Bus трафика при использовании nmcli --ask и без --ask и посмотрите, в чем разница.   -  person Philip Withnall    schedule 19.11.2019


Ответы (1)


По другим причинам мне пришлось копаться в исходном коде nmcli и я обнаружил, что запрашивается пароль на nmcli и перешел через dbus.

person Michael restore Monica Cellio    schedule 22.11.2019