aboutsummaryrefslogtreecommitdiffstats
path: root/hs20
diff options
context:
space:
mode:
authorVinit Deshpande <vinitd@google.com>2015-03-09 13:47:39 -0700
committerVinit Deshpande <vinitd@google.com>2015-03-09 13:47:39 -0700
commit912d96b4e283c9bc0633a065901153bf74e1f911 (patch)
treeeb2e457367cc50270de999a22b16b32f2e72cf31 /hs20
parente756b973944f4cd1e2f4ee92684e2c136df74c1e (diff)
parent216983bceec7c450951e2fbcd076b5c75d432e57 (diff)
downloadandroid_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.c27
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,