Daniel Willmann | 8b3390e | 2008-12-28 00:31:09 +0000 | [diff] [blame] | 1 | #ifndef _GSM_04_11_H |
| 2 | #define _GSM_04_11_H |
| 3 | |
Harald Welte | 13f5297 | 2010-02-20 18:56:00 +0100 | [diff] [blame] | 4 | #include <osmocore/protocol/gsm_04_11.h> |
Harald Welte | 7e310b1 | 2009-03-30 20:56:32 +0000 | [diff] [blame] | 5 | |
Holger Hans Peter Freyther | 6a3d765 | 2010-06-15 12:03:10 +0800 | [diff] [blame^] | 6 | #define UM_SAPI_SMS 3 /* See GSM 04.05/04.06 */ |
| 7 | |
Daniel Willmann | 6fe997e | 2008-12-29 04:20:41 +0000 | [diff] [blame] | 8 | /* SMS deliver PDU */ |
| 9 | struct sms_deliver { |
Harald Welte | b9c758b | 2009-07-05 14:02:46 +0200 | [diff] [blame] | 10 | u_int8_t mti:2; /* message type indicator */ |
| 11 | u_int8_t mms:1; /* more messages to send */ |
| 12 | u_int8_t rp:1; /* reply path */ |
| 13 | u_int8_t udhi:1; /* user data header indicator */ |
| 14 | u_int8_t sri:1; /* status report indication */ |
| 15 | u_int8_t *orig_addr; /* originating address */ |
| 16 | u_int8_t pid; /* protocol identifier */ |
| 17 | u_int8_t dcs; /* data coding scheme */ |
| 18 | /* service centre time stamp */ |
| 19 | u_int8_t ud_len; /* user data length */ |
| 20 | u_int8_t *user_data; /* user data */ |
| 21 | |
| 22 | u_int8_t msg_ref; /* message reference */ |
Daniel Willmann | 6fe997e | 2008-12-29 04:20:41 +0000 | [diff] [blame] | 23 | u_int8_t *smsc; |
Daniel Willmann | 6fe997e | 2008-12-29 04:20:41 +0000 | [diff] [blame] | 24 | }; |
| 25 | |
Daniel Willmann | 8b3390e | 2008-12-28 00:31:09 +0000 | [diff] [blame] | 26 | struct msgb; |
| 27 | |
Harald Welte (local) | daef606 | 2009-08-14 11:41:12 +0200 | [diff] [blame] | 28 | int gsm0411_rcv_sms(struct msgb *msg, u_int8_t link_id); |
Daniel Willmann | 8b3390e | 2008-12-28 00:31:09 +0000 | [diff] [blame] | 29 | |
Holger Hans Peter Freyther | 5179c8e | 2010-03-23 07:32:23 +0100 | [diff] [blame] | 30 | int gsm411_send_sms_lchan(struct gsm_subscriber_connection *conn, struct gsm_sms *sms); |
Holger Hans Peter Freyther | 34e9749 | 2009-08-10 07:54:02 +0200 | [diff] [blame] | 31 | |
| 32 | struct gsm_sms *sms_alloc(void); |
| 33 | void sms_free(struct gsm_sms *sms); |
Daniel Willmann | 6fe997e | 2008-12-29 04:20:41 +0000 | [diff] [blame] | 34 | |
Holger Hans Peter Freyther | 65fb0fd | 2009-10-22 15:39:37 +0200 | [diff] [blame] | 35 | void _gsm411_sms_trans_free(struct gsm_trans *trans); |
| 36 | int gsm411_send_sms_subscr(struct gsm_subscriber *subscr, |
| 37 | struct gsm_sms *sms); |
Holger Hans Peter Freyther | 6a3d765 | 2010-06-15 12:03:10 +0800 | [diff] [blame^] | 38 | void gsm411_sapi_n_reject(struct gsm_subscriber_connection *conn); |
Daniel Willmann | 8b3390e | 2008-12-28 00:31:09 +0000 | [diff] [blame] | 39 | #endif |