about summary refs log tree commit diff
diff options
context:
space:
mode:
authorgiraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8>2017-12-30 20:13:24 +0000
committergiraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8>2017-12-30 20:13:24 +0000
commit85ba4e13008cdc3e305e9e145b37c263f7a20b3c (patch)
tree9c7a4ba517354f8db3eaa1f27ca8b10194bab05d
parentd6de7888d5c35e13fbf1d6b2ee5261293041135b (diff)
downloadnetpbm-mirror-85ba4e13008cdc3e305e9e145b37c263f7a20b3c.tar.gz
netpbm-mirror-85ba4e13008cdc3e305e9e145b37c263f7a20b3c.tar.xz
netpbm-mirror-85ba4e13008cdc3e305e9e145b37c263f7a20b3c.zip
Release 10.47.67
git-svn-id: http://svn.code.sf.net/p/netpbm/code/super_stable@3099 9d0c8265-081b-0410-96cb-a4ca84ce46f8
-rw-r--r--converter/ppm/sldtoppm.c8
-rw-r--r--doc/HISTORY9
-rw-r--r--version.mk2
3 files changed, 14 insertions, 5 deletions
diff --git a/converter/ppm/sldtoppm.c b/converter/ppm/sldtoppm.c
index ad16a649..ab9f3447 100644
--- a/converter/ppm/sldtoppm.c
+++ b/converter/ppm/sldtoppm.c
@@ -194,7 +194,7 @@ slidefind(const char * const sname,
     /* Read slide library header and verify. */
     
     if ((fread(libent, 32, 1, slfile) != 1) ||
-        (!streq((char *)libent, "AutoCAD Slide Library 1.0\015\012\32"))) {
+        (!strneq((char *)libent, "AutoCAD Slide Library 1.0\015\012\32", 32))) {
         pm_error("not an AutoCAD slide library file.");
     }
     pos = 32;
@@ -203,7 +203,7 @@ slidefind(const char * const sname,
     
     while (TRUE) {
         if ((fread(libent, 36, 1, slfile) != 1) ||
-            (strlen((char *)libent) == 0)) {
+            (strnlen((char *)libent, 32) == 0)) {
             if (dironly) {
                 return;
             }
@@ -212,7 +212,7 @@ slidefind(const char * const sname,
         pos += 36;
         if (dironly) {
             pm_message("  %s", libent);
-        } else if (streq((char *)libent, uname)) {
+        } else if (strneq((char *)libent, uname, 32)) {
             long dpos = (((((libent[35] << 8) | libent[34]) << 8) |
                           libent[33]) << 8) | libent[32];
             if ((slfile == stdin) || (fseek(slfile, dpos, 0) == -1)) {
@@ -341,7 +341,7 @@ slider(slvecfn   slvec,
 
     /* Verify that slide format is compatible with this program. */
 
-    if (streq(slfrof.slh, slhi.slh))
+    if (!STRSEQ(slfrof.slh, slhi.slh))
         pm_error("this is not an AutoCAD slide file.");
 
     /* Verify that the number format and file level in the header  are
diff --git a/doc/HISTORY b/doc/HISTORY
index f96317af..1d9b764a 100644
--- a/doc/HISTORY
+++ b/doc/HISTORY
@@ -4,6 +4,15 @@ Netpbm.
 CHANGE HISTORY 
 --------------
 
+17.12.30 BJH  Release 10.47.67
+
+              sldtoppm: fix bug: says AutoCAD slide file isn't an AutoCAD
+              slide file.  Broken after Netpbm 10.26 (January 2005), but no
+              later than 10.35 (August 2006).
+
+              sldtoppm: fix bug: wild memory accesses, weird messages when
+              invalid input file has unterminated strings.
+              
 17.09.28 BJH  Release 10.47.66
 
               ppmbrighten: fix bug: red pixels change hue.  Introduced in
diff --git a/version.mk b/version.mk
index c3a7c95a..87d5cf9f 100644
--- a/version.mk
+++ b/version.mk
@@ -1,3 +1,3 @@
 NETPBM_MAJOR_RELEASE = 10
 NETPBM_MINOR_RELEASE = 47
-NETPBM_POINT_RELEASE = 66
+NETPBM_POINT_RELEASE = 67