Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions | Variables
compat.c File Reference
#include <linux/stddef.h>
#include <linux/kernel.h>
#include <linux/linkage.h>
#include <linux/compat.h>
#include <linux/errno.h>
#include <linux/time.h>
#include <linux/fs.h>
#include <linux/fcntl.h>
#include <linux/namei.h>
#include <linux/file.h>
#include <linux/fdtable.h>
#include <linux/vfs.h>
#include <linux/ioctl.h>
#include <linux/init.h>
#include <linux/ncp_mount.h>
#include <linux/nfs4_mount.h>
#include <linux/syscalls.h>
#include <linux/ctype.h>
#include <linux/dirent.h>
#include <linux/fsnotify.h>
#include <linux/highuid.h>
#include <linux/personality.h>
#include <linux/rwsem.h>
#include <linux/tsacct_kern.h>
#include <linux/security.h>
#include <linux/highmem.h>
#include <linux/signal.h>
#include <linux/poll.h>
#include <linux/mm.h>
#include <linux/eventpoll.h>
#include <linux/fs_struct.h>
#include <linux/slab.h>
#include <linux/pagemap.h>
#include <asm/uaccess.h>
#include <asm/mmu_context.h>
#include <asm/ioctls.h>
#include "internal.h"
#include "read_write.h"

Go to the source code of this file.

Data Structures

struct  compat_ncp_mount_data
 
struct  compat_ncp_mount_data_v4
 
struct  compat_nfs_string
 
struct  compat_nfs4_mount_data_v1
 
struct  compat_old_linux_dirent
 
struct  compat_readdir_callback
 
struct  compat_linux_dirent
 
struct  compat_getdents_callback
 
struct  compat_getdents_callback64
 
struct  compat_sel_arg_struct
 

Macros

#define vrfy_dir(type)   ((type) == READ ? VERIFY_WRITE : VERIFY_READ)
 
#define MAX_AIO_SUBMITS   (PAGE_SIZE/sizeof(struct iocb *))
 
#define NCPFS_NAME   "ncpfs"
 
#define NFS4_NAME   "nfs4"
 
#define __COMPAT_NFDBITS   (8 * sizeof(compat_ulong_t))
 

Functions

int compat_printk (const char *fmt,...)
 
asmlinkage long compat_sys_utime (const char __user *filename, struct compat_utimbuf __user *t)
 
asmlinkage long compat_sys_utimensat (unsigned int dfd, const char __user *filename, struct compat_timespec __user *t, int flags)
 
asmlinkage long compat_sys_futimesat (unsigned int dfd, const char __user *filename, struct compat_timeval __user *t)
 
asmlinkage long compat_sys_utimes (const char __user *filename, struct compat_timeval __user *t)
 
asmlinkage long compat_sys_newstat (const char __user *filename, struct compat_stat __user *statbuf)
 
asmlinkage long compat_sys_newlstat (const char __user *filename, struct compat_stat __user *statbuf)
 
asmlinkage long compat_sys_newfstatat (unsigned int dfd, const char __user *filename, struct compat_stat __user *statbuf, int flag)
 
asmlinkage long compat_sys_newfstat (unsigned int fd, struct compat_stat __user *statbuf)
 
asmlinkage long compat_sys_statfs (const char __user *pathname, struct compat_statfs __user *buf)
 
asmlinkage long compat_sys_fstatfs (unsigned int fd, struct compat_statfs __user *buf)
 
asmlinkage long compat_sys_statfs64 (const char __user *pathname, compat_size_t sz, struct compat_statfs64 __user *buf)
 
asmlinkage long compat_sys_fstatfs64 (unsigned int fd, compat_size_t sz, struct compat_statfs64 __user *buf)
 
asmlinkage long compat_sys_ustat (unsigned dev, struct compat_ustat __user *u)
 
asmlinkage long compat_sys_fcntl64 (unsigned int fd, unsigned int cmd, unsigned long arg)
 
asmlinkage long compat_sys_fcntl (unsigned int fd, unsigned int cmd, unsigned long arg)
 
asmlinkage long compat_sys_io_setup (unsigned nr_reqs, u32 __user *ctx32p)
 
asmlinkage long compat_sys_io_getevents (aio_context_t ctx_id, unsigned long min_nr, unsigned long nr, struct io_event __user *events, struct compat_timespec __user *timeout)
 
ssize_t compat_rw_copy_check_uvector (int type, const struct compat_iovec __user *uvector, unsigned long nr_segs, unsigned long fast_segs, struct iovec *fast_pointer, struct iovec **ret_pointer)
 
asmlinkage long compat_sys_io_submit (aio_context_t ctx_id, int nr, u32 __user *iocb)
 
asmlinkage long compat_sys_mount (const char __user *dev_name, const char __user *dir_name, const char __user *type, unsigned long flags, const void __user *data)
 
asmlinkage long compat_sys_old_readdir (unsigned int fd, struct compat_old_linux_dirent __user *dirent, unsigned int count)
 
asmlinkage long compat_sys_getdents (unsigned int fd, struct compat_linux_dirent __user *dirent, unsigned int count)
 
