Commit Graph

104 Commits

Author SHA1 Message Date
rocky
71b5f6e14a More time setting/getting patches - the last of the patches from N. Boullis.
Make testiso9660 more stringent now that bugs have been removed.
2008-06-03 08:40:14 +00:00
rocky
a8e617dc7d Replace last vestige of non-reentrant gmtime with timegm. Problem
determination and fix again from Nicolas Boullis.
2008-05-31 12:18:33 +00:00
rocky
f03aa75458 iso9660_get_ltime: the TZ environment variable was set using a local
buffer that disappears when the function terminates. This might lead
to segmentation faults. Reset to the old TZ value (if any) or unset
the variable if it was previously not set. Problem noted and fixed by
Nicolas Boullis.
2008-05-31 11:59:06 +00:00
rocky
d60a120854 iso9660.c: On some architectures (like my powerpc), char is unsigned. So when
libcdio tries to adjust "converted ISO9660 timezones" in iso9660_set_ltime
on such architectures, it would replace legitimate negative values with
52.

Cast &_pv_date[16] to "iso712_t *" and then dereference.

Patch from Nicolas Boullis:

doc: small spelling typos.
2008-05-29 02:28:27 +00:00
rocky
7036d8d951 iso9660.h: parameter name change to match implementation.
iso9660.c: use reentrant version of localtime and gettime (most of the time)
Patch from Nicolas Boullis.

testiso9660.c: Change a memcmp for a test_compare which gives more detailed
information on failure.
2008-05-28 01:48:37 +00:00
rocky
62d7731703 Patch from Peter Hartley to allow Cross-compiling to mingw32:
- MinGW doesn't have struct timespec, so udf_time.c doesn't compile
   (changes lib/udf/udf_time.c, configure.ac, config.h.in)

 - The configure test for bitfield ordering uses AC_TRY_RUN and thus
   doesn't work when cross-compiling; use sneakiness to try and
   determine it at compile time, falling back to the existing runtime
   check if the sneakiness doesn't work
   (changes configure.ac; tested on x86_64-linux-gnu and i586-mingw32
   which are bf_lsbf=1, plus sparc64-linux-gnu which is bf_lsbf=0)

 - The configure test for "extern long timezone" needlessly uses
   AC_TRY_RUN when in fact AC_LINK_IFELSE is all we need to know, and
   that latter works when cross-compiling
   (changes configure.ac)

 - MinGW sys/stat.h doesn't have the *GRP or *OTH macros, nor S_IFLNK
   or S_IFSOCK, nor S_ISUID etc
   (changes lib/udf/udf.c and lib/iso9660/xa.c)

 - MinGW doesn't have <sys/wait.h>, so even the header-inclusion bit
   of the Linux driver doesn't compile unless it's moved inside the
   "ifdef HAVE_LINUX_CDROM"
   (changes lib/driver/gnu_linux.c)

 - Because the man pages cd-info.1 etc depend on the binaries themselves
   (for help2man reasons), the configure options --without-cd-info etc
   don't actually stop them being compiled. Fixed by only depending on
   man pages for programs that are actually built, which also stops
   the installation of man pages of programs which aren't themselves
   installed
   (changes src/Makefile.am)
2008-04-24 07:28:00 +00:00
karl
2d05460780 gplv3+ 2008-04-18 16:02:09 +00:00
karl
3b90a7dda4 update Makefiles to GPLv3+ 2008-03-20 19:02:37 +00:00
rocky
2e34115075 Add checks for memory allocation failures. Patch from Mandriva folks by
Gustavo De Nardin via Vincent Danen. Originally for libcdio 0.78.2

See also https://savannah.gnu.org/patch/?6413
2008-02-08 08:53:32 +00:00
rocky
b6868ddc8f Note that iso9660_dir_to_name can return NULL if memory allocation fails. 2008-01-05 12:12:52 +00:00
rocky
f8f896cc29 Another case of potentially accessing outside of array bounds. Bug caught by Nico Golde. 2008-01-05 09:54:31 +00:00
flameeyes
4394fdac61 Fix logic. 2007-11-16 22:50:21 +00:00
flameeyes
d9c5a8094e Fix typo. 2007-11-16 22:29:07 +00:00
flameeyes
ab133c5fc5 Do not assume that sizeof(int) == sizeof(long), the assumption is wrong on 64-bit arches. Reduce the size of strtol range when filling a struct tm variable. 2007-11-16 21:46:11 +00:00
rocky
40c531fed9 Remove := in Makefiles for portability.
autoconf 1.10 complains about adding AM_PROC_CC_C_O - pander to it.
2007-10-15 04:53:59 +00:00
rocky
eb8a5388ad Go over shared library revision numbers and NEWS in advance of a Oct 27 0.79 release. 2007-10-13 08:42:57 +00:00
rocky
f817761954 iso9660_open_ext_private(): close image filecupon error.
Leds to an open file descriptor making it impossible of
e.g. unmounting a CDROM containing the file. Savannah bug #21147.
2007-09-26 05:30:15 +00:00
rocky
8734346d8d iso9660.c: off-by-one bug which was causing dates to come out
wrong. Thanks to Nicolas Boullis for finding and fixing.

iso9660_fs.c: remove bugs merging code from the last round of
changes/enhancements

