Package: mkisofs
Version: 4:2.01+01a01-2fclose
Severity: important
Tags: patch

isodump, isoinfo, isovfy segfault when using device. They try to
fclose a null stream, the patch avoids this. I don't know if they
should do something else instead.

For example:

$ isoinfo dev=ATA:1,0,0
Segmentation fault

$ isovfy dev=ATA:1,0,0
Root at extent 16, 2048 bytes
[0 0]
1a:  46   140     1104    Flags=(1)  RRlen=0
...
5b41:  46  5b42      552    Flags=(1)  RRlen=0
Segmentation fault

-- System Information:
Debian Release: 3.1
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing')
Architecture: i386 (i686)
Kernel: Linux 2.6.10
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)

Versions of packages mkisofs depends on:
ii  libc6                       2.3.2.ds1-20 GNU C Library: Shared libraries an
ii  zlib1g                      1:1.2.2-4    compression library - runtime

-- no debconf information
diff -r -C 2 ../../mkisofs-clean/cdrtools-2.01+01a01/debian/changelog 
./debian/changelog
*** ../../mkisofs-clean/cdrtools-2.01+01a01/debian/changelog    Wed Apr  6 
16:27:02 2005
--- ./debian/changelog  Wed Apr  6 16:42:22 2005
***************
*** 1,2 ****
--- 1,10 ----
+ cdrtools (4:2.01+01a01-2fclose) unstable; urgency=low
+ 
+   * Bug fix: isodump, isoinfo, isovfy segfault when using device.
+     Don't try to fclose a null stream. I don't know if they should
+     do something else instead.
+ 
+  -- Anthony Carrico <[EMAIL PROTECTED]>  Wed, 06 Apr 2005 16:39:53 -0400
+ 
  cdrtools (4:2.01+01a01-2) unstable; urgency=high
  
diff -r -C 2 ../../mkisofs-clean/cdrtools-2.01+01a01/mkisofs/diag/isodump.c 
./mkisofs/diag/isodump.c
*** ../../mkisofs-clean/cdrtools-2.01+01a01/mkisofs/diag/isodump.c      Wed Sep 
 8 13:28:58 2004
--- ./mkisofs/diag/isodump.c    Wed Apr  6 16:18:17 2005
***************
*** 720,724 ****
        } while (1 == 1);
        reset_tty();
!       fclose(infile);
        return (0);
  }
--- 720,725 ----
        } while (1 == 1);
        reset_tty();
!       if (infile != NULL)
!               fclose(infile);
        return (0);
  }
diff -r -C 2 ../../mkisofs-clean/cdrtools-2.01+01a01/mkisofs/diag/isoinfo.c 
./mkisofs/diag/isoinfo.c
*** ../../mkisofs-clean/cdrtools-2.01+01a01/mkisofs/diag/isoinfo.c      Thu Sep 
 9 06:18:15 2004
--- ./mkisofs/diag/isoinfo.c    Wed Apr  6 16:19:17 2005
***************
*** 1253,1257 ****
        }
  
!       fclose(infile);
        return (0);
  }
--- 1253,1258 ----
        }
  
!       if (infile != NULL)
!               fclose(infile);
        return (0);
  }
diff -r -C 2 ../../mkisofs-clean/cdrtools-2.01+01a01/mkisofs/diag/isovfy.c 
./mkisofs/diag/isovfy.c
*** ../../mkisofs-clean/cdrtools-2.01+01a01/mkisofs/diag/isovfy.c       Wed Sep 
 8 13:28:58 2004
--- ./mkisofs/diag/isovfy.c     Wed Apr  6 16:16:54 2005
***************
*** 800,804 ****
  #endif
  
!       fclose(infile);
  
        if (!ngoof)
--- 800,805 ----
  #endif
  
!       if (infile != NULL)
!               fclose(infile);
  
        if (!ngoof)

Reply via email to