1951a39d68df598db08dfced8b4707755864a0492Ying Wang/**************************************************************************** 2951a39d68df598db08dfced8b4707755864a0492Ying Wang **************************************************************************** 3951a39d68df598db08dfced8b4707755864a0492Ying Wang *** 4951a39d68df598db08dfced8b4707755864a0492Ying Wang *** This header was automatically generated from a Linux kernel header 5951a39d68df598db08dfced8b4707755864a0492Ying Wang *** of the same name, to make information necessary for userspace to 6951a39d68df598db08dfced8b4707755864a0492Ying Wang *** call into the kernel available to libc. It contains only constants, 7951a39d68df598db08dfced8b4707755864a0492Ying Wang *** structures, and macros generated from the original header, and thus, 8951a39d68df598db08dfced8b4707755864a0492Ying Wang *** contains no copyrightable information. 9951a39d68df598db08dfced8b4707755864a0492Ying Wang *** 10951a39d68df598db08dfced8b4707755864a0492Ying Wang **************************************************************************** 11951a39d68df598db08dfced8b4707755864a0492Ying Wang ****************************************************************************/ 12951a39d68df598db08dfced8b4707755864a0492Ying Wang#ifndef _LINUX_QUOTA_ 13951a39d68df598db08dfced8b4707755864a0492Ying Wang#define _LINUX_QUOTA_ 14951a39d68df598db08dfced8b4707755864a0492Ying Wang 15951a39d68df598db08dfced8b4707755864a0492Ying Wang#include <linux/errno.h> 16951a39d68df598db08dfced8b4707755864a0492Ying Wang#include <linux/types.h> 17951a39d68df598db08dfced8b4707755864a0492Ying Wang 18951a39d68df598db08dfced8b4707755864a0492Ying Wang#define __DQUOT_VERSION__ "dquot_6.5.1" 19951a39d68df598db08dfced8b4707755864a0492Ying Wang#define __DQUOT_NUM_VERSION__ 6*10000+5*100+1 20951a39d68df598db08dfced8b4707755864a0492Ying Wang 21951a39d68df598db08dfced8b4707755864a0492Ying Wangtypedef __kernel_uid32_t qid_t; 22951a39d68df598db08dfced8b4707755864a0492Ying Wangtypedef __u64 qsize_t; 23951a39d68df598db08dfced8b4707755864a0492Ying Wang 24951a39d68df598db08dfced8b4707755864a0492Ying Wang#define QUOTABLOCK_BITS 10 25951a39d68df598db08dfced8b4707755864a0492Ying Wang#define QUOTABLOCK_SIZE (1 << QUOTABLOCK_BITS) 26951a39d68df598db08dfced8b4707755864a0492Ying Wang 27951a39d68df598db08dfced8b4707755864a0492Ying Wang#define qb2kb(x) ((x) << (QUOTABLOCK_BITS-10)) 28951a39d68df598db08dfced8b4707755864a0492Ying Wang#define kb2qb(x) ((x) >> (QUOTABLOCK_BITS-10)) 29951a39d68df598db08dfced8b4707755864a0492Ying Wang#define toqb(x) (((x) + QUOTABLOCK_SIZE - 1) >> QUOTABLOCK_BITS) 30951a39d68df598db08dfced8b4707755864a0492Ying Wang 31951a39d68df598db08dfced8b4707755864a0492Ying Wang#define MAXQUOTAS 2 32951a39d68df598db08dfced8b4707755864a0492Ying Wang#define USRQUOTA 0 33951a39d68df598db08dfced8b4707755864a0492Ying Wang#define GRPQUOTA 1 34951a39d68df598db08dfced8b4707755864a0492Ying Wang 35951a39d68df598db08dfced8b4707755864a0492Ying Wang#define INITQFNAMES { "user", "group", "undefined", }; 36951a39d68df598db08dfced8b4707755864a0492Ying Wang 37951a39d68df598db08dfced8b4707755864a0492Ying Wang#define SUBCMDMASK 0x00ff 38951a39d68df598db08dfced8b4707755864a0492Ying Wang#define SUBCMDSHIFT 8 39951a39d68df598db08dfced8b4707755864a0492Ying Wang#define QCMD(cmd, type) (((cmd) << SUBCMDSHIFT) | ((type) & SUBCMDMASK)) 40951a39d68df598db08dfced8b4707755864a0492Ying Wang 41951a39d68df598db08dfced8b4707755864a0492Ying Wang#define Q_SYNC 0x800001 42951a39d68df598db08dfced8b4707755864a0492Ying Wang#define Q_QUOTAON 0x800002 43951a39d68df598db08dfced8b4707755864a0492Ying Wang#define Q_QUOTAOFF 0x800003 44951a39d68df598db08dfced8b4707755864a0492Ying Wang#define Q_GETFMT 0x800004 45951a39d68df598db08dfced8b4707755864a0492Ying Wang#define Q_GETINFO 0x800005 46951a39d68df598db08dfced8b4707755864a0492Ying Wang#define Q_SETINFO 0x800006 47951a39d68df598db08dfced8b4707755864a0492Ying Wang#define Q_GETQUOTA 0x800007 48951a39d68df598db08dfced8b4707755864a0492Ying Wang#define Q_SETQUOTA 0x800008 49951a39d68df598db08dfced8b4707755864a0492Ying Wang 50951a39d68df598db08dfced8b4707755864a0492Ying Wang#define QIF_BLIMITS 1 51951a39d68df598db08dfced8b4707755864a0492Ying Wang#define QIF_SPACE 2 52951a39d68df598db08dfced8b4707755864a0492Ying Wang#define QIF_ILIMITS 4 53951a39d68df598db08dfced8b4707755864a0492Ying Wang#define QIF_INODES 8 54951a39d68df598db08dfced8b4707755864a0492Ying Wang#define QIF_BTIME 16 55951a39d68df598db08dfced8b4707755864a0492Ying Wang#define QIF_ITIME 32 56951a39d68df598db08dfced8b4707755864a0492Ying Wang#define QIF_LIMITS (QIF_BLIMITS | QIF_ILIMITS) 57951a39d68df598db08dfced8b4707755864a0492Ying Wang#define QIF_USAGE (QIF_SPACE | QIF_INODES) 58951a39d68df598db08dfced8b4707755864a0492Ying Wang#define QIF_TIMES (QIF_BTIME | QIF_ITIME) 59951a39d68df598db08dfced8b4707755864a0492Ying Wang#define QIF_ALL (QIF_LIMITS | QIF_USAGE | QIF_TIMES) 60951a39d68df598db08dfced8b4707755864a0492Ying Wang 61951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct if_dqblk { 62951a39d68df598db08dfced8b4707755864a0492Ying Wang __u64 dqb_bhardlimit; 63951a39d68df598db08dfced8b4707755864a0492Ying Wang __u64 dqb_bsoftlimit; 64951a39d68df598db08dfced8b4707755864a0492Ying Wang __u64 dqb_curspace; 65951a39d68df598db08dfced8b4707755864a0492Ying Wang __u64 dqb_ihardlimit; 66951a39d68df598db08dfced8b4707755864a0492Ying Wang __u64 dqb_isoftlimit; 67951a39d68df598db08dfced8b4707755864a0492Ying Wang __u64 dqb_curinodes; 68951a39d68df598db08dfced8b4707755864a0492Ying Wang __u64 dqb_btime; 69951a39d68df598db08dfced8b4707755864a0492Ying Wang __u64 dqb_itime; 70951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 dqb_valid; 71951a39d68df598db08dfced8b4707755864a0492Ying Wang}; 72951a39d68df598db08dfced8b4707755864a0492Ying Wang 73951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IIF_BGRACE 1 74951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IIF_IGRACE 2 75951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IIF_FLAGS 4 76951a39d68df598db08dfced8b4707755864a0492Ying Wang#define IIF_ALL (IIF_BGRACE | IIF_IGRACE | IIF_FLAGS) 77951a39d68df598db08dfced8b4707755864a0492Ying Wang 78951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct if_dqinfo { 79951a39d68df598db08dfced8b4707755864a0492Ying Wang __u64 dqi_bgrace; 80951a39d68df598db08dfced8b4707755864a0492Ying Wang __u64 dqi_igrace; 81951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 dqi_flags; 82951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 dqi_valid; 83951a39d68df598db08dfced8b4707755864a0492Ying Wang}; 84951a39d68df598db08dfced8b4707755864a0492Ying Wang 85951a39d68df598db08dfced8b4707755864a0492Ying Wang#include <sys/cdefs.h> 86951a39d68df598db08dfced8b4707755864a0492Ying Wang 87951a39d68df598db08dfced8b4707755864a0492Ying Wang#endif 88