Index: asterisk/channels/chan_sip.c =================================================================== RCS file: /usr/cvsroot/asterisk/channels/chan_sip.c,v retrieving revision 1.442 diff -u -r1.442 chan_sip.c --- asterisk/channels/chan_sip.c 8 Jul 2004 14:06:22 -0000 1.442 +++ asterisk/channels/chan_sip.c 8 Jul 2004 22:06:33 -0000 @@ -11,6 +11,7 @@ * the GNU General Public License */ +#define MYSQL_USERS 1 #include #include @@ -960,6 +961,7 @@ char *name = NULL; int numfields, x; time_t regseconds, nowtime; + int limit; MYSQL_RES *result; MYSQL_FIELD *fields; MYSQL_ROW rowval; @@ -968,7 +970,7 @@ mysql_real_escape_string(mysql, name, user, strlen(user)); } - snprintf(query, sizeof(query), "SELECT name, secret, context, username, ipaddr, port, regseconds, callerid, restrictcid FROM sipfriends WHERE name=\"%s\"", name); + snprintf(query, sizeof(query), "SELECT name, secret, context, username, ipaddr, port, regseconds, callerid, restrictcid, inlimit, outlimit FROM sipfriends WHERE name=\"%s\"", name); ast_mutex_lock(&mysqllock); mysql_query(mysql, query); @@ -996,7 +998,18 @@ } else if (!strcasecmp(fields[x].name, "callerid")) { strncpy(u->callerid, rowval[x], sizeof(u->callerid) - 1); u->hascallerid=1; + } else if (!strcasecmp(fields[x].name, "inlimit")) { + if (sscanf(rowval[x],"%lu",&limit) != 1) + u->incominglimit = 0; + else + u->incominglimit = limit; + } else if (!strcasecmp(fields[x].name, "outlimit")) { + if (sscanf(rowval[x],"%lu",&limit) != 1) + u->outgoinglimit = 0; + else + u->outgoinglimit = limit; } + } } time(&nowtime);