asmlinkage long compat_sys_getdents64 (unsigned int fd, struct linux_dirent64 __user *dirent, unsigned int count)
 
asmlinkage ssize_t compat_sys_readv (unsigned long fd, const struct compat_iovec __user *vec, unsigned long vlen)
 
asmlinkage ssize_t compat_sys_preadv64 (unsigned long fd, const struct compat_iovec __user *vec, unsigned long vlen, loff_t pos)
 
asmlinkage ssize_t compat_sys_preadv (unsigned long fd, const struct compat_iovec __user *vec, unsigned long vlen, u32 pos_low, u32 pos_high)
 
asmlinkage ssize_t compat_sys_writev (unsigned long fd, const struct compat_iovec __user *vec, unsigned long vlen)
 
asmlinkage ssize_t compat_sys_pwritev64 (unsigned long fd, const struct compat_iovec __user *vec, unsigned long vlen, loff_t pos)
 
asmlinkage ssize_t compat_sys_pwritev (unsigned long fd, const struct compat_iovec __user *vec, unsigned long vlen, u32 pos_low, u32 pos_high)
 
asmlinkage long compat_sys_vmsplice (int fd, const struct compat_iovec __user *iov32, unsigned int nr_segs, unsigned int flags)
 
asmlinkage long compat_sys_open (const char __user *filename, int flags, umode_t mode)
 
asmlinkage long compat_sys_openat (unsigned int dfd, const char __user *filename, int flags, umode_t mode)
 
int compat_core_sys_select (int n, compat_ulong_t __user *inp, compat_ulong_t __user *outp, compat_ulong_t __user *exp, struct timespec *end_time)
 
asmlinkage long compat_sys_select (int n, compat_ulong_t __user *inp, compat_ulong_t __user *outp, compat_ulong_t __user *exp, struct compat_timeval __user *tvp)
 
asmlinkage long compat_sys_old_select (struct compat_sel_arg_struct __user *arg)
 
asmlinkage long compat_sys_pselect6 (int n, compat_ulong_t __user *inp, compat_ulong_t __user *outp, compat_ulong_t __user *exp, struct compat_timespec __user *tsp, void __user *sig)
 
asmlinkage long compat_sys_ppoll (struct pollfd __user *ufds, unsigned int nfds, struct compat_timespec __user *tsp, const compat_sigset_t __user *sigmask, compat_size_t sigsetsize)
 

Variables

int compat_log = 1
 

Macro Definition Documentation

#define __COMPAT_NFDBITS   (8 * sizeof(compat_ulong_t))

Definition at line 1297 of file compat.c.

#define MAX_AIO_SUBMITS   (PAGE_SIZE/sizeof(struct iocb *))

Definition at line 616 of file compat.c.

#define NCPFS_NAME   "ncpfs"

Definition at line 768 of file compat.c.

#define NFS4_NAME   "nfs4"

Definition at line 769 of file compat.c.

#define vrfy_dir (   type)    ((type) == READ ? VERIFY_WRITE : VERIFY_READ)

Definition at line 530 of file compat.c.

Function Documentation

int compat_core_sys_select ( int  n,
compat_ulong_t __user inp,
compat_ulong_t __user outp,
compat_ulong_t __user exp,
struct timespec end_time 
)

Definition at line 1427 of file compat.c.

int compat_printk ( const char fmt,
  ... 
)

Definition at line 59 of file compat.c.

ssize_t compat_rw_copy_check_uvector ( int  type,
const struct compat_iovec __user uvector,
unsigned long  nr_segs,
unsigned long  fast_segs,
struct iovec fast_pointer,
struct iovec **  ret_pointer 
)

Definition at line 532 of file compat.c.

asmlinkage long compat_sys_fcntl ( unsigned int  fd,
unsigned int  cmd,
unsigned long  arg 
)

Definition at line 473 of file compat.c.

asmlinkage long compat_sys_fcntl64 ( unsigned int  fd,
unsigned int  cmd,
unsigned long  arg 
)

Definition at line 404 of file compat.c.

asmlinkage long compat_sys_fstatfs ( unsigned int  fd,
struct compat_statfs __user buf 
)

Definition at line 261 of file compat.c.

asmlinkage long compat_sys_fstatfs64 ( unsigned int  fd,
compat_size_t  sz,
struct compat_statfs64 __user buf 
)

Definition at line 317 of file compat.c.

asmlinkage long compat_sys_futimesat ( unsigned int  dfd,
const char __user filename,
struct compat_timeval __user t 
)

Definition at line 107 of file compat.c.

asmlinkage long compat_sys_getdents ( unsigned int  fd,
struct compat_linux_dirent __user dirent,
unsigned int  count 
)

Definition at line 947 of file compat.c.

asmlinkage long compat_sys_getdents64 ( unsigned int  fd,
struct linux_dirent64 __user dirent,
unsigned int  count 
)

Definition at line 1032 of file compat.c.

asmlinkage long compat_sys_io_getevents ( aio_context_t  ctx_id,
unsigned long  min_nr,
unsigned long  nr,
struct io_event __user events,
struct compat_timespec __user timeout 
)

Definition at line 502 of file compat.c.

