extern "C" {
#endif
-#define RIL_VERSION 3
+#define RIL_VERSION 4
#define CDMA_ALPHA_INFO_BUFFER_LENGTH 64
#define CDMA_NUMBER_INFO_BUFFER_LENGTH 81
typedef struct {
int cid; /* Context ID */
int active; /* 0=inactive, 1=active/physical link down, 2=active/physical link up */
- char * type; /* X.25, IP, IPV6, etc. */
+ char * type; /* One of the PDP_type values in TS 27.007 section 10.1.1.
+ For example, "IP", "IPV6", "IPV4V6", or "PPP". */
char * apn;
- char * address;
+ char * address; /* The IPv4 or IPv6 address assigned to the call, e.g., "192.0.1.3"
+ or "2001:db8::1". */
} RIL_Data_Call_Response;
typedef struct {
*
* Hang up a specific line (like AT+CHLD=1x)
*
+ * After this HANGUP request returns, RIL should show the connection is NOT
+ * active anymore in next RIL_REQUEST_GET_CURRENT_CALLS query.
+ *
* "data" is an int *
* (int *)data)[0] contains Connection index (value of 'x' in CHLD above)
*
*
* Hang up waiting or held (like AT+CHLD=0)
*
+ * After this HANGUP request returns, RIL should show the connection is NOT
+ * active anymore in next RIL_REQUEST_GET_CURRENT_CALLS query.
+ *
* "data" is NULL
* "response" is NULL
*
*
* Hang up waiting or held (like AT+CHLD=1)
*
+ * After this HANGUP request returns, RIL should show the connection is NOT
+ * active anymore in next RIL_REQUEST_GET_CURRENT_CALLS query.
+ *
* "data" is NULL
* "response" is NULL
*
* 1 => PAP may be performed; CHAP is never performed.
* 2 => CHAP may be performed; PAP is never performed.
* 3 => PAP / CHAP may be performed - baseband dependent.
+ * ((const char **)data)[6] is the PDP type to request if the radio technology is GSM/UMTS.
+ * Must be one of the PDP_type values in TS 27.007 section 10.1.1.
+ * For example, "IP", "IPV6", "IPV4V6", or "PPP".
*
* "response" is a char **
- * ((char **)response)[0] indicating PDP CID, which is generated by RIL. This Connection ID is
- * used in GSM/UMTS and CDMA
- * ((char **)response)[1] indicating the network interface name for GSM/UMTS or CDMA
- * ((char **)response)[2] indicating the IP address for this interface for GSM/UMTS
- * and NULL for CDMA
+ * ((char **)response)[0] the Connection ID, CID, which is generated by RIL.
+ * ((char **)response)[1] the network interface name.
+ * ((char **)response)[2] a numeric IPv4 or IPv6 address that has been assigned to the interface.
+ * ((char **)response)[3] a space-separated list of numeric IPv4 or IPv6 DNS addresses.
+ * Ignored on Android platforms before 3.0 and instead two DNS IP addresses
+ * are retrieved from system properties "net.$IN.dns1" and "net.$IN.dns2".
+ * ((char **)response)[4] the numeric IPv4 or IPv6 address of the default gateway.
+ * Ignored on Android platforms before 3.0 and instead an IP address
+ * is retrieved from system property "net.$IN.gw".
*
- * FIXME may need way to configure QoS settings
- *
- * replaces RIL_REQUEST_SETUP_DEFAULT_PDP
+ * Notes:
+ * 1) Numeric addresses must be in the Java InetAddress parsable representation.
+ * 2) $IN in the above comments is the interface name from response[1].
*
* Valid errors:
* SUCCESS
*
* "data" is const char **
* ((char**)data)[0] indicating CID
+ * ((char**)data)[1] indicating Disconnect Reason
+ * 0 => No specific reason specified
+ * 1 => Radio shutdown requested
*
* "response" is NULL
*
* soon as possible
*/
- void* (*RequestTimedCallback) (RIL_TimedCallback callback,
+ void (*RequestTimedCallback) (RIL_TimedCallback callback,
void *param, const struct timeval *relativeTime);
-
-
- /**
- * Remove user-specified callback function
- */
- void (*RemoveTimedCallback) (void *callbackInfo);
};
* @param relativeTime a relative time value at which the callback is invoked
*/
-void* RIL_requestTimedCallback (RIL_TimedCallback callback,
- void *param, const struct timeval *relativeTime);
-
-/**
- * Remove user-specified callback function
- * @param callbackInfo Pointer returned to the caller when timer was scheduled
- */
-
-void RIL_removeTimedCallback(void *callbackInfo);
+void RIL_requestTimedCallback (RIL_TimedCallback callback,
+ void *param, const struct timeval *relativeTime);
#endif /* RIL_SHLIB */