m2mb API docs  37.00.004.1
m2mb API sets documentation
m2mb_pdp.h
Go to the documentation of this file.
1 /* $version: 372135 */
2 /*===============================================================================================*/
3 /* >>> Copyright (C) Telit Communications S.p.A. Italy All Rights Reserved. <<< */
24 #ifndef M2M_M2MB_PDP_API_H
25 #define M2M_M2MB_PDP_API_H
26 
27 
28 /* Global declarations ==========================================================================*/
29 
30 
31 /* Global typedefs ==============================================================================*/
32 
33 typedef HANDLE M2MB_PDP_HANDLE;
34 
35 typedef enum
36 {
37  M2MB_PDP_IPV4, /* PDP IP type IPV4 */
38  M2MB_PDP_IPV6, /* PDP IP type IPV6 */
39  M2MB_PDP_IPV4V6 /* PDP IP type IPV4V6 */
40 } M2MB_PDP_IP_TYPE_E;
41 
42 typedef enum
43 {
44  M2MB_PDP_TYPE_IPV4, /* PDP type IPV4 */
45  M2MB_PDP_TYPE_PPP, /* PDP type PPP -> NOTE: supported only for products supporting WCDMA*/
46  M2MB_PDP_TYPE_IPV6, /* PDP type IPV6 */
47  M2MB_PDP_TYPE_IPV4V6 /* PDP type IPV4V6 */
48 } M2MB_PDP_TYPE_E;
49 
50 typedef enum
51 {
52  M2MB_PDP_AUTHTYPE_NOAUTH, /* PDP auth type No Auth */
53  M2MB_PDP_AUTHTYPE_PAP, /* PDP auth type PAP */
54  M2MB_PDP_AUTHTYPE_CHAP, /* PDP auth type CHAP */
55  ENUM_TO_INT( M2MB_PDP_AUTHTYPE_E )
56 } M2MB_PDP_AUTHTYPE_E;
57 
58 typedef enum
59 {
60  M2MB_PDP_UP,
61  M2MB_PDP_DOWN
62 } M2MB_PDP_IND_E;
63 
64 typedef enum
65 {
66  M2MB_PDP_DATAVOL_RESET = 0,
67  M2MB_PDP_DATAVOL_GET_SESSION = 1,
68  M2MB_PDP_DATAVOL_GET_LIFE = 2,
69  ENUM_TO_INT( M2MB_PDP_DATAVOL_ACTION_E )
70 } M2MB_PDP_DATAVOL_ACTION_E;
71 
78 typedef enum
79 {
83  ENUM_TO_INT( M2MB_PDP_STATS_ACTION_E )
85 
92 typedef struct
93 {
94  UINT64 byteTX;
95  UINT64 byteRX;
96  UINT64 pktTX;
97  UINT64 pktRX;
98  UINT32 mtu;
100 
101 typedef void ( *m2mb_pdp_ind_callback )( M2MB_PDP_HANDLE h, M2MB_PDP_IND_E pdp_event, UINT8 cid, void *userdata );
102 
103 
104 /* Global functions =============================================================================*/
105 
106 /*-----------------------------------------------------------------------------------------------*/
147 /*-----------------------------------------------------------------------------------------------*/
148 
149 M2MB_RESULT_E m2mb_pdp_init( M2MB_PDP_HANDLE *h, m2mb_pdp_ind_callback callback, void *userdata );
150 
151 
152 /*-----------------------------------------------------------------------------------------------*/
184 /*-----------------------------------------------------------------------------------------------*/
185 M2MB_RESULT_E m2mb_pdp_deinit( M2MB_PDP_HANDLE h );
186 
187 
188 /*-----------------------------------------------------------------------------------------------*/
236 /*-----------------------------------------------------------------------------------------------*/
237 
238 M2MB_RESULT_E m2mb_pdp_activate( M2MB_PDP_HANDLE h, UINT8 cid, CHAR *APN, CHAR *user, CHAR *password, M2MB_PDP_IP_TYPE_E pdpIPver );
239 
240 /*-----------------------------------------------------------------------------------------------*/
263 /*-----------------------------------------------------------------------------------------------*/
264 M2MB_RESULT_E m2mb_pdp_deactivate( M2MB_PDP_HANDLE h, UINT8 cid );
265 
266 /*-----------------------------------------------------------------------------------------------*/
306 /*-----------------------------------------------------------------------------------------------*/
307 M2MB_RESULT_E m2mb_pdp_get_my_ip( M2MB_PDP_HANDLE h, UINT8 cid, M2MB_PDP_IP_TYPE_E pdpIPver, void *addr );
308 
309 
310 /*-----------------------------------------------------------------------------------------------*/
343 /*-----------------------------------------------------------------------------------------------*/
344 
345 M2MB_RESULT_E m2mb_pdp_get_DNS( M2MB_PDP_HANDLE h, UINT8 cid, M2MB_PDP_IP_TYPE_E pdpIPver, void *pDNS, void *sDNS );
346 
347 
348 /*-----------------------------------------------------------------------------------------------*/
374 /*-----------------------------------------------------------------------------------------------*/
375 M2MB_RESULT_E m2mb_pdp_get_status( M2MB_PDP_HANDLE h, UINT8 cid, UINT8 *p_status );
376 
377 /*-----------------------------------------------------------------------------------------------*/
402 /*-----------------------------------------------------------------------------------------------*/
403 M2MB_RESULT_E m2mb_pdp_APN_set( M2MB_PDP_HANDLE h, UINT8 cid, CHAR *APN );
404 
405 
406 /*-----------------------------------------------------------------------------------------------*/
433 /*-----------------------------------------------------------------------------------------------*/
434 M2MB_RESULT_E m2mb_pdp_APN_get( M2MB_PDP_HANDLE h, UINT8 cid, CHAR *APN, UINT8 len );
435 
436 
437 /*-----------------------------------------------------------------------------------------------*/
459 /*-----------------------------------------------------------------------------------------------*/
460 M2MB_RESULT_E m2mb_pdp_apnclass2cid( M2MB_PDP_HANDLE h, UINT8 apnclass, UINT8 *p_cid );
461 
462 /*-----------------------------------------------------------------------------------------------*/
487 /*-----------------------------------------------------------------------------------------------*/
488 M2MB_RESULT_E m2mb_pdp_type_get( M2MB_PDP_HANDLE h, UINT8 cid, M2MB_PDP_TYPE_E *pdp_type );
489 
490 /*-----------------------------------------------------------------------------------------------*/
515 /*-----------------------------------------------------------------------------------------------*/
516 M2MB_RESULT_E m2mb_pdp_type_set( M2MB_PDP_HANDLE h, UINT8 cid, M2MB_PDP_TYPE_E pdp_type );
517 
518 /*-----------------------------------------------------------------------------------------------*/
548 /*-----------------------------------------------------------------------------------------------*/
549 M2MB_RESULT_E m2mb_pdp_profile_name_get( M2MB_PDP_HANDLE h, UINT8 cid, CHAR *profname, UINT8 len );
550 
551 /*-----------------------------------------------------------------------------------------------*/
579 /*-----------------------------------------------------------------------------------------------*/
580 M2MB_RESULT_E m2mb_pdp_profile_name_set( M2MB_PDP_HANDLE h, UINT8 cid, CHAR *profname );
581 
582 /*-----------------------------------------------------------------------------------------------*/
607 /*-----------------------------------------------------------------------------------------------*/
608 M2MB_RESULT_E m2mb_pdp_authtype_get( M2MB_PDP_HANDLE h, UINT8 cid, M2MB_PDP_AUTHTYPE_E *pdp_authtype );
609 
610 /*-----------------------------------------------------------------------------------------------*/
635 /*-----------------------------------------------------------------------------------------------*/
636 M2MB_RESULT_E m2mb_pdp_authtype_set( M2MB_PDP_HANDLE h, UINT8 cid, M2MB_PDP_AUTHTYPE_E pdp_authtype );
637 
638 /*-----------------------------------------------------------------------------------------------*/
668 /*-----------------------------------------------------------------------------------------------*/
669 M2MB_RESULT_E m2mb_pdp_datavol_get( M2MB_PDP_HANDLE h, UINT8 cid, M2MB_PDP_DATAVOL_ACTION_E datavol_action, UINT32 *tx, UINT32 *rx );
670 
671 /*-----------------------------------------------------------------------------------------------*/
698 /*-----------------------------------------------------------------------------------------------*/
699 M2MB_RESULT_E m2mb_pdp_stats( M2MB_PDP_HANDLE h, UINT8 cid, M2MB_PDP_STATS_ACTION_E stats_action, M2MB_PDP_STATS_T* stats );
700 
701 /*-----------------------------------------------------------------------------------------------*/
724 /*-----------------------------------------------------------------------------------------------*/
725 M2MB_RESULT_E m2mb_pdp_default_cid_get(M2MB_PDP_HANDLE h, UINT8* cid);
726 
727 
732 #endif /* M2M_M2MB_PDP_API_H */
733 
M2MB_PDP_STATS_T::mtu
UINT32 mtu
Definition: m2mb_pdp.h:98
m2mb_pdp_get_status
M2MB_RESULT_E m2mb_pdp_get_status(M2MB_PDP_HANDLE h, UINT8 cid, UINT8 *p_status)
permits to get PDP context(or PDN connection) status
m2mb_pdp_deinit
M2MB_RESULT_E m2mb_pdp_deinit(M2MB_PDP_HANDLE h)
m2mb_pdp_deinit deinitializes PDP service for current client.
m2mb_pdp_authtype_get
M2MB_RESULT_E m2mb_pdp_authtype_get(M2MB_PDP_HANDLE h, UINT8 cid, M2MB_PDP_AUTHTYPE_E *pdp_authtype)
permits to get AUTH Type
m2mb_pdp_get_DNS
M2MB_RESULT_E m2mb_pdp_get_DNS(M2MB_PDP_HANDLE h, UINT8 cid, M2MB_PDP_IP_TYPE_E pdpIPver, void *pDNS, void *sDNS)
permits to get address of the DNS
m2mb_pdp_APN_set
M2MB_RESULT_E m2mb_pdp_APN_set(M2MB_PDP_HANDLE h, UINT8 cid, CHAR *APN)
permits to set APN
m2mb_pdp_APN_get
M2MB_RESULT_E m2mb_pdp_APN_get(M2MB_PDP_HANDLE h, UINT8 cid, CHAR *APN, UINT8 len)
permits to get APN
M2MB_PDP_STATS_GET_LIFE
Definition: m2mb_pdp.h:82
m2mb_pdp_type_set
M2MB_RESULT_E m2mb_pdp_type_set(M2MB_PDP_HANDLE h, UINT8 cid, M2MB_PDP_TYPE_E pdp_type)
permits to set PDP Type
m2mb_pdp_deactivate
M2MB_RESULT_E m2mb_pdp_deactivate(M2MB_PDP_HANDLE h, UINT8 cid)
m2mb_pdp_deactivate deactivates PDP context(or PDN connection)
m2mb_pdp_default_cid_get
M2MB_RESULT_E m2mb_pdp_default_cid_get(M2MB_PDP_HANDLE h, UINT8 *cid)
function used to get the dfefault PDP context number
M2MB_PDP_STATS_T::byteTX
UINT64 byteTX
Definition: m2mb_pdp.h:94
m2mb_pdp_get_my_ip
M2MB_RESULT_E m2mb_pdp_get_my_ip(M2MB_PDP_HANDLE h, UINT8 cid, M2MB_PDP_IP_TYPE_E pdpIPver, void *addr)
m2mb_pdp_get_my_ip permits to get IP address
M2MB_PDP_STATS_T
Definition: m2mb_pdp.h:92
M2MB_PDP_STATS_RESET
Definition: m2mb_pdp.h:80
m2mb_pdp_datavol_get
M2MB_RESULT_E m2mb_pdp_datavol_get(M2MB_PDP_HANDLE h, UINT8 cid, M2MB_PDP_DATAVOL_ACTION_E datavol_action, UINT32 *tx, UINT32 *rx)
allows to get data traffic statistics (in bytes) on a given PDP
m2mb_pdp_authtype_set
M2MB_RESULT_E m2mb_pdp_authtype_set(M2MB_PDP_HANDLE h, UINT8 cid, M2MB_PDP_AUTHTYPE_E pdp_authtype)
permits to set AUTH Type
m2mb_pdp_type_get
M2MB_RESULT_E m2mb_pdp_type_get(M2MB_PDP_HANDLE h, UINT8 cid, M2MB_PDP_TYPE_E *pdp_type)
permits to get PDP Type
M2MB_PDP_STATS_T::pktRX
UINT64 pktRX
Definition: m2mb_pdp.h:97
m2mb_pdp_init
M2MB_RESULT_E m2mb_pdp_init(M2MB_PDP_HANDLE *h, m2mb_pdp_ind_callback callback, void *userdata)
m2mb_pdp_init initializes PDP service for current client.
M2MB_PDP_STATS_T::byteRX
UINT64 byteRX
Definition: m2mb_pdp.h:95
m2mb_pdp_apnclass2cid
M2MB_RESULT_E m2mb_pdp_apnclass2cid(M2MB_PDP_HANDLE h, UINT8 apnclass, UINT8 *p_cid)
permits to get cid related to specific APN class
M2MB_PDP_STATS_GET_SESSION
Definition: m2mb_pdp.h:81
m2mb_pdp_profile_name_get
M2MB_RESULT_E m2mb_pdp_profile_name_get(M2MB_PDP_HANDLE h, UINT8 cid, CHAR *profname, UINT8 len)
permits to get Profile Name
M2MB_PDP_STATS_T::pktTX
UINT64 pktTX
Definition: m2mb_pdp.h:96
m2mb_pdp_profile_name_set
M2MB_RESULT_E m2mb_pdp_profile_name_set(M2MB_PDP_HANDLE h, UINT8 cid, CHAR *profname)
permits to set Profile Name
M2MB_PDP_STATS_ACTION_E
M2MB_PDP_STATS_ACTION_E
Definition: m2mb_pdp.h:78
m2mb_pdp_stats
M2MB_RESULT_E m2mb_pdp_stats(M2MB_PDP_HANDLE h, UINT8 cid, M2MB_PDP_STATS_ACTION_E stats_action, M2MB_PDP_STATS_T *stats)
allows to get bytes and packets statistics (in bytes) on a given PDP
m2mb_pdp_activate
M2MB_RESULT_E m2mb_pdp_activate(M2MB_PDP_HANDLE h, UINT8 cid, CHAR *APN, CHAR *user, CHAR *password, M2MB_PDP_IP_TYPE_E pdpIPver)
m2mb_pdp_activate activates PDP context(or PDN connection)