ioctl32.c
来自「linux-2.6.15.6」· C语言 代码 · 共 61 行
C
61 行
/* $Id: ioctl32.c,v 1.5 2002/10/18 00:21:43 varenet Exp $ * ioctl32.c: Conversion between 32bit and 64bit native ioctls. * * Copyright (C) 1997-2000 Jakub Jelinek (jakub@redhat.com) * Copyright (C) 1998 Eddie C. Dost (ecd@skynet.be) * * These routines maintain argument size conversion between 32bit and 64bit * ioctls. */#include <linux/syscalls.h>#define INCLUDES#include "compat_ioctl.c"#include <asm/perf.h>#include <asm/ioctls.h>#define CODE#include "compat_ioctl.c"#define HANDLE_IOCTL(cmd, handler) { cmd, (ioctl_trans_handler_t)handler, NULL },#define COMPATIBLE_IOCTL(cmd) HANDLE_IOCTL(cmd, sys_ioctl) #define IOCTL_TABLE_START struct ioctl_trans ioctl_start[] = {#define IOCTL_TABLE_END };IOCTL_TABLE_START#include <linux/compat_ioctl.h>#define DECLARES#include "compat_ioctl.c"/* And these ioctls need translation */HANDLE_IOCTL(SIOCGPPPSTATS, dev_ifsioc)HANDLE_IOCTL(SIOCGPPPCSTATS, dev_ifsioc)HANDLE_IOCTL(SIOCGPPPVER, dev_ifsioc)#if defined(CONFIG_GEN_RTC)COMPATIBLE_IOCTL(RTC_AIE_ON)COMPATIBLE_IOCTL(RTC_AIE_OFF)COMPATIBLE_IOCTL(RTC_UIE_ON)COMPATIBLE_IOCTL(RTC_UIE_OFF)COMPATIBLE_IOCTL(RTC_PIE_ON)COMPATIBLE_IOCTL(RTC_PIE_OFF)COMPATIBLE_IOCTL(RTC_WIE_ON)COMPATIBLE_IOCTL(RTC_WIE_OFF)COMPATIBLE_IOCTL(RTC_ALM_SET) /* struct rtc_time only has ints */COMPATIBLE_IOCTL(RTC_ALM_READ) /* struct rtc_time only has ints */COMPATIBLE_IOCTL(RTC_RD_TIME) /* struct rtc_time only has ints */COMPATIBLE_IOCTL(RTC_SET_TIME) /* struct rtc_time only has ints */HANDLE_IOCTL(RTC_IRQP_READ, w_long)COMPATIBLE_IOCTL(RTC_IRQP_SET)HANDLE_IOCTL(RTC_EPOCH_READ, w_long)COMPATIBLE_IOCTL(RTC_EPOCH_SET)#endifIOCTL_TABLE_ENDint ioctl_table_size = ARRAY_SIZE(ioctl_start);
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?