asmlinkage long compat_sys_io_setup ( unsigned  nr_reqs,
u32 __user ctx32p 
)

Definition at line 482 of file compat.c.

asmlinkage long compat_sys_io_submit ( aio_context_t  ctx_id,
int  nr,
u32 __user iocb 
)

Definition at line 619 of file compat.c.

asmlinkage long compat_sys_mount ( const char __user dev_name,
const char __user dir_name,
const char __user type,
unsigned long  flags,
const void __user data 
)

Definition at line 771 of file compat.c.

asmlinkage long compat_sys_newfstat ( unsigned int  fd,
struct compat_stat __user statbuf 
)

Definition at line 203 of file compat.c.

asmlinkage long compat_sys_newfstatat ( unsigned int  dfd,
const char __user filename,
struct compat_stat __user statbuf,
int  flag 
)

Definition at line 189 of file compat.c.

asmlinkage long compat_sys_newlstat ( const char __user filename,
struct compat_stat __user statbuf 
)

Definition at line 176 of file compat.c.

asmlinkage long compat_sys_newstat ( const char __user filename,
struct compat_stat __user statbuf 
)

Definition at line 164 of file compat.c.

asmlinkage long compat_sys_old_readdir ( unsigned int  fd,
struct compat_old_linux_dirent __user dirent,
unsigned int  count 
)

Definition at line 869 of file compat.c.

asmlinkage long compat_sys_old_select ( struct compat_sel_arg_struct __user arg)

Definition at line 1531 of file compat.c.

asmlinkage long compat_sys_open ( const char __user filename,
int  flags,
umode_t  mode 
)

Definition at line 1282 of file compat.c.

asmlinkage long compat_sys_openat ( unsigned int  dfd,
const char __user filename,
int  flags,
umode_t  mode 
)

Definition at line 1292 of file compat.c.

asmlinkage long compat_sys_ppoll ( struct pollfd __user ufds,
unsigned int  nfds,
struct compat_timespec __user tsp,
const compat_sigset_t __user sigmask,
compat_size_t  sigsetsize 
)

Definition at line 1611 of file compat.c.

asmlinkage ssize_t compat_sys_preadv ( unsigned long  fd,
const struct compat_iovec __user vec,
unsigned long  vlen,
u32  pos_low,
u32  pos_high 
)

Definition at line 1184 of file compat.c.

asmlinkage ssize_t compat_sys_preadv64 ( unsigned long  fd,
const struct compat_iovec __user vec,
unsigned long  vlen,
loff_t  pos 
)

Definition at line 1165 of file compat.c.

asmlinkage long compat_sys_pselect6 ( int  n,
compat_ulong_t __user inp,
compat_ulong_t __user outp,
compat_ulong_t __user exp,
struct compat_timespec __user tsp,
void __user sig 
)

Definition at line 1592 of file compat.c.

asmlinkage ssize_t compat_sys_pwritev ( unsigned long  fd,
const struct compat_iovec __user vec,
unsigned long  vlen,
u32  pos_low,
u32  pos_high 
)

Definition at line 1250 of file compat.c.

asmlinkage ssize_t compat_sys_pwritev64 ( unsigned long  fd,
const struct compat_iovec __user vec,
unsigned long  vlen,
loff_t  pos 
)

Definition at line 1231 of file compat.c.

asmlinkage ssize_t compat_sys_readv ( unsigned long  fd,
const struct compat_iovec __user vec,
unsigned long  vlen 
)

Definition at line 1148 of file compat.c.

asmlinkage long compat_sys_select ( int  n,
compat_ulong_t __user inp,
compat_ulong_t __user outp,
compat_ulong_t __user exp,
struct compat_timeval __user tvp 
)

Definition at line 1498 of file compat.c.

asmlinkage long compat_sys_statfs ( const char __user pathname,
struct compat_statfs __user buf 
)

Definition at line 252 of file compat.c.

asmlinkage long compat_sys_statfs64 ( const char __user pathname,
compat_size_t  sz,
struct compat_statfs64 __user buf 
)

Definition at line 303 of file compat.c.

asmlinkage long compat_sys_ustat ( unsigned  dev,
struct compat_ustat __user u 
)

Definition at line 336 of file compat.c.

asmlinkage long compat_sys_utime ( const char __user filename,
struct compat_utimbuf __user t 
)

Definition at line 77 of file compat.c.

asmlinkage long compat_sys_utimensat ( unsigned int  dfd,
const char __user filename,
struct compat_timespec __user t,
int  flags 
)

Definition at line 92 of file compat.c.

asmlinkage long compat_sys_utimes ( const char __user filename,
struct compat_timeval __user t 
)

Definition at line 126 of file compat.c.

asmlinkage long compat_sys_vmsplice ( int  fd,
const struct compat_iovec __user iov32,
unsigned int  nr_segs,
unsigned int  flags 
)

Definition at line 1258 of file compat.c.

asmlinkage ssize_t compat_sys_writev ( unsigned long  fd,
const struct compat_iovec __user vec,
unsigned long  vlen 
)

Definition at line 1214 of file compat.c.

Variable Documentation

int compat_log = 1

Definition at line 57 of file compat.c.