start cleanup indentation etc.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@26655 65c4cc65-6c06-0410-ace0-fbb531ad65f3
1.4
Luigi Rizzo 19 years ago
parent 466407e814
commit b09dd8708b

@ -77,33 +77,26 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#define REALTIME_COMMON(mode) \ #define REALTIME_COMMON(mode) \
char *buf; \ const char *ctx = NULL; \
char *opts; \
const char *cxt; \
char *table; \ char *table; \
int res = -1; \ int res = -1; \
struct ast_variable *var=NULL; \ struct ast_variable *var=NULL; \
buf = ast_strdupa(data); \ char *buf = ast_strdupa(data); \
if (buf) { \ if (buf) { \
opts = strchr(buf, '/'); \ char *opts = strchr(buf, '/'); \
if (opts) { \ if (opts) \
*opts='\0'; \ *opts++ = '\0'; \
opts++; \ else \
} else \
opts=""; \ opts=""; \
table = strchr(buf, '@'); \ table = strchr(buf, '@'); \
if (table) { \ if (table) { \
*table = '\0'; \ *table++ = '\0'; \
table++;\ ctx = buf; \
cxt = buf; \ } \
} else cxt = NULL; \ ctx = S_OR(ctx, context); \
if (ast_strlen_zero(cxt)) \ table = S_OR(table, "extensions"); \
cxt = context;\ var = realtime_switch_common(table, ctx, exten, priority, mode); \
if (ast_strlen_zero(table)) \ }
table = "extensions"; \
var = realtime_switch_common(table, cxt, exten, priority, mode); \
} else \
res = -1;
static struct ast_variable *realtime_switch_common(const char *table, const char *context, const char *exten, int priority, int mode) static struct ast_variable *realtime_switch_common(const char *table, const char *context, const char *exten, int priority, int mode)
{ {
@ -161,7 +154,8 @@ static struct ast_variable *realtime_switch_common(const char *table, const char
static int realtime_exists(struct ast_channel *chan, const char *context, const char *exten, int priority, const char *callerid, const char *data) static int realtime_exists(struct ast_channel *chan, const char *context, const char *exten, int priority, const char *callerid, const char *data)
{ {
REALTIME_COMMON(MODE_MATCH); REALTIME_COMMON(MODE_MATCH);
if (var) ast_variables_destroy(var); if (var)
ast_variables_destroy(var);
if (var) if (var)
res = 1; res = 1;
return res > 0 ? res : 0; return res > 0 ? res : 0;
@ -170,7 +164,8 @@ static int realtime_exists(struct ast_channel *chan, const char *context, const
static int realtime_canmatch(struct ast_channel *chan, const char *context, const char *exten, int priority, const char *callerid, const char *data) static int realtime_canmatch(struct ast_channel *chan, const char *context, const char *exten, int priority, const char *callerid, const char *data)
{ {
REALTIME_COMMON(MODE_CANMATCH); REALTIME_COMMON(MODE_CANMATCH);
if (var) ast_variables_destroy(var); if (var)
ast_variables_destroy(var);
if (var) if (var)
res = 1; res = 1;
return res > 0 ? res : 0; return res > 0 ? res : 0;
@ -188,13 +183,11 @@ static int realtime_exec(struct ast_channel *chan, const char *context, const ch
struct ast_variable *v; struct ast_variable *v;
REALTIME_COMMON(MODE_MATCH); REALTIME_COMMON(MODE_MATCH);
if (var) { if (var) {
v = var; for (v = var; v ; v = v->next) {
while(v) {
if (!strcasecmp(v->name, "app")) if (!strcasecmp(v->name, "app"))
strncpy(app, v->value, sizeof(app) -1 ); strncpy(app, v->value, sizeof(app) -1 );
else if (!strcasecmp(v->name, "appdata")) else if (!strcasecmp(v->name, "appdata"))
tmp = ast_strdupa(v->value); tmp = ast_strdupa(v->value);
v = v->next;
} }
ast_variables_destroy(var); ast_variables_destroy(var);
if (!ast_strlen_zero(app)) { if (!ast_strlen_zero(app)) {

Loading…
Cancel
Save