CRUX
Threads by month
- ----- 2024 -----
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
January 2019
- 10 participants
- 88 discussions
ports/opt (3.5): [notify] pango: updated to 1.42.4. Fix for CVE-2018-15120.
by crux@crux.nu 17 Jan '19
by crux@crux.nu 17 Jan '19
17 Jan '19
commit d520e37a9e9e2a7a997f57131080e13bc1e138b8
Author: Fredrik Rinnestam <fredrik(a)crux.nu>
Date: Thu Aug 30 17:31:21 2018 +0200
[notify] pango: updated to 1.42.4. Fix for CVE-2018-15120.
diff --git a/pango/.signature b/pango/.signature
index deed19272..cebc697cb 100644
--- a/pango/.signature
+++ b/pango/.signature
@@ -1,6 +1,6 @@
untrusted comment: verify with /etc/ports/opt.pub
-RWSE3ohX2g5d/fkwm4bQIIFLAZnU6CpyVEGzqbTxIm+vKeNdgL74wXTuOBj2xA8gII0izcrg0DAJLja86DOV3SAnv007bsiRaAQ=
-SHA256 (Pkgfile) = 22188e7555ad92d71201be624f6990085191aa6a1b52b9d7992932bee68307de
+RWSE3ohX2g5d/TFxRR9eg+giQkpZqR6VsCLRd+frozaZ4ChSqLfaYbrCqB7QXAU/NKf5Or17UTIx8u5v/V8o7+4D+X2jrxTaaAw=
+SHA256 (Pkgfile) = d20f9efd233d971ddf3117bc3cf0666ae4c2cfb62b238a3cb26a25632bab478d
SHA256 (.footprint) = e8936d9538a9e07aeea641734cb3c984e12ec97962522de43fcdf6177827550f
-SHA256 (pango-1.42.3.tar.xz) = fb3d875305d5143f02cde5c72fec3903e60dc35844759dc14b2df4955b5dde3a
+SHA256 (pango-1.42.4.tar.xz) = 1d2b74cd63e8bd41961f2f8d952355aa0f9be6002b52c8aa7699d9f5da597c9d
SHA256 (pango.modules) = 9cd325e4728900161c3066c1d8f329f8f9e35589acc3e34e378aedd86acbe2a4
diff --git a/pango/Pkgfile b/pango/Pkgfile
index e80514202..8e1eed9c0 100644
--- a/pango/Pkgfile
+++ b/pango/Pkgfile
@@ -4,7 +4,7 @@
# Depends on: xorg-libsm, xorg-libxft, gobject-introspection fribidi
name=pango
-version=1.42.3
+version=1.42.4
release=1
source=(http://download.gnome.org/sources/$name/${version:0:4}/$name-$versi… \
pango.modules)
1
0
commit af91638817af6b95420213dbacedd80e9b7c9659
Author: Juergen Daubert <jue(a)jue.li>
Date: Thu Aug 30 11:13:01 2018 +0200
[notify] dropbear: fix for CVE-2018-15599
diff --git a/dropbear/.signature b/dropbear/.signature
index 256a4e715..704c6c267 100644
--- a/dropbear/.signature
+++ b/dropbear/.signature
@@ -1,6 +1,7 @@
untrusted comment: verify with /etc/ports/opt.pub
-RWSE3ohX2g5d/aM/VCJQcchPZByyjLXWkIpUr9BU9OPBVGaP40mqd6c7pefQUHp4QSyQeoiFKqIwvmqQwPK21r30Ans7MktfLAE=
-SHA256 (Pkgfile) = e59a8afd742c5470beefb72d51d9251fd520f77a0a3f4bd9711294d9c3337410
+RWSE3ohX2g5d/fYoSjOlXrVgdVZjSJWCm9ISaxGKVH365kFEj0OWUVRz5fTnuy3CfkroLhr8DzWaVMFqavELeCW0PE2EXJhHpwc=
+SHA256 (Pkgfile) = 6e5947b4c0a75449ab2677121757588e436f4420278b90f2427ddf43f2a338f2
SHA256 (.footprint) = 62bfe7191a20fcd5f6ec3511c951dee47aefdae734f7d616302e6bfc3a0c1923
SHA256 (dropbear-2018.76.tar.bz2) = f2fb9167eca8cf93456a5fc1d4faf709902a3ab70dd44e352f3acbc3ffdaea65
SHA256 (dropbear) = def8d4ebda5759a3bc55055957235fa47f7e40216badf07830f487f05e7fbd42
+SHA256 (CVE-2018-15599.diff) = 42b5720cf6c888638cfb84fdd862fc0d323b2e023cbe5f9ccdaa2e0c35b6873e
diff --git a/dropbear/Pkgfile b/dropbear/Pkgfile
index 664dd2975..2315df8f0 100644
--- a/dropbear/Pkgfile
+++ b/dropbear/Pkgfile
@@ -5,13 +5,15 @@
name=dropbear
version=2018.76
-release=1
+release=2
source=(http://matt.ucc.asn.au/$name/releases/$name-$version.tar.bz2 \
- $name)
+ $name CVE-2018-15599.diff)
build () {
cd $name-$version
+ patch -p1 -i $SRC/CVE-2018-15599.diff
+
echo '#define SFTPSERVER_PATH "/usr/lib/ssh/sftp-server"' > localoptions.h
./configure --prefix=/usr
1
0
ports/opt (3.5): [notify] ghostscript: security fix, several -dSAFER sandbox bypass vulnerabilities
by crux@crux.nu 17 Jan '19
by crux@crux.nu 17 Jan '19
17 Jan '19
commit 11f86218d26b42b30824d7678ec4a7b54cbd50e9
Author: Juergen Daubert <jue(a)jue.li>
Date: Sat Aug 25 20:05:46 2018 +0200
[notify] ghostscript: security fix, several -dSAFER sandbox bypass vulnerabilities
See
- https://www.kb.cert.org/vuls/id/332928
- http://seclists.org/oss-sec/2018/q3/142
diff --git a/ghostscript/.signature b/ghostscript/.signature
index 8c0b3ca66..30d34089a 100644
--- a/ghostscript/.signature
+++ b/ghostscript/.signature
@@ -1,6 +1,19 @@
untrusted comment: verify with /etc/ports/opt.pub
-RWSE3ohX2g5d/fAfjoz0I76mLUiRieNsO8V6jhq5EVQ6xW14I/nmfV+aCRN4GXNPzuibAVddAgeDFQHT67ET7EstLrX9oiWLqgg=
-SHA256 (Pkgfile) = bf1af24031803ccccd487cd7dfed24ead00597c00daef0f3c1698ee0b5d46f71
+RWSE3ohX2g5d/froAVb0xfR6peImTLVw25laSQoDWaxYCxl8iIc3+eGFpv01RYYqliddT0nIm31YTdVwZS/RF2l9f/HkZo2LKg4=
+SHA256 (Pkgfile) = e4a88a0f36aec4197fc95a307812e31bd329eb53d64dbf81825cfa65fa09b778
SHA256 (.footprint) = 3514d4810f8fe93de5e8d03bc500e39d81dc6ab4118d0728c50d1e50e3bbc606
SHA256 (ghostscript-9.23.tar.xz) = 1fcedc27d4d6081105cdf35606cb3f809523423a6cf9e3c23cead3525d6ae8d9
SHA256 (ghostscript-fonts-std-8.11.tar.gz) = 0eb6f356119f2e49b2563210852e17f57f9dcc5755f350a69a46a0d641a0c401
+SHA256 (ghostpdl.git-0b6cd191.patch) = 562502dd1eccce30010aa2f00805132dfef86aa3675fb1df6fd00cbca8a4d786
+SHA256 (ghostpdl.git-b575e1ec.patch) = 09bf11a0dd2ca575df16e8d08ef64f7d195f8be9fe050026b5ce5d27cfcd8af9
+SHA256 (ghostpdl.git-8e9ce501.patch) = dc73b4592a862bbab7d8a4d326503d802ba4266940574ad2d73a444c977953f9
+SHA256 (ghostpdl.git-241d9111.patch) = 7f6fc634cf228c12b12c93514c419d7d6f7daad49fcd86baa23a7ff3b7fb55a4
+SHA256 (ghostpdl.git-c432131c.patch) = 12122123e1df839d39f844223a24e76a18ea0aab05cfa0012f7b2590792ca8ea
+SHA256 (ghostpdl.git-e01e77a3.patch) = 4061b542ad640298caa595c02bcc3b095e6f5682996c4b7330c6a36c04f19a94
+SHA256 (ghostpdl.git-0edd3d6c.patch) = 90be1bd4374d2af5b4675275030b7c528a3a03dfb0c4980337c5eec920326d4b
+SHA256 (ghostpdl.git-a054156d.patch) = 0f9b55466f45b404a4ccb9fcb18e203762eb06aa5c1b95bc7a2c8480601952c3
+SHA256 (ghostpdl.git-0d390118.patch) = 7ea332e7b2059c1f094f94714bc6b4eaf0de2515ae70b469ecfe96e7ccaf7317
+SHA256 (ghostpdl.git-c3476dde.patch) = 4ed94469231187ce2a512b4784f6fc7238543cf39b2625e2c09357fefed8aa18
+SHA256 (ghostpdl.git-b326a716.patch) = 6529a57c842e9a1573826bc6553956303297b7723c14f2bfcaeb1d899ec65c26
+SHA256 (ghostpdl.git-78911a01.patch) = 128065c4120cebcc9f177ce9ca2a525e240fd97a07727767210880080e87f507
+SHA256 (ghostpdl.git-5516c614.patch) = 125d5ffd5e891aa42aecb44025126130d014c8e8e98feca0fb6aab17cfe7908c
diff --git a/ghostscript/Pkgfile b/ghostscript/Pkgfile
index 7188478be..518daca8f 100644
--- a/ghostscript/Pkgfile
+++ b/ghostscript/Pkgfile
@@ -5,12 +5,39 @@
name=ghostscript
version=9.23
-release=1
+release=2
source=(https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/down…
- http://downloads.sourceforge.net/sourceforge/gs-fonts/$name-fonts-std-8.11.…)
+ http://downloads.sourceforge.net/sourceforge/gs-fonts/$name-fonts-std-8.11.…
+ ghostpdl.git-0b6cd191.patch
+ ghostpdl.git-b575e1ec.patch
+ ghostpdl.git-8e9ce501.patch
+ ghostpdl.git-241d9111.patch
+ ghostpdl.git-c432131c.patch
+ ghostpdl.git-e01e77a3.patch
+ ghostpdl.git-0edd3d6c.patch
+ ghostpdl.git-a054156d.patch
+ ghostpdl.git-0d390118.patch
+ ghostpdl.git-c3476dde.patch
+ ghostpdl.git-b326a716.patch
+ ghostpdl.git-78911a01.patch
+ ghostpdl.git-5516c614.patch)
build () {
cd $name-$version
+
+ patch -p1 -i $SRC/ghostpdl.git-0b6cd191.patch
+ patch -p1 -i $SRC/ghostpdl.git-b575e1ec.patch
+ patch -p1 -i $SRC/ghostpdl.git-8e9ce501.patch
+ patch -p1 -i $SRC/ghostpdl.git-241d9111.patch
+ patch -p1 -i $SRC/ghostpdl.git-c432131c.patch
+ patch -p1 -i $SRC/ghostpdl.git-e01e77a3.patch
+ patch -p1 -i $SRC/ghostpdl.git-0edd3d6c.patch
+ patch -p1 -i $SRC/ghostpdl.git-a054156d.patch
+ patch -p1 -i $SRC/ghostpdl.git-0d390118.patch
+ patch -p1 -i $SRC/ghostpdl.git-c3476dde.patch
+ patch -p1 -i $SRC/ghostpdl.git-b326a716.patch
+ patch -p1 -i $SRC/ghostpdl.git-78911a01.patch
+ patch -p1 -i $SRC/ghostpdl.git-5516c614.patch
./configure --prefix=/usr \
--enable-cups \
diff --git a/ghostscript/ghostpdl.git-0b6cd191.patch b/ghostscript/ghostpdl.git-0b6cd191.patch
new file mode 100644
index 000000000..5c7323528
--- /dev/null
+++ b/ghostscript/ghostpdl.git-0b6cd191.patch
@@ -0,0 +1,86 @@
+From 0b6cd1918e1ec4ffd087400a754a845180a4522b Mon Sep 17 00:00:00 2001
+From: Ken Sharp <ken.sharp(a)artifex.com>
+Date: Thu, 23 Aug 2018 14:12:48 +0100
+Subject: [PATCH] Fix Bug 699660 "shading_param incomplete type checking"
+
+Its possible to pass a t_struct parameter to .shfill which is not a
+shading function built by .buildshading. This could then lead to memory
+corruption or a segmentation fault by treating the object passed in
+as if it were a shading.
+
+Its non-trivial to check the t_struct, because this function can take
+7 different kinds of structures as a parameter. Checking these is
+possible, of course, but would add a performance penalty.
+
+However, we can note that we never call .shfill without first calling
+.buildshading, and we never call .buildshading without immediately
+calling .shfill. So we can treat these as an atomic operation. The
+.buildshading function takes all its parameters as PostScript objects
+and validates them, so that should be safe.
+
+This allows us to 'hide' the .shfill operator preventing the possibility
+of passing an invalid parameter.
+---
+ Resource/Init/gs_init.ps | 4 ++--
+ Resource/Init/gs_ll3.ps | 7 ++++++-
+ Resource/Init/pdf_draw.ps | 3 +--
+ 3 files changed, 9 insertions(+), 5 deletions(-)
+
+diff --git a/Resource/Init/gs_init.ps b/Resource/Init/gs_init.ps
+index 5a5a428..bc17d42 100644
+--- a/Resource/Init/gs_init.ps
++++ b/Resource/Init/gs_init.ps
+@@ -2196,8 +2196,8 @@ SAFER { .setsafeglobal } if
+ /.getiodevice /.getdevparms /.putdevparams /.bbox_transform /.matchmedia /.matchpagesize /.defaultpapersize
+ /.oserrno /.setoserrno /.oserrorstring /.getCPSImode
+ /.getscanconverter /.setscanconverter /.type1encrypt /.type1decrypt/.languagelevel /.setlanguagelevel /.eqproc /.fillpage /.buildpattern1 /.saslprep
+-/.buildshading1 /.buildshadin2 /.buildshading3 /.buildshading4 /.buildshading5 /.buildshading6 /.buildshading7 /.buildshadingpattern
+-/.argindex /.bytestring /.namestring /.stringbreak /.stringmatch /.globalvmarray /.globalvmdict /.globalvmpackedarray /.globalvmstring
++/.buildshading1 /.buildshading2 /.buildshading3 /.buildshading4 /.buildshading5 /.buildshading6 /.buildshading7 /.buildshadingpattern
++%/.shfill /.argindex /.bytestring /.namestring /.stringbreak /.stringmatch /.globalvmarray /.globalvmdict /.globalvmpackedarray /.globalvmstring
+ /.localvmarray /.localvmdict /.localvmpackedarray /.localvmstring /.systemvmarray /.systemvmdict /.systemvmpackedarray /.systemvmstring /.systemvmfile /.systemvmlibfile
+ /.systemvmSFD /.settrapparams /.currentsystemparams /.currentuserparams /.getsystemparam /.getuserparam /.setsystemparams /.setuserparams
+ /.checkpassword /.locale_to_utf8 /.currentglobal /.gcheck /.imagepath
+diff --git a/Resource/Init/gs_ll3.ps b/Resource/Init/gs_ll3.ps
+index 5aa56a3..1d37e53 100644
+--- a/Resource/Init/gs_ll3.ps
++++ b/Resource/Init/gs_ll3.ps
+@@ -440,6 +440,11 @@ systemdict /.reuseparamdict mark
+ /shfill .systemvar /undefined signalerror
+ } ifelse
+ } bind def
++
++/.buildshading_and_shfill {
++ .buildshading .shfill
++} bind def
++
+ systemdict /.reuseparamdict undef
+
+ /.buildpattern2 { % <template> <matrix> .buildpattern2
+@@ -464,7 +469,7 @@ systemdict /.reuseparamdict undef
+ % Currently, .shfill requires that the color space
+ % in the pattern be the current color space.
+ % Disable overprintmode for shfill
+- { dup gsave 0 .setoverprintmode .buildshading .shfill } stopped
++ { dup gsave 0 .setoverprintmode .buildshading_and_shfill } stopped
+ grestore {
+ /$error .systemvar /errorinfo 2 copy known {
+ pop pop
+diff --git a/Resource/Init/pdf_draw.ps b/Resource/Init/pdf_draw.ps
+index b3d94ac..aef249d 100644
+--- a/Resource/Init/pdf_draw.ps
++++ b/Resource/Init/pdf_draw.ps
+@@ -1365,9 +1365,8 @@ drawopdict begin
+ { dup /.shading .knownget {
+ exch pop
+ } {
+- .buildshading
++ .buildshading_and_shfill
+ } ifelse
+- .shfill
+ } stopped {
+ pop
+ ( **** Error: Ignoring invalid smooth shading object, output may be incorrect.\n)
+--
+2.9.1
+
diff --git a/ghostscript/ghostpdl.git-0d390118.patch b/ghostscript/ghostpdl.git-0d390118.patch
new file mode 100644
index 000000000..bcaac484a
--- /dev/null
+++ b/ghostscript/ghostpdl.git-0d390118.patch
@@ -0,0 +1,46 @@
+From: Chris Liddell <chris.liddell(a)artifex.com>
+Date: Tue, 21 Aug 2018 19:17:05 +0000 (+0100)
+Subject: Bug 699657: properly apply file permissions to .tempfile
+X-Git-Url: http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff_plain;h=0d390118
+
+Bug 699657: properly apply file permissions to .tempfile
+---
+
+diff --git a/psi/zfile.c b/psi/zfile.c
+index a0acd5a..19996b0 100644
+--- a/psi/zfile.c
++++ b/psi/zfile.c
+@@ -134,7 +134,7 @@ check_file_permissions_reduced(i_ctx_t *i_ctx_p, const char *fname, int len,
+ /* we're protecting arbitrary file system accesses, not Postscript device accesses.
+ * Although, note that %pipe% is explicitly checked for and disallowed elsewhere
+ */
+- if (iodev != iodev_default(imemory)) {
++ if (iodev && iodev != iodev_default(imemory)) {
+ return 0;
+ }
+
+@@ -734,7 +734,23 @@ ztempfile(i_ctx_t *i_ctx_p)
+ }
+
+ if (gp_file_name_is_absolute(pstr, strlen(pstr))) {
+- if (check_file_permissions(i_ctx_p, pstr, strlen(pstr),
++ int plen = strlen(pstr);
++ const char *sep = gp_file_name_separator();
++#ifdef DEBUG
++ int seplen = strlen(sep);
++ if (seplen != 1)
++ return_error(gs_error_Fatal);
++#endif
++ /* strip off the file name prefix, leave just the directory name
++ * so we can check if we are allowed to write to it
++ */
++ for ( ; plen >=0; plen--) {
++ if (pstr[plen] == sep[0])
++ break;
++ }
++ memcpy(fname, pstr, plen);
++ fname[plen] = '\0';
++ if (check_file_permissions(i_ctx_p, fname, strlen(fname),
+ NULL, "PermitFileWriting") < 0) {
+ code = gs_note_error(gs_error_invalidfileaccess);
+ goto done;
diff --git a/ghostscript/ghostpdl.git-0edd3d6c.patch b/ghostscript/ghostpdl.git-0edd3d6c.patch
new file mode 100644
index 000000000..a03193b34
--- /dev/null
+++ b/ghostscript/ghostpdl.git-0edd3d6c.patch
@@ -0,0 +1,21 @@
+From: Chris Liddell <chris.liddell(a)artifex.com>
+Date: Tue, 21 Aug 2018 19:36:52 +0000 (+0100)
+Subject: Bug 699659: Don't just assume an object is a t_(a)struct
+X-Git-Url: http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff_plain;h=0edd3d6c
+
+Bug 699659: Don't just assume an object is a t_(a)struct
+---
+
+diff --git a/psi/ztype.c b/psi/ztype.c
+index ad248d9..8307956 100644
+--- a/psi/ztype.c
++++ b/psi/ztype.c
+@@ -76,7 +76,7 @@ ztype(i_ctx_t *i_ctx_p)
+ /* Must be either a stack underflow or a t_[a]struct. */
+ check_op(2);
+ { /* Get the type name from the structure. */
+- if (op[-1].value.pstruct != 0x00) {
++ if ((r_has_type(&op[-1], t_struct) || r_has_type(&op[-1], t_astruct)) && op[-1].value.pstruct != 0x00) {
+ const char *sname =
+ gs_struct_type_name_string(gs_object_type(imemory,
+ op[-1].value.pstruct));
diff --git a/ghostscript/ghostpdl.git-241d9111.patch b/ghostscript/ghostpdl.git-241d9111.patch
new file mode 100644
index 000000000..7b6f4a4b2
--- /dev/null
+++ b/ghostscript/ghostpdl.git-241d9111.patch
@@ -0,0 +1,43 @@
+From: Chris Liddell <chris.liddell(a)artifex.com>
+Date: Thu, 23 Aug 2018 14:41:18 +0000 (+0100)
+Subject: Bug 699664: Ensure the correct is in place before cleanup
+X-Git-Url: http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff_plain;h=241d9111
+
+Bug 699664: Ensure the correct is in place before cleanup
+
+If the PS job replaces the device and leaves that graphics state in place, we
+wouldn't cleanup the default device in the normal way, but rely on the garbage
+collector.
+
+This works (but isn't ideal), *except* when the job replaces the device with
+the null device (using the nulldevice operator) - this means that
+.uninstallpagedevice doesn't replace the existing device with the nulldevice
+(since it is already installed), the device from the graphics ends up being
+freed - and as it is the nulldevice, which we rely on, memory corruption
+and a segfault can happen.
+
+We avoid this by checking if the current device is the nulldevice, and if so,
+restoring it away, before continuing with the device cleanup.
+---
+
+diff --git a/psi/imain.c b/psi/imain.c
+index 2fe1546..138bfc8 100644
+--- a/psi/imain.c
++++ b/psi/imain.c
+@@ -936,6 +936,16 @@ gs_main_finit(gs_main_instance * minst, int exit_status, int code)
+ i_ctx_p = minst->i_ctx_p; /* interp_reclaim could change it. */
+ }
+
++ if (i_ctx_p->pgs != NULL && i_ctx_p->pgs->device != NULL &&
++ gx_device_is_null(i_ctx_p->pgs->device)) {
++ /* if the job replaced the device with the nulldevice, we we need to grestore
++ away that device, so the block below can properly dispense
++ with the default device.
++ */
++ int code = gs_grestoreall(i_ctx_p->pgs);
++ if (code < 0) return_error(gs_error_Fatal);
++ }
++
+ if (i_ctx_p->pgs != NULL && i_ctx_p->pgs->device != NULL) {
+ gx_device *pdev = i_ctx_p->pgs->device;
+ const char * dname = pdev->dname;
diff --git a/ghostscript/ghostpdl.git-5516c614.patch b/ghostscript/ghostpdl.git-5516c614.patch
new file mode 100644
index 000000000..5eea5948c
--- /dev/null
+++ b/ghostscript/ghostpdl.git-5516c614.patch
@@ -0,0 +1,230 @@
+From: Chris Liddell <chris.liddell(a)artifex.com>
+Date: Fri, 24 Aug 2018 08:26:04 +0000 (+0100)
+Subject: Improve restore robustness
+X-Git-Url: http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff_plain;h=5516c614
+
+Improve restore robustness
+
+Prompted by looking at Bug 699654:
+
+There are two variants of the restore operator in Ghostscript: one is Level 1
+(restoring VM), the other is Level 2+ (adding page device restoring to the
+Level operator).
+
+This was implemented by the Level 2+ version restoring the device in the
+graphics state, then calling the Level 1 implementation to handle actually
+restoring the VM state.
+
+The problem was that the operand checking, and sanity of the save object was
+only done by the Level 1 variant, thus meaning an invalid save object could
+leave a (Level 2+) restore partially complete - with the page device part
+restored, but not VM, and the page device not configured.
+
+To solve that, this commit splits the operand and sanity checking, and the
+core of the restore operation into separate functions, so the relevant
+operators can validate the operand *before* taking any further action. That
+reduces the chances of an invalid restore leaving the interpreter in an
+unknown state.
+
+If an error occurs during the actual VM restore it is essentially fatal, and the
+interpreter cannot continue, but as an extra surety for security, in the event
+of such an error, we'll explicitly preserve the LockSafetyParams of the device,
+rather than rely on the post-restore device configuration (which won't happen
+in the event of an error).
+---
+
+diff --git a/psi/int.mak b/psi/int.mak
+index 1968820..16db0cf 100644
+--- a/psi/int.mak
++++ b/psi/int.mak
+@@ -1086,8 +1086,8 @@ $(PSD)pagedev.dev : $(ECHOGS_XE) $(pagedev_)\
+
+ $(PSOBJ)zdevice2.$(OBJ) : $(PSSRC)zdevice2.c $(OP) $(math__h) $(memory__h)\
+ $(dstack_h) $(estack_h)\
+- $(idict_h) $(idparam_h) $(igstate_h) $(iname_h) $(iutil_h) $(store_h)\
+- $(gxdevice_h) $(gsstate_h) $(INT_MAK) $(MAKEDIRS)
++ $(idict_h) $(idparam_h) $(igstate_h) $(iname_h) $(isave) $(iutil_h) \
++ $(store_h) $(gxdevice_h) $(gsstate_h) $(INT_MAK) $(MAKEDIRS)
+ $(PSCC) $(PSO_)zdevice2.$(OBJ) $(C_) $(PSSRC)zdevice2.c
+
+ $(PSOBJ)zmedia2.$(OBJ) : $(PSSRC)zmedia2.c $(OP) $(math__h) $(memory__h)\
+diff --git a/psi/isave.h b/psi/isave.h
+index 3021639..7eaaced 100644
+--- a/psi/isave.h
++++ b/psi/isave.h
+@@ -128,4 +128,10 @@ int font_restore(const alloc_save_t * save);
+ express purpose of getting the library context. */
+ gs_memory_t *gs_save_any_memory(const alloc_save_t *save);
+
++int
++restore_check_save(i_ctx_t *i_ctx_p, alloc_save_t **asave);
++
++int
++dorestore(i_ctx_t *i_ctx_p, alloc_save_t *asave);
++
+ #endif /* isave_INCLUDED */
+diff --git a/psi/zdevice2.c b/psi/zdevice2.c
+index 9fbb4e3..0c7080d 100644
+--- a/psi/zdevice2.c
++++ b/psi/zdevice2.c
+@@ -26,6 +26,7 @@
+ #include "igstate.h"
+ #include "iname.h"
+ #include "iutil.h"
++#include "isave.h"
+ #include "store.h"
+ #include "gxdevice.h"
+ #include "gsstate.h"
+@@ -307,13 +308,24 @@ z2grestoreall(i_ctx_t *i_ctx_p)
+ }
+ return 0;
+ }
+-
++/* This is the Level 2+ variant of restore - which adds restoring
++ of the page device to the Level 1 variant in zvmem.c.
++ Previous this restored the device state before calling zrestore.c
++ which validated operands etc, meaning a restore could error out
++ partially complete.
++ The operand checking, and actual VM restore are now in two functions
++ so they can called separately thus, here, we can do as much
++ checking as possible, before embarking on actual changes
++ */
+ /* <save> restore - */
+ static int
+ z2restore(i_ctx_t *i_ctx_p)
+ {
+- os_ptr op = osp;
+- check_type(*op, t_save);
++ alloc_save_t *asave;
++ bool saveLockSafety = gs_currentdevice_inline(igs)->LockSafetyParams;
++ int code = restore_check_save(i_ctx_p, &asave);
++
++ if (code < 0) return code;
+
+ while (gs_gstate_saved(gs_gstate_saved(igs))) {
+ if (restore_page_device(igs, gs_gstate_saved(igs)))
+@@ -322,7 +334,20 @@ z2restore(i_ctx_t *i_ctx_p)
+ }
+ if (restore_page_device(igs, gs_gstate_saved(igs)))
+ return push_callout(i_ctx_p, "%restorepagedevice");
+- return zrestore(i_ctx_p);
++
++ code = dorestore(i_ctx_p, asave);
++
++ if (code < 0) {
++ /* An error here is basically fatal, but....
++ restore_page_device() has to set LockSafetyParams false so it can
++ configure the restored device correctly - in normal operation, that
++ gets reset by that configuration. If we hit an error, though, that
++ may not happen - at least ensure we keep the setting through the
++ error.
++ */
++ gs_currentdevice_inline(igs)->LockSafetyParams = saveLockSafety;
++ }
++ return code;
+ }
+
+ /* <gstate> setgstate - */
+diff --git a/psi/zvmem.c b/psi/zvmem.c
+index 44cd7a8..87a0a4f 100644
+--- a/psi/zvmem.c
++++ b/psi/zvmem.c
+@@ -99,19 +99,18 @@ zsave(i_ctx_t *i_ctx_p)
+ static int restore_check_operand(os_ptr, alloc_save_t **, gs_dual_memory_t *);
+ static int restore_check_stack(const i_ctx_t *i_ctx_p, const ref_stack_t *, const alloc_save_t *, bool);
+ static void restore_fix_stack(i_ctx_t *i_ctx_p, ref_stack_t *, const alloc_save_t *, bool);
++
++/* Do as many up front checks of the save object as we reasonably can */
+ int
+-zrestore(i_ctx_t *i_ctx_p)
++restore_check_save(i_ctx_t *i_ctx_p, alloc_save_t **asave)
+ {
+ os_ptr op = osp;
+- alloc_save_t *asave;
+- bool last;
+- vm_save_t *vmsave;
+- int code = restore_check_operand(op, &asave, idmemory);
++ int code = restore_check_operand(op, asave, idmemory);
+
+ if (code < 0)
+ return code;
+ if_debug2m('u', imemory, "[u]vmrestore 0x%lx, id = %lu\n",
+- (ulong) alloc_save_client_data(asave),
++ (ulong) alloc_save_client_data(*asave),
+ (ulong) op->value.saveid);
+ if (I_VALIDATE_BEFORE_RESTORE)
+ ivalidate_clean_spaces(i_ctx_p);
+@@ -120,14 +119,37 @@ zrestore(i_ctx_t *i_ctx_p)
+ {
+ int code;
+
+- if ((code = restore_check_stack(i_ctx_p, &o_stack, asave, false)) < 0 ||
+- (code = restore_check_stack(i_ctx_p, &e_stack, asave, true)) < 0 ||
+- (code = restore_check_stack(i_ctx_p, &d_stack, asave, false)) < 0
++ if ((code = restore_check_stack(i_ctx_p, &o_stack, *asave, false)) < 0 ||
++ (code = restore_check_stack(i_ctx_p, &e_stack, *asave, true)) < 0 ||
++ (code = restore_check_stack(i_ctx_p, &d_stack, *asave, false)) < 0
+ ) {
+ osp++;
+ return code;
+ }
+ }
++ osp++;
++ return 0;
++}
++
++/* the semantics of restore differ slightly between Level 1 and
++ Level 2 and later - the latter includes restoring the device
++ state (whilst Level 1 didn't have "page devices" as such).
++ Hence we have two restore operators - one here (Level 1)
++ and one in zdevice2.c (Level 2+). For that reason, the
++ operand checking and guts of the restore operation are
++ separated so both implementations can use them to best
++ effect.
++ */
++int
++dorestore(i_ctx_t *i_ctx_p, alloc_save_t *asave)
++{
++ os_ptr op = osp;
++ bool last;
++ vm_save_t *vmsave;
++ int code;
++
++ osp--;
++
+ /* Reset l_new in all stack entries if the new save level is zero. */
+ /* Also do some special fixing on the e-stack. */
+ restore_fix_stack(i_ctx_p, &o_stack, asave, false);
+@@ -170,9 +192,24 @@ zrestore(i_ctx_t *i_ctx_p)
+ /* cause an 'invalidaccess' in setuserparams. Temporarily set */
+ /* LockFilePermissions false until the gs_lev2.ps can do a */
+ /* setuserparams from the restored userparam dictionary. */
++ /* NOTE: This is safe to do here, since the restore has */
++ /* successfully completed - this should never come before any */
++ /* operation that can trigger an error */
+ i_ctx_p->LockFilePermissions = false;
+ return 0;
+ }
++
++int
++zrestore(i_ctx_t *i_ctx_p)
++{
++ alloc_save_t *asave;
++ int code = restore_check_save(i_ctx_p, &asave);
++ if (code < 0)
++ return code;
++
++ return dorestore(i_ctx_p, asave);
++}
++
+ /* Check the operand of a restore. */
+ static int
+ restore_check_operand(os_ptr op, alloc_save_t ** pasave,
+@@ -193,6 +230,7 @@ restore_check_operand(os_ptr op, alloc_save_t ** pasave,
+ *pasave = asave;
+ return 0;
+ }
++
+ /* Check a stack to make sure all its elements are older than a save. */
+ static int
+ restore_check_stack(const i_ctx_t *i_ctx_p, const ref_stack_t * pstack,
diff --git a/ghostscript/ghostpdl.git-78911a01.patch b/ghostscript/ghostpdl.git-78911a01.patch
new file mode 100644
index 000000000..e1434fbea
--- /dev/null
+++ b/ghostscript/ghostpdl.git-78911a01.patch
@@ -0,0 +1,30 @@
+From: Chris Liddell <chris.liddell(a)artifex.com>
+Date: Thu, 23 Aug 2018 08:54:59 +0000 (+0100)
+Subject: Bug 699654: Check the restore operand type
+X-Git-Url: http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff_plain;h=78911a01
+
+Bug 699654: Check the restore operand type
+
+The primary function that implements restore correctly checked its parameter,
+but a function that does some preliminary work for the restore (gstate and
+device handling) did not check.
+
+So, even though the restore correctly errored out, it left things partially done
+and, in particular, the device in partially restored state. Meaning the
+LockSafetyParams was not correctly set.
+---
+
+diff --git a/psi/zdevice2.c b/psi/zdevice2.c
+index de16dd2..9fbb4e3 100644
+--- a/psi/zdevice2.c
++++ b/psi/zdevice2.c
+@@ -312,6 +312,9 @@ z2grestoreall(i_ctx_t *i_ctx_p)
+ static int
+ z2restore(i_ctx_t *i_ctx_p)
+ {
++ os_ptr op = osp;
++ check_type(*op, t_save);
++
+ while (gs_gstate_saved(gs_gstate_saved(igs))) {
+ if (restore_page_device(igs, gs_gstate_saved(igs)))
+ return push_callout(i_ctx_p, "%restore1pagedevice");
diff --git a/ghostscript/ghostpdl.git-8e9ce501.patch b/ghostscript/ghostpdl.git-8e9ce501.patch
new file mode 100644
index 000000000..a4790d8a2
--- /dev/null
+++ b/ghostscript/ghostpdl.git-8e9ce501.patch
@@ -0,0 +1,48 @@
+From: Ken Sharp <ken.sharp(a)artifex.com>
+Date: Thu, 23 Aug 2018 14:42:02 +0000 (+0100)
+Subject: Bug 699665 "memory corruption in aesdecode"
+X-Git-Url: http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff_plain;h=8e9ce501
+
+Bug 699665 "memory corruption in aesdecode"
+
+The specimen file calls aesdecode without specifying the key to be
+used, though it does manage to do enough work with the PDF interpreter
+routines to get access to aesdecode (which isn't normally available).
+
+This causes us to read uninitialised memory, which can (and often does)
+lead to a segmentation fault.
+
+In this commit we set the key to NULL explicitly during intialisation
+and then check it before we read it. If its NULL we just return.
+
+It seems bizarre that we don't return error codes, we should probably
+look into that at some point, but this prevents the code trying to
+read uninitialised memory.
+---
+
+diff --git a/base/aes.c b/base/aes.c
+index a6bce93..e86f000 100644
+--- a/base/aes.c
++++ b/base/aes.c
+@@ -662,6 +662,9 @@ void aes_crypt_ecb( aes_context *ctx,
+ }
+ #endif
+
++ if (ctx == NULL || ctx->rk == NULL)
++ return;
++
+ RK = ctx->rk;
+
+ GET_ULONG_LE( X0, input, 0 ); X0 ^= *RK++;
+diff --git a/base/saes.c b/base/saes.c
+index 6db0e8b..307ed74 100644
+--- a/base/saes.c
++++ b/base/saes.c
+@@ -120,6 +120,7 @@ s_aes_process(stream_state * ss, stream_cursor_read * pr,
+ gs_throw(gs_error_VMerror, "could not allocate aes context");
+ return ERRC;
+ }
++ memset(state->ctx, 0x00, sizeof(aes_context));
+ if (state->keylength < 1 || state->keylength > SAES_MAX_KEYLENGTH) {
+ gs_throw1(gs_error_rangecheck, "invalid aes key length (%d bytes)",
+ state->keylength);
diff --git a/ghostscript/ghostpdl.git-a054156d.patch b/ghostscript/ghostpdl.git-a054156d.patch
new file mode 100644
index 000000000..50faf184e
--- /dev/null
+++ b/ghostscript/ghostpdl.git-a054156d.patch
@@ -0,0 +1,51 @@
+From: Chris Liddell <chris.liddell(a)artifex.com>
+Date: Tue, 21 Aug 2018 19:17:51 +0000 (+0100)
+Subject: Bug 699658: Fix handling of pre-SAFER opened files.
+X-Git-Url: http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff_plain;h=a054156d
+
+Bug 699658: Fix handling of pre-SAFER opened files.
+
+Temp files opened for writing before SAFER is engaged are not subject to the
+SAFER restrictions - that is handled by recording in a dictionary, and
+checking that as part of the permissions checks.
+
+By adding a custom error handler for invalidaccess, that allowed the filename
+to be added to the dictionary (despite the attempted open throwing the error)
+thus meaning subsequent accesses were erroneously permitted.
+---
+
+diff --git a/Resource/Init/gs_init.ps b/Resource/Init/gs_init.ps
+index a6e49f0..5a5a428 100644
+--- a/Resource/Init/gs_init.ps
++++ b/Resource/Init/gs_init.ps
+@@ -2036,6 +2036,19 @@ readonly def
+ concatstrings concatstrings .generate_dir_list_templates
+ } if
+ ]
++ /PermitFileWriting [
++ currentuserparams /PermitFileWriting get aload pop
++ (TMPDIR) getenv not
++ {
++ (TEMP) getenv not
++ {
++ (TMP) getenv not
++ {
++ (/temp) (/tmp)
++ } if
++ } if
++ } if
++ ]
+ /LockFilePermissions //true
+ >> setuserparams
+ }
+@@ -2122,7 +2135,9 @@ readonly def
+ % the file can be deleted later, even if SAFER is set.
+ /.tempfile {
+ .tempfile % filename file
+- //SAFETY /tempfiles get 2 .argindex //true .forceput
++ //SAFETY /safe get not { % only add the filename if we're not yet safe
++ //SAFETY /tempfiles get 2 .argindex //true .forceput
++ } if
+ } .bind executeonly odef
+
+ % If we are running in SAFER mode, lock things down
diff --git a/ghostscript/ghostpdl.git-b326a716.patch b/ghostscript/ghostpdl.git-b326a716.patch
new file mode 100644
index 000000000..c5c167cdb
--- /dev/null
+++ b/ghostscript/ghostpdl.git-b326a716.patch
@@ -0,0 +1,26 @@
+From: Chris Liddell <chris.liddell(a)artifex.com>
+Date: Tue, 21 Aug 2018 15:24:05 +0000 (+0100)
+Subject: Bug 699655: Properly check the return value....
+X-Git-Url: http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff_plain;h=b326a716
+
+Bug 699655: Properly check the return value....
+
+...when getting a value from a dictionary
+---
+
+diff --git a/psi/zcolor.c b/psi/zcolor.c
+index 4c0f258..e27baf9 100644
+--- a/psi/zcolor.c
++++ b/psi/zcolor.c
+@@ -283,8 +283,9 @@ zsetcolor(i_ctx_t * i_ctx_p)
+ if (r_has_type(op, t_dictionary)) {
+ ref *pImpl, pPatInst;
+
+- code = dict_find_string(op, "Implementation", &pImpl);
+- if (code != 0) {
++ if ((code = dict_find_string(op, "Implementation", &pImpl)) < 0)
++ return code;
++ if (code > 0) {
+ code = array_get(imemory, pImpl, 0, &pPatInst);
+ if (code < 0)
+ return code;
diff --git a/ghostscript/ghostpdl.git-b575e1ec.patch b/ghostscript/ghostpdl.git-b575e1ec.patch
new file mode 100644
index 000000000..d5d15a26b
--- /dev/null
+++ b/ghostscript/ghostpdl.git-b575e1ec.patch
@@ -0,0 +1,33 @@
+From: Chris Liddell <chris.liddell(a)artifex.com>
+Date: Thu, 23 Aug 2018 11:20:56 +0000 (+0100)
+Subject: Bug 699668: handle stack overflow during error handling
+X-Git-Url: http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff_plain;h=b575e1ec
+
+Bug 699668: handle stack overflow during error handling
+
+When handling a Postscript error, we push the object throwing the error onto
+the operand stack for the error handling procedure to access - we were not
+checking the available stack before doing so, thus causing a crash.
+
+Basically, if we get a stack overflow when already handling an error, we're out
+of options, return to the caller with a fatal error.
+---
+
+diff --git a/psi/interp.c b/psi/interp.c
+index 8b49556..6150838 100644
+--- a/psi/interp.c
++++ b/psi/interp.c
+@@ -676,7 +676,12 @@ again:
+ /* Push the error object on the operand stack if appropriate. */
+ if (!GS_ERROR_IS_INTERRUPT(code)) {
+ /* Replace the error object if within an oparray or .errorexec. */
+- *++osp = *perror_object;
++ osp++;
++ if (osp >= ostop) {
++ *pexit_code = gs_error_Fatal;
++ return_error(gs_error_Fatal);
++ }
++ *osp = *perror_object;
+ errorexec_find(i_ctx_p, osp);
+ }
+ goto again;
diff --git a/ghostscript/ghostpdl.git-c3476dde.patch b/ghostscript/ghostpdl.git-c3476dde.patch
new file mode 100644
index 000000000..cf2a2ebbf
--- /dev/null
+++ b/ghostscript/ghostpdl.git-c3476dde.patch
@@ -0,0 +1,43 @@
+From: Chris Liddell <chris.liddell(a)artifex.com>
+Date: Tue, 21 Aug 2018 15:42:45 +0000 (+0100)
+Subject: Bug 699656: Handle LockDistillerParams not being a boolean
+X-Git-Url: http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff_plain;h=c3476dde
+
+Bug 699656: Handle LockDistillerParams not being a boolean
+
+This caused a function call commented as "Can't fail" to fail, and resulted
+in memory correuption and a segfault.
+---
+
+diff --git a/devices/vector/gdevpdfp.c b/devices/vector/gdevpdfp.c
+index e942682..7c58af7 100644
+--- a/devices/vector/gdevpdfp.c
++++ b/devices/vector/gdevpdfp.c
+@@ -364,7 +364,7 @@ gdev_pdf_put_params_impl(gx_device * dev, const gx_device_pdf * save_dev, gs_par
+ * LockDistillerParams is read again, and reset if necessary, in
+ * psdf_put_params.
+ */
+- ecode = param_read_bool(plist, "LockDistillerParams", &locked);
++ ecode = param_read_bool(plist, (param_name = "LockDistillerParams"), &locked);
+ if (ecode < 0)
+ param_signal_error(plist, param_name, ecode);
+
+diff --git a/psi/iparam.c b/psi/iparam.c
+index 68c20d4..0279455 100644
+--- a/psi/iparam.c
++++ b/psi/iparam.c
+@@ -822,10 +822,11 @@ static int
+ ref_param_read_signal_error(gs_param_list * plist, gs_param_name pkey, int code)
+ {
+ iparam_list *const iplist = (iparam_list *) plist;
+- iparam_loc loc;
++ iparam_loc loc = {0};
+
+- ref_param_read(iplist, pkey, &loc, -1); /* can't fail */
+- *loc.presult = code;
++ ref_param_read(iplist, pkey, &loc, -1);
++ if (loc.presult)
++ *loc.presult = code;
+ switch (ref_param_read_get_policy(plist, pkey)) {
+ case gs_param_policy_ignore:
+ return 0;
diff --git a/ghostscript/ghostpdl.git-c432131c.patch b/ghostscript/ghostpdl.git-c432131c.patch
new file mode 100644
index 000000000..849b852e0
--- /dev/null
+++ b/ghostscript/ghostpdl.git-c432131c.patch
@@ -0,0 +1,109 @@
+From: Chris Liddell <chris.liddell(a)artifex.com>
+Date: Thu, 23 Aug 2018 13:13:25 +0000 (+0100)
+Subject: Bug 699661: Avoid sharing pointers between pdf14 compositors
+X-Git-Url: http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff_plain;h=c432131c
+
+Bug 699661: Avoid sharing pointers between pdf14 compositors
+
+If a copdevice is triggered when the pdf14 compositor is the device, we make
+a copy of the device, then throw an error because, by default we're only allowed
+to copy the device prototype - then freeing it calls the finalize, which frees
+several pointers shared with the parent.
+
+Make a pdf14 specific finish_copydevice() which NULLs the relevant pointers,
+before, possibly, throwing the same error as the default method.
+
+This also highlighted a problem with reopening the X11 devices, where a custom
+error handler could be replaced with itself, meaning it also called itself,
+and infifite recursion resulted.
+
+Keep a note of if the handler replacement has been done, and don't do it a
+second time.
+---
+
+diff --git a/base/gdevp14.c b/base/gdevp14.c
+index d9f8e79..eb9cc23 100644
+--- a/base/gdevp14.c
++++ b/base/gdevp14.c
+@@ -178,6 +178,7 @@ static dev_proc_fill_mask(pdf14_fill_mask);
+ static dev_proc_stroke_path(pdf14_stroke_path);
+ static dev_proc_begin_typed_image(pdf14_begin_typed_image);
+ static dev_proc_text_begin(pdf14_text_begin);
++static dev_proc_finish_copydevice(pdf14_finish_copydevice);
+ static dev_proc_create_compositor(pdf14_create_compositor);
+ static dev_proc_create_compositor(pdf14_forward_create_compositor);
+ static dev_proc_begin_transparency_group(pdf14_begin_transparency_group);
+@@ -245,7 +246,7 @@ static const gx_color_map_procs *
+ pdf14_create_compositor, /* create_compositor */\
+ NULL, /* get_hardware_params */\
+ pdf14_text_begin, /* text_begin */\
+- NULL, /* finish_copydevice */\
++ pdf14_finish_copydevice, /* finish_copydevice */\
+ pdf14_begin_transparency_group,\
+ pdf14_end_transparency_group,\
+ pdf14_begin_transparency_mask,\
+@@ -3935,6 +3936,19 @@ pdf14_text_begin(gx_device * dev, gs_gstate * pgs,
+ return code;
+ }
+
++static int
++pdf14_finish_copydevice(gx_device *new_dev, const gx_device *from_dev)
++{
++ pdf14_device *pdev = (pdf14_device*)new_dev;
++
++ pdev->ctx = NULL;
++ pdev->trans_group_parent_cmap_procs = NULL;
++ pdev->smaskcolor = NULL;
++
++ /* Only allow copying the prototype. */
++ return (from_dev->memory ? gs_note_error(gs_error_rangecheck) : 0);
++}
++
+ /*
+ * Implement copy_mono by filling lots of small rectangles.
+ */
+@@ -8093,6 +8107,7 @@ c_pdf14trans_clist_read_update(gs_composite_t * pcte, gx_device * cdev,
+ before reopening the device */
+ if (p14dev->ctx != NULL) {
+ pdf14_ctx_free(p14dev->ctx);
++ p14dev->ctx = NULL;
+ }
+ dev_proc(tdev, open_device) (tdev);
+ }
+diff --git a/devices/gdevxini.c b/devices/gdevxini.c
+index 8511eac..23b8c35 100644
+--- a/devices/gdevxini.c
++++ b/devices/gdevxini.c
+@@ -59,7 +59,8 @@ static struct xv_ {
+ Boolean alloc_error;
+ XErrorHandler orighandler;
+ XErrorHandler oldhandler;
+-} x_error_handler;
++ Boolean set;
++} x_error_handler = {0};
+
+ static int
+ x_catch_alloc(Display * dpy, XErrorEvent * err)
+@@ -74,7 +75,8 @@ x_catch_alloc(Display * dpy, XErrorEvent * err)
+ int
+ x_catch_free_colors(Display * dpy, XErrorEvent * err)
+ {
+- if (err->request_code == X_FreeColors)
++ if (err->request_code == X_FreeColors ||
++ x_error_handler.orighandler == x_catch_free_colors)
+ return 0;
+ return x_error_handler.orighandler(dpy, err);
+ }
+@@ -274,8 +276,10 @@ gdev_x_open(gx_device_X * xdev)
+ return_error(gs_error_ioerror);
+ }
+ /* Buggy X servers may cause a Bad Access on XFreeColors. */
+- x_error_handler.orighandler = XSetErrorHandler(x_catch_free_colors);
+-
++ if (!x_error_handler.set) {
++ x_error_handler.orighandler = XSetErrorHandler(x_catch_free_colors);
++ x_error_handler.set = True;
++ }
+ /* Get X Resources. Use the toolkit for this. */
+ XtToolkitInitialize();
+ app_con = XtCreateApplicationContext();
diff --git a/ghostscript/ghostpdl.git-e01e77a3.patch b/ghostscript/ghostpdl.git-e01e77a3.patch
new file mode 100644
index 000000000..5859c4960
--- /dev/null
+++ b/ghostscript/ghostpdl.git-e01e77a3.patch
@@ -0,0 +1,27 @@
+From: Ken Sharp <ken.sharp(a)artifex.com>
+Date: Fri, 24 Aug 2018 11:44:26 +0000 (+0100)
+Subject: Hide the .shfill operator
+X-Git-Url: http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff_plain;h=e01e77a3
+
+Hide the .shfill operator
+
+Commit 0b6cd1918e1ec4ffd087400a754a845180a4522b was supposed to make
+the .shfill operator unobtainable, but I accidentally left a comment
+in the line doing so.
+
+Fix it here, without this the operator can still be exploited.
+---
+
+diff --git a/Resource/Init/gs_init.ps b/Resource/Init/gs_init.ps
+index bc17d42..db3f7fe 100644
+--- a/Resource/Init/gs_init.ps
++++ b/Resource/Init/gs_init.ps
+@@ -2197,7 +2197,7 @@ SAFER { .setsafeglobal } if
+ /.oserrno /.setoserrno /.oserrorstring /.getCPSImode
+ /.getscanconverter /.setscanconverter /.type1encrypt /.type1decrypt/.languagelevel /.setlanguagelevel /.eqproc /.fillpage /.buildpattern1 /.saslprep
+ /.buildshading1 /.buildshading2 /.buildshading3 /.buildshading4 /.buildshading5 /.buildshading6 /.buildshading7 /.buildshadingpattern
+-%/.shfill /.argindex /.bytestring /.namestring /.stringbreak /.stringmatch /.globalvmarray /.globalvmdict /.globalvmpackedarray /.globalvmstring
++/.shfill /.argindex /.bytestring /.namestring /.stringbreak /.stringmatch /.globalvmarray /.globalvmdict /.globalvmpackedarray /.globalvmstring
+ /.localvmarray /.localvmdict /.localvmpackedarray /.localvmstring /.systemvmarray /.systemvmdict /.systemvmpackedarray /.systemvmstring /.systemvmfile /.systemvmlibfile
+ /.systemvmSFD /.settrapparams /.currentsystemparams /.currentuserparams /.getsystemparam /.getuserparam /.setsystemparams /.setuserparams
+ /.checkpassword /.locale_to_utf8 /.currentglobal /.gcheck /.imagepath
1
0
commit 3458ecd944e2eb9bbdca407439e2f8d828d08934
Author: Juergen Daubert <jue(a)jue.li>
Date: Mon Aug 20 18:23:24 2018 +0200
[notify] poppler: update to 0.68.0
ABI has been changed, rebuild of direct dependent ports
like cups-filters required. Run revdep after update.
diff --git a/poppler/.footprint b/poppler/.footprint
index 7157259b9..3808e51b3 100644
--- a/poppler/.footprint
+++ b/poppler/.footprint
@@ -151,9 +151,9 @@ drwxr-xr-x root/root usr/lib/
lrwxrwxrwx root/root usr/lib/libpoppler-cpp.so -> libpoppler-cpp.so.0
lrwxrwxrwx root/root usr/lib/libpoppler-cpp.so.0 -> libpoppler-cpp.so.0.5.0
-rwxr-xr-x root/root usr/lib/libpoppler-cpp.so.0.5.0
-lrwxrwxrwx root/root usr/lib/libpoppler.so -> libpoppler.so.78
-lrwxrwxrwx root/root usr/lib/libpoppler.so.78 -> libpoppler.so.78.0.0
--rwxr-xr-x root/root usr/lib/libpoppler.so.78.0.0
+lrwxrwxrwx root/root usr/lib/libpoppler.so -> libpoppler.so.79
+lrwxrwxrwx root/root usr/lib/libpoppler.so.79 -> libpoppler.so.79.0.0
+-rwxr-xr-x root/root usr/lib/libpoppler.so.79.0.0
drwxr-xr-x root/root usr/lib/pkgconfig/
-rw-r--r-- root/root usr/lib/pkgconfig/poppler-cairo.pc
-rw-r--r-- root/root usr/lib/pkgconfig/poppler-cpp.pc
diff --git a/poppler/.md5sum b/poppler/.md5sum
index 8e81df205..74ce3dd6d 100644
--- a/poppler/.md5sum
+++ b/poppler/.md5sum
@@ -1 +1 @@
-bcfbdcaca2a1f72435e4aaa3c06664ca poppler-0.67.0.tar.xz
+722ea5837cdfaae4c98607987000de30 poppler-0.68.0.tar.xz
diff --git a/poppler/.signature b/poppler/.signature
index e447178d1..8c3dc3f88 100644
--- a/poppler/.signature
+++ b/poppler/.signature
@@ -1,5 +1,5 @@
untrusted comment: verify with /etc/ports/opt.pub
-RWSE3ohX2g5d/TkTPw8AC2brpygn1G+kdfiEs5D/J5PTHxb/5JnWENZREQZB+tsOAPI1MK5ipLra7uy24nTOjLz+a25FfzyOBQw=
-SHA256 (Pkgfile) = 777fc8229422e9fa46d95508dde54986a5fa750e08c4affbce8644b497364dd5
-SHA256 (.footprint) = bee704ac257926e33b99a81443ca91a9c3b8eed64558418997ccfb144e264963
-SHA256 (poppler-0.67.0.tar.xz) = a34a4f1a0f5b610c584c65824e92e3ba3e08a89d8ab4622aee11b8ceea5366f9
+RWSE3ohX2g5d/Rvl3V6IJxY9y1JcgVihJOO/VerdD4HUO09R4FXewoqIFwQIfckAzWUK9KSid8ogSMVX2yXimmzBlx+cyBLT4gk=
+SHA256 (Pkgfile) = 845666fc09684ae7cab556f69f434fb9ec12ecf8c5c33aa0941174b4ea3febf1
+SHA256 (.footprint) = 629a3a0836ff5a62679c509346220794e1145bf45041ae1f154d11f505c35345
+SHA256 (poppler-0.68.0.tar.xz) = f90d04f0fb8df6923ecb0f106ae866cf9f8761bb537ddac64dfb5322763d0e58
diff --git a/poppler/Pkgfile b/poppler/Pkgfile
index ac62fc0f8..28241b848 100644
--- a/poppler/Pkgfile
+++ b/poppler/Pkgfile
@@ -4,7 +4,7 @@
# Depends on: cmake cairo lcms2
name=poppler
-version=0.67.0
+version=0.68.0
release=1
source=(https://poppler.freedesktop.org/poppler-$version.tar.xz)
1
0
ports/opt (3.5): [notify] wpa_supplicant: security fix for CVE-2018-14526
by crux@crux.nu 17 Jan '19
by crux@crux.nu 17 Jan '19
17 Jan '19
commit ffe0c53f2ba0ba9c87065f5f90a9b874000681c3
Author: Juergen Daubert <jue(a)jue.li>
Date: Mon Aug 20 18:20:06 2018 +0200
[notify] wpa_supplicant: security fix for CVE-2018-14526
see
https://w1.fi/security/2018-1/unauthenticated-eapol-key-decryption.txt
diff --git a/wpa_supplicant/.md5sum b/wpa_supplicant/.md5sum
index 660019c37..713d0ddbd 100644
--- a/wpa_supplicant/.md5sum
+++ b/wpa_supplicant/.md5sum
@@ -1,3 +1,4 @@
+5cc415c6b43d12c049d76ecef0449679 rebased-v2.6-0001-WPA-Ignore-unauthenticated-encrypted-EAPOL-Key-data.patch
a209fe1510a138c0da3855854c38bf6f rebased-v2.6-0001-hostapd-Avoid-key-reinstallation-in-FT-handshake.patch
a19510a630e870a100ccb56627df38b9 rebased-v2.6-0002-Prevent-reinstallation-of-an-already-in-use-group-ke.patch
1f9054638b4b142049aec620307e5bd2 rebased-v2.6-0003-Extend-protection-of-GTK-IGTK-reinstallation-of-WNM-.patch
diff --git a/wpa_supplicant/.signature b/wpa_supplicant/.signature
index b44a5da65..d18caae8d 100644
--- a/wpa_supplicant/.signature
+++ b/wpa_supplicant/.signature
@@ -1,6 +1,6 @@
untrusted comment: verify with /etc/ports/opt.pub
-RWSE3ohX2g5d/RQg80Uz1Uy8/Bmifa5WGQsdDvlhpP0B/f7QXNBbntGkSjOBRzIvuuCD5bHTgtmDSqyR5n964zy4w19JVo4Seg0=
-SHA256 (Pkgfile) = 4b52b01a677225157876b502c8de725da63c7a5b1ff55469905f502783b73da3
+RWSE3ohX2g5d/fb0pwxIzrpCLcq+WA+NjAfAFaG0XqredE1sAUGZ3W8EWJ4i2/a+WihNbsX4ee8bigW1Ei1vwAi3lYeQZ4+EUQY=
+SHA256 (Pkgfile) = fb42fc05015785f706392ac8a2a89b6cf042113af596bc62c330780e1452f8f1
SHA256 (.footprint) = d3b2e0c4068fe789ca0c18c2c81faf906efdbd970fa00641c3e5381dcbc474a5
SHA256 (wpa_supplicant-2.6.tar.gz) = b4936d34c4e6cdd44954beba74296d964bc2c9668ecaa5255e499636fe2b1450
SHA256 (rebased-v2.6-0001-hostapd-Avoid-key-reinstallation-in-FT-handshake.patch) = 529113cc81256c6178f3c1cf25dd8d3f33e6d770e4a180bd31c6ab7e4917f40b
@@ -11,4 +11,5 @@ SHA256 (rebased-v2.6-0005-Fix-PTK-rekeying-to-generate-a-new-ANonce.patch) = 147
SHA256 (rebased-v2.6-0006-TDLS-Reject-TPK-TK-reconfiguration.patch) = 596d4d3b63ea859ed7ea9791b3a21cb11b6173b04c0a14a2afa47edf1666afa6
SHA256 (rebased-v2.6-0007-WNM-Ignore-WNM-Sleep-Mode-Response-without-pending-r.patch) = c5a17af84aec2d88c56ce0da2d6945be398fe7cab5c0c340deb30973900c2736
SHA256 (rebased-v2.6-0008-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch) = c8840d857b9432f3b488113c85c1ff5d4a4b8d81078b7033388dae1e990843b1
+SHA256 (rebased-v2.6-0001-WPA-Ignore-unauthenticated-encrypted-EAPOL-Key-data.patch) = 960c3cf2a514479b0b4cf09665186a1a9f5d28e8b05dec23db75c6cc13eb1f7c
SHA256 (wlan) = 62f4c0bf8d5fedcf5b6ad79278f4be16f29841099f385acc4fc91e2d52ca1927
diff --git a/wpa_supplicant/Pkgfile b/wpa_supplicant/Pkgfile
index ede524d6e..6231790d9 100644
--- a/wpa_supplicant/Pkgfile
+++ b/wpa_supplicant/Pkgfile
@@ -5,7 +5,7 @@
name=wpa_supplicant
version=2.6
-release=3
+release=4
source=(http://hostap.epitest.fi/releases/$name-$version.tar.gz
rebased-v2.6-0001-hostapd-Avoid-key-reinstallation-in-FT-handshake.patch
rebased-v2.6-0002-Prevent-reinstallation-of-an-already-in-use-group-ke.patch
@@ -15,6 +15,7 @@ source=(http://hostap.epitest.fi/releases/$name-$version.tar.gz
rebased-v2.6-0006-TDLS-Reject-TPK-TK-reconfiguration.patch
rebased-v2.6-0007-WNM-Ignore-WNM-Sleep-Mode-Response-without-pending-r.patch
rebased-v2.6-0008-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch
+ rebased-v2.6-0001-WPA-Ignore-unauthenticated-encrypted-EAPOL-Key-data.patch
wlan)
build () {
@@ -28,6 +29,7 @@ build () {
patch -d.. -p1 -i $SRC/rebased-v2.6-0006-TDLS-Reject-TPK-TK-reconfiguration.patch
patch -d.. -p1 -i $SRC/rebased-v2.6-0007-WNM-Ignore-WNM-Sleep-Mode-Response-without-pending-r.patch
patch -d.. -p1 -i $SRC/rebased-v2.6-0008-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch
+ patch -d.. -p1 -i $SRC/rebased-v2.6-0001-WPA-Ignore-unauthenticated-encrypted-EAPOL-Key-data.patch
cp defconfig .config
echo "CONFIG_READLINE=y
diff --git a/wpa_supplicant/rebased-v2.6-0001-WPA-Ignore-unauthenticated-encrypted-EAPOL-Key-data.patch b/wpa_supplicant/rebased-v2.6-0001-WPA-Ignore-unauthenticated-encrypted-EAPOL-Key-data.patch
new file mode 100644
index 000000000..a62b52c6b
--- /dev/null
+++ b/wpa_supplicant/rebased-v2.6-0001-WPA-Ignore-unauthenticated-encrypted-EAPOL-Key-data.patch
@@ -0,0 +1,44 @@
+From 3e34cfdff6b192fe337c6fb3f487f73e96582961 Mon Sep 17 00:00:00 2001
+From: Mathy Vanhoef <Mathy.Vanhoef(a)cs.kuleuven.be>
+Date: Sun, 15 Jul 2018 01:25:53 +0200
+Subject: [PATCH] WPA: Ignore unauthenticated encrypted EAPOL-Key data
+
+Ignore unauthenticated encrypted EAPOL-Key data in supplicant
+processing. When using WPA2, these are frames that have the Encrypted
+flag set, but not the MIC flag.
+
+When using WPA2, EAPOL-Key frames that had the Encrypted flag set but
+not the MIC flag, had their data field decrypted without first verifying
+the MIC. In case the data field was encrypted using RC4 (i.e., when
+negotiating TKIP as the pairwise cipher), this meant that
+unauthenticated but decrypted data would then be processed. An adversary
+could abuse this as a decryption oracle to recover sensitive information
+in the data field of EAPOL-Key messages (e.g., the group key).
+(CVE-2018-14526)
+
+Signed-off-by: Mathy Vanhoef <Mathy.Vanhoef(a)cs.kuleuven.be>
+---
+ src/rsn_supp/wpa.c | 11 +++++++++++
+ 1 file changed, 11 insertions(+)
+
+diff -upr wpa_supplicant-2.6.orig/src/rsn_supp/wpa.c wpa_supplicant-2.6/src/rsn_supp/wpa.c
+--- wpa_supplicant-2.6.orig/src/rsn_supp/wpa.c 2016-10-02 21:51:11.000000000 +0300
++++ wpa_supplicant-2.6/src/rsn_supp/wpa.c 2018-08-08 16:55:11.506831029 +0300
+@@ -2016,6 +2016,17 @@ int wpa_sm_rx_eapol(struct wpa_sm *sm, c
+
+ if ((sm->proto == WPA_PROTO_RSN || sm->proto == WPA_PROTO_OSEN) &&
+ (key_info & WPA_KEY_INFO_ENCR_KEY_DATA)) {
++ /*
++ * Only decrypt the Key Data field if the frame's authenticity
++ * was verified. When using AES-SIV (FILS), the MIC flag is not
++ * set, so this check should only be performed if mic_len != 0
++ * which is the case in this code branch.
++ */
++ if (!(key_info & WPA_KEY_INFO_MIC)) {
++ wpa_msg(sm->ctx->msg_ctx, MSG_WARNING,
++ "WPA: Ignore EAPOL-Key with encrypted but unauthenticated data");
++ goto out;
++ }
+ if (wpa_supplicant_decrypt_key_data(sm, key, ver, key_data,
+ &key_data_len))
+ goto out;
1
0
ports/opt (3.5): [notify] ghostscript: update to 9.25, fix for CVE-2018-16802
by crux@crux.nu 17 Jan '19
by crux@crux.nu 17 Jan '19
17 Jan '19
commit ab3935b061dad60648c20c1c967b7519a11a3ee3
Author: Juergen Daubert <jue(a)jue.li>
Date: Thu Sep 13 20:27:44 2018 +0200
[notify] ghostscript: update to 9.25, fix for CVE-2018-16802
diff --git a/ghostscript/.footprint b/ghostscript/.footprint
index 9b6340568..07a26e6ae 100644
--- a/ghostscript/.footprint
+++ b/ghostscript/.footprint
@@ -39,9 +39,9 @@ drwxr-xr-x root/root usr/include/ijs/
-rw-r--r-- root/root usr/include/ijs/ijs_client.h
-rw-r--r-- root/root usr/include/ijs/ijs_server.h
drwxr-xr-x root/root usr/lib/
-lrwxrwxrwx root/root usr/lib/libgs.so -> libgs.so.9.24
-lrwxrwxrwx root/root usr/lib/libgs.so.9 -> libgs.so.9.24
--rwxr-xr-x root/root usr/lib/libgs.so.9.24
+lrwxrwxrwx root/root usr/lib/libgs.so -> libgs.so.9.25
+lrwxrwxrwx root/root usr/lib/libgs.so.9 -> libgs.so.9.25
+-rwxr-xr-x root/root usr/lib/libgs.so.9.25
-rwxr-xr-x root/root usr/lib/libijs-0.35.so
-rw-r--r-- root/root usr/lib/libijs.a
-rwxr-xr-x root/root usr/lib/libijs.la
@@ -50,165 +50,165 @@ drwxr-xr-x root/root usr/lib/pkgconfig/
-rw-r--r-- root/root usr/lib/pkgconfig/ijs.pc
drwxr-xr-x root/root usr/share/
drwxr-xr-x root/root usr/share/ghostscript/
-drwxr-xr-x root/root usr/share/ghostscript/9.24/
-drwxr-xr-x root/root usr/share/ghostscript/9.24/lib/
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/PDFA_def.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/PDFX_def.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/PM760p.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/PM760pl.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/PM820p.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/PM820pl.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/Stc670p.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/Stc670pl.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/Stc680p.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/Stc680pl.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/Stc740p.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/Stc740pl.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/Stc760p.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/Stc760pl.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/Stc777p.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/Stc777pl.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/Stp720p.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/Stp720pl.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/Stp870p.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/Stp870pl.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/acctest.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/align.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bj8.rpd
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bj8gc12f.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bj8hg12f.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bj8oh06n.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bj8pa06n.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bj8pp12f.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bj8ts06n.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bjc6000a1.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bjc6000b1.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bjc610a0.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bjc610a1.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bjc610a2.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bjc610a3.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bjc610a4.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bjc610a5.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bjc610a6.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bjc610a7.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bjc610a8.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bjc610b1.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bjc610b2.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bjc610b3.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bjc610b4.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bjc610b6.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bjc610b7.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/bjc610b8.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/caption.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/cbjc600.ppd
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/cbjc800.ppd
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/cdj550.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/cdj690.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/cdj690ec.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/cid2code.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/dmp_init.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/dmp_site.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/dnj750c.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/dnj750m.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/docie.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/escp_24.src
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/font2pcl.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/ghostpdf.ppd
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/gs_ce_e.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/gs_il2_e.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/gs_kanji.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/gs_ksb_e.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/gs_l.xbm
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/gs_l.xpm
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/gs_l_m.xbm
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/gs_lgo_e.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/gs_lgx_e.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/gs_m.xbm
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/gs_m.xpm
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/gs_m_m.xbm
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/gs_s.xbm
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/gs_s.xpm
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/gs_s_m.xbm
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/gs_t.xbm
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/gs_t.xpm
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/gs_t_m.xbm
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/gs_wl1_e.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/gs_wl2_e.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/gs_wl5_e.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/gslp.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/gsnup.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/ht_ccsto.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/image-qa.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/jispaper.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/landscap.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/lines.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/mkcidfm.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/necp2x.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/necp2x6.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/pdf2dsc.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/pf2afm.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/pfbtopfa.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/ppath.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/pphs.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/prfont.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/printafm.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/ps2ai.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/ps2epsi.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/ras1.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/ras24.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/ras3.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/ras32.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/ras4.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/ras8m.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/rollconv.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/s400a1.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/s400b1.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/sharp.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/sipixa6.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/st640ih.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/st640ihg.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/st640p.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/st640pg.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/st640pl.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/st640plg.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stc.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stc1520h.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stc2.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stc200_h.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stc2_h.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stc2s_h.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stc300.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stc300bl.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stc300bm.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stc500p.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stc500ph.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stc600ih.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stc600p.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stc600pl.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stc640p.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stc740ih.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stc800ih.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stc800p.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stc800pl.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stc_h.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stc_l.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stcany.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stcany_h.upp
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stcinfo.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stcolor.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/stocht.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/traceimg.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/traceop.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/uninfo.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/viewcmyk.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/viewgif.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/viewjpeg.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/viewmiff.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/viewpbm.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/viewpcx.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/viewps2a.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/winmaps.ps
--rw-r--r-- root/root usr/share/ghostscript/9.24/lib/zeroline.ps
+drwxr-xr-x root/root usr/share/ghostscript/9.25/
+drwxr-xr-x root/root usr/share/ghostscript/9.25/lib/
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/PDFA_def.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/PDFX_def.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/PM760p.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/PM760pl.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/PM820p.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/PM820pl.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/Stc670p.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/Stc670pl.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/Stc680p.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/Stc680pl.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/Stc740p.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/Stc740pl.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/Stc760p.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/Stc760pl.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/Stc777p.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/Stc777pl.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/Stp720p.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/Stp720pl.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/Stp870p.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/Stp870pl.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/acctest.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/align.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bj8.rpd
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bj8gc12f.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bj8hg12f.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bj8oh06n.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bj8pa06n.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bj8pp12f.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bj8ts06n.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bjc6000a1.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bjc6000b1.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bjc610a0.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bjc610a1.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bjc610a2.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bjc610a3.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bjc610a4.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bjc610a5.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bjc610a6.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bjc610a7.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bjc610a8.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bjc610b1.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bjc610b2.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bjc610b3.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bjc610b4.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bjc610b6.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bjc610b7.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/bjc610b8.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/caption.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/cbjc600.ppd
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/cbjc800.ppd
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/cdj550.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/cdj690.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/cdj690ec.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/cid2code.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/dmp_init.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/dmp_site.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/dnj750c.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/dnj750m.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/docie.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/escp_24.src
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/font2pcl.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/ghostpdf.ppd
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/gs_ce_e.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/gs_il2_e.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/gs_kanji.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/gs_ksb_e.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/gs_l.xbm
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/gs_l.xpm
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/gs_l_m.xbm
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/gs_lgo_e.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/gs_lgx_e.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/gs_m.xbm
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/gs_m.xpm
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/gs_m_m.xbm
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/gs_s.xbm
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/gs_s.xpm
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/gs_s_m.xbm
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/gs_t.xbm
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/gs_t.xpm
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/gs_t_m.xbm
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/gs_wl1_e.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/gs_wl2_e.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/gs_wl5_e.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/gslp.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/gsnup.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/ht_ccsto.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/image-qa.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/jispaper.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/landscap.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/lines.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/mkcidfm.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/necp2x.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/necp2x6.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/pdf2dsc.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/pf2afm.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/pfbtopfa.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/ppath.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/pphs.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/prfont.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/printafm.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/ps2ai.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/ps2epsi.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/ras1.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/ras24.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/ras3.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/ras32.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/ras4.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/ras8m.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/rollconv.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/s400a1.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/s400b1.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/sharp.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/sipixa6.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/st640ih.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/st640ihg.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/st640p.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/st640pg.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/st640pl.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/st640plg.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stc.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stc1520h.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stc2.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stc200_h.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stc2_h.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stc2s_h.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stc300.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stc300bl.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stc300bm.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stc500p.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stc500ph.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stc600ih.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stc600p.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stc600pl.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stc640p.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stc740ih.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stc800ih.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stc800p.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stc800pl.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stc_h.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stc_l.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stcany.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stcany_h.upp
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stcinfo.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stcolor.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/stocht.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/traceimg.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/traceop.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/uninfo.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/viewcmyk.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/viewgif.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/viewjpeg.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/viewmiff.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/viewpbm.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/viewpcx.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/viewps2a.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/winmaps.ps
+-rw-r--r-- root/root usr/share/ghostscript/9.25/lib/zeroline.ps
drwxr-xr-x root/root usr/share/ghostscript/fonts/
-rw-r--r-- root/root usr/share/ghostscript/fonts/a010013l.afm
-rw-r--r-- root/root usr/share/ghostscript/fonts/a010013l.pfb
diff --git a/ghostscript/.signature b/ghostscript/.signature
index 10f4b1088..9aac3f05d 100644
--- a/ghostscript/.signature
+++ b/ghostscript/.signature
@@ -1,6 +1,6 @@
untrusted comment: verify with /etc/ports/opt.pub
-RWSE3ohX2g5d/edoe+ubjU7fYJ6a1yi4Mu4YoQfLu8dmqLvVJ13ND6VAjtMtXEGmvTdfCUV5zmGEsXsm0pQRs1X5hyBO3s+mzw0=
-SHA256 (Pkgfile) = ce9f00fb439be1ba149679f75e8a9718e60102c8472943e5b7a2b6c704f0a732
-SHA256 (.footprint) = 46ed8625b892dd4fa8323c77231f30734d691c82f8d98832f7e0738279aeb686
-SHA256 (ghostscript-9.24.tar.xz) = d44917df24979a05e0cb3916531928cc2adc91f5b17b419ee023d16ab31069d6
+RWSE3ohX2g5d/RVOHRiKH8RoRuv7SHRBjdlfv8kzq2dM303wt36QwDiklv1KpdZKd2fS/LlNfD7eyeYG7qezf4tOiMj3D3RL9wA=
+SHA256 (Pkgfile) = ff8c9a5bc51654efb4ec7bc60fa028836e466a8319148fa25c4b5ad9a6da31ef
+SHA256 (.footprint) = 70f6d9f3b901b21149c57fc2b6d387df2f051a340dfa0e63919e6f99332dc000
+SHA256 (ghostscript-9.25.tar.xz) = a2971a23bf15bbd9ddcd173141b15504e51ddc1d5a0a0144b00a6a8b14a62fed
SHA256 (ghostscript-fonts-std-8.11.tar.gz) = 0eb6f356119f2e49b2563210852e17f57f9dcc5755f350a69a46a0d641a0c401
diff --git a/ghostscript/Pkgfile b/ghostscript/Pkgfile
index 03066cea7..ed0d93700 100644
--- a/ghostscript/Pkgfile
+++ b/ghostscript/Pkgfile
@@ -4,7 +4,7 @@
# Depends on: util-linux, cups, fontconfig, xorg-libxt, xorg-libxext
name=ghostscript
-version=9.24
+version=9.25
release=1
source=(https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/down…
http://downloads.sourceforge.net/sourceforge/gs-fonts/$name-fonts-std-8.11.…)
1
0
commit 55bc6d38eb1d2f7adaf4c2537c7c09b7e2873ee1
Author: Juergen Daubert <jue(a)jue.li>
Date: Tue Sep 11 17:54:02 2018 +0200
[notify] libunbound: update to 1.8.0
ABI has been changed, rebuild of direct dependent ports
required. Run revdep after update.
diff --git a/libunbound/.footprint b/libunbound/.footprint
index 620093a6a..2495d92f7 100644
--- a/libunbound/.footprint
+++ b/libunbound/.footprint
@@ -4,9 +4,9 @@ drwxr-xr-x root/root usr/include/
drwxr-xr-x root/root usr/lib/
-rw-r--r-- root/root usr/lib/libunbound.a
-rw-r--r-- root/root usr/lib/libunbound.la
-lrwxrwxrwx root/root usr/lib/libunbound.so -> libunbound.so.2.5.11
-lrwxrwxrwx root/root usr/lib/libunbound.so.2 -> libunbound.so.2.5.11
--rwxr-xr-x root/root usr/lib/libunbound.so.2.5.11
+lrwxrwxrwx root/root usr/lib/libunbound.so -> libunbound.so.8.0.0
+lrwxrwxrwx root/root usr/lib/libunbound.so.8 -> libunbound.so.8.0.0
+-rwxr-xr-x root/root usr/lib/libunbound.so.8.0.0
drwxr-xr-x root/root usr/share/
drwxr-xr-x root/root usr/share/man/
drwxr-xr-x root/root usr/share/man/man3/
diff --git a/libunbound/.signature b/libunbound/.signature
index 914ecf2ea..167777de1 100644
--- a/libunbound/.signature
+++ b/libunbound/.signature
@@ -1,5 +1,5 @@
untrusted comment: verify with /etc/ports/opt.pub
-RWSE3ohX2g5d/Qv+E/qhllHLL1/uMyL0Bm4ou0bUztH8vOU6LKJqGTYIaGGz9rpYTytKx+oBAUvuWxwCtHTc6JVMmAPAdlARMA0=
-SHA256 (Pkgfile) = 58c30750627ff025e8916daa675f376e3c9a689c5d0264917e9634916fdc499c
-SHA256 (.footprint) = 4dfefde078cae11c14e8be6b393fade6d096b076e62319bda7758a033fa89956
-SHA256 (unbound-1.7.3.tar.gz) = c11de115d928a6b48b2165e0214402a7a7da313cd479203a7ce7a8b62cba602d
+RWSE3ohX2g5d/TYZ4nNci7rio/pVEumRG6OpBNAB5jiUgespyl/CY3iObRhTVc8F1+SskaXfNa1w8Zy6jsi3domkf1EMVTztUQ4=
+SHA256 (Pkgfile) = 40c78b2cbd7e9ca7592f0d9d2093c009802e6d3187de06604246ad5e6d24a11b
+SHA256 (.footprint) = 966404682b361ca72c69f1011bd0bee795a2a557aa97e320a647ffd16fefb0e8
+SHA256 (unbound-1.8.0.tar.gz) = 78f79d6d3b643fdcd74a14fc76542250da886c82f82bc55b51e189663d61b83f
diff --git a/libunbound/Pkgfile b/libunbound/Pkgfile
index 89507a99d..902745d84 100644
--- a/libunbound/Pkgfile
+++ b/libunbound/Pkgfile
@@ -4,7 +4,7 @@
# Depends on: expat openssl
name=libunbound
-version=1.7.3
+version=1.8.0
release=1
source=(https://unbound.net/downloads/unbound-$version.tar.gz)
1
0
ports/opt (3.5): [notify] pygtk: dependency change: pygobject and pycairo to python-gobject-compat and python-cairo, 2 patches applied upstream bugs: 623965 and 660216
by crux@crux.nu 17 Jan '19
by crux@crux.nu 17 Jan '19
17 Jan '19
commit c5c82dc1e2f2ddab757877c98517ca42d3af0db1
Author: Danny Rawlins <monster.romster(a)gmail.com>
Date: Fri Sep 28 18:44:15 2018 +1000
[notify] pygtk: dependency change: pygobject and pycairo to python-gobject-compat and python-cairo, 2 patches applied upstream bugs: 623965 and 660216
diff --git a/pygtk/.signature b/pygtk/.signature
index 30dc38d6a..c12b8e79a 100644
--- a/pygtk/.signature
+++ b/pygtk/.signature
@@ -1,5 +1,7 @@
untrusted comment: verify with /etc/ports/opt.pub
-RWSE3ohX2g5d/d1J5fM/hOFa+0t/QW/l1ACYpO5i8gQ9YbjJcWPfovEnWnyKkkhtKnoBr96AFDc5Ldsz+4Vn+Z5z6J83vS8Ahgs=
-SHA256 (Pkgfile) = 81c4bcaee9f3ac29fbdab63e67e7c693136dc3e5f9936ba651c42cdd1c967e0b
+RWSE3ohX2g5d/ZMLul6fGgLt6oO7NnXGLbpX26WcCJxVbHJKTAR5Smnw7b6RraAMKPxxk8Djzv1kQ4xrX2pYjM2j9TpZOlTaYQw=
+SHA256 (Pkgfile) = 7c4de2861c780673c3499f105df9677f45819eb5c1707956f70ac05cfa8a096a
SHA256 (.footprint) = 6d1e16b13d6a41f46564160687cc9ad0cbd71213381d505d806db4a03a26e561
SHA256 (pygtk-2.24.0.tar.bz2) = cd1c1ea265bd63ff669e92a2d3c2a88eb26bcd9e5363e0f82c896e649f206912
+SHA256 (python27.patch) = 39a30456cba055a452bb55c74ef1ff2f5f7bfaad22855b4dd569ab009b56b682
+SHA256 (fix-leaks-of-pango-objects.patch) = 0ca9e910e9bb88897089dd19752a419aa78de15463df766cb19a1d0c2dd45bcb
diff --git a/pygtk/Pkgfile b/pygtk/Pkgfile
index ac6d1588c..0fb71f7f7 100644
--- a/pygtk/Pkgfile
+++ b/pygtk/Pkgfile
@@ -1,18 +1,32 @@
-# Packager: Stoyan Zhekov, zhware at hotpop dot com
-# Maintainer: Jose V Beneyto, sepen at crux dot nu
# Description: set of bindings for the GTK widget set
-# URL: http://www.pygtk.org
-# Depends on: pygobject pycairo libglade
+# URL: http://www.pygtk.org/
+# Maintainer: Danny Rawlins, crux at romster dot me
+# Depends on: libglade python-gobject-compat python-cairo
name=pygtk
version=2.24.0
-release=1
-source=(http://ftp.gnome.org/pub/GNOME/sources/$name/${version::4}/$name-$version.tar.bz2)
+release=2
+source=(https://download.gnome.org/sources/$name/${version::4}/$name-$version.tar.bz2
+ python27.patch
+ fix-leaks-of-pango-objects.patch)
build() {
- cd $name-$version
- ./configure --prefix=/usr
- make
- make DESTDIR=$PKG install
- rm -rf $PKG/usr/share/gtk-doc
+ cd $name-$version
+
+ # https://bugzilla.gnome.org/show_bug.cgi?id=623965
+ patch -p1 -i $SRC/python27.patch
+
+ # https://bugzilla.gnome.org/show_bug.cgi?id=660216
+ patch -p1 -i $SRC/fix-leaks-of-pango-objects.patch
+
+ ./configure --prefix=/usr
+
+ sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
+
+ make
+ make DESTDIR=$PKG install
+
+ install -m 0644 gtk/gtk-extrafuncs.defs $PKG/usr/share/pygtk/2.0/defs/
+
+ rm -r $PKG/usr/share/gtk-doc
}
diff --git a/pygtk/fix-leaks-of-pango-objects.patch b/pygtk/fix-leaks-of-pango-objects.patch
new file mode 100644
index 000000000..c935dd6f2
--- /dev/null
+++ b/pygtk/fix-leaks-of-pango-objects.patch
@@ -0,0 +1,59 @@
+From eca72baa5616fbe4dbebea43c7e5940847dc5ab8 Mon Sep 17 00:00:00 2001
+From: "Owen W. Taylor" <otaylor(a)fishsoup.net>
+Date: Tue, 27 Sep 2011 00:17:52 -0400
+Subject: Fix leaks of Pango objects
+
+Gtk.PrintContext.create_pango_context()
+Gtk.PrintContext.create_pango_layout()
+pangocairo.CairoContext.create_layout()
+
+were leaking the objects they returned.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=660216
+
+diff --git a/gtk/gtk-2.10.defs b/gtk/gtk-2.10.defs
+index 69c7e0c..faa45e1 100644
+--- a/gtk/gtk-2.10.defs
++++ b/gtk/gtk-2.10.defs
+@@ -1388,12 +1388,14 @@
+ (define-method create_pango_context
+ (of-object "GtkPrintContext")
+ (c-name "gtk_print_context_create_pango_context")
++ (caller-owns-return #t)
+ (return-type "PangoContext*")
+ )
+
+ (define-method create_pango_layout
+ (of-object "GtkPrintContext")
+ (c-name "gtk_print_context_create_pango_layout")
++ (caller-owns-return #t)
+ (return-type "PangoLayout*")
+ )
+
+diff --git a/pangocairo.override b/pangocairo.override
+index bb923e6..5101107 100644
+--- a/pangocairo.override
++++ b/pangocairo.override
+@@ -118,11 +118,16 @@ _wrap_pango_cairo_update_context(PyGObject *self, PyObject *args, PyObject *kwar
+ static PyObject *
+ _wrap_pango_cairo_create_layout(PyGObject *self)
+ {
+- PangoLayout *ret;
++ PangoLayout *layout;
++ PyObject *ret;
+
+- ret = pango_cairo_create_layout(PycairoContext_GET(self));
++ layout = pango_cairo_create_layout(PycairoContext_GET(self));
+ /* pygobject_new handles NULL checking */
+- return pygobject_new((GObject *)ret);
++ ret = pygobject_new((GObject *)layout);
++ if (layout)
++ g_object_unref(layout);
++
++ return ret;
+ }
+
+ static PyObject *
+--
+cgit v0.10.2
+
diff --git a/pygtk/python27.patch b/pygtk/python27.patch
new file mode 100644
index 000000000..9bbe2b5ae
--- /dev/null
+++ b/pygtk/python27.patch
@@ -0,0 +1,50 @@
+diff --git a/gtk/gtkmodule.c b/gtk/gtkmodule.c
+index c0e1493..aa8cf10 100644
+--- a/gtk/gtkmodule.c
++++ b/gtk/gtkmodule.c
+@@ -227,8 +227,12 @@ init_gtk(void)
+ pygtk_add_stock_items(d);
+
+ /* extension API */
+- PyDict_SetItemString(d, "_PyGtk_API",
+- o=PyCObject_FromVoidPtr(&functions, NULL));
++#if PY_VERSION_HEX >= 0x02070000
++ o = PyCapsule_New(&functions, "gtk._gtk._PyGtk_API", NULL);
++#else
++ o = PyCObject_FromVoidPtr(&functions, NULL);
++#endif
++ PyDict_SetItemString(d, "_PyGtk_API", o);
+ Py_DECREF(o);
+
+ PyGtkDeprecationWarning = PyErr_NewException("gtk.GtkDeprecationWarning",
+diff --git a/gtk/pygtk.h b/gtk/pygtk.h
+index 573c3b9..e4c680f 100644
+--- a/gtk/pygtk.h
++++ b/gtk/pygtk.h
+@@ -60,6 +60,18 @@ struct _PyGtk_FunctionStruct *_PyGtk_API;
+
+
+ /* a function to initialise the pygtk functions */
++
++/* Python 2.7 introduced the PyCapsule API and deprecated the CObject API */
++#if PY_VERSION_HEX >= 0x02070000
++#define init_pygtk() G_STMT_START { \
++ void *capsule = PyCapsule_Import("gtk._gtk._PyGtk_API", 0); \
++ if (!capsule) { \
++ return; \
++ } \
++ _PyGtk_API = (struct _PyGtk_FunctionStruct*)capsule; \
++} G_STMT_END
++#else /* PY_VERSION_HEX */
++/* Python 2.6 and earlier use the CObject API */
+ #define init_pygtk() G_STMT_START { \
+ PyObject *pygtk = PyImport_ImportModule("gtk"); \
+ if (pygtk != NULL) { \
+@@ -79,6 +91,7 @@ struct _PyGtk_FunctionStruct *_PyGtk_API;
+ return; \
+ } \
+ } G_STMT_END
++#endif /* PY_VERSION_HEX */
+
+ #endif
+
1
0
ports/opt (3.5): [notify] python-gobject: 2.28.6 -> 3.30.1 renamed: pygobject -> python-gobject
by crux@crux.nu 17 Jan '19
by crux@crux.nu 17 Jan '19
17 Jan '19
commit 737e2de9e8a40db5ce87a91440cb81d323921de2
Author: Danny Rawlins <monster.romster(a)gmail.com>
Date: Thu Sep 27 23:55:29 2018 +1000
[notify] python-gobject: 2.28.6 -> 3.30.1 renamed: pygobject -> python-gobject
diff --git a/pygobject/.footprint b/pygobject/.footprint
deleted file mode 100644
index 0a1d64aad..000000000
--- a/pygobject/.footprint
+++ /dev/null
@@ -1,130 +0,0 @@
-drwxr-xr-x root/root usr/
-drwxr-xr-x root/root usr/bin/
--rwxr-xr-x root/root usr/bin/pygobject-codegen-2.0
-drwxr-xr-x root/root usr/include/
-drwxr-xr-x root/root usr/include/pygtk-2.0/
--rw-r--r-- root/root usr/include/pygtk-2.0/pyglib.h
--rw-r--r-- root/root usr/include/pygtk-2.0/pygobject.h
-drwxr-xr-x root/root usr/lib/
--rwxr-xr-x root/root usr/lib/libpyglib-2.0-python.la
-lrwxrwxrwx root/root usr/lib/libpyglib-2.0-python.so -> libpyglib-2.0-python.so.0.0.0
-lrwxrwxrwx root/root usr/lib/libpyglib-2.0-python.so.0 -> libpyglib-2.0-python.so.0.0.0
--rwxr-xr-x root/root usr/lib/libpyglib-2.0-python.so.0.0.0
-drwxr-xr-x root/root usr/lib/pkgconfig/
--rw-r--r-- root/root usr/lib/pkgconfig/pygobject-2.0.pc
-drwxr-xr-x root/root usr/lib/python2.7/
-drwxr-xr-x root/root usr/lib/python2.7/site-packages/
-drwxr-xr-x root/root usr/lib/python2.7/site-packages/glib/
--rw-r--r-- root/root usr/lib/python2.7/site-packages/glib/__init__.py
--rw-r--r-- root/root usr/lib/python2.7/site-packages/glib/__init__.pyc
--rw-r--r-- root/root usr/lib/python2.7/site-packages/glib/__init__.pyo
--rwxr-xr-x root/root usr/lib/python2.7/site-packages/glib/_glib.la
--rwxr-xr-x root/root usr/lib/python2.7/site-packages/glib/_glib.so
--rw-r--r-- root/root usr/lib/python2.7/site-packages/glib/option.py
--rw-r--r-- root/root usr/lib/python2.7/site-packages/glib/option.pyc
--rw-r--r-- root/root usr/lib/python2.7/site-packages/glib/option.pyo
-drwxr-xr-x root/root usr/lib/python2.7/site-packages/gobject/
--rw-r--r-- root/root usr/lib/python2.7/site-packages/gobject/__init__.py
--rw-r--r-- root/root usr/lib/python2.7/site-packages/gobject/__init__.pyc
--rw-r--r-- root/root usr/lib/python2.7/site-packages/gobject/__init__.pyo
--rwxr-xr-x root/root usr/lib/python2.7/site-packages/gobject/_gobject.la
--rwxr-xr-x root/root usr/lib/python2.7/site-packages/gobject/_gobject.so
--rw-r--r-- root/root usr/lib/python2.7/site-packages/gobject/constants.py
--rw-r--r-- root/root usr/lib/python2.7/site-packages/gobject/constants.pyc
--rw-r--r-- root/root usr/lib/python2.7/site-packages/gobject/constants.pyo
--rw-r--r-- root/root usr/lib/python2.7/site-packages/gobject/propertyhelper.py
--rw-r--r-- root/root usr/lib/python2.7/site-packages/gobject/propertyhelper.pyc
--rw-r--r-- root/root usr/lib/python2.7/site-packages/gobject/propertyhelper.pyo
-drwxr-xr-x root/root usr/lib/python2.7/site-packages/gtk-2.0/
--rw-r--r-- root/root usr/lib/python2.7/site-packages/gtk-2.0/dsextras.py
--rw-r--r-- root/root usr/lib/python2.7/site-packages/gtk-2.0/dsextras.pyc
--rw-r--r-- root/root usr/lib/python2.7/site-packages/gtk-2.0/dsextras.pyo
-drwxr-xr-x root/root usr/lib/python2.7/site-packages/gtk-2.0/gio/
--rw-r--r-- root/root usr/lib/python2.7/site-packages/gtk-2.0/gio/__init__.py
--rw-r--r-- root/root usr/lib/python2.7/site-packages/gtk-2.0/gio/__init__.pyc
--rw-r--r-- root/root usr/lib/python2.7/site-packages/gtk-2.0/gio/__init__.pyo
--rwxr-xr-x root/root usr/lib/python2.7/site-packages/gtk-2.0/gio/_gio.la
--rwxr-xr-x root/root usr/lib/python2.7/site-packages/gtk-2.0/gio/_gio.so
--rwxr-xr-x root/root usr/lib/python2.7/site-packages/gtk-2.0/gio/unix.la
--rwxr-xr-x root/root usr/lib/python2.7/site-packages/gtk-2.0/gio/unix.so
--rw-r--r-- root/root usr/lib/python2.7/site-packages/pygtk.pth
--rw-r--r-- root/root usr/lib/python2.7/site-packages/pygtk.py
--rw-r--r-- root/root usr/lib/python2.7/site-packages/pygtk.pyc
--rw-r--r-- root/root usr/lib/python2.7/site-packages/pygtk.pyo
-drwxr-xr-x root/root usr/share/
-drwxr-xr-x root/root usr/share/pygobject/
-drwxr-xr-x root/root usr/share/pygobject/2.0/
-drwxr-xr-x root/root usr/share/pygobject/2.0/codegen/
--rw-r--r-- root/root usr/share/pygobject/2.0/codegen/__init__.py
--rw-r--r-- root/root usr/share/pygobject/2.0/codegen/__init__.pyc
--rw-r--r-- root/root usr/share/pygobject/2.0/codegen/__init__.pyo
--rw-r--r-- root/root usr/share/pygobject/2.0/codegen/argtypes.py
--rw-r--r-- root/root usr/share/pygobject/2.0/codegen/argtypes.pyc
--rw-r--r-- root/root usr/share/pygobject/2.0/codegen/argtypes.pyo
--rwxr-xr-x root/root usr/share/pygobject/2.0/codegen/code-coverage.py
--rwxr-xr-x root/root usr/share/pygobject/2.0/codegen/codegen.py
--rwxr-xr-x root/root usr/share/pygobject/2.0/codegen/createdefs.py
--rw-r--r-- root/root usr/share/pygobject/2.0/codegen/definitions.py
--rw-r--r-- root/root usr/share/pygobject/2.0/codegen/definitions.pyc
--rw-r--r-- root/root usr/share/pygobject/2.0/codegen/definitions.pyo
--rwxr-xr-x root/root usr/share/pygobject/2.0/codegen/defsconvert.py
--rwxr-xr-x root/root usr/share/pygobject/2.0/codegen/defsgen.py
--rw-r--r-- root/root usr/share/pygobject/2.0/codegen/defsparser.py
--rw-r--r-- root/root usr/share/pygobject/2.0/codegen/defsparser.pyc
--rw-r--r-- root/root usr/share/pygobject/2.0/codegen/defsparser.pyo
--rw-r--r-- root/root usr/share/pygobject/2.0/codegen/docextract.py
--rw-r--r-- root/root usr/share/pygobject/2.0/codegen/docextract.pyc
--rw-r--r-- root/root usr/share/pygobject/2.0/codegen/docextract.pyo
--rwxr-xr-x root/root usr/share/pygobject/2.0/codegen/docextract_to_xml.py
--rwxr-xr-x root/root usr/share/pygobject/2.0/codegen/docgen.py
--rwxr-xr-x root/root usr/share/pygobject/2.0/codegen/h2def.py
--rwxr-xr-x root/root usr/share/pygobject/2.0/codegen/mergedefs.py
--rwxr-xr-x root/root usr/share/pygobject/2.0/codegen/missingdefs.py
--rwxr-xr-x root/root usr/share/pygobject/2.0/codegen/mkskel.py
--rw-r--r-- root/root usr/share/pygobject/2.0/codegen/override.py
--rw-r--r-- root/root usr/share/pygobject/2.0/codegen/override.pyc
--rw-r--r-- root/root usr/share/pygobject/2.0/codegen/override.pyo
--rw-r--r-- root/root usr/share/pygobject/2.0/codegen/reversewrapper.py
--rw-r--r-- root/root usr/share/pygobject/2.0/codegen/reversewrapper.pyc
--rw-r--r-- root/root usr/share/pygobject/2.0/codegen/reversewrapper.pyo
--rwxr-xr-x root/root usr/share/pygobject/2.0/codegen/scanvirtuals.py
--rwxr-xr-x root/root usr/share/pygobject/2.0/codegen/scmexpr.py
-drwxr-xr-x root/root usr/share/pygobject/2.0/defs/
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/gappinfo.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/gapplaunchcontext.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/gbufferedinputstream.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/gcancellable.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/gdatainputstream.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/gdrive.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/gfile.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/gfileattribute.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/gfileenumerator.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/gfileinfo.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/gfileinputstream.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/gfileiostream.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/gfileoutputstream.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/gicon.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/ginputstream.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/gio-types.defs
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/gio.defs
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/gio.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/giostream.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/gmemoryinputstream.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/gmemoryoutputstream.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/gmount.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/goutputstream.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/gresolver.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/gsocket.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/gvolume.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/gvolumemonitor.override
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/unix-types.defs
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/unix.defs
--rw-r--r-- root/root usr/share/pygobject/2.0/defs/unix.override
-drwxr-xr-x root/root usr/share/pygobject/xsl/
--rw-r--r-- root/root usr/share/pygobject/xsl/common.xsl
--rw-r--r-- root/root usr/share/pygobject/xsl/devhelp.xsl
--rw-r--r-- root/root usr/share/pygobject/xsl/fixxref.py
--rw-r--r-- root/root usr/share/pygobject/xsl/html.xsl
--rw-r--r-- root/root usr/share/pygobject/xsl/pdf-style.xsl
--rw-r--r-- root/root usr/share/pygobject/xsl/pdf.xsl
--rw-r--r-- root/root usr/share/pygobject/xsl/ref-html-style.xsl
diff --git a/pygobject/.signature b/pygobject/.signature
deleted file mode 100644
index 861dd0c40..000000000
--- a/pygobject/.signature
+++ /dev/null
@@ -1,5 +0,0 @@
-untrusted comment: verify with /etc/ports/opt.pub
-RWSE3ohX2g5d/UaC3GzbMOJZ+RJH+fLKBnA6k9qPBMMWdvUmCg63UvgtatLI9LZu7YVF/gFNKt9dWAPp8yR4In+iR67UugYuhww=
-SHA256 (Pkgfile) = 29086b6e02d5f881193914052c07080e7e1b9e167cf7edd994e154bd220f141a
-SHA256 (.footprint) = c7389c0bccc982df45610a1520eda254a8c05a6757708050c3f6610099dd11dc
-SHA256 (pygobject-2.28.6.tar.xz) = fb8a1d4f665130a125011659bd347c7339c944232163dbb9a34fd0686577adb8
diff --git a/pygobject/Pkgfile b/pygobject/Pkgfile
deleted file mode 100644
index de4a7c567..000000000
--- a/pygobject/Pkgfile
+++ /dev/null
@@ -1,20 +0,0 @@
-# Description: Python bindings for GObject
-# URL: http://www.pygtk.org
-# Maintainer: Jose V Beneyto, sepen at crux dot nu
-# Packager: Simone Rota, sip at varlock dot com
-# Depends on: gtk
-
-name=pygobject
-version=2.28.6
-release=1
-source=(http://ftp.gnome.org/pub/GNOME/sources/$name/${version::4}/$name-$version.tar.xz)
-
-build() {
- cd $name-$version
-
- ./configure --prefix=/usr --disable-introspection
- make
- make DESTDIR=$PKG install
-
- rm -rf $PKG/usr/share/gtk-doc
-}
diff --git a/python-gobject/.footprint b/python-gobject/.footprint
new file mode 100644
index 000000000..9aaf3e9ab
--- /dev/null
+++ b/python-gobject/.footprint
@@ -0,0 +1,95 @@
+drwxr-xr-x root/root usr/
+drwxr-xr-x root/root usr/lib/
+drwxr-xr-x root/root usr/lib/python2.7/
+drwxr-xr-x root/root usr/lib/python2.7/site-packages/
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/PyGObject-3.30.1.egg-info
+drwxr-xr-x root/root usr/lib/python2.7/site-packages/gi/
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/__init__.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/__init__.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/__init__.pyo
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/_compat.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/_compat.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/_compat.pyo
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/_constants.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/_constants.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/_constants.pyo
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/_error.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/_error.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/_error.pyo
+-rwxr-xr-x root/root usr/lib/python2.7/site-packages/gi/_gi.so
+-rwxr-xr-x root/root usr/lib/python2.7/site-packages/gi/_gi_cairo.so
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/_gtktemplate.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/_gtktemplate.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/_gtktemplate.pyo
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/_option.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/_option.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/_option.pyo
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/_ossighelper.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/_ossighelper.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/_ossighelper.pyo
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/_propertyhelper.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/_propertyhelper.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/_propertyhelper.pyo
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/_signalhelper.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/_signalhelper.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/_signalhelper.pyo
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/docstring.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/docstring.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/docstring.pyo
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/importer.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/importer.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/importer.pyo
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/module.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/module.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/module.pyo
+drwxr-xr-x root/root usr/lib/python2.7/site-packages/gi/overrides/
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/GIMarshallingTests.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/GIMarshallingTests.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/GIMarshallingTests.pyo
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/GLib.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/GLib.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/GLib.pyo
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/GObject.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/GObject.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/GObject.pyo
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/Gdk.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/Gdk.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/Gdk.pyo
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/GdkPixbuf.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/GdkPixbuf.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/GdkPixbuf.pyo
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/Gio.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/Gio.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/Gio.pyo
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/Gtk.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/Gtk.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/Gtk.pyo
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/Pango.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/Pango.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/Pango.pyo
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/__init__.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/__init__.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/__init__.pyo
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/keysyms.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/keysyms.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/overrides/keysyms.pyo
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/pygtkcompat.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/pygtkcompat.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/pygtkcompat.pyo
+drwxr-xr-x root/root usr/lib/python2.7/site-packages/gi/repository/
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/repository/__init__.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/repository/__init__.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/repository/__init__.pyo
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/types.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/types.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/gi/types.pyo
+drwxr-xr-x root/root usr/lib/python2.7/site-packages/pygtkcompat/
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/pygtkcompat/__init__.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/pygtkcompat/__init__.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/pygtkcompat/__init__.pyo
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/pygtkcompat/generictreemodel.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/pygtkcompat/generictreemodel.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/pygtkcompat/generictreemodel.pyo
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/pygtkcompat/pygtkcompat.py
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/pygtkcompat/pygtkcompat.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/pygtkcompat/pygtkcompat.pyo
diff --git a/python-gobject/.signature b/python-gobject/.signature
new file mode 100644
index 000000000..07ef59d1b
--- /dev/null
+++ b/python-gobject/.signature
@@ -0,0 +1,5 @@
+untrusted comment: verify with /etc/ports/opt.pub
+RWSE3ohX2g5d/bLi9kk530q/D6eOCGkw1oTFC1uaqZFiEYyX398swN1f2HVzmoITXTNYmhYMOv5bv1n/BJ1JFK2ryZkL02lxIgE=
+SHA256 (Pkgfile) = 6ab8693d98558db571a76798f0ca2a57dbc01b56dcc707efc7c8a15c4244e5b2
+SHA256 (.footprint) = 5298c40bfc4798720247d1b1cebc175dee8584434ff8be528153d15db4fb9723
+SHA256 (pygobject-3.30.1.tar.xz) = e1335b70e36885bf1ae207ec1283a369b8fc3e080688046c1edb5a676edc11ce
diff --git a/python-gobject/Pkgfile b/python-gobject/Pkgfile
new file mode 100644
index 000000000..e0d4b1600
--- /dev/null
+++ b/python-gobject/Pkgfile
@@ -0,0 +1,20 @@
+# Description: Python bindings for GLib/GObject/GIO/GTK+/GStreamer
+# URL: https://wiki.gnome.org/Projects/PyGObject
+# Maintainer: Danny Rawlins, crux at romster dot me
+# Depends on: gobject-introspection python-cairo
+
+name=python-gobject
+version=3.30.1
+release=1
+source=(https://ftp.gnome.org/pub/GNOME/sources/pygobject/${version::4}/pygobject-$version.tar.xz)
+
+build() {
+ meson pygobject-$version build --prefix /usr -D python=/usr/bin/python
+ ninja -C build -j ${JOBS-1}
+ DESTDIR=$PKG meson install -C build
+
+ /usr/bin/python -m compileall -d /usr/lib $PKG/usr/lib
+ /usr/bin/python -O -m compileall -d /usr/lib $PKG/usr/lib
+
+ rm -r $PKG/usr/{include,lib/pkgconfig}
+}
1
0
ports/opt (3.5): [notify] python-cairo: 1.10.0 -> 1.17.1 port rename: pycairo -> python-cairo
by crux@crux.nu 17 Jan '19
by crux@crux.nu 17 Jan '19
17 Jan '19
commit a4290e5c7ded78c07d005e1f01e06bb933c2c6ca
Author: Danny Rawlins <monster.romster(a)gmail.com>
Date: Thu Sep 27 21:29:50 2018 +1000
[notify] python-cairo: 1.10.0 -> 1.17.1 port rename: pycairo -> python-cairo
diff --git a/pycairo/.signature b/pycairo/.signature
deleted file mode 100644
index 080fc4dec..000000000
--- a/pycairo/.signature
+++ /dev/null
@@ -1,5 +0,0 @@
-untrusted comment: verify with /etc/ports/opt.pub
-RWSE3ohX2g5d/T+r5O11ad7tATTnV8vLoZIcH1oLGpq1iLvyhstOeJQbC+u+SXekrn1K937+AoGS+e3V+5jJXYn3RWyuqYPtHg4=
-SHA256 (Pkgfile) = 3e5e610a1faea102b155d48d119c6efaeb10614b68ba1c636937a05b50676328
-SHA256 (.footprint) = 020383ddcabe28e4105da51c2d05703c48fa7fc00c38d5514dc3ff5b6f7476fe
-SHA256 (py2cairo-1.10.0.tar.bz2) = d30439f06c2ec1a39e27464c6c828b6eface3b22ee17b2de05dc409e429a7431
diff --git a/pycairo/Pkgfile b/pycairo/Pkgfile
deleted file mode 100644
index da35c9457..000000000
--- a/pycairo/Pkgfile
+++ /dev/null
@@ -1,19 +0,0 @@
-# Description: A set of python bindings for cairo
-# URL: http://cairographics.org/pycairo
-# Maintainer: Jose V Beneyto, sepen at crux dot nu
-# Packager: Simone Rota, sip at crux dot nu
-# Depends on: cairo
-
-name=pycairo
-version=1.10.0
-release=1
-source=(http://cairographics.org/releases/py2cairo-$version.tar.bz2)
-
-build() {
- cd py2cairo-$version
-
- ./waf configure --prefix=/usr
-
- ./waf build
- ./waf install --destdir=$PKG
-}
diff --git a/pycairo/.footprint b/python-cairo/.footprint
similarity index 65%
rename from pycairo/.footprint
rename to python-cairo/.footprint
index 1b66d9cfc..2578c35ed 100644
--- a/pycairo/.footprint
+++ b/python-cairo/.footprint
@@ -10,5 +10,10 @@ drwxr-xr-x root/root usr/lib/python2.7/site-packages/
drwxr-xr-x root/root usr/lib/python2.7/site-packages/cairo/
-rw-r--r-- root/root usr/lib/python2.7/site-packages/cairo/__init__.py
-rw-r--r-- root/root usr/lib/python2.7/site-packages/cairo/__init__.pyc
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/cairo/__init__.pyi
-rw-r--r-- root/root usr/lib/python2.7/site-packages/cairo/__init__.pyo
-rwxr-xr-x root/root usr/lib/python2.7/site-packages/cairo/_cairo.so
+drwxr-xr-x root/root usr/lib/python2.7/site-packages/cairo/include/
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/cairo/include/pycairo.h
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/cairo/py.typed (EMPTY)
+-rw-r--r-- root/root usr/lib/python2.7/site-packages/pycairo-1.17.1-py2.7.egg-info
diff --git a/python-cairo/.signature b/python-cairo/.signature
new file mode 100644
index 000000000..6ca3051b4
--- /dev/null
+++ b/python-cairo/.signature
@@ -0,0 +1,5 @@
+untrusted comment: verify with /etc/ports/opt.pub
+RWSE3ohX2g5d/VvKv9WQnu9zOaRrGiNNUFmI8olCo5rKJUTxWT6Tnf6Xao8oUZgdWX82xhRCKskh5U3pSm5WDJFjqtHDBOpIxQ0=
+SHA256 (Pkgfile) = 331c4e20b26dccee1594bd357d5c40c014d283ca828a439fab07fd7490416e10
+SHA256 (.footprint) = d0d95eda4c522a4ef77f95b982dd2000c40756364d9b5d3bf5a271bd198bdb43
+SHA256 (pycairo-1.17.1.tar.gz) = 0f0a35ec923d87bc495f6753b1e540fd046d95db56a35250c44089fbce03b698
diff --git a/python-cairo/Pkgfile b/python-cairo/Pkgfile
new file mode 100644
index 000000000..b09b5ebc8
--- /dev/null
+++ b/python-cairo/Pkgfile
@@ -0,0 +1,16 @@
+# Description: A set of python bindings for cairo.
+# URL: https://pypi.org/project/pycairo/
+# Maintainer: Danny Rawlins, crux at romster dot me
+# Depends on: cairo
+
+name=python-cairo
+version=1.17.1
+release=1
+source=(https://github.com/pygobject/pycairo/releases/download/v$version/pycairo-$version.tar.gz)
+
+build() {
+ cd pycairo-$version
+
+ /usr/bin/python setup.py build
+ /usr/bin/python setup.py install --skip-build --root=$PKG --optimize=1
+}
1
0