diff options
-rw-r--r-- | ChangeLog.rss | 27 | ||||
-rw-r--r-- | ChangeLog.txt | 15 | ||||
-rw-r--r-- | FILELIST.TXT | 205 | ||||
-rwxr-xr-x | recompress.sh | 3 | ||||
-rwxr-xr-x | source/a/glibc-zoneinfo/glibc-zoneinfo.SlackBuild | 2 | ||||
-rwxr-xr-x | source/l/harfbuzz/harfbuzz.SlackBuild | 2 | ||||
-rwxr-xr-x | source/l/v4l-utils/v4l-utils.SlackBuild | 7 | ||||
-rw-r--r-- | source/l/v4l-utils/v4l-utils.glibc228.diff | 32 | ||||
-rwxr-xr-x | source/n/dnsmasq/dnsmasq.SlackBuild | 2 | ||||
-rwxr-xr-x | source/n/openssh/openssh.SlackBuild | 6 | ||||
-rw-r--r-- | source/n/openssh/openssh.no.openssl.version.check.diff | 12 | ||||
-rw-r--r-- | source/n/openssh/openssl-1.1.0.patch | 1951 | ||||
-rw-r--r-- | source/x/x11/build/xkeyboard-config | 2 |
13 files changed, 149 insertions, 2117 deletions
diff --git a/ChangeLog.rss b/ChangeLog.rss index 1afd55105..ffe5c30c6 100644 --- a/ChangeLog.rss +++ b/ChangeLog.rss @@ -11,10 +11,33 @@ <description>Tracking Slackware development in git.</description> <language>en-us</language> <id xmlns="http://www.w3.org/2005/Atom">urn:uuid:c964f45e-6732-11e8-bbe5-107b4450212f</id> - <pubDate>Fri, 19 Oct 2018 04:05:37 GMT</pubDate> - <lastBuildDate>Fri, 19 Oct 2018 16:00:30 GMT</lastBuildDate> + <pubDate>Fri, 19 Oct 2018 19:59:54 GMT</pubDate> + <lastBuildDate>Sat, 20 Oct 2018 07:00:29 GMT</lastBuildDate> <generator>maintain_current_git.sh v 1.10</generator> <item> + <title>Fri, 19 Oct 2018 19:59:54 GMT</title> + <pubDate>Fri, 19 Oct 2018 19:59:54 GMT</pubDate> + <link>https://git.slackware.nl/current/tag/?h=20181019195954</link> + <guid isPermaLink="false">20181019195954</guid> + <description> + <![CDATA[<pre> +a/file-5.35-x86_64-1.txz: Upgraded. +a/glibc-zoneinfo-2018f-noarch-1.txz: Upgraded. +a/kernel-firmware-20181018_d877533-noarch-1.txz: Upgraded. +ap/ksh93-20181018_89d7b802-x86_64-1.txz: Upgraded. +l/harfbuzz-2.0.0-x86_64-1.txz: Upgraded. +l/libopusenc-0.2.1-x86_64-1.txz: Upgraded. +l/opus-1.3-x86_64-1.txz: Upgraded. +l/v4l-utils-1.16.1-x86_64-1.txz: Upgraded. +n/NetworkManager-1.14.2-x86_64-1.txz: Upgraded. +n/dnsmasq-2.80-x86_64-1.txz: Upgraded. +n/openssh-7.9p1-x86_64-1.txz: Upgraded. +x/mesa-18.2.3-x86_64-1.txz: Upgraded. +x/xkeyboard-config-2.25-noarch-1.txz: Upgraded. + </pre>]]> + </description> + </item> + <item> <title>Fri, 19 Oct 2018 04:05:37 GMT</title> <pubDate>Fri, 19 Oct 2018 04:05:37 GMT</pubDate> <link>https://git.slackware.nl/current/tag/?h=20181019040537</link> diff --git a/ChangeLog.txt b/ChangeLog.txt index 091a9c38c..c85680356 100644 --- a/ChangeLog.txt +++ b/ChangeLog.txt @@ -1,3 +1,18 @@ +Fri Oct 19 19:59:54 UTC 2018 +a/file-5.35-x86_64-1.txz: Upgraded. +a/glibc-zoneinfo-2018f-noarch-1.txz: Upgraded. +a/kernel-firmware-20181018_d877533-noarch-1.txz: Upgraded. +ap/ksh93-20181018_89d7b802-x86_64-1.txz: Upgraded. +l/harfbuzz-2.0.0-x86_64-1.txz: Upgraded. +l/libopusenc-0.2.1-x86_64-1.txz: Upgraded. +l/opus-1.3-x86_64-1.txz: Upgraded. +l/v4l-utils-1.16.1-x86_64-1.txz: Upgraded. +n/NetworkManager-1.14.2-x86_64-1.txz: Upgraded. +n/dnsmasq-2.80-x86_64-1.txz: Upgraded. +n/openssh-7.9p1-x86_64-1.txz: Upgraded. +x/mesa-18.2.3-x86_64-1.txz: Upgraded. +x/xkeyboard-config-2.25-noarch-1.txz: Upgraded. ++--------------------------+ Fri Oct 19 04:05:37 UTC 2018 a/kernel-generic-4.14.77-x86_64-1.txz: Upgraded. a/kernel-huge-4.14.77-x86_64-1.txz: Upgraded. diff --git a/FILELIST.TXT b/FILELIST.TXT index eceed668d..b8b1e7e44 100644 --- a/FILELIST.TXT +++ b/FILELIST.TXT @@ -1,20 +1,20 @@ -Fri Oct 19 04:17:21 UTC 2018 +Fri Oct 19 20:22:40 UTC 2018 Here is the file list for this directory. If you are using a mirror site and find missing or extra files in the disk subdirectories, please have the archive administrator refresh the mirror. -drwxr-xr-x 12 root root 4096 2018-10-19 04:05 . +drwxr-xr-x 12 root root 4096 2018-10-19 19:59 . -rw-r--r-- 1 root root 10064 2016-06-30 18:39 ./ANNOUNCE.14_2 -rw-r--r-- 1 root root 13556 2018-09-07 19:42 ./CHANGES_AND_HINTS.TXT --rw-r--r-- 1 root root 904225 2018-10-17 19:54 ./CHECKSUMS.md5 --rw-r--r-- 1 root root 163 2018-10-17 19:54 ./CHECKSUMS.md5.asc +-rw-r--r-- 1 root root 904225 2018-10-19 04:17 ./CHECKSUMS.md5 +-rw-r--r-- 1 root root 163 2018-10-19 04:17 ./CHECKSUMS.md5.asc -rw-r--r-- 1 root root 17976 1994-06-10 02:28 ./COPYING -rw-r--r-- 1 root root 35147 2007-06-30 04:21 ./COPYING3 -rw-r--r-- 1 root root 19573 2016-06-23 20:08 ./COPYRIGHT.TXT -rw-r--r-- 1 root root 616 2006-10-02 04:37 ./CRYPTO_NOTICE.TXT --rw-r--r-- 1 root root 495315 2018-10-19 04:05 ./ChangeLog.txt +-rw-r--r-- 1 root root 495954 2018-10-19 19:59 ./ChangeLog.txt drwxr-xr-x 3 root root 4096 2013-03-20 22:17 ./EFI drwxr-xr-x 2 root root 4096 2018-10-19 04:05 ./EFI/BOOT -rw-r--r-- 1 root root 1253376 2018-02-24 20:49 ./EFI/BOOT/bootx64.efi @@ -25,9 +25,9 @@ drwxr-xr-x 2 root root 4096 2018-10-19 04:05 ./EFI/BOOT -rwxr-xr-x 1 root root 2494 2018-02-24 20:49 ./EFI/BOOT/make-grub.sh -rw-r--r-- 1 root root 10722 2013-09-21 19:02 ./EFI/BOOT/osdetect.cfg -rw-r--r-- 1 root root 1273 2013-08-12 21:08 ./EFI/BOOT/tools.cfg --rw-r--r-- 1 root root 1190333 2018-10-17 19:54 ./FILELIST.TXT +-rw-r--r-- 1 root root 1190333 2018-10-19 04:17 ./FILELIST.TXT -rw-r--r-- 1 root root 1572 2012-08-29 18:27 ./GPG-KEY --rw-r--r-- 1 root root 727904 2018-10-19 04:15 ./PACKAGES.TXT +-rw-r--r-- 1 root root 727902 2018-10-19 20:20 ./PACKAGES.TXT -rw-r--r-- 1 root root 8564 2016-06-28 21:33 ./README.TXT -rw-r--r-- 1 root root 3634 2018-10-19 02:57 ./README.initrd -rw-r--r-- 1 root root 34412 2017-12-01 17:44 ./README_CRYPT.TXT @@ -748,13 +748,13 @@ drwxr-xr-x 2 root root 4096 2012-09-20 18:06 ./patches -rw-r--r-- 1 root root 575 2012-09-20 18:06 ./patches/FILE_LIST -rw-r--r-- 1 root root 14 2012-09-20 18:06 ./patches/MANIFEST.bz2 -rw-r--r-- 1 root root 224 2012-09-20 18:06 ./patches/PACKAGES.TXT -drwxr-xr-x 18 root root 4096 2018-10-19 04:15 ./slackware64 --rw-r--r-- 1 root root 289065 2018-10-19 04:15 ./slackware64/CHECKSUMS.md5 --rw-r--r-- 1 root root 163 2018-10-19 04:15 ./slackware64/CHECKSUMS.md5.asc --rw-r--r-- 1 root root 360119 2018-10-19 04:13 ./slackware64/FILE_LIST --rw-r--r-- 1 root root 3609139 2018-10-19 04:13 ./slackware64/MANIFEST.bz2 +drwxr-xr-x 18 root root 4096 2018-10-19 20:20 ./slackware64 +-rw-r--r-- 1 root root 289059 2018-10-19 20:20 ./slackware64/CHECKSUMS.md5 +-rw-r--r-- 1 root root 163 2018-10-19 20:20 ./slackware64/CHECKSUMS.md5.asc +-rw-r--r-- 1 root root 360113 2018-10-19 20:17 ./slackware64/FILE_LIST +-rw-r--r-- 1 root root 3593956 2018-10-19 20:18 ./slackware64/MANIFEST.bz2 lrwxrwxrwx 1 root root 15 2009-08-23 23:34 ./slackware64/PACKAGES.TXT -> ../PACKAGES.TXT -drwxr-xr-x 2 root root 28672 2018-10-19 04:12 ./slackware64/a +drwxr-xr-x 2 root root 28672 2018-10-19 20:17 ./slackware64/a -rw-r--r-- 1 root root 327 2018-06-24 18:44 ./slackware64/a/aaa_base-14.2-x86_64-5.txt -rw-r--r-- 1 root root 10820 2018-06-24 18:44 ./slackware64/a/aaa_base-14.2-x86_64-5.txz -rw-r--r-- 1 root root 163 2018-06-24 18:44 ./slackware64/a/aaa_base-14.2-x86_64-5.txz.asc @@ -836,9 +836,9 @@ drwxr-xr-x 2 root root 28672 2018-10-19 04:12 ./slackware64/a -rw-r--r-- 1 root root 510 2018-06-25 01:22 ./slackware64/a/eudev-3.2.5-x86_64-4.txt -rw-r--r-- 1 root root 975740 2018-06-25 01:22 ./slackware64/a/eudev-3.2.5-x86_64-4.txz -rw-r--r-- 1 root root 163 2018-06-25 01:22 ./slackware64/a/eudev-3.2.5-x86_64-4.txz.asc --rw-r--r-- 1 root root 271 2018-07-26 03:51 ./slackware64/a/file-5.34-x86_64-1.txt --rw-r--r-- 1 root root 339492 2018-07-26 03:51 ./slackware64/a/file-5.34-x86_64-1.txz --rw-r--r-- 1 root root 163 2018-07-26 03:51 ./slackware64/a/file-5.34-x86_64-1.txz.asc +-rw-r--r-- 1 root root 271 2018-10-19 18:30 ./slackware64/a/file-5.35-x86_64-1.txt +-rw-r--r-- 1 root root 344116 2018-10-19 18:30 ./slackware64/a/file-5.35-x86_64-1.txz +-rw-r--r-- 1 root root 163 2018-10-19 18:30 ./slackware64/a/file-5.35-x86_64-1.txz.asc -rw-r--r-- 1 root root 366 2018-08-22 23:20 ./slackware64/a/findutils-4.6.0-x86_64-1.txt -rw-r--r-- 1 root root 467152 2018-08-22 23:20 ./slackware64/a/findutils-4.6.0-x86_64-1.txz -rw-r--r-- 1 root root 163 2018-08-22 23:20 ./slackware64/a/findutils-4.6.0-x86_64-1.txz.asc @@ -860,9 +860,9 @@ drwxr-xr-x 2 root root 28672 2018-10-19 04:12 ./slackware64/a -rw-r--r-- 1 root root 323 2018-08-03 22:27 ./slackware64/a/glibc-solibs-2.28-x86_64-2.txt -rw-r--r-- 1 root root 2807428 2018-08-03 22:27 ./slackware64/a/glibc-solibs-2.28-x86_64-2.txz -rw-r--r-- 1 root root 163 2018-08-03 22:27 ./slackware64/a/glibc-solibs-2.28-x86_64-2.txz.asc --rw-r--r-- 1 root root 502 2018-06-14 04:54 ./slackware64/a/glibc-zoneinfo-2018e-noarch-3.txt --rw-r--r-- 1 root root 193896 2018-06-14 04:54 ./slackware64/a/glibc-zoneinfo-2018e-noarch-3.txz --rw-r--r-- 1 root root 163 2018-06-14 04:54 ./slackware64/a/glibc-zoneinfo-2018e-noarch-3.txz.asc +-rw-r--r-- 1 root root 502 2018-10-19 17:33 ./slackware64/a/glibc-zoneinfo-2018f-noarch-1.txt +-rw-r--r-- 1 root root 195996 2018-10-19 17:33 ./slackware64/a/glibc-zoneinfo-2018f-noarch-1.txz +-rw-r--r-- 1 root root 163 2018-10-19 17:33 ./slackware64/a/glibc-zoneinfo-2018f-noarch-1.txz.asc -rw-r--r-- 1 root root 324 2018-04-28 19:24 ./slackware64/a/gpm-1.20.7-x86_64-7.txt -rw-r--r-- 1 root root 165620 2018-04-28 19:24 ./slackware64/a/gpm-1.20.7-x86_64-7.txz -rw-r--r-- 1 root root 163 2018-04-28 19:24 ./slackware64/a/gpm-1.20.7-x86_64-7.txz.asc @@ -904,9 +904,9 @@ drwxr-xr-x 2 root root 28672 2018-10-19 04:12 ./slackware64/a -rw-r--r-- 1 root root 461 2018-04-13 13:06 ./slackware64/a/kbd-1.15.3-x86_64-4.txt -rw-r--r-- 1 root root 1144600 2018-04-13 13:06 ./slackware64/a/kbd-1.15.3-x86_64-4.txz -rw-r--r-- 1 root root 163 2018-04-13 13:06 ./slackware64/a/kbd-1.15.3-x86_64-4.txz.asc --rw-r--r-- 1 root root 422 2018-10-17 19:29 ./slackware64/a/kernel-firmware-20181017_de9cefa-noarch-1.txt --rw-r--r-- 1 root root 74857592 2018-10-17 19:29 ./slackware64/a/kernel-firmware-20181017_de9cefa-noarch-1.txz --rw-r--r-- 1 root root 163 2018-10-17 19:29 ./slackware64/a/kernel-firmware-20181017_de9cefa-noarch-1.txz.asc +-rw-r--r-- 1 root root 422 2018-10-19 18:57 ./slackware64/a/kernel-firmware-20181018_d877533-noarch-1.txt +-rw-r--r-- 1 root root 74841628 2018-10-19 18:57 ./slackware64/a/kernel-firmware-20181018_d877533-noarch-1.txz +-rw-r--r-- 1 root root 163 2018-10-19 18:57 ./slackware64/a/kernel-firmware-20181018_d877533-noarch-1.txz.asc -rw-r--r-- 1 root root 624 2018-10-19 00:20 ./slackware64/a/kernel-generic-4.14.77-x86_64-1.txt -rw-r--r-- 1 root root 6053472 2018-10-19 00:20 ./slackware64/a/kernel-generic-4.14.77-x86_64-1.txz -rw-r--r-- 1 root root 163 2018-10-19 00:20 ./slackware64/a/kernel-generic-4.14.77-x86_64-1.txz.asc @@ -1102,7 +1102,7 @@ drwxr-xr-x 2 root root 28672 2018-10-19 04:12 ./slackware64/a -rw-r--r-- 1 root root 540 2018-04-13 13:15 ./slackware64/a/zoo-2.10_22-x86_64-2.txt -rw-r--r-- 1 root root 56156 2018-04-13 13:15 ./slackware64/a/zoo-2.10_22-x86_64-2.txz -rw-r--r-- 1 root root 163 2018-04-13 13:15 ./slackware64/a/zoo-2.10_22-x86_64-2.txz.asc -drwxr-xr-x 2 root root 20480 2018-10-17 19:49 ./slackware64/ap +drwxr-xr-x 2 root root 20480 2018-10-19 20:17 ./slackware64/ap -rw-r--r-- 1 root root 291 2018-04-13 13:17 ./slackware64/ap/a2ps-4.14-x86_64-7.txt -rw-r--r-- 1 root root 694880 2018-04-13 13:17 ./slackware64/ap/a2ps-4.14-x86_64-7.txz -rw-r--r-- 1 root root 163 2018-04-13 13:17 ./slackware64/ap/a2ps-4.14-x86_64-7.txz.asc @@ -1210,9 +1210,9 @@ drwxr-xr-x 2 root root 20480 2018-10-17 19:49 ./slackware64/ap -rw-r--r-- 1 root root 336 2018-08-19 18:13 ./slackware64/ap/jove-4.16.0.73-x86_64-6.txt -rw-r--r-- 1 root root 164544 2018-08-19 18:13 ./slackware64/ap/jove-4.16.0.73-x86_64-6.txz -rw-r--r-- 1 root root 163 2018-08-19 18:13 ./slackware64/ap/jove-4.16.0.73-x86_64-6.txz.asc --rw-r--r-- 1 root root 538 2018-04-15 17:05 ./slackware64/ap/ksh93-20180412_71e6fdad-x86_64-1.txt --rw-r--r-- 1 root root 750528 2018-04-15 17:05 ./slackware64/ap/ksh93-20180412_71e6fdad-x86_64-1.txz --rw-r--r-- 1 root root 163 2018-04-15 17:05 ./slackware64/ap/ksh93-20180412_71e6fdad-x86_64-1.txz.asc +-rw-r--r-- 1 root root 538 2018-10-19 18:19 ./slackware64/ap/ksh93-20181018_89d7b802-x86_64-1.txt +-rw-r--r-- 1 root root 687760 2018-10-19 18:19 ./slackware64/ap/ksh93-20181018_89d7b802-x86_64-1.txz +-rw-r--r-- 1 root root 163 2018-10-19 18:19 ./slackware64/ap/ksh93-20181018_89d7b802-x86_64-1.txz.asc -rw-r--r-- 1 root root 316 2018-04-13 13:23 ./slackware64/ap/libx86-1.1-x86_64-3.txt -rw-r--r-- 1 root root 37356 2018-04-13 13:23 ./slackware64/ap/libx86-1.1-x86_64-3.txz -rw-r--r-- 1 root root 163 2018-04-13 13:23 ./slackware64/ap/libx86-1.1-x86_64-3.txz.asc @@ -2410,7 +2410,7 @@ drwxr-xr-x 2 root root 20480 2016-03-10 03:11 ./slackware64/kdei -rw-r--r-- 1 root root 7544 2018-03-01 07:54 ./slackware64/kdei/maketag -rw-r--r-- 1 root root 7544 2018-03-01 07:54 ./slackware64/kdei/maketag.ez -rw-r--r-- 1 root root 1500 2018-03-01 07:54 ./slackware64/kdei/tagfile -drwxr-xr-x 2 root root 69632 2018-10-17 19:49 ./slackware64/l +drwxr-xr-x 2 root root 69632 2018-10-19 20:17 ./slackware64/l -rw-r--r-- 1 root root 338 2018-04-13 14:13 ./slackware64/l/ConsoleKit2-1.0.0-x86_64-4.txt -rw-r--r-- 1 root root 149752 2018-04-13 14:13 ./slackware64/l/ConsoleKit2-1.0.0-x86_64-4.txz -rw-r--r-- 1 root root 163 2018-04-13 14:13 ./slackware64/l/ConsoleKit2-1.0.0-x86_64-4.txz.asc @@ -2714,9 +2714,9 @@ drwxr-xr-x 2 root root 69632 2018-10-17 19:49 ./slackware64/l -rw-r--r-- 1 root root 428 2018-05-09 04:17 ./slackware64/l/gvfs-1.36.2-x86_64-1.txt -rw-r--r-- 1 root root 1060272 2018-05-09 04:17 ./slackware64/l/gvfs-1.36.2-x86_64-1.txz -rw-r--r-- 1 root root 163 2018-05-09 04:17 ./slackware64/l/gvfs-1.36.2-x86_64-1.txz.asc --rw-r--r-- 1 root root 258 2018-10-16 20:59 ./slackware64/l/harfbuzz-1.9.0-x86_64-2.txt --rw-r--r-- 1 root root 502940 2018-10-16 20:59 ./slackware64/l/harfbuzz-1.9.0-x86_64-2.txz --rw-r--r-- 1 root root 163 2018-10-16 20:59 ./slackware64/l/harfbuzz-1.9.0-x86_64-2.txz.asc +-rw-r--r-- 1 root root 258 2018-10-19 18:21 ./slackware64/l/harfbuzz-2.0.0-x86_64-1.txt +-rw-r--r-- 1 root root 544440 2018-10-19 18:21 ./slackware64/l/harfbuzz-2.0.0-x86_64-1.txz +-rw-r--r-- 1 root root 163 2018-10-19 18:21 ./slackware64/l/harfbuzz-2.0.0-x86_64-1.txz.asc -rw-r--r-- 1 root root 506 2018-04-13 14:49 ./slackware64/l/hicolor-icon-theme-0.17-noarch-2.txt -rw-r--r-- 1 root root 14164 2018-04-13 14:49 ./slackware64/l/hicolor-icon-theme-0.17-noarch-2.txz -rw-r--r-- 1 root root 163 2018-04-13 14:49 ./slackware64/l/hicolor-icon-theme-0.17-noarch-2.txz.asc @@ -2947,9 +2947,9 @@ drwxr-xr-x 2 root root 69632 2018-10-17 19:49 ./slackware64/l -rw-r--r-- 1 root root 574 2018-04-13 15:02 ./slackware64/l/liboil-0.3.17-x86_64-2.txt -rw-r--r-- 1 root root 161628 2018-04-13 15:02 ./slackware64/l/liboil-0.3.17-x86_64-2.txz -rw-r--r-- 1 root root 163 2018-04-13 15:02 ./slackware64/l/liboil-0.3.17-x86_64-2.txz.asc --rw-r--r-- 1 root root 330 2018-09-21 03:12 ./slackware64/l/libopusenc-0.2-x86_64-1.txt --rw-r--r-- 1 root root 118280 2018-09-21 03:12 ./slackware64/l/libopusenc-0.2-x86_64-1.txz --rw-r--r-- 1 root root 163 2018-09-21 03:12 ./slackware64/l/libopusenc-0.2-x86_64-1.txz.asc +-rw-r--r-- 1 root root 330 2018-10-19 18:15 ./slackware64/l/libopusenc-0.2.1-x86_64-1.txt +-rw-r--r-- 1 root root 118264 2018-10-19 18:15 ./slackware64/l/libopusenc-0.2.1-x86_64-1.txz +-rw-r--r-- 1 root root 163 2018-10-19 18:15 ./slackware64/l/libopusenc-0.2.1-x86_64-1.txz.asc -rw-r--r-- 1 root root 428 2018-08-01 21:27 ./slackware64/l/libpcap-1.9.0-x86_64-1.txt -rw-r--r-- 1 root root 246936 2018-08-01 21:27 ./slackware64/l/libpcap-1.9.0-x86_64-1.txz -rw-r--r-- 1 root root 163 2018-08-01 21:27 ./slackware64/l/libpcap-1.9.0-x86_64-1.txz.asc @@ -3120,9 +3120,9 @@ drwxr-xr-x 2 root root 69632 2018-10-17 19:49 ./slackware64/l -rw-r--r-- 1 root root 226 2018-04-13 15:10 ./slackware64/l/openjpeg-2.3.0-x86_64-2.txt -rw-r--r-- 1 root root 514732 2018-04-13 15:10 ./slackware64/l/openjpeg-2.3.0-x86_64-2.txz -rw-r--r-- 1 root root 163 2018-04-13 15:10 ./slackware64/l/openjpeg-2.3.0-x86_64-2.txz.asc --rw-r--r-- 1 root root 512 2018-09-21 02:06 ./slackware64/l/opus-1.3_rc2-x86_64-1.txt --rw-r--r-- 1 root root 369584 2018-09-21 02:06 ./slackware64/l/opus-1.3_rc2-x86_64-1.txz --rw-r--r-- 1 root root 163 2018-09-21 02:06 ./slackware64/l/opus-1.3_rc2-x86_64-1.txz.asc +-rw-r--r-- 1 root root 512 2018-10-19 18:14 ./slackware64/l/opus-1.3-x86_64-1.txt +-rw-r--r-- 1 root root 369524 2018-10-19 18:14 ./slackware64/l/opus-1.3-x86_64-1.txz +-rw-r--r-- 1 root root 163 2018-10-19 18:14 ./slackware64/l/opus-1.3-x86_64-1.txz.asc -rw-r--r-- 1 root root 404 2018-09-21 02:07 ./slackware64/l/opusfile-0.11-x86_64-1.txt -rw-r--r-- 1 root root 172720 2018-09-21 02:07 ./slackware64/l/opusfile-0.11-x86_64-1.txz -rw-r--r-- 1 root root 163 2018-09-21 02:07 ./slackware64/l/opusfile-0.11-x86_64-1.txz.asc @@ -3346,9 +3346,9 @@ drwxr-xr-x 2 root root 69632 2018-10-17 19:49 ./slackware64/l -rw-r--r-- 1 root root 590 2018-07-30 19:56 ./slackware64/l/utf8proc-2.2.0-x86_64-1.txt -rw-r--r-- 1 root root 57804 2018-07-30 19:56 ./slackware64/l/utf8proc-2.2.0-x86_64-1.txz -rw-r--r-- 1 root root 163 2018-07-30 19:56 ./slackware64/l/utf8proc-2.2.0-x86_64-1.txz.asc --rw-r--r-- 1 root root 550 2018-04-13 15:26 ./slackware64/l/v4l-utils-1.14.2-x86_64-2.txt --rw-r--r-- 1 root root 908912 2018-04-13 15:26 ./slackware64/l/v4l-utils-1.14.2-x86_64-2.txz --rw-r--r-- 1 root root 163 2018-04-13 15:26 ./slackware64/l/v4l-utils-1.14.2-x86_64-2.txz.asc +-rw-r--r-- 1 root root 550 2018-10-19 18:46 ./slackware64/l/v4l-utils-1.16.1-x86_64-1.txt +-rw-r--r-- 1 root root 1013692 2018-10-19 18:46 ./slackware64/l/v4l-utils-1.16.1-x86_64-1.txz +-rw-r--r-- 1 root root 163 2018-10-19 18:46 ./slackware64/l/v4l-utils-1.16.1-x86_64-1.txz.asc -rw-r--r-- 1 root root 255 2018-05-22 17:48 ./slackware64/l/vte-0.52.2-x86_64-1.txt -rw-r--r-- 1 root root 286124 2018-05-22 17:48 ./slackware64/l/vte-0.52.2-x86_64-1.txz -rw-r--r-- 1 root root 163 2018-05-22 17:48 ./slackware64/l/vte-0.52.2-x86_64-1.txz.asc @@ -3364,13 +3364,13 @@ drwxr-xr-x 2 root root 69632 2018-10-17 19:49 ./slackware64/l -rw-r--r-- 1 root root 463 2018-09-13 20:52 ./slackware64/l/zstd-1.3.5-x86_64-1.txt -rw-r--r-- 1 root root 379972 2018-09-13 20:52 ./slackware64/l/zstd-1.3.5-x86_64-1.txz -rw-r--r-- 1 root root 163 2018-09-13 20:52 ./slackware64/l/zstd-1.3.5-x86_64-1.txz.asc -drwxr-xr-x 2 root root 32768 2018-10-17 03:30 ./slackware64/n +drwxr-xr-x 2 root root 32768 2018-10-19 20:17 ./slackware64/n -rw-r--r-- 1 root root 357 2018-09-24 19:22 ./slackware64/n/ModemManager-1.8.2-x86_64-1.txt -rw-r--r-- 1 root root 1519620 2018-09-24 19:22 ./slackware64/n/ModemManager-1.8.2-x86_64-1.txz -rw-r--r-- 1 root root 163 2018-09-24 19:22 ./slackware64/n/ModemManager-1.8.2-x86_64-1.txz.asc --rw-r--r-- 1 root root 602 2018-09-15 17:18 ./slackware64/n/NetworkManager-1.14.0-x86_64-1.txt --rw-r--r-- 1 root root 3438884 2018-09-15 17:18 ./slackware64/n/NetworkManager-1.14.0-x86_64-1.txz --rw-r--r-- 1 root root 163 2018-09-15 17:18 ./slackware64/n/NetworkManager-1.14.0-x86_64-1.txz.asc +-rw-r--r-- 1 root root 602 2018-10-19 18:35 ./slackware64/n/NetworkManager-1.14.2-x86_64-1.txt +-rw-r--r-- 1 root root 3509536 2018-10-19 18:35 ./slackware64/n/NetworkManager-1.14.2-x86_64-1.txz +-rw-r--r-- 1 root root 163 2018-10-19 18:35 ./slackware64/n/NetworkManager-1.14.2-x86_64-1.txz.asc -rw-r--r-- 1 root root 641 2018-05-08 04:14 ./slackware64/n/alpine-2.21-x86_64-3.txt -rw-r--r-- 1 root root 1996024 2018-05-08 04:14 ./slackware64/n/alpine-2.21-x86_64-3.txz -rw-r--r-- 1 root root 163 2018-05-08 04:14 ./slackware64/n/alpine-2.21-x86_64-3.txz.asc @@ -3422,9 +3422,9 @@ drwxr-xr-x 2 root root 32768 2018-10-17 03:30 ./slackware64/n -rw-r--r-- 1 root root 493 2018-08-21 16:22 ./slackware64/n/dhcpcd-7.0.8-x86_64-1.txt -rw-r--r-- 1 root root 160872 2018-08-21 16:22 ./slackware64/n/dhcpcd-7.0.8-x86_64-1.txz -rw-r--r-- 1 root root 163 2018-08-21 16:22 ./slackware64/n/dhcpcd-7.0.8-x86_64-1.txz.asc --rw-r--r-- 1 root root 443 2018-04-13 15:33 ./slackware64/n/dnsmasq-2.79-x86_64-2.txt --rw-r--r-- 1 root root 329940 2018-04-13 15:33 ./slackware64/n/dnsmasq-2.79-x86_64-2.txz --rw-r--r-- 1 root root 163 2018-04-13 15:33 ./slackware64/n/dnsmasq-2.79-x86_64-2.txz.asc +-rw-r--r-- 1 root root 443 2018-10-19 18:13 ./slackware64/n/dnsmasq-2.80-x86_64-1.txt +-rw-r--r-- 1 root root 338444 2018-10-19 18:13 ./slackware64/n/dnsmasq-2.80-x86_64-1.txz +-rw-r--r-- 1 root root 163 2018-10-19 18:13 ./slackware64/n/dnsmasq-2.80-x86_64-1.txz.asc -rw-r--r-- 1 root root 450 2018-10-16 21:05 ./slackware64/n/dovecot-2.3.3-x86_64-2.txt -rw-r--r-- 1 root root 3119780 2018-10-16 21:05 ./slackware64/n/dovecot-2.3.3-x86_64-2.txz -rw-r--r-- 1 root root 163 2018-10-16 21:05 ./slackware64/n/dovecot-2.3.3-x86_64-2.txz.asc @@ -3684,9 +3684,9 @@ drwxr-xr-x 2 root root 32768 2018-10-17 03:30 ./slackware64/n -rw-r--r-- 1 root root 535 2018-04-13 15:45 ./slackware64/n/openobex-1.7.2-x86_64-2.txt -rw-r--r-- 1 root root 153836 2018-04-13 15:45 ./slackware64/n/openobex-1.7.2-x86_64-2.txz -rw-r--r-- 1 root root 163 2018-04-13 15:45 ./slackware64/n/openobex-1.7.2-x86_64-2.txz.asc --rw-r--r-- 1 root root 672 2018-08-26 00:17 ./slackware64/n/openssh-7.8p1-x86_64-1.txt --rw-r--r-- 1 root root 779188 2018-08-26 00:17 ./slackware64/n/openssh-7.8p1-x86_64-1.txz --rw-r--r-- 1 root root 163 2018-08-26 00:17 ./slackware64/n/openssh-7.8p1-x86_64-1.txz.asc +-rw-r--r-- 1 root root 672 2018-10-19 18:29 ./slackware64/n/openssh-7.9p1-x86_64-1.txt +-rw-r--r-- 1 root root 753932 2018-10-19 18:29 ./slackware64/n/openssh-7.9p1-x86_64-1.txz +-rw-r--r-- 1 root root 163 2018-10-19 18:29 ./slackware64/n/openssh-7.9p1-x86_64-1.txz.asc -rw-r--r-- 1 root root 559 2018-09-12 19:18 ./slackware64/n/openssl-1.1.1-x86_64-1.txt -rw-r--r-- 1 root root 3934260 2018-09-12 19:18 ./slackware64/n/openssl-1.1.1-x86_64-1.txz -rw-r--r-- 1 root root 163 2018-09-12 19:18 ./slackware64/n/openssl-1.1.1-x86_64-1.txz.asc @@ -3844,7 +3844,7 @@ drwxr-xr-x 2 root root 4096 2018-04-18 08:32 ./slackware64/tcl -rw-r--r-- 1 root root 198 2018-04-13 16:03 ./slackware64/tcl/tk-8.6.8-x86_64-2.txt -rw-r--r-- 1 root root 1762804 2018-04-13 16:03 ./slackware64/tcl/tk-8.6.8-x86_64-2.txz -rw-r--r-- 1 root root 163 2018-04-13 16:03 ./slackware64/tcl/tk-8.6.8-x86_64-2.txz.asc -drwxr-xr-x 2 root root 65536 2018-10-17 03:30 ./slackware64/x +drwxr-xr-x 2 root root 65536 2018-10-19 20:17 ./slackware64/x -rw-r--r-- 1 root root 257 2018-04-13 16:03 ./slackware64/x/anthy-9100h-x86_64-2.txt -rw-r--r-- 1 root root 5074404 2018-04-13 16:03 ./slackware64/x/anthy-9100h-x86_64-2.txz -rw-r--r-- 1 root root 163 2018-04-13 16:03 ./slackware64/x/anthy-9100h-x86_64-2.txz.asc @@ -4203,9 +4203,9 @@ drwxr-xr-x 2 root root 65536 2018-10-17 03:30 ./slackware64/x -rw-r--r-- 1 root root 163 2018-04-13 05:49 ./slackware64/x/makedepend-1.0.5-x86_64-3.txz.asc -rw-r--r-- 1 root root 22414 2018-07-20 06:28 ./slackware64/x/maketag -rw-r--r-- 1 root root 22414 2018-07-20 06:28 ./slackware64/x/maketag.ez --rw-r--r-- 1 root root 333 2018-10-05 17:38 ./slackware64/x/mesa-18.2.2-x86_64-1.txt --rw-r--r-- 1 root root 9252284 2018-10-05 17:38 ./slackware64/x/mesa-18.2.2-x86_64-1.txz --rw-r--r-- 1 root root 163 2018-10-05 17:38 ./slackware64/x/mesa-18.2.2-x86_64-1.txz.asc +-rw-r--r-- 1 root root 333 2018-10-19 19:00 ./slackware64/x/mesa-18.2.3-x86_64-1.txt +-rw-r--r-- 1 root root 9256492 2018-10-19 19:00 ./slackware64/x/mesa-18.2.3-x86_64-1.txz +-rw-r--r-- 1 root root 163 2018-10-19 19:00 ./slackware64/x/mesa-18.2.3-x86_64-1.txz.asc -rw-r--r-- 1 root root 425 2018-04-13 06:03 ./slackware64/x/mkcomposecache-1.2.1-x86_64-3.txt -rw-r--r-- 1 root root 9448 2018-04-13 06:03 ./slackware64/x/mkcomposecache-1.2.1-x86_64-3.txz -rw-r--r-- 1 root root 163 2018-04-13 06:03 ./slackware64/x/mkcomposecache-1.2.1-x86_64-3.txz.asc @@ -4585,9 +4585,9 @@ drwxr-xr-x 2 root root 65536 2018-10-17 03:30 ./slackware64/x -rw-r--r-- 1 root root 249 2018-04-13 06:07 ./slackware64/x/xkbutils-1.0.4-x86_64-3.txt -rw-r--r-- 1 root root 26780 2018-04-13 06:07 ./slackware64/x/xkbutils-1.0.4-x86_64-3.txz -rw-r--r-- 1 root root 163 2018-04-13 06:07 ./slackware64/x/xkbutils-1.0.4-x86_64-3.txz.asc --rw-r--r-- 1 root root 655 2018-04-13 05:49 ./slackware64/x/xkeyboard-config-2.22-noarch-2.txt --rw-r--r-- 1 root root 649336 2018-04-13 05:49 ./slackware64/x/xkeyboard-config-2.22-noarch-2.txz --rw-r--r-- 1 root root 163 2018-04-13 05:49 ./slackware64/x/xkeyboard-config-2.22-noarch-2.txz.asc +-rw-r--r-- 1 root root 655 2018-10-19 18:12 ./slackware64/x/xkeyboard-config-2.25-noarch-1.txt +-rw-r--r-- 1 root root 656604 2018-10-19 18:12 ./slackware64/x/xkeyboard-config-2.25-noarch-1.txz +-rw-r--r-- 1 root root 163 2018-10-19 18:12 ./slackware64/x/xkeyboard-config-2.25-noarch-1.txz.asc -rw-r--r-- 1 root root 300 2018-04-13 06:07 ./slackware64/x/xkill-1.0.5-x86_64-2.txt -rw-r--r-- 1 root root 20124 2018-04-13 06:07 ./slackware64/x/xkill-1.0.5-x86_64-2.txz -rw-r--r-- 1 root root 163 2018-04-13 06:07 ./slackware64/x/xkill-1.0.5-x86_64-2.txz.asc @@ -4942,11 +4942,11 @@ drwxr-xr-x 2 root root 4096 2018-04-18 08:35 ./slackware64/y -rw-r--r-- 1 root root 1147 2018-03-01 07:55 ./slackware64/y/maketag -rw-r--r-- 1 root root 1147 2018-03-01 07:55 ./slackware64/y/maketag.ez -rw-r--r-- 1 root root 14 2018-03-01 07:55 ./slackware64/y/tagfile -drwxr-xr-x 19 root root 4096 2018-10-19 04:17 ./source --rw-r--r-- 1 root root 459496 2018-10-19 04:17 ./source/CHECKSUMS.md5 --rw-r--r-- 1 root root 163 2018-10-19 04:17 ./source/CHECKSUMS.md5.asc --rw-r--r-- 1 root root 649935 2018-10-19 04:16 ./source/FILE_LIST --rw-r--r-- 1 root root 15263438 2018-10-19 04:16 ./source/MANIFEST.bz2 +drwxr-xr-x 19 root root 4096 2018-10-19 20:22 ./source +-rw-r--r-- 1 root root 459263 2018-10-19 20:22 ./source/CHECKSUMS.md5 +-rw-r--r-- 1 root root 163 2018-10-19 20:22 ./source/CHECKSUMS.md5.asc +-rw-r--r-- 1 root root 649648 2018-10-19 20:22 ./source/FILE_LIST +-rw-r--r-- 1 root root 15281753 2018-10-19 20:22 ./source/MANIFEST.bz2 -rw-r--r-- 1 root root 1314 2006-10-02 04:40 ./source/README.TXT drwxr-xr-x 110 root root 4096 2018-10-01 17:28 ./source/a -rw-r--r-- 1 root root 769 2018-06-26 09:45 ./source/a/FTBFSlog @@ -5211,9 +5211,9 @@ drwxr-xr-x 2 root root 4096 2015-11-17 02:56 ./source/a/eudev/config/rules -rwxr-xr-x 1 root root 5535 2018-06-18 07:57 ./source/a/eudev/eudev.SlackBuild -rw-r--r-- 1 root root 339 2018-05-01 15:37 ./source/a/eudev/eudev.ignore_bind_unbind_events.diff.gz -rw-r--r-- 1 root root 965 2018-02-27 06:13 ./source/a/eudev/slack-desc -drwxr-xr-x 2 root root 4096 2018-09-18 22:04 ./source/a/file +drwxr-xr-x 2 root root 4096 2018-10-19 18:29 ./source/a/file -rw-r--r-- 1 root root 132 2015-04-14 20:27 ./source/a/file/doinst.sh.gz --rw-r--r-- 1 root root 620182 2018-07-25 05:57 ./source/a/file/file-5.34.tar.lz +-rw-r--r-- 1 root root 639423 2018-10-18 23:40 ./source/a/file/file-5.35.tar.lz -rwxr-xr-x 1 root root 5823 2018-09-18 22:04 ./source/a/file/file.SlackBuild -rw-r--r-- 1 root root 195 2009-02-23 01:20 ./source/a/file/file.crdaregbin.magic.gz -rw-r--r-- 1 root root 212 2009-06-12 22:40 ./source/a/file/file.etc.file.diff.gz @@ -5276,9 +5276,9 @@ drwxr-xr-x 2 root root 4096 2018-04-23 17:20 ./source/a/getty-ps -rw-r--r-- 1 root root 1223 2002-10-04 05:00 ./source/a/getty-ps/getty_ps-2.1.0.lsm -rw-r--r-- 1 root root 117414 2005-07-21 12:27 ./source/a/getty-ps/getty_ps-2.1.0b.tar.gz -rw-r--r-- 1 root root 966 2018-02-27 06:13 ./source/a/getty-ps/slack-desc -drwxr-xr-x 3 root root 4096 2018-09-18 22:04 ./source/a/glibc-zoneinfo +drwxr-xr-x 3 root root 4096 2018-10-19 17:32 ./source/a/glibc-zoneinfo -rw-r--r-- 1 root root 1147 2018-06-14 04:54 ./source/a/glibc-zoneinfo/doinst.sh.gz --rwxr-xr-x 1 root root 5383 2018-09-18 22:04 ./source/a/glibc-zoneinfo/glibc-zoneinfo.SlackBuild +-rwxr-xr-x 1 root root 5383 2018-10-19 17:33 ./source/a/glibc-zoneinfo/glibc-zoneinfo.SlackBuild -rw-r--r-- 1 root root 964 2018-02-27 06:13 ./source/a/glibc-zoneinfo/slack-desc drwxr-xr-x 3 root root 4096 2015-12-17 23:39 ./source/a/glibc-zoneinfo/timezone-scripts -rwxr-xr-x 1 root root 2579 2015-12-11 17:32 ./source/a/glibc-zoneinfo/timezone-scripts/output-updated-timeconfig.sh @@ -5291,10 +5291,10 @@ drwxr-xr-x 2 root root 4096 2006-12-03 23:10 ./source/a/glibc-zoneinfo/tim -rw-r--r-- 1 root root 87 2006-12-03 23:10 ./source/a/glibc-zoneinfo/timezone-scripts/parts/README -rw-r--r-- 1 root root 66 2003-02-16 21:17 ./source/a/glibc-zoneinfo/timezone-scripts/setup.timeconfig -rw-r--r-- 1 root root 28652 2018-04-28 19:21 ./source/a/glibc-zoneinfo/timezone-scripts/timeconfig --rw-r--r-- 1 root root 231732 2018-05-03 23:55 ./source/a/glibc-zoneinfo/tzcode2018e.tar.gz --rw-r--r-- 1 root root 819 2018-05-03 23:55 ./source/a/glibc-zoneinfo/tzcode2018e.tar.gz.asc --rw-r--r-- 1 root root 353953 2018-05-03 23:55 ./source/a/glibc-zoneinfo/tzdata2018e.tar.gz --rw-r--r-- 1 root root 819 2018-05-03 23:55 ./source/a/glibc-zoneinfo/tzdata2018e.tar.gz.asc +-rw-r--r-- 1 root root 236223 2018-10-18 07:50 ./source/a/glibc-zoneinfo/tzcode2018f.tar.gz +-rw-r--r-- 1 root root 833 2018-10-18 07:50 ./source/a/glibc-zoneinfo/tzcode2018f.tar.gz.asc +-rw-r--r-- 1 root root 366046 2018-10-18 07:50 ./source/a/glibc-zoneinfo/tzdata2018f.tar.gz +-rw-r--r-- 1 root root 833 2018-10-18 07:50 ./source/a/glibc-zoneinfo/tzdata2018f.tar.gz.asc drwxr-xr-x 2 root root 4096 2018-04-28 19:23 ./source/a/gpm -rw-r--r-- 1 root root 361 2013-02-13 03:15 ./source/a/gpm/gpm-1.20.1-lib-silent.patch.gz -rw-r--r-- 1 root root 587 2013-02-13 22:19 ./source/a/gpm/gpm-1.20.1-select-1.patch.gz @@ -6068,8 +6068,8 @@ drwxr-xr-x 2 root root 4096 2018-09-18 22:04 ./source/ap/jove -rw-r--r-- 1 root root 1709 2009-03-04 05:45 ./source/ap/jove/jove.makefile.diff.gz -rw-r--r-- 1 root root 357932 2010-07-11 15:35 ./source/ap/jove/jove4.16.0.73.tar.xz -rw-r--r-- 1 root root 788 2018-02-27 06:12 ./source/ap/jove/slack-desc -drwxr-xr-x 2 root root 4096 2018-04-23 17:20 ./source/ap/ksh93 --rw-r--r-- 1 root root 1870273 2018-04-15 16:29 ./source/ap/ksh93/att-ast-20180412_71e6fdad.tar.lz +drwxr-xr-x 2 root root 4096 2018-10-19 18:18 ./source/ap/ksh93 +-rw-r--r-- 1 root root 1358771 2018-10-19 18:18 ./source/ap/ksh93/att-ast-20181018_89d7b802.tar.lz -rwxr-xr-x 1 root root 1903 2018-04-16 06:18 ./source/ap/ksh93/get-att-ast.sh -rwxr-xr-x 1 root root 4697 2018-04-23 17:20 ./source/ap/ksh93/ksh93.SlackBuild -rw-r--r-- 1 root root 991 2018-02-27 06:12 ./source/ap/ksh93/slack-desc @@ -8589,9 +8589,9 @@ drwxr-xr-x 2 root root 4096 2018-09-18 22:04 ./source/l/gvfs -rw-r--r-- 1 root root 1250528 2018-05-07 10:18 ./source/l/gvfs/gvfs-1.36.2.tar.xz -rwxr-xr-x 1 root root 4577 2018-09-18 22:04 ./source/l/gvfs/gvfs.SlackBuild -rw-r--r-- 1 root root 882 2018-02-27 06:12 ./source/l/gvfs/slack-desc -drwxr-xr-x 2 root root 4096 2018-10-16 20:02 ./source/l/harfbuzz --rw-r--r-- 1 root root 2843887 2018-09-10 09:38 ./source/l/harfbuzz/harfbuzz-1.9.0.tar.lz --rwxr-xr-x 1 root root 3868 2018-10-16 20:02 ./source/l/harfbuzz/harfbuzz.SlackBuild +drwxr-xr-x 2 root root 4096 2018-10-19 18:21 ./source/l/harfbuzz +-rw-r--r-- 1 root root 3091635 2018-10-18 13:04 ./source/l/harfbuzz/harfbuzz-2.0.0.tar.lz +-rwxr-xr-x 1 root root 3868 2018-10-19 18:21 ./source/l/harfbuzz/harfbuzz.SlackBuild -rw-r--r-- 1 root root 746 2018-06-21 20:28 ./source/l/harfbuzz/slack-desc drwxr-xr-x 2 root root 4096 2018-04-23 17:20 ./source/l/hicolor-icon-theme -rw-r--r-- 1 root root 580 2012-07-18 19:52 ./source/l/hicolor-icon-theme/doinst.sh.gz @@ -8946,8 +8946,8 @@ drwxr-xr-x 2 root root 4096 2018-09-18 22:04 ./source/l/liboil -rw-r--r-- 1 root root 499068 2010-02-04 21:45 ./source/l/liboil/liboil-0.3.17.tar.xz -rwxr-xr-x 1 root root 3678 2018-09-18 22:04 ./source/l/liboil/liboil.SlackBuild -rw-r--r-- 1 root root 1028 2018-02-27 06:12 ./source/l/liboil/slack-desc -drwxr-xr-x 2 root root 4096 2018-09-21 03:09 ./source/l/libopusenc --rw-r--r-- 1 root root 265557 2018-09-17 19:56 ./source/l/libopusenc/libopusenc-0.2.tar.lz +drwxr-xr-x 2 root root 4096 2018-10-19 18:15 ./source/l/libopusenc +-rw-r--r-- 1 root root 265641 2018-10-08 22:16 ./source/l/libopusenc/libopusenc-0.2.1.tar.lz -rwxr-xr-x 1 root root 4562 2018-09-21 03:10 ./source/l/libopusenc/libopusenc.SlackBuild -rw-r--r-- 1 root root 820 2018-09-21 03:12 ./source/l/libopusenc/slack-desc drwxr-xr-x 2 root root 4096 2018-09-18 22:04 ./source/l/libpcap @@ -9242,8 +9242,8 @@ drwxr-xr-x 2 root root 4096 2018-09-18 22:04 ./source/l/openjpeg -rwxr-xr-x 1 root root 4239 2018-09-18 22:04 ./source/l/openjpeg/openjpeg.SlackBuild -rw-r--r-- 1 root root 387 2017-10-04 19:22 ./source/l/openjpeg/openjpeg2_remove-thirdparty.patch.gz -rw-r--r-- 1 root root 682 2018-02-27 06:12 ./source/l/openjpeg/slack-desc -drwxr-xr-x 2 root root 4096 2018-09-21 02:05 ./source/l/opus --rw-r--r-- 1 root root 663173 2018-09-17 19:55 ./source/l/opus/opus-1.3-rc2.tar.lz +drwxr-xr-x 2 root root 4096 2018-10-19 18:14 ./source/l/opus +-rw-r--r-- 1 root root 662944 2018-10-18 14:47 ./source/l/opus/opus-1.3.tar.lz -rwxr-xr-x 1 root root 4648 2018-09-18 22:04 ./source/l/opus/opus.SlackBuild -rw-r--r-- 1 root root 996 2018-02-27 06:12 ./source/l/opus/slack-desc drwxr-xr-x 2 root root 4096 2018-09-21 02:06 ./source/l/opusfile @@ -9667,11 +9667,10 @@ drwxr-xr-x 2 root root 4096 2018-09-18 22:04 ./source/l/utf8proc -rw-r--r-- 1 root root 95560 2018-07-30 19:55 ./source/l/utf8proc/utf8proc-2.2.0.tar.lz -rwxr-xr-x 1 root root 4483 2018-09-18 22:04 ./source/l/utf8proc/utf8proc.SlackBuild -rw-r--r-- 1 root root 41 2018-07-14 21:26 ./source/l/utf8proc/utf8proc.url -drwxr-xr-x 2 root root 4096 2018-09-19 00:07 ./source/l/v4l-utils +drwxr-xr-x 2 root root 4096 2018-10-19 18:35 ./source/l/v4l-utils -rw-r--r-- 1 root root 1006 2018-02-27 06:12 ./source/l/v4l-utils/slack-desc --rw-r--r-- 1 root root 1187759 2018-02-10 12:30 ./source/l/v4l-utils/v4l-utils-1.14.2.tar.lz --rwxr-xr-x 1 root root 4304 2018-09-19 00:08 ./source/l/v4l-utils/v4l-utils.SlackBuild --rw-r--r-- 1 root root 358 2018-09-19 00:07 ./source/l/v4l-utils/v4l-utils.glibc228.diff.gz +-rw-r--r-- 1 root root 1313743 2018-10-18 18:14 ./source/l/v4l-utils/v4l-utils-1.16.1.tar.lz +-rwxr-xr-x 1 root root 4319 2018-10-19 18:45 ./source/l/v4l-utils/v4l-utils.SlackBuild -rw-r--r-- 1 root root 41 2018-02-16 22:14 ./source/l/v4l-utils/v4l-utils.url drwxr-xr-x 2 root root 4096 2018-09-18 22:04 ./source/l/vte -rw-r--r-- 1 root root 706 2018-02-27 06:12 ./source/l/vte/slack-desc @@ -9704,9 +9703,9 @@ drwxr-xr-x 2 root root 4096 2018-09-24 19:21 ./source/n/ModemManager -rwxr-xr-x 1 root root 3600 2018-09-18 22:04 ./source/n/ModemManager/ModemManager.SlackBuild -rw-r--r-- 1 root root 444 2013-09-22 21:10 ./source/n/ModemManager/WeDoNotHaveSystemD.patch.gz -rw-r--r-- 1 root root 817 2018-09-24 19:21 ./source/n/ModemManager/slack-desc -drwxr-xr-x 4 root root 4096 2018-09-18 22:04 ./source/n/NetworkManager +drwxr-xr-x 4 root root 4096 2018-10-19 18:32 ./source/n/NetworkManager -rw-r--r-- 1 root root 938 2016-03-22 18:59 ./source/n/NetworkManager/55NetworkManager --rw-r--r-- 1 root root 4389692 2018-09-14 21:23 ./source/n/NetworkManager/NetworkManager-1.14.0.tar.xz +-rw-r--r-- 1 root root 4415068 2018-10-19 16:51 ./source/n/NetworkManager/NetworkManager-1.14.2.tar.xz -rwxr-xr-x 1 root root 6972 2018-09-18 22:04 ./source/n/NetworkManager/NetworkManager.SlackBuild -rw-r--r-- 1 root root 139 2016-04-22 03:58 ./source/n/NetworkManager/NetworkManager.conf drwxr-xr-x 2 root root 4096 2016-03-25 04:54 ./source/n/NetworkManager/conf.d @@ -9873,10 +9872,10 @@ drwxr-xr-x 2 root root 4096 2018-01-02 10:20 ./source/n/dhcpcd/patches -rw-r--r-- 1 root root 411 2018-01-02 10:20 ./source/n/dhcpcd/patches/dhcpcd.conf-request_ntp_server_by_default.patch -rw-r--r-- 1 root root 410 2018-01-02 10:14 ./source/n/dhcpcd/patches/use-hostname_short-in-dhcpcd.conf.patch -rw-r--r-- 1 root root 947 2018-02-27 06:13 ./source/n/dhcpcd/slack-desc -drwxr-xr-x 2 root root 4096 2018-09-18 22:04 ./source/n/dnsmasq --rw-r--r-- 1 root root 493036 2018-03-18 16:36 ./source/n/dnsmasq/dnsmasq-2.79.tar.xz --rw-r--r-- 1 root root 819 2018-03-18 16:36 ./source/n/dnsmasq/dnsmasq-2.79.tar.xz.asc --rwxr-xr-x 1 root root 3982 2018-09-18 22:04 ./source/n/dnsmasq/dnsmasq.SlackBuild +drwxr-xr-x 2 root root 4096 2018-10-19 18:13 ./source/n/dnsmasq +-rw-r--r-- 1 root root 501072 2018-10-18 18:27 ./source/n/dnsmasq/dnsmasq-2.80.tar.xz +-rw-r--r-- 1 root root 819 2018-10-18 18:27 ./source/n/dnsmasq/dnsmasq-2.80.tar.xz.asc +-rwxr-xr-x 1 root root 3982 2018-10-19 18:13 ./source/n/dnsmasq/dnsmasq.SlackBuild -rw-r--r-- 1 root root 543 2010-01-22 21:33 ./source/n/dnsmasq/dnsmasq.leasedir.diff.gz -rw-r--r-- 1 root root 246 2017-07-07 18:28 ./source/n/dnsmasq/dnsmasq.libidn2.diff.gz -rw-r--r-- 1 root root 376 2010-01-22 21:37 ./source/n/dnsmasq/doinst.sh.gz @@ -10396,14 +10395,12 @@ drwxr-xr-x 2 root root 4096 2018-09-18 22:04 ./source/n/openobex -rw-r--r-- 1 root root 99552 2016-04-07 21:06 ./source/n/openobex/openobex-1.7.2-Source.tar.xz -rwxr-xr-x 1 root root 4455 2018-09-18 22:04 ./source/n/openobex/openobex.SlackBuild -rw-r--r-- 1 root root 991 2018-02-27 06:13 ./source/n/openobex/slack-desc -drwxr-xr-x 2 root root 4096 2018-09-18 22:04 ./source/n/openssh +drwxr-xr-x 2 root root 4096 2018-10-19 18:28 ./source/n/openssh -rw-r--r-- 1 root root 578 2017-07-18 06:53 ./source/n/openssh/doinst.sh.gz --rw-r--r-- 1 root root 1548026 2018-08-23 23:53 ./source/n/openssh/openssh-7.8p1.tar.gz --rw-r--r-- 1 root root 683 2018-08-23 23:53 ./source/n/openssh/openssh-7.8p1.tar.gz.asc --rwxr-xr-x 1 root root 5880 2018-09-18 22:04 ./source/n/openssh/openssh.SlackBuild --rw-r--r-- 1 root root 261 2018-05-07 17:56 ./source/n/openssh/openssh.no.openssl.version.check.diff.gz +-rw-r--r-- 1 root root 1565384 2018-10-19 02:10 ./source/n/openssh/openssh-7.9p1.tar.gz +-rw-r--r-- 1 root root 683 2018-10-19 02:10 ./source/n/openssh/openssh-7.9p1.tar.gz.asc +-rwxr-xr-x 1 root root 5655 2018-10-19 18:28 ./source/n/openssh/openssh.SlackBuild -rw-r--r-- 1 root root 1648 2018-08-26 00:14 ./source/n/openssh/openssh.tcp_wrappers.diff.gz --rw-r--r-- 1 root root 12113 2018-08-26 00:10 ./source/n/openssh/openssl-1.1.0.patch.gz -rw-r--r-- 1 root root 1814 2017-07-18 06:51 ./source/n/openssh/rc.sshd -rw-r--r-- 1 root root 1127 2018-02-27 06:13 ./source/n/openssh/slack-desc -rw-r--r-- 1 root root 318 2017-07-18 18:45 ./source/n/openssh/sshd.default @@ -10896,12 +10893,12 @@ drwxr-xr-x 2 root root 4096 2018-09-18 22:04 ./source/x/m17n-lib -rw-r--r-- 1 root root 749501 2018-02-08 14:02 ./source/x/m17n-lib/m17n-lib-1.8.0.tar.lz -rwxr-xr-x 1 root root 5622 2018-09-18 22:04 ./source/x/m17n-lib/m17n-lib.SlackBuild -rw-r--r-- 1 root root 870 2018-02-27 06:13 ./source/x/m17n-lib/slack-desc -drwxr-xr-x 3 root root 4096 2018-10-05 17:18 ./source/x/mesa +drwxr-xr-x 3 root root 4096 2018-10-19 18:35 ./source/x/mesa -rw-r--r-- 1 root root 352 2008-03-10 07:13 ./source/x/mesa/README.GIT -rw-r--r-- 1 root root 268 2017-08-26 17:17 ./source/x/mesa/doinst.sh.gz -rwxr-xr-x 1 root root 720 2015-12-11 03:09 ./source/x/mesa/get-mesa.sh --rw-r--r-- 1 root root 11375608 2018-10-05 10:39 ./source/x/mesa/mesa-18.2.2.tar.xz --rw-r--r-- 1 root root 566 2018-10-05 10:39 ./source/x/mesa/mesa-18.2.2.tar.xz.sig +-rw-r--r-- 1 root root 11376632 2018-10-19 16:39 ./source/x/mesa/mesa-18.2.3.tar.xz +-rw-r--r-- 1 root root 566 2018-10-19 16:39 ./source/x/mesa/mesa-18.2.3.tar.xz.sig -rw-r--r-- 1 root root 7206679 2018-02-23 08:54 ./source/x/mesa/mesa-demos-8.4.0.tar.lz -rwxr-xr-x 1 root root 6632 2018-09-21 17:49 ./source/x/mesa/mesa.SlackBuild -rw-r--r-- 1 root root 78 2010-10-01 04:23 ./source/x/mesa/mesa.url @@ -11303,7 +11300,7 @@ drwxr-xr-x 2 root root 12288 2018-07-19 17:52 ./source/x/x11/build -rw-r--r-- 1 root root 2 2018-04-13 02:44 ./source/x/x11/build/xkbevd -rw-r--r-- 1 root root 2 2018-04-13 02:44 ./source/x/x11/build/xkbprint -rw-r--r-- 1 root root 2 2018-04-13 02:44 ./source/x/x11/build/xkbutils --rw-r--r-- 1 root root 2 2018-04-13 02:44 ./source/x/x11/build/xkeyboard-config +-rw-r--r-- 1 root root 2 2018-10-19 18:12 ./source/x/x11/build/xkeyboard-config -rw-r--r-- 1 root root 2 2018-04-13 02:44 ./source/x/x11/build/xkill -rw-r--r-- 1 root root 2 2018-04-13 02:44 ./source/x/x11/build/xload -rw-r--r-- 1 root root 2 2018-04-13 02:44 ./source/x/x11/build/xlogo @@ -11946,10 +11943,10 @@ drwxr-xr-x 2 root root 4096 2018-08-02 19:39 ./source/x/x11/src/app -rw-r--r-- 1 root root 136860 2018-03-10 04:39 ./source/x/x11/src/app/xwd-1.0.7.tar.xz -rw-r--r-- 1 root root 154984 2018-03-10 04:42 ./source/x/x11/src/app/xwininfo-1.1.4.tar.xz -rw-r--r-- 1 root root 122764 2018-03-10 04:45 ./source/x/x11/src/app/xwud-1.0.5.tar.xz -drwxr-xr-x 2 root root 4096 2018-03-11 20:42 ./source/x/x11/src/data +drwxr-xr-x 2 root root 4096 2018-10-19 18:12 ./source/x/x11/src/data -rw-r--r-- 1 root root 122548 2018-03-10 06:55 ./source/x/x11/src/data/xbitmaps-1.1.2.tar.xz -rw-r--r-- 1 root root 1503840 2018-03-10 06:58 ./source/x/x11/src/data/xcursor-themes-1.0.5.tar.xz --rw-r--r-- 1 root root 825556 2017-10-04 11:30 ./source/x/x11/src/data/xkeyboard-config-2.22.tar.xz +-rw-r--r-- 1 root root 842972 2018-10-13 23:22 ./source/x/x11/src/data/xkeyboard-config-2.25.tar.xz drwxr-xr-x 2 root root 4096 2015-05-04 05:55 ./source/x/x11/src/doc -rw-r--r-- 1 root root 333452 2015-05-01 06:18 ./source/x/x11/src/doc/xorg-docs-1.7.1.tar.xz -rw-r--r-- 1 root root 110976 2012-06-06 02:42 ./source/x/x11/src/doc/xorg-sgml-doctools-1.11.tar.xz @@ -12451,10 +12448,10 @@ drwxr-xr-x 2 root root 4096 2018-09-18 22:04 ./source/xap/xlockmore -rw-r--r-- 1 root root 371 2002-05-30 04:25 ./source/xap/xlockmore/xlockmore.bitmap.diff.gz drwxr-xr-x 2 root root 4096 2018-09-18 22:04 ./source/xap/xmms -rw-r--r-- 1 root root 828 2018-02-27 06:13 ./source/xap/xmms/slack-desc --rw-r--r-- 1 root root 2581032 2007-11-16 22:53 ./source/xap/xmms/xmms-1.2.11.tar.bz2 --rwxr-xr-x 1 root root 3911 2018-09-18 22:04 ./source/xap/xmms/xmms.SlackBuild --rw-r--r-- 1 root root 267 2013-05-03 02:25 ./source/xap/xmms/xmms.alsa.default.diff.gz --rw-r--r-- 1 root root 525 2008-09-11 20:50 ./source/xap/xmms/xmms.desktop +-rw-r--r-- 1 root root 2581032 2007-11-16 22:53 ./source/xap/xmms/xmms-1.2.11.tar.bz2 +-rwxr-xr-x 1 root root 3911 2018-09-18 22:04 ./source/xap/xmms/xmms.SlackBuild +-rw-r--r-- 1 root root 267 2013-05-03 02:25 ./source/xap/xmms/xmms.alsa.default.diff.gz +-rw-r--r-- 1 root root 525 2008-09-11 20:50 ./source/xap/xmms/xmms.desktop -rw-r--r-- 1 root root 279 2008-09-12 20:50 ./source/xap/xmms/xmms.gtk.doublesize.diff.gz -rw-r--r-- 1 root root 2475 2008-01-04 23:53 ./source/xap/xmms/xmms.png -rw-r--r-- 1 root root 260 2009-06-09 20:19 ./source/xap/xmms/xmms.wmxmms_vis_depth_workaround.diff.gz diff --git a/recompress.sh b/recompress.sh index bc542d5e0..fd635764d 100755 --- a/recompress.sh +++ b/recompress.sh @@ -102,8 +102,6 @@ gzip ./source/n/ntp/ntp.nano.diff gzip ./source/n/ntp/doinst.sh gzip ./source/n/openssh/doinst.sh gzip ./source/n/openssh/openssh.tcp_wrappers.diff -gzip ./source/n/openssh/openssh.no.openssl.version.check.diff -gzip ./source/n/openssh/openssl-1.1.0.patch gzip ./source/n/ulogd/doinst.sh gzip ./source/n/yptools/yp-tools-2.14-glibc217-crypt.diff gzip ./source/n/yptools/rc.yp @@ -506,7 +504,6 @@ gzip ./source/l/GConf/doinst.sh gzip ./source/l/GConf/patches/0002-dbus-Don-t-spew-to-console-when-unable-to-connect-to.patch gzip ./source/l/GConf/patches/0003-gsettings-data-convert-Warn-and-fix-invalid-schema-p.patch gzip ./source/l/GConf/patches/0001-mconvert-enable-recursive-scheme-lookup-and-fix-a-cr.patch -gzip ./source/l/v4l-utils/v4l-utils.glibc228.diff gzip ./source/l/system-config-printer/system-config-printer.auth.dialog.2766d74a.patch gzip ./source/l/system-config-printer/doinst.sh gzip ./source/l/ncurses/terminfo/xterm.terminfo.orig diff --git a/source/a/glibc-zoneinfo/glibc-zoneinfo.SlackBuild b/source/a/glibc-zoneinfo/glibc-zoneinfo.SlackBuild index 283149811..1db5ac0e0 100755 --- a/source/a/glibc-zoneinfo/glibc-zoneinfo.SlackBuild +++ b/source/a/glibc-zoneinfo/glibc-zoneinfo.SlackBuild @@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=glibc-zoneinfo ZONE_VERSIONS="$(echo tzdata* | cut -f1 -d . | cut -b7-11)" -BUILD=${BUILD:-3} +BUILD=${BUILD:-1} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then diff --git a/source/l/harfbuzz/harfbuzz.SlackBuild b/source/l/harfbuzz/harfbuzz.SlackBuild index 354fa0fbc..ca2cea445 100755 --- a/source/l/harfbuzz/harfbuzz.SlackBuild +++ b/source/l/harfbuzz/harfbuzz.SlackBuild @@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=harfbuzz VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} -BUILD=${BUILD:-2} +BUILD=${BUILD:-1} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then diff --git a/source/l/v4l-utils/v4l-utils.SlackBuild b/source/l/v4l-utils/v4l-utils.SlackBuild index 5a21c7203..7c0e41375 100755 --- a/source/l/v4l-utils/v4l-utils.SlackBuild +++ b/source/l/v4l-utils/v4l-utils.SlackBuild @@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=v4l-utils VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} -BUILD=${BUILD:-2} +BUILD=${BUILD:-1} NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "} @@ -71,8 +71,6 @@ rm -rf $PKGNAM-$VERSION tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1 cd $PKGNAM-$VERSION || exit 1 -zcat $CWD/v4l-utils.glibc228.diff.gz | patch -p1 --verbose || exit 1 - # Make sure ownerships and permissions are sane: chown -R root:root . find . \ @@ -81,6 +79,8 @@ find . \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ -exec chmod 644 {} \; +# qvidcap requires Qt5 - quit disabling it once we have that. + # Configure: CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS" \ @@ -91,6 +91,7 @@ CXXFLAGS="$SLKCFLAGS" \ --mandir=/usr/man \ --infodir=/usr/info \ --disable-static \ + --disable-qvidcap \ --build=$ARCH-slackware-linux || exit 1 # Build and install: diff --git a/source/l/v4l-utils/v4l-utils.glibc228.diff b/source/l/v4l-utils/v4l-utils.glibc228.diff deleted file mode 100644 index d072af747..000000000 --- a/source/l/v4l-utils/v4l-utils.glibc228.diff +++ /dev/null @@ -1,32 +0,0 @@ ---- ./lib/libv4lconvert/control/libv4lcontrol.c.orig 2017-12-27 08:33:07.000000000 -0600 -+++ ./lib/libv4lconvert/control/libv4lcontrol.c 2018-09-18 19:07:39.598074096 -0500 -@@ -20,9 +20,7 @@ - */ - - #include <sys/types.h> --#if defined(MAJOR_IN_SYSMACROS) - #include <sys/sysmacros.h> --#endif - #include <sys/mman.h> - #include <fcntl.h> - #include <sys/stat.h> ---- ./lib/libv4l2/libv4l2.c.orig 2017-12-27 07:50:55.000000000 -0600 -+++ ./lib/libv4l2/libv4l2.c 2018-09-18 19:07:39.596074096 -0500 -@@ -70,6 +70,7 @@ - #include <sys/types.h> - #include <sys/mman.h> - #include <sys/stat.h> -+#include <sys/sysmacros.h> - #include "libv4l2.h" - #include "libv4l2-priv.h" - #include "libv4l-plugin.h" ---- ./utils/v4l2-ctl/v4l2-ctl.cpp.orig 2017-12-27 07:50:55.000000000 -0600 -+++ ./utils/v4l2-ctl/v4l2-ctl.cpp 2018-09-18 19:07:39.599074096 -0500 -@@ -33,6 +33,7 @@ - #include <errno.h> - #include <sys/ioctl.h> - #include <sys/time.h> -+#include <sys/sysmacros.h> - #include <dirent.h> - #include <math.h> - diff --git a/source/n/dnsmasq/dnsmasq.SlackBuild b/source/n/dnsmasq/dnsmasq.SlackBuild index 97968a8eb..e7a80b3ba 100755 --- a/source/n/dnsmasq/dnsmasq.SlackBuild +++ b/source/n/dnsmasq/dnsmasq.SlackBuild @@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=dnsmasq VERSION=${VERSION:-$(echo dnsmasq-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} -BUILD=${BUILD:-2} +BUILD=${BUILD:-1} NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "} diff --git a/source/n/openssh/openssh.SlackBuild b/source/n/openssh/openssh.SlackBuild index 8f15eb463..bd12e278f 100755 --- a/source/n/openssh/openssh.SlackBuild +++ b/source/n/openssh/openssh.SlackBuild @@ -77,12 +77,6 @@ tar xvf $CWD/openssh-$VERSION.tar.gz || tar xvf $CWD/openssh-$VERSION.tar.?z* || cd openssh-$VERSION || exit 1 chown -R root:root . -# OpenSSL 1.1.x support: -zcat $CWD/openssl-1.1.0.patch.gz | patch -p1 --verbose || exit 1 - -# Don't bail on finding OpenSSL 1.1.x, it's fine: -zcat $CWD/openssh.no.openssl.version.check.diff.gz | patch -p1 --verbose || exit 1 - # Restore support for tcpwrappers: zcat $CWD/openssh.tcp_wrappers.diff.gz | patch -p1 --verbose || exit 1 diff --git a/source/n/openssh/openssh.no.openssl.version.check.diff b/source/n/openssh/openssh.no.openssl.version.check.diff deleted file mode 100644 index bab2a2fdc..000000000 --- a/source/n/openssh/openssh.no.openssl.version.check.diff +++ /dev/null @@ -1,12 +0,0 @@ ---- ./configure.ac.orig 2018-04-02 00:38:28.000000000 -0500 -+++ ./configure.ac 2018-05-07 12:56:07.220003323 -0500 -@@ -2641,9 +2641,6 @@ - ;; - 100*) ;; # 1.0.x - 200*) ;; # LibreSSL -- *) -- AC_MSG_ERROR([OpenSSL >= 1.1.0 is not yet supported (have "$ssl_library_ver")]) -- ;; - esac - AC_MSG_RESULT([$ssl_library_ver]) - ], diff --git a/source/n/openssh/openssl-1.1.0.patch b/source/n/openssh/openssl-1.1.0.patch deleted file mode 100644 index 5d6d7780b..000000000 --- a/source/n/openssh/openssl-1.1.0.patch +++ /dev/null @@ -1,1951 +0,0 @@ -diff -aurp old/auth-pam.c new/auth-pam.c ---- old/auth-pam.c 2018-08-22 22:41:42.000000000 -0700 -+++ new/auth-pam.c 2018-08-23 21:31:53.324592767 -0700 -@@ -128,6 +128,10 @@ extern u_int utmp_len; - typedef pthread_t sp_pthread_t; - #else - typedef pid_t sp_pthread_t; -+# define pthread_create(a, b, c, d) _ssh_compat_pthread_create(a, b, c, d) -+# define pthread_exit(a) _ssh_compat_pthread_exit(a) -+# define pthread_cancel(a) _ssh_compat_pthread_cancel(a) -+# define pthread_join(a, b) _ssh_compat_pthread_join(a, b) - #endif - - struct pam_ctxt { -diff -aurp old/cipher.c new/cipher.c ---- old/cipher.c 2018-08-22 22:41:42.000000000 -0700 -+++ new/cipher.c 2018-08-23 21:31:53.327926112 -0700 -@@ -299,7 +299,10 @@ cipher_init(struct sshcipher_ctx **ccp, - goto out; - } - } -- if (EVP_CipherInit(cc->evp, NULL, (u_char *)key, NULL, -1) == 0) { -+ /* in OpenSSL 1.1.0, EVP_CipherInit clears all previous setups; -+ use EVP_CipherInit_ex for augmenting */ -+ if (EVP_CipherInit_ex(cc->evp, NULL, NULL, (u_char *)key, NULL, -1) == 0) -+ { - ret = SSH_ERR_LIBCRYPTO_ERROR; - goto out; - } -@@ -485,7 +488,7 @@ cipher_get_keyiv(struct sshcipher_ctx *c - len, iv)) - return SSH_ERR_LIBCRYPTO_ERROR; - } else -- memcpy(iv, cc->evp->iv, len); -+ memcpy(iv, EVP_CIPHER_CTX_iv(cc->evp), len); - #endif - return 0; - } -@@ -519,14 +522,19 @@ cipher_set_keyiv(struct sshcipher_ctx *c - EVP_CTRL_GCM_SET_IV_FIXED, -1, (void *)iv)) - return SSH_ERR_LIBCRYPTO_ERROR; - } else -- memcpy(cc->evp->iv, iv, evplen); -+ memcpy(EVP_CIPHER_CTX_iv(cc->evp), iv, evplen); - #endif - return 0; - } - - #ifdef WITH_OPENSSL --#define EVP_X_STATE(evp) (evp)->cipher_data --#define EVP_X_STATE_LEN(evp) (evp)->cipher->ctx_size -+# if OPENSSL_VERSION_NUMBER >= 0x10100000UL -+#define EVP_X_STATE(evp) EVP_CIPHER_CTX_get_cipher_data(evp) -+#define EVP_X_STATE_LEN(evp) EVP_CIPHER_impl_ctx_size(EVP_CIPHER_CTX_cipher(evp)) -+# else -+#define EVP_X_STATE(evp) (evp).cipher_data -+#define EVP_X_STATE_LEN(evp) (evp).cipher->ctx_size -+# endif - #endif - - int -diff -aurp old/cipher.h new/cipher.h ---- old/cipher.h 2018-08-22 22:41:42.000000000 -0700 -+++ new/cipher.h 2018-08-23 21:31:53.327926112 -0700 -@@ -46,7 +46,18 @@ - #define CIPHER_DECRYPT 0 - - struct sshcipher; -+#if 0 -+struct sshcipher_ctx { -+ int plaintext; -+ int encrypt; -+ EVP_CIPHER_CTX *evp; -+ struct chachapoly_ctx cp_ctx; /* XXX union with evp? */ -+ struct aesctr_ctx ac_ctx; /* XXX union with evp? */ -+ const struct sshcipher *cipher; -+}; -+#else - struct sshcipher_ctx; -+#endif - - const struct sshcipher *cipher_by_name(const char *); - const char *cipher_warning_message(const struct sshcipher_ctx *); -diff -aurp old/configure new/configure ---- old/configure 2018-08-23 00:09:30.000000000 -0700 -+++ new/configure 2018-08-23 21:31:53.331259457 -0700 -@@ -13032,7 +13032,6 @@ if ac_fn_c_try_run "$LINENO"; then : - 100*) ;; # 1.0.x - 200*) ;; # LibreSSL - *) -- as_fn_error $? "OpenSSL >= 1.1.0 is not yet supported (have \"$ssl_library_ver\")" "$LINENO" 5 - ;; - esac - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ssl_library_ver" >&5 -diff -aurp old/dh.c new/dh.c ---- old/dh.c 2018-08-22 22:41:42.000000000 -0700 -+++ new/dh.c 2018-08-23 21:39:18.863765579 -0700 -@@ -216,14 +216,15 @@ choose_dh(int min, int wantbits, int max - /* diffie-hellman-groupN-sha1 */ - - int --dh_pub_is_valid(DH *dh, BIGNUM *dh_pub) -+dh_pub_is_valid(const DH *dh, const BIGNUM *dh_pub) - { - int i; - int n = BN_num_bits(dh_pub); - int bits_set = 0; - BIGNUM *tmp; -+ const BIGNUM *p; - -- if (dh_pub->neg) { -+ if (BN_is_negative(dh_pub)) { - logit("invalid public DH value: negative"); - return 0; - } -@@ -236,7 +237,8 @@ dh_pub_is_valid(DH *dh, BIGNUM *dh_pub) - error("%s: BN_new failed", __func__); - return 0; - } -- if (!BN_sub(tmp, dh->p, BN_value_one()) || -+ DH_get0_pqg(dh, &p, NULL, NULL); -+ if (!BN_sub(tmp, p, BN_value_one()) || - BN_cmp(dh_pub, tmp) != -1) { /* pub_exp > p-2 */ - BN_clear_free(tmp); - logit("invalid public DH value: >= p-1"); -@@ -247,14 +249,14 @@ dh_pub_is_valid(DH *dh, BIGNUM *dh_pub) - for (i = 0; i <= n; i++) - if (BN_is_bit_set(dh_pub, i)) - bits_set++; -- debug2("bits set: %d/%d", bits_set, BN_num_bits(dh->p)); -+ debug2("bits set: %d/%d", bits_set, BN_num_bits(p)); - - /* - * if g==2 and bits_set==1 then computing log_g(dh_pub) is trivial - */ - if (bits_set < 4) { - logit("invalid public DH value (%d/%d)", -- bits_set, BN_num_bits(dh->p)); -+ bits_set, BN_num_bits(p)); - return 0; - } - return 1; -@@ -264,9 +266,13 @@ int - dh_gen_key(DH *dh, int need) - { - int pbits; -+ const BIGNUM *p, *pub_key; -+ BIGNUM *priv_key; - -- if (need < 0 || dh->p == NULL || -- (pbits = BN_num_bits(dh->p)) <= 0 || -+ DH_get0_pqg(dh, &p, NULL, NULL); -+ -+ if (need < 0 || p == NULL || -+ (pbits = BN_num_bits(p)) <= 0 || - need > INT_MAX / 2 || 2 * need > pbits) - return SSH_ERR_INVALID_ARGUMENT; - if (need < 256) -@@ -275,11 +281,13 @@ dh_gen_key(DH *dh, int need) - * Pollard Rho, Big step/Little Step attacks are O(sqrt(n)), - * so double requested need here. - */ -- dh->length = MINIMUM(need * 2, pbits - 1); -- if (DH_generate_key(dh) == 0 || -- !dh_pub_is_valid(dh, dh->pub_key)) { -- BN_clear_free(dh->priv_key); -- dh->priv_key = NULL; -+ DH_set_length(dh, MIN(need * 2, pbits - 1)); -+ if (DH_generate_key(dh) == 0) { -+ return SSH_ERR_LIBCRYPTO_ERROR; -+ } -+ DH_get0_key(dh, &pub_key, &priv_key); -+ if (!dh_pub_is_valid(dh, pub_key)) { -+ BN_clear(priv_key); - return SSH_ERR_LIBCRYPTO_ERROR; - } - return 0; -@@ -288,16 +296,27 @@ dh_gen_key(DH *dh, int need) - DH * - dh_new_group_asc(const char *gen, const char *modulus) - { -- DH *dh; -+ DH *dh = NULL; -+ BIGNUM *p=NULL, *g=NULL; - -- if ((dh = DH_new()) == NULL) -- return NULL; -- if (BN_hex2bn(&dh->p, modulus) == 0 || -- BN_hex2bn(&dh->g, gen) == 0) { -- DH_free(dh); -- return NULL; -+ if ((dh = DH_new()) == NULL || -+ (p = BN_new()) == NULL || -+ (g = BN_new()) == NULL) -+ goto null; -+ if (BN_hex2bn(&p, modulus) == 0 || -+ BN_hex2bn(&g, gen) == 0) { -+ goto null; - } -+ if (DH_set0_pqg(dh, p, NULL, g) == 0) { -+ goto null; -+ } -+ p = g = NULL; - return (dh); -+null: -+ BN_free(p); -+ BN_free(g); -+ DH_free(dh); -+ return NULL; - } - - /* -@@ -312,8 +331,8 @@ dh_new_group(BIGNUM *gen, BIGNUM *modulu - - if ((dh = DH_new()) == NULL) - return NULL; -- dh->p = modulus; -- dh->g = gen; -+ if (DH_set0_pqg(dh, modulus, NULL, gen) == 0) -+ return NULL; - - return (dh); - } -diff -aurp old/dh.h new/dh.h ---- old/dh.h 2018-08-22 22:41:42.000000000 -0700 -+++ new/dh.h 2018-08-23 21:31:53.331259457 -0700 -@@ -42,7 +42,7 @@ DH *dh_new_group18(void); - DH *dh_new_group_fallback(int); - - int dh_gen_key(DH *, int); --int dh_pub_is_valid(DH *, BIGNUM *); -+int dh_pub_is_valid(const DH *, const BIGNUM *); - - u_int dh_estimate(int); - -diff -aurp old/digest-openssl.c new/digest-openssl.c ---- old/digest-openssl.c 2018-08-22 22:41:42.000000000 -0700 -+++ new/digest-openssl.c 2018-08-23 21:31:53.331259457 -0700 -@@ -43,7 +43,7 @@ - - struct ssh_digest_ctx { - int alg; -- EVP_MD_CTX mdctx; -+ EVP_MD_CTX *mdctx; - }; - - struct ssh_digest { -@@ -106,20 +106,21 @@ ssh_digest_bytes(int alg) - size_t - ssh_digest_blocksize(struct ssh_digest_ctx *ctx) - { -- return EVP_MD_CTX_block_size(&ctx->mdctx); -+ return EVP_MD_CTX_block_size(ctx->mdctx); - } - - struct ssh_digest_ctx * - ssh_digest_start(int alg) - { - const struct ssh_digest *digest = ssh_digest_by_alg(alg); -- struct ssh_digest_ctx *ret; -+ struct ssh_digest_ctx *ret = NULL; - - if (digest == NULL || ((ret = calloc(1, sizeof(*ret))) == NULL)) - return NULL; - ret->alg = alg; -- EVP_MD_CTX_init(&ret->mdctx); -- if (EVP_DigestInit_ex(&ret->mdctx, digest->mdfunc(), NULL) != 1) { -+ if ((ret->mdctx = EVP_MD_CTX_new()) == NULL || -+ EVP_DigestInit_ex(ret->mdctx, digest->mdfunc(), NULL) != 1) { -+ EVP_MD_CTX_free(ret->mdctx); - free(ret); - return NULL; - } -@@ -132,7 +133,7 @@ ssh_digest_copy_state(struct ssh_digest_ - if (from->alg != to->alg) - return SSH_ERR_INVALID_ARGUMENT; - /* we have bcopy-style order while openssl has memcpy-style */ -- if (!EVP_MD_CTX_copy_ex(&to->mdctx, &from->mdctx)) -+ if (!EVP_MD_CTX_copy_ex(to->mdctx, from->mdctx)) - return SSH_ERR_LIBCRYPTO_ERROR; - return 0; - } -@@ -140,7 +141,7 @@ ssh_digest_copy_state(struct ssh_digest_ - int - ssh_digest_update(struct ssh_digest_ctx *ctx, const void *m, size_t mlen) - { -- if (EVP_DigestUpdate(&ctx->mdctx, m, mlen) != 1) -+ if (EVP_DigestUpdate(ctx->mdctx, m, mlen) != 1) - return SSH_ERR_LIBCRYPTO_ERROR; - return 0; - } -@@ -161,7 +162,7 @@ ssh_digest_final(struct ssh_digest_ctx * - return SSH_ERR_INVALID_ARGUMENT; - if (dlen < digest->digest_len) /* No truncation allowed */ - return SSH_ERR_INVALID_ARGUMENT; -- if (EVP_DigestFinal_ex(&ctx->mdctx, d, &l) != 1) -+ if (EVP_DigestFinal_ex(ctx->mdctx, d, &l) != 1) - return SSH_ERR_LIBCRYPTO_ERROR; - if (l != digest->digest_len) /* sanity */ - return SSH_ERR_INTERNAL_ERROR; -@@ -172,7 +173,7 @@ void - ssh_digest_free(struct ssh_digest_ctx *ctx) - { - if (ctx != NULL) { -- EVP_MD_CTX_cleanup(&ctx->mdctx); -+ EVP_MD_CTX_free(ctx->mdctx); - explicit_bzero(ctx, sizeof(*ctx)); - free(ctx); - } -diff -aurp old/kexdhc.c new/kexdhc.c ---- old/kexdhc.c 2018-08-22 22:41:42.000000000 -0700 -+++ new/kexdhc.c 2018-08-23 21:31:53.331259457 -0700 -@@ -81,11 +81,16 @@ kexdh_client(struct ssh *ssh) - goto out; - } - debug("sending SSH2_MSG_KEXDH_INIT"); -- if ((r = dh_gen_key(kex->dh, kex->we_need * 8)) != 0 || -- (r = sshpkt_start(ssh, SSH2_MSG_KEXDH_INIT)) != 0 || -- (r = sshpkt_put_bignum2(ssh, kex->dh->pub_key)) != 0 || -+ { -+ const BIGNUM *pub_key; -+ if ((r = dh_gen_key(kex->dh, kex->we_need * 8)) != 0) -+ goto out; -+ DH_get0_key(kex->dh, &pub_key, NULL); -+ if ((r = sshpkt_start(ssh, SSH2_MSG_KEXDH_INIT)) != 0 || -+ (r = sshpkt_put_bignum2(ssh, pub_key)) != 0 || - (r = sshpkt_send(ssh)) != 0) - goto out; -+ } - #ifdef DEBUG_KEXDH - DHparams_print_fp(stderr, kex->dh); - fprintf(stderr, "pub= "); -@@ -169,6 +174,9 @@ input_kex_dh(int type, u_int32_t seq, st - - /* calc and verify H */ - hashlen = sizeof(hash); -+ { -+ const BIGNUM *pub_key; -+ DH_get0_key(kex->dh, &pub_key, NULL); - if ((r = kex_dh_hash( - kex->hash_alg, - kex->client_version_string, -@@ -176,11 +184,13 @@ input_kex_dh(int type, u_int32_t seq, st - sshbuf_ptr(kex->my), sshbuf_len(kex->my), - sshbuf_ptr(kex->peer), sshbuf_len(kex->peer), - server_host_key_blob, sbloblen, -- kex->dh->pub_key, -+ pub_key, - dh_server_pub, - shared_secret, -- hash, &hashlen)) != 0) -+ hash, &hashlen)) != 0) { - goto out; -+ } -+ } - - if ((r = sshkey_verify(server_host_key, signature, slen, hash, hashlen, - kex->hostkey_alg, ssh->compat)) != 0) -diff -aurp old/kexdhs.c new/kexdhs.c ---- old/kexdhs.c 2018-08-22 22:41:42.000000000 -0700 -+++ new/kexdhs.c 2018-08-23 21:36:50.600564263 -0700 -@@ -163,6 +163,9 @@ input_kex_dh_init(int type, u_int32_t se - goto out; - /* calc H */ - hashlen = sizeof(hash); -+ { -+ const BIGNUM *pub_key; -+ DH_get0_key(kex->dh, &pub_key, NULL); - if ((r = kex_dh_hash( - kex->hash_alg, - kex->client_version_string, -@@ -171,10 +174,12 @@ input_kex_dh_init(int type, u_int32_t se - sshbuf_ptr(kex->my), sshbuf_len(kex->my), - server_host_key_blob, sbloblen, - dh_client_pub, -- kex->dh->pub_key, -+ pub_key, - shared_secret, -- hash, &hashlen)) != 0) -+ hash, &hashlen)) != 0) { - goto out; -+ } -+ } - - /* save session id := H */ - if (kex->session_id == NULL) { -@@ -195,12 +200,16 @@ input_kex_dh_init(int type, u_int32_t se - /* destroy_sensitive_data(); */ - - /* send server hostkey, DH pubkey 'f' and signed H */ -+ { -+ const BIGNUM *pub_key; -+ DH_get0_key(kex->dh, &pub_key, NULL); - if ((r = sshpkt_start(ssh, SSH2_MSG_KEXDH_REPLY)) != 0 || - (r = sshpkt_put_string(ssh, server_host_key_blob, sbloblen)) != 0 || -- (r = sshpkt_put_bignum2(ssh, kex->dh->pub_key)) != 0 || /* f */ -+ (r = sshpkt_put_bignum2(ssh, pub_key)) != 0 || /* f */ - (r = sshpkt_put_string(ssh, signature, slen)) != 0 || - (r = sshpkt_send(ssh)) != 0) - goto out; -+ } - - if ((r = kex_derive_keys_bn(ssh, hash, hashlen, shared_secret)) == 0) - r = kex_send_newkeys(ssh); -diff -aurp old/kexgexc.c new/kexgexc.c ---- old/kexgexc.c 2018-08-22 22:41:42.000000000 -0700 -+++ new/kexgexc.c 2018-08-23 21:31:53.331259457 -0700 -@@ -118,11 +118,17 @@ input_kex_dh_gex_group(int type, u_int32 - p = g = NULL; /* belong to kex->dh now */ - - /* generate and send 'e', client DH public key */ -- if ((r = dh_gen_key(kex->dh, kex->we_need * 8)) != 0 || -- (r = sshpkt_start(ssh, SSH2_MSG_KEX_DH_GEX_INIT)) != 0 || -- (r = sshpkt_put_bignum2(ssh, kex->dh->pub_key)) != 0 || -- (r = sshpkt_send(ssh)) != 0) -+ { -+ const BIGNUM *pub_key; -+ if ((r = dh_gen_key(kex->dh, kex->we_need * 8)) != 0) -+ goto out; -+ DH_get0_key(kex->dh, &pub_key, NULL); -+ if ((r = sshpkt_start(ssh, SSH2_MSG_KEX_DH_GEX_INIT)) != 0 || -+ (r = sshpkt_put_bignum2(ssh, pub_key)) != 0 || -+ (r = sshpkt_send(ssh)) != 0) { - goto out; -+ } -+ } - debug("SSH2_MSG_KEX_DH_GEX_INIT sent"); - #ifdef DEBUG_KEXDH - DHparams_print_fp(stderr, kex->dh); -@@ -212,6 +218,10 @@ input_kex_dh_gex_reply(int type, u_int32 - - /* calc and verify H */ - hashlen = sizeof(hash); -+ { -+ const BIGNUM *p, *g, *pub_key; -+ DH_get0_pqg(kex->dh, &p, NULL, &g); -+ DH_get0_key(kex->dh, &pub_key, NULL); - if ((r = kexgex_hash( - kex->hash_alg, - kex->client_version_string, -@@ -220,12 +230,14 @@ input_kex_dh_gex_reply(int type, u_int32 - sshbuf_ptr(kex->peer), sshbuf_len(kex->peer), - server_host_key_blob, sbloblen, - kex->min, kex->nbits, kex->max, -- kex->dh->p, kex->dh->g, -- kex->dh->pub_key, -+ p, g, -+ pub_key, - dh_server_pub, - shared_secret, -- hash, &hashlen)) != 0) -+ hash, &hashlen)) != 0) { - goto out; -+ } -+ } - - if ((r = sshkey_verify(server_host_key, signature, slen, hash, - hashlen, kex->hostkey_alg, ssh->compat)) != 0) -diff -aurp old/kexgexs.c new/kexgexs.c ---- old/kexgexs.c 2018-08-22 22:41:42.000000000 -0700 -+++ new/kexgexs.c 2018-08-23 21:36:11.493972372 -0700 -@@ -101,11 +101,16 @@ input_kex_dh_gex_request(int type, u_int - goto out; - } - debug("SSH2_MSG_KEX_DH_GEX_GROUP sent"); -+ { -+ const BIGNUM *p, *g; -+ DH_get0_pqg(kex->dh, &p, NULL, &g); - if ((r = sshpkt_start(ssh, SSH2_MSG_KEX_DH_GEX_GROUP)) != 0 || -- (r = sshpkt_put_bignum2(ssh, kex->dh->p)) != 0 || -- (r = sshpkt_put_bignum2(ssh, kex->dh->g)) != 0 || -- (r = sshpkt_send(ssh)) != 0) -+ (r = sshpkt_put_bignum2(ssh, p)) != 0 || -+ (r = sshpkt_put_bignum2(ssh, g)) != 0 || -+ (r = sshpkt_send(ssh)) != 0) { - goto out; -+ } -+ } - - /* Compute our exchange value in parallel with the client */ - if ((r = dh_gen_key(kex->dh, kex->we_need * 8)) != 0) -@@ -191,6 +196,10 @@ input_kex_dh_gex_init(int type, u_int32_ - goto out; - /* calc H */ - hashlen = sizeof(hash); -+ { -+ const BIGNUM *p, *g, *pub_key; -+ DH_get0_pqg(kex->dh, &p, NULL, &g); -+ DH_get0_key(kex->dh, &pub_key, NULL); - if ((r = kexgex_hash( - kex->hash_alg, - kex->client_version_string, -@@ -199,12 +208,14 @@ input_kex_dh_gex_init(int type, u_int32_ - sshbuf_ptr(kex->my), sshbuf_len(kex->my), - server_host_key_blob, sbloblen, - kex->min, kex->nbits, kex->max, -- kex->dh->p, kex->dh->g, -+ p, g, - dh_client_pub, -- kex->dh->pub_key, -+ pub_key, - shared_secret, -- hash, &hashlen)) != 0) -+ hash, &hashlen)) != 0) { - goto out; -+ } -+ } - - /* save session id := H */ - if (kex->session_id == NULL) { -@@ -225,12 +236,16 @@ input_kex_dh_gex_init(int type, u_int32_ - /* destroy_sensitive_data(); */ - - /* send server hostkey, DH pubkey 'f' and signed H */ -+ { -+ const BIGNUM *pub_key; -+ DH_get0_key(kex->dh, &pub_key, NULL); - if ((r = sshpkt_start(ssh, SSH2_MSG_KEX_DH_GEX_REPLY)) != 0 || - (r = sshpkt_put_string(ssh, server_host_key_blob, sbloblen)) != 0 || -- (r = sshpkt_put_bignum2(ssh, kex->dh->pub_key)) != 0 || /* f */ -+ (r = sshpkt_put_bignum2(ssh, pub_key)) != 0 || /* f */ - (r = sshpkt_put_string(ssh, signature, slen)) != 0 || - (r = sshpkt_send(ssh)) != 0) - goto out; -+ } - - if ((r = kex_derive_keys_bn(ssh, hash, hashlen, shared_secret)) == 0) - r = kex_send_newkeys(ssh); -diff -aurp old/monitor.c new/monitor.c ---- old/monitor.c 2018-08-22 22:41:42.000000000 -0700 -+++ new/monitor.c 2018-08-23 21:34:14.594343260 -0700 -@@ -589,10 +589,12 @@ mm_answer_moduli(int sock, struct sshbuf - fatal("%s: buffer error: %s", __func__, ssh_err(r)); - return (0); - } else { -+ const BIGNUM *p, *g; -+ DH_get0_pqg(dh, &p, NULL, &g); - /* Send first bignum */ - if ((r = sshbuf_put_u8(m, 1)) != 0 || -- (r = sshbuf_put_bignum2(m, dh->p)) != 0 || -- (r = sshbuf_put_bignum2(m, dh->g)) != 0) -+ (r = sshbuf_put_bignum2(m, p)) != 0 || -+ (r = sshbuf_put_bignum2(m, g)) != 0) - fatal("%s: buffer error: %s", __func__, ssh_err(r)); - - DH_free(dh); -diff -aurp old/openbsd-compat/openssl-compat.c new/openbsd-compat/openssl-compat.c ---- old/openbsd-compat/openssl-compat.c 2018-08-22 22:41:42.000000000 -0700 -+++ new/openbsd-compat/openssl-compat.c 2018-08-23 21:31:53.334592801 -0700 -@@ -75,7 +75,6 @@ ssh_OpenSSL_add_all_algorithms(void) - /* Enable use of crypto hardware */ - ENGINE_load_builtin_engines(); - ENGINE_register_all_complete(); -- OPENSSL_config(NULL); - } - #endif - -diff -aurp old/regress/unittests/sshkey/test_file.c new/regress/unittests/sshkey/test_file.c ---- old/regress/unittests/sshkey/test_file.c 2018-08-22 22:41:42.000000000 -0700 -+++ new/regress/unittests/sshkey/test_file.c 2018-08-23 21:31:53.334592801 -0700 -@@ -60,9 +60,14 @@ sshkey_file_tests(void) - a = load_bignum("rsa_1.param.n"); - b = load_bignum("rsa_1.param.p"); - c = load_bignum("rsa_1.param.q"); -- ASSERT_BIGNUM_EQ(k1->rsa->n, a); -- ASSERT_BIGNUM_EQ(k1->rsa->p, b); -- ASSERT_BIGNUM_EQ(k1->rsa->q, c); -+ { -+ const BIGNUM *n, *p, *q; -+ RSA_get0_key(k1->rsa, &n, NULL, NULL); -+ RSA_get0_factors(k1->rsa, &p, &q); -+ ASSERT_BIGNUM_EQ(n, a); -+ ASSERT_BIGNUM_EQ(p, b); -+ ASSERT_BIGNUM_EQ(q, c); -+ } - BN_free(a); - BN_free(b); - BN_free(c); -@@ -151,9 +156,14 @@ sshkey_file_tests(void) - a = load_bignum("dsa_1.param.g"); - b = load_bignum("dsa_1.param.priv"); - c = load_bignum("dsa_1.param.pub"); -- ASSERT_BIGNUM_EQ(k1->dsa->g, a); -- ASSERT_BIGNUM_EQ(k1->dsa->priv_key, b); -- ASSERT_BIGNUM_EQ(k1->dsa->pub_key, c); -+ { -+ const BIGNUM *g, *priv_key, *pub_key; -+ DSA_get0_pqg(k1->dsa, NULL, NULL, &g); -+ DSA_get0_key(k1->dsa, &pub_key, &priv_key); -+ ASSERT_BIGNUM_EQ(g, a); -+ ASSERT_BIGNUM_EQ(priv_key, b); -+ ASSERT_BIGNUM_EQ(pub_key, c); -+ } - BN_free(a); - BN_free(b); - BN_free(c); -diff -aurp old/regress/unittests/sshkey/test_sshkey.c new/regress/unittests/sshkey/test_sshkey.c ---- old/regress/unittests/sshkey/test_sshkey.c 2018-08-22 22:41:42.000000000 -0700 -+++ new/regress/unittests/sshkey/test_sshkey.c 2018-08-23 21:31:53.334592801 -0700 -@@ -197,9 +197,14 @@ sshkey_tests(void) - k1 = sshkey_new(KEY_RSA); - ASSERT_PTR_NE(k1, NULL); - ASSERT_PTR_NE(k1->rsa, NULL); -- ASSERT_PTR_NE(k1->rsa->n, NULL); -- ASSERT_PTR_NE(k1->rsa->e, NULL); -- ASSERT_PTR_EQ(k1->rsa->p, NULL); -+ { -+ const BIGNUM *n, *e, *p; -+ RSA_get0_key(k1->rsa, &n, &e, NULL); -+ RSA_get0_factors(k1->rsa, &p, NULL); -+ ASSERT_PTR_NE(n, NULL); -+ ASSERT_PTR_NE(e, NULL); -+ ASSERT_PTR_EQ(p, NULL); -+ } - sshkey_free(k1); - TEST_DONE(); - -@@ -207,8 +212,13 @@ sshkey_tests(void) - k1 = sshkey_new(KEY_DSA); - ASSERT_PTR_NE(k1, NULL); - ASSERT_PTR_NE(k1->dsa, NULL); -- ASSERT_PTR_NE(k1->dsa->g, NULL); -- ASSERT_PTR_EQ(k1->dsa->priv_key, NULL); -+ { -+ const BIGNUM *g, *priv_key; -+ DSA_get0_pqg(k1->dsa, NULL, NULL, &g); -+ DSA_get0_key(k1->dsa, NULL, &priv_key); -+ ASSERT_PTR_NE(g, NULL); -+ ASSERT_PTR_EQ(priv_key, NULL); -+ } - sshkey_free(k1); - TEST_DONE(); - -@@ -234,9 +244,14 @@ sshkey_tests(void) - k1 = sshkey_new_private(KEY_RSA); - ASSERT_PTR_NE(k1, NULL); - ASSERT_PTR_NE(k1->rsa, NULL); -- ASSERT_PTR_NE(k1->rsa->n, NULL); -- ASSERT_PTR_NE(k1->rsa->e, NULL); -- ASSERT_PTR_NE(k1->rsa->p, NULL); -+ { -+ const BIGNUM *n, *e, *p; -+ RSA_get0_key(k1->rsa, &n, &e, NULL); -+ RSA_get0_factors(k1->rsa, &p, NULL); -+ ASSERT_PTR_NE(n, NULL); -+ ASSERT_PTR_NE(e, NULL); -+ ASSERT_PTR_NE(p, NULL); -+ } - ASSERT_INT_EQ(sshkey_add_private(k1), 0); - sshkey_free(k1); - TEST_DONE(); -@@ -245,8 +260,13 @@ sshkey_tests(void) - k1 = sshkey_new_private(KEY_DSA); - ASSERT_PTR_NE(k1, NULL); - ASSERT_PTR_NE(k1->dsa, NULL); -- ASSERT_PTR_NE(k1->dsa->g, NULL); -- ASSERT_PTR_NE(k1->dsa->priv_key, NULL); -+ { -+ const BIGNUM *g, *priv_key; -+ DSA_get0_pqg(k1->dsa, NULL, NULL, &g); -+ DSA_get0_key(k1->dsa, NULL, &priv_key); -+ ASSERT_PTR_NE(g, NULL); -+ ASSERT_PTR_NE(priv_key, NULL); -+ } - ASSERT_INT_EQ(sshkey_add_private(k1), 0); - sshkey_free(k1); - TEST_DONE(); -@@ -285,18 +305,28 @@ sshkey_tests(void) - ASSERT_INT_EQ(sshkey_generate(KEY_RSA, 1024, &kr), 0); - ASSERT_PTR_NE(kr, NULL); - ASSERT_PTR_NE(kr->rsa, NULL); -- ASSERT_PTR_NE(kr->rsa->n, NULL); -- ASSERT_PTR_NE(kr->rsa->e, NULL); -- ASSERT_PTR_NE(kr->rsa->p, NULL); -- ASSERT_INT_EQ(BN_num_bits(kr->rsa->n), 1024); -+ { -+ const BIGNUM *n, *e, *p; -+ RSA_get0_key(kr->rsa, &n, &e, NULL); -+ RSA_get0_factors(kr->rsa, &p, NULL); -+ ASSERT_PTR_NE(n, NULL); -+ ASSERT_PTR_NE(e, NULL); -+ ASSERT_PTR_NE(p, NULL); -+ ASSERT_INT_EQ(BN_num_bits(n), 1024); -+ } - TEST_DONE(); - - TEST_START("generate KEY_DSA"); - ASSERT_INT_EQ(sshkey_generate(KEY_DSA, 1024, &kd), 0); - ASSERT_PTR_NE(kd, NULL); - ASSERT_PTR_NE(kd->dsa, NULL); -- ASSERT_PTR_NE(kd->dsa->g, NULL); -- ASSERT_PTR_NE(kd->dsa->priv_key, NULL); -+ { -+ const BIGNUM *g, *priv_key; -+ DSA_get0_pqg(kd->dsa, NULL, NULL, &g); -+ DSA_get0_key(kd->dsa, NULL, &priv_key); -+ ASSERT_PTR_NE(g, NULL); -+ ASSERT_PTR_NE(priv_key, NULL); -+ } - TEST_DONE(); - - #ifdef OPENSSL_HAS_ECC -@@ -323,9 +353,14 @@ sshkey_tests(void) - ASSERT_PTR_NE(kr, k1); - ASSERT_INT_EQ(k1->type, KEY_RSA); - ASSERT_PTR_NE(k1->rsa, NULL); -- ASSERT_PTR_NE(k1->rsa->n, NULL); -- ASSERT_PTR_NE(k1->rsa->e, NULL); -- ASSERT_PTR_EQ(k1->rsa->p, NULL); -+ { -+ const BIGNUM *n, *e, *p; -+ RSA_get0_key(k1->rsa, &n, &e, NULL); -+ RSA_get0_factors(k1->rsa, &p, NULL); -+ ASSERT_PTR_NE(n, NULL); -+ ASSERT_PTR_NE(e, NULL); -+ ASSERT_PTR_EQ(p, NULL); -+ } - TEST_DONE(); - - TEST_START("equal KEY_RSA/demoted KEY_RSA"); -@@ -339,8 +374,13 @@ sshkey_tests(void) - ASSERT_PTR_NE(kd, k1); - ASSERT_INT_EQ(k1->type, KEY_DSA); - ASSERT_PTR_NE(k1->dsa, NULL); -- ASSERT_PTR_NE(k1->dsa->g, NULL); -- ASSERT_PTR_EQ(k1->dsa->priv_key, NULL); -+ { -+ const BIGNUM *g, *priv_key; -+ DSA_get0_pqg(k1->dsa, NULL, NULL, &g); -+ DSA_get0_key(k1->dsa, NULL, &priv_key); -+ ASSERT_PTR_NE(g, NULL); -+ ASSERT_PTR_EQ(priv_key, NULL); -+ } - TEST_DONE(); - - TEST_START("equal KEY_DSA/demoted KEY_DSA"); -diff -aurp old/ssh-dss.c new/ssh-dss.c ---- old/ssh-dss.c 2018-08-22 22:41:42.000000000 -0700 -+++ new/ssh-dss.c 2018-08-23 21:31:53.334592801 -0700 -@@ -53,6 +53,7 @@ ssh_dss_sign(const struct sshkey *key, u - DSA_SIG *sig = NULL; - u_char digest[SSH_DIGEST_MAX_LENGTH], sigblob[SIGBLOB_LEN]; - size_t rlen, slen, len, dlen = ssh_digest_bytes(SSH_DIGEST_SHA1); -+ const BIGNUM *r, *s; - struct sshbuf *b = NULL; - int ret = SSH_ERR_INVALID_ARGUMENT; - -@@ -76,15 +77,16 @@ ssh_dss_sign(const struct sshkey *key, u - goto out; - } - -- rlen = BN_num_bytes(sig->r); -- slen = BN_num_bytes(sig->s); -+ DSA_SIG_get0(sig, &r, &s); -+ rlen = BN_num_bytes(r); -+ slen = BN_num_bytes(s); - if (rlen > INTBLOB_LEN || slen > INTBLOB_LEN) { - ret = SSH_ERR_INTERNAL_ERROR; - goto out; - } - explicit_bzero(sigblob, SIGBLOB_LEN); -- BN_bn2bin(sig->r, sigblob + SIGBLOB_LEN - INTBLOB_LEN - rlen); -- BN_bn2bin(sig->s, sigblob + SIGBLOB_LEN - slen); -+ BN_bn2bin(r, sigblob + SIGBLOB_LEN - INTBLOB_LEN - rlen); -+ BN_bn2bin(s, sigblob + SIGBLOB_LEN - slen); - - if ((b = sshbuf_new()) == NULL) { - ret = SSH_ERR_ALLOC_FAIL; -@@ -154,17 +156,26 @@ ssh_dss_verify(const struct sshkey *key, - } - - /* parse signature */ -+ { -+ BIGNUM *r=NULL, *s=NULL; - if ((sig = DSA_SIG_new()) == NULL || -- (sig->r = BN_new()) == NULL || -- (sig->s = BN_new()) == NULL) { -+ (r = BN_new()) == NULL || -+ (s = BN_new()) == NULL) { - ret = SSH_ERR_ALLOC_FAIL; -+ BN_free(r); -+ BN_free(s); - goto out; - } -- if ((BN_bin2bn(sigblob, INTBLOB_LEN, sig->r) == NULL) || -- (BN_bin2bn(sigblob+ INTBLOB_LEN, INTBLOB_LEN, sig->s) == NULL)) { -+ if ((BN_bin2bn(sigblob, INTBLOB_LEN, r) == NULL) || -+ (BN_bin2bn(sigblob+ INTBLOB_LEN, INTBLOB_LEN, s) == NULL)) { - ret = SSH_ERR_LIBCRYPTO_ERROR; -+ BN_free(r); -+ BN_free(s); - goto out; - } -+ DSA_SIG_set0(sig, r, s); -+ r = s = NULL; -+ } - - /* sha1 the data */ - if ((ret = ssh_digest_memory(SSH_DIGEST_SHA1, data, datalen, -diff -aurp old/ssh-ecdsa.c new/ssh-ecdsa.c ---- old/ssh-ecdsa.c 2018-08-22 22:41:42.000000000 -0700 -+++ new/ssh-ecdsa.c 2018-08-23 21:31:53.334592801 -0700 -@@ -80,9 +80,14 @@ ssh_ecdsa_sign(const struct sshkey *key, - ret = SSH_ERR_ALLOC_FAIL; - goto out; - } -- if ((ret = sshbuf_put_bignum2(bb, sig->r)) != 0 || -- (ret = sshbuf_put_bignum2(bb, sig->s)) != 0) -+ { -+ const BIGNUM *r, *s; -+ ECDSA_SIG_get0(sig, &r, &s); -+ if ((ret = sshbuf_put_bignum2(bb, r)) != 0 || -+ (ret = sshbuf_put_bignum2(bb, s)) != 0) { - goto out; -+ } -+ } - if ((ret = sshbuf_put_cstring(b, sshkey_ssh_name_plain(key))) != 0 || - (ret = sshbuf_put_stringb(b, bb)) != 0) - goto out; -@@ -150,11 +155,27 @@ ssh_ecdsa_verify(const struct sshkey *ke - ret = SSH_ERR_ALLOC_FAIL; - goto out; - } -- if (sshbuf_get_bignum2(sigbuf, sig->r) != 0 || -- sshbuf_get_bignum2(sigbuf, sig->s) != 0) { -+ { -+ BIGNUM *r=NULL, *s=NULL; -+ if ((r = BN_new()) == NULL || -+ (s = BN_new()) == NULL) { -+ ret = SSH_ERR_ALLOC_FAIL; -+ goto out_rs; -+ } -+ if (sshbuf_get_bignum2(sigbuf, r) != 0 || -+ sshbuf_get_bignum2(sigbuf, s) != 0) { - ret = SSH_ERR_INVALID_FORMAT; -+ goto out_rs; -+ } -+ if (ECDSA_SIG_set0(sig, r, s) == 0) { -+ ret = SSH_ERR_LIBCRYPTO_ERROR; -+out_rs: -+ BN_free(r); -+ BN_free(s); - goto out; - } -+ r = s = NULL; -+ } - if (sshbuf_len(sigbuf) != 0) { - ret = SSH_ERR_UNEXPECTED_TRAILING_DATA; - goto out; -diff -aurp old/ssh-keygen.c new/ssh-keygen.c ---- old/ssh-keygen.c 2018-08-22 22:41:42.000000000 -0700 -+++ new/ssh-keygen.c 2018-08-23 21:31:53.334592801 -0700 -@@ -494,11 +494,33 @@ do_convert_private_ssh2_from_blob(u_char - - switch (key->type) { - case KEY_DSA: -- buffer_get_bignum_bits(b, key->dsa->p); -- buffer_get_bignum_bits(b, key->dsa->g); -- buffer_get_bignum_bits(b, key->dsa->q); -- buffer_get_bignum_bits(b, key->dsa->pub_key); -- buffer_get_bignum_bits(b, key->dsa->priv_key); -+ { -+ BIGNUM *p=NULL, *g=NULL, *q=NULL, *pub_key=NULL, *priv_key=NULL; -+ if ((p=BN_new()) == NULL || -+ (g=BN_new()) == NULL || -+ (q=BN_new()) == NULL || -+ (pub_key=BN_new()) == NULL || -+ (priv_key=BN_new()) == NULL) { -+ BN_free(p); -+ BN_free(g); -+ BN_free(q); -+ BN_free(pub_key); -+ BN_free(priv_key); -+ return NULL; -+ } -+ buffer_get_bignum_bits(b, p); -+ buffer_get_bignum_bits(b, g); -+ buffer_get_bignum_bits(b, q); -+ buffer_get_bignum_bits(b, pub_key); -+ buffer_get_bignum_bits(b, priv_key); -+ if (DSA_set0_pqg(key->dsa, p, q, g) == 0 || -+ DSA_set0_key(key->dsa, pub_key, priv_key) == 0) { -+ fatal("failed to set DSA key"); -+ BN_free(p); BN_free(g); BN_free(q); -+ BN_free(pub_key); BN_free(priv_key); -+ return NULL; -+ } -+ } - break; - case KEY_RSA: - if ((r = sshbuf_get_u8(b, &e1)) != 0 || -@@ -515,16 +537,52 @@ do_convert_private_ssh2_from_blob(u_char - e += e3; - debug("e %lx", e); - } -- if (!BN_set_word(key->rsa->e, e)) { -+ { -+ BIGNUM *rsa_e = NULL; -+ BIGNUM *d=NULL, *n=NULL, *iqmp=NULL, *q=NULL, *p=NULL; -+ BIGNUM *dmp1=NULL, *dmq1=NULL; /* dummy input to set in RSA_set0_crt_params */ -+ rsa_e = BN_new(); -+ if (!rsa_e || !BN_set_word(rsa_e, e)) { -+ if (rsa_e) BN_free(rsa_e); - sshbuf_free(b); - sshkey_free(key); - return NULL; - } -- buffer_get_bignum_bits(b, key->rsa->d); -- buffer_get_bignum_bits(b, key->rsa->n); -- buffer_get_bignum_bits(b, key->rsa->iqmp); -- buffer_get_bignum_bits(b, key->rsa->q); -- buffer_get_bignum_bits(b, key->rsa->p); -+ if ((d=BN_new()) == NULL || -+ (n=BN_new()) == NULL || -+ (iqmp=BN_new()) == NULL || -+ (q=BN_new()) == NULL || -+ (p=BN_new()) == NULL || -+ (dmp1=BN_new()) == NULL || -+ (dmq1=BN_new()) == NULL) { -+ BN_free(d); BN_free(n); BN_free(iqmp); -+ BN_free(q); BN_free(p); -+ BN_free(dmp1); BN_free(dmq1); -+ return NULL; -+ } -+ BN_clear(dmp1); BN_clear(dmq1); -+ buffer_get_bignum_bits(b, d); -+ buffer_get_bignum_bits(b, n); -+ buffer_get_bignum_bits(b, iqmp); -+ buffer_get_bignum_bits(b, q); -+ buffer_get_bignum_bits(b, p); -+ if (RSA_set0_key(key->rsa, n, rsa_e, d) == 0) -+ goto null; -+ n = d = NULL; -+ if (RSA_set0_factors(key->rsa, p, q) == 0) -+ goto null; -+ p = q = NULL; -+ /* dmp1, dmq1 should not be NULL for initial set0 */ -+ if (RSA_set0_crt_params(key->rsa, dmp1, dmq1, iqmp) == 0) { -+ null: -+ fatal("Failed to set RSA parameters"); -+ BN_free(d); BN_free(n); BN_free(iqmp); -+ BN_free(q); BN_free(p); -+ BN_free(dmp1); BN_free(dmq1); -+ return NULL; -+ } -+ dmp1 = dmq1 = iqmp = NULL; -+ } - if ((r = ssh_rsa_generate_additional_parameters(key)) != 0) - fatal("generate RSA parameters failed: %s", ssh_err(r)); - break; -@@ -634,7 +692,7 @@ do_convert_from_pkcs8(struct sshkey **k, - identity_file); - } - fclose(fp); -- switch (EVP_PKEY_type(pubkey->type)) { -+ switch (EVP_PKEY_type(EVP_PKEY_id(pubkey))) { - case EVP_PKEY_RSA: - if ((*k = sshkey_new(KEY_UNSPEC)) == NULL) - fatal("sshkey_new failed"); -@@ -658,7 +716,7 @@ do_convert_from_pkcs8(struct sshkey **k, - #endif - default: - fatal("%s: unsupported pubkey type %d", __func__, -- EVP_PKEY_type(pubkey->type)); -+ EVP_PKEY_type(EVP_PKEY_id(pubkey))); - } - EVP_PKEY_free(pubkey); - return; -diff -aurp old/ssh-pkcs11-client.c new/ssh-pkcs11-client.c ---- old/ssh-pkcs11-client.c 2018-08-22 22:41:42.000000000 -0700 -+++ new/ssh-pkcs11-client.c 2018-08-23 21:31:53.334592801 -0700 -@@ -156,12 +156,13 @@ pkcs11_rsa_private_encrypt(int flen, con - static int - wrap_key(RSA *rsa) - { -- static RSA_METHOD helper_rsa; -+ static RSA_METHOD *helper_rsa; - -- memcpy(&helper_rsa, RSA_get_default_method(), sizeof(helper_rsa)); -- helper_rsa.name = "ssh-pkcs11-helper"; -- helper_rsa.rsa_priv_enc = pkcs11_rsa_private_encrypt; -- RSA_set_method(rsa, &helper_rsa); -+ if ((helper_rsa = RSA_meth_dup(RSA_get_default_method())) == NULL) -+ return (-1); /* XXX but caller isn't checking */ -+ RSA_meth_set1_name(helper_rsa, "ssh-pkcs11-helper"); -+ RSA_meth_set_priv_enc(helper_rsa, pkcs11_rsa_private_encrypt); -+ RSA_set_method(rsa, helper_rsa); - return (0); - } - -diff -aurp old/ssh-pkcs11.c new/ssh-pkcs11.c ---- old/ssh-pkcs11.c 2018-08-22 22:41:42.000000000 -0700 -+++ new/ssh-pkcs11.c 2018-08-23 21:31:53.334592801 -0700 -@@ -67,7 +67,7 @@ struct pkcs11_key { - struct pkcs11_provider *provider; - CK_ULONG slotidx; - int (*orig_finish)(RSA *rsa); -- RSA_METHOD rsa_method; -+ RSA_METHOD *rsa_method; - char *keyid; - int keyid_len; - }; -@@ -326,13 +326,15 @@ pkcs11_rsa_wrap(struct pkcs11_provider * - k11->keyid = xmalloc(k11->keyid_len); - memcpy(k11->keyid, keyid_attrib->pValue, k11->keyid_len); - } -- k11->orig_finish = def->finish; -- memcpy(&k11->rsa_method, def, sizeof(k11->rsa_method)); -- k11->rsa_method.name = "pkcs11"; -- k11->rsa_method.rsa_priv_enc = pkcs11_rsa_private_encrypt; -- k11->rsa_method.rsa_priv_dec = pkcs11_rsa_private_decrypt; -- k11->rsa_method.finish = pkcs11_rsa_finish; -- RSA_set_method(rsa, &k11->rsa_method); -+ k11->orig_finish = RSA_meth_get_finish(def); -+ -+ if ((k11->rsa_method = RSA_meth_new("pkcs11", RSA_meth_get_flags(def))) == NULL) -+ return -1; -+ RSA_meth_set_priv_enc(k11->rsa_method, pkcs11_rsa_private_encrypt); -+ RSA_meth_set_priv_dec(k11->rsa_method, pkcs11_rsa_private_decrypt); -+ RSA_meth_set_finish(k11->rsa_method, pkcs11_rsa_finish); -+ -+ RSA_set_method(rsa, k11->rsa_method); - RSA_set_app_data(rsa, k11); - return (0); - } -@@ -512,10 +514,19 @@ pkcs11_fetch_keys_filter(struct pkcs11_p - if ((rsa = RSA_new()) == NULL) { - error("RSA_new failed"); - } else { -- rsa->n = BN_bin2bn(attribs[1].pValue, -- attribs[1].ulValueLen, NULL); -- rsa->e = BN_bin2bn(attribs[2].pValue, -- attribs[2].ulValueLen, NULL); -+ BIGNUM *n=NULL, *e=NULL; -+ n = BN_new(); -+ e = BN_new(); -+ if (n == NULL || e == NULL) -+ error("BN_new alloc failed"); -+ if (BN_bin2bn(attribs[1].pValue, -+ attribs[1].ulValueLen, n) == NULL || -+ BN_bin2bn(attribs[2].pValue, -+ attribs[2].ulValueLen, e) == NULL) -+ error("BN_bin2bn failed"); -+ if (RSA_set0_key(rsa, n, e, NULL) == 0) -+ error("RSA_set0_key failed"); -+ n = e = NULL; - } - } else { - cp = attribs[2].pValue; -@@ -525,16 +536,19 @@ pkcs11_fetch_keys_filter(struct pkcs11_p - == NULL) { - error("d2i_X509 failed"); - } else if ((evp = X509_get_pubkey(x509)) == NULL || -- evp->type != EVP_PKEY_RSA || -- evp->pkey.rsa == NULL) { -+ EVP_PKEY_id(evp) != EVP_PKEY_RSA || -+ EVP_PKEY_get0_RSA(evp) == NULL) { - debug("X509_get_pubkey failed or no rsa"); -- } else if ((rsa = RSAPublicKey_dup(evp->pkey.rsa)) -+ } else if ((rsa = RSAPublicKey_dup(EVP_PKEY_get0_RSA(evp))) - == NULL) { - error("RSAPublicKey_dup"); - } - X509_free(x509); - } -- if (rsa && rsa->n && rsa->e && -+ { -+ const BIGNUM *n, *e; -+ RSA_get0_key(rsa, &n, &e, NULL); -+ if (rsa && n && e && - pkcs11_rsa_wrap(p, slotidx, &attribs[0], rsa) == 0) { - if ((key = sshkey_new(KEY_UNSPEC)) == NULL) - fatal("sshkey_new failed"); -@@ -554,6 +568,7 @@ pkcs11_fetch_keys_filter(struct pkcs11_p - } else if (rsa) { - RSA_free(rsa); - } -+ } - for (i = 0; i < 3; i++) - free(attribs[i].pValue); - } -diff -aurp old/ssh-rsa.c new/ssh-rsa.c ---- old/ssh-rsa.c 2018-08-22 22:41:42.000000000 -0700 -+++ new/ssh-rsa.c 2018-08-23 21:31:53.334592801 -0700 -@@ -108,7 +108,6 @@ ssh_rsa_generate_additional_parameters(s - { - BIGNUM *aux = NULL; - BN_CTX *ctx = NULL; -- BIGNUM d; - int r; - - if (key == NULL || key->rsa == NULL || -@@ -123,16 +122,27 @@ ssh_rsa_generate_additional_parameters(s - } - BN_set_flags(aux, BN_FLG_CONSTTIME); - -- BN_init(&d); -- BN_with_flags(&d, key->rsa->d, BN_FLG_CONSTTIME); -- -- if ((BN_sub(aux, key->rsa->q, BN_value_one()) == 0) || -- (BN_mod(key->rsa->dmq1, &d, aux, ctx) == 0) || -- (BN_sub(aux, key->rsa->p, BN_value_one()) == 0) || -- (BN_mod(key->rsa->dmp1, &d, aux, ctx) == 0)) { -+ { -+ const BIGNUM *q, *d, *p; -+ BIGNUM *dmq1=NULL, *dmp1=NULL; -+ if ((dmq1 = BN_new()) == NULL || -+ (dmp1 = BN_new()) == NULL ) { -+ r = SSH_ERR_ALLOC_FAIL; -+ goto out; -+ } -+ RSA_get0_key(key->rsa, NULL, NULL, &d); -+ RSA_get0_factors(key->rsa, &p, &q); -+ if ((BN_sub(aux, q, BN_value_one()) == 0) || -+ (BN_mod(dmq1, d, aux, ctx) == 0) || -+ (BN_sub(aux, p, BN_value_one()) == 0) || -+ (BN_mod(dmp1, d, aux, ctx) == 0) || -+ RSA_set0_crt_params(key->rsa, dmp1, dmq1, NULL) == 0) { - r = SSH_ERR_LIBCRYPTO_ERROR; -+ BN_clear_free(dmp1); -+ BN_clear_free(dmq1); - goto out; - } -+ } - r = 0; - out: - BN_clear_free(aux); -@@ -163,7 +173,7 @@ ssh_rsa_sign(const struct sshkey *key, u - if (key == NULL || key->rsa == NULL || hash_alg == -1 || - sshkey_type_plain(key->type) != KEY_RSA) - return SSH_ERR_INVALID_ARGUMENT; -- if (BN_num_bits(key->rsa->n) < SSH_RSA_MINIMUM_MODULUS_SIZE) -+ if (RSA_bits(key->rsa) < SSH_RSA_MINIMUM_MODULUS_SIZE) - return SSH_ERR_KEY_LENGTH; - slen = RSA_size(key->rsa); - if (slen <= 0 || slen > SSHBUF_MAX_BIGNUM) -@@ -235,7 +245,7 @@ ssh_rsa_verify(const struct sshkey *key, - sshkey_type_plain(key->type) != KEY_RSA || - sig == NULL || siglen == 0) - return SSH_ERR_INVALID_ARGUMENT; -- if (BN_num_bits(key->rsa->n) < SSH_RSA_MINIMUM_MODULUS_SIZE) -+ if (RSA_bits(key->rsa) < SSH_RSA_MINIMUM_MODULUS_SIZE) - return SSH_ERR_KEY_LENGTH; - - if ((b = sshbuf_from(sig, siglen)) == NULL) -diff -aurp old/sshkey.c new/sshkey.c ---- old/sshkey.c 2018-08-22 22:41:42.000000000 -0700 -+++ new/sshkey.c 2018-08-23 21:31:53.334592801 -0700 -@@ -292,10 +292,18 @@ sshkey_size(const struct sshkey *k) - #ifdef WITH_OPENSSL - case KEY_RSA: - case KEY_RSA_CERT: -- return BN_num_bits(k->rsa->n); -+#if OPENSSL_VERSION_NUMBER >= 0x10100000UL -+ return RSA_bits(k->rsa); -+#else -+ return RSA_bits(key->rsa); -+#endif - case KEY_DSA: - case KEY_DSA_CERT: -+#if OPENSSL_VERSION_NUMBER >= 0x10100000UL -+ return DSA_bits(k->dsa); -+#else - return BN_num_bits(k->dsa->p); -+#endif - case KEY_ECDSA: - case KEY_ECDSA_CERT: - return sshkey_curve_nid_to_bits(k->ecdsa_nid); -@@ -500,26 +508,53 @@ sshkey_new(int type) - #ifdef WITH_OPENSSL - case KEY_RSA: - case KEY_RSA_CERT: -+ { -+ BIGNUM *n=NULL, *e=NULL; /* just allocate */ - if ((rsa = RSA_new()) == NULL || -- (rsa->n = BN_new()) == NULL || -- (rsa->e = BN_new()) == NULL) { -+ (n = BN_new()) == NULL || -+ (e = BN_new()) == NULL) { -+ BN_free(n); -+ BN_free(e); - RSA_free(rsa); - free(k); - return NULL; - } -+ BN_clear(n); BN_clear(e); -+ if (RSA_set0_key(rsa, n, e, NULL) == 0) -+ return NULL; -+ n = e = NULL; -+ } - k->rsa = rsa; - break; - case KEY_DSA: - case KEY_DSA_CERT: -+ { -+ BIGNUM *p=NULL, *q=NULL, *g=NULL, *pubkey=NULL; /* just allocate */ - if ((dsa = DSA_new()) == NULL || -- (dsa->p = BN_new()) == NULL || -- (dsa->q = BN_new()) == NULL || -- (dsa->g = BN_new()) == NULL || -- (dsa->pub_key = BN_new()) == NULL) { -+ (p = BN_new()) == NULL || -+ (q = BN_new()) == NULL || -+ (g = BN_new()) == NULL || -+ (pubkey = BN_new()) == NULL) { -+ BN_free(p); -+ BN_free(q); -+ BN_free(g); -+ BN_free(pubkey); - DSA_free(dsa); - free(k); - return NULL; - } -+ if (DSA_set0_pqg(dsa, p, q, g) == 0) { -+ BN_free(p); BN_free(q); BN_free(g); -+ BN_free(pubkey); -+ return NULL; -+ } -+ p = q = g = NULL; -+ if (DSA_set0_key(dsa, pubkey, NULL) == 0) { -+ BN_free(pubkey); -+ return NULL; -+ } -+ pubkey = NULL; -+ } - k->dsa = dsa; - break; - case KEY_ECDSA: -@@ -557,6 +592,51 @@ sshkey_add_private(struct sshkey *k) - #ifdef WITH_OPENSSL - case KEY_RSA: - case KEY_RSA_CERT: -+#if OPENSSL_VERSION_NUMBER >= 0x10100000UL -+ /* Allocate BIGNUM. This is a mess. -+ For OpenSSL 1.1.x API these shouldn't be mandatory, -+ but some regression tests for non-NULL pointer of -+ the data. */ -+#define new_or_dup(bn, nbn) \ -+ if (bn == NULL) { \ -+ if ((nbn = BN_new()) == NULL) \ -+ return SSH_ERR_ALLOC_FAIL; \ -+ } else { \ -+ /* otherwise use-after-free will occur */ \ -+ if ((nbn = BN_dup(bn)) == NULL) \ -+ return SSH_ERR_ALLOC_FAIL; \ -+ } -+ { -+ const BIGNUM *d, *iqmp, *q, *p, *dmq1, *dmp1; /* allocate if NULL */ -+ BIGNUM *nd, *niqmp, *nq, *np, *ndmq1, *ndmp1; -+ -+ RSA_get0_key(k->rsa, NULL, NULL, &d); -+ RSA_get0_factors(k->rsa, &p, &q); -+ RSA_get0_crt_params(k->rsa, &dmp1, &dmq1, &iqmp); -+ -+ new_or_dup(d, nd); -+ new_or_dup(iqmp, niqmp); -+ new_or_dup(q, nq); -+ new_or_dup(p, np); -+ new_or_dup(dmq1, ndmq1); -+ new_or_dup(dmp1, ndmp1); -+ -+ if (RSA_set0_key(k->rsa, NULL, NULL, nd) == 0) -+ goto error1; -+ nd = NULL; -+ if (RSA_set0_factors(k->rsa, np, nq) == 0) -+ goto error1; -+ np = nq = NULL; -+ if (RSA_set0_crt_params(k->rsa, ndmp1, ndmq1, niqmp) == 0) { -+error1: -+ BN_free(nd); -+ BN_free(np); BN_free(nq); -+ BN_free(ndmp1); BN_free(ndmq1); BN_free(niqmp); -+ return SSH_ERR_LIBCRYPTO_ERROR; -+ } -+ ndmp1 = ndmq1 = niqmp = NULL; -+ } -+#else - #define bn_maybe_alloc_failed(p) (p == NULL && (p = BN_new()) == NULL) - if (bn_maybe_alloc_failed(k->rsa->d) || - bn_maybe_alloc_failed(k->rsa->iqmp) || -@@ -565,13 +645,28 @@ sshkey_add_private(struct sshkey *k) - bn_maybe_alloc_failed(k->rsa->dmq1) || - bn_maybe_alloc_failed(k->rsa->dmp1)) - return SSH_ERR_ALLOC_FAIL; -+#endif - break; - case KEY_DSA: - case KEY_DSA_CERT: -+#if OPENSSL_VERSION_NUMBER >= 0x10100000UL -+ { -+ const BIGNUM *priv_key; -+ BIGNUM *npriv_key; -+ DSA_get0_key(k->dsa, NULL, &priv_key); -+ new_or_dup(priv_key, npriv_key); -+ if (DSA_set0_key(k->dsa, NULL, npriv_key) == 0) { -+ BN_free(npriv_key); -+ return SSH_ERR_LIBCRYPTO_ERROR; -+ } -+ } -+#else - if (bn_maybe_alloc_failed(k->dsa->priv_key)) - return SSH_ERR_ALLOC_FAIL; -+#endif - break; - #undef bn_maybe_alloc_failed -+#undef new_or_dup - case KEY_ECDSA: - case KEY_ECDSA_CERT: - /* Cannot do anything until we know the group */ -@@ -695,16 +790,34 @@ sshkey_equal_public(const struct sshkey - #ifdef WITH_OPENSSL - case KEY_RSA_CERT: - case KEY_RSA: -- return a->rsa != NULL && b->rsa != NULL && -- BN_cmp(a->rsa->e, b->rsa->e) == 0 && -- BN_cmp(a->rsa->n, b->rsa->n) == 0; -+ { -+ const BIGNUM *a_e, *b_e, *a_n, *b_n; -+ const BIGNUM *a_d, *b_d; -+ if (a->rsa == NULL) return 0; -+ if (b->rsa == NULL) return 0; -+ RSA_get0_key(a->rsa, &a_n, &a_e, &a_d); -+ RSA_get0_key(b->rsa, &b_n, &b_e, &b_d); -+ return -+ BN_cmp(a_e, b_e) == 0 && -+ BN_cmp(a_n, b_n) == 0; -+ } - case KEY_DSA_CERT: - case KEY_DSA: -- return a->dsa != NULL && b->dsa != NULL && -- BN_cmp(a->dsa->p, b->dsa->p) == 0 && -- BN_cmp(a->dsa->q, b->dsa->q) == 0 && -- BN_cmp(a->dsa->g, b->dsa->g) == 0 && -- BN_cmp(a->dsa->pub_key, b->dsa->pub_key) == 0; -+ { -+ const BIGNUM *a_p, *a_q, *a_g, *a_pub_key; -+ const BIGNUM *b_p, *b_q, *b_g, *b_pub_key; -+ if (a->dsa == NULL) return 0; -+ if (b->dsa == NULL) return 0; -+ DSA_get0_pqg(a->dsa, &a_p, &a_q, &a_g); -+ DSA_get0_pqg(b->dsa, &b_p, &b_q, &b_g); -+ DSA_get0_key(a->dsa, &a_pub_key, NULL); -+ DSA_get0_key(b->dsa, &b_pub_key, NULL); -+ return -+ BN_cmp(a_p, b_p) == 0 && -+ BN_cmp(a_q, b_q) == 0 && -+ BN_cmp(a_g, b_g) == 0 && -+ BN_cmp(a_pub_key, b_pub_key) == 0; -+ } - # ifdef OPENSSL_HAS_ECC - case KEY_ECDSA_CERT: - case KEY_ECDSA: -@@ -793,12 +906,17 @@ to_blob_buf(const struct sshkey *key, st - case KEY_DSA: - if (key->dsa == NULL) - return SSH_ERR_INVALID_ARGUMENT; -+ { -+ const BIGNUM *p, *q, *g, *pub_key; -+ DSA_get0_pqg(key->dsa, &p, &q, &g); -+ DSA_get0_key(key->dsa, &pub_key, NULL); - if ((ret = sshbuf_put_cstring(b, typename)) != 0 || -- (ret = sshbuf_put_bignum2(b, key->dsa->p)) != 0 || -- (ret = sshbuf_put_bignum2(b, key->dsa->q)) != 0 || -- (ret = sshbuf_put_bignum2(b, key->dsa->g)) != 0 || -- (ret = sshbuf_put_bignum2(b, key->dsa->pub_key)) != 0) -+ (ret = sshbuf_put_bignum2(b, p)) != 0 || -+ (ret = sshbuf_put_bignum2(b, q)) != 0 || -+ (ret = sshbuf_put_bignum2(b, g)) != 0 || -+ (ret = sshbuf_put_bignum2(b, pub_key)) != 0) - return ret; -+ } - break; - # ifdef OPENSSL_HAS_ECC - case KEY_ECDSA: -@@ -814,10 +932,14 @@ to_blob_buf(const struct sshkey *key, st - case KEY_RSA: - if (key->rsa == NULL) - return SSH_ERR_INVALID_ARGUMENT; -+ { -+ const BIGNUM *e, *n; -+ RSA_get0_key(key->rsa, &n, &e, NULL); - if ((ret = sshbuf_put_cstring(b, typename)) != 0 || -- (ret = sshbuf_put_bignum2(b, key->rsa->e)) != 0 || -- (ret = sshbuf_put_bignum2(b, key->rsa->n)) != 0) -+ (ret = sshbuf_put_bignum2(b, e)) != 0 || -+ (ret = sshbuf_put_bignum2(b, n)) != 0) - return ret; -+ } - break; - #endif /* WITH_OPENSSL */ - case KEY_ED25519: -@@ -1758,13 +1880,32 @@ sshkey_from_private(const struct sshkey - case KEY_DSA_CERT: - if ((n = sshkey_new(k->type)) == NULL) - return SSH_ERR_ALLOC_FAIL; -- if ((BN_copy(n->dsa->p, k->dsa->p) == NULL) || -- (BN_copy(n->dsa->q, k->dsa->q) == NULL) || -- (BN_copy(n->dsa->g, k->dsa->g) == NULL) || -- (BN_copy(n->dsa->pub_key, k->dsa->pub_key) == NULL)) { -+ { -+ const BIGNUM *p, *q, *g, *pub_key, *priv_key; -+ BIGNUM *cp=NULL, *cq=NULL, *cg=NULL, *cpub_key=NULL; -+ DSA_get0_pqg(k->dsa, &p, &q, &g); -+ DSA_get0_key(k->dsa, &pub_key, &priv_key); -+ if ((cp = BN_dup(p)) == NULL || -+ (cq = BN_dup(q)) == NULL || -+ (cg = BN_dup(g)) == NULL || -+ (cpub_key = BN_dup(pub_key)) == NULL) { -+ BN_free(cp); BN_free(cq); BN_free(cg); -+ BN_free(cpub_key); - sshkey_free(n); - return SSH_ERR_ALLOC_FAIL; - } -+ if (DSA_set0_pqg(n->dsa, cp, cq, cg) == 0) -+ goto error1; -+ cp = cq = cg = NULL; -+ if (DSA_set0_key(n->dsa, cpub_key, NULL) == 0) { -+error1: -+ BN_free(cp); BN_free(cq); BN_free(cg); -+ BN_free(cpub_key); -+ sshkey_free(n); -+ return SSH_ERR_LIBCRYPTO_ERROR; -+ } -+ cpub_key = NULL; -+ } - break; - # ifdef OPENSSL_HAS_ECC - case KEY_ECDSA: -@@ -1788,11 +1929,23 @@ sshkey_from_private(const struct sshkey - case KEY_RSA_CERT: - if ((n = sshkey_new(k->type)) == NULL) - return SSH_ERR_ALLOC_FAIL; -- if ((BN_copy(n->rsa->n, k->rsa->n) == NULL) || -- (BN_copy(n->rsa->e, k->rsa->e) == NULL)) { -+ { -+ const BIGNUM *nn, *e, *d; -+ BIGNUM *cn=NULL, *ce=NULL; -+ RSA_get0_key(k->rsa, &nn, &e, &d); -+ if ((cn = BN_dup(nn)) == NULL || -+ (ce = BN_dup(e)) == NULL ) { -+ BN_free(cn); BN_free(ce); - sshkey_free(n); - return SSH_ERR_ALLOC_FAIL; - } -+ if (RSA_set0_key(n->rsa, cn, ce, NULL) == 0) { -+ BN_free(cn); BN_free(ce); -+ sshkey_free(n); -+ return SSH_ERR_LIBCRYPTO_ERROR; -+ } -+ cn = ce = NULL; -+ } - break; - #endif /* WITH_OPENSSL */ - case KEY_ED25519: -@@ -2013,12 +2166,27 @@ sshkey_from_blob_internal(struct sshbuf - ret = SSH_ERR_ALLOC_FAIL; - goto out; - } -- if (sshbuf_get_bignum2(b, key->rsa->e) != 0 || -- sshbuf_get_bignum2(b, key->rsa->n) != 0) { -+ { -+ BIGNUM *e=NULL, *n=NULL; -+ if ((e = BN_new()) == NULL || -+ (n = BN_new()) == NULL ) { -+ ret = SSH_ERR_ALLOC_FAIL; -+ BN_free(e); BN_free(n); -+ goto out; -+ } -+ if (sshbuf_get_bignum2(b, e) != 0 || -+ sshbuf_get_bignum2(b, n) != 0) { - ret = SSH_ERR_INVALID_FORMAT; -+ BN_free(e); BN_free(n); - goto out; - } -- if (BN_num_bits(key->rsa->n) < SSH_RSA_MINIMUM_MODULUS_SIZE) { -+ if (RSA_set0_key(key->rsa, n, e, NULL) == 0) { -+ BN_free(e); BN_free(n); -+ return SSH_ERR_LIBCRYPTO_ERROR; -+ } -+ n = e = NULL; -+ } -+ if (RSA_bits(key->rsa) < SSH_RSA_MINIMUM_MODULUS_SIZE) { - ret = SSH_ERR_KEY_LENGTH; - goto out; - } -@@ -2038,13 +2206,36 @@ sshkey_from_blob_internal(struct sshbuf - ret = SSH_ERR_ALLOC_FAIL; - goto out; - } -- if (sshbuf_get_bignum2(b, key->dsa->p) != 0 || -- sshbuf_get_bignum2(b, key->dsa->q) != 0 || -- sshbuf_get_bignum2(b, key->dsa->g) != 0 || -- sshbuf_get_bignum2(b, key->dsa->pub_key) != 0) { -+ { -+ BIGNUM *p=NULL, *q=NULL, *g=NULL, *pub_key=NULL; -+ if ((p = BN_new()) == NULL || -+ (q = BN_new()) == NULL || -+ (g = BN_new()) == NULL || -+ (pub_key = BN_new()) == NULL) { -+ ret = SSH_ERR_ALLOC_FAIL; -+ goto error1; -+ } -+ if (sshbuf_get_bignum2(b, p) != 0 || -+ sshbuf_get_bignum2(b, q) != 0 || -+ sshbuf_get_bignum2(b, g) != 0 || -+ sshbuf_get_bignum2(b, pub_key) != 0) { - ret = SSH_ERR_INVALID_FORMAT; -+ goto error1; -+ } -+ if (DSA_set0_pqg(key->dsa, p, q, g) == 0) { -+ ret = SSH_ERR_LIBCRYPTO_ERROR; -+ goto error1; -+ } -+ p = q = g = NULL; -+ if (DSA_set0_key(key->dsa, pub_key, NULL) == 0) { -+ ret = SSH_ERR_LIBCRYPTO_ERROR; -+error1: -+ BN_free(p); BN_free(q); BN_free(g); -+ BN_free(pub_key); - goto out; - } -+ pub_key = NULL; -+ } - #ifdef DEBUG_PK - DSA_print_fp(stderr, key->dsa, 8); - #endif -@@ -2389,26 +2580,63 @@ sshkey_demote(const struct sshkey *k, st - goto fail; - /* FALLTHROUGH */ - case KEY_RSA: -- if ((pk->rsa = RSA_new()) == NULL || -- (pk->rsa->e = BN_dup(k->rsa->e)) == NULL || -- (pk->rsa->n = BN_dup(k->rsa->n)) == NULL) { -+ if ((pk->rsa = RSA_new()) == NULL ){ - ret = SSH_ERR_ALLOC_FAIL; - goto fail; - } -+ { -+ const BIGNUM *ke, *kn; -+ BIGNUM *pke=NULL, *pkn=NULL; -+ RSA_get0_key(k->rsa, &kn, &ke, NULL); -+ if ((pke = BN_dup(ke)) == NULL || -+ (pkn = BN_dup(kn)) == NULL) { -+ ret = SSH_ERR_ALLOC_FAIL; -+ BN_free(pke); BN_free(pkn); -+ goto fail; -+ } -+ if (RSA_set0_key(pk->rsa, pkn, pke, NULL) == 0) { -+ ret = SSH_ERR_LIBCRYPTO_ERROR; -+ BN_free(pke); BN_free(pkn); -+ goto fail; -+ } -+ pkn = pke = NULL; -+ } - break; - case KEY_DSA_CERT: - if ((ret = sshkey_cert_copy(k, pk)) != 0) - goto fail; - /* FALLTHROUGH */ - case KEY_DSA: -- if ((pk->dsa = DSA_new()) == NULL || -- (pk->dsa->p = BN_dup(k->dsa->p)) == NULL || -- (pk->dsa->q = BN_dup(k->dsa->q)) == NULL || -- (pk->dsa->g = BN_dup(k->dsa->g)) == NULL || -- (pk->dsa->pub_key = BN_dup(k->dsa->pub_key)) == NULL) { -+ if ((pk->dsa = DSA_new()) == NULL ) { - ret = SSH_ERR_ALLOC_FAIL; - goto fail; - } -+ { -+ const BIGNUM *kp, *kq, *kg, *kpub_key; -+ BIGNUM *pkp=NULL, *pkq=NULL, *pkg=NULL, *pkpub_key=NULL; -+ DSA_get0_pqg(k->dsa, &kp, &kq, &kg); -+ DSA_get0_key(k->dsa, &kpub_key, NULL); -+ if ((pkp = BN_dup(kp)) == NULL || -+ (pkq = BN_dup(kq)) == NULL || -+ (pkg = BN_dup(kg)) == NULL || -+ (pkpub_key = BN_dup(kpub_key)) == NULL) { -+ ret = SSH_ERR_ALLOC_FAIL; -+ goto error1; -+ } -+ if (DSA_set0_pqg(pk->dsa, pkp, pkq, pkg) == 0) { -+ ret = SSH_ERR_LIBCRYPTO_ERROR; -+ goto error1; -+ } -+ pkp = pkq = pkg = NULL; -+ if (DSA_set0_key(pk->dsa, pkpub_key, NULL) == 0) { -+ ret = SSH_ERR_LIBCRYPTO_ERROR; -+error1: -+ BN_free(pkp); BN_free(pkq); BN_free(pkg); -+ BN_free(pkpub_key); -+ goto fail; -+ } -+ pkpub_key = NULL; -+ } - break; - case KEY_ECDSA_CERT: - if ((ret = sshkey_cert_copy(k, pk)) != 0) -@@ -2558,11 +2786,17 @@ sshkey_certify_custom(struct sshkey *k, - switch (k->type) { - #ifdef WITH_OPENSSL - case KEY_DSA_CERT: -- if ((ret = sshbuf_put_bignum2(cert, k->dsa->p)) != 0 || -- (ret = sshbuf_put_bignum2(cert, k->dsa->q)) != 0 || -- (ret = sshbuf_put_bignum2(cert, k->dsa->g)) != 0 || -- (ret = sshbuf_put_bignum2(cert, k->dsa->pub_key)) != 0) -+ { -+ const BIGNUM *p, *q, *g, *pub_key; -+ DSA_get0_pqg(k->dsa, &p, &q, &g); -+ DSA_get0_key(k->dsa, &pub_key, NULL); -+ if ((ret = sshbuf_put_bignum2(cert, p)) != 0 || -+ (ret = sshbuf_put_bignum2(cert, q)) != 0 || -+ (ret = sshbuf_put_bignum2(cert, g)) != 0 || -+ (ret = sshbuf_put_bignum2(cert, pub_key)) != 0) { - goto out; -+ } -+ } - break; - # ifdef OPENSSL_HAS_ECC - case KEY_ECDSA_CERT: -@@ -2575,9 +2809,15 @@ sshkey_certify_custom(struct sshkey *k, - break; - # endif /* OPENSSL_HAS_ECC */ - case KEY_RSA_CERT: -- if ((ret = sshbuf_put_bignum2(cert, k->rsa->e)) != 0 || -- (ret = sshbuf_put_bignum2(cert, k->rsa->n)) != 0) -+ { -+ const BIGNUM *e, *n; -+ RSA_get0_key(k->rsa, &n, &e, NULL); -+ if (n == NULL || e == NULL || -+ (ret = sshbuf_put_bignum2(cert, e)) != 0 || -+ (ret = sshbuf_put_bignum2(cert, n)) != 0) { - goto out; -+ } -+ } - break; - #endif /* WITH_OPENSSL */ - case KEY_ED25519_CERT: -@@ -2764,42 +3004,67 @@ sshkey_private_serialize_opt(const struc - switch (key->type) { - #ifdef WITH_OPENSSL - case KEY_RSA: -- if ((r = sshbuf_put_bignum2(b, key->rsa->n)) != 0 || -- (r = sshbuf_put_bignum2(b, key->rsa->e)) != 0 || -- (r = sshbuf_put_bignum2(b, key->rsa->d)) != 0 || -- (r = sshbuf_put_bignum2(b, key->rsa->iqmp)) != 0 || -- (r = sshbuf_put_bignum2(b, key->rsa->p)) != 0 || -- (r = sshbuf_put_bignum2(b, key->rsa->q)) != 0) -+ { -+ const BIGNUM *n, *e, *d, *iqmp, *p, *q; -+ RSA_get0_key(key->rsa, &n, &e, &d); -+ RSA_get0_crt_params(key->rsa, NULL, NULL, &iqmp); -+ RSA_get0_factors(key->rsa, &p, &q); -+ if ((r = sshbuf_put_bignum2(b, n)) != 0 || -+ (r = sshbuf_put_bignum2(b, e)) != 0 || -+ (r = sshbuf_put_bignum2(b, d)) != 0 || -+ (r = sshbuf_put_bignum2(b, iqmp)) != 0 || -+ (r = sshbuf_put_bignum2(b, p)) != 0 || -+ (r = sshbuf_put_bignum2(b, q)) != 0) { - goto out; -+ } -+ } - break; - case KEY_RSA_CERT: - if (key->cert == NULL || sshbuf_len(key->cert->certblob) == 0) { - r = SSH_ERR_INVALID_ARGUMENT; - goto out; - } -+ { -+ const BIGNUM *d, *iqmp, *p, *q; -+ RSA_get0_key(key->rsa, NULL, NULL, &d); -+ RSA_get0_crt_params(key->rsa, NULL, NULL, &iqmp); -+ RSA_get0_factors(key->rsa, &p, &q); - if ((r = sshbuf_put_stringb(b, key->cert->certblob)) != 0 || -- (r = sshbuf_put_bignum2(b, key->rsa->d)) != 0 || -- (r = sshbuf_put_bignum2(b, key->rsa->iqmp)) != 0 || -- (r = sshbuf_put_bignum2(b, key->rsa->p)) != 0 || -- (r = sshbuf_put_bignum2(b, key->rsa->q)) != 0) -+ (r = sshbuf_put_bignum2(b, d)) != 0 || -+ (r = sshbuf_put_bignum2(b, iqmp)) != 0 || -+ (r = sshbuf_put_bignum2(b, p)) != 0 || -+ (r = sshbuf_put_bignum2(b, q)) != 0) { - goto out; -+ } -+ } - break; - case KEY_DSA: -- if ((r = sshbuf_put_bignum2(b, key->dsa->p)) != 0 || -- (r = sshbuf_put_bignum2(b, key->dsa->q)) != 0 || -- (r = sshbuf_put_bignum2(b, key->dsa->g)) != 0 || -- (r = sshbuf_put_bignum2(b, key->dsa->pub_key)) != 0 || -- (r = sshbuf_put_bignum2(b, key->dsa->priv_key)) != 0) -+ { -+ const BIGNUM *p, *q, *g, *pub_key, *priv_key; -+ DSA_get0_pqg(key->dsa, &p, &q, &g); -+ DSA_get0_key(key->dsa, &pub_key, &priv_key); -+ if ((r = sshbuf_put_bignum2(b, p)) != 0 || -+ (r = sshbuf_put_bignum2(b, q)) != 0 || -+ (r = sshbuf_put_bignum2(b, g)) != 0 || -+ (r = sshbuf_put_bignum2(b, pub_key)) != 0 || -+ (r = sshbuf_put_bignum2(b, priv_key)) != 0) { - goto out; -+ } -+ } - break; - case KEY_DSA_CERT: - if (key->cert == NULL || sshbuf_len(key->cert->certblob) == 0) { - r = SSH_ERR_INVALID_ARGUMENT; - goto out; - } -+ { -+ const BIGNUM *priv_key; -+ DSA_get0_key(key->dsa, NULL, &priv_key); - if ((r = sshbuf_put_stringb(b, key->cert->certblob)) != 0 || -- (r = sshbuf_put_bignum2(b, key->dsa->priv_key)) != 0) -+ (r = sshbuf_put_bignum2(b, priv_key)) != 0) { - goto out; -+ } -+ } - break; - # ifdef OPENSSL_HAS_ECC - case KEY_ECDSA: -@@ -2913,18 +3178,61 @@ sshkey_private_deserialize(struct sshbuf - r = SSH_ERR_ALLOC_FAIL; - goto out; - } -- if ((r = sshbuf_get_bignum2(buf, k->dsa->p)) != 0 || -- (r = sshbuf_get_bignum2(buf, k->dsa->q)) != 0 || -- (r = sshbuf_get_bignum2(buf, k->dsa->g)) != 0 || -- (r = sshbuf_get_bignum2(buf, k->dsa->pub_key)) != 0 || -- (r = sshbuf_get_bignum2(buf, k->dsa->priv_key)) != 0) -+ { -+ BIGNUM *p=NULL, *q=NULL, *g=NULL, *pub_key=NULL, *priv_key=NULL; -+ if ((p = BN_new()) == NULL || -+ (q = BN_new()) == NULL || -+ (g = BN_new()) == NULL || -+ (pub_key = BN_new()) == NULL || -+ (priv_key = BN_new()) == NULL) { -+ r = SSH_ERR_ALLOC_FAIL; -+ goto error1; -+ } -+ if (p == NULL || q == NULL || g == NULL || -+ pub_key == NULL || priv_key == NULL || -+ (r = sshbuf_get_bignum2(buf, p)) != 0 || -+ (r = sshbuf_get_bignum2(buf, q)) != 0 || -+ (r = sshbuf_get_bignum2(buf, g)) != 0 || -+ (r = sshbuf_get_bignum2(buf, pub_key)) != 0 || -+ (r = sshbuf_get_bignum2(buf, priv_key)) != 0) { -+ goto error1; -+ } -+ if (DSA_set0_pqg(k->dsa, p, q, g) == 0) { -+ r = SSH_ERR_LIBCRYPTO_ERROR; -+ goto error1; -+ } -+ p = q = g = NULL; -+ if (DSA_set0_key(k->dsa, pub_key, priv_key) == 0) { -+ r = SSH_ERR_LIBCRYPTO_ERROR; -+error1: -+ BN_free(p); BN_free(q); BN_free(g); -+ BN_free(pub_key); BN_free(priv_key); - goto out; -+ } -+ pub_key = priv_key = NULL; -+ } - break; - case KEY_DSA_CERT: -- if ((r = sshkey_froms(buf, &k)) != 0 || -+ { -+ BIGNUM *priv_key=NULL; -+ if ((priv_key = BN_new()) == NULL) { -+ r = SSH_ERR_ALLOC_FAIL; -+ goto out; -+ } -+ if (priv_key == NULL || -+ (r = sshkey_froms(buf, &k)) != 0 || - (r = sshkey_add_private(k)) != 0 || -- (r = sshbuf_get_bignum2(buf, k->dsa->priv_key)) != 0) -+ (r = sshbuf_get_bignum2(buf, priv_key)) != 0) { -+ BN_free(priv_key); -+ goto out; -+ } -+ if (DSA_set0_key(k->dsa, NULL, priv_key) == 0) { -+ r = SSH_ERR_LIBCRYPTO_ERROR; -+ BN_free(priv_key); - goto out; -+ } -+ priv_key = NULL; -+ } - break; - # ifdef OPENSSL_HAS_ECC - case KEY_ECDSA: -@@ -2983,29 +3291,104 @@ sshkey_private_deserialize(struct sshbuf - r = SSH_ERR_ALLOC_FAIL; - goto out; - } -- if ((r = sshbuf_get_bignum2(buf, k->rsa->n)) != 0 || -- (r = sshbuf_get_bignum2(buf, k->rsa->e)) != 0 || -- (r = sshbuf_get_bignum2(buf, k->rsa->d)) != 0 || -- (r = sshbuf_get_bignum2(buf, k->rsa->iqmp)) != 0 || -- (r = sshbuf_get_bignum2(buf, k->rsa->p)) != 0 || -- (r = sshbuf_get_bignum2(buf, k->rsa->q)) != 0 || -- (r = ssh_rsa_generate_additional_parameters(k)) != 0) -+ { -+ BIGNUM *n=NULL, *e=NULL, *d=NULL, *iqmp=NULL, *p=NULL, *q=NULL; -+ BIGNUM *dmp1=NULL, *dmq1=NULL; /* dummy for RSA_set0_crt_params */ -+ if ((n = BN_new()) == NULL || -+ (e = BN_new()) == NULL || -+ (d = BN_new()) == NULL || -+ (iqmp = BN_new()) == NULL || -+ (p = BN_new()) == NULL || -+ (q = BN_new()) == NULL || -+ (dmp1 = BN_new()) == NULL || -+ (dmq1 = BN_new()) == NULL) { -+ r = SSH_ERR_ALLOC_FAIL; -+ goto error2; -+ } -+ BN_clear(dmp1); BN_clear(dmq1); -+ if ((r = sshbuf_get_bignum2(buf, n)) != 0 || -+ (r = sshbuf_get_bignum2(buf, e)) != 0 || -+ (r = sshbuf_get_bignum2(buf, d)) != 0 || -+ (r = sshbuf_get_bignum2(buf, iqmp)) != 0 || -+ (r = sshbuf_get_bignum2(buf, p)) != 0 || -+ (r = sshbuf_get_bignum2(buf, q)) != 0) { -+ goto error2; -+ } -+ if (RSA_set0_key(k->rsa, n, e, d) == 0) { -+ r = SSH_ERR_LIBCRYPTO_ERROR; -+ goto error2; -+ } -+ n = e = d = NULL; -+ /* dmp1,dmpq1 should be non NULL to set iqmp value */ -+ if (RSA_set0_crt_params(k->rsa, dmp1, dmq1, iqmp) == 0) { -+ r = SSH_ERR_LIBCRYPTO_ERROR; -+ goto error2; -+ } -+ dmp1 = dmq1 = iqmp = NULL; -+ if (RSA_set0_factors(k->rsa, p, q) == 0) { -+ r = SSH_ERR_LIBCRYPTO_ERROR; -+ error2: -+ BN_free(n); BN_free(e); BN_free(d); -+ BN_free(iqmp); -+ BN_free(p); BN_free(q); -+ BN_free(dmp1); BN_free(dmq1); -+ goto out; -+ } -+ p = q = NULL; -+ if ((r = ssh_rsa_generate_additional_parameters(k)) != 0) { - goto out; -- if (BN_num_bits(k->rsa->n) < SSH_RSA_MINIMUM_MODULUS_SIZE) { -+ } -+ } -+ if (RSA_bits(k->rsa) < SSH_RSA_MINIMUM_MODULUS_SIZE) { - r = SSH_ERR_KEY_LENGTH; - goto out; - } - break; - case KEY_RSA_CERT: -+ { -+ BIGNUM *d=NULL, *iqmp=NULL, *p=NULL, *q=NULL; -+ BIGNUM *dmp1=NULL, *dmq1=NULL; /* dummy for RSA_set0_crt_params */ -+ if ((d = BN_new()) == NULL || -+ (iqmp = BN_new()) == NULL || -+ (p = BN_new()) == NULL || -+ (q = BN_new()) == NULL || -+ (dmp1 = BN_new()) == NULL || -+ (dmq1 = BN_new()) == NULL) { -+ r = SSH_ERR_ALLOC_FAIL; -+ goto error3; -+ } -+ BN_clear(dmp1); BN_clear(dmq1); - if ((r = sshkey_froms(buf, &k)) != 0 || - (r = sshkey_add_private(k)) != 0 || -- (r = sshbuf_get_bignum2(buf, k->rsa->d)) != 0 || -- (r = sshbuf_get_bignum2(buf, k->rsa->iqmp)) != 0 || -- (r = sshbuf_get_bignum2(buf, k->rsa->p)) != 0 || -- (r = sshbuf_get_bignum2(buf, k->rsa->q)) != 0 || -- (r = ssh_rsa_generate_additional_parameters(k)) != 0) -+ (r = sshbuf_get_bignum2(buf, d)) != 0 || -+ (r = sshbuf_get_bignum2(buf, iqmp)) != 0 || -+ (r = sshbuf_get_bignum2(buf, p)) != 0 || -+ (r = sshbuf_get_bignum2(buf, q)) != 0) { -+ goto error3; -+ } -+ if (RSA_set0_key(k->rsa, NULL, NULL, d) == 0) { -+ r = SSH_ERR_LIBCRYPTO_ERROR; -+ goto error3; -+ } -+ /* dmp1,dmpq1 should be non NULL to set value */ -+ if (RSA_set0_crt_params(k->rsa, dmp1, dmq1, iqmp) == 0) { -+ r = SSH_ERR_LIBCRYPTO_ERROR; -+ goto error3; -+ } -+ dmp1 = dmq1 = iqmp = NULL; -+ if (RSA_set0_factors(k->rsa, p, q) == 0) { -+ r = SSH_ERR_LIBCRYPTO_ERROR; -+ error3: -+ BN_free(d); BN_free(iqmp); -+ BN_free(p); BN_free(q); -+ BN_free(dmp1); BN_free(dmq1); - goto out; -- if (BN_num_bits(k->rsa->n) < SSH_RSA_MINIMUM_MODULUS_SIZE) { -+ } -+ p = q = NULL; -+ if ((r = ssh_rsa_generate_additional_parameters(k)) != 0) -+ goto out; -+ } -+ if (RSA_bits(k->rsa) < SSH_RSA_MINIMUM_MODULUS_SIZE) { - r = SSH_ERR_KEY_LENGTH; - goto out; - } -@@ -3769,7 +4152,6 @@ translate_libcrypto_error(unsigned long - switch (pem_reason) { - case EVP_R_BAD_DECRYPT: - return SSH_ERR_KEY_WRONG_PASSPHRASE; -- case EVP_R_BN_DECODE_ERROR: - case EVP_R_DECODE_ERROR: - #ifdef EVP_R_PRIVATE_KEY_DECODE_ERROR - case EVP_R_PRIVATE_KEY_DECODE_ERROR: -@@ -3834,7 +4216,7 @@ sshkey_parse_private_pem_fileblob(struct - r = convert_libcrypto_error(); - goto out; - } -- if (pk->type == EVP_PKEY_RSA && -+ if (EVP_PKEY_id(pk) == EVP_PKEY_RSA && - (type == KEY_UNSPEC || type == KEY_RSA)) { - if ((prv = sshkey_new(KEY_UNSPEC)) == NULL) { - r = SSH_ERR_ALLOC_FAIL; -@@ -3849,11 +4231,11 @@ sshkey_parse_private_pem_fileblob(struct - r = SSH_ERR_LIBCRYPTO_ERROR; - goto out; - } -- if (BN_num_bits(prv->rsa->n) < SSH_RSA_MINIMUM_MODULUS_SIZE) { -+ if (RSA_bits(prv->rsa) < SSH_RSA_MINIMUM_MODULUS_SIZE) { - r = SSH_ERR_KEY_LENGTH; - goto out; - } -- } else if (pk->type == EVP_PKEY_DSA && -+ } else if (EVP_PKEY_id(pk) == EVP_PKEY_DSA && - (type == KEY_UNSPEC || type == KEY_DSA)) { - if ((prv = sshkey_new(KEY_UNSPEC)) == NULL) { - r = SSH_ERR_ALLOC_FAIL; -@@ -3865,7 +4247,7 @@ sshkey_parse_private_pem_fileblob(struct - DSA_print_fp(stderr, prv->dsa, 8); - #endif - #ifdef OPENSSL_HAS_ECC -- } else if (pk->type == EVP_PKEY_EC && -+ } else if (EVP_PKEY_id(pk) == EVP_PKEY_EC && - (type == KEY_UNSPEC || type == KEY_ECDSA)) { - if ((prv = sshkey_new(KEY_UNSPEC)) == NULL) { - r = SSH_ERR_ALLOC_FAIL; - diff --git a/source/x/x11/build/xkeyboard-config b/source/x/x11/build/xkeyboard-config index 0cfbf0888..d00491fd7 100644 --- a/source/x/x11/build/xkeyboard-config +++ b/source/x/x11/build/xkeyboard-config @@ -1 +1 @@ -2 +1 |