summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLeon Merten Lohse <leon@green-side.de>2012-03-22 22:23:21 +0100
committerLeon Merten Lohse <leon@green-side.de>2012-03-22 22:23:21 +0100
commitd7d488f81659e46d48700d0b05df0ae29edae08a (patch)
treede8fde4e35ccdbb3ab2c0a3a4000b034c8ffc8de
parent591c23ee48d44936535e0f5b13c2d8e025ac7dea (diff)
parent0b5e5d6465ee02144bde257046946c2314d689b2 (diff)
Merge branch 'master' of ssh://git.sv.gnu.org/srv/git/libcdio
-rw-r--r--NEWS7
-rw-r--r--example/audio.c3
-rw-r--r--include/cdio++/cdio.hpp8
-rw-r--r--include/cdio++/cdtext.hpp4
-rw-r--r--include/cdio++/device.hpp8
-rw-r--r--include/cdio++/devices.hpp25
-rw-r--r--include/cdio++/iso9660.hpp60
-rw-r--r--include/cdio/Makefile.am3
-rw-r--r--include/cdio/audio.h6
-rw-r--r--include/cdio/bytesex.h10
-rw-r--r--include/cdio/bytesex_asm.h18
-rw-r--r--include/cdio/cd_types.h46
-rw-r--r--include/cdio/cdda.h411
-rw-r--r--include/cdio/cdtext.h10
-rw-r--r--include/cdio/device.h114
-rw-r--r--include/cdio/disc.h18
-rw-r--r--include/cdio/ds.h6
-rw-r--r--include/cdio/dvd.h45
-rw-r--r--include/cdio/ecma_167.h882
-rw-r--r--include/cdio/iso9660.h72
-rw-r--r--include/cdio/logging.h10
-rw-r--r--include/cdio/mmc.h54
-rw-r--r--include/cdio/mmc_cmds.h8
-rw-r--r--include/cdio/mmc_hl_cmds.h10
-rw-r--r--include/cdio/mmc_ll_cmds.h34
-rw-r--r--include/cdio/mmc_util.h8
-rw-r--r--include/cdio/posix.h10
-rw-r--r--include/cdio/read.h74
-rw-r--r--include/cdio/rock.h22
-rw-r--r--include/cdio/sector.h46
-rw-r--r--include/cdio/track.h41
-rw-r--r--include/cdio/types.h22
-rw-r--r--include/cdio/utf8.h1
-rw-r--r--include/cdio/util.h6
-rw-r--r--include/cdio/xa.h13
-rw-r--r--lib/driver/_cdio_stdio.h10
-rw-r--r--lib/driver/_cdio_stream.h6
-rw-r--r--lib/driver/cdio_assert.h6
-rw-r--r--lib/driver/cdio_private.h72
-rw-r--r--lib/driver/cdtext_private.h9
-rw-r--r--lib/driver/filemode.h8
-rw-r--r--lib/driver/generic.h21
-rw-r--r--lib/driver/image.h35
-rw-r--r--lib/driver/image_common.h32
-rw-r--r--lib/driver/mmc/mmc_cmd_helper.h44
-rw-r--r--lib/driver/portable.h6
-rw-r--r--lib/iso9660/iso9660.c34
-rw-r--r--lib/iso9660/iso9660_private.h8
-rw-r--r--lib/udf/udf_fs.h10
-rw-r--r--lib/udf/udf_private.h6
-rw-r--r--src/getopt.h42
-rw-r--r--test/check_cue.sh.in6
52 files changed, 1025 insertions, 1445 deletions
diff --git a/NEWS b/NEWS
index 1fd4ed9c..dc90b79b 100644
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,5 @@
version 0.83
+2011-10-27
- Add retrieval SCSI sense reply from the most-recent MMC command.
- Add exclusive read/write access for devices which is used for experimental
@@ -6,7 +7,7 @@ version 0.83
- MMC bug fixes
- FreeBSD drive list now shows empty drives.
- Add ability to retrieve SCSI tuple for a name and/or fake one up for
- programs that wanto to cd-record compatible.
+ programs that want to be cd-record compatible.
- Tolerance for OS's without timezone in their struct tm (e.g. Solaris)
added iso9660_set_{d,l}time_with_timezone
- Add mmc_get_disk_erasable
@@ -78,7 +79,7 @@ version 0.79
- iso-read: Add --ignore -k to ignore errors.
- Fix Savannah Bugs #18522, #18563, #18131 #19221 (possibly), #19880,
- #21147 and other miscelleaneous bugs and memory leaks
+ #21147 and other miscellaneous bugs and memory leaks
- cd-info: force CDDB disc id to be 32-bits. Problem reported
by Eric Shattow.
@@ -133,7 +134,7 @@ version 0.77
- Add more generic read_sectors()
- Document that NULL also uses default drive in close_tray, cdio_open
- and cdio_open_am. Document b_mode2 paramenter not used in cdio ISO
+ and cdio_open_am. Document b_mode2 parameter not used in cdio ISO
read.
- Some provision for handling Rock-Ridge device numbers.
diff --git a/example/audio.c b/example/audio.c
index 6951bd51..b92412ed 100644
--- a/example/audio.c
+++ b/example/audio.c
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2005, 2008, 2009 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2005, 2008, 2009, 2012 Rocky Bernstein <rocky@gnu.org>
Adapted from Gerd Knorr's player.c program <kraxel@bytesex.org>
Copyright (C) 1997, 1998
@@ -24,7 +24,6 @@
*/
#ifdef HAVE_CONFIG_H
#include "config.h"
-#define __CDIO_CONFIG_H__ 1
#endif
#ifdef HAVE_STDIO_H
diff --git a/include/cdio++/cdio.hpp b/include/cdio++/cdio.hpp
index 66abc366..52639a90 100644
--- a/include/cdio++/cdio.hpp
+++ b/include/cdio++/cdio.hpp
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2005, 2006, 2008 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2005, 2006, 2008, 2012 Rocky Bernstein <rocky@gnu.org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -21,8 +21,8 @@
* library. Applications use this for anything regarding libcdio.
*/
-#ifndef __CDIO_HPP__
-#define __CDIO_HPP__
+#ifndef CDIO_CDIOPP_HPP_
+#define CDIO_CDIOPP_HPP_
#include <cdio/cdio.h>
#include <cdio/audio.h>
@@ -179,4 +179,4 @@ public:
/* Things related to devices. No class or object is needed. */
#include "devices.hpp"
-#endif /* __CDIO_HPP__ */
+#endif /* CDIO_CDIOPP_HPP_ */
diff --git a/include/cdio++/cdtext.hpp b/include/cdio++/cdtext.hpp
index 83edf7b9..34e77997 100644
--- a/include/cdio++/cdtext.hpp
+++ b/include/cdio++/cdtext.hpp
@@ -1,7 +1,5 @@
/*
- $Id: cdtext.hpp,v 1.2 2008/03/25 15:59:10 karl Exp $
-
- Copyright (C) 2005, 2008 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2005, 2008, 2012 Rocky Bernstein <rocky@gnu.org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
diff --git a/include/cdio++/device.hpp b/include/cdio++/device.hpp
index 324b5600..23509042 100644
--- a/include/cdio++/device.hpp
+++ b/include/cdio++/device.hpp
@@ -1,7 +1,5 @@
/*
- $Id: device.hpp,v 1.7 2008/03/25 15:59:10 karl Exp $
-
- Copyright (C) 2005, 2006, 2008 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2005, 2006, 2008, 2012 Rocky Bernstein <rocky@gnu.org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -111,8 +109,8 @@ getDevice ()
*/
void
getDriveCap (cdio_drive_read_cap_t &read_cap,
- cdio_drive_write_cap_t &write_cap,
- cdio_drive_misc_cap_t &misc_cap)
+ cdio_drive_write_cap_t &write_cap,
+ cdio_drive_misc_cap_t &misc_cap)
{
cdio_get_drive_cap(p_cdio, &read_cap, &write_cap, &misc_cap);
}
diff --git a/include/cdio++/devices.hpp b/include/cdio++/devices.hpp
index 884cd8f6..a54e45f1 100644
--- a/include/cdio++/devices.hpp
+++ b/include/cdio++/devices.hpp
@@ -1,7 +1,5 @@
/*
- $Id: devices.hpp,v 1.5 2008/03/25 15:59:10 karl Exp $
-
- Copyright (C) 2005, 2006, 2008 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2005, 2006, 2008, 2012 Rocky Bernstein <rocky@gnu.org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -32,7 +30,7 @@
it was DRIVER_UNKNOWN or DRIVER_DEVICE; If this is NULL, we won't
report back the driver used.
*/
-void closeTray (const char *psz_drive, /*in/out*/ driver_id_t &driver_id);
+void closeTray(const char *psz_drive, /*in/out*/ driver_id_t &driver_id);
/*!
Close media tray in CD drive if there is a routine to do so.
@@ -40,7 +38,7 @@ void closeTray (const char *psz_drive, /*in/out*/ driver_id_t &driver_id);
@param psz_drive the name of CD-ROM to be closed. If omitted or
NULL, we'll scan for a suitable CD-ROM.
*/
-void closeTray (const char *psz_drive=(const char *)NULL);
+void closeTray(const char *psz_drive=(const char *)NULL);
/*!
Get a string decribing driver_id.
@@ -48,14 +46,14 @@ void closeTray (const char *psz_drive=(const char *)NULL);
@param driver_id the driver you want the description for
@return a sring of driver description
*/
-const char *driverDescribe (driver_id_t driver_id);
+const char *driverDescribe(driver_id_t driver_id);
/*!
Eject media in CD drive if there is a routine to do so.
If the CD is ejected, object is destroyed.
*/
-void ejectMedia (const char *psz_drive);
+void ejectMedia(const char *psz_drive);
/*!
Free device list returned by GetDevices
@@ -65,7 +63,7 @@ void ejectMedia (const char *psz_drive);
@see GetDevices
*/
-void freeDeviceList (char * device_list[]);
+void freeDeviceList(char * device_list[]);
/*!
Return a string containing the default CD device if none is specified.
@@ -96,7 +94,7 @@ char ** getDevices(driver_id_t driver_id=DRIVER_DEVICE);
things up for libcdio as well.
*/
-char **getDevices (driver_id_t &driver_id);
+char **getDevices(driver_id_t &driver_id);
/*!
Get an array of device names in search_devices that have at least
@@ -116,7 +114,7 @@ char **getDevices (driver_id_t &driver_id);
was found.
*/
char ** getDevices(/*in*/ char *ppsz_search_devices[],
- cdio_fs_anal_t capabilities, bool b_any=false);
+ cdio_fs_anal_t capabilities, bool b_any=false);
/*!
Like GetDevices above but we return the driver we found
@@ -125,11 +123,11 @@ char ** getDevices(/*in*/ char *ppsz_search_devices[],
and speeds things up for libcdio as well.
*/
char ** getDevices(/*in*/ char* ppsz_search_devices[],
- cdio_fs_anal_t capabilities, /*out*/ driver_id_t &driver_id,
- bool b_any=false);
+ cdio_fs_anal_t capabilities, /*out*/ driver_id_t &driver_id,
+ bool b_any=false);
/*! Return true if we Have driver for driver_id */
-bool haveDriver (driver_id_t driver_id);
+bool haveDriver(driver_id_t driver_id);
/*!
@@ -178,4 +176,3 @@ bool isNero(const char *psz_nrg);
if not a TOC file.
*/
bool isTocFile(const char *psz_toc);
-
diff --git a/include/cdio++/iso9660.hpp b/include/cdio++/iso9660.hpp
index da04455b..ce6df625 100644
--- a/include/cdio++/iso9660.hpp
+++ b/include/cdio++/iso9660.hpp
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2006, 2008, 2011 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2006, 2008, 2011, 2012 Rocky Bernstein <rocky@gnu.org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -21,12 +21,12 @@
* library. Applications use this for anything regarding libcdio.
*/
-#ifndef __ISO9660_HPP__
-#define __ISO9660_HPP__
+#ifndef CDIO_ISO9660_HPP_
+#define CDIO_ISO9660_HPP_
#include <cdio/iso9660.h>
#include <cdio++/cdio.hpp>
-#include <vector> // vector class library
+#include <vector> // vector class library
#include <cstdlib>
#include <cstring>
using namespace std;
@@ -126,8 +126,8 @@ public:
{
free(p_stat);
p_stat = (iso9660_stat_t *)
- calloc( 1, sizeof(iso9660_stat_t)
- + strlen(copy_in.p_stat->filename)+1 );
+ calloc( 1, sizeof(iso9660_stat_t)
+ + strlen(copy_in.p_stat->filename)+1 );
p_stat = copy_in.p_stat;
}
@@ -181,7 +181,7 @@ public:
returned result.
*/
bool readdir (const char psz_path[], stat_vector_t& stat_vector,
- bool b_mode2=false);
+ bool b_mode2=false);
/*!
Return file status for path name psz_path. NULL is returned on
@@ -202,10 +202,10 @@ public:
stat (const char psz_path[], bool b_translate=false, bool b_mode2=false)
{
if (b_translate)
- return new Stat(iso9660_fs_stat_translate (p_cdio, psz_path,
- b_mode2));
+ return new Stat(iso9660_fs_stat_translate (p_cdio, psz_path,
+ b_mode2));
else
- return new Stat(iso9660_fs_stat (p_cdio, psz_path));
+ return new Stat(iso9660_fs_stat (p_cdio, psz_path));
}
};
@@ -321,7 +321,7 @@ public:
@see open_fuzzy
*/
bool open(const char *psz_path,
- iso_extension_mask_t iso_extension_mask=ISO_EXTENSION_NONE)
+ iso_extension_mask_t iso_extension_mask=ISO_EXTENSION_NONE)
{
if (p_iso9660) iso9660_close(p_iso9660);
p_iso9660 = iso9660_open_ext(psz_path, iso_extension_mask);
@@ -340,9 +340,9 @@ public:
@see open
*/
bool open_fuzzy (const char *psz_path,
- iso_extension_mask_t iso_extension_mask
- =ISO_EXTENSION_NONE,
- uint16_t i_fuzz=20);
+ iso_extension_mask_t iso_extension_mask
+ =ISO_EXTENSION_NONE,
+ uint16_t i_fuzz=20);
/*! Read the Primary Volume Descriptor for an ISO 9660 image. A
PVD object is returned if read, and NULL if there was an error.
@@ -358,8 +358,8 @@ public:
@see read_superblock
*/
bool read_superblock (iso_extension_mask_t iso_extension_mask
- =ISO_EXTENSION_NONE,
- uint16_t i_fuzz=20);
+ =ISO_EXTENSION_NONE,
+ uint16_t i_fuzz=20);
/*!
Read the Super block of an ISO 9660 image but determine framesize
@@ -371,8 +371,8 @@ public:
*/
bool
read_superblock_fuzzy (iso_extension_mask_t iso_extension_mask
- =ISO_EXTENSION_NONE,
- uint16_t i_fuzz=20);
+ =ISO_EXTENSION_NONE,
+ uint16_t i_fuzz=20);
/*! Read psz_path (a directory) and return a list of iso9660_stat_t
pointers for the files inside that directory. The caller must free
@@ -383,16 +383,16 @@ public:
CdioList_t *p_stat_list = iso9660_ifs_readdir (p_iso9660, psz_path);
if (p_stat_list) {
- CdioListNode_t *p_entnode;
- _CDIO_LIST_FOREACH (p_entnode, p_stat_list) {
- iso9660_stat_t *p_statbuf =
- (iso9660_stat_t *) _cdio_list_node_data (p_entnode);
- stat_vector.push_back(new ISO9660::Stat(p_statbuf));
- }
- _cdio_list_free (p_stat_list, false);
- return true;
+ CdioListNode_t *p_entnode;
+ _CDIO_LIST_FOREACH (p_entnode, p_stat_list) {
+ iso9660_stat_t *p_statbuf =
+ (iso9660_stat_t *) _cdio_list_node_data (p_entnode);
+ stat_vector.push_back(new ISO9660::Stat(p_statbuf));
+ }
+ _cdio_list_free (p_stat_list, false);
+ return true;
} else {
- return false;
+ return false;
}
}
@@ -412,9 +412,9 @@ public:
stat (const char psz_path[], bool b_translate=false)
{
if (b_translate)
- return new Stat(iso9660_ifs_stat_translate (p_iso9660, psz_path));
+ return new Stat(iso9660_ifs_stat_translate (p_iso9660, psz_path));
else
- return new Stat(iso9660_ifs_stat (p_iso9660, psz_path));
+ return new Stat(iso9660_ifs_stat (p_iso9660, psz_path));
}
private:
@@ -426,4 +426,4 @@ public:
typedef vector< ISO9660::Stat *> stat_vector_t;
typedef vector <ISO9660::Stat *>::iterator stat_vector_iterator_t;
-#endif /* __ISO9660_HPP__ */
+#endif /* CDIO_ISO9660_HPP_ */
diff --git a/include/cdio/Makefile.am b/include/cdio/Makefile.am
index 7280a726..da4c4f42 100644
--- a/include/cdio/Makefile.am
+++ b/include/cdio/Makefile.am
@@ -1,4 +1,5 @@
-# Copyright (C) 2003, 2004, 2006, 2008, 2011 Rocky Bernstein <rocky@gnu.org>
+# Copyright (C) 2003, 2004, 2006, 2008, 2011, 2012
+# Rocky Bernstein <rocky@gnu.org>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/include/cdio/audio.h b/include/cdio/audio.h
index e51ba3d2..099a1236 100644
--- a/include/cdio/audio.h
+++ b/include/cdio/audio.h
@@ -21,8 +21,8 @@
* calls. These control playing of the CD-ROM through its
* line-out jack.
*/
-#ifndef __CDIO_AUDIO_H__
-#define __CDIO_AUDIO_H__
+#ifndef CDIO_AUDIO_H_
+#define CDIO_AUDIO_H_
#include <cdio/types.h>
@@ -143,4 +143,4 @@ extern "C" {
}
#endif /* __cplusplus */
-#endif /* __CDIO_AUDIO_H__ */
+#endif /* CDIO_AUDIO_H_ */
diff --git a/include/cdio/bytesex.h b/include/cdio/bytesex.h
index a85b965e..696fbd41 100644
--- a/include/cdio/bytesex.h
+++ b/include/cdio/bytesex.h
@@ -1,8 +1,6 @@
/*
- $Id: bytesex.h,v 1.5 2008/03/25 15:59:08 karl Exp $
-
Copyright (C) 2000, 2004 Herbert Valerio Riedel <hvr@gnu.org>
- Copyright (C) 2005, 2008 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2005, 2008, 2012 Rocky Bernstein <rocky@gnu.org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -25,8 +23,8 @@
* use glib.h routines instead.
*/
-#ifndef __CDIO_BYTESEX_H__
-#define __CDIO_BYTESEX_H__
+#ifndef CDIO_BYTESEX_H_
+#define CDIO_BYTESEX_H_
#include <cdio/types.h>
#include <cdio/bytesex_asm.h> /* also defines CDIO_INLINE */
@@ -208,7 +206,7 @@ from_733 (uint64_t p)
return (UINT32_C(0xFFFFFFFF) & p);
}
-#endif /* __CDIO_BYTESEX_H__ */
+#endif /* CDIO_BYTESEX_H_ */
/*
diff --git a/include/cdio/bytesex_asm.h b/include/cdio/bytesex_asm.h
index 0ee1aaad..d68b677a 100644
--- a/include/cdio/bytesex_asm.h
+++ b/include/cdio/bytesex_asm.h
@@ -24,8 +24,8 @@
glib.h routines instead.
*/
-#ifndef __CDIO_BYTESEX_ASM_H__
-#define __CDIO_BYTESEX_ASM_H__
+#ifndef CDIO_BYTESEX_ASM_H_
+#define CDIO_BYTESEX_ASM_H_
#if !defined(DISABLE_ASM_OPTIMIZE)
#include <cdio/types.h>
@@ -104,10 +104,10 @@ static CDIO_INLINE
uint32_t uint32_swap_le_be_asm(uint32_t a)
{
__asm__("xchgb %b0,%h0\n\t" /* swap lower bytes */
- "rorl $16,%0\n\t" /* swap words */
- "xchgb %b0,%h0" /* swap higher bytes */
- :"=q" (a)
- : "0" (a));
+ "rorl $16,%0\n\t" /* swap words */
+ "xchgb %b0,%h0" /* swap higher bytes */
+ :"=q" (a)
+ : "0" (a));
return(a);
}
@@ -116,8 +116,8 @@ static CDIO_INLINE
uint16_t uint16_swap_le_be_asm(uint16_t a)
{
__asm__("xchgb %b0,%h0" /* swap bytes */
- : "=q" (a)
- : "0" (a));
+ : "=q" (a)
+ : "0" (a));
return(a);
}
@@ -128,7 +128,7 @@ uint16_t uint16_swap_le_be_asm(uint16_t a)
#endif
#endif /* !defined(DISABLE_ASM_OPTIMIZE) */
-#endif /* __CDIO_BYTESEX_ASM_H__ */
+#endif /* CDIO_BYTESEX_ASM_H_ */
/*
diff --git a/include/cdio/cd_types.h b/include/cdio/cd_types.h
index bc1f16c0..7a2ee4e8 100644
--- a/include/cdio/cd_types.h
+++ b/include/cdio/cd_types.h
@@ -1,7 +1,5 @@
/*
- $Id: cd_types.h,v 1.18 2008/03/25 15:59:08 karl Exp $
-
- Copyright (C) 2003, 2006, 2008 Rocky Bernstein <rocky@cpan.org>
+ Copyright (C) 2003, 2006, 2008, 2012 Rocky Bernstein <rocky@gnu.org>
Copyright (C) 1996,1997,1998 Gerd Knorr <kraxel@bytesex.org>
and Heiko Eißfeldt <heiko@hexco.de>
@@ -25,8 +23,8 @@
*
*/
-#ifndef __CDIO_CD_TYPES_H__
-#define __CDIO_CD_TYPES_H__
+#ifndef CDIO_CD_TYPES_H_
+#define CDIO_CD_TYPES_H_
#ifdef __cplusplus
extern "C" {
@@ -39,13 +37,13 @@ extern "C" {
typedef enum {
CDIO_FS_AUDIO = 1, /**< audio only - not really a
filesystem */
- CDIO_FS_HIGH_SIERRA = 2, /**< High-Sierra Filesystem */
- CDIO_FS_ISO_9660 = 3, /**< ISO 9660 filesystem */
- CDIO_FS_INTERACTIVE = 4,
- CDIO_FS_HFS = 5, /**< file system used on the Macintosh
+ CDIO_FS_HIGH_SIERRA = 2, /**< High-Sierra Filesystem */
+ CDIO_FS_ISO_9660 = 3, /**< ISO 9660 filesystem */
+ CDIO_FS_INTERACTIVE = 4,
+ CDIO_FS_HFS = 5, /**< file system used on the Macintosh
system in MacOS 6 through MacOS 9
and deprecated in OSX. */
- CDIO_FS_UFS = 6, /**< Generic Unix file system derived
+ CDIO_FS_UFS = 6, /**< Generic Unix file system derived
from the Berkeley fast file
system. */
@@ -53,7 +51,7 @@ extern "C" {
* EXT2 was the GNU/Linux native filesystem for early kernels. Newer
* GNU/Linux OS's may use EXT3 which is EXT2 with a journal.
*/
- CDIO_FS_EXT2 = 7,
+ CDIO_FS_EXT2 = 7,
CDIO_FS_ISO_HFS = 8, /**< both HFS & ISO-9660 filesystem */
CDIO_FS_ISO_9660_INTERACTIVE = 9, /**< both CD-RTOS and ISO filesystem */
@@ -65,15 +63,15 @@ extern "C" {
* which uses a CD-player. Panasonic in the early 90's was the first
* company to manufacture and market a 3DO player.
*/
- CDIO_FS_3DO = 10,
+ CDIO_FS_3DO = 10,
/**<
Microsoft X-BOX CD.
*/
- CDIO_FS_XISO = 11,
- CDIO_FS_UDFX = 12,
- CDIO_FS_UDF = 13,
+ CDIO_FS_XISO = 11,
+ CDIO_FS_UDFX = 12,
+ CDIO_FS_UDF = 13,
CDIO_FS_ISO_UDF = 14
} cdio_fs_t;
@@ -89,15 +87,15 @@ extern "C" {
* based of the fs type information. This
*/
typedef enum {
- CDIO_FS_MASK = 0x000f, /**< Note: this should be 2**n-1 and
+ CDIO_FS_MASK = 0x000f, /**< Note: this should be 2**n-1 and
and greater than the highest
CDIO_FS number above */
- CDIO_FS_ANAL_XA = 0x00010, /**< eXtended Architecture format */
+ CDIO_FS_ANAL_XA = 0x00010, /**< eXtended Architecture format */
CDIO_FS_ANAL_MULTISESSION = 0x00020, /**< CD has multisesion */
- CDIO_FS_ANAL_PHOTO_CD = 0x00040, /**< Is a Kodak Photo CD */
+ CDIO_FS_ANAL_PHOTO_CD = 0x00040, /**< Is a Kodak Photo CD */
CDIO_FS_ANAL_HIDDEN_TRACK = 0x00080, /**< Hidden track at the
beginning of the CD */
- CDIO_FS_ANAL_CDTV = 0x00100,
+ CDIO_FS_ANAL_CDTV = 0x00100,
CDIO_FS_ANAL_BOOTABLE = 0x00200, /**< CD is bootable */
CDIO_FS_ANAL_VIDEOCD = 0x00400, /**< VCD 1.1 */
CDIO_FS_ANAL_ROCKRIDGE = 0x00800, /**< Has Rock Ridge Extensions to
@@ -118,7 +116,7 @@ extern "C" {
} cdio_fs_cap_t;
-#define CDIO_FS_UNKNOWN CDIO_FS_MASK
+#define CDIO_FS_UNKNOWN CDIO_FS_MASK
/**
*
@@ -137,7 +135,7 @@ typedef struct
unsigned int joliet_level; /**< If has Joliet extensions, this is the
associated level number (i.e. 1, 2, or 3). */
char iso_label[33]; /**< This is 32 + 1 for null byte at the end in
- formatting the string */
+ formatting the string */
unsigned int isofs_size;
uint8_t UDFVerMinor; /**< For UDF filesystems only */
uint8_t UDFVerMajor; /**< For UDF filesystems only */
@@ -149,8 +147,8 @@ typedef struct
* is returned in iso_analysis and the return value.
*/
cdio_fs_anal_t cdio_guess_cd_type(const CdIo_t *cdio, int start_session,
- track_t track_num,
- /*out*/ cdio_iso_analysis_t *iso_analysis);
+ track_t track_num,
+ /*out*/ cdio_iso_analysis_t *iso_analysis);
#ifdef __cplusplus
}
@@ -164,7 +162,7 @@ cdio_fs_anal_t cdio_guess_cd_type(const CdIo_t *cdio, int start_session,
extern cdio_fs_cap_t debug_cdio_fs_cap;
extern cdio_fs_t debug_cdio_fs;
-#endif /* __CDIO_CD_TYPES_H__ */
+#endif /* CDIO_CD_TYPES_H_ */
/*
* Local variables:
diff --git a/include/cdio/cdda.h b/include/cdio/cdda.h
deleted file mode 100644
index c30e129d..00000000
--- a/include/cdio/cdda.h
+++ /dev/null
@@ -1,411 +0,0 @@
-/*
- $Id: cdda.h,v 1.30 2008/03/25 15:59:08 karl Exp $
-
- Copyright (C) 2004, 2005, 2006, 2008 Rocky Bernstein <rocky@gnu.org>
- Copyright (C) 2001 Xiph.org and Heiko Eissfeldt heiko@escape.colossus.de
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-/** \file cdda.h
- *
- * \brief The top-level interface header for libcdio_cdda.
- * Applications include this for paranoia access.
- *
- ******************************************************************/
-
-#ifndef _CDDA_INTERFACE_H_
-#define _CDDA_INTERFACE_H_
-
-#include <cdio/cdio.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
- /** cdrom_paranoia is an opaque structure which is used in all of the
- library operations.
- */
- typedef struct cdrom_paranoia_s cdrom_paranoia_t;
- typedef struct cdrom_drive_s cdrom_drive_t;
-
- /** For compatibility. cdrom_drive_t is deprecated, use cdrom_drive_t
- instead. */
-
- /**
- Flags for simulating jitter used in testing.
-
- The enumeration type one probably wouldn't really use in a program.
- It is here instead of defines to give symbolic names that can be
- helpful in debuggers where wants just to say refer to
- CDDA_TEST_JITTER_SMALL and get the correct value.
- */
- typedef enum {
- CDDA_MESSAGE_FORGETIT = 0,
- CDDA_MESSAGE_PRINTIT = 1,
- CDDA_MESSAGE_LOGIT = 2,
- CD_FRAMESAMPLES = CDIO_CD_FRAMESIZE_RAW / 4,
- MAXTRK = (CDIO_CD_MAX_TRACKS+1)
- } paranoia_cdda_enums_t;
-
-
-#include <signal.h>
-
-/** We keep MAXTRK since this header is exposed publicly and other
- programs may have used this.
-*/
-#define MAXTRK (CDIO_CD_MAX_TRACKS+1)
-
-/** \brief Structure for cdparanoia's CD Table of Contents */
-typedef struct TOC_s {
- unsigned char bTrack;
- int32_t dwStartSector;
-} TOC_t;
-
-/** For compatibility. TOC is deprecated, use TOC_t instead. */
-#define TOC TOC_t
-
-/** \brief Structure for cdparanoia's CD-ROM access */
-struct cdrom_drive_s {
-
- CdIo_t *p_cdio;
- int opened; /**< This struct may just represent a candidate for opening */
-
- char *cdda_device_name;
-
- char *drive_model;
- int drive_type;
- int bigendianp; /**< Whether data returned on the CDDA is bigendian or
- not. 1 if big endian, 0 if little endian and -1 if
- we don't know.
- */
- int nsectors; /**< Number of sectors use in reading. Multiply by
- CDIO_CD_FRAMESIZE_RAW to get number of bytes used in
- the read buffer. */
-
- int cd_extra; /**< -1 if we can't get multisession info, 0 if
- there is one session only or the multi-session
- LBA is less than or 100 (don't ask me why -- I
- don't know), and 1 if the multi-session lba is
- greater than 100. */
-
- bool b_swap_bytes; /**< Swap bytes if Endian-ness of drive
- mismatches the endian-ness of the
- computer? */
- track_t tracks;
- TOC_t disc_toc[MAXTRK]; /**< info here starts origin 0 rather than the
- first track number (usually 1). So to take
- a track number and use it here, subtract
- off cdio_get_first_track_num() beforehand.
- */
- lsn_t audio_first_sector;
- lsn_t audio_last_sector;
-
- int errordest;
- int messagedest;
- char *errorbuf;
- char *messagebuf;
-
- /* functions specific to particular drives/interfaces */
-
- int (*enable_cdda) (cdrom_drive_t *d, int onoff);
- int (*read_toc) (cdrom_drive_t *d);
- long (*read_audio) (cdrom_drive_t *d, void *p, lsn_t begin,
- long sectors);
- int (*set_speed) (cdrom_drive_t *d, int speed);
- int error_retry;
- int report_all;
-
- int is_atapi;
- int is_mmc;
-
- int i_test_flags; /**< Normally set 0. But if we are testing
- paranoia operation this can be set to one of
- the flag masks to simulate a particular kind of
- failure. */
-
-};
-
-
- /**
- Flags for simulating jitter used in testing.
-
- The enumeration type one probably wouldn't really use in a program.
- It is here instead of defines to give symbolic names that can be
- helpful in debuggers where wants just to say refer to
- CDDA_TEST_JITTER_SMALL and get the correct value.
- */
- typedef enum {
- CDDA_TEST_JITTER_SMALL = 1,
- CDDA_TEST_JITTER_LARGE = 2,
- CDDA_TEST_JITTER_MASSIVE = 3,
- CDDA_TEST_FRAG_SMALL = (1<<3),
- CDDA_TEST_FRAG_LARGE = (2<<3),
- CDDA_TEST_FRAG_MASSIVE = (3<<3),
- CDDA_TEST_UNDERRUN = 64
- } paranoia_jitter_t;
-
-/** jitter testing. The first two bits are set to determine the
- byte-distance we will jitter the data; 0 is no shifting.
- */
-
-/**< jitter testing. Set the below bit to always cause jittering on reads.
- The below bit only has any effect if the first two (above) bits are
- nonzero. If the above bits are set, but the below bit isn't we'll
- jitter 90% of the time.
- */
-#define CDDA_TEST_ALWAYS_JITTER 4
-
-/** fragment testing */
-#define CDDA_TEST_FRAG_SMALL (1<<3)
-#define CDDA_TEST_FRAG_LARGE (2<<3)
-#define CDDA_TEST_FRAG_MASSIVE (3<<3)
-
-/**< under-run testing. The below bit is set for testing. */
-#define CDDA_TEST_UNDERRUN 64
-
-#if TESTING_IS_FINISHED
-
- /** scratch testing */
-#define CDDA_TEST_SCRATCH 128
-#undef CDDA_TEST_BOGUS_BYTES 256
-#undef CDDA_TEST_DROPDUPE_BYTES 512
-#endif /* TESTING_IS_FINISHED */
-
-/** autosense functions */
-
-/** Get a CD-ROM drive with a CD-DA in it.
- If mesagedest is 1, then any messages in the process will be stored
- in message.
-*/
-extern cdrom_drive_t *cdio_cddap_find_a_cdrom(int messagedest,
- char **ppsz_message);
-
-/** Returns a paranoia CD-ROM drive object with a CD-DA in it or NULL
- if there was an error.
- @see cdio_cddap_identify_cdio
- */
-extern cdrom_drive_t *cdio_cddap_identify(const char *psz_device,
- int messagedest,
- char **ppsz_message);
-
-/** Returns a paranoia CD-ROM drive object with a CD-DA in it or NULL
- if there was an error. In contrast to cdio_cddap_identify, we
- start out with an initialized p_cdio object. For example you may
- have used that for other purposes such as to get CDDB/CD-Text
- information. @see cdio_cddap_identify
- */
-cdrom_drive_t *cdio_cddap_identify_cdio(CdIo_t *p_cdio,
- int messagedest, char **ppsz_messages);
-
-/** drive-oriented functions */
-
-extern int cdio_cddap_speed_set(cdrom_drive_t *d, int speed);
-extern void cdio_cddap_verbose_set(cdrom_drive_t *d, int err_action,
- int mes_action);
-extern char *cdio_cddap_messages(cdrom_drive_t *d);
-extern char *cdio_cddap_errors(cdrom_drive_t *d);
-
-/*!
- Closes d and releases all storage associated with it except
- the internal p_cdio pointer.
-
- @param d cdrom_drive_t object to be closed.
- @return 0 if passed a null pointer and 1 if not in which case
- some work was probably done.
-
- @see cdio_cddap_close
-*/
-bool cdio_cddap_close_no_free_cdio(cdrom_drive_t *d);
-
-/*!
- Closes d and releases all storage associated with it.
- Doubles as "cdrom_drive_free()".
-
- @param d cdrom_drive_t object to be closed.
- @return 0 if passed a null pointer and 1 if not in which case
- some work was probably done.
-
- @see cdio_cddap_close_no_free_cdio
-*/
-extern int cdio_cddap_close(cdrom_drive_t *d);
-
-extern int cdio_cddap_open(cdrom_drive_t *d);
-
-extern long cdio_cddap_read(cdrom_drive_t *d, void *p_buffer,
- lsn_t beginsector, long sectors);
-
-/*! Return the lsn for the start of track i_track */
-extern lsn_t cdio_cddap_track_firstsector(cdrom_drive_t *d,
- track_t i_track);
-
-/*! Get last lsn of the track. This generally one less than the start
- of the next track. -1 is returned on error. */
-extern lsn_t cdio_cddap_track_lastsector(cdrom_drive_t *d, track_t i_track);
-
-/*! Return the number of tracks on the CD. */
-extern track_t cdio_cddap_tracks(cdrom_drive_t *d);
-
-/*! Return the track containing the given LSN. If the LSN is before
- the first track (in the pregap), 0 is returned. If there was an
- error or the LSN after the LEADOUT (beyond the end of the CD), then
- CDIO_INVALID_TRACK is returned.
- */
-extern int cdio_cddap_sector_gettrack(cdrom_drive_t *d, lsn_t lsn);
-
-/*! Return the number of channels in track: 2 or 4; -2 if not
- implemented or -1 for error.
- Not meaningful if track is not an audio track.
-*/
-extern int cdio_cddap_track_channels(cdrom_drive_t *d, track_t i_track);
-
-/*! Return 1 is track is an audio track, 0 otherwise. */
-extern int cdio_cddap_track_audiop(cdrom_drive_t *d, track_t i_track);
-
-/*! Return 1 is track has copy permit set, 0 otherwise. */
-extern int cdio_cddap_track_copyp(cdrom_drive_t *d, track_t i_track);
-
-/*! Return 1 is audio track has linear preemphasis set, 0 otherwise.
- Only makes sense for audio tracks.
- */
-extern int cdio_cddap_track_preemp(cdrom_drive_t *d, track_t i_track);
-
-/*! Get first lsn of the first audio track. -1 is returned on error. */
-extern lsn_t cdio_cddap_disc_firstsector(cdrom_drive_t *d);
-
-/*! Get last lsn of the last audio track. The last lsn is generally one
- less than the start of the next track after the audio track. -1 is
- returned on error. */
-extern lsn_t cdio_cddap_disc_lastsector(cdrom_drive_t *d);
-
-/*! Determine Endian-ness of the CD-drive based on reading data from
- it. Some drives return audio data Big Endian while some (most)
- return data Little Endian. Drives known to return data bigendian are
- SCSI drives from Kodak, Ricoh, HP, Philips, Plasmon, Grundig
- CDR100IPW, and Mitsumi CD-R. ATAPI and MMC drives are little endian.
-
- rocky: As someone who didn't write the code, I have to say this is
- nothing less than brilliant. An FFT is done both ways and the the
- transform is looked at to see which has data in the FFT (or audible)
- portion. (Or so that's how I understand it.)
-
- @return 1 if big-endian, 0 if little-endian, -1 if we couldn't
- figure things out or some error.
- */
-extern int data_bigendianp(cdrom_drive_t *d);
-
-/** transport errors: */
-
-typedef enum {
- TR_OK = 0,
- TR_EWRITE = 1 /**< Error writing packet command (transport) */,
- TR_EREAD = 2 /**< Error reading packet data (transport) */,
- TR_UNDERRUN = 3 /**< Read underrun */,
- TR_OVERRUN = 4 /**< Read overrun */,
- TR_ILLEGAL = 5 /**< Illegal/rejected request */,
- TR_MEDIUM = 6 /**< Medium error */,
- TR_BUSY = 7 /**< Device busy */,
- TR_NOTREADY = 8 /**< Device not ready */,
- TR_FAULT = 9 /**< Device failure */,
- TR_UNKNOWN = 10 /**< Unspecified error */,
- TR_STREAMING = 11 /**< loss of streaming */,
-} transport_error_t;
-
-
-#ifdef NEED_STRERROR_TR
-const char *strerror_tr[]={
- "Success",
- "Error writing packet command to device",
- "Error reading command from device",
- "SCSI packet data underrun (too little data)",
- "SCSI packet data overrun (too much data)",
- "Illegal SCSI request (rejected by target)",
- "Medium reading data from medium",
- "Device busy",
- "Device not ready",
- "Target hardware fault",
- "Unspecified error",
- "Drive lost streaming"
-};
-#endif /*NEED_STERROR_TR*/
-
-/** Errors returned by lib:
-
-\verbatim
-001: Unable to set CDROM to read audio mode
-002: Unable to read table of contents lead-out
-003: CDROM reporting illegal number of tracks
-004: Unable to read table of contents header
-005: Unable to read table of contents entry
-006: Could not read any data from drive
-007: Unknown, unrecoverable error reading data
-008: Unable to identify CDROM model
-009: CDROM reporting illegal table of contents
-010: Unaddressable sector
-
-100: Interface not supported
-101: Drive is neither a CDROM nor a WORM device
-102: Permision denied on cdrom (ioctl) device
-103: Permision denied on cdrom (data) device
-
-300: Kernel memory error
-
-400: Device not open
-401: Invalid track number
-402: Track not audio data
-403: No audio tracks on disc
-\endverbatim
-
-*/
-
-#ifndef DO_NOT_WANT_PARANOIA_COMPATIBILITY
-/** For compatibility with good ol' paranoia */
-#define cdda_find_a_cdrom cdio_cddap_find_a_cdrom
-#define cdda_identify cdio_cddap_identify
-#define cdda_speed_set cdio_cddap_speed_set
-#define cdda_verbose_set cdio_cddap_verbose_set
-#define cdda_messages cdio_cddap_messages
-#define cdda_errors cdio_cddap_errors
-#define cdda_close cdio_cddap_close
-#define cdda_open cdio_cddap_open
-#define cdda_read cdio_cddap_read
-#define cdda_track_firstsector cdio_cddap_track_firstsector
-#define cdda_track_lastsector cdio_cddap_track_lastsector
-#define cdda_tracks cdio_cddap_tracks
-#define cdda_sector_gettrack cdio_cddap_sector_gettrack
-#define cdda_track_channels cdio_cddap_track_channels
-#define cdda_track_audiop cdio_cddap_track_audiop
-#define cdda_track_copyp cdio_cddap_track_copyp
-#define cdda_track_preemp cdio_cddap_track_preemp
-#define cdda_disc_firstsector cdio_cddap_disc_firstsector
-#define cdda_disc_lastsector cdio_cddap_disc_lastsector
-#define cdrom_drive cdrom_drive_t
-
-#endif /*DO_NOT_WANT_PARANOIA_COMPATIBILITY*/
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-/** The below variables are trickery to force the above enum symbol
- values to be recorded in debug symbol tables. They are used to
- allow one to refer to the enumeration value names in the typedefs
- above in a debugger and debugger expressions
-*/
-
-extern paranoia_jitter_t debug_paranoia_jitter;
-extern paranoia_cdda_enums_t debug_paranoia_cdda_enums;
-
-#endif /*_CDDA_INTERFACE_H_*/
-
diff --git a/include/cdio/cdtext.h b/include/cdio/cdtext.h
index 1fda0eaa..5e99e2f8 100644
--- a/include/cdio/cdtext.h
+++ b/include/cdio/cdtext.h
@@ -1,7 +1,5 @@
/*
- $Id: cdtext.h,v 1.14 2008/03/25 15:59:08 karl Exp $
-
- Copyright (C) 2004, 2005, 2008 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2004, 2005, 2008, 2012 Rocky Bernstein <rocky@gnu.org>
adapted from cuetools
Copyright (C) 2003 Svend Sanjay Sorensen <ssorensen@fastmail.fm>
@@ -26,8 +24,8 @@
*/
-#ifndef __CDIO_CDTEXT_H__
-#define __CDIO_CDTEXT_H__
+#ifndef CDIO_CDTEXT_H_
+#define CDIO_CDTEXT_H_
#include <cdio/types.h>
@@ -305,7 +303,7 @@ void cdtext_set (cdtext_t *p_cdtext, cdtext_field_t key, const uint8_t *value, t
}
#endif /* __cplusplus */
-#endif /* __CDIO_CDTEXT_H__ */
+#endif /* CDIO_CDTEXT_H_ */
/*
* Local variables:
diff --git a/include/cdio/device.h b/include/cdio/device.h
index 4719d836..97c8a4e0 100644
--- a/include/cdio/device.h
+++ b/include/cdio/device.h
@@ -23,8 +23,8 @@
* \brief C header for driver- or device-related libcdio
* calls. ("device" includes CD-image reading devices).
*/
-#ifndef __CDIO_DEVICE_H__
-#define __CDIO_DEVICE_H__
+#ifndef CDIO_DEVICE_H_
+#define CDIO_DEVICE_H_
#ifdef __cplusplus
extern "C" {
@@ -47,13 +47,13 @@ extern "C" {
typedef enum {
CDIO_DRIVE_CAP_ERROR = 0x40000, /**< Error */
CDIO_DRIVE_CAP_UNKNOWN = 0x80000, /**< Dunno. It can be on if we
- have only partial information
+ have only partial information
or are not completely certain
- */
+ */
CDIO_DRIVE_CAP_MISC_CLOSE_TRAY = 0x00001, /**< caddy systems can't
close... */
CDIO_DRIVE_CAP_MISC_EJECT = 0x00002, /**< but can eject. */
- CDIO_DRIVE_CAP_MISC_LOCK = 0x00004, /**< disable manual eject */
+ CDIO_DRIVE_CAP_MISC_LOCK = 0x00004, /**< disable manual eject */
CDIO_DRIVE_CAP_MISC_SELECT_SPEED = 0x00008, /**< programmable speed */
CDIO_DRIVE_CAP_MISC_SELECT_DISC = 0x00010, /**< select disc from
juke-box */
@@ -61,7 +61,7 @@ extern "C" {
CDIO_DRIVE_CAP_MISC_MEDIA_CHANGED= 0x00080, /**< media changed */
CDIO_DRIVE_CAP_MISC_RESET = 0x00100, /**< hard reset device */
CDIO_DRIVE_CAP_MISC_FILE = 0x20000 /**< drive is really a file,
- i.e a CD file image */
+ i.e a CD file image */
} cdio_drive_cap_misc_t;
/** Reading masks.. */
@@ -151,7 +151,7 @@ extern "C" {
*/
typedef enum {
DRIVER_UNKNOWN, /**< Used as input when we don't care what kind
- of driver to use. */
+ of driver to use. */
DRIVER_AIX, /**< AIX driver */
DRIVER_BSDI, /**< BSDI driver */
DRIVER_FREEBSD, /**< FreeBSD driver - includes CAM and ioctl access */
@@ -161,13 +161,13 @@ extern "C" {
DRIVER_OS2, /**< IBM OS/2 Driver */
DRIVER_OSX, /**< Apple OSX Driver */
DRIVER_WIN32, /**< Microsoft Windows Driver. Includes ASPI and
- ioctl access. */
+ ioctl access. */
DRIVER_CDRDAO, /**< cdrdao format CD image. This is listed
- before BIN/CUE, to make the code prefer cdrdao
- over BIN/CUE when both exist. */
+ before BIN/CUE, to make the code prefer cdrdao
+ over BIN/CUE when both exist. */
DRIVER_BINCUE, /**< CDRWIN BIN/CUE format CD image. This is
- listed before NRG, to make the code prefer
- BIN/CUE over NRG when both exist. */
+ listed before NRG, to make the code prefer
+ BIN/CUE over NRG when both exist. */
DRIVER_NRG, /**< Nero NRG format CD image. */
DRIVER_DEVICE /**< Is really a set of the above; should come last */
} driver_id_t;
@@ -219,30 +219,30 @@ LIBCDIO_DEPRECATED(static const driver_id_t CDIO_MAX_DEVICE_DRIVER, "please use
*/
typedef enum {
DRIVER_OP_SUCCESS = 0, /**< in cases where an int is
- returned, like cdio_set_speed,
- more the negative return codes are
- for errors and the positive ones
- for success. */
+ returned, like cdio_set_speed,
+ more the negative return codes are
+ for errors and the positive ones
+ for success. */
DRIVER_OP_ERROR = -1, /**< operation returned an error */
DRIVER_OP_UNSUPPORTED = -2, /**< returned when a particular driver
- doesn't support a particular operation.
- For example an image driver which doesn't
- really "eject" a CD.
- */
+ doesn't support a particular operation.
+ For example an image driver which doesn't
+ really "eject" a CD.
+ */
DRIVER_OP_UNINIT = -3, /**< returned when a particular driver
- hasn't been initialized or a null
- pointer has been passed.
- */
+ hasn't been initialized or a null
+ pointer has been passed.
+ */
DRIVER_OP_NOT_PERMITTED = -4, /**< Operation not permitted.
- For example might be a permission
- problem.
- */
+ For example might be a permission
+ problem.
+ */
DRIVER_OP_BAD_PARAMETER = -5, /**< Bad parameter passed */
DRIVER_OP_BAD_POINTER = -6, /**< Bad pointer to memory area */
DRIVER_OP_NO_DRIVER = -7, /**< Operation called on a driver
- not available on this OS */
+ not available on this OS */
DRIVER_OP_MMC_SENSE_DATA = -8, /**< MMC operation returned sense data,
- but no other error above recorded. */
+ but no other error above recorded. */
} driver_return_code_t;
/**
@@ -255,7 +255,7 @@ LIBCDIO_DEPRECATED(static const driver_id_t CDIO_MAX_DEVICE_DRIVER, "please use
report back the driver used.
*/
driver_return_code_t cdio_close_tray (const char *psz_drive,
- /*in/out*/ driver_id_t *p_driver_id);
+ /*in/out*/ driver_id_t *p_driver_id);
/**
@param drc the return code you want interpreted.
@@ -365,7 +365,7 @@ LIBCDIO_DEPRECATED(static const driver_id_t CDIO_MAX_DEVICE_DRIVER, "please use
was found.
*/
char ** cdio_get_devices_with_cap (/*in*/ char *ppsz_search_devices[],
- cdio_fs_anal_t capabilities, bool b_any);
+ cdio_fs_anal_t capabilities, bool b_any);
/**
Like cdio_get_devices_with_cap but we return the driver we found
@@ -374,9 +374,9 @@ LIBCDIO_DEPRECATED(static const driver_id_t CDIO_MAX_DEVICE_DRIVER, "please use
and speeds things up for libcdio as well.
*/
char ** cdio_get_devices_with_cap_ret (/*in*/ char* ppsz_search_devices[],
- cdio_fs_anal_t capabilities,
- bool b_any,
- /*out*/ driver_id_t *p_driver_id);
+ cdio_fs_anal_t capabilities,
+ bool b_any,
+ /*out*/ driver_id_t *p_driver_id);
/**
Like cdio_get_devices, but we may change the p_driver_id if we
@@ -401,9 +401,9 @@ LIBCDIO_DEPRECATED(static const driver_id_t CDIO_MAX_DEVICE_DRIVER, "please use
NULL even though there isa hardware CD-ROM.
*/
void cdio_get_drive_cap (const CdIo_t *p_cdio,
- cdio_drive_read_cap_t *p_read_cap,
- cdio_drive_write_cap_t *p_write_cap,
- cdio_drive_misc_cap_t *p_misc_cap);
+ cdio_drive_read_cap_t *p_read_cap,
+ cdio_drive_write_cap_t *p_write_cap,
+ cdio_drive_misc_cap_t *p_misc_cap);
/**
Get the drive capabilities for a specified device.
@@ -415,9 +415,9 @@ LIBCDIO_DEPRECATED(static const driver_id_t CDIO_MAX_DEVICE_DRIVER, "please use
NULL even though there isa hardware CD-ROM.
*/
void cdio_get_drive_cap_dev (const char *device,
- cdio_drive_read_cap_t *p_read_cap,
- cdio_drive_write_cap_t *p_write_cap,
- cdio_drive_misc_cap_t *p_misc_cap);
+ cdio_drive_read_cap_t *p_read_cap,
+ cdio_drive_write_cap_t *p_write_cap,
+ cdio_drive_misc_cap_t *p_misc_cap);
/**
Get a string containing the name of the driver in use.
@@ -441,7 +441,7 @@ LIBCDIO_DEPRECATED(static const driver_id_t CDIO_MAX_DEVICE_DRIVER, "please use
False is returned if we had an error getting the information.
*/
bool cdio_get_hwinfo ( const CdIo_t *p_cdio,
- /*out*/ cdio_hwinfo_t *p_hw_info );
+ /*out*/ cdio_hwinfo_t *p_hw_info );
/**
@@ -452,7 +452,7 @@ LIBCDIO_DEPRECATED(static const driver_id_t CDIO_MAX_DEVICE_DRIVER, "please use
@param i_last_session pointer to the session number to be returned.
*/
driver_return_code_t cdio_get_last_session (CdIo_t *p_cdio,
- /*out*/ lsn_t *i_last_session);
+ /*out*/ lsn_t *i_last_session);
/**
Find out if media has changed since the last call.
@@ -508,7 +508,7 @@ LIBCDIO_DEPRECATED(static const driver_id_t CDIO_MAX_DEVICE_DRIVER, "please use
@return the cdio object or NULL on error or no device.
*/
CdIo_t * cdio_open_am (const char *psz_source,
- driver_id_t driver_id, const char *psz_access_mode);
+ driver_id_t driver_id, const char *psz_access_mode);
/**
Set up BIN/CUE CD disk-image for reading. Source is the .bin or
@@ -525,7 +525,7 @@ LIBCDIO_DEPRECATED(static const driver_id_t CDIO_MAX_DEVICE_DRIVER, "please use
@return the cdio object or NULL on error or no device..
*/
CdIo_t * cdio_open_am_bincue (const char *psz_cue_name,
- const char *psz_access_mode);
+ const char *psz_access_mode);
/**
Set up cdrdao CD disk-image for reading. Source is the .toc file
@@ -540,7 +540,7 @@ LIBCDIO_DEPRECATED(static const driver_id_t CDIO_MAX_DEVICE_DRIVER, "please use
@return the cdio object or NULL on error or no device..
*/
CdIo_t * cdio_open_am_cdrdao (const char *psz_toc_name,
- const char *psz_access_mode);
+ const char *psz_access_mode);
/**
Return a string containing the default CUE file that would
@@ -578,7 +578,7 @@ LIBCDIO_DEPRECATED(static const driver_id_t CDIO_MAX_DEVICE_DRIVER, "please use
NULL on error or there is no driver for a some sort of hardware CD-ROM.
*/
CdIo_t * cdio_open_am_cd (const char *psz_device,
- const char *psz_access_mode);
+ const char *psz_access_mode);
/**
CDRWIN BIN/CUE CD disc-image routines. Source is the .cue file
@@ -598,7 +598,7 @@ LIBCDIO_DEPRECATED(static const driver_id_t CDIO_MAX_DEVICE_DRIVER, "please use
@see cdio_open
*/
CdIo_t * cdio_open_am_aix (const char *psz_source,
- const char *psz_access_mode);
+ const char *psz_access_mode);
/**
Set up CD-ROM for reading using the AIX driver. The device_name is
@@ -654,7 +654,7 @@ LIBCDIO_DEPRECATED(static const driver_id_t CDIO_MAX_DEVICE_DRIVER, "please use
@see cdio_open
*/
CdIo_t * cdio_open_am_bsdi (const char *psz_source,
- const char *psz_access_mode);
+ const char *psz_access_mode);
/**
Return a string containing the default device name that the BSDI
@@ -696,7 +696,7 @@ LIBCDIO_DEPRECATED(static const driver_id_t CDIO_MAX_DEVICE_DRIVER, "please use
@see cdio_open_cd, cdio_open
*/
CdIo_t * cdio_open_am_freebsd (const char *psz_source,
- const char *psz_access_mode);
+ const char *psz_access_mode);
/**
Return a string containing the default device name that the
@@ -733,7 +733,7 @@ LIBCDIO_DEPRECATED(static const driver_id_t CDIO_MAX_DEVICE_DRIVER, "please use
NULL on error or there is no GNU/Linux driver.
*/
CdIo_t * cdio_open_am_linux (const char *psz_source,
- const char *access_mode);
+ const char *access_mode);
/**
Return a string containing the default device name that the
@@ -773,7 +773,7 @@ LIBCDIO_DEPRECATED(static const driver_id_t CDIO_MAX_DEVICE_DRIVER, "please use
NULL on error or there is no Solaris driver.
*/
CdIo_t * cdio_open_am_solaris (const char *psz_source,
- const char *psz_access_mode);
+ const char *psz_access_mode);
/**
Return a string containing the default device name that the
@@ -819,7 +819,7 @@ LIBCDIO_DEPRECATED(static const driver_id_t CDIO_MAX_DEVICE_DRIVER, "please use
@see cdio_open_cd, cdio_open
*/
CdIo_t * cdio_open_am_osx (const char *psz_source,
- const char *psz_access_mode);
+ const char *psz_access_mode);
/**
Return a string containing the default device name that the OSX
@@ -855,7 +855,7 @@ LIBCDIO_DEPRECATED(static const driver_id_t CDIO_MAX_DEVICE_DRIVER, "please use
NULL is returned on error or there is no Microsof Windows driver.
*/
CdIo_t * cdio_open_am_win32 (const char *psz_source,
- const char *psz_access_mode);
+ const char *psz_access_mode);
/**
Return a string containing the default device name that the
@@ -929,7 +929,7 @@ Return a list of all of the CD-ROM devices that the OS/2 driver
@return true on success; NULL on error or there is no Nero driver.
*/
CdIo_t * cdio_open_am_nrg (const char *psz_source,
- const char *psz_access_mode);
+ const char *psz_access_mode);
/**
Get a string containing the default device name that the NRG
@@ -994,7 +994,7 @@ Return a list of all of the CD-ROM devices that the OS/2 driver
Set the blocksize for subsequent reads.
*/
driver_return_code_t cdio_set_blocksize ( const CdIo_t *p_cdio,
- int i_blocksize );
+ int i_blocksize );
/**
Set the drive speed.
@@ -1013,7 +1013,7 @@ Return a list of all of the CD-ROM devices that the OS/2 driver
@see mmc_set_speed and mmc_set_drive_speed
*/
driver_return_code_t cdio_set_speed ( const CdIo_t *p_cdio,
- int i_drive_speed );
+ int i_drive_speed );
/**
Get the value associatied with key.
@@ -1033,7 +1033,7 @@ Return a list of all of the CD-ROM devices that the OS/2 driver
@param value the value to assocaiate with key
*/
driver_return_code_t cdio_set_arg (CdIo_t *p_cdio, const char key[],
- const char value[]);
+ const char value[]);
/**
Initialize CD Reading and control routines. Should be called first.
@@ -1055,4 +1055,4 @@ extern cdio_drive_cap_write_t debug_drive_cap_write_t;
extern cdio_mmc_hw_len_t debug_cdio_mmc_hw_len;
extern cdio_src_category_mask_t debug_cdio_src_category_mask;
-#endif /* __CDIO_DEVICE_H__ */
+#endif /* CDIO_DEVICE_H_ */
diff --git a/include/cdio/disc.h b/include/cdio/disc.h
index 3e51cb80..f758111c 100644
--- a/include/cdio/disc.h
+++ b/include/cdio/disc.h
@@ -1,6 +1,6 @@
/* -*- c -*-
- Copyright (C) 2004, 2005, 2006, 2008, 2010 Rocky Bernstein
+ Copyright (C) 2004, 2005, 2006, 2008, 2010, 2012 Rocky Bernstein
<rocky@gnu.org>
This program is free software: you can redistribute it and/or modify
@@ -21,8 +21,8 @@
\file disc.h
\brief The top-level header for disc-related libcdio calls.
*/
-#ifndef __CDIO_DISC_H__
-#define __CDIO_DISC_H__
+#ifndef CDIO_DISC_H_
+#define CDIO_DISC_H_
#ifdef __cplusplus
extern "C" {
@@ -34,10 +34,10 @@ extern "C" {
GNU/Linux /usr/include/linux/cdrom.h and we've added DVD.
*/
typedef enum {
- CDIO_DISC_MODE_CD_DA, /**< CD-DA */
- CDIO_DISC_MODE_CD_DATA, /**< CD-ROM form 1 */
- CDIO_DISC_MODE_CD_XA, /**< CD-ROM XA form2 */
- CDIO_DISC_MODE_CD_MIXED, /**< Some combo of above. */
+ CDIO_DISC_MODE_CD_DA, /**< CD-DA */
+ CDIO_DISC_MODE_CD_DATA, /**< CD-ROM form 1 */
+ CDIO_DISC_MODE_CD_XA, /**< CD-ROM XA form2 */
+ CDIO_DISC_MODE_CD_MIXED, /**< Some combo of above. */
CDIO_DISC_MODE_DVD_ROM, /**< DVD ROM (e.g. movies) */
CDIO_DISC_MODE_DVD_RAM, /**< DVD-RAM */
CDIO_DISC_MODE_DVD_R, /**< DVD-R */
@@ -52,7 +52,7 @@ extern "C" {
CDIO_DISC_MODE_DVD_OTHER, /**< Unknown/unclassified DVD type */
CDIO_DISC_MODE_NO_INFO,
CDIO_DISC_MODE_ERROR,
- CDIO_DISC_MODE_CD_I /**< CD-i. */
+ CDIO_DISC_MODE_CD_I /**< CD-i. */
} discmode_t;
extern const char *discmode2str[];
@@ -134,4 +134,4 @@ extern "C" {
}
#endif /* __cplusplus */
-#endif /* __CDIO_DISC_H__ */
+#endif /* CDIO_DISC_H_ */
diff --git a/include/cdio/ds.h b/include/cdio/ds.h
index 447e30df..6662c58a 100644
--- a/include/cdio/ds.h
+++ b/include/cdio/ds.h
@@ -26,8 +26,8 @@
*/
-#ifndef __CDIO_DS_H__
-#define __CDIO_DS_H__
+#ifndef CDIO_DS_H_
+#define CDIO_DS_H_
#include <cdio/types.h>
@@ -86,7 +86,7 @@ void *_cdio_list_node_data (CdioListNode_t *p_node);
}
#endif /* __cplusplus */
-#endif /* __CDIO_DS_H__ */
+#endif /* CDIO_DS_H_ */
/*
* Local variables:
diff --git a/include/cdio/dvd.h b/include/cdio/dvd.h
index 8bb83e12..9d3f3389 100644
--- a/include/cdio/dvd.h
+++ b/include/cdio/dvd.h
@@ -27,35 +27,40 @@
*/
-#ifndef __CDIO_DVD_H__
-#define __CDIO_DVD_H__
+#ifndef CDIO_DVD_H_
+#define CDIO_DVD_H_
#include <cdio/types.h>
/**
Values used in a READ DVD STRUCTURE
*/
-
-#define CDIO_DVD_STRUCT_PHYSICAL 0x00
-#define CDIO_DVD_STRUCT_COPYRIGHT 0x01
-#define CDIO_DVD_STRUCT_DISCKEY 0x02
-#define CDIO_DVD_STRUCT_BCA 0x03
-#define CDIO_DVD_STRUCT_MANUFACT 0x04
+typedef enum cdio_dvd_structure
+{
+ CDIO_DVD_STRUCT_PHYSICAL = 0x00,
+ CDIO_DVD_STRUCT_COPYRIGHT = 0x01,
+ CDIO_DVD_STRUCT_DISCKEY = 0x02,
+ CDIO_DVD_STRUCT_BCA = 0x03,
+ CDIO_DVD_STRUCT_MANUFACT = 0x04
+} cdio_dvd_structure;
/**
Media definitions for "DVD Book" from MMC-5 Table 400, page 419.
*/
-#define CDIO_DVD_BOOK_DVD_ROM 0x0 /**< DVD-ROM */
-#define CDIO_DVD_BOOK_DVD_RAM 0x1 /**< DVD-RAM */
-#define CDIO_DVD_BOOK_DVD_R 0x2 /**< DVD-R */
-#define CDIO_DVD_BOOK_DVD_RW 0x3 /**< DVD-RW */
-#define CDIO_DVD_BOOK_HD_DVD_ROM 0x4 /**< HD DVD-ROM */
-#define CDIO_DVD_BOOK_HD_DVD_RAM 0x5 /**< HD DVD-RAM */
-#define CDIO_DVD_BOOK_HD_DVD_R 0x6 /**< HD DVD-R */
-#define CDIO_DVD_BOOK_DVD_PRW 0x9 /**< DVD+RW */
-#define CDIO_DVD_BOOK_DVD_PR 0xa /**< DVD+R */
-#define CDIO_DVD_BOOK_DVD_PRW_DL 0xd /**< DVD+RW DL */
-#define CDIO_DVD_BOOK_DVD_PR_DL 0xe /**< DVD+R DL */
+typedef enum cdio_dvd_book
+{
+ CDIO_DVD_BOOK_DVD_ROM = 0x0, /**< DVD-ROM */
+ CDIO_DVD_BOOK_DVD_RAM = 0x1, /**< DVD-RAM */
+ CDIO_DVD_BOOK_DVD_R = 0x2, /**< DVD-R */
+ CDIO_DVD_BOOK_DVD_RW = 0x3, /**< DVD-RW */
+ CDIO_DVD_BOOK_HD_DVD_ROM = 0x4, /**< HD DVD-ROM */
+ CDIO_DVD_BOOK_HD_DVD_RAM = 0x5, /**< HD DVD-RAM */
+ CDIO_DVD_BOOK_HD_DVD_R = 0x6, /**< HD DVD-R */
+ CDIO_DVD_BOOK_DVD_PRW = 0x9, /**< DVD+RW */
+ CDIO_DVD_BOOK_DVD_PR = 0xa, /**< DVD+R */
+ CDIO_DVD_BOOK_DVD_PRW_DL = 0xd, /**< DVD+RW DL */
+ CDIO_DVD_BOOK_DVD_PR_DL = 0xe /**< DVD+R DL */
+} cdio_dvd_book;
typedef struct cdio_dvd_layer {
unsigned int book_version : 4;
@@ -124,4 +129,4 @@ typedef union {
cdio_dvd_manufact_t manufact;
} cdio_dvd_struct_t;
-#endif /* __CDIO_DVD_H__ */
+#endif /* CDIO_DVD_H_ */
diff --git a/include/cdio/ecma_167.h b/include/cdio/ecma_167.h
index d6cb2c8f..81a12209 100644
--- a/include/cdio/ecma_167.h
+++ b/include/cdio/ecma_167.h
@@ -49,8 +49,8 @@
* See http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-167.pdf
*/
-#ifndef _ECMA_167_H
-#define _ECMA_167_H 1
+#ifndef CDIO_ECMA_167_H
+#define CDIO_ECMA_167_H 1
#include <cdio/types.h>
@@ -59,11 +59,11 @@
distinct values of an enum.
*/
typedef enum {
- VSD_STD_ID_SIZE = 5, /** Volume Structure Descriptor (ECMA 167r3
- 2/9.1) */
- UDF_REGID_ID_SIZE = 23, /**< See identifier (ECMA 167r3 1/7.4) */
+ VSD_STD_ID_SIZE = 5, /** Volume Structure Descriptor (ECMA 167r3
+ 2/9.1) */
+ UDF_REGID_ID_SIZE = 23, /**< See identifier (ECMA 167r3 1/7.4) */
UDF_VOLID_SIZE = 32,
- UDF_FID_SIZE = 38,
+ UDF_FID_SIZE = 38,
UDF_VOLSET_ID_SIZE = 128
} ecma_167_enum1_t ;
@@ -79,38 +79,38 @@ typedef enum {
TAGID_UNALLOC_SPACE = 0x0007,
TAGID_TERM = 0x0008,
TAGID_LOGVOL_INTEGRITY = 0x0009,
- TAGID_FSD = 0x0100,
- TAGID_FID = 0x0101,
- TAGID_AED = 0x0102,
- TAGID_IE = 0x0103,
- TAGID_TE = 0x0104,
- TAGID_FILE_ENTRY = 0x0105,
- TAGID_EAHD = 0x0106,
- TAGID_USE = 0x0107,
- TAGID_SBD = 0x0108,
- TAGID_PIE = 0x0109,
- TAGID_EFE = 0x010A,
+ TAGID_FSD = 0x0100,
+ TAGID_FID = 0x0101,
+ TAGID_AED = 0x0102,
+ TAGID_IE = 0x0103,
+ TAGID_TE = 0x0104,
+ TAGID_FILE_ENTRY = 0x0105,
+ TAGID_EAHD = 0x0106,
+ TAGID_USE = 0x0107,
+ TAGID_SBD = 0x0108,
+ TAGID_PIE = 0x0109,
+ TAGID_EFE = 0x010A,
} tag_id_t ;
/** Character Set Type (ECMA 167r3 1/7.2.1.1) */
typedef enum {
- CHARSPEC_TYPE_CS0 = 0x00, /**< Section 1/7.2.2 */
- CHARSPEC_TYPE_CS1 = 0x01, /**< Section 1/7.2.3 */
- CHARSPEC_TYPE_CS2 = 0x02, /**< Section 1/7.2.4 */
- CHARSPEC_TYPE_CS3 = 0x03, /**< Section 1/7.2.5 */
- CHARSPEC_TYPE_CS4 = 0x04, /**< Section 1/7.2.6 */
- CHARSPEC_TYPE_CS5 = 0x05, /**< Section 1/7.2.7 */
- CHARSPEC_TYPE_CS6 = 0x06, /**< Section 1/7.2.8 */
- CHARSPEC_TYPE_CS7 = 0x07, /**< Section 1/7.2.9 */
-
- CHARSPEC_TYPE_CS8 = 0x08, /**< Section 1/7.2.10 */
+ CHARSPEC_TYPE_CS0 = 0x00, /**< Section 1/7.2.2 */
+ CHARSPEC_TYPE_CS1 = 0x01, /**< Section 1/7.2.3 */
+ CHARSPEC_TYPE_CS2 = 0x02, /**< Section 1/7.2.4 */
+ CHARSPEC_TYPE_CS3 = 0x03, /**< Section 1/7.2.5 */
+ CHARSPEC_TYPE_CS4 = 0x04, /**< Section 1/7.2.6 */
+ CHARSPEC_TYPE_CS5 = 0x05, /**< Section 1/7.2.7 */
+ CHARSPEC_TYPE_CS6 = 0x06, /**< Section 1/7.2.8 */
+ CHARSPEC_TYPE_CS7 = 0x07, /**< Section 1/7.2.9 */
+
+ CHARSPEC_TYPE_CS8 = 0x08, /**< Section 1/7.2.10 */
} udf_charspec_enum_t;
typedef uint8_t udf_Uint8_t; /*! Section 1/7/1.1 */
typedef uint16_t udf_Uint16_t; /*! Section 1/7.1.3 */
typedef uint32_t udf_Uint32_t; /*! Section 1/7.1.5 */
typedef uint64_t udf_Uint64_t; /*! Section 1/7.1.7 */
-typedef char udf_dstring; /*! Section 1/7.1.12 */
+typedef char udf_dstring; /*! Section 1/7.1.12 */
#define UDF_LENGTH_MASK 0x3fffffff
@@ -119,8 +119,8 @@ PRAGMA_BEGIN_PACKED
/** Character set specification (ECMA 167r3 1/7.2.1) */
struct udf_charspec_s
{
- udf_Uint8_t charset_type;
- udf_Uint8_t charset_info[63];
+ udf_Uint8_t charset_type;
+ udf_Uint8_t charset_info[63];
} GNUC_PACKED;
typedef struct udf_charspec_s udf_charspec_t;
@@ -128,16 +128,16 @@ typedef struct udf_charspec_s udf_charspec_t;
/** Timestamp (ECMA 167r3 1/7.3) */
struct udf_timestamp_s
{
- udf_Uint16_t type_tz;
- udf_Uint16_t year;
- udf_Uint8_t month;
- udf_Uint8_t day;
- udf_Uint8_t hour;
- udf_Uint8_t minute;
- udf_Uint8_t second;
- udf_Uint8_t centiseconds;
- udf_Uint8_t hundreds_of_microseconds;
- udf_Uint8_t microseconds;
+ udf_Uint16_t type_tz;
+ udf_Uint16_t year;
+ udf_Uint8_t month;
+ udf_Uint8_t day;
+ udf_Uint8_t hour;
+ udf_Uint8_t minute;
+ udf_Uint8_t second;
+ udf_Uint8_t centiseconds;
+ udf_Uint8_t hundreds_of_microseconds;
+ udf_Uint8_t microseconds;
} GNUC_PACKED;
typedef struct udf_timestamp_s udf_timestamp_t;
@@ -148,19 +148,19 @@ typedef struct udf_timestamp_s udf_timestamp_t;
distinct values of an enum.
*/
typedef enum {
- TIMESTAMP_TYPE_CUT = 0x0000,
- TIMESTAMP_TYPE_LOCAL = 0x1000,
- TIMESTAMP_TYPE_AGREEMENT = 0x2000,
+ TIMESTAMP_TYPE_CUT = 0x0000,
+ TIMESTAMP_TYPE_LOCAL = 0x1000,
+ TIMESTAMP_TYPE_AGREEMENT = 0x2000,
TIMESTAMP_TYPE_MASK = 0xF000,
- TIMESTAMP_TIMEZONE_MASK = 0x0FFF,
+ TIMESTAMP_TIMEZONE_MASK = 0x0FFF,
} ecma_167_timezone_enum_t ;
-#define TIMESTAMP_TYPE_MASK 0xF000
-#define TIMESTAMP_TYPE_CUT 0x0000
-#define TIMESTAMP_TYPE_LOCAL 0x1000
-#define TIMESTAMP_TYPE_AGREEMENT 0x2000
-#define TIMESTAMP_TIMEZONE_MASK 0x0FFF
+#define TIMESTAMP_TYPE_MASK 0xF000
+#define TIMESTAMP_TYPE_CUT 0x0000
+#define TIMESTAMP_TYPE_LOCAL 0x1000
+#define TIMESTAMP_TYPE_AGREEMENT 0x2000
+#define TIMESTAMP_TIMEZONE_MASK 0x0FFF
struct udf_id_suffix_s
{
@@ -175,28 +175,28 @@ typedef struct udf_id_suffix_s udf_id_suffix_t;
/** Entity identifier (ECMA 167r3 1/7.4) */
struct udf_regid_s
{
- udf_Uint8_t flags;
- udf_Uint8_t id[UDF_REGID_ID_SIZE];
- udf_id_suffix_t id_suffix;
+ udf_Uint8_t flags;
+ udf_Uint8_t id[UDF_REGID_ID_SIZE];
+ udf_id_suffix_t id_suffix;
} GNUC_PACKED;
typedef struct udf_regid_s udf_regid_t;
/** Flags (ECMA 167r3 1/7.4.1) */
-#define ENTITYID_FLAGS_DIRTY 0x00
-#define ENTITYID_FLAGS_PROTECTED 0x01
+#define ENTITYID_FLAGS_DIRTY 0x00
+#define ENTITYID_FLAGS_PROTECTED 0x01
/** Volume Structure Descriptor (ECMA 167r3 2/9.1) */
struct vol_struct_desc_s
{
- udf_Uint8_t struct_type;
- udf_Uint8_t std_id[VSD_STD_ID_SIZE];
- udf_Uint8_t struct_version;
- udf_Uint8_t struct_data[2041];
+ udf_Uint8_t struct_type;
+ udf_Uint8_t std_id[VSD_STD_ID_SIZE];
+ udf_Uint8_t struct_version;
+ udf_Uint8_t struct_data[2041];
} GNUC_PACKED;
/** Standard Identifier (EMCA 167r2 2/9.1.2) */
-#define VSD_STD_ID_NSR02 "NSR02" /* (3/9.1) */
+#define VSD_STD_ID_NSR02 "NSR02" /* (3/9.1) */
/** Standard Identifier (ECMA 167r3 2/9.1.2) */
@@ -209,60 +209,60 @@ extern const char VSD_STD_ID_CDW01[sizeof("CDW02")-1];
extern const char VSD_STD_ID_NSR03[sizeof("NSR03")-1];
extern const char VSD_STD_ID_TEA01[sizeof("TEA01")-1];
-#define VSD_STD_ID_BEA01 "BEA01" /**< ECMA-167 2/9.2 */
-#define VSD_STD_ID_BOOT2 "BOOT2" /**< ECMA-167 2/9.4 */
-#define VSD_STD_ID_CD001 "CD001" /**< ECMA-119 */
-#define VSD_STD_ID_CDW02 "CDW02" /**< ECMA-168 */
+#define VSD_STD_ID_BEA01 "BEA01" /**< ECMA-167 2/9.2 */
+#define VSD_STD_ID_BOOT2 "BOOT2" /**< ECMA-167 2/9.4 */
+#define VSD_STD_ID_CD001 "CD001" /**< ECMA-119 */
+#define VSD_STD_ID_CDW02 "CDW02" /**< ECMA-168 */
#define VSD_STD_ID_NSR02 "NSR02" /**< ECMA-167, 3/9.1
- NOTE: ECMA-167, 2nd edition */
-#define VSD_STD_ID_NSR03 "NSR03" /**< ECMA-167 3/9.1 */
-#define VSD_STD_ID_TEA01 "TEA01" /**< ECMA-168 2/9.3 */
+ NOTE: ECMA-167, 2nd edition */
+#define VSD_STD_ID_NSR03 "NSR03" /**< ECMA-167 3/9.1 */
+#define VSD_STD_ID_TEA01 "TEA01" /**< ECMA-168 2/9.3 */
/** Beginning Extended Area Descriptor (ECMA 167r3 2/9.2) */
struct beginning_extended_area_desc_s
{
- udf_Uint8_t struct_type;
- udf_Uint8_t std_id[VSD_STD_ID_SIZE];
- udf_Uint8_t struct_version;
- udf_Uint8_t struct_data[2041];
+ udf_Uint8_t struct_type;
+ udf_Uint8_t std_id[VSD_STD_ID_SIZE];
+ udf_Uint8_t struct_version;
+ udf_Uint8_t struct_data[2041];
} GNUC_PACKED;
/** Terminating Extended Area Descriptor (ECMA 167r3 2/9.3) */
struct terminating_extended_area_desc_s
{
- udf_Uint8_t struct_type;
- udf_Uint8_t std_id[VSD_STD_ID_SIZE];
- udf_Uint8_t struct_version;
- udf_Uint8_t struct_data[2041];
+ udf_Uint8_t struct_type;
+ udf_Uint8_t std_id[VSD_STD_ID_SIZE];
+ udf_Uint8_t struct_version;
+ udf_Uint8_t struct_data[2041];
} GNUC_PACKED;
/** Boot Descriptor (ECMA 167r3 2/9.4) */
struct boot_desc_s
{
- udf_Uint8_t struct_type;
- udf_Uint8_t std_ident[VSD_STD_ID_SIZE];
- udf_Uint8_t struct_version;
- udf_Uint8_t reserved1;
- udf_regid_t arch_type;
- udf_regid_t boot_ident;
- udf_Uint32_t bool_ext_location;
- udf_Uint32_t bool_ext_length;
- udf_Uint64_t load_address;
- udf_Uint64_t start_address;
- udf_timestamp_t desc_creation_time;
- udf_Uint16_t flags;
- udf_Uint8_t reserved2[32];
- udf_Uint8_t boot_use[1906];
+ udf_Uint8_t struct_type;
+ udf_Uint8_t std_ident[VSD_STD_ID_SIZE];
+ udf_Uint8_t struct_version;
+ udf_Uint8_t reserved1;
+ udf_regid_t arch_type;
+ udf_regid_t boot_ident;
+ udf_Uint32_t bool_ext_location;
+ udf_Uint32_t bool_ext_length;
+ udf_Uint64_t load_address;
+ udf_Uint64_t start_address;
+ udf_timestamp_t desc_creation_time;
+ udf_Uint16_t flags;
+ udf_Uint8_t reserved2[32];
+ udf_Uint8_t boot_use[1906];
} GNUC_PACKED;
/** Flags (ECMA 167r3 2/9.4.12) */
-#define BOOT_FLAGS_ERASE 0x01
+#define BOOT_FLAGS_ERASE 0x01
/** Extent Descriptor (ECMA 167r3 3/7.1) */
struct udf_extent_ad_s
{
- udf_Uint32_t len;
- udf_Uint32_t loc;
+ udf_Uint32_t len;
+ udf_Uint32_t loc;
} GNUC_PACKED;
typedef struct udf_extent_ad_s udf_extent_ad_t;
@@ -270,14 +270,14 @@ typedef struct udf_extent_ad_s udf_extent_ad_t;
/** Descriptor Tag (ECMA 167r3 3/7.2) */
struct udf_tag_s
{
- udf_Uint16_t id;
- udf_Uint16_t desc_version;
- udf_Uint8_t cksum;
- udf_Uint8_t reserved;
- udf_Uint16_t i_serial;
- udf_Uint16_t desc_CRC;
- udf_Uint16_t desc_CRC_len;
- udf_Uint32_t loc;
+ udf_Uint16_t id;
+ udf_Uint16_t desc_version;
+ udf_Uint8_t cksum;
+ udf_Uint8_t reserved;
+ udf_Uint16_t i_serial;
+ udf_Uint16_t desc_CRC;
+ udf_Uint16_t desc_CRC_len;
+ udf_Uint32_t loc;
} GNUC_PACKED;
typedef struct udf_tag_s udf_tag_t;
@@ -285,52 +285,52 @@ typedef struct udf_tag_s udf_tag_t;
/** NSR Descriptor (ECMA 167r3 3/9.1) */
struct NSR_desc_s
{
- udf_Uint8_t struct_type;
- udf_Uint8_t std_id[VSD_STD_ID_SIZE];
- udf_Uint8_t struct_version;
- udf_Uint8_t reserved;
- udf_Uint8_t struct_data[2040];
+ udf_Uint8_t struct_type;
+ udf_Uint8_t std_id[VSD_STD_ID_SIZE];
+ udf_Uint8_t struct_version;
+ udf_Uint8_t reserved;
+ udf_Uint8_t struct_data[2040];
} GNUC_PACKED;
/** Primary Volume Descriptor (ECMA 167r3 3/10.1) */
struct udf_pvd_s
{
- udf_tag_t tag;
- udf_Uint32_t vol_desc_seq_num;
- udf_Uint32_t primary_vol_desc_num;
- udf_dstring vol_ident[UDF_VOLID_SIZE];
- udf_Uint16_t vol_seq_num;
- udf_Uint16_t max_vol_seqnum;
- udf_Uint16_t interchange_lvl;
- udf_Uint16_t max_interchange_lvl;
- udf_Uint32_t charset_list;
- udf_Uint32_t max_charset_list;
- udf_dstring volset_id[UDF_VOLSET_ID_SIZE];
+ udf_tag_t tag;
+ udf_Uint32_t vol_desc_seq_num;
+ udf_Uint32_t primary_vol_desc_num;
+ udf_dstring vol_ident[UDF_VOLID_SIZE];
+ udf_Uint16_t vol_seq_num;
+ udf_Uint16_t max_vol_seqnum;
+ udf_Uint16_t interchange_lvl;
+ udf_Uint16_t max_interchange_lvl;
+ udf_Uint32_t charset_list;
+ udf_Uint32_t max_charset_list;
+ udf_dstring volset_id[UDF_VOLSET_ID_SIZE];
udf_charspec_t desc_charset;
udf_charspec_t explanatory_charset;
udf_extent_ad_t vol_abstract;
udf_extent_ad_t vol_copyright;
- udf_regid_t app_ident;
+ udf_regid_t app_ident;
udf_timestamp_t recording_time;
- udf_regid_t imp_ident;
- udf_Uint8_t imp_use[64];
- udf_Uint32_t predecessor_vol_desc_seq_location;
- udf_Uint16_t flags;
- udf_Uint8_t reserved[22];
+ udf_regid_t imp_ident;
+ udf_Uint8_t imp_use[64];
+ udf_Uint32_t predecessor_vol_desc_seq_location;
+ udf_Uint16_t flags;
+ udf_Uint8_t reserved[22];
} GNUC_PACKED;
typedef struct udf_pvd_s udf_pvd_t;
/** Flags (ECMA 167r3 3/10.1.21) */
-#define PVD_FLAGS_VSID_COMMON 0x0001
+#define PVD_FLAGS_VSID_COMMON 0x0001
/** Anchor Volume Descriptor Pointer (ECMA 167r3 3/10.2) */
struct anchor_vol_desc_ptr_s
{
- udf_tag_t tag;
+ udf_tag_t tag;
udf_extent_ad_t main_vol_desc_seq_ext;
udf_extent_ad_t reserve_vol_desc_seq_ext;
- udf_Uint8_t reserved[480];
+ udf_Uint8_t reserved[480];
} GNUC_PACKED;
typedef struct anchor_vol_desc_ptr_s anchor_vol_desc_ptr_t;
@@ -338,10 +338,10 @@ typedef struct anchor_vol_desc_ptr_s anchor_vol_desc_ptr_t;
/** Volume Descriptor Pointer (ECMA 167r3 3/10.3) */
struct vol_desc_ptr_s
{
- udf_tag_t tag;
- udf_Uint32_t vol_desc_seq_num;
+ udf_tag_t tag;
+ udf_Uint32_t vol_desc_seq_num;
udf_extent_ad_t next_vol_desc_set_ext;
- udf_Uint8_t reserved[484];
+ udf_Uint8_t reserved[484];
} GNUC_PACKED;
/** Implementation Use Volume Descriptor (ECMA 167r3 3/10.4) */
@@ -357,45 +357,45 @@ struct imp_use_vol_desc_s
struct partition_desc_s
{
udf_tag_t tag;
- udf_Uint32_t vol_desc_seq_num;
- udf_Uint16_t flags;
- udf_Uint16_t number; /**< Partition number */
- udf_regid_t contents;
- udf_Uint8_t contents_use[128];
- udf_Uint32_t access_type;
- udf_Uint32_t start_loc;
- udf_Uint32_t part_len;
- udf_regid_t imp_id;
- udf_Uint8_t imp_use[128];
- udf_Uint8_t reserved[156];
+ udf_Uint32_t vol_desc_seq_num;
+ udf_Uint16_t flags;
+ udf_Uint16_t number; /**< Partition number */
+ udf_regid_t contents;
+ udf_Uint8_t contents_use[128];
+ udf_Uint32_t access_type;
+ udf_Uint32_t start_loc;
+ udf_Uint32_t part_len;
+ udf_regid_t imp_id;
+ udf_Uint8_t imp_use[128];
+ udf_Uint8_t reserved[156];
} GNUC_PACKED;
typedef struct partition_desc_s partition_desc_t;
/** Partition Flags (ECMA 167r3 3/10.5.3) */
-#define PD_PARTITION_FLAGS_ALLOC 0x0001
+#define PD_PARTITION_FLAGS_ALLOC 0x0001
/** Partition Contents (ECMA 167r2 3/10.5.3) */
-#define PD_PARTITION_CONTENTS_NSR02 "+NSR02"
+#define PD_PARTITION_CONTENTS_NSR02 "+NSR02"
/** Partition Contents (ECMA 167r3 3/10.5.5) */
-#define PD_PARTITION_CONTENTS_FDC01 "+FDC01"
-#define PD_PARTITION_CONTENTS_CD001 "+CD001"
-#define PD_PARTITION_CONTENTS_CDW02 "+CDW02"
-#define PD_PARTITION_CONTENTS_NSR03 "+NSR03"
+#define PD_PARTITION_CONTENTS_FDC01 "+FDC01"
+#define PD_PARTITION_CONTENTS_CD001 "+CD001"
+#define PD_PARTITION_CONTENTS_CDW02 "+CDW02"
+#define PD_PARTITION_CONTENTS_NSR03 "+NSR03"
/** Access Type (ECMA 167r3 3/10.5.7) */
-#define PD_ACCESS_TYPE_NONE 0x00000000
-#define PD_ACCESS_TYPE_READ_ONLY 0x00000001
-#define PD_ACCESS_TYPE_WRITE_ONCE 0x00000002
-#define PD_ACCESS_TYPE_REWRITABLE 0x00000003
-#define PD_ACCESS_TYPE_OVERWRITABLE 0x00000004
+#define PD_ACCESS_TYPE_NONE 0x00000000
+#define PD_ACCESS_TYPE_READ_ONLY 0x00000001
+#define PD_ACCESS_TYPE_WRITE_ONCE 0x00000002
+#define PD_ACCESS_TYPE_REWRITABLE 0x00000003
+#define PD_ACCESS_TYPE_OVERWRITABLE 0x00000004
/** Recorded Address (ECMA 167r3 4/7.1) */
struct udf_lb_addr_s
{
- udf_Uint32_t lba;
- udf_Uint16_t partitionReferenceNum;
+ udf_Uint32_t lba;
+ udf_Uint16_t partitionReferenceNum;
} GNUC_PACKED;
typedef struct udf_lb_addr_s udf_lb_addr_t;
@@ -403,8 +403,8 @@ typedef struct udf_lb_addr_s udf_lb_addr_t;
/** Short Allocation Descriptor (ECMA 167r3 4/14.14.1) */
struct udf_short_ad_s
{
- udf_Uint32_t len;
- udf_Uint32_t pos;
+ udf_Uint32_t len;
+ udf_Uint32_t pos;
} GNUC_PACKED;
typedef struct udf_short_ad_s udf_short_ad_t;
@@ -412,9 +412,9 @@ typedef struct udf_short_ad_s udf_short_ad_t;
/** Long Allocation Descriptor (ECMA 167r3 4/14.14.2) */
struct udf_long_ad_s
{
- udf_Uint32_t len;
- udf_lb_addr_t loc;
- udf_Uint8_t imp_use[6];
+ udf_Uint32_t len;
+ udf_lb_addr_t loc;
+ udf_Uint8_t imp_use[6];
} GNUC_PACKED;
typedef struct udf_long_ad_s udf_long_ad_t;
@@ -423,22 +423,22 @@ typedef struct udf_long_ad_s udf_long_ad_t;
struct logical_vol_desc_s
{
udf_tag_t tag;
- udf_Uint32_t seq_num;
+ udf_Uint32_t seq_num;
udf_charspec_t desc_charset;
- udf_dstring logvol_id[128];
- udf_Uint32_t logical_blocksize;
- udf_regid_t domain_id;
+ udf_dstring logvol_id[128];
+ udf_Uint32_t logical_blocksize;
+ udf_regid_t domain_id;
union {
udf_long_ad_t fsd_loc;
- udf_Uint8_t logvol_content_use[16];
+ udf_Uint8_t logvol_content_use[16];
} lvd_use;
- udf_Uint8_t logvol_contents_use[16];
- udf_Uint32_t maptable_len;
- udf_Uint32_t i_partition_maps;
- udf_regid_t imp_id;
- udf_Uint8_t imp_use[128];
+ udf_Uint8_t logvol_contents_use[16];
+ udf_Uint32_t maptable_len;
+ udf_Uint32_t i_partition_maps;
+ udf_regid_t imp_id;
+ udf_Uint8_t imp_use[128];
udf_extent_ad_t integrity_seq_ext;
- udf_Uint8_t partition_maps[0];
+ udf_Uint8_t partition_maps[0];
} GNUC_PACKED;
typedef struct logical_vol_desc_s logical_vol_desc_t;
@@ -446,39 +446,39 @@ typedef struct logical_vol_desc_s logical_vol_desc_t;
/** Generic Partition Map (ECMA 167r3 3/10.7.1) */
struct generic_partition_map
{
- udf_Uint8_t partition_map_type;
- udf_Uint8_t partition_map_length;
- udf_Uint8_t partition_mapping[0];
+ udf_Uint8_t partition_map_type;
+ udf_Uint8_t partition_map_length;
+ udf_Uint8_t partition_mapping[0];
} GNUC_PACKED;
/** Partition Map Type (ECMA 167r3 3/10.7.1.1) */
-#define GP_PARTITION_MAP_TYPE_UNDEF 0x00
-#define GP_PARTIITON_MAP_TYPE_1 0x01
-#define GP_PARTITION_MAP_TYPE_2 0x02
+#define GP_PARTITION_MAP_TYPE_UNDEF 0x00
+#define GP_PARTIITON_MAP_TYPE_1 0x01
+#define GP_PARTITION_MAP_TYPE_2 0x02
/** Type 1 Partition Map (ECMA 167r3 3/10.7.2) */
struct generic_partition_map1
{
- udf_Uint8_t partition_map_type;
- udf_Uint8_t partition_map_length;
- udf_Uint16_t vol_seq_num;
- udf_Uint16_t i_partition;
+ udf_Uint8_t partition_map_type;
+ udf_Uint8_t partition_map_length;
+ udf_Uint16_t vol_seq_num;
+ udf_Uint16_t i_partition;
} GNUC_PACKED;
/** Type 2 Partition Map (ECMA 167r3 3/10.7.3) */
struct generic_partition_map2
{
- udf_Uint8_t partition_map_type;
- udf_Uint8_t partition_map_length;
- udf_Uint8_t partition_id[62];
+ udf_Uint8_t partition_map_type;
+ udf_Uint8_t partition_map_length;
+ udf_Uint8_t partition_id[62];
} GNUC_PACKED;
/** Unallocated Space Descriptor (ECMA 167r3 3/10.8) */
struct unalloc_space_desc_s
{
udf_tag_t tag;
- udf_Uint32_t vol_desc_seq_num;
- udf_Uint32_t i_alloc_descs;
+ udf_Uint32_t vol_desc_seq_num;
+ udf_Uint32_t i_alloc_descs;
udf_extent_ad_t allocDescs[0];
} GNUC_PACKED;
@@ -486,7 +486,7 @@ struct unalloc_space_desc_s
struct terminating_desc_s
{
udf_tag_t tag;
- udf_Uint8_t reserved[496];
+ udf_Uint8_t reserved[496];
} GNUC_PACKED;
/** Logical Volume Integrity Descriptor (ECMA 167r3 3/10.10) */
@@ -516,16 +516,16 @@ struct logvol_integrity_desc_s
} GNUC_PACKED;
/** Integrity Type (ECMA 167r3 3/10.10.3) */
-#define LVID_INTEGRITY_TYPE_OPEN 0x00000000
-#define LVID_INTEGRITY_TYPE_CLOSE 0x00000001
+#define LVID_INTEGRITY_TYPE_OPEN 0x00000000
+#define LVID_INTEGRITY_TYPE_CLOSE 0x00000001
/** Extended Allocation Descriptor (ECMA 167r3 4/14.14.3) */
struct udf_ext_ad_s
{
- udf_Uint32_t len;
- udf_Uint32_t recorded_len;
- udf_Uint32_t information_len;
- udf_lb_addr_t ext_loc;
+ udf_Uint32_t len;
+ udf_Uint32_t recorded_len;
+ udf_Uint32_t information_len;
+ udf_lb_addr_t ext_loc;
} GNUC_PACKED;
typedef struct udf_ext_ad_s udf_ext_ad_t;
@@ -539,23 +539,23 @@ struct udf_fsd_s
{
udf_tag_t tag;
udf_timestamp_t recording_time;
- udf_Uint16_t interchange_lvl;
- udf_Uint16_t maxInterchange_lvl;
- udf_Uint32_t charset_list;
- udf_Uint32_t max_charset_list;
- udf_Uint32_t fileset_num;
- udf_Uint32_t udf_fsd_num;
+ udf_Uint16_t interchange_lvl;
+ udf_Uint16_t maxInterchange_lvl;
+ udf_Uint32_t charset_list;
+ udf_Uint32_t max_charset_list;
+ udf_Uint32_t fileset_num;
+ udf_Uint32_t udf_fsd_num;
udf_charspec_t logical_vol_id_charset;
- udf_dstring logical_vol_id[128];
+ udf_dstring logical_vol_id[128];
udf_charspec_t fileset_charset;
- udf_dstring fileSet_id[32];
- udf_dstring copyright_file_id[32];
- udf_dstring abstract_file_id[32];
- udf_long_ad_t root_icb;
- udf_regid_t domain_id;
- udf_long_ad_t next_ext;
- udf_long_ad_t stream_directory_ICB;
- udf_Uint8_t reserved[32];
+ udf_dstring fileSet_id[32];
+ udf_dstring copyright_file_id[32];
+ udf_dstring abstract_file_id[32];
+ udf_long_ad_t root_icb;
+ udf_regid_t domain_id;
+ udf_long_ad_t next_ext;
+ udf_long_ad_t stream_directory_ICB;
+ udf_Uint8_t reserved[32];
} GNUC_PACKED;
typedef struct udf_fsd_s udf_fsd_t;
@@ -568,7 +568,7 @@ struct partition_header_desc_s
udf_short_ad_t partition_integrity_table;
udf_short_ad_t freed_space_table;
udf_short_ad_t freed_space_bitmap;
- udf_Uint8_t reserved[88];
+ udf_Uint8_t reserved[88];
} GNUC_PACKED;
typedef struct partition_header_desc_s partition_header_desc_t;
@@ -577,28 +577,28 @@ typedef struct partition_header_desc_s partition_header_desc_t;
struct udf_fileid_desc_s
{
udf_tag_t tag;
- udf_Uint16_t file_version_num;
- udf_Uint8_t file_characteristics;
- udf_Uint8_t i_file_id;
- udf_long_ad_t icb;
+ udf_Uint16_t file_version_num;
+ udf_Uint8_t file_characteristics;
+ udf_Uint8_t i_file_id;
+ udf_long_ad_t icb;
/* MSVC workaround for multiple zero sized arrays
Unlike what is the case with GNU, and against logic, an union of zero
sized arrays in the Microsoft world is not zero bytes but one byte!
Thus, for sizeof() to be consistent across platforms, we must use an
ugly workaround that attaches the union to the last non-zero member. */
union {
- udf_Uint16_t i_imp_use;
+ udf_Uint16_t i_imp_use;
struct {
- udf_Uint16_t unused;
- udf_Uint8_t data[0];
+ udf_Uint16_t unused;
+ udf_Uint8_t data[0];
} imp_use;
struct {
- udf_Uint16_t unused;
- udf_Uint8_t data[0];
+ udf_Uint16_t unused;
+ udf_Uint8_t data[0];
} file_id;
struct {
- udf_Uint16_t unused;
- udf_Uint8_t data[0];
+ udf_Uint16_t unused;
+ udf_Uint8_t data[0];
} padding;
} u;
} GNUC_PACKED;
@@ -611,11 +611,11 @@ typedef struct udf_fileid_desc_s udf_fileid_desc_t;
bitmask rather than distinct values of an enum.
*/
typedef enum {
- UDF_FILE_HIDDEN = (1 << 0),
- UDF_FILE_DIRECTORY = (1 << 1),
- UDF_FILE_DELETED = (1 << 2),
- UDF_FILE_PARENT = (1 << 3),
- UDF_FILE_METADATA = (1 << 4)
+ UDF_FILE_HIDDEN = (1 << 0),
+ UDF_FILE_DIRECTORY = (1 << 1),
+ UDF_FILE_DELETED = (1 << 2),
+ UDF_FILE_PARENT = (1 << 3),
+ UDF_FILE_METADATA = (1 << 4)
} file_characteristics_t;
/** Allocation Ext Descriptor (ECMA 167r3 4/14.5) */
@@ -629,32 +629,32 @@ struct allocExtDesc
/** ICB Tag (ECMA 167r3 4/14.6) */
struct udf_icbtag_s
{
- udf_Uint32_t prev_num_dirs;
- udf_Uint16_t strat_type;
- udf_Uint16_t strat_param;
- udf_Uint16_t max_num_entries;
- udf_Uint8_t reserved;
- udf_Uint8_t file_type;
- udf_lb_addr_t parent_ICB;
- udf_Uint16_t flags;
+ udf_Uint32_t prev_num_dirs;
+ udf_Uint16_t strat_type;
+ udf_Uint16_t strat_param;
+ udf_Uint16_t max_num_entries;
+ udf_Uint8_t reserved;
+ udf_Uint8_t file_type;
+ udf_lb_addr_t parent_ICB;
+ udf_Uint16_t flags;
} GNUC_PACKED;
typedef struct udf_icbtag_s udf_icbtag_t;
-#define UDF_ICB_TAG_FLAGS_SETUID 0x40
-#define UDF_ICB_TAG_FLAGS_SETGID 0x80
-#define UDF_ICB_TAG_FLAGS_STICKY 0x100
+#define UDF_ICB_TAG_FLAGS_SETUID 0x40
+#define UDF_ICB_TAG_FLAGS_SETGID 0x80
+#define UDF_ICB_TAG_FLAGS_STICKY 0x100
/** Strategy Type (ECMA 167r3 4/14.6.2) which helpfully points
largely to 4/A.x */
#define ICBTAG_STRATEGY_TYPE_UNDEF 0x0000
-#define ICBTAG_STRATEGY_TYPE_1 0x0001 /**< 4/A.2 Direct entries Uint16 */
-#define ICBTAG_STRATEGY_TYPE_2 0x0002 /**< 4/A.3 List of ICB direct entries */
-#define ICBTAG_STRATEGY_TYPE_3 0x0003 /**< 4/A.4 */
-#define ICBTAG_STRATEGY_TYPE_4 0x0004 /**< 4/A.5 Hierarchy having one
- single ICB with one direct entry.
- This is what's most often used.
- */
+#define ICBTAG_STRATEGY_TYPE_1 0x0001 /**< 4/A.2 Direct entries Uint16 */
+#define ICBTAG_STRATEGY_TYPE_2 0x0002 /**< 4/A.3 List of ICB direct entries */
+#define ICBTAG_STRATEGY_TYPE_3 0x0003 /**< 4/A.4 */
+#define ICBTAG_STRATEGY_TYPE_4 0x0004 /**< 4/A.5 Hierarchy having one
+ single ICB with one direct entry.
+ This is what's most often used.
+ */
/** File Type (ECMA 167r3 4/14.6.6)
@@ -662,307 +662,307 @@ typedef struct udf_icbtag_s udf_icbtag_t;
distinct values of an enum.
*/
typedef enum {
- ICBTAG_FILE_TYPE_UNDEF = 0x00,
- ICBTAG_FILE_TYPE_USE = 0x01,
- ICBTAG_FILE_TYPE_PIE = 0x02,
- ICBTAG_FILE_TYPE_IE = 0x03,
- ICBTAG_FILE_TYPE_DIRECTORY = 0x04,
- ICBTAG_FILE_TYPE_REGULAR = 0x05,
- ICBTAG_FILE_TYPE_BLOCK = 0x06,
- ICBTAG_FILE_TYPE_CHAR = 0x07,
- ICBTAG_FILE_TYPE_EA = 0x08,
- ICBTAG_FILE_TYPE_FIFO = 0x09,
- ICBTAG_FILE_TYPE_SOCKET = 0x0A,
- ICBTAG_FILE_TYPE_TE = 0x0B,
- ICBTAG_FILE_TYPE_SYMLINK = 0x0C,
- ICBTAG_FILE_TYPE_STREAMDIR = 0x0D
+ ICBTAG_FILE_TYPE_UNDEF = 0x00,
+ ICBTAG_FILE_TYPE_USE = 0x01,
+ ICBTAG_FILE_TYPE_PIE = 0x02,
+ ICBTAG_FILE_TYPE_IE = 0x03,
+ ICBTAG_FILE_TYPE_DIRECTORY = 0x04,
+ ICBTAG_FILE_TYPE_REGULAR = 0x05,
+ ICBTAG_FILE_TYPE_BLOCK = 0x06,
+ ICBTAG_FILE_TYPE_CHAR = 0x07,
+ ICBTAG_FILE_TYPE_EA = 0x08,
+ ICBTAG_FILE_TYPE_FIFO = 0x09,
+ ICBTAG_FILE_TYPE_SOCKET = 0x0A,
+ ICBTAG_FILE_TYPE_TE = 0x0B,
+ ICBTAG_FILE_TYPE_SYMLINK = 0x0C,
+ ICBTAG_FILE_TYPE_STREAMDIR = 0x0D
} icbtag_file_type_enum_t;
/** Flags (ECMA 167r3 4/14.6.8) */
typedef enum {
- ICBTAG_FLAG_AD_MASK = 0x0007, /**< "&" this to get below address
- flags */
- ICBTAG_FLAG_AD_SHORT = 0x0000, /**< The allocation descriptor
- field is filled with
- short_ad's. If the
- offset is beyond the
- current extent, look for
- the next extent. */
- ICBTAG_FLAG_AD_LONG = 0x0001, /**< The allocation descriptor
- field is filled with
- long_ad's If the offset
- is beyond the current
- extent, look for the next
- extent. */
- ICBTAG_FLAG_AD_EXTENDED = 0x0002,
- ICBTAG_FLAG_AD_IN_ICB = 0x0003, /**< This type means that the
- file *data* is stored in
- the allocation descriptor
- field of the file entry. */
- ICBTAG_FLAG_SORTED = 0x0008,
- ICBTAG_FLAG_NONRELOCATABLE = 0x0010,
- ICBTAG_FLAG_ARCHIVE = 0x0020,
- ICBTAG_FLAG_SETUID = 0x0040,
- ICBTAG_FLAG_SETGID = 0x0080,
- ICBTAG_FLAG_STICKY = 0x0100,
- ICBTAG_FLAG_CONTIGUOUS = 0x0200,
- ICBTAG_FLAG_SYSTEM = 0x0400,
- ICBTAG_FLAG_TRANSFORMED = 0x0800,
- ICBTAG_FLAG_MULTIVERSIONS = 0x1000,
- ICBTAG_FLAG_STREAM = 0x2000
+ ICBTAG_FLAG_AD_MASK = 0x0007, /**< "&" this to get below address
+ flags */
+ ICBTAG_FLAG_AD_SHORT = 0x0000, /**< The allocation descriptor
+ field is filled with
+ short_ad's. If the
+ offset is beyond the
+ current extent, look for
+ the next extent. */
+ ICBTAG_FLAG_AD_LONG = 0x0001, /**< The allocation descriptor
+ field is filled with
+ long_ad's If the offset
+ is beyond the current
+ extent, look for the next
+ extent. */
+ ICBTAG_FLAG_AD_EXTENDED = 0x0002,
+ ICBTAG_FLAG_AD_IN_ICB = 0x0003, /**< This type means that the
+ file *data* is stored in
+ the allocation descriptor
+ field of the file entry. */
+ ICBTAG_FLAG_SORTED = 0x0008,
+ ICBTAG_FLAG_NONRELOCATABLE = 0x0010,
+ ICBTAG_FLAG_ARCHIVE = 0x0020,
+ ICBTAG_FLAG_SETUID = 0x0040,
+ ICBTAG_FLAG_SETGID = 0x0080,
+ ICBTAG_FLAG_STICKY = 0x0100,
+ ICBTAG_FLAG_CONTIGUOUS = 0x0200,
+ ICBTAG_FLAG_SYSTEM = 0x0400,
+ ICBTAG_FLAG_TRANSFORMED = 0x0800,
+ ICBTAG_FLAG_MULTIVERSIONS = 0x1000,
+ ICBTAG_FLAG_STREAM = 0x2000
} icbtag_flag_enum_t;
/** Indirect Entry (ECMA 167r3 4/14.7) */
struct indirect_entry_s
{
udf_tag_t tag;
- udf_icbtag_t icb_tag;
- udf_long_ad_t indirect_ICB;
+ udf_icbtag_t icb_tag;
+ udf_long_ad_t indirect_ICB;
} GNUC_PACKED;
/** Terminal Entry (ECMA 167r3 4/14.8) */
struct terminal_entry_s
{
udf_tag_t tag;
- udf_icbtag_t icb_tag;
+ udf_icbtag_t icb_tag;
} GNUC_PACKED;
/** File Entry (ECMA 167r3 4/14.9) */
struct udf_file_entry_s
{
udf_tag_t tag;
- udf_icbtag_t icb_tag; /**< 4/14.9.2 */
- udf_Uint32_t uid; /**< 4/14.9.3 */
- udf_Uint32_t gid; /**< 4/14.9.4 */
- udf_Uint32_t permissions; /**< 4/14.9.5 */
- udf_Uint16_t link_count; /**< 4/14.9.6 */
- udf_Uint8_t rec_format; /**< 4/14.9.7 */
- udf_Uint8_t rec_disp_attr; /**< 4/14.9.8 */
- udf_Uint32_t rec_len; /**< 4/14.9.9 */
- udf_Uint64_t info_len; /**< 4/14.9.10 */
- udf_Uint64_t logblks_recorded; /**< 4/14.9.11 */
+ udf_icbtag_t icb_tag; /**< 4/14.9.2 */
+ udf_Uint32_t uid; /**< 4/14.9.3 */
+ udf_Uint32_t gid; /**< 4/14.9.4 */
+ udf_Uint32_t permissions; /**< 4/14.9.5 */
+ udf_Uint16_t link_count; /**< 4/14.9.6 */
+ udf_Uint8_t rec_format; /**< 4/14.9.7 */
+ udf_Uint8_t rec_disp_attr; /**< 4/14.9.8 */
+ udf_Uint32_t rec_len; /**< 4/14.9.9 */
+ udf_Uint64_t info_len; /**< 4/14.9.10 */
+ udf_Uint64_t logblks_recorded; /**< 4/14.9.11 */
udf_timestamp_t access_time; /**< 4/14.9.12 - last access to
- any stream of file prior to
- recording file entry */
+ any stream of file prior to
+ recording file entry */
udf_timestamp_t modification_time; /**< 4/14.9.13 - last access to
- modification to any stream of
- file */
+ modification to any stream of
+ file */
udf_timestamp_t attribute_time;
- udf_Uint32_t checkpoint;
- udf_long_ad_t ext_attr_ICB;
- udf_regid_t imp_id;
- udf_Uint64_t unique_ID;
- udf_Uint32_t i_extended_attr;
- udf_Uint32_t i_alloc_descs;
+ udf_Uint32_t checkpoint;
+ udf_long_ad_t ext_attr_ICB;
+ udf_regid_t imp_id;
+ udf_Uint64_t unique_ID;
+ udf_Uint32_t i_extended_attr;
+ udf_Uint32_t i_alloc_descs;
/* The following union allows file entry reuse without worrying
about overflows, by ensuring the struct is always the
maximum possible size allowed by the specs: one UDF block. */
union {
- udf_Uint8_t ext_attr[0];
- udf_Uint8_t alloc_descs[0];
- udf_Uint8_t pad_to_one_block[2048-176];
+ udf_Uint8_t ext_attr[0];
+ udf_Uint8_t alloc_descs[0];
+ udf_Uint8_t pad_to_one_block[2048-176];
} u;
} GNUC_PACKED;
typedef struct udf_file_entry_s udf_file_entry_t;
-#define UDF_FENTRY_SIZE 176
-#define UDF_FENTRY_PERM_USER_MASK 0x07
-#define UDF_FENTRY_PERM_GRP_MASK 0xE0
-#define UDF_FENTRY_PERM_OWNER_MASK 0x1C00
+#define UDF_FENTRY_SIZE 176
+#define UDF_FENTRY_PERM_USER_MASK 0x07
+#define UDF_FENTRY_PERM_GRP_MASK 0xE0
+#define UDF_FENTRY_PERM_OWNER_MASK 0x1C00
/** Permissions (ECMA 167r3 4/14.9.5) */
-#define FE_PERM_O_EXEC 0x00000001U
-#define FE_PERM_O_WRITE 0x00000002U
-#define FE_PERM_O_READ 0x00000004U
-#define FE_PERM_O_CHATTR 0x00000008U
-#define FE_PERM_O_DELETE 0x00000010U
-#define FE_PERM_G_EXEC 0x00000020U
-#define FE_PERM_G_WRITE 0x00000040U
-#define FE_PERM_G_READ 0x00000080U
-#define FE_PERM_G_CHATTR 0x00000100U
-#define FE_PERM_G_DELETE 0x00000200U
-#define FE_PERM_U_EXEC 0x00000400U
-#define FE_PERM_U_WRITE 0x00000800U
-#define FE_PERM_U_READ 0x00001000U
-#define FE_PERM_U_CHATTR 0x00002000U
-#define FE_PERM_U_DELETE 0x00004000U
+#define FE_PERM_O_EXEC 0x00000001U
+#define FE_PERM_O_WRITE 0x00000002U
+#define FE_PERM_O_READ 0x00000004U
+#define FE_PERM_O_CHATTR 0x00000008U
+#define FE_PERM_O_DELETE 0x00000010U
+#define FE_PERM_G_EXEC 0x00000020U
+#define FE_PERM_G_WRITE 0x00000040U
+#define FE_PERM_G_READ 0x00000080U
+#define FE_PERM_G_CHATTR 0x00000100U
+#define FE_PERM_G_DELETE 0x00000200U
+#define FE_PERM_U_EXEC 0x00000400U
+#define FE_PERM_U_WRITE 0x00000800U
+#define FE_PERM_U_READ 0x00001000U
+#define FE_PERM_U_CHATTR 0x00002000U
+#define FE_PERM_U_DELETE 0x00004000U
/** Record Format (ECMA 167r3 4/14.9.7) */
-#define FE_RECORD_FMT_UNDEF 0x00
-#define FE_RECORD_FMT_FIXED_PAD 0x01
-#define FE_RECORD_FMT_FIXED 0x02
-#define FE_RECORD_FMT_VARIABLE8 0x03
-#define FE_RECORD_FMT_VARIABLE16 0x04
-#define FE_RECORD_FMT_VARIABLE16_MSB 0x05
-#define FE_RECORD_FMT_VARIABLE32 0x06
-#define FE_RECORD_FMT_PRINT 0x07
-#define FE_RECORD_FMT_LF 0x08
-#define FE_RECORD_FMT_CR 0x09
-#define FE_RECORD_FMT_CRLF 0x0A
-#define FE_RECORD_FMT_LFCR 0x0B
+#define FE_RECORD_FMT_UNDEF 0x00
+#define FE_RECORD_FMT_FIXED_PAD 0x01
+#define FE_RECORD_FMT_FIXED 0x02
+#define FE_RECORD_FMT_VARIABLE8 0x03
+#define FE_RECORD_FMT_VARIABLE16 0x04
+#define FE_RECORD_FMT_VARIABLE16_MSB 0x05
+#define FE_RECORD_FMT_VARIABLE32 0x06
+#define FE_RECORD_FMT_PRINT 0x07
+#define FE_RECORD_FMT_LF 0x08
+#define FE_RECORD_FMT_CR 0x09
+#define FE_RECORD_FMT_CRLF 0x0A
+#define FE_RECORD_FMT_LFCR 0x0B
/** Record Display Attributes (ECMA 167r3 4/14.9.8) */
-#define FE_RECORD_DISPLAY_ATTR_UNDEF 0x00
-#define FE_RECORD_DISPLAY_ATTR_1 0x01
-#define FE_RECORD_DISPLAY_ATTR_2 0x02
-#define FE_RECORD_DISPLAY_ATTR_3 0x03
+#define FE_RECORD_DISPLAY_ATTR_UNDEF 0x00
+#define FE_RECORD_DISPLAY_ATTR_1 0x01
+#define FE_RECORD_DISPLAY_ATTR_2 0x02
+#define FE_RECORD_DISPLAY_ATTR_3 0x03
/** Extended Attribute Header Descriptor (ECMA 167r3 4/14.10.1) */
struct extended_attr_header_desc_s
{
udf_tag_t tag;
- udf_Uint32_t imp_attr_location;
- udf_Uint32_t app_attr_location;
+ udf_Uint32_t imp_attr_location;
+ udf_Uint32_t app_attr_location;
} GNUC_PACKED;
/** Generic Format (ECMA 167r3 4/14.10.2) */
struct generic_format_s
{
- udf_Uint32_t attr_type;
- udf_Uint8_t attr_subtype;
- udf_Uint8_t reserved[3];
- udf_Uint32_t attrLength;
- udf_Uint8_t attrData[0];
+ udf_Uint32_t attr_type;
+ udf_Uint8_t attr_subtype;
+ udf_Uint8_t reserved[3];
+ udf_Uint32_t attrLength;
+ udf_Uint8_t attrData[0];
} GNUC_PACKED;
/** Character Set Information (ECMA 167r3 4/14.10.3) */
struct charSet_info_s
{
- udf_Uint32_t attr_type;
- udf_Uint8_t attr_subtype;
- udf_Uint8_t reserved[3];
- udf_Uint32_t attrLength;
- udf_Uint32_t escapeSeqLength;
- udf_Uint8_t charSetType;
- udf_Uint8_t escapeSeq[0];
+ udf_Uint32_t attr_type;
+ udf_Uint8_t attr_subtype;
+ udf_Uint8_t reserved[3];
+ udf_Uint32_t attrLength;
+ udf_Uint32_t escapeSeqLength;
+ udf_Uint8_t charSetType;
+ udf_Uint8_t escapeSeq[0];
} GNUC_PACKED;
/* Alternate Permissions (ECMA 167r3 4/14.10.4) */
struct alt_perms_s
{
- udf_Uint32_t attr_type;
- udf_Uint8_t attr_subtype;
- udf_Uint8_t reserved[3];
- udf_Uint32_t attrLength;
- udf_Uint16_t owner_id;
- udf_Uint16_t group_id;
- udf_Uint16_t permission;
+ udf_Uint32_t attr_type;
+ udf_Uint8_t attr_subtype;
+ udf_Uint8_t reserved[3];
+ udf_Uint32_t attrLength;
+ udf_Uint16_t owner_id;
+ udf_Uint16_t group_id;
+ udf_Uint16_t permission;
} GNUC_PACKED;
/** File Times Extended Attribute (ECMA 167r3 4/14.10.5) */
struct filetimes_ext_attr_s
{
- udf_Uint32_t attr_type;
- udf_Uint8_t attr_subtype;
- udf_Uint8_t reserved[3];
- udf_Uint32_t attrLength;
- udf_Uint32_t dataLength;
- udf_Uint32_t fileTimeExistence;
- udf_Uint8_t fileTimes;
+ udf_Uint32_t attr_type;
+ udf_Uint8_t attr_subtype;
+ udf_Uint8_t reserved[3];
+ udf_Uint32_t attrLength;
+ udf_Uint32_t dataLength;
+ udf_Uint32_t fileTimeExistence;
+ udf_Uint8_t fileTimes;
} GNUC_PACKED;
/** FileTimeExistence (ECMA 167r3 4/14.10.5.6) */
-#define FTE_CREATION 0x00000001
-#define FTE_DELETION 0x00000004
-#define FTE_EFFECTIVE 0x00000008
-#define FTE_BACKUP 0x00000002
+#define FTE_CREATION 0x00000001
+#define FTE_DELETION 0x00000004
+#define FTE_EFFECTIVE 0x00000008
+#define FTE_BACKUP 0x00000002
/** Information Times Extended Attribute (ECMA 167r3 4/14.10.6) */
struct infoTimesExtAttr
{
- udf_Uint32_t attr_type;
- udf_Uint8_t attr_subtype;
- udf_Uint8_t reserved[3];
- udf_Uint32_t attrLength;
- udf_Uint32_t dataLength;
- udf_Uint32_t infoTimeExistence;
- udf_Uint8_t infoTimes[0];
+ udf_Uint32_t attr_type;
+ udf_Uint8_t attr_subtype;
+ udf_Uint8_t reserved[3];
+ udf_Uint32_t attrLength;
+ udf_Uint32_t dataLength;
+ udf_Uint32_t infoTimeExistence;
+ udf_Uint8_t infoTimes[0];
} GNUC_PACKED;
/** Device Specification (ECMA 167r3 4/14.10.7) */
struct deviceSpec
{
- udf_Uint32_t attr_type;
- udf_Uint8_t attr_subtype;
- udf_Uint8_t reserved[3];
- udf_Uint32_t attrLength;
- udf_Uint32_t imp_useLength;
- udf_Uint32_t majorDevice_id;
- udf_Uint32_t minorDevice_id;
- udf_Uint8_t imp_use[0];
+ udf_Uint32_t attr_type;
+ udf_Uint8_t attr_subtype;
+ udf_Uint8_t reserved[3];
+ udf_Uint32_t attrLength;
+ udf_Uint32_t imp_useLength;
+ udf_Uint32_t majorDevice_id;
+ udf_Uint32_t minorDevice_id;
+ udf_Uint8_t imp_use[0];
} GNUC_PACKED;
/** Implementation Use Extended Attr (ECMA 167r3 4/14.10.8) */
struct impUseExtAttr
{
- udf_Uint32_t attr_type;
- udf_Uint8_t attr_subtype;
- udf_Uint8_t reserved[3];
- udf_Uint32_t attrLength;
- udf_Uint32_t imp_useLength;
- udf_regid_t imp_id;
- udf_Uint8_t imp_use[0];
+ udf_Uint32_t attr_type;
+ udf_Uint8_t attr_subtype;
+ udf_Uint8_t reserved[3];
+ udf_Uint32_t attrLength;
+ udf_Uint32_t imp_useLength;
+ udf_regid_t imp_id;
+ udf_Uint8_t imp_use[0];
} GNUC_PACKED;
/** Application Use Extended Attribute (ECMA 167r3 4/14.10.9) */
struct appUseExtAttr
{
- udf_Uint32_t attr_type;
- udf_Uint8_t attr_subtype;
- udf_Uint8_t reserved[3];
- udf_Uint32_t attrLength;
- udf_Uint32_t appUseLength;
- udf_regid_t app_id;
- udf_Uint8_t appUse[0];
+ udf_Uint32_t attr_type;
+ udf_Uint8_t attr_subtype;
+ udf_Uint8_t reserved[3];
+ udf_Uint32_t attrLength;
+ udf_Uint32_t appUseLength;
+ udf_regid_t app_id;
+ udf_Uint8_t appUse[0];
} GNUC_PACKED;
-#define EXTATTR_CHAR_SET 1
-#define EXTATTR_ALT_PERMS 3
-#define EXTATTR_FILE_TIMES 5
-#define EXTATTR_INFO_TIMES 6
-#define EXTATTR_DEV_SPEC 12
-#define EXTATTR_IMP_USE 2048
-#define EXTATTR_APP_USE 65536
+#define EXTATTR_CHAR_SET 1
+#define EXTATTR_ALT_PERMS 3
+#define EXTATTR_FILE_TIMES 5
+#define EXTATTR_INFO_TIMES 6
+#define EXTATTR_DEV_SPEC 12
+#define EXTATTR_IMP_USE 2048
+#define EXTATTR_APP_USE 65536
/** Unallocated Space Entry (ECMA 167r3 4/14.11) */
struct unallocSpaceEntry
{
udf_tag_t tag;
- udf_icbtag_t icb_tag;
- udf_Uint32_t lengthAllocDescs;
- udf_Uint8_t allocDescs[0];
+ udf_icbtag_t icb_tag;
+ udf_Uint32_t lengthAllocDescs;
+ udf_Uint8_t allocDescs[0];
} GNUC_PACKED;
/** Space Bitmap Descriptor (ECMA 167r3 4/14.12) */
struct spaceBitmapDesc
{
udf_tag_t tag;
- udf_Uint32_t i_bits;
- udf_Uint32_t i_bytes;
- udf_Uint8_t bitmap[0];
+ udf_Uint32_t i_bits;
+ udf_Uint32_t i_bytes;
+ udf_Uint8_t bitmap[0];
} GNUC_PACKED;
/** Partition Integrity Entry (ECMA 167r3 4/14.13) */
struct partitionIntegrityEntry
{
udf_tag_t tag;
- udf_icbtag_t icb_tag;
+ udf_icbtag_t icb_tag;
udf_timestamp_t recording_time;
- udf_Uint8_t integrityType;
- udf_Uint8_t reserved[175];
- udf_regid_t imp_id;
- udf_Uint8_t imp_use[256];
+ udf_Uint8_t integrityType;
+ udf_Uint8_t reserved[175];
+ udf_regid_t imp_id;
+ udf_Uint8_t imp_use[256];
} GNUC_PACKED;
/** Short Allocation Descriptor (ECMA 167r3 4/14.14.1) */
/** Extent Length (ECMA 167r3 4/14.14.1.1) */
-#define EXT_RECORDED_ALLOCATED 0x00000000
-#define EXT_NOT_RECORDED_ALLOCATED 0x40000000
-#define EXT_NOT_RECORDED_NOT_ALLOCATED 0x80000000
-#define EXT_NEXT_EXTENT_ALLOCDECS 0xC0000000
+#define EXT_RECORDED_ALLOCATED 0x00000000
+#define EXT_NOT_RECORDED_ALLOCATED 0x40000000
+#define EXT_NOT_RECORDED_NOT_ALLOCATED 0x80000000
+#define EXT_NEXT_EXTENT_ALLOCDECS 0xC0000000
/** Long Allocation Descriptor (ECMA 167r3 4/14.14.2) */
@@ -971,8 +971,8 @@ struct partitionIntegrityEntry
/** Logical Volume Header Descriptor (ECMA 167r3 4/14.15) */
struct logical_vol_header_desc_s
{
- udf_Uint64_t uniqueID;
- udf_Uint8_t reserved[24];
+ udf_Uint64_t uniqueID;
+ udf_Uint8_t reserved[24];
} GNUC_PACKED;
typedef struct logical_vol_header_desc_s logical_vol_header_desc_t;
@@ -980,16 +980,16 @@ typedef struct logical_vol_header_desc_s logical_vol_header_desc_t;
/** Path Component (ECMA 167r3 4/14.16.1) */
struct pathComponent
{
- udf_Uint8_t component_type;
- udf_Uint8_t lengthComponent_id;
- udf_Uint16_t componentFileVersionNum;
- udf_dstring component_id[0];
+ udf_Uint8_t component_type;
+ udf_Uint8_t lengthComponent_id;
+ udf_Uint16_t componentFileVersionNum;
+ udf_dstring component_id[0];
} GNUC_PACKED;
/** File Entry (ECMA 167r3 4/14.17) */
struct extended_file_entry
{
- udf_tag_t tag; /**< 4/14.17.1 - id = 266 */
+ udf_tag_t tag; /**< 4/14.17.1 - id = 266 */
udf_icbtag_t icb_tag; /**< 4/14.17.2 & 4/14.9.2 */
udf_Uint32_t uid; /**< 4/14.17.3 & 4/14.9.3 */
udf_Uint32_t gid; /**< 4/14.17.4 & 4/14.9.4 */
@@ -1002,14 +1002,14 @@ struct extended_file_entry
udf_Uint64_t object_size; /**< 4/14.17.11 */
udf_Uint64_t logblks_recorded; /**< 4/14.17.12 & 4/14.9.11 */
udf_timestamp_t access_time; /**< 4/14.17.13 & 4/14.9.12 - last
- access to any stream of file */
+ access to any stream of file */
udf_timestamp_t modification_time; /**< 4/14.17.14 & 4/14.9.13 - last
- modification to any stream of
- file*/
+ modification to any stream of
+ file*/
udf_timestamp_t create_time; /**< 4/14.17.15 */
udf_timestamp_t attribute_time; /**< 4/14.17.16 & 4/14.9.14 -
- most recent create or modify
- time */
+ most recent create or modify
+ time */
udf_Uint32_t checkpoint;
udf_Uint32_t reserved; /**< #00 bytes */
udf_long_ad_t ext_attr_ICB;
@@ -1021,7 +1021,7 @@ struct extended_file_entry
union { /* MSVC workaround for multiple zero sized arrays */
udf_Uint8_t ext_attr[0];
udf_Uint8_t alloc_descs[0];
- udf_Uint8_t pad_to_one_block[2048-216];
+ udf_Uint8_t pad_to_one_block[2048-216];
} u;
} GNUC_PACKED;
@@ -1039,4 +1039,4 @@ extern icbtag_flag_enum_t debug_flag_enum;
extern ecma_167_enum1_t debug_ecma_167_enum1;
extern ecma_167_timezone_enum_t debug_ecma_167_timezone_enum;
-#endif /* _ECMA_167_H */
+#endif /* CDIO_ECMA_167_H */
diff --git a/include/cdio/iso9660.h b/include/cdio/iso9660.h
index 942c52d8..e52e8ebc 100644
--- a/include/cdio/iso9660.h
+++ b/include/cdio/iso9660.h
@@ -1,7 +1,5 @@
/*
- $Id: iso9660.h,v 1.102 2008/07/16 00:28:54 rocky Exp $
-
- Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008
+ Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2012
Rocky Bernstein <rocky@gnu.org>
Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org>
@@ -33,8 +31,8 @@
*/
-#ifndef __CDIO_ISO9660_H__
-#define __CDIO_ISO9660_H__
+#ifndef CDIO_ISO9660_H_
+#define CDIO_ISO9660_H_
#include <time.h>
@@ -71,7 +69,7 @@ typedef char dchar_t; /*! See section 7.4.1 */
#undef ISODCL
#endif
/* This part borrowed from the bsd386 isofs */
-#define ISODCL(from, to) ((to) - (from) + 1)
+#define ISODCL(from, to) ((to) - (from) + 1)
#define MIN_TRACK_SIZE 4*75
#define MIN_ISO_SIZE MIN_TRACK_SIZE
@@ -107,14 +105,14 @@ extern enum iso_enum1_s {
/*! ISO 9660 directory flags. */
extern enum iso_flag_enum_s {
- ISO_FILE = 0, /**< Not really a flag... */
- ISO_EXISTENCE = 1, /**< Do not make existence known (hidden) */
- ISO_DIRECTORY = 2, /**< This file is a directory */
- ISO_ASSOCIATED = 4, /**< This file is an associated file */
- ISO_RECORD = 8, /**< Record format in extended attr. != 0 */
+ ISO_FILE = 0, /**< Not really a flag... */
+ ISO_EXISTENCE = 1, /**< Do not make existence known (hidden) */
+ ISO_DIRECTORY = 2, /**< This file is a directory */
+ ISO_ASSOCIATED = 4, /**< This file is an associated file */
+ ISO_RECORD = 8, /**< Record format in extended attr. != 0 */
ISO_PROTECTION = 16, /**< No read/execute perm. in ext. attr. */
- ISO_DRESERVED1 = 32, /**<, Reserved bit 5 */
- ISO_DRESERVED2 = 64, /**<, Reserved bit 6 */
+ ISO_DRESERVED1 = 32, /**<, Reserved bit 5 */
+ ISO_DRESERVED2 = 64, /**<, Reserved bit 6 */
ISO_MULTIEXTENT = 128, /**< Not final entry of a mult. ext. file */
} iso_flag_enums;
@@ -124,7 +122,7 @@ extern enum iso_vd_enum_s {
ISO_VD_PRIMARY = 1, /**< Is in any ISO-9660 */
ISO_VD_SUPPLEMENTARY = 2, /**< Used by Joliet, for example */
ISO_VD_PARITION = 3, /**< Indicates a partition of a CD */
- ISO_VD_END = 255
+ ISO_VD_END = 255
} iso_vd_enums;
@@ -136,12 +134,12 @@ extern enum iso_vd_enum_s {
For ISO-9660 Level 1, the maximum needed string length is:
@code
- 30 chars (filename + ext)
- + 2 chars ('.' + ';')
- + 5 chars (strlen("32767"))
- + 1 null byte
+ 30 chars (filename + ext)
+ + 2 chars ('.' + ';')
+ + 5 chars (strlen("32767"))
+ + 1 null byte
================================
- = 38 chars
+ = 38 chars
@endcode
*/
@@ -183,15 +181,15 @@ PRAGMA_BEGIN_PACKED
@see iso9660_dtime
*/
-struct iso9660_dtime_s {
- iso711_t dt_year; /**< Number of years since 1900 */
- iso711_t dt_month; /**< Has value in range 1..12. Note starts
+struct iso9660_dtime_s {
+ iso711_t dt_year; /**< Number of years since 1900 */
+ iso711_t dt_month; /**< Has value in range 1..12. Note starts
at 1, not 0 like a tm struct. */
- iso711_t dt_day; /**< Day of the month from 1 to 31 */
- iso711_t dt_hour; /**< Hour of the day from 0 to 23 */
- iso711_t dt_minute; /**< Minute of the hour from 0 to 59 */
- iso711_t dt_second; /**< Second of the minute from 0 to 59 */
- iso712_t dt_gmtoff; /**< GMT values -48 .. + 52 in 15 minute
+ iso711_t dt_day; /**< Day of the month from 1 to 31 */
+ iso711_t dt_hour; /**< Hour of the day from 0 to 23 */
+ iso711_t dt_minute; /**< Minute of the hour from 0 to 59 */
+ iso711_t dt_second; /**< Second of the minute from 0 to 59 */
+ iso712_t dt_gmtoff; /**< GMT values -48 .. + 52 in 15 minute
intervals */
} GNUC_PACKED;
@@ -206,19 +204,19 @@ typedef struct iso9660_dtime_s iso9660_dtime_t;
@see iso9660_ltime
*/
-struct iso9660_ltime_s {
- char lt_year [ISODCL( 1, 4)]; /**< Add 1900 to value
+struct iso9660_ltime_s {
+ char lt_year [ISODCL( 1, 4)]; /**< Add 1900 to value
for the Julian
year */
- char lt_month [ISODCL( 5, 6)]; /**< Has value in range
+ char lt_month [ISODCL( 5, 6)]; /**< Has value in range
1..12. Note starts
at 1, not 0 like a
tm struct. */
- char lt_day [ISODCL( 7, 8)]; /**< Day of month: 1..31 */
- char lt_hour [ISODCL( 9, 10)]; /**< hour: 0..23 */
- char lt_minute [ISODCL( 11, 12)]; /**< minute: 0..59 */
- char lt_second [ISODCL( 13, 14)]; /**< second: 0..59 */
- char lt_hsecond [ISODCL( 15, 16)]; /**< The value is in
+ char lt_day [ISODCL( 7, 8)]; /**< Day of month: 1..31 */
+ char lt_hour [ISODCL( 9, 10)]; /**< hour: 0..23 */
+ char lt_minute [ISODCL( 11, 12)]; /**< minute: 0..59 */
+ char lt_second [ISODCL( 13, 14)]; /**< second: 0..59 */
+ char lt_hsecond [ISODCL( 15, 16)]; /**< The value is in
units of 1/100's of
a second */
iso712_t lt_gmtoff; /**< Offset from Greenwich Mean Time in number
@@ -405,7 +403,7 @@ struct iso9660_svd_s {
char id[5]; /**< ISO_STANDARD_ID "CD001"
*/
iso711_t version; /**< value 1 */
- char flags; /**< Section 8.5.3 */
+ char flags; /**< Section 8.5.3 */
achar_t system_id[ISO_MAX_SYSTEM_ID]; /**< Section 8.5.4; each char
is an achar */
dchar_t volume_id[ISO_MAX_VOLUME_ID]; /**< Section 8.5.5; each char
@@ -1133,7 +1131,7 @@ lsn_t iso9660_get_dir_extent(const iso9660_dir_t *p_idr);
#endif /* __cplusplus */
#undef ISODCL
-#endif /* __CDIO_ISO9660_H__ */
+#endif /* CDIO_ISO9660_H_ */
/*
* Local variables:
diff --git a/include/cdio/logging.h b/include/cdio/logging.h
index 988d11c5..46d88595 100644
--- a/include/cdio/logging.h
+++ b/include/cdio/logging.h
@@ -1,7 +1,5 @@
/*
- $Id: logging.h,v 1.11 2008/03/25 15:59:09 karl Exp $
-
- Copyright (C) 2003, 2004, 2008 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2003, 2004, 2008, 2012 Rocky Bernstein <rocky@gnu.org>
Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org>
This program is free software: you can redistribute it and/or modify
@@ -23,8 +21,8 @@
*
*/
-#ifndef __LOGGING_H__
-#define __LOGGING_H__
+#ifndef CDIO_LOGGING_H_
+#define CDIO_LOGGING_H_
#include <cdio/types.h>
@@ -124,7 +122,7 @@ void cdio_error (const char format[], ...) GNUC_PRINTF(1,2);
}
#endif
-#endif /* __LOGGING_H__ */
+#endif /* CDIO_LOGGING_H_ */
/*
diff --git a/include/cdio/mmc.h b/include/cdio/mmc.h
index 3a6508e5..ee5421cb 100644
--- a/include/cdio/mmc.h
+++ b/include/cdio/mmc.h
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
+ Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012
Rocky Bernstein <rocky@gnu.org>
This program is free software: you can redistribute it and/or modify
@@ -33,8 +33,8 @@
*/
-#ifndef __CDIO_MMC_H__
-#define __CDIO_MMC_H__
+#ifndef CDIO_MMC_H_
+#define CDIO_MMC_H_
#include <cdio/cdio.h>
#include <cdio/types.h>
@@ -68,40 +68,40 @@ extern "C" {
*/
typedef struct cdio_mmc_request_sense {
#if defined(__MMC_BIG_ENDIAN_BITFIELD)
- uint8_t valid : 1; /**< valid bit is 1 if info is valid */
- uint8_t error_code : 7;
+ uint8_t valid : 1; /**< valid bit is 1 if info is valid */
+ uint8_t error_code : 7;
#else
- uint8_t error_code : 7;
- uint8_t valid : 1; /**< valid bit is 1 if info is valid */
+ uint8_t error_code : 7;
+ uint8_t valid : 1; /**< valid bit is 1 if info is valid */
#endif
- uint8_t segment_number;
+ uint8_t segment_number;
#if defined(__MMC_BIG_ENDIAN_BITFIELD)
- uint8_t filemark : 1; /**< manditory in sequential
+ uint8_t filemark : 1; /**< manditory in sequential
* access devices */
- uint8_t eom : 1; /**< end of medium. manditory in
+ uint8_t eom : 1; /**< end of medium. manditory in
* sequential access and
* printer devices */
- uint8_t ili : 1; /**< incorrect length indicator */
- uint8_t reserved1 : 1;
- uint8_t sense_key : 4;
+ uint8_t ili : 1; /**< incorrect length indicator */
+ uint8_t reserved1 : 1;
+ uint8_t sense_key : 4;
#else
- uint8_t sense_key : 4;
- uint8_t reserved1 : 1;
- uint8_t ili : 1; /**< incorrect length indicator */
- uint8_t eom : 1; /**< end of medium. manditory in
+ uint8_t sense_key : 4;
+ uint8_t reserved1 : 1;
+ uint8_t ili : 1; /**< incorrect length indicator */
+ uint8_t eom : 1; /**< end of medium. manditory in
* sequential access and
* printer devices */
- uint8_t filemark : 1; /**< manditory in sequential
+ uint8_t filemark : 1; /**< manditory in sequential
* access devices */
#endif
- uint8_t information[4];
- uint8_t additional_sense_len; /**< Additional sense length (n-7) */
- uint8_t command_info[4]; /**< Command-specific information */
- uint8_t asc; /**< Additional sense code */
- uint8_t ascq; /**< Additional sense code qualifier */
- uint8_t fruc; /**< Field replaceable unit code */
- uint8_t sks[3]; /**< Sense-key specific */
- uint8_t asb[46]; /**< Additional sense bytes */
+ uint8_t information[4];
+ uint8_t additional_sense_len; /**< Additional sense length (n-7) */
+ uint8_t command_info[4]; /**< Command-specific information */
+ uint8_t asc; /**< Additional sense code */
+ uint8_t ascq; /**< Additional sense code qualifier */
+ uint8_t fruc; /**< Field replaceable unit code */
+ uint8_t sks[3]; /**< Sense-key specific */
+ uint8_t asb[46]; /**< Additional sense bytes */
} cdio_mmc_request_sense_t;
@@ -800,7 +800,7 @@ extern cdio_mmc_mode_page_t debug_cdio_mmc_mode_page;
CDIO_MMC_GPCMD_PREVENT_ALLOW_MEDIUM_REMOVAL
#endif /*DO_NOT_WANT_PARANOIA_COMPATIBILITY*/
-#endif /* __MMC_H__ */
+#endif /* CDIO_MMC_H_ */
/*
* Local variables:
diff --git a/include/cdio/mmc_cmds.h b/include/cdio/mmc_cmds.h
index 2a4659de..06fca525 100644
--- a/include/cdio/mmc_cmds.h
+++ b/include/cdio/mmc_cmds.h
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2010 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2010, 2012 Rocky Bernstein <rocky@gnu.org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -15,14 +15,14 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef __CDIO_MMC_CMDS_H__
-#define __CDIO_MMC_CMDS_H__
+#ifndef CDIO_MMC_CMDS_H_
+#define CDIO_MMC_CMDS_H_
#include <cdio/mmc.h>
#include <cdio/mmc_ll_cmds.h>
#include <cdio/mmc_hl_cmds.h>
-#endif /* __CDIO_MMC_CMDS_H__ */
+#endif /* CDIO_MMC_CMDS_H_ */
/*
* Local variables:
diff --git a/include/cdio/mmc_hl_cmds.h b/include/cdio/mmc_hl_cmds.h
index 48d23814..eb2410d9 100644
--- a/include/cdio/mmc_hl_cmds.h
+++ b/include/cdio/mmc_hl_cmds.h
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2010 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2010, 2012 Rocky Bernstein <rocky@gnu.org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -22,8 +22,8 @@
MMC commands.
*/
-#ifndef __CDIO_MMC_HL_CMDS_H__
-#define __CDIO_MMC_HL_CMDS_H__
+#ifndef CDIO_MMC_HL_CMDS_H_
+#define CDIO_MMC_HL_CMDS_H_
#include <cdio/mmc.h>
@@ -94,7 +94,7 @@ extern "C" {
@return DRIVER_OP_SUCCESS if we ran the command ok.
*/
driver_return_code_t mmc_mode_sense( CdIo_t *p_cdio, /*out*/ void *p_buf,
- unsigned int i_size, int page);
+ unsigned int i_size, int page);
/**
Set the drive speed in CD-ROM speed units.
@@ -121,7 +121,7 @@ extern "C" {
}
#endif /* __cplusplus */
-#endif /* __CDIO_MMC_HL_CMDS_H__ */
+#endif /* CDIO_MMC_HL_CMDS_H_ */
/*
* Local variables:
diff --git a/include/cdio/mmc_ll_cmds.h b/include/cdio/mmc_ll_cmds.h
index 12114d32..6ead44c3 100644
--- a/include/cdio/mmc_ll_cmds.h
+++ b/include/cdio/mmc_ll_cmds.h
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2010 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2010, 2012 Rocky Bernstein <rocky@gnu.org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -32,8 +32,8 @@
*/
-#ifndef __CDIO_MMC_LL_CMDS_H__
-#define __CDIO_MMC_LL_CMDS_H__
+#ifndef CDIO_MMC_LL_CMDS_H_
+#define CDIO_MMC_LL_CMDS_H_
#include <cdio/mmc.h>
@@ -91,13 +91,13 @@ extern "C" {
@param i_timeout_ms value in milliseconds to use on timeout. Setting
to 0 uses the default time-out value stored in
- mmc_timeout_ms.
+ mmc_timeout_ms.
@return DRIVER_OP_SUCCESS if we ran the command ok.
*/
driver_return_code_t mmc_mode_select_10(CdIo_t *p_cdio, /*out*/ void *p_buf,
- unsigned int i_size, int page,
- unsigned int i_timeout_ms);
+ unsigned int i_size, int page,
+ unsigned int i_timeout_ms);
/**
Run a SCSI-MMC MODE SENSE command (10-byte version)
and put the results in p_buf
@@ -112,7 +112,7 @@ extern "C" {
@return DRIVER_OP_SUCCESS if we ran the command ok.
*/
driver_return_code_t mmc_mode_sense_10( CdIo_t *p_cdio, /*out*/ void *p_buf,
- unsigned int i_size,
+ unsigned int i_size,
unsigned int i_page_code);
/**
@@ -125,7 +125,7 @@ extern "C" {
@return DRIVER_OP_SUCCESS if we ran the command ok.
*/
driver_return_code_t mmc_mode_sense_6( CdIo_t *p_cdio, /*out*/ void *p_buf,
- unsigned int i_size, int page);
+ unsigned int i_size, int page);
/**
Request preventing/allowing medium removal on a drive via
@@ -137,15 +137,15 @@ extern "C" {
@param i_timeout_ms value in milliseconds to use on timeout. Setting
to 0 uses the default time-out value stored in
- mmc_timeout_ms.
+ mmc_timeout_ms.
@return DRIVER_OP_SUCCESS (0) if we got the status.
return codes are the same as driver_return_code_t
*/
driver_return_code_t
mmc_prevent_allow_medium_removal(const CdIo_t *p_cdio,
- bool b_persistent, bool b_prevent,
- unsigned int i_timeout_ms);
+ bool b_persistent, bool b_prevent,
+ unsigned int i_timeout_ms);
/**
Issue a MMC READ_CD command.
@@ -296,7 +296,7 @@ extern "C" {
@param i_timeout_ms value in milliseconds to use on timeout. Setting
to 0 uses the default time-out value stored in
- mmc_timeout_ms.
+ mmc_timeout_ms.
@return the drive speed if greater than 0. -1 if we had an error. is -2
returned if this is not implemented for the current driver.
@@ -324,8 +324,8 @@ extern "C" {
@see mmc_eject_media or mmc_close_tray
*/
driver_return_code_t mmc_start_stop_unit(const CdIo_t *p_cdio, bool b_eject,
- bool b_immediate,
- uint8_t power_condition,
+ bool b_immediate,
+ uint8_t power_condition,
unsigned int i_timeout_ms);
/**
@@ -335,12 +335,12 @@ extern "C" {
@param i_timeout_ms value in milliseconds to use on timeout. Setting
to 0 uses the default time-out value stored in
- mmc_timeout_ms.
+ mmc_timeout_ms.
@return DRIVER_OP_SUCCESS if we ran the command ok.
*/
driver_return_code_t mmc_test_unit_ready(const CdIo_t *p_cdio,
- unsigned int i_timeout_ms);
+ unsigned int i_timeout_ms);
#ifndef DO_NOT_WANT_OLD_MMC_COMPATIBILITY
@@ -352,7 +352,7 @@ extern "C" {
}
#endif /* __cplusplus */
-#endif /* __CDIO_MMC_HL_CMDS_H__ */
+#endif /* CDIO_MMC_HL_CMDS_H_ */
/*
* Local variables:
diff --git a/include/cdio/mmc_util.h b/include/cdio/mmc_util.h
index 1050a37e..980b4480 100644
--- a/include/cdio/mmc_util.h
+++ b/include/cdio/mmc_util.h
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2010 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2010, 2012 Rocky Bernstein <rocky@gnu.org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -22,8 +22,8 @@
on anything other than headers.
*/
-#ifndef __CDIO_MMC_UTIL_H__
-#define __CDIO_MMC_UTIL_H__
+#ifndef CDIO_MMC_UTIL_H_
+#define CDIO_MMC_UTIL_H_
#include <cdio/device.h>
@@ -147,7 +147,7 @@ extern "C" {
}
#endif /* __cplusplus */
-#endif /* __MMC_UTIL_H__ */
+#endif /* CDIO_MMC_UTIL_H_ */
/*
* Local variables:
* c-file-style: "gnu"
diff --git a/include/cdio/posix.h b/include/cdio/posix.h
index 89e0ad37..54e503c2 100644
--- a/include/cdio/posix.h
+++ b/include/cdio/posix.h
@@ -1,7 +1,5 @@
/*
- $Id: posix.h,v 1.2 2008/03/25 15:59:09 karl Exp $
-
- Copyright (C) 2005, 2008 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2005, 2008, 2012 Rocky Bernstein <rocky@gnu.org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -22,8 +20,8 @@
* \brief various POSIX definitions.
*/
-#ifndef __CDIO_POSIX_H__
-#define __CDIO_POSIX_H__
+#ifndef CDIO_POSIX_H_
+#define CDIO_POSIX_H_
typedef uint32_t posix_mode_t;
typedef uint32_t posix_nlink_t;
@@ -31,7 +29,7 @@ typedef uint32_t posix_uid_t;
typedef uint32_t posix_gid_t;
typedef uint16_t unicode16_t;
-#endif /* __CDIO_POSIX_H__ */
+#endif /* CDIO_POSIX_H_ */
/*
diff --git a/include/cdio/read.h b/include/cdio/read.h
index bc13b5f7..80731780 100644
--- a/include/cdio/read.h
+++ b/include/cdio/read.h
@@ -1,7 +1,5 @@
/*
- $Id: read.h,v 1.15 2008/03/25 15:59:09 karl Exp $
-
- Copyright (C) 2005, 2006, 2007, 2008 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2005, 2006, 2007, 2008, 2012 Rocky Bernstein <rocky@gnu.org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -23,8 +21,8 @@
* libcdio calls.
*/
-#ifndef __CDIO_READ_H__
-#define __CDIO_READ_H__
+#ifndef CDIO_READ_H_
+#define CDIO_READ_H_
#include <cdio/types.h>
@@ -74,11 +72,11 @@ extern "C" {
@param p_cdio object to read from
@param p_buf place to read data into. The caller should make sure
this location can store at least CDIO_FRAMESIZE_RAW
- bytes.
+ bytes.
@param i_lsn sector to read
*/
driver_return_code_t cdio_read_audio_sector (const CdIo_t *p_cdio,
- void *p_buf, lsn_t i_lsn);
+ void *p_buf, lsn_t i_lsn);
/*!
Reads audio sectors
@@ -86,13 +84,13 @@ extern "C" {
@param p_cdio object to read from
@param p_buf place to read data into. The caller should make sure
this location can store at least CDIO_FRAMESIZE_RAW
- * i_blocks bytes.
+ * i_blocks bytes.
@param i_lsn sector to read
@param i_blocks number of sectors to read
*/
driver_return_code_t cdio_read_audio_sectors (const CdIo_t *p_cdio,
- void *p_buf, lsn_t i_lsn,
- uint32_t i_blocks);
+ void *p_buf, lsn_t i_lsn,
+ uint32_t i_blocks);
/*!
Read data sectors
@@ -100,11 +98,11 @@ extern "C" {
@param p_cdio object to read from
@param p_buf place to read data into. The caller should make sure
this location can store at least ISO_BLOCKSIZE,
- M2RAW_SECTOR_SIZE, or M2F2_SECTOR_SIZE depending
- on the kind of sector getting read. If you don't
- know whether you have a Mode 1/2, Form 1/ Form 2/Formless
- sector best to reserve space for the maximum,
- M2RAW_SECTOR_SIZE.
+ M2RAW_SECTOR_SIZE, or M2F2_SECTOR_SIZE depending
+ on the kind of sector getting read. If you don't
+ know whether you have a Mode 1/2, Form 1/ Form 2/Formless
+ sector best to reserve space for the maximum,
+ M2RAW_SECTOR_SIZE.
@param i_lsn sector to read
@param i_blocksize size of block. Should be either CDIO_CD_FRAMESIZE,
M2RAW_SECTOR_SIZE, or M2F2_SECTOR_SIZE. See comment above under p_buf.
@@ -112,9 +110,9 @@ extern "C" {
@param i_blocks number of blocks to read
*/
driver_return_code_t cdio_read_data_sectors ( const CdIo_t *p_cdio,
- void *p_buf, lsn_t i_lsn,
- uint16_t i_blocksize,
- uint32_t i_blocks );
+ void *p_buf, lsn_t i_lsn,
+ uint16_t i_blocksize,
+ uint32_t i_blocks );
/*!
Reads a mode 1 sector
@@ -125,8 +123,8 @@ extern "C" {
mode 1 form 1 sectors.
*/
driver_return_code_t cdio_read_mode1_sector (const CdIo_t *p_cdio,
- void *p_buf, lsn_t i_lsn,
- bool b_form2);
+ void *p_buf, lsn_t i_lsn,
+ bool b_form2);
/*!
Reads mode 1 sectors
@@ -138,17 +136,17 @@ extern "C" {
@param i_blocks number of sectors to read
*/
driver_return_code_t cdio_read_mode1_sectors (const CdIo_t *p_cdio,
- void *p_buf, lsn_t i_lsn,
- bool b_form2,
- uint32_t i_blocks);
+ void *p_buf, lsn_t i_lsn,
+ bool b_form2,
+ uint32_t i_blocks);
/*!
Reads a mode 2 sector
@param p_cdio object to read from
@param p_buf place to read data into. The caller should make sure
this location can store at least
- M2RAW_SECTOR_SIZE (for form 1) or CDIO_CD_FRAMESIZE (for
- form 2) bytes.
+ M2RAW_SECTOR_SIZE (for form 1) or CDIO_CD_FRAMESIZE (for
+ form 2) bytes.
@param i_lsn sector to read
@param b_form2 true for reading mode 2 form 2 sectors or false for
mode 2 form 1 sectors.
@@ -156,23 +154,23 @@ extern "C" {
@return 0 if no error, nonzero otherwise.
*/
driver_return_code_t cdio_read_mode2_sector (const CdIo_t *p_cdio,
- void *p_buf, lsn_t i_lsn,
- bool b_form2);
+ void *p_buf, lsn_t i_lsn,
+ bool b_form2);
/** The special case of reading a single block is a common one so we
provide a routine for that as a convenience.
*/
driver_return_code_t cdio_read_sector(const CdIo_t *p_cdio, void *p_buf,
- lsn_t i_lsn,
- cdio_read_mode_t read_mode);
+ lsn_t i_lsn,
+ cdio_read_mode_t read_mode);
/*!
Reads mode 2 sectors
@param p_cdio object to read from
@param p_buf place to read data into. The caller should make sure
this location can store at least
- M2RAW_SECTOR_SIZE (for form 1) or CDIO_CD_FRAMESIZE (for
- form 2) * i_blocks bytes.
+ M2RAW_SECTOR_SIZE (for form 1) or CDIO_CD_FRAMESIZE (for
+ form 2) * i_blocks bytes.
@param i_lsn sector to read
@param b_form2 true for reading mode2 form 2 sectors or false for
mode 2 form 1 sectors.
@@ -181,9 +179,9 @@ extern "C" {
@return 0 if no error, nonzero otherwise.
*/
driver_return_code_t cdio_read_mode2_sectors (const CdIo_t *p_cdio,
- void *p_buf, lsn_t i_lsn,
- bool b_form2,
- uint32_t i_blocks);
+ void *p_buf, lsn_t i_lsn,
+ bool b_form2,
+ uint32_t i_blocks);
/*!
Reads a number of sectors (AKA blocks).
@@ -215,12 +213,12 @@ extern "C" {
*/
driver_return_code_t cdio_read_sectors(const CdIo_t *p_cdio, void *p_buf,
- lsn_t i_lsn,
- cdio_read_mode_t read_mode,
- uint32_t i_blocks);
+ lsn_t i_lsn,
+ cdio_read_mode_t read_mode,
+ uint32_t i_blocks);
#ifdef __cplusplus
}
#endif /* __cplusplus */
-#endif /* __CDIO_TRACK_H__ */
+#endif /* CDIO_READ_H_ */
diff --git a/include/cdio/rock.h b/include/cdio/rock.h
index 3a24f911..8ae66807 100644
--- a/include/cdio/rock.h
+++ b/include/cdio/rock.h
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2005, 2006 2008 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2005, 2006 2008, 2012 Rocky Bernstein <rocky@gnu.org>
See also rock.c by Eric Youngdale (1993) from GNU/Linux
This is Copyright 1993 Yggdrasil Computing, Incorporated
@@ -26,8 +26,8 @@
*/
-#ifndef __CDIO_ROCK_H__
-#define __CDIO_ROCK_H__
+#ifndef CDIO_ROCK_H_
+#define CDIO_ROCK_H_
#include <cdio/types.h>
@@ -152,10 +152,10 @@ typedef enum {
ISO_ROCK_SL_ROOT = 8
} iso_rock_sl_flag_t;
-#define ISO_ROCK_SL_CONTINUE 1
-#define ISO_ROCK_SL_CURRENT 2
-#define ISO_ROCK_SL_PARENT 4
-#define ISO_ROCK_SL_ROOT 8
+#define ISO_ROCK_SL_CONTINUE 1
+#define ISO_ROCK_SL_CURRENT 2
+#define ISO_ROCK_SL_PARENT 4
+#define ISO_ROCK_SL_ROOT 8
typedef struct iso_rock_sl_part_s {
uint8_t flags;
@@ -178,9 +178,9 @@ typedef enum {
ISO_ROCK_NM_PARENT = 4,
} iso_rock_nm_flag_t;
-#define ISO_ROCK_NM_CONTINUE 1
-#define ISO_ROCK_NM_CURRENT 2
-#define ISO_ROCK_NM_PARENT 4
+#define ISO_ROCK_NM_CONTINUE 1
+#define ISO_ROCK_NM_CURRENT 2
+#define ISO_ROCK_NM_PARENT 4
typedef struct iso_rock_nm_s {
@@ -373,7 +373,7 @@ extern iso_rock_tf_flag_t iso_rock_tf_flag;
}
#endif /* __cplusplus */
-#endif /* __ISO_ROCK_H__ */
+#endif /* CDIO_ROCK_H_ */
/*
* Local variables:
diff --git a/include/cdio/sector.h b/include/cdio/sector.h
index 6e308338..86857159 100644
--- a/include/cdio/sector.h
+++ b/include/cdio/sector.h
@@ -1,7 +1,6 @@
/*
- $Id: sector.h,v 1.38 2008/03/25 15:59:09 karl Exp $
-
- Copyright (C) 2003, 2004, 2005, 2006, 2008 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2003, 2004, 2005, 2006, 2008, 2012
+ Rocky Bernstein <rocky@gnu.org>
Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org>
This program is free software: you can redistribute it and/or modify
@@ -57,8 +56,8 @@
*/
-#ifndef _CDIO_SECTOR_H_
-#define _CDIO_SECTOR_H_
+#ifndef CDIO_SECTOR_H_
+#define CDIO_SECTOR_H_
#ifdef __cplusplus
extern "C" {
@@ -69,21 +68,24 @@
/*! Information that can be obtained through a Read Subchannel
command.
*/
-#define CDIO_SUBCHANNEL_SUBQ_DATA 0
-#define CDIO_SUBCHANNEL_CURRENT_POSITION 1
-#define CDIO_SUBCHANNEL_MEDIA_CATALOG 2
-#define CDIO_SUBCHANNEL_TRACK_ISRC 3
+ typedef enum cdio_subchannel
+ {
+ CDIO_SUBCHANNEL_SUBQ_DATA = 0,
+ CDIO_SUBCHANNEL_CURRENT_POSITION = 1,
+ CDIO_SUBCHANNEL_MEDIA_CATALOG = 2,
+ CDIO_SUBCHANNEL_TRACK_ISRC = 3
+ } cdio_subchannel;
/*! track flags
* Q Sub-channel Control Field (4.2.3.3)
*/
typedef enum {
- NONE = 0x00, /* no flags set */
- PRE_EMPHASIS = 0x01, /* audio track recorded with pre-emphasis */
- COPY_PERMITTED = 0x02, /* digital copy permitted */
- DATA = 0x04, /* data track */
- FOUR_CHANNEL_AUDIO = 0x08, /* 4 audio channels */
- SCMS = 0x10 /* SCMS (5.29.2.7) */
+ NONE = 0x00, /* no flags set */
+ PRE_EMPHASIS = 0x01, /* audio track recorded with pre-emphasis */
+ COPY_PERMITTED = 0x02, /* digital copy permitted */
+ DATA = 0x04, /* data track */
+ FOUR_CHANNEL_AUDIO = 0x08, /* 4 audio channels */
+ SCMS = 0x10 /* SCMS (5.29.2.7) */
} flag_t;
#define CDIO_PREGAP_SECTORS 150
@@ -199,12 +201,14 @@
#define CDIO_CD_FRAMES_PER_MIN \
(CDIO_CD_FRAMES_PER_SEC*CDIO_CD_SECS_PER_MIN)
-#define CDIO_CD_74MIN_SECTORS (UINT32_C(74)*CDIO_CD_FRAMES_PER_MIN)
-#define CDIO_CD_80MIN_SECTORS (UINT32_C(80)*CDIO_CD_FRAMES_PER_MIN)
-#define CDIO_CD_90MIN_SECTORS (UINT32_C(90)*CDIO_CD_FRAMES_PER_MIN)
+typedef enum cdio_cd_minutes_sectors
+{
+ CDIO_CD_74MIN_SECTORS = UINT32_C(74) * CDIO_CD_FRAMES_PER_MIN,
+ CDIO_CD_80MIN_SECTORS = UINT32_C(80) * CDIO_CD_FRAMES_PER_MIN,
+ CDIO_CD_90MIN_SECTORS = UINT32_C(90) * CDIO_CD_FRAMES_PER_MIN,
-#define CDIO_CD_MAX_SECTORS \
- (UINT32_C(100)*CDIO_CD_FRAMES_PER_MIN-CDIO_PREGAP_SECTORS)
+ CDIO_CD_MAX_SECTORS = UINT32_C(100) * CDIO_CD_FRAMES_PER_MIN - CDIO_PREGAP_SECTORS
+} cdio_cd_minutes_sectors;
#define msf_t_SIZEOF 3
@@ -274,7 +278,7 @@
#define CD_FRAMESIZE_RAW CDIO_CD_FRAMESIZE_RAW
#endif /*DO_NOT_WANT_PARANOIA_COMPATIBILITY*/
-#endif /* _CDIO_SECTOR_H_ */
+#endif /* CDIO_SECTOR_H_ */
/*
diff --git a/include/cdio/track.h b/include/cdio/track.h
index 3fd1f585..e5b9461a 100644
--- a/include/cdio/track.h
+++ b/include/cdio/track.h
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2005, 2006, 2008 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2005, 2006, 2008, 2012 Rocky Bernstein <rocky@gnu.org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -18,8 +18,8 @@
/** \file track.h
* \brief The top-level header for track-related libcdio calls.
*/
-#ifndef __CDIO_TRACK_H__
-#define __CDIO_TRACK_H__
+#ifndef CDIO_TRACK_H_
+#define CDIO_TRACK_H_
#ifdef __cplusplus
extern "C" {
@@ -34,8 +34,8 @@ extern "C" {
TRACK_FORMAT_XA, /**< Mode2 of some sort */
TRACK_FORMAT_DATA, /**< Mode1 of some sort */
TRACK_FORMAT_PSX, /**< Playstation CD. Like audio but only 2336 bytes
- * of user data.
- */
+ * of user data.
+ */
TRACK_FORMAT_ERROR /**< Dunno what is, or some other error. */
} track_format_t;
@@ -51,8 +51,8 @@ extern "C" {
track_flag_t preemphasis; /**< Linear preemphasis on an audio track */
track_flag_t copy_permit; /**< Whether copying is permitted */
int channels; /**< Number of audio channels, 2, 4. -2 if not
- implemented or -1 for error.
- */
+ implemented or -1 for error.
+ */
} track_flags_t;
/*! The leadout track is always 0xAA, regardless of # of tracks on
@@ -70,7 +70,7 @@ extern "C" {
extern enum cdio_track_enums {
CDIO_CDROM_LBA = 0x01, /**< "logical block": first frame is #0 */
CDIO_CDROM_MSF = 0x02, /**< "minute-second-frame": binary, not
- BCD here! */
+ BCD here! */
CDIO_CDROM_DATA_TRACK = 0x04,
CDIO_CDROM_CDI_TRACK = 0x10,
CDIO_CDROM_XA_TRACK = 0x20,
@@ -86,14 +86,14 @@ extern "C" {
reference: MMC-3 draft revsion - 10g
*/
typedef enum {
- AUDIO, /**< 2352 byte block length */
- MODE1, /**< 2048 byte block length */
- MODE1_RAW, /**< 2352 byte block length */
- MODE2, /**< 2336 byte block length */
- MODE2_FORM1, /**< 2048 byte block length */
- MODE2_FORM2, /**< 2324 byte block length */
- MODE2_FORM_MIX, /**< 2336 byte block length */
- MODE2_RAW /**< 2352 byte block length */
+ AUDIO, /**< 2352 byte block length */
+ MODE1, /**< 2048 byte block length */
+ MODE1_RAW, /**< 2352 byte block length */
+ MODE2, /**< 2336 byte block length */
+ MODE2_FORM1, /**< 2048 byte block length */
+ MODE2_FORM2, /**< 2324 byte block length */
+ MODE2_FORM_MIX, /**< 2336 byte block length */
+ MODE2_RAW /**< 2352 byte block length */
} trackmode_t;
/*!
@@ -130,7 +130,7 @@ extern "C" {
if not an audio track?
*/
track_flag_t cdio_get_track_copy_permit(const CdIo_t *p_cdio,
- track_t i_track);
+ track_t i_track);
/*!
Get the format (audio, mode2, mode1) of track.
@@ -228,13 +228,13 @@ extern "C" {
@return true if things worked or false if there is no track entry.
*/
bool cdio_get_track_msf(const CdIo_t *p_cdio, track_t i_track,
- /*out*/ msf_t *msf);
+ /*out*/ msf_t *msf);
/*! Get linear preemphasis status on an audio track
This is not meaningful if not an audio track?
*/
track_flag_t cdio_get_track_preemphasis(const CdIo_t *p_cdio,
- track_t i_track);
+ track_t i_track);
/*!
Get the number of sectors between this track an the next. This
@@ -250,5 +250,4 @@ extern "C" {
}
#endif /* __cplusplus */
-#endif /* __CDIO_TRACK_H__ */
-
+#endif /* CDIO_TRACK_H_ */
diff --git a/include/cdio/types.h b/include/cdio/types.h
index 919d3cbe..7499884e 100644
--- a/include/cdio/types.h
+++ b/include/cdio/types.h
@@ -22,8 +22,8 @@
*/
-#ifndef __CDIO_TYPES_H__
-#define __CDIO_TYPES_H__
+#ifndef CDIO_TYPES_H_
+#define CDIO_TYPES_H_
#ifdef __cplusplus
extern "C" {
@@ -265,10 +265,10 @@ typedef uint8_t ubyte;
typedef int32_t lsn_t;
/* Address in either MSF or logical format */
- union cdio_cdrom_addr
+ union cdio_cdrom_addr
{
- msf_t msf;
- lba_t lba;
+ msf_t msf;
+ lba_t lba;
};
/*! The type of a track number 0..99. */
@@ -325,20 +325,20 @@ typedef uint8_t ubyte;
Q Sub-channel Control Field (4.2.3.3)
*/
typedef enum {
- CDIO_TRACK_FLAG_NONE = 0x00, /**< no flags set */
- CDIO_TRACK_FLAG_PRE_EMPHASIS = 0x01, /**< audio track recorded with
+ CDIO_TRACK_FLAG_NONE = 0x00, /**< no flags set */
+ CDIO_TRACK_FLAG_PRE_EMPHASIS = 0x01, /**< audio track recorded with
pre-emphasis */
- CDIO_TRACK_FLAG_COPY_PERMITTED = 0x02, /**< digital copy permitted */
- CDIO_TRACK_FLAG_DATA = 0x04, /**< data track */
+ CDIO_TRACK_FLAG_COPY_PERMITTED = 0x02, /**< digital copy permitted */
+ CDIO_TRACK_FLAG_DATA = 0x04, /**< data track */
CDIO_TRACK_FLAG_FOUR_CHANNEL_AUDIO = 0x08, /**< 4 audio channels */
- CDIO_TRACK_FLAG_SCMS = 0x10 /**< SCMS (5.29.2.7) */
+ CDIO_TRACK_FLAG_SCMS = 0x10 /**< SCMS (5.29.2.7) */
} cdio_track_flag;
#ifdef __cplusplus
}
#endif /* __cplusplus */
-#endif /* __CDIO_TYPES_H__ */
+#endif /* CDIO_TYPES_H_ */
/*
diff --git a/include/cdio/utf8.h b/include/cdio/utf8.h
index df420f10..863b158c 100644
--- a/include/cdio/utf8.h
+++ b/include/cdio/utf8.h
@@ -99,6 +99,7 @@ bool cdio_charset_to_utf8(const char *src, size_t src_len, cdio_utf8_t **dst,
*/
wchar_t* cdio_utf8_to_wchar(const char* str);
+#include <stdio.h> /* for FILE */
/** \brief Provides an UTF-8 compliant version of fopen for Windows
* The parameters and return value are the same as fopen().
*/
diff --git a/include/cdio/util.h b/include/cdio/util.h
index 654a7684..4ac8f9b9 100644
--- a/include/cdio/util.h
+++ b/include/cdio/util.h
@@ -17,8 +17,8 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef __CDIO_UTIL_H__
-#define __CDIO_UTIL_H__
+#ifndef CDIO_UTIL_H_
+#define CDIO_UTIL_H_
/*!
\file util.h
@@ -129,7 +129,7 @@ char *cdio_realpath (const char *psz_src, char *psz_dst);
}
#endif
-#endif /* __CDIO_UTIL_H__ */
+#endif /* CDIO_UTIL_H_ */
/*
diff --git a/include/cdio/xa.h b/include/cdio/xa.h
index 13b21c8f..7dc95d88 100644
--- a/include/cdio/xa.h
+++ b/include/cdio/xa.h
@@ -1,7 +1,6 @@
/*
- $Id: xa.h,v 1.19 2008/03/25 15:59:10 karl Exp $
-
- Copyright (C) 2003, 2004, 2005, 2006, 2008 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2003, 2004, 2005, 2006, 2008, 2012
+ Rocky Bernstein <rocky@gnu.org>
Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org>
See also iso9660.h by Eric Youngdale (1993) and in cdrtools. These are
@@ -31,8 +30,8 @@
*/
-#ifndef __CDIO_XA_H__
-#define __CDIO_XA_H__
+#ifndef CDIO_XA_H_
+#define CDIO_XA_H_
#ifdef __cplusplus
extern "C" {
@@ -153,7 +152,7 @@ iso9660_get_xa_attr_str (uint16_t xa_attr);
*/
iso9660_xa_t *
iso9660_xa_init (iso9660_xa_t *_xa, uint16_t uid, uint16_t gid, uint16_t attr,
- uint8_t filenum);
+ uint8_t filenum);
#ifdef __cplusplus
}
@@ -168,7 +167,7 @@ extern xa_misc_enum_t debugger_xa_misc_enum;
#endif /* __cplusplus */
-#endif /* __CDIO_XA_H__ */
+#endif /* CDIO_XA_H_ */
/*
* Local variables:
diff --git a/lib/driver/_cdio_stdio.h b/lib/driver/_cdio_stdio.h
index a2cd4c02..d3f805f1 100644
--- a/lib/driver/_cdio_stdio.h
+++ b/lib/driver/_cdio_stdio.h
@@ -1,7 +1,5 @@
/*
- $Id: _cdio_stdio.h,v 1.3 2008/04/22 15:29:11 karl Exp $
-
- Copyright (C) 2003, 2008 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2003, 2008, 2012 Rocky Bernstein <rocky@gnu.org>
Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org>
This program is free software: you can redistribute it and/or modify
@@ -19,8 +17,8 @@
*/
-#ifndef __CDIO_STDIO_H__
-#define __CDIO_STDIO_H__
+#ifndef CDIO_STDIO_H_
+#define CDIO_STDIO_H_
#include "_cdio_stream.h"
@@ -39,7 +37,7 @@ CdioDataSource_t * cdio_stdio_new(const char psz_path[]);
void cdio_stdio_destroy(CdioDataSource_t *p_obj);
-#endif /* __CDIO_STREAM_STDIO_H__ */
+#endif /* CDIO_STDIO_H_ */
/*
diff --git a/lib/driver/_cdio_stream.h b/lib/driver/_cdio_stream.h
index 313bc31f..defe1f2c 100644
--- a/lib/driver/_cdio_stream.h
+++ b/lib/driver/_cdio_stream.h
@@ -18,8 +18,8 @@
*/
-#ifndef __CDIO_STREAM_H__
-#define __CDIO_STREAM_H__
+#ifndef CDIO_STREAM_H_
+#define CDIO_STREAM_H_
#include <cdio/types.h>
#include "cdio_private.h"
@@ -126,7 +126,7 @@ extern "C" {
}
#endif /* __cplusplus */
-#endif /* __CDIO_STREAM_H__ */
+#endif /* CDIO_STREAM_H_ */
/*
diff --git a/lib/driver/cdio_assert.h b/lib/driver/cdio_assert.h
index 8967e27d..644a047f 100644
--- a/lib/driver/cdio_assert.h
+++ b/lib/driver/cdio_assert.h
@@ -16,8 +16,8 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef __CDIO_ASSERT_H__
-#define __CDIO_ASSERT_H__
+#ifndef CDIO_ASSERT_H_
+#define CDIO_ASSERT_H_
#if defined(__GNUC__) && !defined(__MINGW32__)
@@ -55,4 +55,4 @@
#endif
-#endif /* __CDIO_ASSERT_H__ */
+#endif /* CDIO_ASSERT_H_ */
diff --git a/lib/driver/cdio_private.h b/lib/driver/cdio_private.h
index e526c448..d0ae3f80 100644
--- a/lib/driver/cdio_private.h
+++ b/lib/driver/cdio_private.h
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2003, 2004, 2005, 2008, 2009, 2011
+ Copyright (C) 2003, 2004, 2005, 2008, 2009, 2011, 2012
Rocky Bernstein <rocky@gnu.org>
This program is free software: you can redistribute it and/or modify
@@ -19,8 +19,8 @@
/* Internal routines for CD I/O drivers. */
-#ifndef __CDIO_PRIVATE_H__
-#define __CDIO_PRIVATE_H__
+#ifndef CDIO_DRIVER_PRIVATE_H_
+#define CDIO_DRIVER_PRIVATE_H_
#if defined(HAVE_CONFIG_H) && !defined(LIBCDIO_CONFIG_H)
# include "config.h"
@@ -62,7 +62,7 @@ extern "C" {
*/
driver_return_code_t (*audio_get_volume)
- (void *p_env, /*out*/ cdio_audio_volume_t *p_volume);
+ (void *p_env, /*out*/ cdio_audio_volume_t *p_volume);
/*!
Pause playing CD through analog output
@@ -77,8 +77,8 @@ extern "C" {
@param p_env the CD object to be acted upon.
*/
driver_return_code_t (*audio_play_msf) ( void *p_env,
- msf_t *p_start_msf,
- msf_t *p_end_msf );
+ msf_t *p_start_msf,
+ msf_t *p_end_msf );
/*!
Playing CD through analog output
@@ -86,7 +86,7 @@ extern "C" {
@param p_env the CD object to be acted upon.
*/
driver_return_code_t (*audio_play_track_index)
- ( void *p_env, cdio_track_index_t *p_track_index );
+ ( void *p_env, cdio_track_index_t *p_track_index );
/*!
Get subchannel information.
@@ -94,7 +94,7 @@ extern "C" {
@param p_env the CD object to be acted upon.
*/
driver_return_code_t (*audio_read_subchannel)
- ( void *p_env, cdio_subchannel_t *subchannel );
+ ( void *p_env, cdio_subchannel_t *subchannel );
/*!
Resume playing an audio CD.
@@ -111,7 +111,7 @@ extern "C" {
*/
driver_return_code_t (*audio_set_volume)
- ( void *p_env, cdio_audio_volume_t *p_volume );
+ ( void *p_env, cdio_audio_volume_t *p_volume );
/*!
Stop playing an audio CD.
@@ -204,9 +204,9 @@ extern "C" {
See cd_types.h for a list of bitmasks for the drive type;
*/
void (*get_drive_cap) (const void *p_env,
- cdio_drive_read_cap_t *p_read_cap,
- cdio_drive_write_cap_t *p_write_cap,
- cdio_drive_misc_cap_t *p_misc_cap);
+ cdio_drive_read_cap_t *p_read_cap,
+ cdio_drive_write_cap_t *p_write_cap,
+ cdio_drive_misc_cap_t *p_misc_cap);
/*!
Return the number of of the first track.
CDIO_INVALID_TRACK is returned on error.
@@ -218,16 +218,16 @@ extern "C" {
False is returned if we had an error getting the information.
*/
bool (*get_hwinfo)
- ( const CdIo_t *p_cdio, /* out*/ cdio_hwinfo_t *p_hw_info );
+ ( const CdIo_t *p_cdio, /* out*/ cdio_hwinfo_t *p_hw_info );
/*! Get the LSN of the first track of the last session of
on the CD.
-
+
@param p_cdio the CD object to be acted upon.
@param i_last_session pointer to the session number to be returned.
*/
driver_return_code_t (*get_last_session)
- ( void *p_env, /*out*/ lsn_t *i_last_session );
+ ( void *p_env, /*out*/ lsn_t *i_last_session );
/*!
Find out if media has changed since the last call.
@@ -315,7 +315,7 @@ extern "C" {
audio track?
*/
track_flag_t (*get_track_preemphasis)
- ( const void *p_env, track_t i_track );
+ ( const void *p_env, track_t i_track );
/*!
lseek - reposition read/write file offset
@@ -336,7 +336,7 @@ extern "C" {
from lsn. Returns 0 if no error.
*/
int (*read_audio_sectors) ( void *p_env, void *p_buf, lsn_t i_lsn,
- unsigned int i_blocks );
+ unsigned int i_blocks );
/*!
Read a data sector
@@ -356,15 +356,15 @@ extern "C" {
M2RAW_SECTOR_SIZE, or M2F2_SECTOR_SIZE. See comment above under p_buf.
*/
driver_return_code_t (*read_data_sectors)
- ( void *p_env, void *p_buf, lsn_t i_lsn, uint16_t i_blocksize,
- uint32_t i_blocks );
+ ( void *p_env, void *p_buf, lsn_t i_lsn, uint16_t i_blocksize,
+ uint32_t i_blocks );
/*!
Reads a single mode2 sector from cd device into buf starting
from lsn. Returns 0 if no error.
*/
int (*read_mode2_sector)
- ( void *p_env, void *p_buf, lsn_t i_lsn, bool b_mode2_form2 );
+ ( void *p_env, void *p_buf, lsn_t i_lsn, bool b_mode2_form2 );
/*!
Reads i_blocks of mode2 sectors from cd device into data starting
@@ -372,15 +372,15 @@ extern "C" {
Returns 0 if no error.
*/
int (*read_mode2_sectors)
- ( void *p_env, void *p_buf, lsn_t i_lsn, bool b_mode2_form2,
- unsigned int i_blocks );
+ ( void *p_env, void *p_buf, lsn_t i_lsn, bool b_mode2_form2,
+ unsigned int i_blocks );
/*!
Reads a single mode1 sector from cd device into buf starting
from lsn. Returns 0 if no error.
*/
int (*read_mode1_sector)
- ( void *p_env, void *p_buf, lsn_t i_lsn, bool mode1_form2 );
+ ( void *p_env, void *p_buf, lsn_t i_lsn, bool mode1_form2 );
/*!
Reads i_blocks of mode1 sectors from cd device into data starting
@@ -388,24 +388,24 @@ extern "C" {
Returns 0 if no error.
*/
int (*read_mode1_sectors)
- ( void *p_env, void *p_buf, lsn_t i_lsn, bool mode1_form2,
- unsigned int i_blocks );
+ ( void *p_env, void *p_buf, lsn_t i_lsn, bool mode1_form2,
+ unsigned int i_blocks );
bool (*read_toc) ( void *p_env ) ;
/*!
Run a SCSI MMC command.
- cdio CD structure set by cdio_open().
+ cdio CD structure set by cdio_open().
i_timeout_ms time in milliseconds we will wait for the command
to complete.
cdb_len number of bytes in cdb (6, 10, or 12).
- cdb CDB bytes. All values that are needed should be set on
+ cdb CDB bytes. All values that are needed should be set on
input.
- b_return_data TRUE if the command expects data to be returned in
+ b_return_data TRUE if the command expects data to be returned in
the buffer
- len Size of buffer
- buf Buffer for data, both sending and receiving
+ len Size of buffer
+ buf Buffer for data, both sending and receiving
Returns 0 if command completed successfully.
*/
@@ -420,7 +420,7 @@ extern "C" {
Set the blocksize for subsequent reads.
*/
driver_return_code_t (*set_blocksize) ( void *p_env,
- uint16_t i_blocksize );
+ uint16_t i_blocksize );
/*!
Set the drive speed.
@@ -437,7 +437,7 @@ extern "C" {
struct _CdIo {
driver_id_t driver_id; /**< Particular driver opened. */
cdio_funcs_t op; /**< driver-specific routines handling
- implementation*/
+ implementation*/
void *env; /**< environment. Passed to routine above. */
};
@@ -464,7 +464,7 @@ extern "C" {
bool (*have_driver) (void);
CdIo_t *(*driver_open) (const char *psz_source_name);
CdIo_t *(*driver_open_am) (const char *psz_source_name,
- const char *psz_access_mode);
+ const char *psz_access_mode);
char *(*get_default_device) (void);
bool (*is_device) (const char *psz_source_name);
char **(*get_devices) (void);
@@ -489,7 +489,7 @@ extern "C" {
Use cdio_free_device_list() to free this device_list.
*/
void cdio_add_device_list(char **device_list[], const char *psz_drive,
- unsigned int *i_drives);
+ unsigned int *i_drives);
driver_return_code_t close_tray_bsdi (const char *psz_drive);
driver_return_code_t close_tray_freebsd (const char *psz_drive);
@@ -512,7 +512,7 @@ extern "C" {
@see cdio_open_cd, cdio_open
*/
CdIo_t * cdio_open_am_netbsd (const char *psz_source,
- const char *psz_access_mode);
+ const char *psz_access_mode);
/*! DEPRICATED: use cdio_have_driver().
True if AIX driver is available. */
@@ -559,4 +559,4 @@ extern "C" {
}
#endif /* __cplusplus */
-#endif /* __CDIO_PRIVATE_H__ */
+#endif /* CDIO_DRIVER_PRIVATE_H_ */
diff --git a/lib/driver/cdtext_private.h b/lib/driver/cdtext_private.h
index 518a3cf9..38cca509 100644
--- a/lib/driver/cdtext_private.h
+++ b/lib/driver/cdtext_private.h
@@ -1,5 +1,6 @@
/*
- Copyright (C) 2004, 2005, 2008, 2011 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2004, 2005, 2008, 2011, 2012
+ Rocky Bernstein <rocky@gnu.org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -15,8 +16,8 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef __CDIO_CDTEXT_PRIVATE_H__
-#define __CDIO_CDTEXT_PRIVATE_H__
+#ifndef CDIO_DRIVER_CDTEXT_PRIVATE_H_
+#define CDIO_DRIVER_CDTEXT_PRIVATE_H_
#include <cdio/types.h>
@@ -136,7 +137,7 @@ cdtext_field_t cdtext_is_field (const char *field);
cdtext_lang_t cdtext_is_language (const char *lang);
-#endif /* __CDIO_CDTEXT_PRIVATE_H__ */
+#endif /* CDIO_DRIVER_CDTEXT_PRIVATE_H_ */
/*
* Local variables:
diff --git a/lib/driver/filemode.h b/lib/driver/filemode.h
index 7ca25ba7..a06f72c9 100644
--- a/lib/driver/filemode.h
+++ b/lib/driver/filemode.h
@@ -1,7 +1,7 @@
/*
filemode.h -- file modes common definitions
- Copyright (C) 2005, 2008, 2011 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2005, 2008, 2011, 2012 Rocky Bernstein <rocky@gnu.org>
Copyright (C) 1985, 1990, 1993, 1998-2000 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
@@ -18,8 +18,8 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef __FILEMODE_H__
-#define __FILEMODE_H__
+#ifndef CDIO_DRIVER_FILEMODE_H_
+#define CDIO_DRIVER_FILEMODE_H_
#ifdef HAVE_SYS_STAT_H
#include <sys/stat.h>
@@ -131,4 +131,4 @@
# define S_ISCTG(m) (((m) & S_IFMT) == S_IFCTG)
#endif
-#endif /* __FILEMODE_H__ */
+#endif /* CDIO_DRIVER_FILEMODE_H_ */
diff --git a/lib/driver/generic.h b/lib/driver/generic.h
index e0dd2618..1f435d61 100644
--- a/lib/driver/generic.h
+++ b/lib/driver/generic.h
@@ -1,5 +1,6 @@
/*
- Copyright (C) 2004, 2005, 2006, 2008, 2009 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2004, 2005, 2006, 2008, 2009, 2012
+ Rocky Bernstein <rocky@gnu.org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -18,8 +19,8 @@
/* Internal routines for CD I/O drivers. */
-#ifndef __CDIO_GENERIC_H__
-#define __CDIO_GENERIC_H__
+#ifndef CDIO_DRIVER_GENERIC_H_
+#define CDIO_DRIVER_GENERIC_H_
#if defined(HAVE_CONFIG_H) && !defined(LIBCDIO_CONFIG_H)
# include "config.h"
@@ -57,7 +58,7 @@ extern "C" {
track_t i_tracks; /**< The number of tracks. */
uint8_t i_joliet_level; /**< 0 = no Joliet extensions.
- 1-3: Joliet level. */
+ 1-3: Joliet level. */
iso9660_pvd_t pvd;
iso9660_svd_t svd;
CdIo_t *cdio; /**< a way to call general cdio routines. */
@@ -208,7 +209,7 @@ extern "C" {
Is this meaningful if not an audio track?
*/
track_flag_t get_track_copy_permit_generic(void *p_user_data,
- track_t i_track);
+ track_t i_track);
/*! Return 1 if track has pre-emphasis, 0 if not, or -1 for error.
Is this meaningful if not an audio track?
@@ -216,7 +217,7 @@ extern "C" {
pre-emphasis is a non linear frequency response.
*/
track_flag_t get_track_preemphasis_generic(const void *p_user_data,
- track_t i_track);
+ track_t i_track);
/*!
Read cdtext information for a CdIo object .
@@ -230,14 +231,14 @@ extern "C" {
/*! Read mode 1 or mode2 sectors (using cooked mode). */
driver_return_code_t read_data_sectors_generic (void *p_user_data,
- void *p_buf, lsn_t i_lsn,
- uint16_t i_blocksize,
- uint32_t i_blocks);
+ void *p_buf, lsn_t i_lsn,
+ uint16_t i_blocksize,
+ uint32_t i_blocks);
#ifdef __cplusplus
}
#endif /* __cplusplus */
-#endif /* __CDIO_GENERIC_H__ */
+#endif /* CDIO_DRIVER_GENERIC_H_ */
/*
diff --git a/lib/driver/image.h b/lib/driver/image.h
index 9f80777b..1db3a99f 100644
--- a/lib/driver/image.h
+++ b/lib/driver/image.h
@@ -1,5 +1,6 @@
/*
- Copyright (C) 2004, 2005, 2008, 2011 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2004, 2005, 2008, 2011, 2012
+ Rocky Bernstein <rocky@gnu.org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -21,8 +22,8 @@
defined before it is included.
*/
-#ifndef __CDIO_IMAGE_H__
-#define __CDIO_IMAGE_H__
+#ifndef CDIO_DRIVER_IMAGE_H_
+#define CDIO_DRIVER_IMAGE_H_
#if defined(HAVE_CONFIG_H) && !defined(__CDIO_CONFIG_H__)
# include "config.h"
@@ -46,34 +47,34 @@ typedef struct {
msf_t start_msf;
lba_t start_lba;
int start_index;
- lba_t pregap; /**< pre-gap */
- lba_t silence; /**< pre-gap with zero audio data */
+ lba_t pregap; /**< pre-gap */
+ lba_t silence; /**< pre-gap with zero audio data */
int sec_count; /**< Number of sectors in this track. Does not
- include pregap */
+ include pregap */
int num_indices;
flag_t flags; /**< "[NO] COPY", "4CH", "[NO] PREMPAHSIS" */
- char *isrc; /**< IRSC Code (5.22.4) exactly 12 bytes */
+ char *isrc; /**< IRSC Code (5.22.4) exactly 12 bytes */
char *filename;
CdioDataSource_t *data_source;
off_t offset; /**< byte offset into data_start of track
- beginning. In cdrdao for example, one
- filename may cover many tracks and
- each track would then have a different
- offset.
- */
+ beginning. In cdrdao for example, one
+ filename may cover many tracks and
+ each track would then have a different
+ offset.
+ */
track_format_t track_format;
bool track_green;
trackmode_t mode;
uint16_t datasize; /**< How much is in the portion we return
- back? */
+ back? */
uint16_t datastart; /**< Offset from begining of frame
- that data starts */
+ that data starts */
uint16_t endsize; /**< How much stuff at the end to skip over.
- This stuff may have error correction
- (EDC, or ECC).*/
+ This stuff may have error correction
+ (EDC, or ECC).*/
uint16_t blocksize; /**< total block size = start + size + end */
} track_info_t;
-#endif /* __CDIO_IMAGE_H__ */
+#endif /* CDIO_DRIVER_IMAGE_H_ */
diff --git a/lib/driver/image_common.h b/lib/driver/image_common.h
index 8362bc6c..3177b3f6 100644
--- a/lib/driver/image_common.h
+++ b/lib/driver/image_common.h
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2004, 2005, 2008 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2004, 2005, 2008, 2012 Rocky Bernstein <rocky@gnu.org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -24,8 +24,8 @@
image.h
*/
-#ifndef __CDIO_IMAGE_COMMON_H__
-#define __CDIO_IMAGE_COMMON_H__
+#ifndef CDIO_DRIVER_IMAGE_COMMON_H_
+#define CDIO_DRIVER_IMAGE_COMMON_H_
typedef struct {
/* Things common to all drivers like this.
@@ -35,20 +35,20 @@ typedef struct {
char *psz_cue_name;
char *psz_access_mode; /* Just the name of the driver.
- We add this for regularity with other
- real CD drivers which has an access mode.
- */
+ We add this for regularity with other
+ real CD drivers which has an access mode.
+ */
char *psz_mcn; /* Media Catalog Number (5.22.3)
- exactly 13 bytes */
+ exactly 13 bytes */
track_info_t tocent[CDIO_CD_MAX_TRACKS+1]; /* entry info for each track
- add 1 for leadout. */
+ add 1 for leadout. */
discmode_t disc_mode;
#ifdef NEED_NERO_STRUCT
/* Nero Specific stuff. Note: for the image_free to work, this *must*
be last. */
bool is_dao; /* True if some of disk at once. False
- if some sort of track at once. */
+ if some sort of track at once. */
uint32_t mtyp; /* Value of MTYP (media type?) tag */
uint8_t dtyp; /* Value of DAOX media type tag */
@@ -91,9 +91,9 @@ discmode_t _get_discmode_image (void *p_user_data);
*/
void _get_drive_cap_image (const void *user_data,
- cdio_drive_read_cap_t *p_read_cap,
- cdio_drive_write_cap_t *p_write_cap,
- cdio_drive_misc_cap_t *p_misc_cap);
+ cdio_drive_read_cap_t *p_read_cap,
+ cdio_drive_write_cap_t *p_write_cap,
+ cdio_drive_misc_cap_t *p_misc_cap);
/*!
Return the number of of the first track.
@@ -151,7 +151,7 @@ track_flag_t get_track_copy_permit_image(void *p_user_data, track_t i_track);
pre-emphasis is a non linear frequency response.
*/
track_flag_t get_track_preemphasis_image(const void *p_user_data,
- track_t i_track);
+ track_t i_track);
/*! Return the starting LBA for the pregap for track number i_track.
Track numbers start at 1.
@@ -190,8 +190,8 @@ char *get_track_isrc_image(const void *p_user_data, track_t i_track);
*/
driver_return_code_t
read_data_sectors_image ( void *p_user_data, void *p_buf,
- lsn_t i_lsn, uint16_t i_blocksize,
- uint32_t i_blocks );
+ lsn_t i_lsn, uint16_t i_blocksize,
+ uint32_t i_blocks );
/*!
Set the arg "key" with "value" in the source device.
@@ -202,4 +202,4 @@ read_data_sectors_image ( void *p_user_data, void *p_buf,
*/
int _set_arg_image (void *user_data, const char key[], const char value[]);
-#endif /* __CDIO_IMAGE_COMMON_H__ */
+#endif /* CDIO_DRIVER_IMAGE_COMMON_H_ */
diff --git a/lib/driver/mmc/mmc_cmd_helper.h b/lib/driver/mmc/mmc_cmd_helper.h
index 56a3f143..f77f8c34 100644
--- a/lib/driver/mmc/mmc_cmd_helper.h
+++ b/lib/driver/mmc/mmc_cmd_helper.h
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2010 Rocky Bernstein <rocky@gnu.org>
+ Copyright (C) 2010, 2012 Rocky Bernstein <rocky@gnu.org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -15,8 +15,8 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef __CDIO_MMC_CMD_HELPER_H__
-#define __CDIO_MMC_CMD_HELPER_H__
+#ifndef CDIO_DRIVER_MMC_CMD_HELPER_H_
+#define CDIO_DRIVER_MMC_CMD_HELPER_H_
/* Boilerplate initialization code to setup running MMC command. We
assume variables 'p_cdio', 'p_buf', and 'i_size' are previously
@@ -27,22 +27,22 @@
3. zeros the buffer (p_buf) using i_size.
4. Sets up the command field of cdb to passed in value mmc_cmd.
*/
-#define MMC_CMD_SETUP(mmc_cmd) \
- mmc_cdb_t cdb = {{0, }}; \
- \
- if ( ! p_cdio ) return DRIVER_OP_UNINIT; \
- if ( ! p_cdio->op.run_mmc_cmd ) return DRIVER_OP_UNSUPPORTED; \
- \
- CDIO_MMC_SET_COMMAND(cdb.field, mmc_cmd)
+#define MMC_CMD_SETUP(mmc_cmd) \
+ mmc_cdb_t cdb = {{0, }}; \
+ \
+ if ( ! p_cdio ) return DRIVER_OP_UNINIT; \
+ if ( ! p_cdio->op.run_mmc_cmd ) return DRIVER_OP_UNSUPPORTED; \
+ \
+ CDIO_MMC_SET_COMMAND(cdb.field, mmc_cmd)
/* Boilerplate initialization code to setup running MMC read command
needs to set the cdb 16-bit length field. See above
comment for MMC_CMD_SETUP.
*/
-#define MMC_CMD_SETUP_READ16(mmc_cmd) \
- MMC_CMD_SETUP(mmc_cmd); \
- \
- /* Setup to read header, to get length of data */ \
+#define MMC_CMD_SETUP_READ16(mmc_cmd) \
+ MMC_CMD_SETUP(mmc_cmd); \
+ \
+ /* Setup to read header, to get length of data */ \
CDIO_MMC_SET_READ_LENGTH16(cdb.field, i_size)
/* Boilerplate code to run a MMC command.
@@ -53,11 +53,11 @@
'direction' is the SCSI direction (read, write, none) of the
command.
*/
-#define MMC_RUN_CMD(direction, i_timeout) \
- p_cdio->op.run_mmc_cmd(p_cdio->env, \
- i_timeout, \
- mmc_get_cmd_len(cdb.field[0]), \
- &cdb, \
- direction, i_size, p_buf)
-
-#endif /* __CDIO_MMC_CMD_HELPER_H__ */
+#define MMC_RUN_CMD(direction, i_timeout) \
+ p_cdio->op.run_mmc_cmd(p_cdio->env, \
+ i_timeout, \
+ mmc_get_cmd_len(cdb.field[0]), \
+ &cdb, \
+ direction, i_size, p_buf)
+
+#endif /* CDIO_DRIVER_MMC_CMD_HELPER_H_ */
diff --git a/lib/driver/portable.h b/lib/driver/portable.h
index 0c005fe9..8b0ad7ba 100644
--- a/lib/driver/portable.h
+++ b/lib/driver/portable.h
@@ -21,8 +21,8 @@
included other routines can be more portable.
*/
-#ifndef __CDIO_PORTABLE_H__
-#define __CDIO_PORTABLE_H__
+#ifndef CDIO_DRIVER_PORTABLE_H_
+#define CDIO_DRIVER_PORTABLE_H_
#if defined(HAVE_CONFIG_H) && !defined(__CDIO_CONFIG_H__)
# include "config.h"
@@ -51,4 +51,4 @@
# define drand48() (rand() / (double)RAND_MAX)
#endif
-#endif /* __CDIO_PORTABLE_H__ */
+#endif /* CDIO_DRIVER_PORTABLE_H_ */
diff --git a/lib/iso9660/iso9660.c b/lib/iso9660/iso9660.c
index fd589d6d..c55ed5cf 100644
--- a/lib/iso9660/iso9660.c
+++ b/lib/iso9660/iso9660.c
@@ -335,15 +335,17 @@ iso9660_set_dtime_with_timezone (const struct tm *p_tm,
Set time in format used in ISO 9660 directory index record
from a Unix time structure. */
void
-iso9660_set_dtime (const struct tm *p_tm, /*out*/ iso9660_dtime_t *p_idr_date)
+iso9660_set_dtime(const struct tm *p_tm, /*out*/ iso9660_dtime_t *p_idr_date)
{
- int time_zone;
+ int time_zone = 0;
+ if (p_tm) {
#ifdef HAVE_TM_GMTOFF
- /* Convert seconds to minutes */
- time_zone = p_tm->tm_gmtoff / 60;
+ /* Convert seconds to minutes */
+ time_zone = p_tm->tm_gmtoff / 60;
#else
- time_zone = (p_tm->tm_isdst > 0) ? -60 : 0;
+ time_zone = (p_tm->tm_isdst > 0) ? -60 : 0;
#endif
+ }
iso9660_set_dtime_with_timezone (p_tm, time_zone, p_idr_date);
}
@@ -353,9 +355,9 @@ iso9660_set_dtime (const struct tm *p_tm, /*out*/ iso9660_dtime_t *p_idr_date)
correction in minutes.
*/
void
-iso9660_set_ltime_with_timezone (const struct tm *p_tm,
- int time_zone,
- /*out*/ iso9660_ltime_t *pvd_date)
+iso9660_set_ltime_with_timezone(const struct tm *p_tm,
+ int time_zone,
+ /*out*/ iso9660_ltime_t *pvd_date)
{
char *_pvd_date = (char *) pvd_date;
@@ -388,15 +390,17 @@ iso9660_set_ltime_with_timezone (const struct tm *p_tm,
Set "long" time in format used in ISO 9660 primary volume descriptor
from a Unix time structure. */
void
-iso9660_set_ltime (const struct tm *p_tm, /*out*/ iso9660_ltime_t *pvd_date)
+iso9660_set_ltime(const struct tm *p_tm, /*out*/ iso9660_ltime_t *pvd_date)
{
- int time_zone;
+ int time_zone = 0;
+ if (p_tm) {
#ifdef HAVE_TM_GMTOFF
- /* Set time zone in 15-minute interval encoding. */
- time_zone = p_tm->tm_gmtoff / 60;
+ /* Set time zone in 15-minute interval encoding. */
+ time_zone = p_tm->tm_gmtoff / 60;
#else
- time_zone = (p_tm->tm_isdst > 0) ? -60 : 0;
+ time_zone = (p_tm->tm_isdst > 0) ? -60 : 0;
#endif
+ }
iso9660_set_ltime_with_timezone (p_tm, time_zone, pvd_date);
}
@@ -666,8 +670,8 @@ iso9660_set_pvd(void *pd,
iso9660_set_ltime (&temp_tm, &(ipd.creation_date));
gmtime_r(pvd_time, &temp_tm);
iso9660_set_ltime (&temp_tm, &(ipd.modification_date));
- iso9660_set_ltime (&temp_tm, &(ipd.expiration_date));
- iso9660_set_ltime (&temp_tm, &(ipd.effective_date));
+ iso9660_set_ltime (NULL, &(ipd.expiration_date));
+ iso9660_set_ltime (NULL, &(ipd.effective_date));
ipd.file_structure_version = to_711(1);
diff --git a/lib/iso9660/iso9660_private.h b/lib/iso9660/iso9660_private.h
index 20ea2b4e..e798ec75 100644
--- a/lib/iso9660/iso9660_private.h
+++ b/lib/iso9660/iso9660_private.h
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2003, 2004, 2005, 2008, 2011
+ Copyright (C) 2003, 2004, 2005, 2008, 2011, 2012
Rocky Bernstein <rocky@gnu.org>
Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org>
@@ -22,8 +22,8 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef __CDIO_ISO9660_PRIVATE_H__
-#define __CDIO_ISO9660_PRIVATE_H__
+#ifndef CDIO_ISO9660_ISO9660_PRIVATE_H_
+#define CDIO_ISO9660_ISO9660_PRIVATE_H_
#if defined(HAVE_CONFIG_H) && !defined(__CDIO_CONFIG_H__)
# include "config.h"
@@ -71,7 +71,7 @@ typedef struct iso_path_table_s {
PRAGMA_END_PACKED
-#endif /* __CDIO_ISO9660_PRIVATE_H__ */
+#endif /* CDIO_ISO0660_ISO9660_PRIVATE_H_ */
/*
diff --git a/lib/udf/udf_fs.h b/lib/udf/udf_fs.h
index 80e99554..913953b8 100644
--- a/lib/udf/udf_fs.h
+++ b/lib/udf/udf_fs.h
@@ -1,7 +1,5 @@
/*
- $Id: udf_fs.h,v 1.3 2008/04/18 16:02:10 karl Exp $
-
- Copyright (C) 2006, 2008 Rocky Bernstein <rockyb@gnu.org>
+ Copyright (C) 2006, 2008, 2012 Rocky Bernstein <rockyb@gnu.org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -17,8 +15,8 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef __CDIO_UDF_FS_H__
-#define __CDIO_UDF_FS_H__
+#ifndef CDIO_UDF_UDF_FS_H_
+#define CDIO_UDF_UDF_FS_H_
#include <cdio/ecma_167.h>
/**
@@ -27,7 +25,7 @@
*/
int udf_checktag(const udf_tag_t *p_tag, udf_Uint16_t tag_id);
-#endif /* __CDIO_UDF_FS_H__ */
+#endif /* CDIO_UDF_UDF_FS_H_ */
/*
diff --git a/lib/udf/udf_private.h b/lib/udf/udf_private.h
index 559b1d48..d61cc911 100644
--- a/lib/udf/udf_private.h
+++ b/lib/udf/udf_private.h
@@ -15,8 +15,8 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef __CDIO_UDF_PRIVATE_H__
-#define __CDIO_UDF_PRIVATE_H__
+#ifndef CDIO_UDF_UDF_PRIVATE_H_
+#define CDIO_UDF_UDF_PRIVATE_H_
#if defined(HAVE_CONFIG_H) && !defined(LIBCDIO_CONFIG_H) && !defined(__CDIO_CONFIG_H__)
# include "config.h"
@@ -43,7 +43,7 @@ struct udf_s {
uint32_t fsd_offset; /* lba of fileset descriptor */
};
-#endif /* __CDIO_UDF_PRIVATE_H__ */
+#endif /* CDIO_UDF_UDF_PRIVATE_H_ */
/*
diff --git a/src/getopt.h b/src/getopt.h
index c40f6543..e4ebccbf 100644
--- a/src/getopt.h
+++ b/src/getopt.h
@@ -19,10 +19,10 @@
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
USA. */
-#ifndef _GETOPT_H
-#define _GETOPT_H 1
+#ifndef CDIO_SRC_GETOPT_H
+#define CDIO_SRC_GETOPT_H 1
-#ifdef __cplusplus
+#ifdef __cplusplus
extern "C" {
#endif
@@ -63,9 +63,9 @@ extern int optopt;
zero.
The field `has_arg' is:
- no_argument (or 0) if the option does not take an argument,
- required_argument (or 1) if the option requires an argument,
- optional_argument (or 2) if the option takes an optional argument.
+ no_argument (or 0) if the option does not take an argument,
+ required_argument (or 1) if the option requires an argument,
+ optional_argument (or 2) if the option takes an optional argument.
If the field `flag' is not NULL, it points to a variable that is set
to the value given in the field `val' when the option is found, but
@@ -94,9 +94,9 @@ struct option
/* Names for the values of the `has_arg' field of `struct option'. */
-#define no_argument 0
-#define required_argument 1
-#define optional_argument 2
+#define no_argument 0
+#define required_argument 1
+#define optional_argument 2
#if defined (__STDC__) && __STDC__
#if defined (__GNU_LIBRARY__) || defined (__MINGW32__)
@@ -108,26 +108,26 @@ extern int getopt (int argc, char *const *argv, const char *shortopts);
extern int getopt ();
#endif /* __GNU_LIBRARY__ */
extern int getopt_long (int argc, char *const *argv, const char *shortopts,
- const struct option *longopts, int *longind);
+ const struct option *longopts, int *longind);
extern int getopt_long_only (int argc, char *const *argv,
- const char *shortopts,
- const struct option *longopts, int *longind);
+ const char *shortopts,
+ const struct option *longopts, int *longind);
/* Internal only. Users should not call this directly. */
extern int _getopt_internal (int argc, char *const *argv,
- const char *shortopts,
- const struct option *longopts, int *longind,
- int long_only);
+ const char *shortopts,
+ const struct option *longopts, int *longind,
+ int long_only);
#else /* not __STDC__ */
-extern int getopt ();
-extern int getopt_long ();
-extern int getopt_long_only ();
+extern int getopt();
+extern int getopt_long();
+extern int getopt_long_only();
-extern int _getopt_internal ();
+extern int _getopt_internal();
#endif /* __STDC__ */
-#ifdef __cplusplus
+#ifdef __cplusplus
}
#endif
-#endif /* getopt.h */
+#endif /* CDIO_SRC_GETOPT_H */
diff --git a/test/check_cue.sh.in b/test/check_cue.sh.in
index d52b6661..890d2e42 100644
--- a/test/check_cue.sh.in
+++ b/test/check_cue.sh.in
@@ -2,15 +2,15 @@
# Tests to see that BIN/CUE and cdrdao TOC file iamge reading is correct
# (via cd-info).
-if test "@VCDINFO_LIBS@X" != "X" ; then
+if test ! -d "@VCDINFO_LIBS@" ; then
vcd_opt='--no-vcd'
fi
-if test "X$abs_top_srcdir" = "X" ; then
+if test ! -d "$abs_top_srcdir" ; then
abs_top_srcdir=@abs_top_srcdir@
fi
-if test "X$top_builddir" = "X" ; then
+if test ! -d "$top_builddir" ; then
top_builddir=@abs_top_builddir@
fi