#include <time.h>#include <unistd.h>#include "../../mem/shm_mem.h"#include "../../timer.h"#include "sms_report.h"#include "sms_funcs.h"

Go to the source code of this file.
Data Structures | |
| struct | report_cell |
Defines | |
| #define | END_ERR_MSG ". The message was: " |
| #define | END_ERR_MSG_LEN (strlen( END_ERR_MSG)) |
| #define | REPORT_TIMEOUT 1*60*60 |
| #define | START_ERR_MSG |
| #define | START_ERR_MSG_LEN (strlen(START_ERR_MSG)) |
Typedefs | |
| typedef time_t( | get_time_func )(void) |
Functions | |
| void | add_sms_into_report_queue (int id, struct sms_msg *sms, char *p, int l) |
| void | check_timeout_in_report_queue (void) |
| void | destroy_report_queue (void) |
| void | free_report_cell (struct report_cell *cell) |
| str * | get_error_str (int status) |
| struct sms_msg * | get_sms_from_report_queue (int id) |
| str * | get_text_from_report_queue (int id) |
| static time_t | get_time_ser (void) |
| static time_t | get_time_sys (void) |
| int | init_report_queue (void) |
| int | relay_report_to_queue (int id, char *phone, int status, int *old_status) |
| void | remove_sms_from_report_queue (int id) |
| void | set_gettime_function (void) |
Variables | |
| get_time_func * | get_time |
| struct report_cell * | report_queue = 0 |
| #define END_ERR_MSG ". The message was: " |
| #define END_ERR_MSG_LEN (strlen( END_ERR_MSG)) |
| #define REPORT_TIMEOUT 1*60*60 |
| #define START_ERR_MSG |
Value:
"Your message (or part of it) couldn't be "\ "delivered. The SMS Center said: "
Definition at line 31 of file sms_report.c.
Referenced by get_error_str().
| #define START_ERR_MSG_LEN (strlen(START_ERR_MSG)) |
| typedef time_t( get_time_func)(void) |
Definition at line 46 of file sms_report.c.
| void add_sms_into_report_queue | ( | int | id, | |
| struct sms_msg * | sms, | |||
| char * | p, | |||
| int | l | |||
| ) |
Definition at line 132 of file sms_report.c.
References free_report_cell(), get_time, LM_INFO, REPORT_TIMEOUT, report_cell::sms, report_cell::status, report_cell::text, report_cell::text_len, and report_cell::timeout.
Referenced by send_as_sms().
| void check_timeout_in_report_queue | ( | void | ) |
Definition at line 195 of file sms_report.c.
References free_report_cell(), get_time, LM_INFO, NR_CELLS, report_cell::sms, report_cell::status, and timeout.
Referenced by modem_process().
| void destroy_report_queue | ( | void | ) |
Definition at line 116 of file sms_report.c.
References free_report_cell(), NR_CELLS, shm_free, and report_cell::sms.
Referenced by sms_exit().
| void free_report_cell | ( | struct report_cell * | cell | ) | [inline] |
Definition at line 85 of file sms_report.c.
References sms_msg::ref, shm_free, report_cell::sms, report_cell::status, report_cell::text, report_cell::text_len, and report_cell::timeout.
Referenced by add_sms_into_report_queue(), check_timeout_in_report_queue(), destroy_report_queue(), and remove_sms_from_report_queue().
| str* get_error_str | ( | int | status | ) |
Definition at line 242 of file sms_report.c.
References END_ERR_MSG, END_ERR_MSG_LEN, _str::len, _str::s, START_ERR_MSG, and START_ERR_MSG_LEN.
Referenced by check_sms_report().
| struct sms_msg* get_sms_from_report_queue | ( | int | id | ) | [read] |
| str* get_text_from_report_queue | ( | int | id | ) |
Definition at line 222 of file sms_report.c.
References _str::len, _str::s, report_cell::text, and report_cell::text_len.
Referenced by check_sms_report().
| static time_t get_time_ser | ( | void | ) | [static] |
Definition at line 55 of file sms_report.c.
References get_ticks().
Referenced by set_gettime_function().
| static time_t get_time_sys | ( | void | ) | [static] |
| int init_report_queue | ( | void | ) |
Definition at line 101 of file sms_report.c.
References LM_ERR, NR_CELLS, and shm_malloc().
Referenced by global_init().
| int relay_report_to_queue | ( | int | id, | |
| char * | phone, | |||
| int | status, | |||
| int * | old_status | |||
| ) |
Definition at line 151 of file sms_report.c.
References _str::len, LM_DBG, LM_INFO, _str::s, report_cell::sms, report_cell::status, and sms_msg::to.
Referenced by check_sms_report().
| void remove_sms_from_report_queue | ( | int | id | ) |
Definition at line 214 of file sms_report.c.
References free_report_cell().
Referenced by check_sms_report().
| void set_gettime_function | ( | void | ) |
Definition at line 66 of file sms_report.c.
References get_ticks(), get_time, get_time_ser(), get_time_sys(), and LM_INFO.
Referenced by modem_process().
Definition at line 47 of file sms_report.c.
Referenced by add_sms_into_report_queue(), check_timeout_in_report_queue(), and set_gettime_function().
| struct report_cell* report_queue = 0 |
Definition at line 45 of file sms_report.c.
1.5.6