name_owner_changed((GDBusProxy *)connection,
name, old_owner, new_owner, user_data);
+
+ g_free(name);
+ g_free(old_owner);
+ g_free(new_owner);
}
bool ServerGDBus::_init()
ret = cynara_creds_gdbus_get_client(connection, sender_unique_name, CLIENT_METHOD_DEFAULT, &client);
if (ret != CYNARA_API_SUCCESS) {
_ERR("cynara_creds_gdbus_get_client() failed");
+ g_free(user);
return false;
}
client_session = cynara_session_from_pid(pid);
+ if (!client_session) {
+ _ERR("cynara_session_from_pid() failed");
+ g_free(client);
+ g_free(user);
+ return false;
+ }
+
ret = cynara_check(p_cynara, client, client_session, user, SMARTCARD_PRIVILEGE);
if ( ret == CYNARA_API_ACCESS_ALLOWED ) {
_INFO("cynara PASS");
}
+ g_free(client_session);
+ g_free(client);
+ g_free(user);
+
+ if (p_cynara) {
+ cynara_finish(p_cynara);
+ p_cynara = NULL;
+ }
+
return (ret == CYNARA_API_ACCESS_ALLOWED ) ? true : false;
}
#endif
mapSessions.erase(item);
IntegerHandle::releaseHandle(session);
+
+ delete item->second.first;
}
}
item->second.first->closeSync();
IntegerHandle::releaseHandle(item->first);
+
+ delete item->second.first;
}
mapSessions.clear();
daemonize();
#endif
- main_loop = g_main_new(TRUE);
+ main_loop = g_main_loop_new(NULL, FALSE);
id = g_bus_own_name(G_BUS_TYPE_SYSTEM,
"org.tizen.SmartcardService",
void smartcard_daemon_exit()
{
g_main_loop_quit(main_loop);
+ g_main_loop_unref(main_loop);
}