diff --git a/configure.ac b/configure.ac index f586cd1..9af99d0 100644 --- a/configure.ac +++ b/configure.ac @@ -1,4 +1,4 @@ -AC_INIT([libisofs], [0.6.6], [http://libburnia-project.org]) +AC_INIT([libisofs], [0.6.7], [http://libburnia-project.org]) AC_PREREQ([2.50]) dnl AC_CONFIG_HEADER([config.h]) @@ -44,7 +44,7 @@ dnl If LIBISOFS_*_VERSION changes, be sure to change AC_INIT above to match. dnl LIBISOFS_MAJOR_VERSION=0 LIBISOFS_MINOR_VERSION=6 -LIBISOFS_MICRO_VERSION=6 +LIBISOFS_MICRO_VERSION=7 LIBISOFS_VERSION=$LIBISOFS_MAJOR_VERSION.$LIBISOFS_MINOR_VERSION.$LIBISOFS_MICRO_VERSION AC_SUBST(LIBISOFS_MAJOR_VERSION) @@ -54,10 +54,10 @@ AC_SUBST(LIBISOFS_VERSION) dnl Libtool versioning LT_RELEASE=$LIBISOFS_MAJOR_VERSION.$LIBISOFS_MINOR_VERSION -# SONAME = 6 - 0 = 6 . Library name = libisofs.6.0.0 -LT_CURRENT=7 +# SONAME = 8 - 2 = 6 . Library name = libisofs.6.2.0 +LT_CURRENT=8 LT_REVISION=0 -LT_AGE=1 +LT_AGE=2 LT_CURRENT_MINUS_AGE=`expr $LT_CURRENT - $LT_AGE` AC_SUBST(LT_RELEASE) diff --git a/libisofs/libisofs.h b/libisofs/libisofs.h index 891925a..4a40923 100644 --- a/libisofs/libisofs.h +++ b/libisofs/libisofs.h @@ -280,7 +280,11 @@ struct iso_data_source * Buffer where the data will be written. It should have at least * 2048 bytes. * @return - * 1 if success, < 0 on error (has to be a valid libisofs error code) + * 1 if success, + * < 0 if error. This function has to emit a valid libisofs error code. + * Predifined (but not mandatory) for this purpose are: + * ISO_DATA_SOURCE_SORRY , ISO_DATA_SOURCE_MISHAP, + * ISO_DATA_SOURCE_FAILURE , ISO_DATA_SOURCE_FATAL */ int (*read_block)(IsoDataSource *src, uint32_t lba, uint8_t *buffer); @@ -867,7 +871,7 @@ int iso_lib_is_compatible(int major, int minor, int micro); */ #define iso_lib_header_version_major 0 #define iso_lib_header_version_minor 6 -#define iso_lib_header_version_micro 6 +#define iso_lib_header_version_micro 7 /** * Usage discussion: @@ -3900,4 +3904,16 @@ void iso_stream_get_id(IsoStream *stream, unsigned int *fs_id, dev_t *dev_id, /** El-Torito image is hidden (WARNING,HIGH, -335) */ #define ISO_EL_TORITO_HIDDEN 0xD030FEB1 +/** Read error occured with IsoDataSource (SORRY,HIGH, -513) */ +#define ISO_DATA_SOURCE_SORRY 0xE030FCFF + +/** Read error occured with IsoDataSource (MISHAP,HIGH, -513) */ +#define ISO_DATA_SOURCE_MISHAP 0xE430FCFF + +/** Read error occured with IsoDataSource (FAILURE,HIGH, -513) */ +#define ISO_DATA_SOURCE_FAILURE 0xE830FCFF + +/** Read error occured with IsoDataSource (FATAL,HIGH, -513) */ +#define ISO_DATA_SOURCE_FATAL 0xF030FCFF + #endif /*LIBISO_LIBISOFS_H_*/ diff --git a/libisofs/messages.c b/libisofs/messages.c index cd68ca6..78b4f9a 100644 --- a/libisofs/messages.c +++ b/libisofs/messages.c @@ -204,6 +204,11 @@ const char *iso_error_to_msg(int errcode) return "Image write cancelled"; case ISO_EL_TORITO_HIDDEN: return "El-Torito image is hidden"; + case ISO_DATA_SOURCE_SORRY: + case ISO_DATA_SOURCE_MISHAP: + case ISO_DATA_SOURCE_FAILURE: + case ISO_DATA_SOURCE_FATAL: + return "Read error occured with IsoDataSource"; default: return "Unknown error"; }