73 #define O_DESTROY(a) { octstr_destroy(a); a = NULL; } 104 sms->sms.sms_type =
mo;
138 debug(
"smsc.loopback", 0,
"Shutting down SMSCConn %s",
Msg * msg_duplicate(Msg *msg)
static int msg_cb(SMSCConn *conn, Msg *msg)
static int shutdown_cb(SMSCConn *conn, int finish_sending)
void bb_smscconn_killed(void)
void uuid_unparse(const uuid_t uu, char *out)
void uuid_generate(uuid_t out)
static void start_cb(SMSCConn *conn)
void dlr_add(const Octstr *smsc, const Octstr *ts, Msg *msg, int use_dst)
#define octstr_get_cstr(ostr)
void(* start_conn)(SMSCConn *conn)
smscconn_killed_t why_killed
long bb_smscconn_receive(SMSCConn *conn, Msg *sms)
int uuid_is_null(const uuid_t uu)
#define octstr_duplicate(ostr)
int smsc_loopback_create(SMSCConn *conn, CfgGroup *cfg)
Octstr * octstr_format(const char *fmt,...)
void octstr_destroy(Octstr *ostr)
#define octstr_create(cstr)
void bb_smscconn_sent(SMSCConn *conn, Msg *sms, Octstr *reply)
int(* shutdown)(SMSCConn *conn, int finish_sending)
void debug(const char *place, int err, const char *fmt,...)
#define MSG_PARAM_UNDEFINED
long(* queued)(SMSCConn *conn)
int(* send_msg)(SMSCConn *conn, Msg *msg)
static long queued_cb(SMSCConn *conn)
#define DLR_IS_ENABLED_DEVICE(dlr)
static XMLRPCDocument * msg
void uuid_clear(uuid_t uu)