16ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh/****************************************************************************
26ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh ****************************************************************************
36ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh ***
46ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh ***   This header was automatically generated from a Linux kernel header
56ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh ***   of the same name, to make information necessary for userspace to
66ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh ***   call into the kernel available to libc.  It contains only constants,
76ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh ***   structures, and macros generated from the original header, and thus,
86ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh ***   contains no copyrightable information.
96ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh ***
106ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh ****************************************************************************
116ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh ****************************************************************************/
126ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#ifndef _LINUX_LOOP_H
136ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define _LINUX_LOOP_H
146ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
156ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define LO_NAME_SIZE 64
166ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define LO_KEY_SIZE 32
176ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
186ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsiehenum {
196ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh LO_FLAGS_READ_ONLY = 1,
206ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh LO_FLAGS_USE_AOPS = 2,
216ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh};
226ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
236ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#include <asm/posix_types.h>
246ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#include <asm/types.h>
256ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
266ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsiehstruct loop_info {
276ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh int lo_number;
286ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh __kernel_old_dev_t lo_device;
296ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh unsigned long lo_inode;
306ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh __kernel_old_dev_t lo_rdevice;
316ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh int lo_offset;
326ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh int lo_encrypt_type;
336ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh int lo_encrypt_key_size;
346ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh int lo_flags;
356ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh char lo_name[LO_NAME_SIZE];
366ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh unsigned char lo_encrypt_key[LO_KEY_SIZE];
376ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh unsigned long lo_init[2];
386ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh char reserved[4];
396ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh};
406ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
416ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsiehstruct loop_info64 {
426ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh __u64 lo_device;
436ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh __u64 lo_inode;
446ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh __u64 lo_rdevice;
456ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh __u64 lo_offset;
466ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh __u64 lo_sizelimit;
476ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh __u32 lo_number;
486ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh __u32 lo_encrypt_type;
496ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh __u32 lo_encrypt_key_size;
506ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh __u32 lo_flags;
516ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh __u8 lo_file_name[LO_NAME_SIZE];
526ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh __u8 lo_crypt_name[LO_NAME_SIZE];
536ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh __u8 lo_encrypt_key[LO_KEY_SIZE];
546ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh __u64 lo_init[2];
556ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh};
566ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
576ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define LO_CRYPT_NONE 0
586ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define LO_CRYPT_XOR 1
596ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define LO_CRYPT_DES 2
606ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define LO_CRYPT_FISH2 3
616ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define LO_CRYPT_BLOW 4
626ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define LO_CRYPT_CAST128 5
636ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define LO_CRYPT_IDEA 6
646ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define LO_CRYPT_DUMMY 9
656ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define LO_CRYPT_SKIPJACK 10
666ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define LO_CRYPT_CRYPTOAPI 18
676ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define MAX_LO_CRYPT 20
686ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
696ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define LOOP_SET_FD 0x4C00
706ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define LOOP_CLR_FD 0x4C01
716ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define LOOP_SET_STATUS 0x4C02
726ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define LOOP_GET_STATUS 0x4C03
736ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define LOOP_SET_STATUS64 0x4C04
746ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define LOOP_GET_STATUS64 0x4C05
756ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define LOOP_CHANGE_FD 0x4C06
766ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh
776ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#endif
78