From 0c3cea35f0b9e78e1ae449ce7326106b202bf78d Mon Sep 17 00:00:00 2001 From: Mark Spencer Date: Mon, 3 Jan 2005 00:51:57 +0000 Subject: Merge OEJ's print groups feature (bug #3228, with changes) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4636 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- utils.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'utils.c') diff --git a/utils.c b/utils.c index c296275c1..8faddfea6 100755 --- a/utils.c +++ b/utils.c @@ -430,3 +430,29 @@ char *ast_strcasestr(const char *haystack, const char *needle) } #endif + +/*--- ast_print_group: Print call group and pickup group ---*/ +char *ast_print_group(char *buf, int buflen, unsigned int group) +{ + unsigned int i; + int first=1; + char num[3]; + + buf[0] = '\0'; + + if (!group) /* Return empty string if no group */ + return(buf); + + for (i=0; i<=31; i++) { /* Max group is 31 */ + if (group & (1 << i)) { + if (!first) { + strncat(buf, ", ", buflen); + } else { + first=0; + } + snprintf(num, sizeof(num), "%u", i); + strncat(buf, num, buflen); + } + } + return(buf); +} -- cgit v1.2.3