sms: Add vty command to clear the pending message
This commit is contained in:
parent
3c6f6c25a6
commit
4dcc5e5f8a
|
@ -11,5 +11,6 @@ int sms_queue_trigger(struct gsm_sms_queue *);
|
|||
/* vty helper functions */
|
||||
int sms_queue_stats(struct gsm_sms_queue *, struct vty* vty);
|
||||
int sms_queue_set_max_pending(struct gsm_sms_queue *, int max);
|
||||
int sms_queue_clear(struct gsm_sms_queue *);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -415,3 +415,16 @@ int sms_queue_set_max_pending(struct gsm_sms_queue *smsq, int max_pending)
|
|||
smsq->max_pending = max_pending;
|
||||
return 0;
|
||||
}
|
||||
|
||||
int sms_queue_clear(struct gsm_sms_queue *smsq)
|
||||
{
|
||||
struct gsm_sms_pending *pending, *tmp;
|
||||
|
||||
llist_for_each_entry_safe(pending, tmp, &smsq->pending_sms, entry) {
|
||||
LOGP(DSMS, LOGL_NOTICE,
|
||||
"SMSqueue clearing for sub %llu\n", pending->subscr->id);
|
||||
sms_pending_free(pending);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -667,6 +667,17 @@ DEFUN(smsqueue_max,
|
|||
return CMD_SUCCESS;
|
||||
}
|
||||
|
||||
DEFUN(smsqueue_clear,
|
||||
smsqueue_clear_cmd,
|
||||
"sms-queue clear",
|
||||
"SMS Queue\n" "Clear the queue of pending SMS\n")
|
||||
{
|
||||
struct gsm_network *net = gsmnet_from_vty(vty);
|
||||
|
||||
sms_queue_clear(net->sms_queue);
|
||||
return CMD_SUCCESS;
|
||||
}
|
||||
|
||||
int bsc_vty_init_extra(void)
|
||||
{
|
||||
register_signal_handler(SS_SCALL, scall_cbfn, NULL);
|
||||
|
@ -692,6 +703,7 @@ int bsc_vty_init_extra(void)
|
|||
install_element(ENABLE_NODE, &subscriber_purge_cmd);
|
||||
install_element(ENABLE_NODE, &smsqueue_trigger_cmd);
|
||||
install_element(ENABLE_NODE, &smsqueue_max_cmd);
|
||||
install_element(ENABLE_NODE, &smsqueue_clear_cmd);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue