blob: 1bd7fa87ad0722b0eb40182857686042b899979b [file] [log] [blame]
Eric Andersen624cc772000-09-21 02:04:51 +00001/*
2 * include/linux/loop.h
3 *
4 * Written by Theodore Ts'o, 3/29/93.
5 *
6 * Copyright 1993 by Theodore Ts'o. Redistribution of this file is
7 * permitted under the GNU Public License.
8 */
9
10#define LO_NAME_SIZE 64
11#define LO_KEY_SIZE 32
12
13struct loop_info {
14 int lo_number; /* ioctl r/o */
15 dev_t lo_device; /* ioctl r/o */
16 unsigned long lo_inode; /* ioctl r/o */
17 dev_t lo_rdevice; /* ioctl r/o */
18 int lo_offset;
19 int lo_encrypt_type;
20 int lo_encrypt_key_size; /* ioctl w/o */
21 int lo_flags; /* ioctl r/o */
22 char lo_name[LO_NAME_SIZE];
23 unsigned char lo_encrypt_key[LO_KEY_SIZE]; /* ioctl w/o */
24 unsigned long lo_init[2];
25 char reserved[4];
26};
27
28#define LO_CRYPT_NONE 0
29#define LO_CRYPT_XOR 1
30#define LO_CRYPT_DES 2
31#define LO_CRYPT_IDEA 3
32#define MAX_LO_CRYPT 4
33
34#define LOOP_SET_FD 0x4C00
35#define LOOP_CLR_FD 0x4C01
36#define LOOP_SET_STATUS 0x4C02
37#define LOOP_GET_STATUS 0x4C03