mirror of
				https://github.com/pbatard/rufus.git
				synced 2024-08-14 23:57:05 +00:00 
			
		
		
		
	[iso] update libcdio to v0.90
This commit is contained in:
		
							parent
							
								
									2a3b95a11a
								
							
						
					
					
						commit
						bf98a552da
					
				
					 47 changed files with 1024 additions and 928 deletions
				
			
		|  | @ -371,7 +371,7 @@ out: | ||||||
| 	return r; | 	return r; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| BOOL ExtractISO(const char* src_iso, const char* dest_dir, bool scan) | BOOL ExtractISO(const char* src_iso, const char* dest_dir, BOOL scan) | ||||||
| { | { | ||||||
| 	size_t i; | 	size_t i; | ||||||
| 	int j; | 	int j; | ||||||
|  |  | ||||||
|  | @ -21,8 +21,8 @@ | ||||||
|  *         calls.  These control playing of the CD-ROM through its  |  *         calls.  These control playing of the CD-ROM through its  | ||||||
|  *         line-out jack. |  *         line-out jack. | ||||||
|  */ |  */ | ||||||
| #ifndef __CDIO_AUDIO_H__ | #ifndef CDIO_AUDIO_H_ | ||||||
| #define __CDIO_AUDIO_H__ | #define CDIO_AUDIO_H_ | ||||||
| 
 | 
 | ||||||
| #include <cdio/types.h> | #include <cdio/types.h> | ||||||
| 
 | 
 | ||||||
|  | @ -143,4 +143,4 @@ extern "C" { | ||||||
| } | } | ||||||
| #endif /* __cplusplus */ | #endif /* __cplusplus */ | ||||||
| 
 | 
 | ||||||
| #endif /* __CDIO_AUDIO_H__ */ | #endif /* CDIO_AUDIO_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) 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 |     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 |     it under the terms of the GNU General Public License as published by | ||||||
|  | @ -25,8 +23,8 @@ | ||||||
|  *   use glib.h routines instead. |  *   use glib.h routines instead. | ||||||
| */ | */ | ||||||
| 
 | 
 | ||||||
| #ifndef __CDIO_BYTESEX_H__ | #ifndef CDIO_BYTESEX_H_ | ||||||
| #define __CDIO_BYTESEX_H__ | #define CDIO_BYTESEX_H_ | ||||||
| 
 | 
 | ||||||
| #include <cdio/types.h> | #include <cdio/types.h> | ||||||
| #include <cdio/bytesex_asm.h> /* also defines CDIO_INLINE */ | #include <cdio/bytesex_asm.h> /* also defines CDIO_INLINE */ | ||||||
|  | @ -208,7 +206,7 @@ from_733 (uint64_t p) | ||||||
|   return (UINT32_C(0xFFFFFFFF) & p); |   return (UINT32_C(0xFFFFFFFF) & p); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| #endif /* __CDIO_BYTESEX_H__ */ | #endif /* CDIO_BYTESEX_H_ */ | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| /* 
 | /* 
 | ||||||
|  |  | ||||||
|  | @ -1,7 +1,5 @@ | ||||||
| /*
 | /*
 | ||||||
|     $Id: bytesex_asm.h,v 1.3 2008/03/25 15:59:08 karl Exp $ |     Copyright (C) 2008, 2012 Rocky Bernstein <rocky@gnu.org> | ||||||
| 
 |  | ||||||
|     Copyright (C) 2008 Rocky Bernstein <rocky@gnu.org> |  | ||||||
|                   2001, 2004, 2005 Herbert Valerio Riedel <hvr@gnu.org> |                   2001, 2004, 2005 Herbert Valerio Riedel <hvr@gnu.org> | ||||||
|                   2001 Sven Ottemann <ac-logic@freenet.de> |                   2001 Sven Ottemann <ac-logic@freenet.de> | ||||||
| 
 | 
 | ||||||
|  | @ -26,8 +24,8 @@ | ||||||
|     glib.h routines instead.  |     glib.h routines instead.  | ||||||
| */ | */ | ||||||
| 
 | 
 | ||||||
| #ifndef __CDIO_BYTESEX_ASM_H__ | #ifndef CDIO_BYTESEX_ASM_H_ | ||||||
| #define __CDIO_BYTESEX_ASM_H__ | #define CDIO_BYTESEX_ASM_H_ | ||||||
| #if !defined(DISABLE_ASM_OPTIMIZE) | #if !defined(DISABLE_ASM_OPTIMIZE) | ||||||
| 
 | 
 | ||||||
| #include <cdio/types.h> | #include <cdio/types.h> | ||||||
|  | @ -106,10 +104,10 @@ static CDIO_INLINE | ||||||
| uint32_t uint32_swap_le_be_asm(uint32_t a) | uint32_t uint32_swap_le_be_asm(uint32_t a) | ||||||
| { | { | ||||||
|   __asm__("xchgb %b0,%h0\n\t"     /* swap lower bytes     */ |   __asm__("xchgb %b0,%h0\n\t"     /* swap lower bytes     */ | ||||||
| 	  "rorl $16,%0\n\t"       /* swap words           */ |           "rorl $16,%0\n\t"       /* swap words           */ | ||||||
| 	  "xchgb %b0,%h0"         /* swap higher bytes    */ |           "xchgb %b0,%h0"         /* swap higher bytes    */ | ||||||
| 	  :"=q" (a) |           :"=q" (a) | ||||||
| 	  : "0" (a)); |           : "0" (a)); | ||||||
| 
 | 
 | ||||||
|   return(a); |   return(a); | ||||||
| } | } | ||||||
|  | @ -118,8 +116,8 @@ static CDIO_INLINE | ||||||
| uint16_t uint16_swap_le_be_asm(uint16_t a) | uint16_t uint16_swap_le_be_asm(uint16_t a) | ||||||
| { | { | ||||||
|   __asm__("xchgb %b0,%h0"         /* swap bytes           */  |   __asm__("xchgb %b0,%h0"         /* swap bytes           */  | ||||||
| 	  : "=q" (a)  |           : "=q" (a)  | ||||||
| 	  :  "0" (a)); |           :  "0" (a)); | ||||||
|    |    | ||||||
|   return(a); |   return(a); | ||||||
| } | } | ||||||
|  | @ -130,7 +128,7 @@ uint16_t uint16_swap_le_be_asm(uint16_t a) | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
| #endif /* !defined(DISABLE_ASM_OPTIMIZE) */ | #endif /* !defined(DISABLE_ASM_OPTIMIZE) */ | ||||||
| #endif /* __CDIO_BYTESEX_ASM_H__ */ | #endif /* CDIO_BYTESEX_ASM_H_ */ | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| /* 
 | /* 
 | ||||||
|  |  | ||||||
|  | @ -29,7 +29,7 @@ | ||||||
| /** Application Interface or Protocol version number. If the public
 | /** Application Interface or Protocol version number. If the public
 | ||||||
|  *  interface changes, we increase this number. |  *  interface changes, we increase this number. | ||||||
|  */ |  */ | ||||||
| #define CDIO_API_VERSION 5 | #define CDIO_API_VERSION 6 | ||||||
| 
 | 
 | ||||||
| #include <cdio/version.h> | #include <cdio/version.h> | ||||||
| #include <cdio/types.h> | #include <cdio/types.h> | ||||||
|  | @ -56,6 +56,9 @@ extern "C" { | ||||||
| */ | */ | ||||||
| #include <cdio/device.h> | #include <cdio/device.h> | ||||||
| 
 | 
 | ||||||
|  | /* CD-Text-related functions. */ | ||||||
|  | #include <cdio/cdtext.h> | ||||||
|  | 
 | ||||||
| /* Disc-related functions. */ | /* Disc-related functions. */ | ||||||
| #include <cdio/disc.h> | #include <cdio/disc.h> | ||||||
| 
 | 
 | ||||||
|  | @ -64,9 +67,6 @@ extern "C" { | ||||||
| */ | */ | ||||||
| #include <cdio/read.h> | #include <cdio/read.h> | ||||||
| 
 | 
 | ||||||
| /* CD-Text-related functions. */ |  | ||||||
| #include <cdio/cdtext.h> |  | ||||||
| 
 |  | ||||||
| /* Track-related functions. */ | /* Track-related functions. */ | ||||||
| #include <cdio/track.h> | #include <cdio/track.h> | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,6 +1,6 @@ | ||||||
| /* -*- c -*-
 | /* -*- c -*-
 | ||||||
| 
 | 
 | ||||||
|     Copyright (C) 2005, 2006, 2008, 2009, 2010, 2011 Rocky Bernstein |     Copyright (C) 2005, 2006, 2008, 2009, 2010, 2011, 2012 Rocky Bernstein | ||||||
|     <rocky@gnu.org> |     <rocky@gnu.org> | ||||||
| 
 | 
 | ||||||
|     This program is free software: you can redistribute it and/or modify |     This program is free software: you can redistribute it and/or modify | ||||||
|  | @ -23,8 +23,8 @@ | ||||||
|  *  \brief C header for driver- or device-related libcdio |  *  \brief C header for driver- or device-related libcdio | ||||||
|  *          calls.  ("device" includes CD-image reading devices). |  *          calls.  ("device" includes CD-image reading devices). | ||||||
|  */ |  */ | ||||||
| #ifndef __CDIO_DEVICE_H__ | #ifndef CDIO_DEVICE_H_ | ||||||
| #define __CDIO_DEVICE_H__ | #define CDIO_DEVICE_H_ | ||||||
| 
 | 
 | ||||||
| #ifdef __cplusplus | #ifdef __cplusplus | ||||||
| extern "C" { | extern "C" { | ||||||
|  | @ -47,13 +47,13 @@ extern "C" { | ||||||
|   typedef enum { |   typedef enum { | ||||||
|     CDIO_DRIVE_CAP_ERROR             = 0x40000, /**< Error */ |     CDIO_DRIVE_CAP_ERROR             = 0x40000, /**< Error */ | ||||||
|     CDIO_DRIVE_CAP_UNKNOWN           = 0x80000, /**< Dunno. It can be on if we
 |     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 |                                                 or are not completely certain | ||||||
| 						*/ |                                                 */ | ||||||
|     CDIO_DRIVE_CAP_MISC_CLOSE_TRAY   = 0x00001, /**< caddy systems can't 
 |     CDIO_DRIVE_CAP_MISC_CLOSE_TRAY   = 0x00001, /**< caddy systems can't 
 | ||||||
|                                                      close... */ |                                                      close... */ | ||||||
|     CDIO_DRIVE_CAP_MISC_EJECT        = 0x00002, /**< but can eject.  */ |     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_SPEED = 0x00008, /**< programmable speed */ | ||||||
|     CDIO_DRIVE_CAP_MISC_SELECT_DISC  = 0x00010, /**< select disc from 
 |     CDIO_DRIVE_CAP_MISC_SELECT_DISC  = 0x00010, /**< select disc from 
 | ||||||
|                                                       juke-box */ |                                                       juke-box */ | ||||||
|  | @ -61,7 +61,7 @@ extern "C" { | ||||||
|     CDIO_DRIVE_CAP_MISC_MEDIA_CHANGED= 0x00080, /**< media changed */ |     CDIO_DRIVE_CAP_MISC_MEDIA_CHANGED= 0x00080, /**< media changed */ | ||||||
|     CDIO_DRIVE_CAP_MISC_RESET        = 0x00100, /**< hard reset device */ |     CDIO_DRIVE_CAP_MISC_RESET        = 0x00100, /**< hard reset device */ | ||||||
|     CDIO_DRIVE_CAP_MISC_FILE         = 0x20000 /**< drive is really a file,
 |     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; |   } cdio_drive_cap_misc_t; | ||||||
| 
 | 
 | ||||||
|   /** Reading masks.. */ |   /** Reading masks.. */ | ||||||
|  | @ -151,7 +151,7 @@ extern "C" { | ||||||
|    */ |    */ | ||||||
|   typedef enum  { |   typedef enum  { | ||||||
|     DRIVER_UNKNOWN, /**< Used as input when we don't care what kind 
 |     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_AIX,     /**< AIX driver */ | ||||||
|     DRIVER_BSDI,    /**< BSDI driver */ |     DRIVER_BSDI,    /**< BSDI driver */ | ||||||
|     DRIVER_FREEBSD, /**< FreeBSD driver - includes CAM and ioctl access */ |     DRIVER_FREEBSD, /**< FreeBSD driver - includes CAM and ioctl access */ | ||||||
|  | @ -161,13 +161,13 @@ extern "C" { | ||||||
|     DRIVER_OS2,     /**< IBM OS/2 Driver */ |     DRIVER_OS2,     /**< IBM OS/2 Driver */ | ||||||
|     DRIVER_OSX,     /**< Apple OSX Driver */ |     DRIVER_OSX,     /**< Apple OSX Driver */ | ||||||
|     DRIVER_WIN32,   /**< Microsoft Windows Driver. Includes ASPI and 
 |     DRIVER_WIN32,   /**< Microsoft Windows Driver. Includes ASPI and 
 | ||||||
| 		         ioctl access. */ |                          ioctl access. */ | ||||||
|     DRIVER_CDRDAO,  /**< cdrdao format CD image. This is listed
 |     DRIVER_CDRDAO,  /**< cdrdao format CD image. This is listed
 | ||||||
| 		         before BIN/CUE, to make the code prefer cdrdao |                          before BIN/CUE, to make the code prefer cdrdao | ||||||
| 		         over BIN/CUE when both exist. */ |                          over BIN/CUE when both exist. */ | ||||||
|     DRIVER_BINCUE,  /**< CDRWIN BIN/CUE format CD image. This is
 |     DRIVER_BINCUE,  /**< CDRWIN BIN/CUE format CD image. This is
 | ||||||
| 		         listed before NRG, to make the code prefer |                          listed before NRG, to make the code prefer | ||||||
| 		         BIN/CUE over NRG when both exist. */ |                          BIN/CUE over NRG when both exist. */ | ||||||
|     DRIVER_NRG,     /**< Nero NRG format CD image. */ |     DRIVER_NRG,     /**< Nero NRG format CD image. */ | ||||||
|     DRIVER_DEVICE   /**< Is really a set of the above; should come last */ |     DRIVER_DEVICE   /**< Is really a set of the above; should come last */ | ||||||
|   } driver_id_t; |   } driver_id_t; | ||||||
|  | @ -200,10 +200,10 @@ extern "C" { | ||||||
|      enumeration in driver_id_t. Since we have a bogus (but useful) 0th |      enumeration in driver_id_t. Since we have a bogus (but useful) 0th | ||||||
|      entry above we don't have to add one. |      entry above we don't have to add one. | ||||||
|   */ |   */ | ||||||
| #define CDIO_MIN_DRIVER        DRIVER_AIX | LIBCDIO_DEPRECATED(static const driver_id_t CDIO_MIN_DRIVER, "please use cdio_drivers") = DRIVER_AIX; | ||||||
| #define CDIO_MIN_DEVICE_DRIVER CDIO_MIN_DRIVER | LIBCDIO_DEPRECATED(static const driver_id_t CDIO_MIN_DEVICE_DRIVER, "please use cdio_device_drivers") = DRIVER_AIX; | ||||||
| #define CDIO_MAX_DRIVER        DRIVER_NRG | LIBCDIO_DEPRECATED(static const driver_id_t CDIO_MAX_DRIVER, "please use cdio_drivers") = DRIVER_NRG; | ||||||
| #define CDIO_MAX_DEVICE_DRIVER DRIVER_WIN32 | LIBCDIO_DEPRECATED(static const driver_id_t CDIO_MAX_DEVICE_DRIVER, "please use cdio_device_drivers") = DRIVER_WIN32; | ||||||
| 
 | 
 | ||||||
|   /**
 |   /**
 | ||||||
|       The following are status codes for completion of a given cdio |       The following are status codes for completion of a given cdio | ||||||
|  | @ -219,30 +219,30 @@ extern "C" { | ||||||
|   */ |   */ | ||||||
|   typedef enum  { |   typedef enum  { | ||||||
|     DRIVER_OP_SUCCESS        =  0, /**< in cases where an int is
 |     DRIVER_OP_SUCCESS        =  0, /**< in cases where an int is
 | ||||||
| 				    returned, like cdio_set_speed, |                                     returned, like cdio_set_speed, | ||||||
| 				    more the negative return codes are |                                     more the negative return codes are | ||||||
| 				    for errors and the positive ones |                                     for errors and the positive ones | ||||||
| 				    for success. */ |                                     for success. */ | ||||||
|     DRIVER_OP_ERROR          = -1, /**< operation returned an error */ |     DRIVER_OP_ERROR          = -1, /**< operation returned an error */ | ||||||
|     DRIVER_OP_UNSUPPORTED    = -2, /**< returned when a particular driver
 |     DRIVER_OP_UNSUPPORTED    = -2, /**< returned when a particular driver
 | ||||||
| 				      doesn't support a particular operation. |                                       doesn't support a particular operation. | ||||||
| 				      For example an image driver which doesn't |                                       For example an image driver which doesn't | ||||||
| 				      really "eject" a CD. |                                       really "eject" a CD. | ||||||
| 				   */ |                                    */ | ||||||
|     DRIVER_OP_UNINIT         = -3, /**< returned when a particular driver
 |     DRIVER_OP_UNINIT         = -3, /**< returned when a particular driver
 | ||||||
| 				      hasn't been initialized or a null |                                       hasn't been initialized or a null | ||||||
| 				      pointer has been passed. |                                       pointer has been passed. | ||||||
| 				   */ |                                    */ | ||||||
|     DRIVER_OP_NOT_PERMITTED  = -4, /**< Operation not permitted.
 |     DRIVER_OP_NOT_PERMITTED  = -4, /**< Operation not permitted.
 | ||||||
| 				      For example might be a permission |                                       For example might be a permission | ||||||
| 				      problem. |                                       problem. | ||||||
| 				   */ |                                    */ | ||||||
|     DRIVER_OP_BAD_PARAMETER  = -5, /**< Bad parameter passed  */ |     DRIVER_OP_BAD_PARAMETER  = -5, /**< Bad parameter passed  */ | ||||||
|     DRIVER_OP_BAD_POINTER    = -6, /**< Bad pointer to memory area  */ |     DRIVER_OP_BAD_POINTER    = -6, /**< Bad pointer to memory area  */ | ||||||
|     DRIVER_OP_NO_DRIVER      = -7, /**< Operation called on a driver
 |     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,
 |     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; |   } driver_return_code_t; | ||||||
| 
 | 
 | ||||||
|   /**
 |   /**
 | ||||||
|  | @ -255,7 +255,7 @@ extern "C" { | ||||||
|     report back the driver used. |     report back the driver used. | ||||||
|   */ |   */ | ||||||
|   driver_return_code_t cdio_close_tray (const char *psz_drive,  |   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. |     @param drc the return code you want interpreted. | ||||||
|  | @ -365,7 +365,7 @@ extern "C" { | ||||||
|      was found. |      was found. | ||||||
|   */ |   */ | ||||||
|   char ** cdio_get_devices_with_cap (/*in*/ char *ppsz_search_devices[], |   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 |      Like cdio_get_devices_with_cap but we return the driver we found | ||||||
|  | @ -374,9 +374,9 @@ extern "C" { | ||||||
|      and speeds things up for libcdio as well. |      and speeds things up for libcdio as well. | ||||||
|   */ |   */ | ||||||
|   char ** cdio_get_devices_with_cap_ret (/*in*/ char* ppsz_search_devices[], |   char ** cdio_get_devices_with_cap_ret (/*in*/ char* ppsz_search_devices[], | ||||||
| 					 cdio_fs_anal_t capabilities,  |                                          cdio_fs_anal_t capabilities,  | ||||||
| 					 bool b_any, |                                          bool b_any, | ||||||
| 					 /*out*/ driver_id_t *p_driver_id); |                                          /*out*/ driver_id_t *p_driver_id); | ||||||
| 
 | 
 | ||||||
|   /**
 |   /**
 | ||||||
|      Like cdio_get_devices, but we may change the p_driver_id if we |      Like cdio_get_devices, but we may change the p_driver_id if we | ||||||
|  | @ -401,9 +401,9 @@ extern "C" { | ||||||
|      NULL even though there isa hardware CD-ROM. |      NULL even though there isa hardware CD-ROM. | ||||||
|   */ |   */ | ||||||
|   void cdio_get_drive_cap (const CdIo_t *p_cdio, |   void cdio_get_drive_cap (const CdIo_t *p_cdio, | ||||||
| 			   cdio_drive_read_cap_t  *p_read_cap, |                            cdio_drive_read_cap_t  *p_read_cap, | ||||||
| 			   cdio_drive_write_cap_t *p_write_cap, |                            cdio_drive_write_cap_t *p_write_cap, | ||||||
| 			   cdio_drive_misc_cap_t  *p_misc_cap); |                            cdio_drive_misc_cap_t  *p_misc_cap); | ||||||
|    |    | ||||||
|   /**
 |   /**
 | ||||||
|      Get the drive capabilities for a specified device. |      Get the drive capabilities for a specified device. | ||||||
|  | @ -415,9 +415,9 @@ extern "C" { | ||||||
|      NULL even though there isa hardware CD-ROM. |      NULL even though there isa hardware CD-ROM. | ||||||
|   */ |   */ | ||||||
|   void cdio_get_drive_cap_dev (const char *device, |   void cdio_get_drive_cap_dev (const char *device, | ||||||
| 			       cdio_drive_read_cap_t  *p_read_cap, |                                cdio_drive_read_cap_t  *p_read_cap, | ||||||
| 			       cdio_drive_write_cap_t *p_write_cap, |                                cdio_drive_write_cap_t *p_write_cap, | ||||||
| 			       cdio_drive_misc_cap_t  *p_misc_cap); |                                cdio_drive_misc_cap_t  *p_misc_cap); | ||||||
| 
 | 
 | ||||||
|   /**
 |   /**
 | ||||||
|      Get a string containing the name of the driver in use. |      Get a string containing the name of the driver in use. | ||||||
|  | @ -441,7 +441,7 @@ extern "C" { | ||||||
|     False is returned if we had an error getting the information. |     False is returned if we had an error getting the information. | ||||||
|   */ |   */ | ||||||
|   bool cdio_get_hwinfo ( const CdIo_t *p_cdio,  |   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 @@ extern "C" { | ||||||
|      @param i_last_session pointer to the session number to be returned. |      @param i_last_session pointer to the session number to be returned. | ||||||
|   */ |   */ | ||||||
|   driver_return_code_t cdio_get_last_session (CdIo_t *p_cdio, |   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. |       Find out if media has changed since the last call. | ||||||
|  | @ -508,7 +508,7 @@ extern "C" { | ||||||
|      @return the cdio object or NULL on error or no device. |      @return the cdio object or NULL on error or no device. | ||||||
|   */ |   */ | ||||||
|   CdIo_t * cdio_open_am (const char *psz_source,  |   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  |      Set up BIN/CUE CD disk-image for reading. Source is the .bin or  | ||||||
|  | @ -525,7 +525,7 @@ extern "C" { | ||||||
|      @return the cdio object or NULL on error or no device.. |      @return the cdio object or NULL on error or no device.. | ||||||
|    */ |    */ | ||||||
|   CdIo_t * cdio_open_am_bincue (const char *psz_cue_name,  |   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 |      Set up cdrdao CD disk-image for reading. Source is the .toc file | ||||||
|  | @ -540,7 +540,7 @@ extern "C" { | ||||||
|      @return the cdio object or NULL on error or no device.. |      @return the cdio object or NULL on error or no device.. | ||||||
|   */ |   */ | ||||||
|   CdIo_t * cdio_open_am_cdrdao (const char *psz_toc_name,  |   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 |      Return a string containing the default CUE file that would | ||||||
|  | @ -578,7 +578,7 @@ extern "C" { | ||||||
|      NULL on error or there is no driver for a some sort of hardware CD-ROM. |      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, |   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 |      CDRWIN BIN/CUE CD disc-image routines. Source is the .cue file | ||||||
|  | @ -598,7 +598,7 @@ extern "C" { | ||||||
|      @see cdio_open |      @see cdio_open | ||||||
|    */ |    */ | ||||||
|   CdIo_t * cdio_open_am_aix (const char *psz_source, |   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 |      Set up CD-ROM for reading using the AIX driver. The device_name is | ||||||
|  | @ -654,7 +654,7 @@ extern "C" { | ||||||
|      @see cdio_open |      @see cdio_open | ||||||
|    */ |    */ | ||||||
|   CdIo_t * cdio_open_am_bsdi (const char *psz_source, |   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 |      Return a string containing the default device name that the BSDI | ||||||
|  | @ -696,7 +696,7 @@ extern "C" { | ||||||
|      @see cdio_open_cd, cdio_open |      @see cdio_open_cd, cdio_open | ||||||
|    */ |    */ | ||||||
|   CdIo_t * cdio_open_am_freebsd (const char *psz_source, |   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 |      Return a string containing the default device name that the | ||||||
|  | @ -733,7 +733,7 @@ extern "C" { | ||||||
|      NULL on error or there is no GNU/Linux driver. |      NULL on error or there is no GNU/Linux driver. | ||||||
|    */ |    */ | ||||||
|   CdIo_t * cdio_open_am_linux (const char *psz_source, |   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 |      Return a string containing the default device name that the | ||||||
|  | @ -773,7 +773,7 @@ extern "C" { | ||||||
|      NULL on error or there is no Solaris driver. |      NULL on error or there is no Solaris driver. | ||||||
|    */ |    */ | ||||||
|   CdIo_t * cdio_open_am_solaris (const char *psz_source,  |   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 |      Return a string containing the default device name that the | ||||||
|  | @ -819,7 +819,7 @@ extern "C" { | ||||||
|      @see cdio_open_cd, cdio_open |      @see cdio_open_cd, cdio_open | ||||||
|    */ |    */ | ||||||
|   CdIo_t * cdio_open_am_osx (const char *psz_source, |   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 |      Return a string containing the default device name that the OSX | ||||||
|  | @ -855,7 +855,7 @@ extern "C" { | ||||||
|      NULL is returned on error or there is no Microsof Windows driver. |      NULL is returned on error or there is no Microsof Windows driver. | ||||||
|    */ |    */ | ||||||
|   CdIo_t * cdio_open_am_win32 (const char *psz_source, |   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  |      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.  |      @return true on success; NULL on error or there is no Nero driver.  | ||||||
|    */ |    */ | ||||||
|   CdIo_t * cdio_open_am_nrg (const char *psz_source, |   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 |      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.  |     Set the blocksize for subsequent reads.  | ||||||
|   */ |   */ | ||||||
|   driver_return_code_t cdio_set_blocksize ( const CdIo_t *p_cdio,  |   driver_return_code_t cdio_set_blocksize ( const CdIo_t *p_cdio,  | ||||||
| 					    int i_blocksize ); |                                             int i_blocksize ); | ||||||
| 
 | 
 | ||||||
|   /**
 |   /**
 | ||||||
|      Set the drive speed.  |      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 |       @see mmc_set_speed and mmc_set_drive_speed | ||||||
|   */ |   */ | ||||||
|   driver_return_code_t cdio_set_speed ( const CdIo_t *p_cdio,  |   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.  |      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 |      @param value the value to assocaiate with key | ||||||
|   */ |   */ | ||||||
|   driver_return_code_t cdio_set_arg (CdIo_t *p_cdio, const char 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. |     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_mmc_hw_len_t              debug_cdio_mmc_hw_len; | ||||||
| extern cdio_src_category_mask_t       debug_cdio_src_category_mask; | extern cdio_src_category_mask_t       debug_cdio_src_category_mask; | ||||||
| 
 | 
 | ||||||
| #endif /* __CDIO_DEVICE_H__ */ | #endif /* CDIO_DEVICE_H_ */ | ||||||
|  |  | ||||||
|  | @ -1,6 +1,6 @@ | ||||||
| /* -*- c -*-
 | /* -*- c -*-
 | ||||||
| 
 | 
 | ||||||
|     Copyright (C) 2004, 2005, 2006, 2008, 2010 Rocky Bernstein |     Copyright (C) 2004, 2005, 2006, 2008, 2010, 2012 Rocky Bernstein | ||||||
|     <rocky@gnu.org> |     <rocky@gnu.org> | ||||||
| 
 | 
 | ||||||
|     This program is free software: you can redistribute it and/or modify |     This program is free software: you can redistribute it and/or modify | ||||||
|  | @ -21,8 +21,8 @@ | ||||||
|    \file disc.h  |    \file disc.h  | ||||||
|    \brief  The top-level header for disc-related libcdio calls. |    \brief  The top-level header for disc-related libcdio calls. | ||||||
|  */ |  */ | ||||||
| #ifndef __CDIO_DISC_H__ | #ifndef CDIO_DISC_H_ | ||||||
| #define __CDIO_DISC_H__ | #define CDIO_DISC_H_ | ||||||
| 
 | 
 | ||||||
| #ifdef __cplusplus | #ifdef __cplusplus | ||||||
| extern "C" { | extern "C" { | ||||||
|  | @ -34,10 +34,10 @@ extern "C" { | ||||||
|        GNU/Linux /usr/include/linux/cdrom.h and we've added DVD. |        GNU/Linux /usr/include/linux/cdrom.h and we've added DVD. | ||||||
|     */ |     */ | ||||||
|   typedef enum { |   typedef enum { | ||||||
|     CDIO_DISC_MODE_CD_DA,	    /**< CD-DA */ |     CDIO_DISC_MODE_CD_DA,           /**< CD-DA */ | ||||||
|     CDIO_DISC_MODE_CD_DATA,	    /**< CD-ROM form 1 */ |     CDIO_DISC_MODE_CD_DATA,         /**< CD-ROM form 1 */ | ||||||
|     CDIO_DISC_MODE_CD_XA,	    /**< CD-ROM XA form2 */ |     CDIO_DISC_MODE_CD_XA,           /**< CD-ROM XA form2 */ | ||||||
|     CDIO_DISC_MODE_CD_MIXED,	    /**< Some combo of above. */ |     CDIO_DISC_MODE_CD_MIXED,        /**< Some combo of above. */ | ||||||
|     CDIO_DISC_MODE_DVD_ROM,         /**< DVD ROM (e.g. movies) */ |     CDIO_DISC_MODE_DVD_ROM,         /**< DVD ROM (e.g. movies) */ | ||||||
|     CDIO_DISC_MODE_DVD_RAM,         /**< DVD-RAM */ |     CDIO_DISC_MODE_DVD_RAM,         /**< DVD-RAM */ | ||||||
|     CDIO_DISC_MODE_DVD_R,           /**< DVD-R */ |     CDIO_DISC_MODE_DVD_R,           /**< DVD-R */ | ||||||
|  | @ -52,10 +52,11 @@ extern "C" { | ||||||
|     CDIO_DISC_MODE_DVD_OTHER,       /**< Unknown/unclassified DVD type */ |     CDIO_DISC_MODE_DVD_OTHER,       /**< Unknown/unclassified DVD type */ | ||||||
|     CDIO_DISC_MODE_NO_INFO, |     CDIO_DISC_MODE_NO_INFO, | ||||||
|     CDIO_DISC_MODE_ERROR, |     CDIO_DISC_MODE_ERROR, | ||||||
|     CDIO_DISC_MODE_CD_I	        /**< CD-i. */ |     CDIO_DISC_MODE_CD_I         /**< CD-i. */ | ||||||
|   } discmode_t; |   } discmode_t; | ||||||
| 
 | 
 | ||||||
|   extern const char *discmode2str[]; |   extern const char *discmode2str[]; | ||||||
|  | 
 | ||||||
|   /**
 |   /**
 | ||||||
|     Get binary CD-Text information for a CdIo_t object. |     Get binary CD-Text information for a CdIo_t object. | ||||||
| 
 | 
 | ||||||
|  | @ -133,4 +134,4 @@ extern "C" { | ||||||
| } | } | ||||||
| #endif /* __cplusplus */ | #endif /* __cplusplus */ | ||||||
| 
 | 
 | ||||||
| #endif /* __CDIO_DISC_H__ */ | #endif /* CDIO_DISC_H_ */ | ||||||
|  |  | ||||||
|  | @ -26,8 +26,8 @@ | ||||||
| */ | */ | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| #ifndef __CDIO_DS_H__ | #ifndef CDIO_DS_H_ | ||||||
| #define __CDIO_DS_H__ | #define CDIO_DS_H_ | ||||||
| 
 | 
 | ||||||
| #include <cdio/types.h> | #include <cdio/types.h> | ||||||
| 
 | 
 | ||||||
|  | @ -86,7 +86,7 @@ void *_cdio_list_node_data (CdioListNode_t *p_node); | ||||||
| } | } | ||||||
| #endif /* __cplusplus */ | #endif /* __cplusplus */ | ||||||
| 
 | 
 | ||||||
| #endif /* __CDIO_DS_H__ */ | #endif /* CDIO_DS_H_ */ | ||||||
|  |  | ||||||
| /* 
 | /* 
 | ||||||
|  * Local variables: |  * Local variables: | ||||||
|  |  | ||||||
|  | @ -27,35 +27,40 @@ | ||||||
| 
 | 
 | ||||||
| */ | */ | ||||||
| 
 | 
 | ||||||
| #ifndef __CDIO_DVD_H__ | #ifndef CDIO_DVD_H_ | ||||||
| #define __CDIO_DVD_H__ | #define CDIO_DVD_H_ | ||||||
| 
 | 
 | ||||||
| #include <cdio/types.h> | #include <cdio/types.h> | ||||||
| 
 | 
 | ||||||
| /**
 | /**
 | ||||||
|    Values used in a READ DVD STRUCTURE |    Values used in a READ DVD STRUCTURE | ||||||
|  */ |  */ | ||||||
| 
 | typedef enum cdio_dvd_structure | ||||||
| #define CDIO_DVD_STRUCT_PHYSICAL	0x00 | { | ||||||
| #define CDIO_DVD_STRUCT_COPYRIGHT	0x01 | 	CDIO_DVD_STRUCT_PHYSICAL	= 0x00, | ||||||
| #define CDIO_DVD_STRUCT_DISCKEY	        0x02 | 	CDIO_DVD_STRUCT_COPYRIGHT	= 0x01, | ||||||
| #define CDIO_DVD_STRUCT_BCA		0x03 | 	CDIO_DVD_STRUCT_DISCKEY	        = 0x02, | ||||||
| #define CDIO_DVD_STRUCT_MANUFACT	0x04 | 	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. |     Media definitions for "DVD Book" from MMC-5 Table 400, page 419. | ||||||
| */ | */ | ||||||
| #define CDIO_DVD_BOOK_DVD_ROM     0x0 /**< DVD-ROM */ | typedef enum cdio_dvd_book | ||||||
| #define CDIO_DVD_BOOK_DVD_RAM     0x1 /**< DVD-RAM */ | { | ||||||
| #define CDIO_DVD_BOOK_DVD_R       0x2 /**< DVD-R */ | 	CDIO_DVD_BOOK_DVD_ROM    = 0x0, /**< DVD-ROM */ | ||||||
| #define CDIO_DVD_BOOK_DVD_RW      0x3 /**< DVD-RW */ | 	CDIO_DVD_BOOK_DVD_RAM    = 0x1, /**< DVD-RAM */ | ||||||
| #define CDIO_DVD_BOOK_HD_DVD_ROM  0x4 /**< HD DVD-ROM */ | 	CDIO_DVD_BOOK_DVD_R      = 0x2, /**< DVD-R */ | ||||||
| #define CDIO_DVD_BOOK_HD_DVD_RAM  0x5 /**< HD DVD-RAM */ | 	CDIO_DVD_BOOK_DVD_RW     = 0x3, /**< DVD-RW */ | ||||||
| #define CDIO_DVD_BOOK_HD_DVD_R    0x6 /**< HD DVD-R */ | 	CDIO_DVD_BOOK_HD_DVD_ROM = 0x4, /**< HD DVD-ROM */ | ||||||
| #define CDIO_DVD_BOOK_DVD_PRW     0x9 /**< DVD+RW */ | 	CDIO_DVD_BOOK_HD_DVD_RAM = 0x5, /**< HD DVD-RAM */ | ||||||
| #define CDIO_DVD_BOOK_DVD_PR      0xa /**< DVD+R  */ | 	CDIO_DVD_BOOK_HD_DVD_R   = 0x6, /**< HD DVD-R */ | ||||||
| #define CDIO_DVD_BOOK_DVD_PRW_DL  0xd /**< DVD+RW DL  */ | 	CDIO_DVD_BOOK_DVD_PRW    = 0x9, /**< DVD+RW */ | ||||||
| #define CDIO_DVD_BOOK_DVD_PR_DL   0xe /**< DVD+R DL  */ | 	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 { | typedef struct cdio_dvd_layer { | ||||||
|   unsigned int book_version	: 4; |   unsigned int book_version	: 4; | ||||||
|  | @ -124,4 +129,4 @@ typedef union { | ||||||
|   cdio_dvd_manufact_t	manufact; |   cdio_dvd_manufact_t	manufact; | ||||||
| } cdio_dvd_struct_t; | } cdio_dvd_struct_t; | ||||||
| 
 | 
 | ||||||
| #endif /* __CDIO_DVD_H__ */ | #endif /* CDIO_DVD_H_ */ | ||||||
|  |  | ||||||
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							|  | @ -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, 2012 | ||||||
| 
 |  | ||||||
|     Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008 |  | ||||||
|                   Rocky Bernstein <rocky@gnu.org> |                   Rocky Bernstein <rocky@gnu.org> | ||||||
|     Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org> |     Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org> | ||||||
| 
 | 
 | ||||||
|  | @ -33,8 +31,8 @@ | ||||||
| */ | */ | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| #ifndef __CDIO_ISO9660_H__ | #ifndef CDIO_ISO9660_H_ | ||||||
| #define __CDIO_ISO9660_H__ | #define CDIO_ISO9660_H_ | ||||||
| 
 | 
 | ||||||
| #include <time.h> | #include <time.h> | ||||||
| 
 | 
 | ||||||
|  | @ -71,7 +69,7 @@ typedef char     dchar_t;  /*! See section 7.4.1 */ | ||||||
| #undef ISODCL | #undef ISODCL | ||||||
| #endif | #endif | ||||||
| /* This part borrowed from the bsd386 isofs */ | /* 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_TRACK_SIZE 4*75 | ||||||
| #define MIN_ISO_SIZE MIN_TRACK_SIZE | #define MIN_ISO_SIZE MIN_TRACK_SIZE | ||||||
|  | @ -107,14 +105,14 @@ extern enum iso_enum1_s { | ||||||
| 
 | 
 | ||||||
| /*! ISO 9660 directory flags. */ | /*! ISO 9660 directory flags. */ | ||||||
| extern enum iso_flag_enum_s { | extern enum iso_flag_enum_s { | ||||||
|   ISO_FILE	      =   0,   /**<  Not really a flag...	         */ |   ISO_FILE            =   0,   /**<  Not really a flag...                */ | ||||||
|   ISO_EXISTENCE	      =   1,   /**< Do not make existence known (hidden) */ |   ISO_EXISTENCE       =   1,   /**< Do not make existence known (hidden) */ | ||||||
|   ISO_DIRECTORY	      =   2,   /**< This file is a directory		 */ |   ISO_DIRECTORY       =   2,   /**< This file is a directory             */ | ||||||
|   ISO_ASSOCIATED      =   4,   /**< This file is an associated file	 */ |   ISO_ASSOCIATED      =   4,   /**< This file is an associated file      */ | ||||||
|   ISO_RECORD	      =   8,   /**< Record format in extended attr. != 0 */ |   ISO_RECORD          =   8,   /**< Record format in extended attr. != 0 */ | ||||||
|   ISO_PROTECTION      =  16,   /**< No read/execute perm. in ext. attr.  */ |   ISO_PROTECTION      =  16,   /**< No read/execute perm. in ext. attr.  */ | ||||||
|   ISO_DRESERVED1      =  32,   /**<, Reserved bit 5			 */ |   ISO_DRESERVED1      =  32,   /**<, Reserved bit 5                      */ | ||||||
|   ISO_DRESERVED2      =  64,   /**<, Reserved bit 6			 */ |   ISO_DRESERVED2      =  64,   /**<, Reserved bit 6                      */ | ||||||
|   ISO_MULTIEXTENT     = 128,   /**< Not final entry of a mult. ext. file */ |   ISO_MULTIEXTENT     = 128,   /**< Not final entry of a mult. ext. file */ | ||||||
| } iso_flag_enums; | } iso_flag_enums; | ||||||
| 
 | 
 | ||||||
|  | @ -124,7 +122,7 @@ extern enum iso_vd_enum_s { | ||||||
|   ISO_VD_PRIMARY       =  1,  /**< Is in any ISO-9660 */ |   ISO_VD_PRIMARY       =  1,  /**< Is in any ISO-9660 */ | ||||||
|   ISO_VD_SUPPLEMENTARY =  2,  /**< Used by Joliet, for example */ |   ISO_VD_SUPPLEMENTARY =  2,  /**< Used by Joliet, for example */ | ||||||
|   ISO_VD_PARITION      =  3,  /**< Indicates a partition of a CD */ |   ISO_VD_PARITION      =  3,  /**< Indicates a partition of a CD */ | ||||||
|   ISO_VD_END	       = 255 |   ISO_VD_END           = 255 | ||||||
| } iso_vd_enums; | } iso_vd_enums; | ||||||
| 
 | 
 | ||||||
|    |    | ||||||
|  | @ -136,12 +134,12 @@ extern enum iso_vd_enum_s { | ||||||
|     For ISO-9660 Level 1, the maximum needed string length is: |     For ISO-9660 Level 1, the maximum needed string length is: | ||||||
| 
 | 
 | ||||||
| @code | @code | ||||||
|   	 30 chars (filename + ext) |          30 chars (filename + ext) | ||||||
|     +	  2 chars ('.' + ';') |     +     2 chars ('.' + ';') | ||||||
|     +	  5 chars (strlen("32767")) |     +     5 chars (strlen("32767")) | ||||||
|     +	  1 null byte |     +     1 null byte | ||||||
|    ================================ |    ================================ | ||||||
|     =	 38 chars |     =    38 chars | ||||||
| @endcode | @endcode | ||||||
| 
 | 
 | ||||||
| */ | */ | ||||||
|  | @ -183,15 +181,15 @@ PRAGMA_BEGIN_PACKED | ||||||
|    |    | ||||||
|   @see iso9660_dtime |   @see iso9660_dtime | ||||||
|  */ |  */ | ||||||
| struct	iso9660_dtime_s { | struct  iso9660_dtime_s { | ||||||
|   iso711_t 	dt_year;   /**< Number of years since 1900 */ |   iso711_t      dt_year;   /**< Number of years since 1900 */ | ||||||
|   iso711_t 	dt_month;  /**< Has value in range 1..12. Note starts
 |   iso711_t      dt_month;  /**< Has value in range 1..12. Note starts
 | ||||||
|                               at 1, not 0 like a tm struct. */ |                               at 1, not 0 like a tm struct. */ | ||||||
|   iso711_t	dt_day;    /**< Day of the month from 1 to 31 */ |   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_hour;   /**< Hour of the day from 0 to 23 */ | ||||||
|   iso711_t	dt_minute; /**< Minute of the hour from 0 to 59 */ |   iso711_t      dt_minute; /**< Minute of the hour from 0 to 59 */ | ||||||
|   iso711_t	dt_second; /**< Second of the minute 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
 |   iso712_t      dt_gmtoff; /**< GMT values -48 .. + 52 in 15 minute
 | ||||||
|                               intervals */ |                               intervals */ | ||||||
| } GNUC_PACKED; | } GNUC_PACKED; | ||||||
| 
 | 
 | ||||||
|  | @ -206,19 +204,19 @@ typedef struct iso9660_dtime_s  iso9660_dtime_t; | ||||||
|    |    | ||||||
|   @see iso9660_ltime |   @see iso9660_ltime | ||||||
|  */ |  */ | ||||||
| struct	iso9660_ltime_s { | struct  iso9660_ltime_s { | ||||||
|   char	 lt_year	[ISODCL(   1,	4)];   /**< Add 1900 to value
 |   char   lt_year        [ISODCL(   1,   4)];   /**< Add 1900 to value
 | ||||||
|                                                     for the Julian |                                                     for the Julian | ||||||
|                                                     year */ |                                                     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 |                                                   1..12. Note starts | ||||||
|                                                   at 1, not 0 like a |                                                   at 1, not 0 like a | ||||||
|                                                   tm struct. */ |                                                   tm struct. */ | ||||||
|   char	 lt_day		[ISODCL(   7,	8)];   /**< Day of month: 1..31 */ |   char   lt_day         [ISODCL(   7,   8)];   /**< Day of month: 1..31 */ | ||||||
|   char	 lt_hour	[ISODCL(   9,	10)];  /**< hour: 0..23 */ |   char   lt_hour        [ISODCL(   9,   10)];  /**< hour: 0..23 */ | ||||||
|   char	 lt_minute	[ISODCL(  11,	12)];  /**< minute: 0..59 */ |   char   lt_minute      [ISODCL(  11,   12)];  /**< minute: 0..59 */ | ||||||
|   char	 lt_second	[ISODCL(  13,	14)];  /**< second: 0..59 */ |   char   lt_second      [ISODCL(  13,   14)];  /**< second: 0..59 */ | ||||||
|   char	 lt_hsecond	[ISODCL(  15,	16)];  /**< The value is in
 |   char   lt_hsecond     [ISODCL(  15,   16)];  /**< The value is in
 | ||||||
|                                                   units of 1/100's of |                                                   units of 1/100's of | ||||||
|                                                   a second */ |                                                   a second */ | ||||||
|   iso712_t lt_gmtoff;  /**< Offset from Greenwich Mean Time in number
 |   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" 
 |   char             id[5];                        /**< ISO_STANDARD_ID "CD001" 
 | ||||||
|                                                   */ |                                                   */ | ||||||
|   iso711_t         version;                      /**< value 1 */ |   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 
 |   achar_t          system_id[ISO_MAX_SYSTEM_ID]; /**< Section 8.5.4; each char 
 | ||||||
|                                                     is an achar */ |                                                     is an achar */ | ||||||
|   dchar_t          volume_id[ISO_MAX_VOLUME_ID]; /**< Section 8.5.5; each char
 |   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 */ | #endif /* __cplusplus */ | ||||||
| 
 | 
 | ||||||
| #undef ISODCL | #undef ISODCL | ||||||
| #endif /* __CDIO_ISO9660_H__ */ | #endif /* CDIO_ISO9660_H_ */ | ||||||
|  |  | ||||||
| /* 
 | /* 
 | ||||||
|  * Local variables: |  * Local variables: | ||||||
|  |  | ||||||
|  | @ -1,7 +1,5 @@ | ||||||
| /*
 | /*
 | ||||||
|     $Id: logging.h,v 1.11 2008/03/25 15:59:09 karl Exp $ |     Copyright (C) 2003, 2004, 2008, 2012 Rocky Bernstein <rocky@gnu.org> | ||||||
| 
 |  | ||||||
|     Copyright (C) 2003, 2004, 2008 Rocky Bernstein <rocky@gnu.org> |  | ||||||
|     Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org> |     Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org> | ||||||
| 
 | 
 | ||||||
|     This program is free software: you can redistribute it and/or modify |     This program is free software: you can redistribute it and/or modify | ||||||
|  | @ -23,8 +21,8 @@ | ||||||
|  *          |  *          | ||||||
|  */ |  */ | ||||||
|  |  | ||||||
| #ifndef __LOGGING_H__ | #ifndef CDIO_LOGGING_H_ | ||||||
| #define __LOGGING_H__ | #define CDIO_LOGGING_H_ | ||||||
| 
 | 
 | ||||||
| #include <cdio/types.h> | #include <cdio/types.h> | ||||||
| 
 | 
 | ||||||
|  | @ -128,7 +126,7 @@ void cdio_error (const char format[], ...) GNUC_PRINTF(1,2); | ||||||
| } | } | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
| #endif /* __LOGGING_H__ */ | #endif /* CDIO_LOGGING_H_ */ | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| /* 
 | /* 
 | ||||||
|  |  | ||||||
|  | @ -1,7 +1,5 @@ | ||||||
| /*
 | /*
 | ||||||
|     $Id: posix.h,v 1.2 2008/03/25 15:59:09 karl Exp $ |     Copyright (C) 2005, 2008, 2012 Rocky Bernstein <rocky@gnu.org> | ||||||
| 
 |  | ||||||
|     Copyright (C) 2005, 2008 Rocky Bernstein <rocky@gnu.org> |  | ||||||
| 
 | 
 | ||||||
|     This program is free software: you can redistribute it and/or modify |     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 |     it under the terms of the GNU General Public License as published by | ||||||
|  | @ -22,8 +20,8 @@ | ||||||
|  * \brief various POSIX definitions. |  * \brief various POSIX definitions. | ||||||
| */ | */ | ||||||
| 
 | 
 | ||||||
| #ifndef __CDIO_POSIX_H__ | #ifndef CDIO_POSIX_H_ | ||||||
| #define __CDIO_POSIX_H__ | #define CDIO_POSIX_H_ | ||||||
| 
 | 
 | ||||||
| typedef uint32_t posix_mode_t; | typedef uint32_t posix_mode_t; | ||||||
| typedef uint32_t posix_nlink_t; | typedef uint32_t posix_nlink_t; | ||||||
|  | @ -31,7 +29,7 @@ typedef uint32_t posix_uid_t; | ||||||
| typedef uint32_t posix_gid_t; | typedef uint32_t posix_gid_t; | ||||||
| typedef uint16_t unicode16_t; | typedef uint16_t unicode16_t; | ||||||
| 
 | 
 | ||||||
| #endif /* __CDIO_POSIX_H__ */ | #endif /* CDIO_POSIX_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, 2012 Rocky Bernstein <rocky@gnu.org> | ||||||
| 
 |  | ||||||
|     Copyright (C) 2005, 2006, 2007, 2008 Rocky Bernstein <rocky@gnu.org> |  | ||||||
| 
 | 
 | ||||||
|     This program is free software: you can redistribute it and/or modify |     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 |     it under the terms of the GNU General Public License as published by | ||||||
|  | @ -23,8 +21,8 @@ | ||||||
|  *  libcdio calls.  |  *  libcdio calls.  | ||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
| #ifndef __CDIO_READ_H__ | #ifndef CDIO_READ_H_ | ||||||
| #define __CDIO_READ_H__ | #define CDIO_READ_H_ | ||||||
| 
 | 
 | ||||||
| #include <cdio/types.h> | #include <cdio/types.h> | ||||||
| 
 | 
 | ||||||
|  | @ -74,11 +72,11 @@ extern "C" { | ||||||
|     @param p_cdio object to read from |     @param p_cdio object to read from | ||||||
|     @param p_buf place to read data into. The caller should make sure |     @param p_buf place to read data into. The caller should make sure | ||||||
|                  this location can store at least CDIO_FRAMESIZE_RAW |                  this location can store at least CDIO_FRAMESIZE_RAW | ||||||
| 		 bytes. |                  bytes. | ||||||
|     @param i_lsn sector to read |     @param i_lsn sector to read | ||||||
|   */ |   */ | ||||||
|   driver_return_code_t cdio_read_audio_sector (const CdIo_t *p_cdio,  |   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 |     Reads audio sectors | ||||||
|  | @ -86,13 +84,13 @@ extern "C" { | ||||||
|     @param p_cdio object to read from |     @param p_cdio object to read from | ||||||
|     @param p_buf place to read data into. The caller should make sure |     @param p_buf place to read data into. The caller should make sure | ||||||
|                  this location can store at least CDIO_FRAMESIZE_RAW |                  this location can store at least CDIO_FRAMESIZE_RAW | ||||||
| 		 * i_blocks bytes. |                  * i_blocks bytes. | ||||||
|     @param i_lsn sector to read |     @param i_lsn sector to read | ||||||
|     @param i_blocks number of sectors to read |     @param i_blocks number of sectors to read | ||||||
|   */ |   */ | ||||||
|   driver_return_code_t cdio_read_audio_sectors (const CdIo_t *p_cdio,  |   driver_return_code_t cdio_read_audio_sectors (const CdIo_t *p_cdio,  | ||||||
| 						void *p_buf, lsn_t i_lsn, |                                                 void *p_buf, lsn_t i_lsn, | ||||||
| 						uint32_t i_blocks); |                                                 uint32_t i_blocks); | ||||||
| 
 | 
 | ||||||
|   /*!
 |   /*!
 | ||||||
|     Read data sectors |     Read data sectors | ||||||
|  | @ -100,11 +98,11 @@ extern "C" { | ||||||
|     @param p_cdio object to read from |     @param p_cdio object to read from | ||||||
|     @param p_buf place to read data into.  The caller should make sure |     @param p_buf place to read data into.  The caller should make sure | ||||||
|                  this location can store at least ISO_BLOCKSIZE,  |                  this location can store at least ISO_BLOCKSIZE,  | ||||||
| 		 M2RAW_SECTOR_SIZE, or M2F2_SECTOR_SIZE depending |                  M2RAW_SECTOR_SIZE, or M2F2_SECTOR_SIZE depending | ||||||
| 		 on the kind of sector getting read. If you don't  |                  on the kind of sector getting read. If you don't  | ||||||
| 		 know whether you have a Mode 1/2, Form 1/ Form 2/Formless |                  know whether you have a Mode 1/2, Form 1/ Form 2/Formless | ||||||
| 		 sector best to reserve space for the maximum,  |                  sector best to reserve space for the maximum,  | ||||||
| 		 M2RAW_SECTOR_SIZE. |                  M2RAW_SECTOR_SIZE. | ||||||
|     @param i_lsn sector to read |     @param i_lsn sector to read | ||||||
|     @param i_blocksize size of block. Should be either CDIO_CD_FRAMESIZE,  |     @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. |     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 |     @param i_blocks number of blocks to read | ||||||
|   */ |   */ | ||||||
|   driver_return_code_t cdio_read_data_sectors ( const CdIo_t *p_cdio,  |   driver_return_code_t cdio_read_data_sectors ( const CdIo_t *p_cdio,  | ||||||
| 						void *p_buf, lsn_t i_lsn, |                                                 void *p_buf, lsn_t i_lsn, | ||||||
| 						uint16_t i_blocksize, |                                                 uint16_t i_blocksize, | ||||||
| 						uint32_t i_blocks ); |                                                 uint32_t i_blocks ); | ||||||
|   /*!
 |   /*!
 | ||||||
|     Reads a mode 1 sector |     Reads a mode 1 sector | ||||||
| 
 | 
 | ||||||
|  | @ -125,8 +123,8 @@ extern "C" { | ||||||
|     mode 1 form 1 sectors. |     mode 1 form 1 sectors. | ||||||
|   */ |   */ | ||||||
|   driver_return_code_t cdio_read_mode1_sector (const CdIo_t *p_cdio,  |   driver_return_code_t cdio_read_mode1_sector (const CdIo_t *p_cdio,  | ||||||
| 					       void *p_buf, lsn_t i_lsn,  |                                                void *p_buf, lsn_t i_lsn,  | ||||||
| 					       bool b_form2); |                                                bool b_form2); | ||||||
|   /*!
 |   /*!
 | ||||||
|     Reads mode 1 sectors |     Reads mode 1 sectors | ||||||
| 
 | 
 | ||||||
|  | @ -138,17 +136,17 @@ extern "C" { | ||||||
|     @param i_blocks number of sectors to read |     @param i_blocks number of sectors to read | ||||||
|   */ |   */ | ||||||
|   driver_return_code_t cdio_read_mode1_sectors (const CdIo_t *p_cdio,  |   driver_return_code_t cdio_read_mode1_sectors (const CdIo_t *p_cdio,  | ||||||
| 						void *p_buf, lsn_t i_lsn,  |                                                 void *p_buf, lsn_t i_lsn,  | ||||||
| 						bool b_form2,  |                                                 bool b_form2,  | ||||||
| 						uint32_t i_blocks); |                                                 uint32_t i_blocks); | ||||||
|   /*!
 |   /*!
 | ||||||
|     Reads a mode 2 sector |     Reads a mode 2 sector | ||||||
| 
 | 
 | ||||||
|     @param p_cdio object to read from |     @param p_cdio object to read from | ||||||
|     @param p_buf place to read data into. The caller should make sure |     @param p_buf place to read data into. The caller should make sure | ||||||
|                  this location can store at least  |                  this location can store at least  | ||||||
| 		 M2RAW_SECTOR_SIZE (for form 1) or CDIO_CD_FRAMESIZE (for  |                  M2RAW_SECTOR_SIZE (for form 1) or CDIO_CD_FRAMESIZE (for  | ||||||
| 		 form 2) bytes. |                  form 2) bytes. | ||||||
|     @param i_lsn sector to read |     @param i_lsn sector to read | ||||||
|     @param b_form2 true for reading mode 2 form 2 sectors or false for  |     @param b_form2 true for reading mode 2 form 2 sectors or false for  | ||||||
|     mode 2 form 1 sectors. |     mode 2 form 1 sectors. | ||||||
|  | @ -156,23 +154,23 @@ extern "C" { | ||||||
|     @return 0 if no error, nonzero otherwise. |     @return 0 if no error, nonzero otherwise. | ||||||
|   */ |   */ | ||||||
|   driver_return_code_t cdio_read_mode2_sector (const CdIo_t *p_cdio,  |   driver_return_code_t cdio_read_mode2_sector (const CdIo_t *p_cdio,  | ||||||
| 					       void *p_buf, lsn_t i_lsn,  |                                                void *p_buf, lsn_t i_lsn,  | ||||||
| 					       bool b_form2); |                                                bool b_form2); | ||||||
|    |    | ||||||
|   /** The special case of reading a single block is a common one so we
 |   /** The special case of reading a single block is a common one so we
 | ||||||
|       provide a routine for that as a convenience. |       provide a routine for that as a convenience. | ||||||
|   */ |   */ | ||||||
|   driver_return_code_t cdio_read_sector(const CdIo_t *p_cdio, void *p_buf,  |   driver_return_code_t cdio_read_sector(const CdIo_t *p_cdio, void *p_buf,  | ||||||
| 					lsn_t i_lsn,  |                                         lsn_t i_lsn,  | ||||||
| 					cdio_read_mode_t read_mode); |                                         cdio_read_mode_t read_mode); | ||||||
|   /*!
 |   /*!
 | ||||||
|     Reads mode 2 sectors |     Reads mode 2 sectors | ||||||
| 
 | 
 | ||||||
|     @param p_cdio object to read from |     @param p_cdio object to read from | ||||||
|     @param p_buf place to read data into. The caller should make sure |     @param p_buf place to read data into. The caller should make sure | ||||||
|                  this location can store at least  |                  this location can store at least  | ||||||
| 		 M2RAW_SECTOR_SIZE (for form 1) or CDIO_CD_FRAMESIZE (for  |                  M2RAW_SECTOR_SIZE (for form 1) or CDIO_CD_FRAMESIZE (for  | ||||||
| 		 form 2) * i_blocks bytes. |                  form 2) * i_blocks bytes. | ||||||
|     @param i_lsn sector to read |     @param i_lsn sector to read | ||||||
|     @param b_form2 true for reading mode2 form 2 sectors or false for  |     @param b_form2 true for reading mode2 form 2 sectors or false for  | ||||||
|            mode 2  form 1 sectors. |            mode 2  form 1 sectors. | ||||||
|  | @ -181,9 +179,9 @@ extern "C" { | ||||||
|     @return 0 if no error, nonzero otherwise. |     @return 0 if no error, nonzero otherwise. | ||||||
|   */ |   */ | ||||||
|   driver_return_code_t cdio_read_mode2_sectors (const CdIo_t *p_cdio,  |   driver_return_code_t cdio_read_mode2_sectors (const CdIo_t *p_cdio,  | ||||||
| 						void *p_buf, lsn_t i_lsn,  |                                                 void *p_buf, lsn_t i_lsn,  | ||||||
| 						bool b_form2,  |                                                 bool b_form2,  | ||||||
| 						uint32_t i_blocks); |                                                 uint32_t i_blocks); | ||||||
|    |    | ||||||
|   /*!
 |   /*!
 | ||||||
|     Reads a number of sectors (AKA 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,  |   driver_return_code_t cdio_read_sectors(const CdIo_t *p_cdio, void *p_buf,  | ||||||
| 					 lsn_t i_lsn,  |                                          lsn_t i_lsn,  | ||||||
| 					 cdio_read_mode_t read_mode, |                                          cdio_read_mode_t read_mode, | ||||||
| 					 uint32_t i_blocks); |                                          uint32_t i_blocks); | ||||||
| 
 | 
 | ||||||
| #ifdef __cplusplus | #ifdef __cplusplus | ||||||
| } | } | ||||||
| #endif /* __cplusplus */ | #endif /* __cplusplus */ | ||||||
| 
 | 
 | ||||||
| #endif /* __CDIO_TRACK_H__ */ | #endif /* CDIO_READ_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  |     See also rock.c by Eric Youngdale (1993) from GNU/Linux  | ||||||
|     This is Copyright 1993 Yggdrasil Computing, Incorporated |     This is Copyright 1993 Yggdrasil Computing, Incorporated | ||||||
|  | @ -26,8 +26,8 @@ | ||||||
| */ | */ | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| #ifndef __CDIO_ROCK_H__ | #ifndef CDIO_ROCK_H_ | ||||||
| #define __CDIO_ROCK_H__ | #define CDIO_ROCK_H_ | ||||||
| 
 | 
 | ||||||
| #include <cdio/types.h> | #include <cdio/types.h> | ||||||
| 
 | 
 | ||||||
|  | @ -152,10 +152,10 @@ typedef enum { | ||||||
|   ISO_ROCK_SL_ROOT     = 8 |   ISO_ROCK_SL_ROOT     = 8 | ||||||
| } iso_rock_sl_flag_t; | } iso_rock_sl_flag_t; | ||||||
| 
 | 
 | ||||||
| #define	ISO_ROCK_SL_CONTINUE 1 | #define ISO_ROCK_SL_CONTINUE 1 | ||||||
| #define	ISO_ROCK_SL_CURRENT  2 | #define ISO_ROCK_SL_CURRENT  2 | ||||||
| #define	ISO_ROCK_SL_PARENT   4 | #define ISO_ROCK_SL_PARENT   4 | ||||||
| #define	ISO_ROCK_SL_ROOT     8 | #define ISO_ROCK_SL_ROOT     8 | ||||||
| 
 | 
 | ||||||
| typedef struct iso_rock_sl_part_s { | typedef struct iso_rock_sl_part_s { | ||||||
|   uint8_t flags; |   uint8_t flags; | ||||||
|  | @ -178,9 +178,9 @@ typedef enum { | ||||||
|   ISO_ROCK_NM_PARENT   = 4, |   ISO_ROCK_NM_PARENT   = 4, | ||||||
| } iso_rock_nm_flag_t; | } iso_rock_nm_flag_t; | ||||||
| 
 | 
 | ||||||
| #define	ISO_ROCK_NM_CONTINUE 1 | #define ISO_ROCK_NM_CONTINUE 1 | ||||||
| #define	ISO_ROCK_NM_CURRENT  2 | #define ISO_ROCK_NM_CURRENT  2 | ||||||
| #define	ISO_ROCK_NM_PARENT   4 | #define ISO_ROCK_NM_PARENT   4 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| typedef struct iso_rock_nm_s { | typedef struct iso_rock_nm_s { | ||||||
|  | @ -373,7 +373,7 @@ extern iso_rock_tf_flag_t iso_rock_tf_flag; | ||||||
| } | } | ||||||
| #endif /* __cplusplus */ | #endif /* __cplusplus */ | ||||||
| 
 | 
 | ||||||
| #endif /* __ISO_ROCK_H__ */ | #endif /* CDIO_ROCK_H_ */ | ||||||
|  |  | ||||||
| /* 
 | /* 
 | ||||||
|  * Local variables: |  * Local variables: | ||||||
|  |  | ||||||
|  | @ -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, 2012 | ||||||
| 
 |      Rocky Bernstein <rocky@gnu.org> | ||||||
|     Copyright (C) 2003, 2004, 2005, 2006, 2008 Rocky Bernstein <rocky@gnu.org> |  | ||||||
|     Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org> |     Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org> | ||||||
| 
 | 
 | ||||||
|     This program is free software: you can redistribute it and/or modify |     This program is free software: you can redistribute it and/or modify | ||||||
|  | @ -57,8 +56,8 @@ | ||||||
| 
 | 
 | ||||||
| */ | */ | ||||||
|  |  | ||||||
| #ifndef _CDIO_SECTOR_H_ | #ifndef CDIO_SECTOR_H_ | ||||||
| #define _CDIO_SECTOR_H_ | #define CDIO_SECTOR_H_ | ||||||
| 
 | 
 | ||||||
| #ifdef __cplusplus | #ifdef __cplusplus | ||||||
|     extern "C" { |     extern "C" { | ||||||
|  | @ -69,21 +68,24 @@ | ||||||
|       /*! Information that can be obtained through a Read Subchannel
 |       /*! Information that can be obtained through a Read Subchannel
 | ||||||
|         command. |         command. | ||||||
|       */ |       */ | ||||||
| #define CDIO_SUBCHANNEL_SUBQ_DATA		0 |       typedef enum cdio_subchannel | ||||||
| #define CDIO_SUBCHANNEL_CURRENT_POSITION	1 |         { | ||||||
| #define CDIO_SUBCHANNEL_MEDIA_CATALOG	        2 |           CDIO_SUBCHANNEL_SUBQ_DATA             = 0, | ||||||
| #define CDIO_SUBCHANNEL_TRACK_ISRC		3 |           CDIO_SUBCHANNEL_CURRENT_POSITION      = 1, | ||||||
|  |           CDIO_SUBCHANNEL_MEDIA_CATALOG         = 2, | ||||||
|  |           CDIO_SUBCHANNEL_TRACK_ISRC            = 3 | ||||||
|  |         } cdio_subchannel; | ||||||
|        |        | ||||||
|       /*! track flags
 |       /*! track flags
 | ||||||
|        * Q Sub-channel Control Field (4.2.3.3) |        * Q Sub-channel Control Field (4.2.3.3) | ||||||
|        */ |        */ | ||||||
|       typedef enum { |       typedef enum { | ||||||
| 	NONE = 			0x00,	/* no flags set */ |         NONE =                  0x00,   /* no flags set */ | ||||||
| 	PRE_EMPHASIS =		0x01,	/* audio track recorded with pre-emphasis */ |         PRE_EMPHASIS =          0x01,   /* audio track recorded with pre-emphasis */ | ||||||
| 	COPY_PERMITTED =	0x02,	/* digital copy permitted */ |         COPY_PERMITTED =        0x02,   /* digital copy permitted */ | ||||||
| 	DATA =			0x04,	/* data track */ |         DATA =                  0x04,   /* data track */ | ||||||
| 	FOUR_CHANNEL_AUDIO =	0x08,	/* 4 audio channels */ |         FOUR_CHANNEL_AUDIO =    0x08,   /* 4 audio channels */ | ||||||
| 	SCMS =			0x10	/* SCMS (5.29.2.7) */ |         SCMS =                  0x10    /* SCMS (5.29.2.7) */ | ||||||
|       } flag_t; |       } flag_t; | ||||||
|        |        | ||||||
| #define CDIO_PREGAP_SECTORS  150 | #define CDIO_PREGAP_SECTORS  150 | ||||||
|  | @ -151,7 +153,7 @@ | ||||||
| #define CDIO_CD_FRAMESIZE_RAW   2352   /**< bytes per frame, "raw" mode */ | #define CDIO_CD_FRAMESIZE_RAW   2352   /**< bytes per frame, "raw" mode */ | ||||||
| #define CDIO_CD_FRAMESIZE_RAWER 2646   /**< The maximum possible returned  | #define CDIO_CD_FRAMESIZE_RAWER 2646   /**< The maximum possible returned  | ||||||
|                                           bytes */  |                                           bytes */  | ||||||
| #define CDIO_CD_FRAMESIZE_RAW1 (CDIO_CD_CD_FRAMESIZE_RAW-CDIO_CD_SYNC_SIZE) /*2340*/ | #define CDIO_CD_FRAMESIZE_RAW1 (CDIO_CD_FRAMESIZE_RAW-CDIO_CD_SYNC_SIZE) /*2340*/ | ||||||
| #define CDIO_CD_FRAMESIZE_RAW0 (CDIO_CD_FRAMESIZE_RAW-CDIO_CD_SYNC_SIZE-CDIO_CD_HEADER_SIZE) /*2336*/ | #define CDIO_CD_FRAMESIZE_RAW0 (CDIO_CD_FRAMESIZE_RAW-CDIO_CD_SYNC_SIZE-CDIO_CD_HEADER_SIZE) /*2336*/ | ||||||
|        |        | ||||||
|       /*! "before data" part of raw XA (green, mode2) frame */ |       /*! "before data" part of raw XA (green, mode2) frame */ | ||||||
|  | @ -199,12 +201,14 @@ | ||||||
| #define CDIO_CD_FRAMES_PER_MIN                          \ | #define CDIO_CD_FRAMES_PER_MIN                          \ | ||||||
|       (CDIO_CD_FRAMES_PER_SEC*CDIO_CD_SECS_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) | typedef enum cdio_cd_minutes_sectors | ||||||
| #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) |         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                                     \ |         CDIO_CD_MAX_SECTORS   = UINT32_C(100) * CDIO_CD_FRAMES_PER_MIN - CDIO_PREGAP_SECTORS | ||||||
|       (UINT32_C(100)*CDIO_CD_FRAMES_PER_MIN-CDIO_PREGAP_SECTORS) | } cdio_cd_minutes_sectors; | ||||||
|        |        | ||||||
| #define msf_t_SIZEOF 3 | #define msf_t_SIZEOF 3 | ||||||
|        |        | ||||||
|  | @ -274,7 +278,7 @@ | ||||||
| #define CD_FRAMESIZE_RAW        CDIO_CD_FRAMESIZE_RAW | #define CD_FRAMESIZE_RAW        CDIO_CD_FRAMESIZE_RAW | ||||||
| #endif /*DO_NOT_WANT_PARANOIA_COMPATIBILITY*/ | #endif /*DO_NOT_WANT_PARANOIA_COMPATIBILITY*/ | ||||||
| 
 | 
 | ||||||
| #endif /* _CDIO_SECTOR_H_ */ | #endif /* CDIO_SECTOR_H_ */ | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| /* 
 | /* 
 | ||||||
|  |  | ||||||
|  | @ -1,7 +1,5 @@ | ||||||
| /*
 | /*
 | ||||||
|     $Id: track.h,v 1.14 2008/03/25 15:59:09 karl Exp $ |     Copyright (C) 2005, 2006, 2008, 2012 Rocky Bernstein <rocky@gnu.org> | ||||||
| 
 |  | ||||||
|     Copyright (C) 2005, 2006, 2008 Rocky Bernstein <rocky@gnu.org> |  | ||||||
| 
 | 
 | ||||||
|     This program is free software: you can redistribute it and/or modify |     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 |     it under the terms of the GNU General Public License as published by | ||||||
|  | @ -20,8 +18,8 @@ | ||||||
| /** \file track.h 
 | /** \file track.h 
 | ||||||
|  *  \brief  The top-level header for track-related libcdio calls. |  *  \brief  The top-level header for track-related libcdio calls. | ||||||
|  */ |  */ | ||||||
| #ifndef __CDIO_TRACK_H__ | #ifndef CDIO_TRACK_H_ | ||||||
| #define __CDIO_TRACK_H__ | #define CDIO_TRACK_H_ | ||||||
| 
 | 
 | ||||||
| #ifdef __cplusplus | #ifdef __cplusplus | ||||||
| extern "C" { | extern "C" { | ||||||
|  | @ -36,8 +34,8 @@ extern "C" { | ||||||
|     TRACK_FORMAT_XA,      /**< Mode2 of some sort */ |     TRACK_FORMAT_XA,      /**< Mode2 of some sort */ | ||||||
|     TRACK_FORMAT_DATA,    /**< Mode1 of some sort */ |     TRACK_FORMAT_DATA,    /**< Mode1 of some sort */ | ||||||
|     TRACK_FORMAT_PSX,     /**< Playstation CD. Like audio but only 2336 bytes
 |     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_ERROR    /**< Dunno what is, or some other error. */ | ||||||
|   } track_format_t; |   } track_format_t; | ||||||
| 
 | 
 | ||||||
|  | @ -53,8 +51,8 @@ extern "C" { | ||||||
|     track_flag_t preemphasis; /**< Linear preemphasis on an audio track */ |     track_flag_t preemphasis; /**< Linear preemphasis on an audio track */ | ||||||
|     track_flag_t copy_permit; /**< Whether copying is permitted */ |     track_flag_t copy_permit; /**< Whether copying is permitted */ | ||||||
|     int channels;             /**< Number of audio channels, 2, 4. -2 if not
 |     int channels;             /**< Number of audio channels, 2, 4. -2 if not
 | ||||||
| 				   implemented or -1 for error. |                                    implemented or -1 for error. | ||||||
| 			      */ |                               */ | ||||||
|   } track_flags_t; |   } track_flags_t; | ||||||
|      |      | ||||||
|   /*! The leadout track is always 0xAA, regardless of # of tracks on
 |   /*! The leadout track is always 0xAA, regardless of # of tracks on
 | ||||||
|  | @ -72,7 +70,7 @@ extern "C" { | ||||||
|   extern enum cdio_track_enums { |   extern enum cdio_track_enums { | ||||||
|     CDIO_CDROM_LBA           = 0x01, /**< "logical block": first frame is #0 */ |     CDIO_CDROM_LBA           = 0x01, /**< "logical block": first frame is #0 */ | ||||||
|     CDIO_CDROM_MSF           = 0x02, /**< "minute-second-frame": binary, not
 |     CDIO_CDROM_MSF           = 0x02, /**< "minute-second-frame": binary, not
 | ||||||
| 					BCD here! */ |                                         BCD here! */ | ||||||
|     CDIO_CDROM_DATA_TRACK    = 0x04,  |     CDIO_CDROM_DATA_TRACK    = 0x04,  | ||||||
|     CDIO_CDROM_CDI_TRACK     = 0x10, |     CDIO_CDROM_CDI_TRACK     = 0x10, | ||||||
|     CDIO_CDROM_XA_TRACK      = 0x20, |     CDIO_CDROM_XA_TRACK      = 0x20, | ||||||
|  | @ -88,14 +86,14 @@ extern "C" { | ||||||
|     reference: MMC-3 draft revsion - 10g |     reference: MMC-3 draft revsion - 10g | ||||||
|   */ |   */ | ||||||
|   typedef enum { |   typedef enum { | ||||||
|     AUDIO,			/**< 2352 byte block length */ |     AUDIO,                      /**< 2352 byte block length */ | ||||||
|     MODE1,			/**< 2048 byte block length */ |     MODE1,                      /**< 2048 byte block length */ | ||||||
|     MODE1_RAW,			/**< 2352 byte block length */ |     MODE1_RAW,                  /**< 2352 byte block length */ | ||||||
|     MODE2,			/**< 2336 byte block length */ |     MODE2,                      /**< 2336 byte block length */ | ||||||
|     MODE2_FORM1,		/**< 2048 byte block length */ |     MODE2_FORM1,                /**< 2048 byte block length */ | ||||||
|     MODE2_FORM2,		/**< 2324 byte block length */ |     MODE2_FORM2,                /**< 2324 byte block length */ | ||||||
|     MODE2_FORM_MIX,		/**< 2336 byte block length */ |     MODE2_FORM_MIX,             /**< 2336 byte block length */ | ||||||
|     MODE2_RAW			/**< 2352 byte block length */ |     MODE2_RAW                   /**< 2352 byte block length */ | ||||||
|   } trackmode_t; |   } trackmode_t; | ||||||
|    |    | ||||||
|   /*!
 |   /*!
 | ||||||
|  | @ -132,7 +130,7 @@ extern "C" { | ||||||
|       if not an audio track? |       if not an audio track? | ||||||
|    */ |    */ | ||||||
|   track_flag_t cdio_get_track_copy_permit(const CdIo_t *p_cdio,  |   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.  |     Get the format (audio, mode2, mode1) of track.  | ||||||
|  | @ -230,13 +228,13 @@ extern "C" { | ||||||
|     @return true if things worked or false if there is no track entry. |     @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,  |   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 
 |   /*! Get linear preemphasis status on an audio track 
 | ||||||
|       This is not meaningful if not 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_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 |     Get the number of sectors between this track an the next.  This | ||||||
|  | @ -252,5 +250,4 @@ extern "C" { | ||||||
| } | } | ||||||
| #endif /* __cplusplus */ | #endif /* __cplusplus */ | ||||||
| 
 | 
 | ||||||
| #endif /* __CDIO_TRACK_H__ */ | #endif /* CDIO_TRACK_H_ */ | ||||||
| 
 |  | ||||||
|  |  | ||||||
|  | @ -1,5 +1,5 @@ | ||||||
| /*
 | /*
 | ||||||
|     Copyright (C) 2002, 2003, 2004, 2005, 2006, 2008 |     Copyright (C) 2002, 2003, 2004, 2005, 2006, 2008, 2012 | ||||||
|                   Rocky Bernstein <rocky@gnu.org> |                   Rocky Bernstein <rocky@gnu.org> | ||||||
|     Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org> |     Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org> | ||||||
| 
 | 
 | ||||||
|  | @ -22,8 +22,8 @@ | ||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| #ifndef __CDIO_TYPES_H__ | #ifndef CDIO_TYPES_H_ | ||||||
| #define __CDIO_TYPES_H__ | #define CDIO_TYPES_H_ | ||||||
| 
 | 
 | ||||||
| #ifdef __cplusplus | #ifdef __cplusplus | ||||||
| extern "C" { | extern "C" { | ||||||
|  | @ -116,7 +116,7 @@ typedef uint8_t ubyte; | ||||||
| #ifdef _Bool | #ifdef _Bool | ||||||
| #define bool _Bool | #define bool _Bool | ||||||
| #else | #else | ||||||
| #define bool int | #define bool unsigned char | ||||||
| #endif | #endif | ||||||
| #define true 1 | #define true 1 | ||||||
| #define false 0 | #define false 0 | ||||||
|  | @ -151,21 +151,21 @@ typedef uint8_t ubyte; | ||||||
| #define GNUC_PACKED | #define GNUC_PACKED | ||||||
| #endif  /* !__GNUC__ */ | #endif  /* !__GNUC__ */ | ||||||
|    |    | ||||||
| #if defined(__GNUC__) | #if defined(__MINGW32__) | ||||||
|   /* for GCC we try to use GNUC_PACKED */ | #  define PRAGMA_BEGIN_PACKED _Pragma("pack(push)") \ | ||||||
| # define PRAGMA_BEGIN_PACKED |                               _Pragma("pack(1)") | ||||||
| # define PRAGMA_END_PACKED | #  define PRAGMA_END_PACKED   _Pragma("pack(pop)") | ||||||
| #elif defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901) | #elif defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901) | ||||||
|   /* should work with most EDG-frontend based compilers */ |      /* should work with most EDG-frontend based compilers */ | ||||||
| # define PRAGMA_BEGIN_PACKED _Pragma("pack(1)") | #    define PRAGMA_BEGIN_PACKED _Pragma("pack(1)") | ||||||
| # define PRAGMA_END_PACKED   _Pragma("pack()") | #    define PRAGMA_END_PACKED   _Pragma("pack()") | ||||||
| #elif defined(_MSC_VER) | #elif defined(_MSC_VER) | ||||||
| # define PRAGMA_BEGIN_PACKED __pragma(pack(push, 1)) | #  define PRAGMA_BEGIN_PACKED __pragma(pack(push, 1)) | ||||||
| # define PRAGMA_END_PACKED   __pragma(pack(pop)) | #  define PRAGMA_END_PACKED   __pragma(pack(pop)) | ||||||
| #else /* neither gcc nor _Pragma() available... */ | #else /* neither gcc nor _Pragma() available... */ | ||||||
|   /* ...so let's be naive and hope the regression testsuite is run... */ |    /* ...so let's be naive and hope the regression testsuite is run... */ | ||||||
| # define PRAGMA_BEGIN_PACKED | #  define PRAGMA_BEGIN_PACKED | ||||||
| # define PRAGMA_END_PACKED | #  define PRAGMA_END_PACKED | ||||||
| #endif | #endif | ||||||
|    |    | ||||||
|   /*
 |   /*
 | ||||||
|  | @ -182,8 +182,22 @@ typedef uint8_t ubyte; | ||||||
| #ifndef NULL | #ifndef NULL | ||||||
| # define NULL ((void*) 0) | # define NULL ((void*) 0) | ||||||
| #endif | #endif | ||||||
|    | 
 | ||||||
|   /* our own offsetof()-like macro */ |   /** Provide a notice for deprecated elements. Before gcc 4.5 'deprecated'
 | ||||||
|  |    takes no arguments. */ | ||||||
|  | #if defined(__GNUC__) | ||||||
|  | # if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 5) | ||||||
|  | #   define LIBCDIO_DEPRECATED(object, notice) object __attribute__ ((deprecated(notice))) | ||||||
|  | # else | ||||||
|  | #   define LIBCDIO_DEPRECATED(object, notice) object __attribute__ ((deprecated)) | ||||||
|  | # endif | ||||||
|  | #elif defined(_MSC_VER) | ||||||
|  | #define LIBCDIO_DEPRECATED(object, notice) __declspec(deprecated(notice)) object | ||||||
|  | #else | ||||||
|  | #define LIBCDIO_DEPRECATED(object, notice) | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
|  |   /** our own offsetof()-like macro */ | ||||||
| #define __cd_offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER) | #define __cd_offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER) | ||||||
|    |    | ||||||
|   /*!
 |   /*!
 | ||||||
|  | @ -251,10 +265,10 @@ typedef uint8_t ubyte; | ||||||
|   typedef int32_t lsn_t; |   typedef int32_t lsn_t; | ||||||
|    |    | ||||||
|   /* Address in either MSF or logical format */ |   /* Address in either MSF or logical format */ | ||||||
|   union cdio_cdrom_addr		 |   union cdio_cdrom_addr          | ||||||
|   { |   { | ||||||
|     msf_t	msf; |     msf_t       msf; | ||||||
|     lba_t	lba; |     lba_t       lba; | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|   /*! The type of a track number 0..99. */ |   /*! The type of a track number 0..99. */ | ||||||
|  | @ -311,20 +325,20 @@ typedef uint8_t ubyte; | ||||||
|     Q Sub-channel Control Field (4.2.3.3) |     Q Sub-channel Control Field (4.2.3.3) | ||||||
|   */ |   */ | ||||||
|   typedef enum { |   typedef enum { | ||||||
|     CDIO_TRACK_FLAG_NONE = 		 0x00,	/**< no flags set */ |     CDIO_TRACK_FLAG_NONE =               0x00,  /**< no flags set */ | ||||||
|     CDIO_TRACK_FLAG_PRE_EMPHASIS =	 0x01,	/**< audio track recorded with
 |     CDIO_TRACK_FLAG_PRE_EMPHASIS =       0x01,  /**< audio track recorded with
 | ||||||
|                                                    pre-emphasis */ |                                                    pre-emphasis */ | ||||||
|     CDIO_TRACK_FLAG_COPY_PERMITTED =	 0x02,	/**< digital copy permitted */ |     CDIO_TRACK_FLAG_COPY_PERMITTED =     0x02,  /**< digital copy permitted */ | ||||||
|     CDIO_TRACK_FLAG_DATA =		 0x04,	/**< data track */ |     CDIO_TRACK_FLAG_DATA =               0x04,  /**< data track */ | ||||||
|     CDIO_TRACK_FLAG_FOUR_CHANNEL_AUDIO = 0x08,  /**< 4 audio channels */ |     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; | } cdio_track_flag; | ||||||
| 
 | 
 | ||||||
| #ifdef __cplusplus | #ifdef __cplusplus | ||||||
| } | } | ||||||
| #endif /* __cplusplus */ | #endif /* __cplusplus */ | ||||||
| 
 | 
 | ||||||
| #endif /* __CDIO_TYPES_H__ */ | #endif /* CDIO_TYPES_H_ */ | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| /* 
 | /* 
 | ||||||
|  |  | ||||||
|  | @ -1,7 +1,5 @@ | ||||||
| /*  
 | /*  
 | ||||||
|     $Id: udf_time.h,v 1.5 2008/03/25 15:59:09 karl Exp $ |     Copyright (C) 2005, 2008, 2012 Rocky Bernstein <rocky@gnu.org> | ||||||
| 
 |  | ||||||
|     Copyright (C) 2005, 2008 Rocky Bernstein <rocky@gnu.org> |  | ||||||
| 
 | 
 | ||||||
|     This program is free software: you can redistribute it and/or modify |     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 |     it under the terms of the GNU General Public License as published by | ||||||
|  |  | ||||||
|  | @ -1,7 +1,5 @@ | ||||||
| /*
 | /*
 | ||||||
|     $Id: utf8.h,v 1.2 2008/03/25 15:59:09 karl Exp $ |     Copyright (C) 2008, 2012 Rocky Bernstein <rocky@gnu.org> | ||||||
|      |  | ||||||
|     Copyright (C) 2008 Rocky Bernstein <rocky@gnu.org> |  | ||||||
|     Copyright (C) 2006 Burkhard Plaum <plaum@ipf.uni-stuttgart.de> |     Copyright (C) 2006 Burkhard Plaum <plaum@ipf.uni-stuttgart.de> | ||||||
| 
 | 
 | ||||||
|     This program is free software: you can redistribute it and/or modify |     This program is free software: you can redistribute it and/or modify | ||||||
|  | @ -17,7 +15,10 @@ | ||||||
|     You should have received a copy of the GNU General Public License |     You should have received a copy of the GNU General Public License | ||||||
|     along with this program.  If not, see <http://www.gnu.org/licenses/>.
 |     along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | ||||||
| */ | */ | ||||||
| /* UTF-8 support */ | /** \file utf8.h 
 | ||||||
|  |  * | ||||||
|  |  *  \brief UTF-8 support | ||||||
|  |  */ | ||||||
|  |  | ||||||
| 
 | 
 | ||||||
| #include <cdio/types.h> | #include <cdio/types.h> | ||||||
|  | @ -87,6 +88,21 @@ bool cdio_charset_from_utf8(cdio_utf8_t * src, char ** dst, | ||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| bool cdio_charset_to_utf8(char *src, size_t src_len, cdio_utf8_t **dst, | bool cdio_charset_to_utf8(const char *src, size_t src_len, cdio_utf8_t **dst, | ||||||
|                           const char * src_charset); |                           const char * src_charset); | ||||||
| 
 | 
 | ||||||
|  | #ifdef _WIN32 | ||||||
|  | /** \brief Convert an UTF8 string to UTF-16 (allocate returned string)
 | ||||||
|  |  *  \param str Source string | ||||||
|  |  *  \returns NULL if the conversion was unsuccesful. Caller must free the | ||||||
|  |  *  returned string. | ||||||
|  |  *  This is a convenience function available on Windows platforms only. | ||||||
|  |  */ | ||||||
|  | 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(). | ||||||
|  |  */ | ||||||
|  | FILE* fopen_utf8(const char* filename, const char* mode); | ||||||
|  | #endif | ||||||
|  |  | ||||||
|  | @ -1,5 +1,6 @@ | ||||||
| /*
 | /*
 | ||||||
|     Copyright (C) 2004, 2005, 2006, 2008, 2010 Rocky Bernstein <rocky@gnu.org> |     Copyright (C) 2004, 2005, 2006, 2008, 2010, 2012 | ||||||
|  |     Rocky Bernstein <rocky@gnu.org> | ||||||
|     Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org> |     Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org> | ||||||
| 
 | 
 | ||||||
|     This program is free software: you can redistribute it and/or modify |     This program is free software: you can redistribute it and/or modify | ||||||
|  | @ -16,8 +17,8 @@ | ||||||
|     along with this program.  If not, see <http://www.gnu.org/licenses/>.
 |     along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | ||||||
| */ | */ | ||||||
|  |  | ||||||
| #ifndef __CDIO_UTIL_H__ | #ifndef CDIO_UTIL_H_ | ||||||
| #define __CDIO_UTIL_H__ | #define CDIO_UTIL_H_ | ||||||
| 
 | 
 | ||||||
| /*!
 | /*!
 | ||||||
|    \file util.h  |    \file util.h  | ||||||
|  | @ -128,7 +129,7 @@ char *cdio_realpath (const char *psz_src, char *psz_dst); | ||||||
| } | } | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
| #endif /* __CDIO_UTIL_H__ */ | #endif /* CDIO_UTIL_H_ */ | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| /* 
 | /* 
 | ||||||
|  |  | ||||||
|  | @ -2,19 +2,19 @@ | ||||||
| /** \file version.h 
 | /** \file version.h 
 | ||||||
|  * |  * | ||||||
|  *  \brief A file containing the libcdio package version |  *  \brief A file containing the libcdio package version | ||||||
|  *  number (84) and OS build name.  |  *  number (90) and OS build name.  | ||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
| /*! CDIO_VERSION is a C-Preprocessor macro of a string that shows what
 | /*! CDIO_VERSION is a C-Preprocessor macro of a string that shows what
 | ||||||
|     version is used.  cdio_version_string has the same value, but it is a |     version is used.  cdio_version_string has the same value, but it is a | ||||||
|     constant variable that can be accessed at run time. */ |     constant variable that can be accessed at run time. */ | ||||||
| #define CDIO_VERSION "0.84git i686-pc-mingw32" | #define CDIO_VERSION "0.90 i686-pc-mingw32" | ||||||
| extern const char *cdio_version_string; /**< = CDIO_VERSION */ | extern const char *cdio_version_string; /**< = CDIO_VERSION */ | ||||||
| 
 | 
 | ||||||
| /*! LIBCDIO_VERSION_NUM is a C-Preprocessor macro that can be used for
 | /*! LIBCDIO_VERSION_NUM is a C-Preprocessor macro that can be used for
 | ||||||
|     testing in the C preprocessor. libcdio_version_num has the same |     testing in the C preprocessor. libcdio_version_num has the same | ||||||
|     value, but it is a constant variable that can be accessed at run |     value, but it is a constant variable that can be accessed at run | ||||||
|     time.  */ |     time.  */ | ||||||
| #define LIBCDIO_VERSION_NUM 84 | #define LIBCDIO_VERSION_NUM 90 | ||||||
| 
 | 
 | ||||||
| extern const unsigned int libcdio_version_num; /**< = LIBCDIO_VERSION_NUM */ | extern const unsigned int libcdio_version_num; /**< = LIBCDIO_VERSION_NUM */ | ||||||
|  |  | ||||||
|  | @ -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, 2012 | ||||||
| 
 |     Rocky Bernstein <rocky@gnu.org> | ||||||
|     Copyright (C) 2003, 2004, 2005, 2006, 2008 Rocky Bernstein <rocky@gnu.org> |  | ||||||
|     Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org> |     Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org> | ||||||
| 
 | 
 | ||||||
|     See also iso9660.h by Eric Youngdale (1993) and in cdrtools. These are  |     See also iso9660.h by Eric Youngdale (1993) and in cdrtools. These are  | ||||||
|  | @ -31,8 +30,8 @@ | ||||||
| */ | */ | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| #ifndef __CDIO_XA_H__ | #ifndef CDIO_XA_H_ | ||||||
| #define __CDIO_XA_H__ | #define CDIO_XA_H_ | ||||||
| 
 | 
 | ||||||
| #ifdef __cplusplus | #ifdef __cplusplus | ||||||
| extern "C" { | extern "C" { | ||||||
|  | @ -153,7 +152,7 @@ iso9660_get_xa_attr_str (uint16_t xa_attr); | ||||||
| */ | */ | ||||||
| iso9660_xa_t * | iso9660_xa_t * | ||||||
| iso9660_xa_init (iso9660_xa_t *_xa, uint16_t uid, uint16_t gid, uint16_t attr,  | iso9660_xa_init (iso9660_xa_t *_xa, uint16_t uid, uint16_t gid, uint16_t attr,  | ||||||
| 		 uint8_t filenum); |                  uint8_t filenum); | ||||||
| 
 | 
 | ||||||
| #ifdef __cplusplus | #ifdef __cplusplus | ||||||
| } | } | ||||||
|  | @ -168,7 +167,7 @@ extern xa_misc_enum_t debugger_xa_misc_enum; | ||||||
|    |    | ||||||
| #endif /* __cplusplus */ | #endif /* __cplusplus */ | ||||||
| 
 | 
 | ||||||
| #endif /* __CDIO_XA_H__ */ | #endif /* CDIO_XA_H_ */ | ||||||
|  |  | ||||||
| /* 
 | /* 
 | ||||||
|  * Local variables: |  * Local variables: | ||||||
|  |  | ||||||
|  | @ -56,39 +56,29 @@ | ||||||
| #define CDIO_FSEEK fseek | #define CDIO_FSEEK fseek | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
| /* Windows'd fopen is not UTF-8 compliant - make it so */ | /* Windows' fopen is not UTF-8 compliant, so we use our own */ | ||||||
| #if !defined(_WIN32) | #if defined(_WIN32) | ||||||
| #define CDIO_FOPEN fopen | #include <cdio/utf8.h> | ||||||
|  | #define CDIO_FOPEN fopen_utf8 | ||||||
| #else | #else | ||||||
| #define CDIO_FOPEN fopenU | #define CDIO_FOPEN fopen | ||||||
| extern wchar_t* cdio_utf8_to_wchar(const char* str); |  | ||||||
| static inline FILE* fopenU(const char* filename, const char* mode) |  | ||||||
| { |  | ||||||
|   FILE* ret = NULL; |  | ||||||
|   wchar_t* wfilename = cdio_utf8_to_wchar(filename); |  | ||||||
|   wchar_t* wmode =  cdio_utf8_to_wchar(mode); |  | ||||||
|   ret = _wfopen(wfilename, wmode); |  | ||||||
|   free(wfilename); |  | ||||||
|   free(wmode); |  | ||||||
|   return ret; |  | ||||||
| } |  | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
| /* Use _stati64 if needed, on platforms that don't have transparent LFS support */ | /* Use _stati64 if needed, on platforms that don't have transparent LFS support */ | ||||||
| #if defined(HAVE__STATI64) && defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64) | #if defined(HAVE__STATI64) && defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64) | ||||||
| #define CDIO_STAT_STRUCT _stati64 | #define CDIO_STAT_STRUCT _stati64 | ||||||
| #if !defined(_WIN32) | #if defined(_WIN32) | ||||||
| #define CDIO_STAT_CALL _stati64 | /* Once again, use our own UTF-8 compliant version */ | ||||||
| #else | static inline int _stati64_utf8(const char *path, struct _stati64 *buffer) { | ||||||
| #define CDIO_STAT_CALL _stati64U |  | ||||||
| /* Once more, we have to provide an UTF-8 compliant version on Windows */ |  | ||||||
| static inline int _stati64U(const char *path, struct _stati64 *buffer) { |  | ||||||
|   int ret; |   int ret; | ||||||
|   wchar_t* wpath = cdio_utf8_to_wchar(path); |   wchar_t* wpath = cdio_utf8_to_wchar(path); | ||||||
|   ret = _wstati64(wpath, buffer); |   ret = _wstati64(wpath, buffer); | ||||||
|   free(wpath); |   free(wpath); | ||||||
|   return ret; |   return ret; | ||||||
| } | } | ||||||
|  | #define CDIO_STAT_CALL _stati64_utf8 | ||||||
|  | #else | ||||||
|  | #define CDIO_STAT_CALL _stati64 | ||||||
| #endif | #endif | ||||||
| #else | #else | ||||||
| #define CDIO_STAT_STRUCT stat | #define CDIO_STAT_STRUCT stat | ||||||
|  |  | ||||||
|  | @ -1,7 +1,5 @@ | ||||||
| /*
 | /*
 | ||||||
|   $Id: _cdio_stdio.h,v 1.3 2008/04/22 15:29:11 karl Exp $ |   Copyright (C) 2003, 2008, 2012 Rocky Bernstein <rocky@gnu.org> | ||||||
| 
 |  | ||||||
|   Copyright (C) 2003, 2008 Rocky Bernstein <rocky@gnu.org> |  | ||||||
|   Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org> |   Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org> | ||||||
| 
 | 
 | ||||||
|   This program is free software: you can redistribute it and/or modify |   This program is free software: you can redistribute it and/or modify | ||||||
|  | @ -19,8 +17,8 @@ | ||||||
| */ | */ | ||||||
|  |  | ||||||
| 
 | 
 | ||||||
| #ifndef __CDIO_STDIO_H__ | #ifndef CDIO_STDIO_H_ | ||||||
| #define __CDIO_STDIO_H__ | #define CDIO_STDIO_H_ | ||||||
| 
 | 
 | ||||||
| #include "_cdio_stream.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); | void cdio_stdio_destroy(CdioDataSource_t *p_obj); | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| #endif /* __CDIO_STREAM_STDIO_H__ */ | #endif /* CDIO_STDIO_H_ */ | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| /* 
 | /* 
 | ||||||
|  |  | ||||||
|  | @ -1,7 +1,6 @@ | ||||||
| /*
 | /*
 | ||||||
|   $Id: _cdio_stream.h,v 1.5 2008/04/22 15:29:11 karl Exp $ |   Copyright (C) 2003, 2004, 2005, 2006, 2008, 2012 | ||||||
| 
 |   Rocky Bernstein <rocky@gnu.org> | ||||||
|   Copyright (C) 2003, 2004, 2005, 2006, 2008 Rocky Bernstein <rocky@gnu.org> |  | ||||||
|   Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org> |   Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org> | ||||||
| 
 | 
 | ||||||
|   This program is free software: you can redistribute it and/or modify |   This program is free software: you can redistribute it and/or modify | ||||||
|  | @ -19,8 +18,8 @@ | ||||||
| */ | */ | ||||||
|  |  | ||||||
| 
 | 
 | ||||||
| #ifndef __CDIO_STREAM_H__ | #ifndef CDIO_STREAM_H_ | ||||||
| #define __CDIO_STREAM_H__ | #define CDIO_STREAM_H_ | ||||||
| 
 | 
 | ||||||
| #include <cdio/types.h> | #include <cdio/types.h> | ||||||
| #include "cdio_private.h" | #include "cdio_private.h" | ||||||
|  | @ -127,7 +126,7 @@ extern "C" { | ||||||
| } | } | ||||||
| #endif /* __cplusplus */ | #endif /* __cplusplus */ | ||||||
| 
 | 
 | ||||||
| #endif /* __CDIO_STREAM_H__ */ | #endif /* CDIO_STREAM_H_ */ | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| /* 
 | /* 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,5 @@ | ||||||
| /*
 | /*
 | ||||||
|   Copyright (C) 2008, 2011 Rocky Bernstein <rocky@gnu.org> |   Copyright (C) 2008, 2011, 2012 Rocky Bernstein <rocky@gnu.org> | ||||||
|   Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org> |   Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org> | ||||||
| 
 | 
 | ||||||
|   This program is free software: you can redistribute it and/or modify |   This program is free software: you can redistribute it and/or modify | ||||||
|  | @ -16,8 +16,8 @@ | ||||||
|   along with this program.  If not, see <http://www.gnu.org/licenses/>.
 |   along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | ||||||
| */ | */ | ||||||
|  |  | ||||||
| #ifndef __CDIO_ASSERT_H__ | #ifndef CDIO_ASSERT_H_ | ||||||
| #define __CDIO_ASSERT_H__ | #define CDIO_ASSERT_H_ | ||||||
| 
 | 
 | ||||||
| #if defined(__GNUC__) && !defined(__MINGW32__) | #if defined(__GNUC__) && !defined(__MINGW32__) | ||||||
| 
 | 
 | ||||||
|  | @ -43,7 +43,7 @@ | ||||||
|      __FILE__, __LINE__, __PRETTY_FUNCTION__); \ |      __FILE__, __LINE__, __PRETTY_FUNCTION__); \ | ||||||
|  } |  } | ||||||
| 
 | 
 | ||||||
| #else /* non GNU C or MinGW */ | #else /* non GNU C */ | ||||||
| 
 | 
 | ||||||
| #include <assert.h> | #include <assert.h> | ||||||
| 
 | 
 | ||||||
|  | @ -55,4 +55,4 @@ | ||||||
| 
 | 
 | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
| #endif /* __CDIO_ASSERT_H__ */ | #endif /* CDIO_ASSERT_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> |   Rocky Bernstein <rocky@gnu.org> | ||||||
| 
 | 
 | ||||||
|   This program is free software: you can redistribute it and/or modify |   This program is free software: you can redistribute it and/or modify | ||||||
|  | @ -19,8 +19,8 @@ | ||||||
| /* Internal routines for CD I/O drivers. */ | /* Internal routines for CD I/O drivers. */ | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| #ifndef __CDIO_PRIVATE_H__ | #ifndef CDIO_DRIVER_PRIVATE_H_ | ||||||
| #define __CDIO_PRIVATE_H__ | #define CDIO_DRIVER_PRIVATE_H_ | ||||||
| 
 | 
 | ||||||
| #if defined(HAVE_CONFIG_H) && !defined(LIBCDIO_CONFIG_H) | #if defined(HAVE_CONFIG_H) && !defined(LIBCDIO_CONFIG_H) | ||||||
| # include "config.h" | # include "config.h" | ||||||
|  | @ -62,7 +62,7 @@ extern "C" { | ||||||
|        |        | ||||||
|     */ |     */ | ||||||
|     driver_return_code_t (*audio_get_volume)  |     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 |       Pause playing CD through analog output | ||||||
|  | @ -77,8 +77,8 @@ extern "C" { | ||||||
|       @param p_env the CD object to be acted upon. |       @param p_env the CD object to be acted upon. | ||||||
|     */ |     */ | ||||||
|     driver_return_code_t (*audio_play_msf) ( void *p_env,  |     driver_return_code_t (*audio_play_msf) ( void *p_env,  | ||||||
| 					     msf_t *p_start_msf, |                                              msf_t *p_start_msf, | ||||||
| 					     msf_t *p_end_msf ); |                                              msf_t *p_end_msf ); | ||||||
| 
 | 
 | ||||||
|     /*!
 |     /*!
 | ||||||
|       Playing CD through analog output |       Playing CD through analog output | ||||||
|  | @ -86,7 +86,7 @@ extern "C" { | ||||||
|       @param p_env the CD object to be acted upon. |       @param p_env the CD object to be acted upon. | ||||||
|     */ |     */ | ||||||
|     driver_return_code_t (*audio_play_track_index)  |     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. |       Get subchannel information. | ||||||
|  | @ -94,7 +94,7 @@ extern "C" { | ||||||
|       @param p_env the CD object to be acted upon. |       @param p_env the CD object to be acted upon. | ||||||
|     */ |     */ | ||||||
|     driver_return_code_t (*audio_read_subchannel)  |     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. |       Resume playing an audio CD. | ||||||
|  | @ -111,7 +111,7 @@ extern "C" { | ||||||
|        |        | ||||||
|     */ |     */ | ||||||
|     driver_return_code_t (*audio_set_volume)  |     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. |       Stop playing an audio CD. | ||||||
|  | @ -204,9 +204,9 @@ extern "C" { | ||||||
|       See cd_types.h for a list of bitmasks for the drive type; |       See cd_types.h for a list of bitmasks for the drive type; | ||||||
|     */ |     */ | ||||||
|     void (*get_drive_cap) (const void *p_env, |     void (*get_drive_cap) (const void *p_env, | ||||||
| 			   cdio_drive_read_cap_t  *p_read_cap, |                            cdio_drive_read_cap_t  *p_read_cap, | ||||||
| 			   cdio_drive_write_cap_t *p_write_cap, |                            cdio_drive_write_cap_t *p_write_cap, | ||||||
| 			   cdio_drive_misc_cap_t  *p_misc_cap); |                            cdio_drive_misc_cap_t  *p_misc_cap); | ||||||
|     /*!
 |     /*!
 | ||||||
|       Return the number of of the first track.  |       Return the number of of the first track.  | ||||||
|       CDIO_INVALID_TRACK is returned on error. |       CDIO_INVALID_TRACK is returned on error. | ||||||
|  | @ -218,16 +218,16 @@ extern "C" { | ||||||
|       False is returned if we had an error getting the information. |       False is returned if we had an error getting the information. | ||||||
|     */ |     */ | ||||||
|     bool (*get_hwinfo)  |     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
 |     /*! Get the LSN of the first track of the last session of
 | ||||||
|       on the CD. |       on the CD. | ||||||
| 	    |             | ||||||
|        @param p_cdio the CD object to be acted upon. |        @param p_cdio the CD object to be acted upon. | ||||||
|        @param i_last_session pointer to the session number to be returned. |        @param i_last_session pointer to the session number to be returned. | ||||||
|     */ |     */ | ||||||
|     driver_return_code_t (*get_last_session) |     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. |       Find out if media has changed since the last call. | ||||||
|  | @ -315,7 +315,7 @@ extern "C" { | ||||||
|       audio track? |       audio track? | ||||||
|     */ |     */ | ||||||
|     track_flag_t (*get_track_preemphasis)  |     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 |       lseek - reposition read/write file offset | ||||||
|  | @ -336,7 +336,7 @@ extern "C" { | ||||||
|       from lsn. Returns 0 if no error.  |       from lsn. Returns 0 if no error.  | ||||||
|     */ |     */ | ||||||
|     int (*read_audio_sectors) ( void *p_env, void *p_buf, lsn_t i_lsn, |     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 |       Read a data sector | ||||||
|  | @ -356,15 +356,15 @@ extern "C" { | ||||||
|       M2RAW_SECTOR_SIZE, or M2F2_SECTOR_SIZE. See comment above under p_buf. |       M2RAW_SECTOR_SIZE, or M2F2_SECTOR_SIZE. See comment above under p_buf. | ||||||
|     */ |     */ | ||||||
|     driver_return_code_t (*read_data_sectors)  |     driver_return_code_t (*read_data_sectors)  | ||||||
| 	 ( void *p_env, void *p_buf, lsn_t i_lsn, uint16_t i_blocksize, |          ( void *p_env, void *p_buf, lsn_t i_lsn, uint16_t i_blocksize, | ||||||
| 	   uint32_t i_blocks ); |            uint32_t i_blocks ); | ||||||
|      |      | ||||||
|     /*!
 |     /*!
 | ||||||
|       Reads a single mode2 sector from cd device into buf starting |       Reads a single mode2 sector from cd device into buf starting | ||||||
|       from lsn. Returns 0 if no error.  |       from lsn. Returns 0 if no error.  | ||||||
|     */ |     */ | ||||||
|     int (*read_mode2_sector)  |     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 |       Reads i_blocks of mode2 sectors from cd device into data starting | ||||||
|  | @ -372,15 +372,15 @@ extern "C" { | ||||||
|       Returns 0 if no error.  |       Returns 0 if no error.  | ||||||
|     */ |     */ | ||||||
|     int (*read_mode2_sectors)  |     int (*read_mode2_sectors)  | ||||||
| 	 ( 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,  | ||||||
| 	   unsigned int i_blocks ); |            unsigned int i_blocks ); | ||||||
|      |      | ||||||
|     /*!
 |     /*!
 | ||||||
|       Reads a single mode1 sector from cd device into buf starting |       Reads a single mode1 sector from cd device into buf starting | ||||||
|       from lsn. Returns 0 if no error.  |       from lsn. Returns 0 if no error.  | ||||||
|     */ |     */ | ||||||
|     int (*read_mode1_sector)  |     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 |       Reads i_blocks of mode1 sectors from cd device into data starting | ||||||
|  | @ -388,24 +388,24 @@ extern "C" { | ||||||
|       Returns 0 if no error.  |       Returns 0 if no error.  | ||||||
|     */ |     */ | ||||||
|     int (*read_mode1_sectors)  |     int (*read_mode1_sectors)  | ||||||
| 	 ( 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,  | ||||||
| 	   unsigned int i_blocks ); |            unsigned int i_blocks ); | ||||||
|      |      | ||||||
|     bool (*read_toc) ( void *p_env ) ; |     bool (*read_toc) ( void *p_env ) ; | ||||||
| 
 | 
 | ||||||
|     /*!
 |     /*!
 | ||||||
|       Run a SCSI MMC command.  |       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 |       i_timeout_ms      time in milliseconds we will wait for the command | ||||||
|                         to complete.  |                         to complete.  | ||||||
|       cdb_len           number of bytes in cdb (6, 10, or 12). |       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.  |                         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 |                         the buffer | ||||||
|       len	        Size of buffer |       len               Size of buffer | ||||||
|       buf	        Buffer for data, both sending and receiving |       buf               Buffer for data, both sending and receiving | ||||||
|        |        | ||||||
|       Returns 0 if command completed successfully. |       Returns 0 if command completed successfully. | ||||||
|     */ |     */ | ||||||
|  | @ -420,7 +420,7 @@ extern "C" { | ||||||
|       Set the blocksize for subsequent reads.  |       Set the blocksize for subsequent reads.  | ||||||
|     */ |     */ | ||||||
|     driver_return_code_t (*set_blocksize) ( void *p_env,  |     driver_return_code_t (*set_blocksize) ( void *p_env,  | ||||||
| 					    uint16_t i_blocksize ); |                                             uint16_t i_blocksize ); | ||||||
| 
 | 
 | ||||||
|     /*!
 |     /*!
 | ||||||
|       Set the drive speed.  |       Set the drive speed.  | ||||||
|  | @ -437,7 +437,7 @@ extern "C" { | ||||||
|   struct _CdIo { |   struct _CdIo { | ||||||
|     driver_id_t driver_id; /**< Particular driver opened. */ |     driver_id_t driver_id; /**< Particular driver opened. */ | ||||||
|     cdio_funcs_t op;       /**< driver-specific routines handling
 |     cdio_funcs_t op;       /**< driver-specific routines handling
 | ||||||
| 			        implementation*/ |                                 implementation*/ | ||||||
|     void *env;             /**< environment. Passed to routine above. */ |     void *env;             /**< environment. Passed to routine above. */ | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|  | @ -464,7 +464,7 @@ extern "C" { | ||||||
|     bool (*have_driver) (void);  |     bool (*have_driver) (void);  | ||||||
|     CdIo_t *(*driver_open) (const char *psz_source_name);  |     CdIo_t *(*driver_open) (const char *psz_source_name);  | ||||||
|     CdIo_t *(*driver_open_am) (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);  |     char *(*get_default_device) (void);  | ||||||
|     bool (*is_device) (const char *psz_source_name); |     bool (*is_device) (const char *psz_source_name); | ||||||
|     char **(*get_devices) (void); |     char **(*get_devices) (void); | ||||||
|  | @ -489,7 +489,7 @@ extern "C" { | ||||||
|     Use cdio_free_device_list() to free this device_list. |     Use cdio_free_device_list() to free this device_list. | ||||||
|   */ |   */ | ||||||
|   void cdio_add_device_list(char **device_list[], const char *psz_drive, |   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_bsdi    (const char *psz_drive); | ||||||
|   driver_return_code_t close_tray_freebsd (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 |      @see cdio_open_cd, cdio_open | ||||||
|    */ |    */ | ||||||
|   CdIo_t * cdio_open_am_netbsd (const char *psz_source, |   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().
 |   /*! DEPRICATED: use cdio_have_driver().
 | ||||||
|     True if AIX driver is available. */ |     True if AIX driver is available. */ | ||||||
|  | @ -559,4 +559,4 @@ extern "C" { | ||||||
| } | } | ||||||
| #endif /* __cplusplus */ | #endif /* __cplusplus */ | ||||||
| 
 | 
 | ||||||
| #endif /* __CDIO_PRIVATE_H__ */ | #endif /* CDIO_DRIVER_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> |    Rocky Bernstein <rocky@gnu.org> | ||||||
|   Copyright (C) 2001 Herbert Valerio Riedel <hvr@gnu.org> |   Copyright (C) 2001 Herbert Valerio Riedel <hvr@gnu.org> | ||||||
| 
 | 
 | ||||||
|  | @ -23,6 +23,10 @@ | ||||||
| # define __CDIO_CONFIG_H__ 1 | # define __CDIO_CONFIG_H__ 1 | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
|  | #ifdef HAVE_STDBOOL_H | ||||||
|  | # include <stdbool.h> | ||||||
|  | #endif  | ||||||
|  | 
 | ||||||
| #include <cdio/cdio.h> | #include <cdio/cdio.h> | ||||||
| #include "cdio_private.h" | #include "cdio_private.h" | ||||||
| 
 | 
 | ||||||
|  | @ -124,7 +128,7 @@ cdio_get_discmode (CdIo_t *cd_obj) | ||||||
| char * | char * | ||||||
| cdio_get_mcn (const CdIo_t *p_cdio)  | cdio_get_mcn (const CdIo_t *p_cdio)  | ||||||
| { | { | ||||||
|   if (p_cdio->op.get_mcn) { |   if (p_cdio && p_cdio->op.get_mcn) { | ||||||
|     return p_cdio->op.get_mcn (p_cdio->env); |     return p_cdio->op.get_mcn (p_cdio->env); | ||||||
|   } else { |   } else { | ||||||
|     return NULL; |     return NULL; | ||||||
|  |  | ||||||
|  | @ -1,7 +1,7 @@ | ||||||
| /*
 | /*
 | ||||||
|   filemode.h -- file modes common definitions |   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. |   Copyright (C) 1985, 1990, 1993, 1998-2000 Free Software Foundation, Inc. | ||||||
| 
 | 
 | ||||||
|   This program is free software: you can redistribute it and/or modify |   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/>.
 |   along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | ||||||
| */ | */ | ||||||
| 
 | 
 | ||||||
| #ifndef __FILEMODE_H__ | #ifndef CDIO_DRIVER_FILEMODE_H_ | ||||||
| #define __FILEMODE_H__ | #define CDIO_DRIVER_FILEMODE_H_ | ||||||
| 
 | 
 | ||||||
| #ifdef HAVE_SYS_STAT_H | #ifdef HAVE_SYS_STAT_H | ||||||
| #include <sys/stat.h> | #include <sys/stat.h> | ||||||
|  | @ -131,4 +131,4 @@ | ||||||
| # define S_ISCTG(m) (((m) & S_IFMT) == S_IFCTG) | # define S_ISCTG(m) (((m) & S_IFMT) == S_IFCTG) | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
| #endif /* __FILEMODE_H__ */ | #endif /* CDIO_DRIVER_FILEMODE_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 |   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 |   it under the terms of the GNU General Public License as published by | ||||||
|  | @ -18,8 +19,8 @@ | ||||||
| /* Internal routines for CD I/O drivers. */ | /* Internal routines for CD I/O drivers. */ | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| #ifndef __CDIO_GENERIC_H__ | #ifndef CDIO_DRIVER_GENERIC_H_ | ||||||
| #define __CDIO_GENERIC_H__ | #define CDIO_DRIVER_GENERIC_H_ | ||||||
| 
 | 
 | ||||||
| #if defined(HAVE_CONFIG_H) && !defined(LIBCDIO_CONFIG_H) | #if defined(HAVE_CONFIG_H) && !defined(LIBCDIO_CONFIG_H) | ||||||
| # include "config.h" | # include "config.h" | ||||||
|  | @ -29,6 +30,10 @@ | ||||||
| #include <cdio/cdtext.h> | #include <cdio/cdtext.h> | ||||||
| #include <cdio/iso9660.h> | #include <cdio/iso9660.h> | ||||||
| 
 | 
 | ||||||
|  | #ifdef HAVE_STDBOOL_H | ||||||
|  | # include <stdbool.h> | ||||||
|  | #endif  | ||||||
|  | 
 | ||||||
| #ifdef __cplusplus | #ifdef __cplusplus | ||||||
| extern "C" { | extern "C" { | ||||||
| #endif /* __cplusplus */ | #endif /* __cplusplus */ | ||||||
|  | @ -57,7 +62,7 @@ extern "C" { | ||||||
|     track_t i_tracks;       /**< The number of tracks. */ |     track_t i_tracks;       /**< The number of tracks. */ | ||||||
| 
 | 
 | ||||||
|     uint8_t i_joliet_level; /**< 0 = no Joliet extensions.
 |     uint8_t i_joliet_level; /**< 0 = no Joliet extensions.
 | ||||||
| 			       1-3: Joliet level. */ |                                1-3: Joliet level. */ | ||||||
|     iso9660_pvd_t pvd;       |     iso9660_pvd_t pvd;       | ||||||
|     iso9660_svd_t svd;       |     iso9660_svd_t svd;       | ||||||
|     CdIo_t   *cdio;         /**< a way to call general cdio routines. */ |     CdIo_t   *cdio;         /**< a way to call general cdio routines. */ | ||||||
|  | @ -208,7 +213,7 @@ extern "C" { | ||||||
|     Is this meaningful if not an audio track? |     Is this meaningful if not an audio track? | ||||||
|   */ |   */ | ||||||
|   track_flag_t get_track_copy_permit_generic(void *p_user_data,  |   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.
 |   /*! Return 1 if track has pre-emphasis, 0 if not, or -1 for error.
 | ||||||
|     Is this meaningful if not an audio track? |     Is this meaningful if not an audio track? | ||||||
|  | @ -216,7 +221,7 @@ extern "C" { | ||||||
|     pre-emphasis is a non linear frequency response. |     pre-emphasis is a non linear frequency response. | ||||||
|   */ |   */ | ||||||
|   track_flag_t get_track_preemphasis_generic(const void *p_user_data,  |   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 . |     Read cdtext information for a CdIo object . | ||||||
|  | @ -230,14 +235,14 @@ extern "C" { | ||||||
|    |    | ||||||
|   /*! Read mode 1 or mode2 sectors (using cooked mode).  */ |   /*! Read mode 1 or mode2 sectors (using cooked mode).  */ | ||||||
|   driver_return_code_t read_data_sectors_generic (void *p_user_data,  |   driver_return_code_t read_data_sectors_generic (void *p_user_data,  | ||||||
| 						  void *p_buf, lsn_t i_lsn,  |                                                   void *p_buf, lsn_t i_lsn,  | ||||||
| 						  uint16_t i_blocksize,  |                                                   uint16_t i_blocksize,  | ||||||
| 						  uint32_t i_blocks); |                                                   uint32_t i_blocks); | ||||||
| #ifdef __cplusplus | #ifdef __cplusplus | ||||||
| } | } | ||||||
| #endif /* __cplusplus */ | #endif /* __cplusplus */ | ||||||
| 
 | 
 | ||||||
| #endif /* __CDIO_GENERIC_H__ */ | #endif /* CDIO_DRIVER_GENERIC_H_ */ | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| /* 
 | /* 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,6 @@ | ||||||
| /*
 | /*
 | ||||||
|   Copyright (C) 2003, 2004, 2008, 2011 Rocky Bernstein <rocky@gnu.org> |   Copyright (C) 2003, 2004, 2008, 2011, 2012 | ||||||
|  |   Rocky Bernstein <rocky@gnu.org> | ||||||
|   Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org> |   Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org> | ||||||
| 
 | 
 | ||||||
|   This program is free software: you can redistribute it and/or modify |   This program is free software: you can redistribute it and/or modify | ||||||
|  | @ -35,12 +36,10 @@ | ||||||
| #include "cdio_assert.h" | #include "cdio_assert.h" | ||||||
| #include "portable.h" | #include "portable.h" | ||||||
| 
 | 
 | ||||||
| static const char _rcsid[] = "$Id: logging.c,v 1.2 2008/04/22 15:29:12 karl Exp $"; |  | ||||||
| 
 |  | ||||||
| cdio_log_level_t cdio_loglevel_default = CDIO_LOG_WARN; | cdio_log_level_t cdio_loglevel_default = CDIO_LOG_WARN; | ||||||
| 
 | 
 | ||||||
| static void | static void | ||||||
| default_cdio_log_handler (cdio_log_level_t level, const char message[]) | default_cdio_log_handler(cdio_log_level_t level, const char message[]) | ||||||
| { | { | ||||||
|   switch (level) |   switch (level) | ||||||
|     { |     { | ||||||
|  | @ -84,7 +83,7 @@ default_cdio_log_handler (cdio_log_level_t level, const char message[]) | ||||||
| static cdio_log_handler_t _handler = default_cdio_log_handler; | static cdio_log_handler_t _handler = default_cdio_log_handler; | ||||||
| 
 | 
 | ||||||
| cdio_log_handler_t | cdio_log_handler_t | ||||||
| cdio_log_set_handler (cdio_log_handler_t new_handler) | cdio_log_set_handler(cdio_log_handler_t new_handler) | ||||||
| { | { | ||||||
|   cdio_log_handler_t old_handler = _handler; |   cdio_log_handler_t old_handler = _handler; | ||||||
| 
 | 
 | ||||||
|  | @ -94,7 +93,7 @@ cdio_log_set_handler (cdio_log_handler_t new_handler) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| static void | static void | ||||||
| cdio_logv (cdio_log_level_t level, const char format[], va_list args) | cdio_logv(cdio_log_level_t level, const char format[], va_list args) | ||||||
| { | { | ||||||
|   char buf[1024] = { 0, }; |   char buf[1024] = { 0, }; | ||||||
|   static int in_recursion = 0; |   static int in_recursion = 0; | ||||||
|  | @ -112,7 +111,7 @@ cdio_logv (cdio_log_level_t level, const char format[], va_list args) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void | void | ||||||
| cdio_log (cdio_log_level_t level, const char format[], ...) | cdio_log(cdio_log_level_t level, const char format[], ...) | ||||||
| { | { | ||||||
|   va_list args; |   va_list args; | ||||||
|   va_start (args, format); |   va_start (args, format); | ||||||
|  |  | ||||||
|  | @ -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 |   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 |   it under the terms of the GNU General Public License as published by | ||||||
|  | @ -21,8 +21,8 @@ | ||||||
|    included other routines can be more portable. |    included other routines can be more portable. | ||||||
| */ | */ | ||||||
|  |  | ||||||
| #ifndef __CDIO_PORTABLE_H__ | #ifndef CDIO_DRIVER_PORTABLE_H_ | ||||||
| #define __CDIO_PORTABLE_H__ | #define CDIO_DRIVER_PORTABLE_H_ | ||||||
| 
 | 
 | ||||||
| #if defined(HAVE_CONFIG_H) && !defined(__CDIO_CONFIG_H__) | #if defined(HAVE_CONFIG_H) && !defined(__CDIO_CONFIG_H__) | ||||||
| # include "config.h" | # include "config.h" | ||||||
|  | @ -51,4 +51,4 @@ | ||||||
| # define drand48()   (rand() / (double)RAND_MAX) | # define drand48()   (rand() / (double)RAND_MAX) | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
| #endif /* __CDIO_PORTABLE_H__ */ | #endif /* CDIO_DRIVER_PORTABLE_H_ */ | ||||||
|  |  | ||||||
|  | @ -1,5 +1,5 @@ | ||||||
| /*
 | /*
 | ||||||
|   Copyright (C) 2005, 2008, 2011 Rocky Bernstein <rocky@gnu.org> |   Copyright (C) 2005, 2008, 2011, 2012 Rocky Bernstein <rocky@gnu.org> | ||||||
| 
 | 
 | ||||||
|   This program is free software: you can redistribute it and/or modify |   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 |   it under the terms of the GNU General Public License as published by | ||||||
|  | @ -25,6 +25,10 @@ | ||||||
| # define __CDIO_CONFIG_H__ 1 | # define __CDIO_CONFIG_H__ 1 | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
|  | #ifdef HAVE_STDBOOL_H | ||||||
|  | # include <stdbool.h> | ||||||
|  | #endif  | ||||||
|  | 
 | ||||||
| #include <cdio/cdio.h> | #include <cdio/cdio.h> | ||||||
| #include <cdio/logging.h> | #include <cdio/logging.h> | ||||||
| #include "cdio_private.h" | #include "cdio_private.h" | ||||||
|  |  | ||||||
|  | @ -1,5 +1,5 @@ | ||||||
| /*
 | /*
 | ||||||
|     Copyright (C) 2004, 2005, 2011 Rocky Bernstein <rocky@gnu.org> |     Copyright (C) 2004, 2005, 2011, 2012 Rocky Bernstein <rocky@gnu.org> | ||||||
|     Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org> |     Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org> | ||||||
| 
 | 
 | ||||||
|     This program is free software; you can redistribute it and/or modify |     This program is free software; you can redistribute it and/or modify | ||||||
|  | @ -195,7 +195,7 @@ cdio_mmssff_to_lba (const char *psz_mmssff) | ||||||
| { | { | ||||||
|   int psz_field; |   int psz_field; | ||||||
|   lba_t ret; |   lba_t ret; | ||||||
|   char c; |   unsigned char c; | ||||||
|    |    | ||||||
|   if (0 == strcmp (psz_mmssff, "0")) |   if (0 == strcmp (psz_mmssff, "0")) | ||||||
|     return 0; |     return 0; | ||||||
|  |  | ||||||
|  | @ -1,5 +1,6 @@ | ||||||
| /*
 | /*
 | ||||||
|   Copyright (C) 2003, 2004, 2005, 2008, 2011 Rocky Bernstein <rocky@gnu.org> |   Copyright (C) 2003, 2004, 2005, 2008, 2011, 2012  | ||||||
|  |   Rocky Bernstein <rocky@gnu.org> | ||||||
|   Copyright (C) 2001 Herbert Valerio Riedel <hvr@gnu.org> |   Copyright (C) 2001 Herbert Valerio Riedel <hvr@gnu.org> | ||||||
| 
 | 
 | ||||||
|   This program is free software: you can redistribute it and/or modify |   This program is free software: you can redistribute it and/or modify | ||||||
|  | @ -20,10 +21,14 @@ | ||||||
| 
 | 
 | ||||||
| #ifdef HAVE_CONFIG_H | #ifdef HAVE_CONFIG_H | ||||||
| # include "config.h" | # include "config.h" | ||||||
| # define __CDIO_CONFIG_H__ 1 |  | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
|  | #ifdef HAVE_STDBOOL_H | ||||||
|  | # include <stdbool.h> | ||||||
|  | #endif  | ||||||
|  | 
 | ||||||
| #include <cdio/cdio.h> | #include <cdio/cdio.h> | ||||||
|  | #include <cdio/logging.h> | ||||||
| #include "cdio_private.h" | #include "cdio_private.h" | ||||||
| 
 | 
 | ||||||
| const char *track_format2str[6] =  | const char *track_format2str[6] =  | ||||||
|  | @ -39,9 +44,13 @@ enum cdio_track_enums; | ||||||
|   CDIO_INVALID_TRACK is returned on error. |   CDIO_INVALID_TRACK is returned on error. | ||||||
| */ | */ | ||||||
| track_t | track_t | ||||||
| cdio_get_first_track_num (const CdIo_t *p_cdio) | cdio_get_first_track_num(const CdIo_t *p_cdio) | ||||||
| { | { | ||||||
|   if (NULL == p_cdio) return CDIO_INVALID_TRACK; |   if (NULL == p_cdio) { | ||||||
|  |     cdio_info("Null CdIo object passed\n"); | ||||||
|  |     return CDIO_INVALID_TRACK; | ||||||
|  |   } | ||||||
|  |    | ||||||
| 
 | 
 | ||||||
|   if (p_cdio->op.get_first_track_num) { |   if (p_cdio->op.get_first_track_num) { | ||||||
|     return p_cdio->op.get_first_track_num (p_cdio->env); |     return p_cdio->op.get_first_track_num (p_cdio->env); | ||||||
|  | @ -57,7 +66,11 @@ cdio_get_first_track_num (const CdIo_t *p_cdio) | ||||||
| track_t | track_t | ||||||
| cdio_get_last_track_num (const CdIo_t *p_cdio) | cdio_get_last_track_num (const CdIo_t *p_cdio) | ||||||
| { | { | ||||||
|   if (NULL == p_cdio) return CDIO_INVALID_TRACK; |   if (NULL == p_cdio) { | ||||||
|  |     cdio_info("Null CdIo object passed\n"); | ||||||
|  |     return CDIO_INVALID_TRACK; | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|   { |   { | ||||||
|     const track_t i_first_track = cdio_get_first_track_num(p_cdio); |     const track_t i_first_track = cdio_get_first_track_num(p_cdio); | ||||||
|     if ( CDIO_INVALID_TRACK != i_first_track ) { |     if ( CDIO_INVALID_TRACK != i_first_track ) { | ||||||
|  | @ -76,6 +89,15 @@ cdio_get_last_track_num (const CdIo_t *p_cdio) | ||||||
| int | int | ||||||
| cdio_get_track_channels(const CdIo_t *p_cdio, track_t i_track) | cdio_get_track_channels(const CdIo_t *p_cdio, track_t i_track) | ||||||
| { | { | ||||||
|  |   if (NULL == p_cdio) { | ||||||
|  |     cdio_info("Null CdIo object passed\n"); | ||||||
|  |     return -1; | ||||||
|  |   } | ||||||
|  |   if (i_track > CDIO_CD_MAX_TRACKS) { | ||||||
|  |      cdio_log(CDIO_LOG_WARN, "Number of tracks exceeds maximum (%d vs. %d)\n", | ||||||
|  |               i_track, CDIO_CD_MAX_TRACKS); | ||||||
|  |      return -1; | ||||||
|  |   } | ||||||
|   if (p_cdio->op.get_track_channels) { |   if (p_cdio->op.get_track_channels) { | ||||||
|     return p_cdio->op.get_track_channels (p_cdio->env, i_track); |     return p_cdio->op.get_track_channels (p_cdio->env, i_track); | ||||||
|   } else { |   } else { | ||||||
|  | @ -209,7 +231,10 @@ cdio_get_track_green(const CdIo_t *p_cdio, track_t i_track) | ||||||
| lba_t | lba_t | ||||||
| cdio_get_track_lba(const CdIo_t *p_cdio, track_t i_track) | cdio_get_track_lba(const CdIo_t *p_cdio, track_t i_track) | ||||||
| { | { | ||||||
|   if (!p_cdio) return CDIO_INVALID_LBA; |   if (NULL == p_cdio) { | ||||||
|  |     cdio_info("Null CdIo object passed\n"); | ||||||
|  |     return CDIO_INVALID_LBA; | ||||||
|  |   } | ||||||
| 
 | 
 | ||||||
|   if (p_cdio->op.get_track_lba) { |   if (p_cdio->op.get_track_lba) { | ||||||
|     return p_cdio->op.get_track_lba (p_cdio->env, i_track); |     return p_cdio->op.get_track_lba (p_cdio->env, i_track); | ||||||
|  | @ -232,7 +257,16 @@ cdio_get_track_lba(const CdIo_t *p_cdio, track_t i_track) | ||||||
| lsn_t | lsn_t | ||||||
| cdio_get_track_lsn(const CdIo_t *p_cdio, track_t i_track) | cdio_get_track_lsn(const CdIo_t *p_cdio, track_t i_track) | ||||||
| { | { | ||||||
|   if (p_cdio == NULL) return CDIO_INVALID_LSN; |   if (NULL == p_cdio) { | ||||||
|  |     cdio_info("Null CdIo object passed\n"); | ||||||
|  |     return CDIO_INVALID_LSN; | ||||||
|  |   } | ||||||
|  |   if (i_track > CDIO_CD_MAX_TRACKS && i_track != CDIO_CDROM_LEADOUT_TRACK) { | ||||||
|  |      cdio_log(CDIO_LOG_WARN, "Number of tracks exceeds maximum (%d vs. %d)\n", | ||||||
|  |               i_track, CDIO_CD_MAX_TRACKS); | ||||||
|  |      return CDIO_INVALID_LSN; | ||||||
|  |   } | ||||||
|  | 
 | ||||||
| 
 | 
 | ||||||
|   if (p_cdio->op.get_track_lba) { |   if (p_cdio->op.get_track_lba) { | ||||||
|     return cdio_lba_to_lsn(p_cdio->op.get_track_lba (p_cdio->env, i_track)); |     return cdio_lba_to_lsn(p_cdio->op.get_track_lba (p_cdio->env, i_track)); | ||||||
|  | @ -254,7 +288,16 @@ cdio_get_track_lsn(const CdIo_t *p_cdio, track_t i_track) | ||||||
| char * | char * | ||||||
| cdio_get_track_isrc (const CdIo_t *p_cdio, track_t i_track) | cdio_get_track_isrc (const CdIo_t *p_cdio, track_t i_track) | ||||||
| { | { | ||||||
|   if (p_cdio == NULL) return NULL; |   if (NULL == p_cdio) { | ||||||
|  |     cdio_info("Null CdIo object passed\n"); | ||||||
|  |     return NULL; | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|  |   if (i_track > CDIO_CD_MAX_TRACKS) { | ||||||
|  |      cdio_log(CDIO_LOG_WARN, "Number of tracks exceeds maximum (%d vs. %d)\n", | ||||||
|  |               i_track, CDIO_CD_MAX_TRACKS); | ||||||
|  |      return NULL; | ||||||
|  |   } | ||||||
| 
 | 
 | ||||||
|   if (p_cdio->op.get_track_isrc) { |   if (p_cdio->op.get_track_isrc) { | ||||||
|     return p_cdio->op.get_track_isrc (p_cdio->env, i_track); |     return p_cdio->op.get_track_isrc (p_cdio->env, i_track); | ||||||
|  | @ -271,7 +314,10 @@ cdio_get_track_isrc (const CdIo_t *p_cdio, track_t i_track) | ||||||
| lba_t | lba_t | ||||||
| cdio_get_track_pregap_lba(const CdIo_t *p_cdio, track_t i_track) | cdio_get_track_pregap_lba(const CdIo_t *p_cdio, track_t i_track) | ||||||
| { | { | ||||||
|   if (p_cdio == NULL) return CDIO_INVALID_LBA; |   if (NULL == p_cdio) { | ||||||
|  |     cdio_info("Null CdIo object passed\n"); | ||||||
|  |     return CDIO_INVALID_LBA; | ||||||
|  |   } | ||||||
| 
 | 
 | ||||||
|   if (p_cdio->op.get_track_pregap_lba) { |   if (p_cdio->op.get_track_pregap_lba) { | ||||||
|     return p_cdio->op.get_track_pregap_lba (p_cdio->env, i_track); |     return p_cdio->op.get_track_pregap_lba (p_cdio->env, i_track); | ||||||
|  |  | ||||||
|  | @ -23,8 +23,12 @@ | ||||||
| # include "config.h" | # include "config.h" | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
|  | #ifdef HAVE_STDIO_H | ||||||
|  | #include <stdio.h> | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
| #ifdef HAVE_STRING_H | #ifdef HAVE_STRING_H | ||||||
| # include <string.h> | #include <string.h> | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
| #ifdef HAVE_STDLIB_H | #ifdef HAVE_STDLIB_H | ||||||
|  | @ -38,10 +42,6 @@ | ||||||
| #include <cdio/utf8.h> | #include <cdio/utf8.h> | ||||||
| #include <cdio/logging.h> | #include <cdio/logging.h> | ||||||
| 
 | 
 | ||||||
| #ifdef HAVE_STDIO_H |  | ||||||
| #include <stdio.h> |  | ||||||
| #endif |  | ||||||
| 
 |  | ||||||
| /* Windows requires some basic UTF-8 support outside of Joliet */ | /* Windows requires some basic UTF-8 support outside of Joliet */ | ||||||
| #if defined(_WIN32) | #if defined(_WIN32) | ||||||
| #include <windows.h> | #include <windows.h> | ||||||
|  | @ -55,7 +55,7 @@ | ||||||
|  * Converts an UTF-16 string to UTF8 (allocate returned string) |  * Converts an UTF-16 string to UTF8 (allocate returned string) | ||||||
|  * Returns NULL on error |  * Returns NULL on error | ||||||
|  */ |  */ | ||||||
| char* cdio_wchar_to_utf8(const wchar_t* wstr) | static inline char* cdio_wchar_to_utf8(const wchar_t* wstr) | ||||||
|   { |   { | ||||||
|   int size = 0; |   int size = 0; | ||||||
|   char* str = NULL; |   char* str = NULL; | ||||||
|  | @ -99,6 +99,18 @@ wchar_t* cdio_utf8_to_wchar(const char* str) | ||||||
|   } |   } | ||||||
|   return wstr; |   return wstr; | ||||||
|   } |   } | ||||||
|  | 
 | ||||||
|  | /* UTF-8 compliant version of fopen() */ | ||||||
|  | FILE* fopen_utf8(const char* filename, const char* mode) | ||||||
|  | { | ||||||
|  |   FILE* ret = NULL; | ||||||
|  |   wchar_t* wfilename = cdio_utf8_to_wchar(filename); | ||||||
|  |   wchar_t* wmode =  cdio_utf8_to_wchar(mode); | ||||||
|  |   ret = _wfopen(wfilename, wmode); | ||||||
|  |   free(wfilename); | ||||||
|  |   free(wmode); | ||||||
|  |   return ret; | ||||||
|  | } | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
| #ifdef HAVE_JOLIET | #ifdef HAVE_JOLIET | ||||||
|  | @ -155,7 +167,7 @@ void cdio_charset_converter_destroy(cdio_charset_coverter_t*cnv) | ||||||
| #define BYTES_INCREMENT 16 | #define BYTES_INCREMENT 16 | ||||||
| 
 | 
 | ||||||
| static bool | static bool | ||||||
| do_convert(iconv_t cd, char * src, int src_len, | do_convert(iconv_t cd, const char * src, int src_len, | ||||||
|            char ** dst, int *dst_len) |            char ** dst, int *dst_len) | ||||||
|   { |   { | ||||||
|   char * ret; |   char * ret; | ||||||
|  | @ -182,7 +194,7 @@ do_convert(iconv_t cd, char * src, int src_len, | ||||||
| 
 | 
 | ||||||
|   ret    = malloc(alloc_size); |   ret    = malloc(alloc_size); | ||||||
| 
 | 
 | ||||||
|   inbuf  = src; |   inbuf  = (char *)src; | ||||||
|   outbuf = ret; |   outbuf = ret; | ||||||
|    |    | ||||||
|   while(1) |   while(1) | ||||||
|  | @ -257,7 +269,7 @@ bool cdio_charset_from_utf8(cdio_utf8_t * src, char ** dst, | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| bool cdio_charset_to_utf8(char *src, size_t src_len, cdio_utf8_t **dst, | bool cdio_charset_to_utf8(const char *src, size_t src_len, cdio_utf8_t **dst, | ||||||
|                           const char * src_charset) |                           const char * src_charset) | ||||||
|   { |   { | ||||||
|   iconv_t ic; |   iconv_t ic; | ||||||
|  | @ -297,7 +309,7 @@ bool cdio_charset_from_utf8(cdio_utf8_t * src, char ** dst, | ||||||
|   return true; |   return true; | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
| bool cdio_charset_to_utf8(char *src, size_t src_len, cdio_utf8_t **dst, | bool cdio_charset_to_utf8(const char *src, size_t src_len, cdio_utf8_t **dst, | ||||||
|                           const char * src_charset) |                           const char * src_charset) | ||||||
|   { |   { | ||||||
|   wchar_t* le_src; |   wchar_t* le_src; | ||||||
|  |  | ||||||
|  | @ -130,7 +130,7 @@ _cdio_strdup_upper (const char str[]) | ||||||
| 
 | 
 | ||||||
|       while (*p) |       while (*p) | ||||||
|         { |         { | ||||||
|           *p = toupper (*p); |           *p = toupper ((unsigned char) *p); | ||||||
|           p++; |           p++; | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
|  |  | ||||||
|  | @ -36,19 +36,19 @@ const char ISO_STANDARD_ID[] = {'C', 'D', '0', '0', '1'}; | ||||||
| #include <time.h> | #include <time.h> | ||||||
| #include <ctype.h> | #include <ctype.h> | ||||||
| #ifdef HAVE_STRING_H | #ifdef HAVE_STRING_H | ||||||
| #include <string.h> | # include <string.h> | ||||||
| #endif | #endif | ||||||
| #ifdef HAVE_STDIO_H | #ifdef HAVE_STDIO_H | ||||||
| #include <stdio.h> | # include <stdio.h> | ||||||
| #endif | #endif | ||||||
| #ifdef HAVE_LIMITS_H | #ifdef HAVE_LIMITS_H | ||||||
| #include <limits.h> | # include <limits.h> | ||||||
| #endif | #endif | ||||||
| #ifdef HAVE_STDLIB_H | #ifdef HAVE_STDLIB_H | ||||||
| #include <stdlib.h> | # include <stdlib.h> | ||||||
| #endif | #endif | ||||||
| #ifdef HAVE_SYS_STAT_H | #ifdef HAVE_SYS_STAT_H | ||||||
| #include <sys/stat.h> | # include <sys/stat.h> | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
| #ifdef HAVE_ERRNO_H | #ifdef HAVE_ERRNO_H | ||||||
|  | @ -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 |   Set time in format used in ISO 9660 directory index record | ||||||
|   from a Unix time structure. */ |   from a Unix time structure. */ | ||||||
| void | 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 | #ifdef HAVE_TM_GMTOFF | ||||||
|   /* Convert seconds to minutes */ |     /* Convert seconds to minutes */ | ||||||
|   time_zone = p_tm->tm_gmtoff / 60; |     time_zone = p_tm->tm_gmtoff / 60; | ||||||
| #else  | #else  | ||||||
|   time_zone = (p_tm->tm_isdst > 0) ? -60 : 0; |     time_zone = (p_tm->tm_isdst > 0) ? -60 : 0; | ||||||
| #endif | #endif | ||||||
|  |   } | ||||||
|   iso9660_set_dtime_with_timezone (p_tm, time_zone, p_idr_date); |   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.  |   correction in minutes.  | ||||||
| */ | */ | ||||||
| void | void | ||||||
| iso9660_set_ltime_with_timezone (const struct tm *p_tm,  | iso9660_set_ltime_with_timezone(const struct tm *p_tm,  | ||||||
|                                  int time_zone, |                                 int time_zone, | ||||||
|                                  /*out*/ iso9660_ltime_t *pvd_date) |                                 /*out*/ iso9660_ltime_t *pvd_date) | ||||||
| { | { | ||||||
|   char *_pvd_date = (char *) 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 |   Set "long" time in format used in ISO 9660 primary volume descriptor | ||||||
|   from a Unix time structure. */ |   from a Unix time structure. */ | ||||||
| void | 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 | #ifdef HAVE_TM_GMTOFF | ||||||
|   /* Set time zone in 15-minute interval encoding. */ |     /* Set time zone in 15-minute interval encoding. */ | ||||||
|   time_zone = p_tm->tm_gmtoff / 60; |     time_zone = p_tm->tm_gmtoff / 60; | ||||||
| #else | #else | ||||||
|   time_zone = (p_tm->tm_isdst > 0) ? -60 : 0; |     time_zone = (p_tm->tm_isdst > 0) ? -60 : 0; | ||||||
| #endif | #endif | ||||||
|  |   } | ||||||
|   iso9660_set_ltime_with_timezone (p_tm, time_zone, pvd_date); |   iso9660_set_ltime_with_timezone (p_tm, time_zone, pvd_date); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | @ -667,8 +671,8 @@ iso9660_set_pvd(void *pd, | ||||||
|   iso9660_set_ltime (&temp_tm, &(ipd.creation_date)); |   iso9660_set_ltime (&temp_tm, &(ipd.creation_date)); | ||||||
|   gmtime_r(pvd_time, &temp_tm); |   gmtime_r(pvd_time, &temp_tm); | ||||||
|   iso9660_set_ltime (&temp_tm, &(ipd.modification_date)); |   iso9660_set_ltime (&temp_tm, &(ipd.modification_date)); | ||||||
|   iso9660_set_ltime (&temp_tm,     &(ipd.expiration_date)); |   iso9660_set_ltime (NULL,     &(ipd.expiration_date)); | ||||||
|   iso9660_set_ltime (&temp_tm,     &(ipd.effective_date)); |   iso9660_set_ltime (NULL,     &(ipd.effective_date)); | ||||||
| 
 | 
 | ||||||
|   ipd.file_structure_version = to_711(1); |   ipd.file_structure_version = to_711(1); | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,5 @@ | ||||||
| /*
 | /*
 | ||||||
|   Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2011 |   Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2011, 2012 | ||||||
|     Rocky Bernstein <rocky@gnu.org> |     Rocky Bernstein <rocky@gnu.org> | ||||||
|   Copyright (C) 2001 Herbert Valerio Riedel <hvr@gnu.org> |   Copyright (C) 2001 Herbert Valerio Riedel <hvr@gnu.org> | ||||||
| 
 | 
 | ||||||
|  | @ -19,16 +19,24 @@ | ||||||
| /* iso9660 filesystem-based routines */ | /* iso9660 filesystem-based routines */ | ||||||
|  |  | ||||||
| #if defined(HAVE_CONFIG_H) && !defined(__CDIO_CONFIG_H__) | #if defined(HAVE_CONFIG_H) && !defined(__CDIO_CONFIG_H__) | ||||||
| # include "config.h" | #include "config.h" | ||||||
| # define __CDIO_CONFIG_H__ 1 | #define __CDIO_CONFIG_H__ 1 | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
|  | #ifdef HAVE_STDBOOL_H | ||||||
|  | # include <stdbool.h> | ||||||
|  | #endif  | ||||||
|  | 
 | ||||||
|  | #ifdef HAVE_STDIO_H | ||||||
|  | #include <stdio.h> | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
| #ifdef HAVE_STRING_H | #ifdef HAVE_STRING_H | ||||||
| # include <string.h> | #include <string.h> | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
| #ifdef HAVE_ERRNO_H | #ifdef HAVE_ERRNO_H | ||||||
| # include <errno.h> | #include <errno.h> | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
| #ifdef HAVE_LANGINFO_CODESET | #ifdef HAVE_LANGINFO_CODESET | ||||||
|  | @ -46,8 +54,6 @@ | ||||||
| #include "_cdio_stdio.h" | #include "_cdio_stdio.h" | ||||||
| #include "cdio_private.h" | #include "cdio_private.h" | ||||||
| 
 | 
 | ||||||
| #include <stdio.h> |  | ||||||
| 
 |  | ||||||
| static const char _rcsid[] = "$Id: iso9660_fs.c,v 1.47 2008/04/18 16:02:09 karl Exp $"; | static const char _rcsid[] = "$Id: iso9660_fs.c,v 1.47 2008/04/18 16:02:09 karl Exp $"; | ||||||
| 
 | 
 | ||||||
| /* Implementation of iso9660_t type */ | /* Implementation of iso9660_t type */ | ||||||
|  |  | ||||||
|  | @ -1,5 +1,5 @@ | ||||||
| /*
 | /*
 | ||||||
|   Copyright (C) 2003, 2004, 2005, 2008, 2011 |   Copyright (C) 2003, 2004, 2005, 2008, 2011, 2012 | ||||||
|   Rocky Bernstein <rocky@gnu.org> |   Rocky Bernstein <rocky@gnu.org> | ||||||
|   Copyright (C) 2000 Herbert Valerio Riedel <hvr@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/>.
 |   along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | ||||||
| */ | */ | ||||||
|  |  | ||||||
| #ifndef __CDIO_ISO9660_PRIVATE_H__ | #ifndef CDIO_ISO9660_ISO9660_PRIVATE_H_ | ||||||
| #define __CDIO_ISO9660_PRIVATE_H__ | #define CDIO_ISO9660_ISO9660_PRIVATE_H_ | ||||||
| 
 | 
 | ||||||
| #if defined(HAVE_CONFIG_H) && !defined(__CDIO_CONFIG_H__) | #if defined(HAVE_CONFIG_H) && !defined(__CDIO_CONFIG_H__) | ||||||
| # include "config.h" | # include "config.h" | ||||||
|  | @ -32,6 +32,10 @@ | ||||||
| 
 | 
 | ||||||
| #include <cdio/types.h> | #include <cdio/types.h> | ||||||
| 
 | 
 | ||||||
|  | #ifdef HAVE_STDBOOL_H | ||||||
|  | # include <stdbool.h> | ||||||
|  | #endif  | ||||||
|  | 
 | ||||||
| #define ISO_VERSION             1 | #define ISO_VERSION             1 | ||||||
| 
 | 
 | ||||||
| PRAGMA_BEGIN_PACKED | PRAGMA_BEGIN_PACKED | ||||||
|  | @ -71,7 +75,7 @@ typedef struct iso_path_table_s { | ||||||
| 
 | 
 | ||||||
| PRAGMA_END_PACKED | PRAGMA_END_PACKED | ||||||
| 
 | 
 | ||||||
| #endif /* __CDIO_ISO9660_PRIVATE_H__ */ | #endif /* CDIO_ISO0660_ISO9660_PRIVATE_H_ */ | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| /* 
 | /* 
 | ||||||
|  |  | ||||||
|  | @ -1,7 +1,7 @@ | ||||||
| /*
 | /*
 | ||||||
|   filemode.c -- make a string describing file modes |   filemode.c -- make a string describing file modes | ||||||
| 
 | 
 | ||||||
|   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. |   Copyright (C) 1985, 1990, 1993, 1998-2000 Free Software Foundation, Inc. | ||||||
| 
 | 
 | ||||||
|   This program is free software: you can redistribute it and/or modify |   This program is free software: you can redistribute it and/or modify | ||||||
|  |  | ||||||
|  | @ -1,5 +1,5 @@ | ||||||
| /*
 | /*
 | ||||||
|   Copyright (C) 2005, 2008, 2010 Rocky Bernstein <rocky@gnu.org> |   Copyright (C) 2005, 2008, 2010, 2012 Rocky Bernstein <rocky@gnu.org> | ||||||
| 
 | 
 | ||||||
|   This program is free software: you can redistribute it and/or modify |   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 |   it under the terms of the GNU General Public License as published by | ||||||
|  |  | ||||||
|  | @ -1,5 +1,5 @@ | ||||||
| /*
 | /*
 | ||||||
|   Copyright (C) 2005, 2006, 2008, 2010 Rocky Bernstein <rocky@gnu.org> |   Copyright (C) 2005, 2006, 2008, 2010, 2012 Rocky Bernstein <rocky@gnu.org> | ||||||
| 
 | 
 | ||||||
|   This program is free software: you can redistribute it and/or modify |   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 |   it under the terms of the GNU General Public License as published by | ||||||
|  |  | ||||||
|  | @ -1,7 +1,5 @@ | ||||||
| /*
 | /*
 | ||||||
|   $Id: udf_fs.h,v 1.3 2008/04/18 16:02:10 karl Exp $ |   Copyright (C) 2006, 2008, 2012 Rocky Bernstein <rockyb@gnu.org> | ||||||
| 
 |  | ||||||
|   Copyright (C) 2006, 2008 Rocky Bernstein <rockyb@gnu.org> |  | ||||||
| 
 | 
 | ||||||
|   This program is free software: you can redistribute it and/or modify |   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 |   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/>.
 |   along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | ||||||
| */ | */ | ||||||
| 
 | 
 | ||||||
| #ifndef __CDIO_UDF_FS_H__ | #ifndef CDIO_UDF_UDF_FS_H_ | ||||||
| #define __CDIO_UDF_FS_H__ | #define CDIO_UDF_UDF_FS_H_ | ||||||
| 
 | 
 | ||||||
| #include <cdio/ecma_167.h> | #include <cdio/ecma_167.h> | ||||||
| /**
 | /**
 | ||||||
|  | @ -27,7 +25,7 @@ | ||||||
|  */ |  */ | ||||||
| int udf_checktag(const udf_tag_t *p_tag, udf_Uint16_t tag_id); | 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_ */ | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| /* 
 | /* 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,5 @@ | ||||||
| /*
 | /*
 | ||||||
|   Copyright (C) 2005, 2006, 2008, 2011 Rocky Bernstein <rocky@gnu.org> |   Copyright (C) 2005, 2006, 2008, 2011, 2012 Rocky Bernstein <rocky@gnu.org> | ||||||
| 
 | 
 | ||||||
|   This program is free software: you can redistribute it and/or modify |   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 |   it under the terms of the GNU General Public License as published by | ||||||
|  | @ -15,14 +15,18 @@ | ||||||
|   along with this program.  If not, see <http://www.gnu.org/licenses/>.
 |   along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | ||||||
| */ | */ | ||||||
| 
 | 
 | ||||||
| #ifndef __CDIO_UDF_PRIVATE_H__ | #ifndef CDIO_UDF_UDF_PRIVATE_H_ | ||||||
| #define __CDIO_UDF_PRIVATE_H__ | #define CDIO_UDF_UDF_PRIVATE_H_ | ||||||
| 
 | 
 | ||||||
| #if defined(HAVE_CONFIG_H) && !defined(LIBCDIO_CONFIG_H) && !defined(__CDIO_CONFIG_H__) | #if defined(HAVE_CONFIG_H) && !defined(LIBCDIO_CONFIG_H) && !defined(__CDIO_CONFIG_H__) | ||||||
| # include "config.h" | # include "config.h" | ||||||
| # define __CDIO_CONFIG_H__ 1 | # define __CDIO_CONFIG_H__ 1 | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
|  | #ifdef HAVE_STDBOOL_H | ||||||
|  | # include <stdbool.h> | ||||||
|  | #endif  | ||||||
|  | 
 | ||||||
| #include <cdio/types.h> | #include <cdio/types.h> | ||||||
| #include <cdio/ecma_167.h> | #include <cdio/ecma_167.h> | ||||||
| #include <cdio/udf.h> | #include <cdio/udf.h> | ||||||
|  | @ -43,7 +47,7 @@ struct udf_s { | ||||||
|   uint32_t              fsd_offset;   /* lba of fileset descriptor */ |   uint32_t              fsd_offset;   /* lba of fileset descriptor */ | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| #endif /* __CDIO_UDF_PRIVATE_H__ */ | #endif /* CDIO_UDF_UDF_PRIVATE_H_ */ | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
| /* 
 | /* 
 | ||||||
|  |  | ||||||
							
								
								
									
										12
									
								
								src/rufus.rc
									
										
									
									
									
								
							
							
						
						
									
										12
									
								
								src/rufus.rc
									
										
									
									
									
								
							|  | @ -30,7 +30,7 @@ LANGUAGE LANG_ENGLISH, SUBLANG_NEUTRAL | ||||||
| IDD_DIALOG DIALOGEX 12, 12, 206, 316 | IDD_DIALOG DIALOGEX 12, 12, 206, 316 | ||||||
| STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU | STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU | ||||||
| EXSTYLE WS_EX_APPWINDOW | EXSTYLE WS_EX_APPWINDOW | ||||||
| CAPTION "Rufus v1.2.0.188" | CAPTION "Rufus v1.2.0.189" | ||||||
| FONT 8, "MS Shell Dlg", 400, 0, 0x1 | FONT 8, "MS Shell Dlg", 400, 0, 0x1 | ||||||
| BEGIN | BEGIN | ||||||
|     DEFPUSHBUTTON   "Start",IDC_START,94,278,50,14 |     DEFPUSHBUTTON   "Start",IDC_START,94,278,50,14 | ||||||
|  | @ -77,7 +77,7 @@ BEGIN | ||||||
|     DEFPUSHBUTTON   "OK",IDOK,231,175,50,14,WS_GROUP |     DEFPUSHBUTTON   "OK",IDOK,231,175,50,14,WS_GROUP | ||||||
|     CONTROL         "<a href=""http://rufus.akeo.ie"">http://rufus.akeo.ie</a>",IDC_ABOUT_RUFUS_URL, |     CONTROL         "<a href=""http://rufus.akeo.ie"">http://rufus.akeo.ie</a>",IDC_ABOUT_RUFUS_URL, | ||||||
|                     "SysLink",WS_TABSTOP,46,47,114,9 |                     "SysLink",WS_TABSTOP,46,47,114,9 | ||||||
|     LTEXT           "Version 1.2.0 (Build 188)",IDC_STATIC,46,19,78,8 |     LTEXT           "Version 1.2.0 (Build 189)",IDC_STATIC,46,19,78,8 | ||||||
|     PUSHBUTTON      "License...",IDC_ABOUT_LICENSE,46,175,50,14,WS_GROUP |     PUSHBUTTON      "License...",IDC_ABOUT_LICENSE,46,175,50,14,WS_GROUP | ||||||
|     EDITTEXT        IDC_ABOUT_COPYRIGHTS,46,107,235,63,ES_MULTILINE | ES_READONLY | WS_VSCROLL |     EDITTEXT        IDC_ABOUT_COPYRIGHTS,46,107,235,63,ES_MULTILINE | ES_READONLY | WS_VSCROLL | ||||||
|     LTEXT           "Report bugs or request enhancements at:",IDC_STATIC,46,66,187,8 |     LTEXT           "Report bugs or request enhancements at:",IDC_STATIC,46,66,187,8 | ||||||
|  | @ -237,8 +237,8 @@ END | ||||||
| // | // | ||||||
| 
 | 
 | ||||||
| VS_VERSION_INFO VERSIONINFO | VS_VERSION_INFO VERSIONINFO | ||||||
|  FILEVERSION 1,2,0,188 |  FILEVERSION 1,2,0,189 | ||||||
|  PRODUCTVERSION 1,2,0,188 |  PRODUCTVERSION 1,2,0,189 | ||||||
|  FILEFLAGSMASK 0x3fL |  FILEFLAGSMASK 0x3fL | ||||||
| #ifdef _DEBUG | #ifdef _DEBUG | ||||||
|  FILEFLAGS 0x1L |  FILEFLAGS 0x1L | ||||||
|  | @ -255,13 +255,13 @@ BEGIN | ||||||
|         BEGIN |         BEGIN | ||||||
|             VALUE "CompanyName", "akeo.ie" |             VALUE "CompanyName", "akeo.ie" | ||||||
|             VALUE "FileDescription", "Rufus" |             VALUE "FileDescription", "Rufus" | ||||||
|             VALUE "FileVersion", "1.2.0.188" |             VALUE "FileVersion", "1.2.0.189" | ||||||
|             VALUE "InternalName", "Rufus" |             VALUE "InternalName", "Rufus" | ||||||
|             VALUE "LegalCopyright", "© 2011 Pete Batard (GPL v3)" |             VALUE "LegalCopyright", "© 2011 Pete Batard (GPL v3)" | ||||||
|             VALUE "LegalTrademarks", "http://www.gnu.org/copyleft/gpl.html" |             VALUE "LegalTrademarks", "http://www.gnu.org/copyleft/gpl.html" | ||||||
|             VALUE "OriginalFilename", "rufus.exe" |             VALUE "OriginalFilename", "rufus.exe" | ||||||
|             VALUE "ProductName", "Rufus" |             VALUE "ProductName", "Rufus" | ||||||
|             VALUE "ProductVersion", "1.2.0.188" |             VALUE "ProductVersion", "1.2.0.189" | ||||||
|         END |         END | ||||||
|     END |     END | ||||||
|     BLOCK "VarFileInfo" |     BLOCK "VarFileInfo" | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue