about summary refs log tree commit diff
diff options
context:
space:
mode:
authorgiraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8>2015-05-24 02:52:23 +0000
committergiraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8>2015-05-24 02:52:23 +0000
commit44b930ef592a85005bec71362d1b575c26e92276 (patch)
treec5f7f6c558ad2866a7308b36f62d97c0dbce3b76
parenta643665baa7d0718f90989b1d908a2bc4c2cb959 (diff)
downloadnetpbm-mirror-44b930ef592a85005bec71362d1b575c26e92276.tar.gz
netpbm-mirror-44b930ef592a85005bec71362d1b575c26e92276.tar.xz
netpbm-mirror-44b930ef592a85005bec71362d1b575c26e92276.zip
Fix buffer overrun with long file name
git-svn-id: http://svn.code.sf.net/p/netpbm/code/trunk@2518 9d0c8265-081b-0410-96cb-a4ca84ce46f8
-rw-r--r--converter/pbm/pktopbm.c5
-rw-r--r--doc/HISTORY3
2 files changed, 7 insertions, 1 deletions
diff --git a/converter/pbm/pktopbm.c b/converter/pbm/pktopbm.c
index a3584ee5..712f339f 100644
--- a/converter/pbm/pktopbm.c
+++ b/converter/pbm/pktopbm.c
@@ -214,7 +214,10 @@ main(int argc, char *argv[]) {
 
     if (--argc < 1) pm_usage(usage) ;
 
-    strcpy(pkname, *++argv) ;
+    ++argv;
+    if(strlen(*argv) + 4 > NAMELENGTH)
+        pm_error("pkname is too long");
+    strcpy(pkname, *argv) ;
     pktopbm_add_suffix(pkname, ".pk") ;
 
     car = 0 ;
diff --git a/doc/HISTORY b/doc/HISTORY
index abcb421e..d1c6ff71 100644
--- a/doc/HISTORY
+++ b/doc/HISTORY
@@ -32,6 +32,9 @@ not yet  BJH  Release 10.71.00
               pbmtopk: Fix buffer overrun with long file name.  Always
               present.  (pbmtopk was new in Netpbm 1 (March 1991)).
 
+              pktopbm: Fix buffer overrun with long file name.  Always
+              present.  (pbmtopk was new in Netpbm 1 (March 1991)).
+
               pbmtopi3: Fix bug: wrong output when input is higher or wider
               than 640 pixels.  Always broken (pbmtopi3 was new in September
               1991).