diff options
| author | Vinit Deshpande <vinitd@google.com> | 2015-03-09 13:47:39 -0700 |
|---|---|---|
| committer | Vinit Deshpande <vinitd@google.com> | 2015-03-09 13:47:39 -0700 |
| commit | 912d96b4e283c9bc0633a065901153bf74e1f911 (patch) | |
| tree | eb2e457367cc50270de999a22b16b32f2e72cf31 /hs20 | |
| parent | e756b973944f4cd1e2f4ee92684e2c136df74c1e (diff) | |
| parent | 216983bceec7c450951e2fbcd076b5c75d432e57 (diff) | |
| download | android_external_wpa_supplicant_8-912d96b4e283c9bc0633a065901153bf74e1f911.tar.gz android_external_wpa_supplicant_8-912d96b4e283c9bc0633a065901153bf74e1f911.tar.bz2 android_external_wpa_supplicant_8-912d96b4e283c9bc0633a065901153bf74e1f911.zip | |
am "Cumulative patch from commit 2c0efd9e49b15da163cee659409eee85390620c3"
merged from partner/m-wireless-wifi-dev
216983b Cumulative patch from commit 2c0efd9e49b15da163cee659409eee85390620c3
Diffstat (limited to 'hs20')
| -rw-r--r-- | hs20/server/spp_server.c | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/hs20/server/spp_server.c b/hs20/server/spp_server.c index 4d77d0e8..8a2abf1f 100644 --- a/hs20/server/spp_server.c +++ b/hs20/server/spp_server.c @@ -103,6 +103,28 @@ static void db_update_session_password(struct hs20_svc *ctx, const char *user, } +static void db_update_session_machine_managed(struct hs20_svc *ctx, + const char *user, + const char *realm, + const char *sessionid, + const int pw_mm) +{ + char *sql; + + sql = sqlite3_mprintf("UPDATE sessions SET machine_managed=%Q WHERE id=%Q AND user=%Q AND realm=%Q", + pw_mm ? "1" : "0", sessionid, user, realm); + if (sql == NULL) + return; + debug_print(ctx, 1, "DB: %s", sql); + if (sqlite3_exec(ctx->db, sql, NULL, NULL, NULL) != SQLITE_OK) { + debug_print(ctx, 1, + "Failed to update session machine_managed: %s", + sqlite3_errmsg(ctx->db)); + } + sqlite3_free(sql); +} + + static void db_add_session_pps(struct hs20_svc *ctx, const char *user, const char *realm, const char *sessionid, xml_node_t *node) @@ -1378,6 +1400,11 @@ static xml_node_t * hs20_user_input_registration(struct hs20_svc *ctx, debug_print(ctx, 1, "Request DB subscription registration on success " "notification"); + if (machine_managed) { + db_update_session_password(ctx, user, realm, session_id, pw); + db_update_session_machine_managed(ctx, user, realm, session_id, + machine_managed); + } db_add_session_pps(ctx, user, realm, session_id, pps); hs20_eventlog_node(ctx, user, realm, session_id, |
