if (!session || !client || !user) {
_E("Failed to get client info");
- return -1;
+ ret = -1;
+ goto cleanup;
}
ret = cynara_check(__cynara, client, session, user, PERIPHERAL_PRIVILEGE);
if (ret != CYNARA_API_ACCESS_ALLOWED) {
_E("Failed to check privilege");
- g_free(session);
- g_free(client);
- g_free(user);
- return -EACCES;
+ ret = -EACCES;
+ goto cleanup;
}
+ ret = 0;
+
+cleanup:
g_free(session);
g_free(client);
g_free(user);
- return 0;
+ return ret;
}