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/fs/coda/pioctl.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/fs/coda/pioctl.c')
-rw-r--r-- | ANDROID_3.4.5/fs/coda/pioctl.c | 90 |
1 files changed, 0 insertions, 90 deletions
diff --git a/ANDROID_3.4.5/fs/coda/pioctl.c b/ANDROID_3.4.5/fs/coda/pioctl.c deleted file mode 100644 index ee0981f1..00000000 --- a/ANDROID_3.4.5/fs/coda/pioctl.c +++ /dev/null @@ -1,90 +0,0 @@ -/* - * Pioctl operations for Coda. - * Original version: (C) 1996 Peter Braam - * Rewritten for Linux 2.1: (C) 1997 Carnegie Mellon University - * - * Carnegie Mellon encourages users of this code to contribute improvements - * to the Coda project. Contact Peter Braam <coda@cs.cmu.edu>. - */ - -#include <linux/types.h> -#include <linux/kernel.h> -#include <linux/time.h> -#include <linux/fs.h> -#include <linux/stat.h> -#include <linux/errno.h> -#include <linux/string.h> -#include <linux/namei.h> -#include <linux/module.h> -#include <asm/uaccess.h> - -#include <linux/coda.h> -#include <linux/coda_psdev.h> - -#include "coda_linux.h" - -/* pioctl ops */ -static int coda_ioctl_permission(struct inode *inode, int mask); -static long coda_pioctl(struct file *filp, unsigned int cmd, - unsigned long user_data); - -/* exported from this file */ -const struct inode_operations coda_ioctl_inode_operations = { - .permission = coda_ioctl_permission, - .setattr = coda_setattr, -}; - -const struct file_operations coda_ioctl_operations = { - .owner = THIS_MODULE, - .unlocked_ioctl = coda_pioctl, - .llseek = noop_llseek, -}; - -/* the coda pioctl inode ops */ -static int coda_ioctl_permission(struct inode *inode, int mask) -{ - return (mask & MAY_EXEC) ? -EACCES : 0; -} - -static long coda_pioctl(struct file *filp, unsigned int cmd, - unsigned long user_data) -{ - struct path path; - int error; - struct PioctlData data; - struct inode *inode = filp->f_dentry->d_inode; - struct inode *target_inode = NULL; - struct coda_inode_info *cnp; - - /* get the Pioctl data arguments from user space */ - if (copy_from_user(&data, (void __user *)user_data, sizeof(data))) - return -EINVAL; - - /* - * Look up the pathname. Note that the pathname is in - * user memory, and namei takes care of this - */ - if (data.follow) - error = user_path(data.path, &path); - else - error = user_lpath(data.path, &path); - - if (error) - return error; - - target_inode = path.dentry->d_inode; - - /* return if it is not a Coda inode */ - if (target_inode->i_sb != inode->i_sb) { - error = -EINVAL; - goto out; - } - - /* now proceed to make the upcall */ - cnp = ITOC(target_inode); - - error = venus_pioctl(inode->i_sb, &(cnp->c_fid), cmd, &data); -out: - path_put(&path); - return error; -} |