[Asterisk-cvs] asterisk channel.c,1.166,1.167 utils.c,1.25,1.26
markster at lists.digium.com
markster at lists.digium.com
Sat Jan 15 15:48:07 CST 2005
Update of /usr/cvsroot/asterisk
In directory mongoose.digium.com:/tmp/cvs-serv4629
Modified Files:
channel.c utils.c
Log Message:
Make groups be 64-bits (bug #3351, with mods)
Index: channel.c
===================================================================
RCS file: /usr/cvsroot/asterisk/channel.c,v
retrieving revision 1.166
retrieving revision 1.167
diff -u -d -r1.166 -r1.167
--- channel.c 15 Jan 2005 06:37:51 -0000 1.166
+++ channel.c 15 Jan 2005 21:51:37 -0000 1.167
@@ -3033,13 +3033,13 @@
return 0;
}
-unsigned int ast_get_group(char *s)
+ast_group_t ast_get_group(char *s)
{
char *copy;
char *piece;
char *c=NULL;
int start=0, finish=0,x;
- unsigned int group = 0;
+ ast_group_t group = 0;
copy = ast_strdupa(s);
if (!copy) {
ast_log(LOG_ERROR, "Out of memory\n");
@@ -3058,8 +3058,8 @@
continue;
}
for (x=start;x<=finish;x++) {
- if ((x > 31) || (x < 0)) {
- ast_log(LOG_WARNING, "Ignoring invalid group %d (maximum group is 31)\n", x);
+ if ((x > 63) || (x < 0)) {
+ ast_log(LOG_WARNING, "Ignoring invalid group %d (maximum group is 63)\n", x);
} else
group |= (1 << x);
}
@@ -3118,3 +3118,29 @@
{
ast_cli_register(&cli_show_channeltypes);
}
+
+/*--- ast_print_group: Print call group and pickup group ---*/
+char *ast_print_group(char *buf, int buflen, ast_group_t 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<=63; i++) { /* Max group is 63 */
+ if (group & (1 << i)) {
+ if (!first) {
+ strncat(buf, ", ", buflen);
+ } else {
+ first=0;
+ }
+ snprintf(num, sizeof(num), "%u", i);
+ strncat(buf, num, buflen);
+ }
+ }
+ return(buf);
+}
Index: utils.c
===================================================================
RCS file: /usr/cvsroot/asterisk/utils.c,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -d -r1.25 -r1.26
--- utils.c 8 Jan 2005 18:54:30 -0000 1.25
+++ utils.c 15 Jan 2005 21:51:37 -0000 1.26
@@ -430,30 +430,3 @@
}
}
#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);
-}
More information about the svn-commits
mailing list