aboutsummaryrefslogtreecommitdiffstats
path: root/channels/chan_skinny.c
diff options
context:
space:
mode:
authorqwell <qwell@f38db490-d61c-443f-a65b-d21fe96a405b>2006-08-20 01:25:02 +0000
committerqwell <qwell@f38db490-d61c-443f-a65b-d21fe96a405b>2006-08-20 01:25:02 +0000
commit4f276dd765eb67b1e93db5adade26a542ad76aaf (patch)
treeedc95ed69936263b729bccc3ded19c11f1fc2523 /channels/chan_skinny.c
parentb67daff4e573d8f24c423e788734a100856d40ba (diff)
Fix minor display issues in "skinny show devices".
Patch by wedhorn with minor modifications by me. Issue 7766 git-svn-id: http://svn.digium.com/svn/asterisk/trunk@40561 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/chan_skinny.c')
-rw-r--r--channels/chan_skinny.c82
1 files changed, 75 insertions, 7 deletions
diff --git a/channels/chan_skinny.c b/channels/chan_skinny.c
index 498b87cfd..b43cd2827 100644
--- a/channels/chan_skinny.c
+++ b/channels/chan_skinny.c
@@ -1696,6 +1696,73 @@ static int skinny_reset_device(int fd, int argc, char *argv[])
return RESULT_SUCCESS;
}
+static char *device2str(int type)
+{
+ static char tmp[15];
+
+ switch (type) {
+ case SKINNY_DEVICE_NONE:
+ return "No Device";
+ case SKINNY_DEVICE_30SPPLUS:
+ return "30SP Plus";
+ case SKINNY_DEVICE_12SPPLUS:
+ return "12SP Plus";
+ case SKINNY_DEVICE_12SP:
+ return "12SP";
+ case SKINNY_DEVICE_12:
+ return "12";
+ case SKINNY_DEVICE_30VIP:
+ return "30VIP";
+ case SKINNY_DEVICE_7910:
+ return "7910";
+ case SKINNY_DEVICE_7960:
+ return "7960";
+ case SKINNY_DEVICE_7940:
+ return "7940";
+ case SKINNY_DEVICE_7935:
+ return "7935";
+ case SKINNY_DEVICE_ATA186:
+ return "ATA186";
+ case SKINNY_DEVICE_7941:
+ return "7941";
+ case SKINNY_DEVICE_7971:
+ return "7971";
+ case SKINNY_DEVICE_7985:
+ return "7985";
+ case SKINNY_DEVICE_7911:
+ return "7911";
+ case SKINNY_DEVICE_7961GE:
+ return "7961GE";
+ case SKINNY_DEVICE_7941GE:
+ return "7941GE";
+ case SKINNY_DEVICE_7905:
+ return "7905";
+ case SKINNY_DEVICE_7920:
+ return "7920";
+ case SKINNY_DEVICE_7970:
+ return "7970";
+ case SKINNY_DEVICE_7912:
+ return "7912";
+ case SKINNY_DEVICE_7902:
+ return "7902";
+ case SKINNY_DEVICE_CIPC:
+ return "CIPC";
+ case SKINNY_DEVICE_7961:
+ return "7961";
+ case SKINNY_DEVICE_7936:
+ return "7936";
+ case SKINNY_DEVICE_SCCPGATEWAY_AN:
+ return "SCCPGATEWAY_AN";
+ case SKINNY_DEVICE_SCCPGATEWAY_BRI:
+ return "SCCPGATEWAY_BRI";
+ case SKINNY_DEVICE_UNKNOWN:
+ return "Unknown";
+ default:
+ snprintf(tmp, sizeof(tmp), "UNKNOWN-%d", type);
+ return tmp;
+ }
+}
+
static int skinny_show_devices(int fd, int argc, char *argv[])
{
struct skinny_device *d;
@@ -1707,19 +1774,19 @@ static int skinny_show_devices(int fd, int argc, char *argv[])
}
ast_mutex_lock(&devicelock);
- ast_cli(fd, "Name DeviceId IP TypeId R NL\n");
- ast_cli(fd, "-------------------- ---------------- --------------- ------ - --\n");
+ ast_cli(fd, "Name DeviceId IP Type R NL\n");
+ ast_cli(fd, "-------------------- ---------------- --------------- --------------- - --\n");
for (d = devices; d; d = d->next) {
numlines = 0;
for (l = d->lines; l; l = l->next) {
numlines++;
}
- ast_cli(fd, "%-20s %-16s %-15s %6X %c %2d\n",
+ ast_cli(fd, "%-20s %-16s %-15s %-15s %c %2d\n",
d->name,
d->id,
- ast_inet_ntoa(d->addr.sin_addr),
- d->type,
+ d->session?ast_inet_ntoa(d->session->sin.sin_addr):"",
+ device2str(d->type),
d->registered?'Y':'N',
numlines);
}
@@ -2441,9 +2508,10 @@ static char *control2str(int ind) {
return "Unhold";
case -1:
return "Stop tone";
+ default:
+ snprintf(tmp, sizeof(tmp), "UNKNOWN-%d", ind);
+ return tmp;
}
- snprintf(tmp, 100, "UNKNOWN-%d", ind);
- return tmp;
}