From 36a13f931a0d396a267374d144bcbec990e32b35 Mon Sep 17 00:00:00 2001
From: James Golovich <james@gnuinter.net>
Date: Sun, 18 Apr 2004 21:53:13 +0000
Subject: [PATCH] Make 'iax2 show users' print key if a key is used (bug 1253)

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@2707 65c4cc65-6c06-0410-ace0-fbb531ad65f3
---
 channels/chan_iax2.c | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git a/channels/chan_iax2.c b/channels/chan_iax2.c
index db4bda631a..23857618ed 100755
--- a/channels/chan_iax2.c
+++ b/channels/chan_iax2.c
@@ -2823,15 +2823,22 @@ static int iax2_send(struct chan_iax2_pvt *pvt, struct ast_frame *f, unsigned in
 
 static int iax2_show_users(int fd, int argc, char *argv[])
 {
-#define FORMAT "%-15.15s  %-15.15s  %-15.15s  %-15.15s  %-5.5s\n"
-#define FORMAT2 "%-15.15s  %-15.15s  %-15.15d  %-15.15s  %-5.5s\n"
+#define FORMAT "%-15.15s  %-20.20s  %-15.15s  %-15.15s  %-5.5s\n"
+#define FORMAT2 "%-15.15s  %-20.20s  %-15.15d  %-15.15s  %-5.5s\n"
 	struct iax2_user *user;
+	char auth[90];
 	if (argc != 3) 
 		return RESULT_SHOWUSAGE;
 	ast_mutex_lock(&userl.lock);
 	ast_cli(fd, FORMAT, "Username", "Secret", "Authen", "Def.Context", "A/C");
 	for(user=userl.users;user;user=user->next) {
-		ast_cli(fd, FORMAT2, user->name, user->secret, user->authmethods, 
+		if (strlen(user->secret)) {
+  			strncpy(auth,user->secret,strlen(auth)-1);
+		} else if (strlen(user->inkeys)) {
+  			sprintf(auth,"Key: %-15.15s ",user->inkeys);
+ 		} else
+			strcpy(auth,"-no secret-");
+		ast_cli(fd, FORMAT2, user->name, auth, user->authmethods, 
 				user->contexts ? user->contexts->context : context,
 				user->ha ? "Yes" : "No");
 	}
-- 
GitLab