summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIngo Feinerer <feinerer@logic.at>2019-01-10 15:58:00 +0100
committerPetr Štetiar <ynezz@true.cz>2019-04-10 16:05:20 +0200
commitccca03f52878888c85ddfea400b3cdefd9840190 (patch)
tree3bc847e2dfa2b7c07ab5009168d085eae0344b35
parent29aaf43b097ee57f7aa1bb24341db6cc4148cbf3 (diff)
umbim: add registration set support
This implements the MBIM automatic registration mode to let the function select the best provider network. Signed-off-by: Ingo Feinerer <feinerer@logic.at> Reviewed-by: Bjørn Mork <bjorn@mork.no>
-rw-r--r--cli.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/cli.c b/cli.c
index 1dd6330..e00b6d4 100644
--- a/cli.c
+++ b/cli.c
@@ -297,7 +297,16 @@ mbim_pin_state_request(void)
static int
mbim_registration_request(void)
{
- mbim_setup_command_msg(basic_connect, MBIM_MESSAGE_COMMAND_TYPE_QUERY, MBIM_CMD_BASIC_CONNECT_REGISTER_STATE, 0);
+ if (_argc > 0) {
+ struct mbim_basic_connect_register_state_s *rs =
+ (struct mbim_basic_connect_register_state_s *) mbim_setup_command_msg(basic_connect,
+ MBIM_MESSAGE_COMMAND_TYPE_SET, MBIM_CMD_BASIC_CONNECT_REGISTER_STATE,
+ sizeof(struct mbim_basic_connect_register_state_s));
+
+ rs->registeraction = htole32(MBIM_REGISTER_ACTION_AUTOMATIC);
+ } else {
+ mbim_setup_command_msg(basic_connect, MBIM_MESSAGE_COMMAND_TYPE_QUERY, MBIM_CMD_BASIC_CONNECT_REGISTER_STATE, 0);
+ }
return mbim_send_command_msg();
}