--- Unode-1.0.0/mheard.c.orig 2010-11-26 06:35:50.000000000 -0800 +++ Unode-1.0.0/mheard.c 2012-06-10 13:56:48.730011279 -0700 @@ -22,12 +22,16 @@ struct mheard_list *next; }; +/* mheard supports 2 passed arguments: + * hidden + * portname +*/ int do_mheard(int argc, char **argv) { FILE *fp; struct mheard_struct mh; struct mheard_list *list, *new, *tmp, *p; - char *s, *t, *u; + char *s, *t, *u, *mhcount; axio_puts("",NodeIo); if (User.ul_type == AF_NETROM) { @@ -79,9 +83,13 @@ if (check_perms(PERM_ANSI, 0L) != -1) { axio_printf(NodeIo, "\e[0;m"); } + mhcount = 0; axio_printf(NodeIo,"Callsign Device Packets Date & Time Frame Type(s)\n"); axio_printf(NodeIo,"--------- ------ -------- --------------- -------------"); - while (list != NULL) { + /* Limit the displayed Mheard list to 25 listings or the TX could take hours + * for a long running system + */ + while (mhcount != 25) { s = ctime(&list->data.last_heard); s[19] = 0; s += 4; @@ -116,6 +124,7 @@ tmp = list; list = list->next; free(tmp); + mhcount += 1; } if (User.ul_type == AF_NETROM) { node_msg("");