summaryrefslogtreecommitdiffstats
path: root/gatekeeper/module.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'gatekeeper/module.cpp')
-rw-r--r--gatekeeper/module.cpp127
1 files changed, 0 insertions, 127 deletions
diff --git a/gatekeeper/module.cpp b/gatekeeper/module.cpp
deleted file mode 100644
index a3d678c..0000000
--- a/gatekeeper/module.cpp
+++ /dev/null
@@ -1,127 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <hardware/hardware.h>
-#include <hardware/gatekeeper.h>
-#define LOG_TAG "I9305Gatekeeper"
-#include <cutils/log.h>
-
-#include <string.h>
-#include <errno.h>
-#include <stdlib.h>
-
-#include "SoftGateKeeper.h"
-#include "SoftGateKeeperDevice.h"
-
-using i9305::SoftGateKeeperDevice;
-
-struct i9305_gatekeeper_device {
- gatekeeper_device device;
- SoftGateKeeperDevice *s_gatekeeper;
-};
-
-static i9305_gatekeeper_device s_device;
-
-static int enroll(const struct gatekeeper_device *dev __unused, uint32_t uid,
- const uint8_t *current_password_handle, uint32_t current_password_handle_length,
- const uint8_t *current_password, uint32_t current_password_length,
- const uint8_t *desired_password, uint32_t desired_password_length,
- uint8_t **enrolled_password_handle, uint32_t *enrolled_password_handle_length) {
-
- SoftGateKeeperDevice *s_gatekeeper = ((i9305_gatekeeper_device*)(dev))->s_gatekeeper;
- ALOGE("called %s with gate keeper %p device %p\n", __func__, s_gatekeeper, dev);
- if (s_gatekeeper == nullptr) {
- abort();
- return -EINVAL;
- }
-
- return s_gatekeeper->enroll(uid,
- current_password_handle, current_password_handle_length,
- current_password, current_password_length,
- desired_password, desired_password_length,
- enrolled_password_handle, enrolled_password_handle_length);
-}
-
-static int verify(const struct gatekeeper_device *dev __unused, uint32_t uid, uint64_t challenge,
- const uint8_t *enrolled_password_handle, uint32_t enrolled_password_handle_length,
- const uint8_t *provided_password, uint32_t provided_password_length,
- uint8_t **auth_token, uint32_t *auth_token_length, bool *request_reenroll) {
- SoftGateKeeperDevice *s_gatekeeper = ((i9305_gatekeeper_device*)(dev))->s_gatekeeper;
- ALOGE("called %s with gate keeper %p device %p\n", __func__, s_gatekeeper, dev);
- if (s_gatekeeper == nullptr) return -EINVAL;
- return s_gatekeeper->verify(uid, challenge,
- enrolled_password_handle, enrolled_password_handle_length,
- provided_password, provided_password_length,
- auth_token, auth_token_length, request_reenroll);
-}
-
-static int close_device(hw_device_t* dev __unused) {
- SoftGateKeeperDevice *s_gatekeeper = ((i9305_gatekeeper_device*)(dev))->s_gatekeeper;
- if (s_gatekeeper == nullptr) return 0;
- delete s_gatekeeper;
- s_gatekeeper = nullptr;
- ALOGE("called %s with gate keeper %p device %p\n", __func__, s_gatekeeper, dev);
- return 0;
-}
-
-static int i9305_gatekeeper_open(const hw_module_t *module, const char *name,
- hw_device_t **device) {
-
- if (strcmp(name, HARDWARE_GATEKEEPER) != 0) {
- abort();
- return -EINVAL;
- }
-
- memset(&s_device, 0, sizeof(s_device));
-
- SoftGateKeeperDevice *s_gatekeeper = new SoftGateKeeperDevice();
- if (s_gatekeeper == nullptr) return -ENOMEM;
-
- s_device.s_gatekeeper = s_gatekeeper;
-
- s_device.device.common.tag = HARDWARE_DEVICE_TAG;
- s_device.device.common.version = 1;
- s_device.device.common.module = const_cast<hw_module_t *>(module);
- s_device.device.common.close = close_device;
-
- s_device.device.enroll = enroll;
- s_device.device.verify = verify;
- s_device.device.delete_user = nullptr;
- s_device.device.delete_all_users = nullptr;
-
- *device = &s_device.device.common;
- ALOGE("called %s with gate keeper %p device %p\n", __func__, s_gatekeeper, *device);
-
- return 0;
-}
-
-static struct hw_module_methods_t gatekeeper_module_methods = {
- .open = i9305_gatekeeper_open,
-};
-
-struct gatekeeper_module HAL_MODULE_INFO_SYM __attribute__((visibility("default"))) = {
- .common = {
- .tag = HARDWARE_MODULE_TAG,
- .module_api_version = GATEKEEPER_MODULE_API_VERSION_0_1,
- .hal_api_version = HARDWARE_HAL_API_VERSION,
- .id = GATEKEEPER_HARDWARE_MODULE_ID,
- .name = "I9305 GateKeeper HAL",
- .author = "The Android Open Source Project",
- .methods = &gatekeeper_module_methods,
- .dso = 0,
- .reserved = {}
- },
-};