--- /dev/null	Wed Feb 10 16:25:02 2016
+++ new/build/openssh/patches/0033-Temporarily-set-ssh-keygen-and-ssh-add-to-old-FP-for.patch	Wed Feb 10 16:25:02 2016
@@ -0,0 +1,146 @@
+From 59c773c11e5c0bf249e270fc4658513834a754e1 Mon Sep 17 00:00:00 2001
+From: Alex Wilson <alex.wilson@joyent.com>
+Date: Wed, 9 Sep 2015 10:36:05 -0700
+Subject: [PATCH 33/36] Temporarily set ssh-keygen and ssh-add to old FP format
+
+SDC and its users have a lot of scripts that expect ssh-add
+and ssh-keygen to return fingerprints in the old format.
+As a temporary measure, make us default to producing this
+same output until we have migrated everything over.
+---
+ ssh-add.c    | 13 +++++++++++--
+ ssh-keygen.c | 21 ++++++++++++++++++---
+ 2 files changed, 29 insertions(+), 5 deletions(-)
+
+diff --git a/ssh-add.c b/ssh-add.c
+index d6271d7..2eb723f 100644
+--- a/ssh-add.c
++++ b/ssh-add.c
+@@ -52,6 +52,7 @@
+ #include <string.h>
+ #include <unistd.h>
+ #include <limits.h>
++#include <assert.h>
+ 
+ #include "xmalloc.h"
+ #include "ssh.h"
+@@ -85,7 +86,8 @@ static char *default_files[] = {
+ 	NULL
+ };
+ 
+-static int fingerprint_hash = SSH_FP_HASH_DEFAULT;
++static int fingerprint_hash = SSH_DIGEST_MD5;
++static int fingerprint_compat = 1;
+ 
+ /* Default lifetime (0 == forever) */
+ static int lifetime = 0;
+@@ -364,6 +366,7 @@ static int
+ list_identities(int agent_fd, int do_fp)
+ {
+ 	char *fp;
++	char *fpp;
+ 	int r, had_identities = 0;
+ 	struct ssh_identitylist *idlist;
+ 	size_t i;
+@@ -386,9 +389,14 @@ list_identities(int agent_fd, int do_fp)
+ 			if (do_fp) {
+ 				fp = sshkey_fingerprint(idlist->keys[i],
+ 				    fingerprint_hash, SSH_FP_DEFAULT);
++				fpp = fp;
++				if (fingerprint_compat == 1) {
++					assert(strncmp(fp, "MD5:", 4) == 0);
++					fpp += 4;
++				}
+ 				printf("%d %s %s (%s)\n",
+ 				    sshkey_size(idlist->keys[i]),
+-				    fp == NULL ? "(null)" : fp,
++				    fp == NULL ? "(null)" : fpp,
+ 				    idlist->comments[i],
+ 				    sshkey_type(idlist->keys[i]));
+ 				free(fp);
+@@ -514,6 +522,7 @@ main(int argc, char **argv)
+ 		switch (ch) {
+ 		case 'E':
+ 			fingerprint_hash = ssh_digest_alg_by_name(optarg);
++			fingerprint_compat = 0;
+ 			if (fingerprint_hash == -1)
+ 				fatal("Invalid hash algorithm \"%s\"", optarg);
+ 			break;
+diff --git a/ssh-keygen.c b/ssh-keygen.c
+index 4e0a855..75b3734 100644
+--- a/ssh-keygen.c
++++ b/ssh-keygen.c
+@@ -37,6 +37,7 @@
+ #include <string.h>
+ #include <unistd.h>
+ #include <limits.h>
++#include <assert.h>
+ 
+ #include "xmalloc.h"
+ #include "sshkey.h"
+@@ -101,7 +102,8 @@ int print_fingerprint = 0;
+ int print_bubblebabble = 0;
+ 
+ /* Hash algorithm to use for fingerprints. */
+-int fingerprint_hash = SSH_FP_HASH_DEFAULT;
++int fingerprint_hash = SSH_DIGEST_MD5;
++int fingerprint_compat = 1;
+ 
+ /* The identity file name, given on the command line or entered by the user. */
+ char identity_file[1024];
+@@ -773,6 +775,7 @@ do_download(struct passwd *pw)
+ 	enum sshkey_fp_rep rep;
+ 	int fptype;
+ 	char *fp, *ra;
++	char *fpp;
+ 
+ 	fptype = print_bubblebabble ? SSH_DIGEST_SHA1 : fingerprint_hash;
+ 	rep =    print_bubblebabble ? SSH_FP_BUBBLEBABBLE : SSH_FP_DEFAULT;
+@@ -788,8 +791,13 @@ do_download(struct passwd *pw)
+ 			    SSH_FP_RANDOMART);
+ 			if (fp == NULL || ra == NULL)
+ 				fatal("%s: sshkey_fingerprint fail", __func__);
++			fpp = fp;
++			if (fingerprint_compat == 1) {
++				assert(strncmp(fp, "MD5:", 4) == 0);
++				fpp += 4;
++			}
+ 			printf("%u %s %s (PKCS11 key)\n", sshkey_size(keys[i]),
+-			    fp, sshkey_type(keys[i]));
++			    fpp, sshkey_type(keys[i]));
+ 			if (log_level >= SYSLOG_LEVEL_VERBOSE)
+ 				printf("%s\n", ra);
+ 			free(ra);
+@@ -814,6 +822,7 @@ do_fingerprint(struct passwd *pw)
+ 	FILE *f;
+ 	struct sshkey *public;
+ 	char *comment = NULL, *cp, *ep, line[16*1024], *fp, *ra;
++	char *fpp;
+ 	int r, i, skip = 0, num = 0, invalid = 1;
+ 	enum sshkey_fp_rep rep;
+ 	int fptype;
+@@ -834,7 +843,12 @@ do_fingerprint(struct passwd *pw)
+ 		    SSH_FP_RANDOMART);
+ 		if (fp == NULL || ra == NULL)
+ 			fatal("%s: sshkey_fingerprint fail", __func__);
+-		printf("%u %s %s (%s)\n", sshkey_size(public), fp, comment,
++		fpp = fp;
++		if (fingerprint_compat == 1) {
++			assert(strncmp(fp, "MD5:", 4) == 0);
++			fpp += 4;
++		}
++		printf("%u %s %s (%s)\n", sshkey_size(public), fpp, comment,
+ 		    sshkey_type(public));
+ 		if (log_level >= SYSLOG_LEVEL_VERBOSE)
+ 			printf("%s\n", ra);
+@@ -2243,6 +2257,7 @@ main(int argc, char **argv)
+ 			break;
+ 		case 'E':
+ 			fingerprint_hash = ssh_digest_alg_by_name(optarg);
++			fingerprint_compat = 0;
+ 			if (fingerprint_hash == -1)
+ 				fatal("Invalid hash algorithm \"%s\"", optarg);
+ 			break;
+-- 
+2.5.4 (Apple Git-61)
+
