Hello !

I've done a patch to mkisofs to delete a bunch of information that
constitutes a privacy leak that cd writing programs like Nero doesn't
write.

Mkisofs writes the whole command line, operating system and mkisofs
version used to do the image.
As quoted from Brian Ristuccia <[EMAIL PROTECTED]> mail:
> For example, a political dissident who does:
> mkisofs -f foo.iso ~/government-makes-hambruger-from-kids-videos

> would be inadvertantly revealing his login name, and thus potentially
> revealing his identity to the evil government which may then decide to make
> him into hamburger as well.

The debian bug page about this privacy leak is at:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=87043&repeatmerged=yes

I know that J�rg Schilling <[EMAIL PROTECTED]> doesn't seem to like this
patch. But, as many mkisofs users like this patch I send it to this
mailing list.

I would be a good idea to remove this privacy leak at least from the
debian branch of mkisofs. If you like the patch you should contact
the Debian maintainer: Erik Andersen <[EMAIL PROTECTED]>
to remove this privacy leak.

Regards,
Eduardo
--- cdrtools-1.10/mkisofs/Makefile      Tue Apr  3 20:33:26 2001
+++ cdrtools-1.10/mkisofs/Makefile      Wed Nov 14 12:03:44 2001
@@ -28,7 +28,6 @@
 CPPOPTS +=     -DSORTING
 CPPOPTS +=     -I../libhfs_iso/
 CPPOPTS        +=      -DHAVE_CONFIG_H -DUSE_LIBSCHILY -DUSE_SCG \
-               '-DAPPID_DEFAULT="MKISOFS ISO 9660/HFS FILESYSTEM BUILDER & CDRECORD 
CD-R/DVD CREATOR (C) 1993 E.YOUNGDALE (C) 1997 J.PEARSON/J.SCHILLING"' \
                -I../cdrecord
 CFILES=                mkisofs.c tree.c write.c hash.c rock.c multi.c \
                joliet.c match.c name.c fnmatch.c eltorito.c boot.c \
--- cdrtools-1.10/mkisofs/defaults.h    Tue Apr  3 20:33:26 2001
+++ cdrtools-1.10/mkisofs/defaults.h    Wed Nov 14 12:05:39 2001
@@ -8,13 +8,7 @@
 
 #define  PREPARER_DEFAULT      NULL
 #define  PUBLISHER_DEFAULT     NULL
-#ifndef        APPID_DEFAULT
-#ifdef APPLE_HYB
-#define  APPID_DEFAULT                 "MKISOFS ISO 9660/HFS FILESYSTEM BUILDER (C) 
1993 E.YOUNGDALE (C) 1997 J.PEARSON/J.SCHILLING"
-#else
-#define  APPID_DEFAULT                 "MKISOFS ISO 9660 FILESYSTEM BUILDER (C) 1993 
E.YOUNGDALE (C) 1997 J.PEARSON/J.SCHILLING"
-#endif /* APPLE_HYB */
-#endif
+#define  APPID_DEFAULT         NULL
 #define  COPYRIGHT_DEFAULT     NULL
 #define  BIBLIO_DEFAULT        NULL
 #define  ABSTRACT_DEFAULT      NULL
@@ -26,85 +20,3 @@
 #define  APPLE_TYPE_DEFAULT    "TEXT"
 #define  APPLE_CREATOR_DEFAULT "unix"
 #endif /* APPLE_HYB */
-
-#ifdef __QNX__
-#define  SYSTEM_ID_DEFAULT     "QNX"
-#endif
-
-#ifdef __osf__
-#define  SYSTEM_ID_DEFAULT     "OSF"
-#endif
-
-#ifdef __sun
-#ifdef __SVR4
-#define  SYSTEM_ID_DEFAULT    "Solaris"
-#else
-#define  SYSTEM_ID_DEFAULT    "SunOS"
-#endif
-#endif
-
-#ifdef __hpux
-#define  SYSTEM_ID_DEFAULT     "HP-UX"
-#endif
-
-#ifdef __sgi
-#define  SYSTEM_ID_DEFAULT     "SGI"
-#endif
-
-#if    defined(_IBMR2) || defined(_AIX)
-#define  SYSTEM_ID_DEFAULT     "AIX"
-#endif
-
-#if    defined(_WIN) || defined(__CYGWIN32__) || defined(__CYGWIN__)
-#define        SYSTEM_ID_DEFAULT       "Win32"
-#endif /* _WIN */
-
-#ifdef __EMX__
-#define        SYSTEM_ID_DEFAULT       "OS/2"
-#endif
-
-#ifdef __FreeBSD__
-#define        SYSTEM_ID_DEFAULT       "FreeBSD"
-#endif
-
-#ifdef __NetBSD__
-#define        SYSTEM_ID_DEFAULT       "NetBSD"
-#endif
-
-#ifdef __OpenBSD__
-#define        SYSTEM_ID_DEFAULT       "OpenBSD"
-#endif
-
-#ifdef __bsdi__
-#define        SYSTEM_ID_DEFAULT       "BSD/OS"
-#endif
-
-#ifdef __NeXT__
-#define        SYSTEM_ID_DEFAULT       "NeXT"
-#endif
-
-#if defined(__NeXT__) && defined(__TARGET_OSNAME) && __TARGET_OSNAME == rhapsody
-#undef SYSTEM_ID_DEFAULT
-#define  SYSTEM_ID_DEFAULT      "Rhapsody"
-#endif
-
-#if defined(__APPLE__) && defined(__MACH__)
-#undef SYSTEM_ID_DEFAULT
-#define  SYSTEM_ID_DEFAULT      "Mac OS X"
-#endif
-
-#ifdef __BEOS__
-#define        SYSTEM_ID_DEFAULT       "BeOS"
-#endif
-
-#ifdef __OS2
-#define        SYSTEM_ID_DEFAULT       "OS/2"
-#endif
-
-#ifdef VMS
-#define        SYSTEM_ID_DEFAULT       "VMS"
-#endif
-
-#ifndef SYSTEM_ID_DEFAULT
-#define  SYSTEM_ID_DEFAULT     "LINUX"
-#endif
--- cdrtools-1.10/mkisofs/mkisofs.c     Fri Apr 20 15:45:50 2001
+++ cdrtools-1.10/mkisofs/mkisofs.c     Wed Nov 14 12:02:54 2001
@@ -128,7 +128,7 @@
 char   *abstract = ABSTRACT_DEFAULT;
 char   *volset_id = VOLSET_ID_DEFAULT;
 char   *volume_id = VOLUME_ID_DEFAULT;
