mirror of
https://git.kernel.org/pub/scm/network/wireless/iwd.git
synced 2025-01-03 10:32:33 +01:00
client: Don't register agent without a need
Register agent iff no '--dontask' command-line option has been provided or there are some other command line options besides '--dontask'
This commit is contained in:
parent
411834e089
commit
19529a4d3a
@ -76,6 +76,12 @@ bool command_option_get(const char *name, const char **value_out)
|
||||
return false;
|
||||
}
|
||||
|
||||
bool command_needs_no_agent(void)
|
||||
{
|
||||
return command_option_get(COMMAND_OPTION_DONTASK, NULL) &&
|
||||
(l_queue_length(command_options) == 1);
|
||||
}
|
||||
|
||||
static enum cmd_status cmd_version(const char *entity,
|
||||
char **argv, int argc)
|
||||
{
|
||||
|
@ -58,6 +58,7 @@ struct command_family {
|
||||
};
|
||||
|
||||
bool command_option_get(const char *name, const char **value_out);
|
||||
bool command_needs_no_agent(void);
|
||||
|
||||
bool command_line_find_token(const char *token, uint8_t num_to_inspect);
|
||||
char **command_completion(const char *text, int start, int end);
|
||||
|
@ -704,6 +704,9 @@ static void get_managed_objects_callback(struct l_dbus_message *message,
|
||||
while (l_dbus_message_iter_next_entry(&objects, &path, &object))
|
||||
proxy_interface_create(path, &object);
|
||||
|
||||
if (command_needs_no_agent())
|
||||
goto no_agent;
|
||||
|
||||
if (!agent_manager_register_agent()) {
|
||||
display_error("Failed to register Agent.\n");
|
||||
|
||||
@ -715,6 +718,7 @@ static void get_managed_objects_callback(struct l_dbus_message *message,
|
||||
return;
|
||||
}
|
||||
|
||||
no_agent:
|
||||
if (!command_is_interactive_mode()) {
|
||||
command_noninteractive_trigger();
|
||||
|
||||
@ -829,7 +833,8 @@ bool dbus_proxy_exit(void)
|
||||
{
|
||||
struct interface_type_desc *desc;
|
||||
|
||||
agent_manager_unregister_agent();
|
||||
if (!command_needs_no_agent())
|
||||
agent_manager_unregister_agent();
|
||||
|
||||
for (desc = __start___interface; desc < __stop___interface; desc++) {
|
||||
if (!desc->exit)
|
||||
|
Loading…
Reference in New Issue
Block a user