diff --git a/netpbm-security-code.patch b/netpbm-security-code.patch index 94eea26..faf7237 100644 --- a/netpbm-security-code.patch +++ b/netpbm-security-code.patch @@ -895,7 +895,7 @@ index 5ce92c2..2a482be 100644 - followed by 4 bytes of offset of the next directory entry. - */ - const char * const slideName = (const char *)(&libent[0]); -- if (strnlen(slideName, 32) == 32) +- if (pm_strnlen(slideName, 32) == 32) - pm_error("Invalid input: slide name field is not " - "nul-terminated"); - else { @@ -1139,7 +1139,7 @@ diff --git a/editor/pnmremap.c b/editor/pnmremap.c index ed758aa..73968be 100644 --- a/editor/pnmremap.c +++ b/editor/pnmremap.c -@@ -430,6 +430,7 @@ initFserr(struct pam * const pamP, +@@ -468,6 +468,7 @@ fserr_init(struct pam * const pamP, unsigned int const fserrSize = pamP->width + 2; @@ -1147,14 +1147,14 @@ index ed758aa..73968be 100644 fserrP->width = pamP->width; MALLOCARRAY(fserrP->thiserr, pamP->depth); -@@ -467,6 +468,7 @@ floydInitRow(struct pam * const pamP, struct fserr * const fserrP) { +@@ -505,6 +506,7 @@ floydInitRow(struct pam * const pamP, struct Fserr * const fserrP) { int col; - + + overflow_add(pamP->width, 2); for (col = 0; col < pamP->width + 2; ++col) { unsigned int plane; - for (plane = 0; plane < pamP->depth; ++plane) + for (plane = 0; plane < pamP->depth; ++plane) diff --git a/editor/pnmscalefixed.c b/editor/pnmscalefixed.c index 884ca31..747cd8f 100644 --- a/editor/pnmscalefixed.c @@ -1214,46 +1214,20 @@ index 6cb8d3a..6f4bde9 100644 MALLOCARRAY(hist, inpam.maxval + 1); if (hist == NULL) pm_error("Unable to allocate memory for histogram."); -diff --git a/generator/pbmtext.c b/generator/pbmtext.c -index e25c6bb..e545b8e 100644 ---- a/generator/pbmtext.c -+++ b/generator/pbmtext.c -@@ -125,8 +125,10 @@ parseCommandLine(int argc, const char ** argv, - - for (i = 1; i < argc; ++i) { - if (i > 1) { -+ overflow_add(totaltextsize, 1); - strcat(text, " "); -- } -+ } -+ overflow_add(totaltextsize, strlen(argv[i])); - totaltextsize += strlen(argv[i]) + 1; - if (totaltextsize > MAXLINECHARS) - pm_error("input text too long"); -@@ -782,6 +784,7 @@ getText(char const cmdlineText[], - pm_error("A line of input text is longer than %u characters." - "Cannot process", (unsigned int) MAXLINECHARS-1); - if (lineCount >= maxlines) { -+ overflow2(maxlines, 2); - maxlines *= 2; - REALLOCARRAY(textArray, maxlines); - if (textArray == NULL) diff --git a/lib/libpam.c b/lib/libpam.c index fa1be8f..e5cef1a 100644 --- a/lib/libpam.c +++ b/lib/libpam.c -@@ -225,8 +225,9 @@ allocPamRow(const struct pam * const pamP) { +@@ -225,7 +225,8 @@ allocPamRow(const struct pam * const pamP) { unsigned int const bytesPerTuple = allocationDepth(pamP) * sizeof(sample); tuple * tuplerow; - tuplerow = malloc(pamP->width * (sizeof(tuple *) + bytesPerTuple)); -- + overflow_add(sizeof(tuple *), bytesPerTuple); + tuplerow = malloc2(pamP->width, (sizeof(tuple *) + bytesPerTuple)); -+ + if (tuplerow != NULL) { /* Now we initialize the pointers to the individual tuples - to make this a regulation C two dimensional array. diff --git a/lib/libpammap.c b/lib/libpammap.c index 2222491..ba27a4c 100644 --- a/lib/libpammap.c diff --git a/netpbm.spec b/netpbm.spec index 3b7cfc1..e7d04d6 100644 --- a/netpbm.spec +++ b/netpbm.spec @@ -1,14 +1,14 @@ Summary: A library for handling different graphics file formats Name: netpbm -Version: 10.81.00 -Release: 3%{?dist} +Version: 10.82.00 +Release: 1%{?dist} # See copyright_summary for details License: BSD and GPLv2 and IJG and MIT and Public Domain URL: http://netpbm.sourceforge.net/ # Source0 is prepared by -# svn checkout https://netpbm.svn.sourceforge.net/svnroot/netpbm/advanced netpbm-%%{version} -# svn checkout https://netpbm.svn.sourceforge.net/svnroot/netpbm/userguide netpbm-%%{version}/userguide -# svn checkout https://netpbm.svn.sourceforge.net/svnroot/netpbm/trunk/test netpbm-%%{version}/test +# svn checkout https://svn.code.sf.net/p/netpbm/code/advanced netpbm-%%{version} +# svn checkout https://svn.code.sf.net/p/netpbm/code/userguide netpbm-%%{version}/userguide +# svn checkout https://svn.code.sf.net/p/netpbm/code/trunk/test netpbm-%%{version}/test # and removing the .svn directories ( find -name "\.svn" -type d -print0 | xargs -0 rm -rf ) # and removing the ppmtompeg code, due to patents ( rm -rf netpbm-%%{version}/converter/ppm/ppmtompeg/ ) Source0: netpbm-%{version}.tar.xz @@ -211,6 +211,9 @@ popd %doc userguide/* %changelog +* Tue Mar 27 2018 Josef Ridky - 10.82.00-1 +- New upstream release 10.82.00 (#1560330) + * Mon Feb 26 2018 Josef Ridky - 10.81.00-4 - spec clean up - build against Python3 diff --git a/netpbm2tar.sh b/netpbm2tar.sh index e0f920d..ad2f672 100755 --- a/netpbm2tar.sh +++ b/netpbm2tar.sh @@ -1,9 +1,9 @@ #!/bin/bash # Source0 is prepared by -# svn checkout https://netpbm.svn.sourceforge.net/svnroot/netpbm/advanced netpbm-%{version} -# svn checkout https://netpbm.svn.sourceforge.net/svnroot/netpbm/userguide netpbm-%{version}/userguide -# svn checkout https://netpbm.svn.sourceforge.net/svnroot/netpbm/trunk/test netpbm-%{version}/test +# svn checkout https://svn.code.sf.net/p/netpbm/code/advanced netpbm-%{version} +# svn checkout https://svn.code.sf.net/p/netpbm/code/userguide netpbm-%{version}/userguide +# svn checkout https://svn.code.sf.net/p/netpbm/code/trunk/test netpbm-%{version}/test # and removing the .svn directories ( find -name "\.svn" -type d -print0 | xargs -0 rm -rf ) # and removing the ppmtompeg code, due to patents ( rm -rf netpbm-%{version}/converter/ppm/ppmtompeg/ ) @@ -17,9 +17,9 @@ TEMP_DIR="/var/tmp/netpbm" TARBALL="$TEMP_DIR/$NETPBM_NAME.tar.xz" mkdir -p $TEMP_DIR pushd $TEMP_DIR -svn checkout https://netpbm.svn.sourceforge.net/svnroot/netpbm/advanced $NETPBM_NAME -svn checkout https://netpbm.svn.sourceforge.net/svnroot/netpbm/userguide $NETPBM_NAME/userguide -svn checkout https://netpbm.svn.sourceforge.net/svnroot/netpbm/trunk/test $NETPBM_NAME/test +svn checkout https://svn.code.sf.net/p/netpbm/code/advanced $NETPBM_NAME +svn checkout https://svn.code.sf.net/p/netpbm/code/userguide $NETPBM_NAME/userguide +svn checkout https://svn.code.sf.net/p/netpbm/code/trunk/test $NETPBM_NAME/test find -name '\.svn' -type d -print0 | xargs -0 rm -rf rm -rf $NETPBM_NAME/converter/ppm/ppmtompeg/ tar -cJvf $NETPBM_NAME.tar.xz $NETPBM_NAME