Annotation of qemu/roms/openbios/fs/iso9660/iso9660_lseek.c, 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: #include "libiso9660.h"
                     10: 
                     11: int iso9660_lseek(iso9660_FILE *_file, long offset, int whence)
                     12: {
                     13:        iso9660_FILE *file = (iso9660_FILE*)_file;
                     14:        long new_offset;
                     15: 
                     16:        switch(whence)
                     17:        {
                     18:        case SEEK_SET:
                     19:                new_offset = offset;
                     20:                break;
                     21:        case SEEK_CUR:
                     22:                new_offset = file->offset + offset;
                     23:                break;
                     24:        case SEEK_END:
                     25:                new_offset = file->size + offset;
                     26:                break;
                     27:        default:
                     28:                return -1;
                     29:        }
                     30: 
                     31:        if ( (new_offset < 0) || (new_offset > file->size) )
                     32:                return -1;
                     33: 
                     34:        file->offset = new_offset;
                     35: 
                     36:        return new_offset;
                     37: }

unix.superglobalmegacorp.com

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