Annotation of qemu/roms/openbios/fs/iso9660/iso9660.h, revision 1.1.1.1

1.1       root        1: /*
                      2:  *
                      3:  * (c) 2005-2009 Laurent Vivier <[email protected]>
                      4:  *
                      5:  * This file has been copied from EMILE, http://emile.sf.net
                      6:  *
                      7:  */
                      8: 
                      9: #ifndef __ISO9660_H__
                     10: #define __ISO9660_H__
                     11: 
                     12: #include "iso9660_fs.h"
                     13: 
                     14: typedef struct iso9660_VOLUME {
                     15:        int ucs_level;
                     16:        struct iso_primary_descriptor *descriptor;
                     17:        int fd;
                     18: } iso9660_VOLUME;
                     19: 
                     20: typedef struct iso9660_DIR {
                     21:        iso9660_VOLUME *volume;
                     22:        int extent;
                     23:        int len;
                     24:        int index;
                     25:        unsigned char buffer[ISOFS_BLOCK_SIZE];
                     26: } iso9660_DIR;
                     27: 
                     28: typedef struct iso9660_FILE {
                     29:        iso9660_VOLUME *volume;
                     30:        char *path;
                     31:        int base;                       /* first extent of the file */
                     32:        int size;                       /* size of the file */
                     33:        int offset;
                     34:        int current;
                     35:        unsigned char buffer[ISOFS_BLOCK_SIZE];
                     36: } iso9660_FILE;
                     37: 
                     38: static inline int isonum_721(char *p)
                     39: {
                     40:         return ((p[0] & 0xff)
                     41:                 | ((p[1] & 0xff) << 8));
                     42: }
                     43: 
                     44: static inline int isonum_723(char *p)
                     45: {
                     46:         return (isonum_721(p));
                     47: }
                     48: 
                     49: static inline int isonum_733(char *p)
                     50: {
                     51:        return ((p[0] & 0xff) | ((p[1] & 0xff) << 8) |
                     52:                ((p[2] & 0xff) << 16) | ((p[3] & 0xff) << 24));
                     53: }
                     54: 
                     55: extern struct iso_directory_record *iso9660_get_root_node(iso9660_VOLUME* volume);
                     56: extern struct iso_directory_record* iso9660_get_node(iso9660_VOLUME *volume, struct iso_directory_record *dirnode, const char *path);
                     57: 
                     58: #endif /* __ISO9660_H__ */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.