OpenCores
URL https://opencores.org/ocsvn/or1k_old/or1k_old/trunk

Subversion Repositories or1k_old

[/] [or1k_old/] [trunk/] [rc203soc/] [sw/] [uClinux/] [include/] [linux/] [loop.h] - Diff between revs 1765 and 1782

Only display areas with differences | Details | Blame | View Log

Rev 1765 Rev 1782
#ifndef _LINUX_LOOP_H
#ifndef _LINUX_LOOP_H
#define _LINUX_LOOP_H
#define _LINUX_LOOP_H
 
 
/*
/*
 * include/linux/loop.h
 * include/linux/loop.h
 *
 *
 * Written by Theodore Ts'o, 3/29/93.
 * Written by Theodore Ts'o, 3/29/93.
 *
 *
 * Copyright 1993 by Theodore Ts'o.  Redistribution of this file is
 * Copyright 1993 by Theodore Ts'o.  Redistribution of this file is
 * permitted under the GNU Public License.
 * permitted under the GNU Public License.
 */
 */
 
 
#define LO_NAME_SIZE    64
#define LO_NAME_SIZE    64
#define LO_KEY_SIZE     32
#define LO_KEY_SIZE     32
 
 
#ifdef __KERNEL__
#ifdef __KERNEL__
 
 
struct loop_device {
struct loop_device {
        int             lo_number;
        int             lo_number;
        struct inode    *lo_inode;
        struct inode    *lo_inode;
        int             lo_refcnt;
        int             lo_refcnt;
        kdev_t          lo_device;
        kdev_t          lo_device;
        int             lo_offset;
        int             lo_offset;
        int             lo_encrypt_type;
        int             lo_encrypt_type;
        int             lo_encrypt_key_size;
        int             lo_encrypt_key_size;
        int             lo_flags;
        int             lo_flags;
        int             (*transfer)(struct loop_device *, int cmd,
        int             (*transfer)(struct loop_device *, int cmd,
                                    char *raw_buf, char *loop_buf, int size);
                                    char *raw_buf, char *loop_buf, int size);
        char            lo_name[LO_NAME_SIZE];
        char            lo_name[LO_NAME_SIZE];
        char            lo_encrypt_key[LO_KEY_SIZE];
        char            lo_encrypt_key[LO_KEY_SIZE];
#ifdef DES_AVAILABLE
#ifdef DES_AVAILABLE
        des_key_schedule lo_des_key;
        des_key_schedule lo_des_key;
        unsigned long   lo_des_init[2];
        unsigned long   lo_des_init[2];
#endif
#endif
#ifdef IDEA_AVAILABLE
#ifdef IDEA_AVAILABLE
        idea_key        lo_idea_en_key;
        idea_key        lo_idea_en_key;
        idea_key        lo_idea_de_key;
        idea_key        lo_idea_de_key;
#endif
#endif
};
};
 
 
typedef int (* transfer_proc_t)(struct loop_device *, int cmd,
typedef int (* transfer_proc_t)(struct loop_device *, int cmd,
                                char *raw_buf, char *loop_buf, int size);
                                char *raw_buf, char *loop_buf, int size);
 
 
/*
/*
 * Loop flags
 * Loop flags
 */
 */
#define LO_FLAGS_DO_BMAP        0x00000001
#define LO_FLAGS_DO_BMAP        0x00000001
#define LO_FLAGS_READ_ONLY      0x00000002
#define LO_FLAGS_READ_ONLY      0x00000002
 
 
#endif /* __KERNEL__ */
#endif /* __KERNEL__ */
 
 
struct loop_info {
struct loop_info {
        int             lo_number;      /* ioctl r/o */
        int             lo_number;      /* ioctl r/o */
        dev_t           lo_device;      /* ioctl r/o */
        dev_t           lo_device;      /* ioctl r/o */
        unsigned long   lo_inode;       /* ioctl r/o */
        unsigned long   lo_inode;       /* ioctl r/o */
        dev_t           lo_rdevice;     /* ioctl r/o */
        dev_t           lo_rdevice;     /* ioctl r/o */
        int             lo_offset;
        int             lo_offset;
        int             lo_encrypt_type;
        int             lo_encrypt_type;
        int             lo_encrypt_key_size;    /* ioctl w/o */
        int             lo_encrypt_key_size;    /* ioctl w/o */
        int             lo_flags;       /* ioctl r/o */
        int             lo_flags;       /* ioctl r/o */
        char            lo_name[LO_NAME_SIZE];
        char            lo_name[LO_NAME_SIZE];
        unsigned char   lo_encrypt_key[LO_KEY_SIZE]; /* ioctl w/o */
        unsigned char   lo_encrypt_key[LO_KEY_SIZE]; /* ioctl w/o */
        unsigned long   lo_init[2];
        unsigned long   lo_init[2];
        char            reserved[4];
        char            reserved[4];
};
};
 
 
/*
/*
 * Loop encryption types --- LO_CRYPT_IDEA isn't supported yet
 * Loop encryption types --- LO_CRYPT_IDEA isn't supported yet
 */
 */
 
 
#define LO_CRYPT_NONE   0
#define LO_CRYPT_NONE   0
#define LO_CRYPT_XOR    1
#define LO_CRYPT_XOR    1
#define LO_CRYPT_DES    2
#define LO_CRYPT_DES    2
#define LO_CRYPT_IDEA   3
#define LO_CRYPT_IDEA   3
#define MAX_LO_CRYPT    4
#define MAX_LO_CRYPT    4
 
 
/*
/*
 * IOCTL commands --- we will commandeer 0x4C ('L')
 * IOCTL commands --- we will commandeer 0x4C ('L')
 */
 */
 
 
#define LOOP_SET_FD     0x4C00
#define LOOP_SET_FD     0x4C00
#define LOOP_CLR_FD     0x4C01
#define LOOP_CLR_FD     0x4C01
#define LOOP_SET_STATUS 0x4C02
#define LOOP_SET_STATUS 0x4C02
#define LOOP_GET_STATUS 0x4C03
#define LOOP_GET_STATUS 0x4C03
 
 
#endif
#endif
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.