<pre style='margin:0'>
Mihai Moldovan (Ionic) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/41d935f356a0dd602d5b64a983f8be60c15005cf">https://github.com/macports/macports-ports/commit/41d935f356a0dd602d5b64a983f8be60c15005cf</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'> new 41d935f net/openssh: add missing __APPLE_KEYCHAIN__ blocks to ssh-add.c. Revbump.
</span>41d935f is described below
<span style='display:block; white-space:pre;color:#808000;'>commit 41d935f356a0dd602d5b64a983f8be60c15005cf
</span>Author: Mihai Moldovan <ionic@ionic.de>
AuthorDate: Sun Oct 27 20:23:36 2019 +0100
<span style='display:block; white-space:pre;color:#404040;'> net/openssh: add missing __APPLE_KEYCHAIN__ blocks to ssh-add.c. Revbump.
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> The handling for the -K/-A options was completely missing, so the
</span><span style='display:block; white-space:pre;color:#404040;'> Keychain Integration was never actually used.
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Fix that.
</span>---
net/openssh/Portfile | 2 +-
...-Apple-keychain-integration-other-changes.patch | 107 +++++++++++++--------
2 files changed, 70 insertions(+), 39 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/net/openssh/Portfile b/net/openssh/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index dc4cdff..69c5edc 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/net/openssh/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/net/openssh/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -6,7 +6,7 @@ PortGroup compiler_blacklist_versions 1.0
</span>
name openssh
version 8.1p1
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision 2
</span> categories net
platforms darwin
maintainers nomaintainer
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/net/openssh/files/0002-Apple-keychain-integration-other-changes.patch b/net/openssh/files/0002-Apple-keychain-integration-other-changes.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index 8cde823..9890cb5 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/net/openssh/files/0002-Apple-keychain-integration-other-changes.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/net/openssh/files/0002-Apple-keychain-integration-other-changes.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,5 +1,5 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- /dev/null 1970-01-01 00:00:00.000000000 +0000
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/keychain.m 2019-10-26 02:33:33.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/keychain.m
</span> @@ -0,0 +1,290 @@
+/*
+ * Copyright (c) 2007-2016 Apple Inc. All rights reserved.
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -291,8 +291,8 @@
</span> +
+ return ret;
+}
<span style='display:block; white-space:pre;background:#ffe0e0;'>---- /dev/null 1970-01-01 00:00:00.000000000 +0000
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/keychain.h 2019-10-26 02:28:24.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/keychain.h
</span> @@ -0,0 +1,36 @@
+/*
+ * Copyright (c) 2007-2016 Apple Inc. All rights reserved.
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -330,8 +330,8 @@
</span> +void remove_from_keychain(const char *filename);
+char *keychain_read_passphrase(const char *filename);
+int load_identities_from_keychain(int (^add_identity)(const char *identity));
<span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/Makefile.in 2019-10-09 02:31:03.000000000 +0200
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/Makefile.in 2019-10-26 02:28:24.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/Makefile.in
</span> @@ -41,6 +41,7 @@ PATHS= -DSSHDIR=\"$(sysconfdir)\" \
CC=@CC@
LD=@LD@
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -401,8 +401,8 @@
</span>
ssh-keygen$(EXEEXT): $(LIBCOMPAT) libssh.a ssh-keygen.o sshsig.o
$(LD) -o $@ ssh-keygen.o sshsig.o $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS)
<span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/audit-bsm.c 2019-10-09 02:31:03.000000000 +0200
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/audit-bsm.c 2019-10-26 02:28:24.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/audit-bsm.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/audit-bsm.c
</span> @@ -62,6 +62,18 @@
#include <bsm/audit_record.h>
#include <locale.h>
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -442,8 +442,8 @@
</span> if (the_authctxt->valid)
info.ai_auid = the_authctxt->pw->pw_uid;
else
<span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/configure.ac 2019-10-09 02:31:03.000000000 +0200
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/configure.ac 2019-10-26 02:28:24.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/configure.ac
</span> @@ -20,6 +20,7 @@ AC_LANG([C])
AC_CONFIG_HEADER([config.h])
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -504,8 +504,8 @@
</span> dnl Adding -Werror to CFLAGS early prevents configure tests from running.
dnl Add now.
CFLAGS="$CFLAGS $werror_flags"
<span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/groupaccess.c 2019-10-09 02:31:03.000000000 +0200
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/groupaccess.c 2019-10-26 02:28:24.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/groupaccess.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/groupaccess.c
</span> @@ -39,6 +39,10 @@
#include "match.h"
#include "log.h"
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -544,8 +544,8 @@
</span>
for (i = 0, j = 0; i < ngroups; i++)
if ((gr = getgrgid(groups_bygid[i])) != NULL)
<span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/readconf.c 2019-10-09 02:31:03.000000000 +0200
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/readconf.c 2019-10-26 02:28:24.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/readconf.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/readconf.c
</span> @@ -167,6 +167,9 @@ typedef enum {
oHashKnownHosts,
oTunnel, oTunnelDevice,
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -601,8 +601,8 @@
</span> }
struct fwdarg {
<span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/readconf.h 2019-10-09 02:31:03.000000000 +0200
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/readconf.h 2019-10-26 02:28:24.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/readconf.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/readconf.h
</span> @@ -137,6 +137,9 @@ typedef struct {
char *local_command;
int permit_local_command;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -613,8 +613,8 @@
</span> int visual_host_key;
int request_tty;
<span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/session.c 2019-10-09 02:31:03.000000000 +0200
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/session.c 2019-10-26 02:28:24.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/session.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/session.c
</span> @@ -1185,6 +1185,21 @@ do_setup_env(struct ssh *ssh, Session *s
child_set_env(&env, &envsize, "SSH_ORIGINAL_COMMAND",
original_command);
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -637,8 +637,8 @@
</span> if (debug_flag) {
/* dump the environment */
fprintf(stderr, "Environment:\n");
<span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/ssh-add.0 2019-10-09 02:39:14.000000000 +0200
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/ssh-add.0 2019-10-26 02:28:24.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/ssh-add.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/ssh-add.0
</span> @@ -4,7 +4,7 @@ NAME
ssh-add M-bM-^@M-^S adds private key identities to the authentication agent
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -669,8 +669,8 @@
</span> -k When loading keys into or deleting keys from the agent, process
plain private keys only and skip certificates.
<span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/ssh-add.1 2019-10-09 02:31:03.000000000 +0200
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/ssh-add.1 2019-10-26 02:28:24.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/ssh-add.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/ssh-add.1
</span> @@ -43,7 +43,7 @@
.Nd adds private key identities to the authentication agent
.Sh SYNOPSIS
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -701,8 +701,8 @@
</span> .It Fl k
When loading keys into or deleting keys from the agent, process plain private
keys only and skip certificates.
<span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/ssh-add.c 2019-10-09 02:31:03.000000000 +0200
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/ssh-add.c 2019-10-26 02:28:24.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/ssh-add.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/ssh-add.c
</span> @@ -67,6 +67,11 @@
#include "ssherr.h"
#include "digest.h"
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -735,7 +735,7 @@
</span> + if (use_keychain && private != NULL)
+ store_in_keychain(filename, pass);
+#endif
<span style='display:block; white-space:pre;background:#ffe0e0;'>-+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> +
+#ifdef __APPLE_KEYCHAIN__
+ // try the keychain
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -744,7 +744,7 @@
</span> + pass = keychain_read_passphrase(filename);
+ if (pass != NULL)
+ sshkey_parse_private_fileblob(keyblob, pass, &private, &comment);
<span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ }
</span> +#endif
+
if (private == NULL) {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -778,8 +778,39 @@
</span> }
int
<span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/ssh-agent.c 2019-10-09 02:31:03.000000000 +0200
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/ssh-agent.c 2019-10-26 02:28:24.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -600,7 +638,11 @@ main(int argc, char **argv)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ exit(2);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef __APPLE_KEYCHAIN__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ while ((ch = getopt(argc, argv, "vklLcdDTxXE:e:M:m:qs:t:KA")) != -1) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ while ((ch = getopt(argc, argv, "vklLcdDTxXE:e:M:m:qs:t:")) != -1) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ switch (ch) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ case 'v':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (log_level == SYSLOG_LEVEL_INFO)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -673,6 +715,18 @@ main(int argc, char **argv)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ case 'T':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Tflag = 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef __APPLE_KEYCHAIN__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ case 'A':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ use_keychain = 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if (load_identities_from_keychain(^(const char *filename){
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ return add_file(agent_fd, filename, 0, qflag);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ }))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ ret = 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ goto done;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ case 'K':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ use_keychain = 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ default:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ usage();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ret = 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/ssh-agent.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/ssh-agent.c
</span> @@ -70,6 +70,10 @@
#include <time.h>
#include <string.h>
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -930,8 +961,8 @@
</span> if (ac > 0)
parent_alive_interval = 10;
idtab_init();
<span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/sshconnect2.c 2019-10-09 02:31:03.000000000 +0200
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/sshconnect2.c 2019-10-26 02:28:24.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/sshconnect2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/sshconnect2.c
</span> @@ -73,6 +73,11 @@
#include "ssherr.h"
#include "utf8.h"
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -972,8 +1003,8 @@
</span> if (!quit && private != NULL && id->agent_fd == -1 &&
!(id->key && id->isprivate))
maybe_add_key_to_agent(id->filename, private, comment,
<span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/ssh-agent.0 2019-10-09 02:39:14.000000000 +0200
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/ssh-agent.0 2019-10-26 02:28:24.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/ssh-agent.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/ssh-agent.0
</span> @@ -7,6 +7,7 @@ SYNOPSIS
ssh-agent [-c | -s] [-Dd] [-a bind_address] [-E fingerprint_hash]
[-P pkcs11_whitelist] [-t life] [command [arg ...]]
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -992,8 +1023,8 @@
</span> If a command line is given, this is executed as a subprocess of the
agent. When the command dies, so does the agent.
<span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/ssh-agent.1 2019-10-09 02:31:03.000000000 +0200
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/ssh-agent.1 2019-10-26 02:28:24.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/ssh-agent.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/ssh-agent.1
</span> @@ -52,6 +52,8 @@
.Nm ssh-agent
.Op Fl c | s
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1014,8 +1045,8 @@
</span> .El
.Pp
If a command line is given, this is executed as a subprocess of the agent.
<span style='display:block; white-space:pre;background:#ffe0e0;'>---- /dev/null 1970-01-01 00:00:00.000000000 +0000
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/SecItemPriv-shim.h 2019-10-26 02:28:24.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/SecItemPriv-shim.h
</span> @@ -0,0 +1,105 @@
+/*
+ * Copyright (c) 2006-2013 Apple Inc. All Rights Reserved.
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1122,8 +1153,8 @@
</span> +__END_DECLS
+
+#endif /* !_SECURITY_SECITEMPRIV_H_ */
<span style='display:block; white-space:pre;background:#ffe0e0;'>---- /dev/null 1970-01-01 00:00:00.000000000 +0000
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/macos-object-subscripting.m 2019-10-26 02:32:19.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/macos-object-subscripting.m
</span> @@ -0,0 +1,65 @@
+/*
+ * Copyright (c) 2017-2019 Mihai Moldovan <ionic@ionic.de>
</pre><pre style='margin:0'>
</pre>