diff options
author | Srikant Patnaik | 2015-01-11 12:28:04 +0530 |
---|---|---|
committer | Srikant Patnaik | 2015-01-11 12:28:04 +0530 |
commit | 871480933a1c28f8a9fed4c4d34d06c439a7a422 (patch) | |
tree | 8718f573808810c2a1e8cb8fb6ac469093ca2784 /ANDROID_3.4.5/security/integrity/evm/evm_secfs.c | |
parent | 9d40ac5867b9aefe0722bc1f110b965ff294d30d (diff) | |
download | FOSSEE-netbook-kernel-source-871480933a1c28f8a9fed4c4d34d06c439a7a422.tar.gz FOSSEE-netbook-kernel-source-871480933a1c28f8a9fed4c4d34d06c439a7a422.tar.bz2 FOSSEE-netbook-kernel-source-871480933a1c28f8a9fed4c4d34d06c439a7a422.zip |
Moved, renamed, and deleted files
The original directory structure was scattered and unorganized.
Changes are basically to make it look like kernel structure.
Diffstat (limited to 'ANDROID_3.4.5/security/integrity/evm/evm_secfs.c')
-rw-r--r-- | ANDROID_3.4.5/security/integrity/evm/evm_secfs.c | 108 |
1 files changed, 0 insertions, 108 deletions
diff --git a/ANDROID_3.4.5/security/integrity/evm/evm_secfs.c b/ANDROID_3.4.5/security/integrity/evm/evm_secfs.c deleted file mode 100644 index ac762995..00000000 --- a/ANDROID_3.4.5/security/integrity/evm/evm_secfs.c +++ /dev/null @@ -1,108 +0,0 @@ -/* - * Copyright (C) 2010 IBM Corporation - * - * Authors: - * Mimi Zohar <zohar@us.ibm.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 2 of the License. - * - * File: evm_secfs.c - * - Used to signal when key is on keyring - * - Get the key and enable EVM - */ - -#include <linux/uaccess.h> -#include <linux/module.h> -#include "evm.h" - -static struct dentry *evm_init_tpm; - -/** - * evm_read_key - read() for <securityfs>/evm - * - * @filp: file pointer, not actually used - * @buf: where to put the result - * @count: maximum to send along - * @ppos: where to start - * - * Returns number of bytes read or error code, as appropriate - */ -static ssize_t evm_read_key(struct file *filp, char __user *buf, - size_t count, loff_t *ppos) -{ - char temp[80]; - ssize_t rc; - - if (*ppos != 0) - return 0; - - sprintf(temp, "%d", evm_initialized); - rc = simple_read_from_buffer(buf, count, ppos, temp, strlen(temp)); - - return rc; -} - -/** - * evm_write_key - write() for <securityfs>/evm - * @file: file pointer, not actually used - * @buf: where to get the data from - * @count: bytes sent - * @ppos: where to start - * - * Used to signal that key is on the kernel key ring. - * - get the integrity hmac key from the kernel key ring - * - create list of hmac protected extended attributes - * Returns number of bytes written or error code, as appropriate - */ -static ssize_t evm_write_key(struct file *file, const char __user *buf, - size_t count, loff_t *ppos) -{ - char temp[80]; - int i, error; - - if (!capable(CAP_SYS_ADMIN) || evm_initialized) - return -EPERM; - - if (count >= sizeof(temp) || count == 0) - return -EINVAL; - - if (copy_from_user(temp, buf, count) != 0) - return -EFAULT; - - temp[count] = '\0'; - - if ((sscanf(temp, "%d", &i) != 1) || (i != 1)) - return -EINVAL; - - error = evm_init_key(); - if (!error) { - evm_initialized = 1; - pr_info("EVM: initialized\n"); - } else - pr_err("EVM: initialization failed\n"); - return count; -} - -static const struct file_operations evm_key_ops = { - .read = evm_read_key, - .write = evm_write_key, -}; - -int __init evm_init_secfs(void) -{ - int error = 0; - - evm_init_tpm = securityfs_create_file("evm", S_IRUSR | S_IRGRP, - NULL, NULL, &evm_key_ops); - if (!evm_init_tpm || IS_ERR(evm_init_tpm)) - error = -EFAULT; - return error; -} - -void __exit evm_cleanup_secfs(void) -{ - if (evm_init_tpm) - securityfs_remove(evm_init_tpm); -} |