-char   *system_id = SYSTEM_ID_DEFAULT;
+char   *system_id = "";
 char   *boot_catalog = BOOT_CATALOG_DEFAULT;
 char   *boot_image = BOOT_IMAGE_DEFAULT;
 char   *genboot_image = BOOT_IMAGE_DEFAULT;
@@ -2775,9 +2775,6 @@
        }
        /* Finally the last volume desctiptor. */
        outputlist_insert(&end_vol);
-
-       /* Insert the version desctiptor. */
-       outputlist_insert(&version_desc);
 
        /* Now start with path tables and directory tree info. */
        outputlist_insert(&pathtable_desc);
--- cdrtools-1.10/mkisofs/mkisofs.h     Mon Apr  2 17:04:36 2001
+++ cdrtools-1.10/mkisofs/mkisofs.h     Wed Nov 14 12:02:54 2001
@@ -164,7 +164,6 @@
 extern struct output_fragment joliet_desc;
 extern struct output_fragment torito_desc;
 extern struct output_fragment end_vol;
-extern struct output_fragment version_desc;
 extern struct output_fragment pathtable_desc;
 extern struct output_fragment jpathtable_desc;
 extern struct output_fragment dirtree_desc;
--- cdrtools-1.10/mkisofs/write.c       Thu Feb 15 22:04:02 2001
+++ cdrtools-1.10/mkisofs/write.c       Wed Nov 14 12:02:54 2001
@@ -105,7 +105,6 @@
 static int     file_write      __PR((FILE *outfile));
 static int     pvd_write       __PR((FILE *outfile));
 static int     evd_write       __PR((FILE *outfile));
-static int     vers_write      __PR((FILE *outfile));
 static int     pathtab_write   __PR((FILE *outfile));
 static int     exten_write     __PR((FILE *outfile));
        int     oneblock_size   __PR((int starting_extent));
@@ -1800,48 +1799,6 @@
 }
 
 /*
- * Function to write the version information for the disc.
- */
-static int
-vers_write(outfile)
-       FILE    *outfile;
-{
-       char            vers[SECTOR_SIZE];
-       int             X_ac;
-       char            **X_av;
-       char            *cp;
-       int             i;
-       int             idx = 4;
-       int             len;
-       extern char     version_string[];
-
-       /* Now write the version descriptor. */
-       memset(vers, 0, sizeof(vers));
-       strcpy(vers, "MKI ");
-
-       cp = vers;
-       X_ac = saved_ac();
-       X_av = saved_av();
-       strcpy(&cp[idx], ctime(&begun));
-       idx += 25;
-       strcpy(&cp[idx], version_string);
-       idx += strlen(version_string);
-       for (i = 1; i < X_ac; i++) {
-               len = strlen(X_av[i]);
-               if ((idx + len + 1) >= SECTOR_SIZE)
-                       break;
-               cp[idx++] = ' ';
-               strcpy(&cp[idx], X_av[i]);
-               idx += len;
-       }
-
-       cp[SECTOR_SIZE - 1] = '\0';
-       xfwrite(vers, 1, SECTOR_SIZE, outfile);
-       last_extent_written += 1;
-       return 0;
-}
-
-/*
  * Function to write the path table for the disc.
  */
 static int
@@ -2432,7 +2389,6 @@
 struct output_fragment padblock_desc  = {NULL, padblock_size, NULL,     
padblock_write};
 struct output_fragment voldesc_desc   = {NULL, oneblock_size, root_gen, pvd_write};
 struct output_fragment end_vol       = {NULL, oneblock_size, NULL,     evd_write};
-struct output_fragment version_desc   = {NULL, oneblock_size, NULL,     vers_write};
 struct output_fragment pathtable_desc = {NULL, pathtab_size,  generate_path_tables,   
  pathtab_write};
 struct output_fragment dirtree_desc   = {NULL, dirtree_size,  NULL,     
dirtree_write};
 struct output_fragment dirtree_clean  = {NULL, dirtree_fixup, dirtree_dump,     
dirtree_cleanup};

Reply via email to