2008-12-28 00:31:09 +00:00
|
|
|
#ifndef _GSM_04_11_H
|
|
|
|
#define _GSM_04_11_H
|
|
|
|
|
2011-03-22 15:47:59 +00:00
|
|
|
#include <osmocom/gsm/protocol/gsm_04_11.h>
|
2009-03-30 20:56:32 +00:00
|
|
|
|
2010-06-15 04:03:10 +00:00
|
|
|
#define UM_SAPI_SMS 3 /* See GSM 04.05/04.06 */
|
|
|
|
|
2008-12-29 04:20:41 +00:00
|
|
|
/* SMS deliver PDU */
|
|
|
|
struct sms_deliver {
|
2011-04-18 15:04:00 +00:00
|
|
|
uint8_t mti:2; /* message type indicator */
|
|
|
|
uint8_t mms:1; /* more messages to send */
|
|
|
|
uint8_t rp:1; /* reply path */
|
|
|
|
uint8_t udhi:1; /* user data header indicator */
|
|
|
|
uint8_t sri:1; /* status report indication */
|
|
|
|
uint8_t *orig_addr; /* originating address */
|
|
|
|
uint8_t pid; /* protocol identifier */
|
|
|
|
uint8_t dcs; /* data coding scheme */
|
2009-07-05 12:02:46 +00:00
|
|
|
/* service centre time stamp */
|
2011-04-18 15:04:00 +00:00
|
|
|
uint8_t ud_len; /* user data length */
|
|
|
|
uint8_t *user_data; /* user data */
|
2009-07-05 12:02:46 +00:00
|
|
|
|
2011-04-18 15:04:00 +00:00
|
|
|
uint8_t msg_ref; /* message reference */
|
|
|
|
uint8_t *smsc;
|
2008-12-29 04:20:41 +00:00
|
|
|
};
|
|
|
|
|
2008-12-28 00:31:09 +00:00
|
|
|
struct msgb;
|
|
|
|
|
2010-06-17 08:41:25 +00:00
|
|
|
int gsm0411_rcv_sms(struct gsm_subscriber_connection *conn, struct msgb *msg);
|
2008-12-28 00:31:09 +00:00
|
|
|
|
2009-08-10 05:54:02 +00:00
|
|
|
struct gsm_sms *sms_alloc(void);
|
|
|
|
void sms_free(struct gsm_sms *sms);
|
2012-12-27 23:49:01 +00:00
|
|
|
struct gsm_sms *sms_from_text(struct gsm_subscriber *receiver, struct gsm_subscriber *sender, int dcs, const char *text);
|
2008-12-29 04:20:41 +00:00
|
|
|
|
2009-10-22 13:39:37 +00:00
|
|
|
void _gsm411_sms_trans_free(struct gsm_trans *trans);
|
|
|
|
int gsm411_send_sms_subscr(struct gsm_subscriber *subscr,
|
|
|
|
struct gsm_sms *sms);
|
2010-12-24 12:48:27 +00:00
|
|
|
int gsm411_send_sms(struct gsm_subscriber_connection *conn,
|
|
|
|
struct gsm_sms *sms);
|
2010-06-15 04:03:10 +00:00
|
|
|
void gsm411_sapi_n_reject(struct gsm_subscriber_connection *conn);
|
2008-12-28 00:31:09 +00:00
|
|
|
#endif
|