check_common_fn.in: show full iso_read command when it fails.
2007-09-05 11:17:36 +00:00
rocky
a33bb59a7f iso9660_fs.c: remove some (but not all) of the redundancy
testisocd2.c.in: a test of working with an ISO 9660 image.
2007-08-12 12:41:10 +00:00
rocky
2a01d008fc iso9660_fs.c: remove some bugs in freeing here.
isolsn.c: Add a sample program for showing the path for given LSN.
2007-08-12 00:56:09 +00:00
rocky
de2c6a18ae Add iso9660_fs_find_lsn_with_path and iso9660_ifs_find_lsn_with_path to report the full filename path of lsn. 2007-08-11 16:26:14 +00:00
rocky
6d7c054fdd Add note about funny strtol test and correct test. Thanks to Nicolas Boullis for finding this. 2007-08-04 00:43:26 +00:00
rocky
07b1944cb6 Better strtol fix based on SMS's remark. 2007-03-05 11:49:24 +00:00
rocky
0dc4e4d5ae Set errno=0 before calling strtol(). bug #18131 2007-03-05 11:18:49 +00:00
rocky
2df6dfaa21 Symlinks were sharing stat_buf so freeing one made the pointer to the
other invalid. Allocate a separate entry for each symlink.

Bug report and patch provided by Antti Perl. Savannah bug #18563
2006-12-20 09:26:35 +00:00
rocky
c1f11393ac Add routine to get tray status (open/closed) and sample program.
Seems broken at least on SuSE 10.1 if not other GNU/Linux's though.
2006-10-11 12:38:17 +00:00
flameeyes
932617cf75 Check for the pointers before dereference them. Found by Coverity Scan on xine-lib. 2006-09-26 22:21:09 +00:00
flameeyes
60cc012bb8 Fix a possible off-by-one in strip_trail() identified by Coverity Scan on xine sources. 2006-09-26 18:07:59 +00:00
gmerlin
511c0b9416 * UTF-8 support patch 2006-06-02 21:54:21 +00:00
rocky
5d3ef6fa82 Add missing field in SVD structure. Document correspondencies with ECMA 119
better.
2006-05-06 16:08:06 +00:00
rocky
b8d69c67a2 iso9660.h: remove doxygen formatting warning.
configure.ac, NEWS: get ready for 0.77 release
2006-03-18 02:35:06 +00:00
rocky
611fc94450 Replace strcat and strcpy with strncat, strncpy. 2006-03-17 22:36:31 +00:00
rocky
11cb91da13 More time corrections in the presense of timezones, daylight savings time,
and HAVE_TM_GMTOFF
2006-03-17 13:00:43 +00:00
rocky
2e730474fd use tzset to try to get GMT read. 2006-03-17 03:19:15 +00:00
rocky
a418cf06ba iso9660_get_{l,d}time() anot accounting for the timezone properly.
Some other small bugs removed.
2006-03-17 01:05:54 +00:00
rocky
2cb388781d Update library version numbers for possible release. FSF address change. 2006-03-14 12:05:16 +00:00
rocky
62386a361a iso9660.h: note b_mode2 parameter is not used any more
cdda-player.c
FSF address change.
2006-03-14 11:40:05 +00:00
rocky
2350ea3e52 Don't do library versioning if there no object files to look at. This
removes spurious "nm: no a.out" messages when --disable-shared is in effect.
2006-03-07 11:19:12 +00:00
rocky
2977ab7c50 Have to have iso9660_find_fs_lsn linker symbol around. (At least for now.) 2006-03-07 00:06:19 +00:00
rocky
7a3ded9bd7 Add ISO9660::FS - the cdio portion of ISO9660 reading.
iso9600.h: another function rename to be more consistent.
2006-03-06 21:54:56 +00:00
rocky
42b0b841d0 iso9660.hpp, iso1.cpp get list iterators working.
rest: add _ to isachar and isadchar
2006-03-06 19:39:35 +00:00
rocky
7c7b83f35a Mostly doc changes. However there was a field-name misspelling in iso9660.h 2006-03-02 18:59:13 +00:00
rocky
b8375748c5 Date changed 2006-03-01 20:49:54 +00:00
rocky
4ec818aabd Document iso9660_name_translate{,_ext} more accurately. 2006-03-01 20:48:55 +00:00
rocky
c5111267ca Fix compiler error introduced by last enum change. 2006-01-14 09:48:42 +00:00
rocky
33b8449e7e More separation between posix_mode_t and mode_t. 2005-11-06 20:02:39 +00:00
rocky
00fba6a2c0 Return type of iso9660_get_posix_mode should be mode_t (the OS-specific
version), not posix_mode_t (cdio's internally consistent version.
2005-11-06 19:15:43 +00:00
rocky
6e4743c734 Break out POSIX-like definitions to posix.h
Add ISO9660 routines to convert to mode_t
Record whether XA or not in iso9660_stat_t.
And other definition shifting around.
2005-11-06 00:39:37 +00:00
rocky
4efa6efeb9 Allow folks to refer to and use ISO_STANDARD_ID 2005-10-17 23:50:42 +00:00
rocky
f082e5742a pathname ->psz_name 2005-10-12 11:25:17 +00:00