<pre style='margin:0'>
Renee Otten (reneeotten) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/1d4c18427474fd4a77755b63427eac192da75d86">https://github.com/macports/macports-ports/commit/1d4c18427474fd4a77755b63427eac192da75d86</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 1d4c18427474fd4a77755b63427eac192da75d86
</span>Author: Renee Otten <reneeotten@macports.org>
AuthorDate: Sat Jan 13 14:19:26 2024 -0500
<span style='display:block; white-space:pre;color:#404040;'> aspell: update to 0.60.8.1
</span>---
textproc/aspell/Portfile | 21 +++----
textproc/aspell/files/CVE-2019-25051.patch | 96 ------------------------------
2 files changed, 7 insertions(+), 110 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/textproc/aspell/Portfile b/textproc/aspell/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 1a589f125ca..bcd84ba0fca 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/textproc/aspell/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/textproc/aspell/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -3,11 +3,11 @@
</span> PortSystem 1.0
name aspell
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version 0.60.8
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-revision 1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums rmd160 331a10149aa4efe9b6798137d6a56a0a44fcf570 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sha256 f9b77e515334a751b2e60daab5db23499e26c9209f5e7b7443b05235ad0226f2 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- size 3486448
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version 0.60.8.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums rmd160 8bd3e99a91d94a0fd720d341ed22ccbce7af11de \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 d6da12b34d42d457fa604e435ad484a74b2effcd120ff40acd6bb3fb2887d21b \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 3567205
</span>
set branch [join [lrange [split ${version} .] 0 1] .]
categories textproc
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -15,9 +15,7 @@ maintainers openmaintainer {jochen @jokuha}
</span> conflicts ispell
description Spell checker with better logic than ispell
homepage http://aspell.net/
<span style='display:block; white-space:pre;background:#ffe0e0;'>-platforms darwin
</span> license LGPL-2
<span style='display:block; white-space:pre;background:#ffe0e0;'>-use_parallel_build yes
</span>
long_description Aspell is a spell checker designed to eventually replace ispell. \
Aspell's main feature is that it does a much better job of coming up with \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -26,16 +24,12 @@ long_description Aspell is a spell checker designed to eventually replace
</span> master_sites gnu freebsd
depends_lib port:gettext port:texinfo port:ncurses
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# texinfo is also used in post-activate
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-patch.pre_args -p1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-patchfiles-append CVE-2019-25051.patch
</span>
# Teach glibtool to pass -stdlib at link time.
use_autoreconf yes
autoreconf.args -fvi
<span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args --enable-dict-dir="${prefix}/share/aspell" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args-append --enable-dict-dir="${prefix}/share/aspell" \
</span> --disable-nls \
--enable-compile-in-filters
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -53,8 +47,7 @@ post-activate {
</span> }
variant nls {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-delete --disable-nls
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-append --enable-nls
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-replace --disable-nls --enable-nls
</span> }
if {${os.platform} eq "darwin" && ${os.subplatform} eq "macosx"} {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/textproc/aspell/files/CVE-2019-25051.patch b/textproc/aspell/files/CVE-2019-25051.patch
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 2f15d380ec0..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/textproc/aspell/files/CVE-2019-25051.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,96 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 0718b375425aad8e54e1150313b862e4c6fd324a Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From: Kevin Atkinson <kevina@gnu.org>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Date: Sat, 21 Dec 2019 20:32:47 +0000
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Subject: [PATCH] objstack: assert that the alloc size will fit within a chunk
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- to prevent a buffer overflow
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Bug found using OSS-Fuze.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>----
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- common/objstack.hpp | 18 ++++++++++++++----
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 1 file changed, 14 insertions(+), 4 deletions(-)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/common/objstack.hpp b/common/objstack.hpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 3997bf7..bd97ccd 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/common/objstack.hpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/common/objstack.hpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -5,6 +5,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include "parm_string.hpp"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include <stdlib.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include <assert.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#include <stddef.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- namespace acommon {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -26,6 +27,12 @@ class ObjStack
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- byte * temp_end;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- void setup_chunk();
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- void new_chunk();
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ bool will_overflow(size_t sz) const {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ return offsetof(Node,data) + sz > chunk_size;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ void check_size(size_t sz) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ assert(!will_overflow(sz));
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ObjStack(const ObjStack &);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- void operator=(const ObjStack &);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -56,7 +63,7 @@ class ObjStack
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- void * alloc_bottom(size_t size) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- byte * tmp = bottom;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- bottom += size;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-- if (bottom > top) {new_chunk(); tmp = bottom; bottom += size;}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ if (bottom > top) {check_size(size); new_chunk(); tmp = bottom; bottom += size;}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return tmp;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- // This alloc_bottom will insure that the object is aligned based on the
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -66,7 +73,7 @@ class ObjStack
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- align_bottom(align);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- byte * tmp = bottom;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- bottom += size;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-- if (bottom > top) {new_chunk(); goto loop;}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ if (bottom > top) {check_size(size); new_chunk(); goto loop;}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return tmp;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- char * dup_bottom(ParmString str) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -79,7 +86,7 @@ class ObjStack
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- // always be aligned as such.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- void * alloc_top(size_t size) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- top -= size;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-- if (top < bottom) {new_chunk(); top -= size;}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ if (top < bottom) {check_size(size); new_chunk(); top -= size;}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return top;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- // This alloc_top will insure that the object is aligned based on
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -88,7 +95,7 @@ class ObjStack
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {loop:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- top -= size;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- align_top(align);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-- if (top < bottom) {new_chunk(); goto loop;}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ if (top < bottom) {check_size(size); new_chunk(); goto loop;}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return top;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- char * dup_top(ParmString str) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -117,6 +124,7 @@ class ObjStack
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- void * alloc_temp(size_t size) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- temp_end = bottom + size;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if (temp_end > top) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ check_size(size);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- new_chunk();
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- temp_end = bottom + size;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -131,6 +139,7 @@ class ObjStack
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- } else {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- size_t s = temp_end - bottom;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- byte * p = bottom;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ check_size(size);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- new_chunk();
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- memcpy(bottom, p, s);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- temp_end = bottom + size;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -150,6 +159,7 @@ class ObjStack
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- } else {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- size_t s = temp_end - bottom;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- byte * p = bottom;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ check_size(size);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- new_chunk();
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- memcpy(bottom, p, s);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- temp_end = bottom + size;
</span></pre><pre style='margin:0'>
</pre>