Skip to content

Commit

Permalink
sms: port script functions to new param interface
Browse files Browse the repository at this point in the history
  • Loading branch information
rvlad-patrascu committed Apr 2, 2019
1 parent 6eb316b commit a2cefd0
Showing 1 changed file with 33 additions and 19 deletions.
52 changes: 33 additions & 19 deletions modules/sms/sms.c
Expand Up @@ -53,9 +53,9 @@

static int sms_init(void);
static int sms_exit(void);
static int w_sms_send_msg(struct sip_msg*, char*, char* );
static int w_sms_send_msg_to_net(struct sip_msg*, char*, char*);
static int fixup_sms_send_msg_to_net(void** param, int param_no);
static int w_sms_send_msg(struct sip_msg *msg);
static int w_sms_send_msg_to_net(struct sip_msg *msg, void *net_nr);
static int fixup_sms_send_msg_to_net(void** param);
static void sms_process(int);


Expand All @@ -82,14 +82,24 @@ static proc_export_t sms_procs[] = {
{0,0,0,0,0,0}
};


/*
static cmd_export_t cmds[]={
{"sms_send_msg_to_net", (cmd_function)w_sms_send_msg_to_net, 1,
fixup_sms_send_msg_to_net, 0, REQUEST_ROUTE},
{"sms_send_msg", (cmd_function)w_sms_send_msg, 0,
0, 0, REQUEST_ROUTE},
{0,0,0,0,0,0}
};
*/

static cmd_export_t cmds[]={
{"sms_send_msg_to_net", (cmd_function)w_sms_send_msg_to_net, {
{CMD_PARAM_STR,fixup_sms_send_msg_to_net,0}, {0,0,0}},
REQUEST_ROUTE},
{"sms_send_msg",(cmd_function)w_sms_send_msg, {{0,0,0}},
REQUEST_ROUTE},
{0,0,{{0,0,0}},0}
};

static dep_export_t deps = {
{ /* OpenSIPS module dependencies */
Expand Down Expand Up @@ -137,23 +147,27 @@ struct module_exports exports= {



static int fixup_sms_send_msg_to_net(void** param, int param_no)
static int fixup_sms_send_msg_to_net(void** param)
{
long net_nr,i;
str nt;

if (param_no==1) {
for(net_nr=-1,i=0;i<nr_of_networks&&net_nr==-1;i++)
if (!strcasecmp(networks[i].name,*param))
net_nr = i;
if (net_nr==-1) {
LM_ERR("etwork \"%s\" not found in net list!\n",(char*)*param);
return E_UNSPEC;
} else {
pkg_free(*param);
*param=(void*)net_nr;
return 0;
}
for(net_nr=-1,i=0;i<nr_of_networks&&net_nr==-1;i++) {
nt.s = networks[i].name;
nt.len = strlen(nt.s);

if (!str_strcasecmp(&nt,(str*)*param))
net_nr = i;
}
if (net_nr==-1) {
LM_ERR("etwork \"%.*s\" not found in net list!\n",
((str*)*param)->len, ((str*)*param)->s);
return E_UNSPEC;
} else {
*param=(void*)net_nr;
return 0;
}

return 0;
}

Expand Down Expand Up @@ -646,15 +660,15 @@ static int sms_exit(void)



static int w_sms_send_msg(struct sip_msg *msg, char *foo, char *bar)
static int w_sms_send_msg(struct sip_msg *msg)
{
return push_on_network(msg, default_net);
}




static int w_sms_send_msg_to_net(struct sip_msg *msg, char *net_nr, char *foo)
static int w_sms_send_msg_to_net(struct sip_msg *msg, void *net_nr)
{
return push_on_network(msg,(unsigned int)(unsigned long)net_nr);
}
Expand Down

0 comments on commit a2cefd0

Please sign in to comment.