Go to the source code of this file.
Classes | |
| struct | Partition |
| struct | AD |
| struct | extent_ad |
| struct | avdp_t |
| struct | pvd_t |
| struct | lbudf |
| struct | icbmap |
| struct | udf_cache |
Enumerations | |
| enum | UDFCacheType { PartitionCache, RootICBCache, LBUDFCache, MapCache, AVDPCache, PVDCache } |
Functions | |
| static int | DVDReadLBUDF (dvd_reader_t *device, uint32_t lb_number, size_t block_count, unsigned char *data, int encrypted) |
| void | FreeUDFCache (void *cache) |
| static int | GetUDFCache (dvd_reader_t *device, UDFCacheType type, uint32_t nr, void *data) |
| static int | SetUDFCache (dvd_reader_t *device, UDFCacheType type, uint32_t nr, void *data) |
| static int | Unicodedecode (uint8_t *data, int len, char *target) |
| static int | UDFDescriptor (uint8_t *data, uint16_t *TagID) |
| static int | UDFExtentAD (uint8_t *data, uint32_t *Length, uint32_t *Location) |
| static int | UDFShortAD (uint8_t *data, struct AD *ad, struct Partition *partition) |
| static int | UDFLongAD (uint8_t *data, struct AD *ad) |
| static int | UDFExtAD (uint8_t *data, struct AD *ad) |
| static int | UDFICB (uint8_t *data, uint8_t *FileType, uint16_t *Flags) |
| static int | UDFPartition (uint8_t *data, uint16_t *Flags, uint16_t *Number, char *Contents, uint32_t *Start, uint32_t *Length) |
| static int | UDFLogVolume (uint8_t *data, char *VolumeDescriptor) |
| Reads the volume descriptor and checks the parameters. | |
| static int | UDFFileEntry (uint8_t *data, uint8_t *FileType, struct Partition *partition, struct AD *ad) |
| static int | UDFFileIdentifier (uint8_t *data, uint8_t *FileCharacteristics, char *FileName, struct AD *FileICB) |
| static int | UDFMapICB (dvd_reader_t *device, struct AD ICB, uint8_t *FileType, struct Partition *partition, struct AD *File) |
| Maps ICB to FileAD ICB: Location of ICB of directory to scan FileType: Type of the file File: Location of file the ICB is pointing to return 1 on success, 0 on error;. | |
| static int | UDFScanDir (dvd_reader_t *device, struct AD Dir, char *FileName, struct Partition *partition, struct AD *FileICB, int cache_file_info) |
| Dir: Location of directory to scan FileName: Name of file to look for FileICB: Location of ICB of the found file return 1 on success, 0 on error;. | |
| static int | UDFGetAVDP (dvd_reader_t *device, struct avdp_t *avdp) |
| static int | UDFFindPartition (dvd_reader_t *device, int partnum, struct Partition *part) |
| Looks for partition on the disc. | |
| uint32_t | UDFFindFile (dvd_reader_t *device, char *filename, uint32_t *filesize) |
| Looks for a file on the UDF disc/imagefile and returns the block number where it begins, or 0 if it is not found. | |
| static int | UDFGetDescriptor (dvd_reader_t *device, int id, uint8_t *descriptor, int bufsize) |
| Gets a Descriptor . | |
| static int | UDFGetPVD (dvd_reader_t *device, struct pvd_t *pvd) |
| int | UDFGetVolumeIdentifier (dvd_reader_t *device, char *volid, unsigned int volid_size) |
| Gets the Volume Identifier string, in 8bit unicode (latin-1) volid, place to put the string volid_size, size of the buffer volid points to returns the size of buffer needed for all data. | |
| int | UDFGetVolumeSetIdentifier (dvd_reader_t *device, uint8_t *volsetid, unsigned int volsetid_size) |
| Gets the Volume Set Identifier, as a 128-byte dstring (not decoded) WARNING This is not a null terminated string volsetid, place to put the data volsetid_size, size of the buffer volsetid points to the buffer should be >=128 bytes to store the whole volumesetidentifier returns the size of the available volsetid information (128) or 0 on error. | |
| enum UDFCacheType |
| static int DVDReadLBUDF | ( | dvd_reader_t * | device, | |
| uint32_t | lb_number, | |||
| size_t | block_count, | |||
| unsigned char * | data, | |||
| int | encrypted | |||
| ) | [static] |
Definition at line 45 of file dvd_udf.c.
Referenced by UDFFindFile(), UDFFindPartition(), UDFGetAVDP(), UDFGetDescriptor(), UDFMapICB(), and UDFScanDir().
| void FreeUDFCache | ( | void * | cache | ) |
Definition at line 139 of file dvd_udf.c.
Referenced by DVDClose().
| static int GetUDFCache | ( | dvd_reader_t * | device, | |
| UDFCacheType | type, | |||
| uint32_t | nr, | |||
| void * | data | |||
| ) | [static] |
Definition at line 157 of file dvd_udf.c.
Referenced by UDFFindFile(), UDFGetAVDP(), UDFGetPVD(), UDFMapICB(), and UDFScanDir().
| static int SetUDFCache | ( | dvd_reader_t * | device, | |
| UDFCacheType | type, | |||
| uint32_t | nr, | |||
| void * | data | |||
| ) | [static] |
Definition at line 219 of file dvd_udf.c.
Referenced by UDFFindFile(), UDFGetAVDP(), UDFGetPVD(), UDFMapICB(), and UDFScanDir().
| static int Unicodedecode | ( | uint8_t * | data, | |
| int | len, | |||
| char * | target | |||
| ) | [static] |
Definition at line 329 of file dvd_udf.c.
Referenced by UDFFileIdentifier(), UDFGetVolumeIdentifier(), and UDFLogVolume().
Definition at line 345 of file dvd_udf.c.
Referenced by UDFFindFile(), UDFFindPartition(), UDFGetAVDP(), UDFGetDescriptor(), UDFMapICB(), and UDFScanDir().
Definition at line 352 of file dvd_udf.c.
Referenced by UDFGetAVDP().
Definition at line 359 of file dvd_udf.c.
Referenced by UDFFileEntry().
Definition at line 370 of file dvd_udf.c.
Referenced by UDFFileEntry(), UDFFileIdentifier(), and UDFFindFile().
Definition at line 381 of file dvd_udf.c.
Referenced by UDFFileEntry().
Definition at line 392 of file dvd_udf.c.
Referenced by UDFFileEntry().
| static int UDFPartition | ( | uint8_t * | data, | |
| uint16_t * | Flags, | |||
| uint16_t * | Number, | |||
| char * | Contents, | |||
| uint32_t * | Start, | |||
| uint32_t * | Length | |||
| ) | [static] |
Definition at line 400 of file dvd_udf.c.
Referenced by UDFFindPartition().
| static int UDFLogVolume | ( | uint8_t * | data, | |
| char * | VolumeDescriptor | |||
| ) | [static] |
Reads the volume descriptor and checks the parameters.
Returns 0 on OK, 1 on error.
Definition at line 415 of file dvd_udf.c.
Referenced by UDFFindPartition().
| static int UDFFileEntry | ( | uint8_t * | data, | |
| uint8_t * | FileType, | |||
| struct Partition * | partition, | |||
| struct AD * | ad | |||
| ) | [static] |
Definition at line 426 of file dvd_udf.c.
Referenced by UDFMapICB().
| static int UDFFileIdentifier | ( | uint8_t * | data, | |
| uint8_t * | FileCharacteristics, | |||
| char * | FileName, | |||
| struct AD * | FileICB | |||
| ) | [static] |
Definition at line 484 of file dvd_udf.c.
Referenced by UDFScanDir().
| static int UDFMapICB | ( | dvd_reader_t * | device, | |
| struct AD | ICB, | |||
| uint8_t * | FileType, | |||
| struct Partition * | partition, | |||
| struct AD * | File | |||
| ) | [static] |
Maps ICB to FileAD ICB: Location of ICB of directory to scan FileType: Type of the file File: Location of file the ICB is pointing to return 1 on success, 0 on error;.
Definition at line 507 of file dvd_udf.c.
Referenced by UDFFindFile(), and UDFScanDir().
| static int UDFScanDir | ( | dvd_reader_t * | device, | |
| struct AD | Dir, | |||
| char * | FileName, | |||
| struct Partition * | partition, | |||
| struct AD * | FileICB, | |||
| int | cache_file_info | |||
| ) | [static] |
Dir: Location of directory to scan FileName: Name of file to look for FileICB: Location of ICB of the found file return 1 on success, 0 on error;.
Definition at line 549 of file dvd_udf.c.
Referenced by UDFFindFile().
| static int UDFGetAVDP | ( | dvd_reader_t * | device, | |
| struct avdp_t * | avdp | |||
| ) | [static] |
Definition at line 660 of file dvd_udf.c.
Referenced by UDFFindPartition(), and UDFGetDescriptor().
| static int UDFFindPartition | ( | dvd_reader_t * | device, | |
| int | partnum, | |||
| struct Partition * | part | |||
| ) | [static] |
Looks for partition on the disc.
Returns 1 if partition found, 0 on error. partnum: Number of the partition, starting at 0. part: structure to fill with the partition information
Definition at line 728 of file dvd_udf.c.
Referenced by UDFFindFile().
| uint32_t UDFFindFile | ( | dvd_reader_t * | device, | |
| char * | filename, | |||
| uint32_t * | size | |||
| ) |
Looks for a file on the UDF disc/imagefile and returns the block number where it begins, or 0 if it is not found.
The filename should be an absolute pathname on the UDF filesystem, starting with '/'. For example, '/VIDEO_TS/VTS_01_1.IFO'. On success, filesize will be set to the size of the file in bytes.
Definition at line 787 of file dvd_udf.c.
Referenced by DVDFileStat(), DVDFileStatVOBUDF(), DVDOpenFileUDF(), DVDOpenVOBUDF(), and initAllCSSKeys().
| static int UDFGetDescriptor | ( | dvd_reader_t * | device, | |
| int | id, | |||
| uint8_t * | descriptor, | |||
| int | bufsize | |||
| ) | [static] |
Gets a Descriptor .
Returns 1 if descriptor found, 0 on error. id, tagid of descriptor bufsize, size of BlockBuf (must be >= DVD_VIDEO_LB_LEN).
Definition at line 874 of file dvd_udf.c.
Referenced by UDFGetPVD().
| static int UDFGetPVD | ( | dvd_reader_t * | device, | |
| struct pvd_t * | pvd | |||
| ) | [static] |
Definition at line 924 of file dvd_udf.c.
Referenced by UDFGetVolumeIdentifier(), and UDFGetVolumeSetIdentifier().
| int UDFGetVolumeIdentifier | ( | dvd_reader_t * | device, | |
| char * | volid, | |||
| unsigned int | volid_size | |||
| ) |
Gets the Volume Identifier string, in 8bit unicode (latin-1) volid, place to put the string volid_size, size of the buffer volid points to returns the size of buffer needed for all data.
Definition at line 946 of file dvd_udf.c.
Referenced by DVDUDFVolumeInfo().
| int UDFGetVolumeSetIdentifier | ( | dvd_reader_t * | device, | |
| uint8_t * | volsetid, | |||
| unsigned int | volsetid_size | |||
| ) |
Gets the Volume Set Identifier, as a 128-byte dstring (not decoded) WARNING This is not a null terminated string volsetid, place to put the data volsetid_size, size of the buffer volsetid points to the buffer should be >=128 bytes to store the whole volumesetidentifier returns the size of the available volsetid information (128) or 0 on error.
Definition at line 976 of file dvd_udf.c.
Referenced by DVDUDFVolumeInfo().
1.6.3