diff dropbearkey.c @ 324:bc7c134982df

Include user@host in the pubkey line, since it's sometimes very useful
author Matt Johnston <matt@ucc.asn.au>
date Wed, 07 Jun 2006 14:48:35 +0000
parents 0cfba3034be5
children 0e4f225b7e07
line wrap: on
line diff
--- a/dropbearkey.c	Wed Jun 07 14:10:21 2006 +0000
+++ b/dropbearkey.c	Wed Jun 07 14:48:35 2006 +0000
@@ -297,6 +297,9 @@
 	const char * typestring = NULL;
 	char *fp = NULL;
 	int len;
+	struct passwd * pw = NULL;
+	char * username = NULL;
+	char hostname[100];
 
 	buf = buf_new(MAX_PUBKEY_SIZE);
 	buf_put_pub_key(buf, key, keytype);
@@ -315,8 +318,19 @@
 
 	fp = sign_key_fingerprint(buf_getptr(buf, len), len);
 
-	printf("Public key portion is:\n%s %s\nFingerprint: %s\n",
-			typestring, base64key, fp);
+	/* a user@host comment is informative */
+	username = "";
+	pw = getpwuid(getuid());
+	if (pw)
+	{
+		username = pw->pw_name;
+	}
+
+	gethostname(hostname, sizeof(hostname));
+	hostname[sizeof(hostname)-1] = '\0';
+
+	printf("Public key portion is:\n%s %s %s@%s\nFingerprint: %s\n",
+			typestring, base64key, username, hostname, fp);
 
 	m_free(fp);
 	buf_free(buf);