libqcdm,libwmc: use C99 sized types from stdint.h
This commit is contained in:
+16
-17
@@ -28,22 +28,22 @@
|
||||
/**********************************************************************/
|
||||
|
||||
static int
|
||||
check_command (const char *buf, size_t len, u_int8_t cmd, size_t min_len)
|
||||
check_command (const char *buf, size_t len, uint8_t cmd, size_t min_len)
|
||||
{
|
||||
if (len < 1) {
|
||||
wmc_err (0, "Zero-length response");
|
||||
return -WMC_ERROR_RESPONSE_BAD_LENGTH;
|
||||
}
|
||||
|
||||
if ((u_int8_t) buf[0] != WMC_CMD_MARKER) {
|
||||
if ((uint8_t) buf[0] != WMC_CMD_MARKER) {
|
||||
wmc_err (0, "Missing WMC command marker (expected 0x%02X, got 0x%02X)",
|
||||
WMC_CMD_MARKER, (u_int8_t) buf[0]);
|
||||
WMC_CMD_MARKER, (uint8_t) buf[0]);
|
||||
return -WMC_ERROR_RESPONSE_UNEXPECTED;
|
||||
}
|
||||
|
||||
if ((u_int8_t) buf[1] != cmd) {
|
||||
if ((uint8_t) buf[1] != cmd) {
|
||||
wmc_err (0, "Unexpected WMC command response (expected 0x%02X, got 0x%02X)",
|
||||
(u_int8_t) cmd, (u_int8_t) buf[1]);
|
||||
(uint8_t) cmd, (uint8_t) buf[1]);
|
||||
return -WMC_ERROR_RESPONSE_UNEXPECTED;
|
||||
}
|
||||
|
||||
@@ -245,40 +245,40 @@ wmc_cmd_network_info_new (char *buf, size_t buflen)
|
||||
}
|
||||
|
||||
static wmcbool
|
||||
is_gsm_service (u_int8_t service)
|
||||
is_gsm_service (uint8_t service)
|
||||
{
|
||||
return (service == WMC_SERVICE_GSM || service == WMC_SERVICE_GPRS || service == WMC_SERVICE_EDGE);
|
||||
}
|
||||
|
||||
static wmcbool
|
||||
is_umts_service (u_int8_t service)
|
||||
is_umts_service (uint8_t service)
|
||||
{
|
||||
return (service == WMC_SERVICE_UMTS || service == WMC_SERVICE_HSDPA
|
||||
|| service == WMC_SERVICE_HSUPA || service == WMC_SERVICE_HSPA);
|
||||
}
|
||||
|
||||
static wmcbool
|
||||
is_cdma_service (u_int8_t service)
|
||||
is_cdma_service (uint8_t service)
|
||||
{
|
||||
return (service == WMC_SERVICE_IS95A || service == WMC_SERVICE_IS95B || service == WMC_SERVICE_1XRTT);
|
||||
}
|
||||
|
||||
static wmcbool
|
||||
is_evdo_service (u_int8_t service)
|
||||
is_evdo_service (uint8_t service)
|
||||
{
|
||||
return (service == WMC_SERVICE_EVDO_0 || service == WMC_SERVICE_EVDO_A || service == WMC_SERVICE_EVDO_A_EHRPD);
|
||||
}
|
||||
|
||||
static wmcbool
|
||||
is_lte_service (u_int8_t service)
|
||||
is_lte_service (uint8_t service)
|
||||
{
|
||||
return (service == WMC_SERVICE_LTE);
|
||||
}
|
||||
|
||||
static u_int8_t
|
||||
sanitize_dbm (u_int8_t in_dbm, u_int8_t service)
|
||||
static uint8_t
|
||||
sanitize_dbm (uint8_t in_dbm, uint8_t service)
|
||||
{
|
||||
u_int8_t cutoff;
|
||||
uint8_t cutoff;
|
||||
|
||||
/* 0x6A (-106 dBm) = no signal for GSM/GPRS/EDGE */
|
||||
/* 0x7D (-125 dBm) = no signal for everything else */
|
||||
@@ -297,7 +297,7 @@ wmc_cmd_network_info_result (const char *buf, size_t buflen)
|
||||
WmcCmdNetworkInfo3Rsp *rsp3 = (WmcCmdNetworkInfo3Rsp *) buf;
|
||||
char tmp[65];
|
||||
int err;
|
||||
u_int32_t mccmnc = 0, mcc, mnc;
|
||||
uint32_t mccmnc = 0, mcc, mnc;
|
||||
|
||||
wmc_return_val_if_fail (buf != NULL, NULL);
|
||||
|
||||
@@ -415,7 +415,7 @@ wmc_cmd_get_global_mode_result (const char *buf, size_t buflen)
|
||||
/**********************************************************************/
|
||||
|
||||
static wmcbool
|
||||
validate_mode (u_int8_t mode)
|
||||
validate_mode (uint8_t mode)
|
||||
{
|
||||
switch (mode) {
|
||||
case WMC_NETWORK_MODE_AUTO_CDMA:
|
||||
@@ -434,7 +434,7 @@ validate_mode (u_int8_t mode)
|
||||
}
|
||||
|
||||
size_t
|
||||
wmc_cmd_set_global_mode_new (char *buf, size_t buflen, u_int8_t mode)
|
||||
wmc_cmd_set_global_mode_new (char *buf, size_t buflen, uint8_t mode)
|
||||
{
|
||||
WmcCmdSetGlobalMode *cmd = (WmcCmdSetGlobalMode *) buf;
|
||||
|
||||
@@ -464,4 +464,3 @@ wmc_cmd_set_global_mode_result (const char *buf, size_t buflen)
|
||||
}
|
||||
|
||||
/**********************************************************************/
|
||||
|
||||
|
||||
@@ -107,7 +107,7 @@ WmcResult * wmc_cmd_get_global_mode_result (const char *buf, size_t len);
|
||||
|
||||
/**********************************************************************/
|
||||
|
||||
size_t wmc_cmd_set_global_mode_new (char *buf, size_t buflen, u_int8_t mode);
|
||||
size_t wmc_cmd_set_global_mode_new (char *buf, size_t buflen, uint8_t mode);
|
||||
|
||||
WmcResult * wmc_cmd_set_global_mode_result (const char *buf, size_t len);
|
||||
|
||||
|
||||
+208
-208
@@ -18,7 +18,7 @@
|
||||
#ifndef LIBWMC_PROTOCOL_H
|
||||
#define LIBWMC_PROTOCOL_H
|
||||
|
||||
#define WMC_CMD_MARKER ((u_int8_t) 0xC8)
|
||||
#define WMC_CMD_MARKER ((uint8_t) 0xC8)
|
||||
|
||||
enum {
|
||||
WMC_CMD_GET_GLOBAL_MODE = 0x03,
|
||||
@@ -51,108 +51,108 @@ enum {
|
||||
|
||||
/* Generic WMC command header */
|
||||
struct WmcCmdHeader {
|
||||
u_int8_t marker; /* Always 0xC8 */
|
||||
u_int8_t cmd;
|
||||
uint8_t marker; /* Always 0xC8 */
|
||||
uint8_t cmd;
|
||||
} __attribute__ ((packed));
|
||||
typedef struct WmcCmdHeader WmcCmdHeader;
|
||||
|
||||
/* Used on newer devices like the UML190 and later */
|
||||
struct WmcCmdInit2 {
|
||||
WmcCmdHeader hdr;
|
||||
u_int16_t year;
|
||||
u_int8_t month;
|
||||
u_int16_t day; /* big endian */
|
||||
u_int16_t hours; /* big endian */
|
||||
u_int16_t minutes; /* big endian */
|
||||
u_int16_t seconds; /* big endian */
|
||||
u_int8_t _unknown1[3];
|
||||
uint16_t year;
|
||||
uint8_t month;
|
||||
uint16_t day; /* big endian */
|
||||
uint16_t hours; /* big endian */
|
||||
uint16_t minutes; /* big endian */
|
||||
uint16_t seconds; /* big endian */
|
||||
uint8_t _unknown1[3];
|
||||
} __attribute__ ((packed));
|
||||
typedef struct WmcCmdInit2 WmcCmdInit2;
|
||||
|
||||
struct WmcCmdInit2Rsp {
|
||||
WmcCmdHeader hdr;
|
||||
u_int8_t _unknown1[4];
|
||||
uint8_t _unknown1[4];
|
||||
} __attribute__ ((packed));
|
||||
typedef struct WmcCmdInit2Rsp WmcCmdInit2Rsp;
|
||||
|
||||
struct WmcCmdDeviceInfoRsp {
|
||||
WmcCmdHeader hdr;
|
||||
u_int8_t _unknown1[27];
|
||||
uint8_t _unknown1[27];
|
||||
char manf[64];
|
||||
char model[64];
|
||||
char fwrev[64];
|
||||
char hwrev[64];
|
||||
u_int8_t _unknown2[64];
|
||||
u_int8_t _unknown3[64];
|
||||
uint8_t _unknown2[64];
|
||||
uint8_t _unknown3[64];
|
||||
char min[10]; /* CDMA2000/IS-95 MIN */
|
||||
u_int8_t _unknown4[12];
|
||||
u_int16_t home_sid;
|
||||
u_int8_t _unknown5[2];
|
||||
u_int16_t prlver;
|
||||
u_int8_t _unknown6[2];
|
||||
u_int16_t eriver;
|
||||
u_int8_t _unknown7[4];
|
||||
uint8_t _unknown4[12];
|
||||
uint16_t home_sid;
|
||||
uint8_t _unknown5[2];
|
||||
uint16_t prlver;
|
||||
uint8_t _unknown6[2];
|
||||
uint16_t eriver;
|
||||
uint8_t _unknown7[4];
|
||||
} __attribute__ ((packed));
|
||||
typedef struct WmcCmdDeviceInfoRsp WmcCmdDeviceInfoRsp;
|
||||
|
||||
struct WmcCmdDeviceInfo2Rsp {
|
||||
WmcCmdHeader hdr;
|
||||
u_int8_t _unknown1[27];
|
||||
uint8_t _unknown1[27];
|
||||
char manf[64];
|
||||
char model[64];
|
||||
char fwrev[64];
|
||||
char hwrev[64];
|
||||
u_int8_t _unknown2[64];
|
||||
u_int8_t _unknown3[64];
|
||||
u_int8_t min[10]; /* CDMA2000/IS-95 MIN */
|
||||
u_int8_t _unknown4[12];
|
||||
u_int16_t home_sid;
|
||||
u_int8_t _unknown5[2];
|
||||
u_int16_t prlver;
|
||||
u_int8_t _unknown6[2];
|
||||
u_int16_t eriver;
|
||||
u_int8_t _unknown7[4];
|
||||
u_int8_t _unknown8[64];
|
||||
u_int8_t meid[14];
|
||||
u_int8_t _unknown10[6]; /* always zero */
|
||||
u_int8_t imei[16];
|
||||
u_int8_t _unknown11[6]; /* always zero */
|
||||
u_int8_t _unknown12[16];
|
||||
u_int8_t iccid[20];
|
||||
u_int8_t _unknown13[6];
|
||||
uint8_t _unknown2[64];
|
||||
uint8_t _unknown3[64];
|
||||
uint8_t min[10]; /* CDMA2000/IS-95 MIN */
|
||||
uint8_t _unknown4[12];
|
||||
uint16_t home_sid;
|
||||
uint8_t _unknown5[2];
|
||||
uint16_t prlver;
|
||||
uint8_t _unknown6[2];
|
||||
uint16_t eriver;
|
||||
uint8_t _unknown7[4];
|
||||
uint8_t _unknown8[64];
|
||||
uint8_t meid[14];
|
||||
uint8_t _unknown10[6]; /* always zero */
|
||||
uint8_t imei[16];
|
||||
uint8_t _unknown11[6]; /* always zero */
|
||||
uint8_t _unknown12[16];
|
||||
uint8_t iccid[20];
|
||||
uint8_t _unknown13[6];
|
||||
} __attribute__ ((packed));
|
||||
typedef struct WmcCmdDeviceInfo2Rsp WmcCmdDeviceInfo2Rsp;
|
||||
|
||||
struct WmcCmdDeviceInfo3Rsp {
|
||||
WmcCmdHeader hdr;
|
||||
u_int8_t _unknown1[27];
|
||||
uint8_t _unknown1[27];
|
||||
char manf[64];
|
||||
char model[64];
|
||||
char fwrev[64];
|
||||
char hwrev[64];
|
||||
u_int8_t _unknown2[64];
|
||||
u_int8_t _unknown3[64];
|
||||
u_int8_t min[10]; /* CDMA2000/IS-95 MIN */
|
||||
u_int8_t _unknown4[12];
|
||||
u_int16_t home_sid;
|
||||
u_int8_t _unknown5[2];
|
||||
u_int16_t prlver;
|
||||
u_int8_t _unknown6[2];
|
||||
u_int16_t eri_ver;
|
||||
u_int8_t _unknown7[4];
|
||||
u_int8_t _unknown8[64];
|
||||
u_int8_t meid[14];
|
||||
u_int8_t _unknown10[6]; /* always zero */
|
||||
u_int8_t imei[16];
|
||||
u_int8_t _unknown11[6]; /* always zero */
|
||||
u_int8_t _unknown12[16];
|
||||
u_int8_t iccid[20];
|
||||
u_int8_t _unknown13[6];
|
||||
u_int8_t mcc[16];
|
||||
u_int8_t mnc[16];
|
||||
u_int8_t _unknown14[4];
|
||||
u_int8_t _unknown15[4];
|
||||
u_int8_t _unknown16[4];
|
||||
uint8_t _unknown2[64];
|
||||
uint8_t _unknown3[64];
|
||||
uint8_t min[10]; /* CDMA2000/IS-95 MIN */
|
||||
uint8_t _unknown4[12];
|
||||
uint16_t home_sid;
|
||||
uint8_t _unknown5[2];
|
||||
uint16_t prlver;
|
||||
uint8_t _unknown6[2];
|
||||
uint16_t eri_ver;
|
||||
uint8_t _unknown7[4];
|
||||
uint8_t _unknown8[64];
|
||||
uint8_t meid[14];
|
||||
uint8_t _unknown10[6]; /* always zero */
|
||||
uint8_t imei[16];
|
||||
uint8_t _unknown11[6]; /* always zero */
|
||||
uint8_t _unknown12[16];
|
||||
uint8_t iccid[20];
|
||||
uint8_t _unknown13[6];
|
||||
uint8_t mcc[16];
|
||||
uint8_t mnc[16];
|
||||
uint8_t _unknown14[4];
|
||||
uint8_t _unknown15[4];
|
||||
uint8_t _unknown16[4];
|
||||
} __attribute__ ((packed));
|
||||
typedef struct WmcCmdDeviceInfo3Rsp WmcCmdDeviceInfo3Rsp;
|
||||
|
||||
@@ -180,94 +180,94 @@ enum {
|
||||
/* PC5740 response */
|
||||
struct WmcCmdNetworkInfoRsp {
|
||||
WmcCmdHeader hdr;
|
||||
u_int8_t _unknown1;
|
||||
u_int8_t _unknown2[3]; /* Always zero */
|
||||
u_int8_t service; /* One of WMC_SERVICE_* */
|
||||
u_int8_t _unknown3; /* Either 0x00 or 0x01 */
|
||||
u_int16_t ts_year;
|
||||
u_int8_t ts_month;
|
||||
u_int16_t ts_day; /* BE */
|
||||
u_int16_t ts_hours; /* BE */
|
||||
u_int16_t ts_minutes; /* BE */
|
||||
u_int16_t ts_seconds; /* BE */
|
||||
u_int16_t counter1; /* A timestamp/counter? */
|
||||
u_int16_t _unknown4;
|
||||
u_int8_t _unknown5[3]; /* Always 0xFE 0xFF 0xFF */
|
||||
u_int8_t two_g_dbm; /* 0x7D = no signal */
|
||||
u_int8_t _unknown6[37]; /* Always zero */
|
||||
uint8_t _unknown1;
|
||||
uint8_t _unknown2[3]; /* Always zero */
|
||||
uint8_t service; /* One of WMC_SERVICE_* */
|
||||
uint8_t _unknown3; /* Either 0x00 or 0x01 */
|
||||
uint16_t ts_year;
|
||||
uint8_t ts_month;
|
||||
uint16_t ts_day; /* BE */
|
||||
uint16_t ts_hours; /* BE */
|
||||
uint16_t ts_minutes; /* BE */
|
||||
uint16_t ts_seconds; /* BE */
|
||||
uint16_t counter1; /* A timestamp/counter? */
|
||||
uint16_t _unknown4;
|
||||
uint8_t _unknown5[3]; /* Always 0xFE 0xFF 0xFF */
|
||||
uint8_t two_g_dbm; /* 0x7D = no signal */
|
||||
uint8_t _unknown6[37]; /* Always zero */
|
||||
} __attribute__ ((packed));
|
||||
typedef struct WmcCmdNetworkInfoRsp WmcCmdNetworkInfoRsp;
|
||||
|
||||
/* UML190 response */
|
||||
struct WmcCmdNetworkInfo2Rsp {
|
||||
WmcCmdHeader hdr;
|
||||
u_int8_t _unknown1; /* 0x00 on LTE, 0x07 or 0x1F on CDMA */
|
||||
u_int8_t _unknown2[3]; /* Always zero */
|
||||
u_int8_t service; /* One of WMC_SERVICE_* */
|
||||
u_int8_t _unknown3;
|
||||
u_int16_t ts_year;
|
||||
u_int8_t ts_month;
|
||||
u_int16_t ts_day; /* BE */
|
||||
u_int16_t ts_hours; /* BE */
|
||||
u_int16_t ts_minutes; /* BE */
|
||||
u_int16_t ts_seconds; /* BE */
|
||||
u_int8_t _unknown4; /* always zero */
|
||||
u_int16_t uptime_secs;
|
||||
u_int8_t _unknown5;
|
||||
u_int8_t _unknown6[3]; /* always zero on LTE, 0xFE 0xFF 0xFF on CDMA */
|
||||
u_int8_t two_g_dbm; /* 0x7D = no CDMA signal, 0x6a = no GSM signal */
|
||||
u_int8_t _unknown7[3]; /* Always zero */
|
||||
u_int8_t cdma_opname[16]; /* Zero terminated? */
|
||||
u_int8_t _unknown8[18]; /* Always zero */
|
||||
u_int8_t three_g_dbm; /* 0x7D = no signal */
|
||||
u_int8_t _unknown9[3]; /* Always zero */
|
||||
u_int8_t _unknown10; /* 0x01 on LTE, 0x40 on CDMA */
|
||||
u_int8_t _unknown11[3]; /* Always zero */
|
||||
u_int8_t _unknown12; /* Always 0x01 */
|
||||
u_int8_t tgpp_opname[8]; /* 3GPP operator name (Zero terminated? Sometimes "MCC MNC" too */
|
||||
u_int8_t _unknown13[4]; /* Always zero */
|
||||
u_int32_t _unknown14; /* 43 75 3a 00 on GSM/WCDMA mode, zero on others */
|
||||
u_int32_t _unknown15; /* 49 7d 3a 00 on GSM/WCDMA mode, zero on others */
|
||||
u_int8_t _unknown16[44]; /* Always zero */
|
||||
u_int32_t mcc_mnc; /* GSM/WCDMA only, see MCC/MNC format note */
|
||||
uint8_t _unknown1; /* 0x00 on LTE, 0x07 or 0x1F on CDMA */
|
||||
uint8_t _unknown2[3]; /* Always zero */
|
||||
uint8_t service; /* One of WMC_SERVICE_* */
|
||||
uint8_t _unknown3;
|
||||
uint16_t ts_year;
|
||||
uint8_t ts_month;
|
||||
uint16_t ts_day; /* BE */
|
||||
uint16_t ts_hours; /* BE */
|
||||
uint16_t ts_minutes; /* BE */
|
||||
uint16_t ts_seconds; /* BE */
|
||||
uint8_t _unknown4; /* always zero */
|
||||
uint16_t uptime_secs;
|
||||
uint8_t _unknown5;
|
||||
uint8_t _unknown6[3]; /* always zero on LTE, 0xFE 0xFF 0xFF on CDMA */
|
||||
uint8_t two_g_dbm; /* 0x7D = no CDMA signal, 0x6a = no GSM signal */
|
||||
uint8_t _unknown7[3]; /* Always zero */
|
||||
uint8_t cdma_opname[16]; /* Zero terminated? */
|
||||
uint8_t _unknown8[18]; /* Always zero */
|
||||
uint8_t three_g_dbm; /* 0x7D = no signal */
|
||||
uint8_t _unknown9[3]; /* Always zero */
|
||||
uint8_t _unknown10; /* 0x01 on LTE, 0x40 on CDMA */
|
||||
uint8_t _unknown11[3]; /* Always zero */
|
||||
uint8_t _unknown12; /* Always 0x01 */
|
||||
uint8_t tgpp_opname[8]; /* 3GPP operator name (Zero terminated? Sometimes "MCC MNC" too */
|
||||
uint8_t _unknown13[4]; /* Always zero */
|
||||
uint32_t _unknown14; /* 43 75 3a 00 on GSM/WCDMA mode, zero on others */
|
||||
uint32_t _unknown15; /* 49 7d 3a 00 on GSM/WCDMA mode, zero on others */
|
||||
uint8_t _unknown16[44]; /* Always zero */
|
||||
uint32_t mcc_mnc; /* GSM/WCDMA only, see MCC/MNC format note */
|
||||
} __attribute__ ((packed));
|
||||
typedef struct WmcCmdNetworkInfo2Rsp WmcCmdNetworkInfo2Rsp;
|
||||
|
||||
/* UML290 response */
|
||||
struct WmcCmdNetworkInfo3Rsp {
|
||||
WmcCmdHeader hdr;
|
||||
u_int8_t _unknown1; /* 0x00 on LTE, 0x07 or 0x1F on CDMA */
|
||||
u_int8_t _unknown2[3]; /* Always zero */
|
||||
u_int8_t service; /* One of WMC_SERVICE_* */
|
||||
u_int8_t _unknown3;
|
||||
u_int16_t ts_year;
|
||||
u_int8_t ts_month;
|
||||
u_int16_t ts_day; /* BE */
|
||||
u_int16_t ts_hours; /* BE */
|
||||
u_int16_t ts_minutes; /* BE */
|
||||
u_int16_t ts_seconds; /* BE */
|
||||
u_int8_t _unknown4; /* always zero */
|
||||
u_int16_t uptime_secs;
|
||||
u_int8_t _unknown5;
|
||||
u_int8_t _unknown6[3]; /* always zero on LTE, 0xFE 0xFF 0xFF on CDMA */
|
||||
u_int8_t two_g_dbm; /* 0x7D = no CDMA signal, 0x6a = no GSM signal */
|
||||
u_int8_t _unknown7[3]; /* Always zero */
|
||||
u_int8_t cdma_opname[16]; /* Zero terminated? */
|
||||
u_int8_t _unknown8[18]; /* Always zero */
|
||||
u_int8_t three_g_dbm; /* 0x7D = no signal */
|
||||
u_int8_t _unknown9[3]; /* Always zero */
|
||||
u_int8_t _unknown10; /* 0x01 on LTE, 0x40 on CDMA */
|
||||
u_int8_t _unknown11[3]; /* Always zero */
|
||||
u_int8_t _unknown12; /* Always 0x01 */
|
||||
u_int8_t tgpp_opname[8]; /* Zero terminated? Sometimes "MCC MNC" too */
|
||||
u_int8_t _unknown13[4]; /* Always zero */
|
||||
u_int32_t _unknown14; /* 43 75 3a 00 on GSM/WCDMA mode, zero on others */
|
||||
u_int32_t _unknown15; /* 49 7d 3a 00 on GSM/WCDMA mode, zero on others */
|
||||
u_int8_t _unknown16[44]; /* Always zero */
|
||||
u_int32_t mcc_mnc; /* GSM/WCDMA only, see MCC/MNC format note */
|
||||
u_int8_t lte_dbm; /* 0x00 if not in LTE mode */
|
||||
u_int8_t _unknown17[3]; /* Always zero */
|
||||
u_int8_t _unknown18[4];
|
||||
uint8_t _unknown1; /* 0x00 on LTE, 0x07 or 0x1F on CDMA */
|
||||
uint8_t _unknown2[3]; /* Always zero */
|
||||
uint8_t service; /* One of WMC_SERVICE_* */
|
||||
uint8_t _unknown3;
|
||||
uint16_t ts_year;
|
||||
uint8_t ts_month;
|
||||
uint16_t ts_day; /* BE */
|
||||
uint16_t ts_hours; /* BE */
|
||||
uint16_t ts_minutes; /* BE */
|
||||
uint16_t ts_seconds; /* BE */
|
||||
uint8_t _unknown4; /* always zero */
|
||||
uint16_t uptime_secs;
|
||||
uint8_t _unknown5;
|
||||
uint8_t _unknown6[3]; /* always zero on LTE, 0xFE 0xFF 0xFF on CDMA */
|
||||
uint8_t two_g_dbm; /* 0x7D = no CDMA signal, 0x6a = no GSM signal */
|
||||
uint8_t _unknown7[3]; /* Always zero */
|
||||
uint8_t cdma_opname[16]; /* Zero terminated? */
|
||||
uint8_t _unknown8[18]; /* Always zero */
|
||||
uint8_t three_g_dbm; /* 0x7D = no signal */
|
||||
uint8_t _unknown9[3]; /* Always zero */
|
||||
uint8_t _unknown10; /* 0x01 on LTE, 0x40 on CDMA */
|
||||
uint8_t _unknown11[3]; /* Always zero */
|
||||
uint8_t _unknown12; /* Always 0x01 */
|
||||
uint8_t tgpp_opname[8]; /* Zero terminated? Sometimes "MCC MNC" too */
|
||||
uint8_t _unknown13[4]; /* Always zero */
|
||||
uint32_t _unknown14; /* 43 75 3a 00 on GSM/WCDMA mode, zero on others */
|
||||
uint32_t _unknown15; /* 49 7d 3a 00 on GSM/WCDMA mode, zero on others */
|
||||
uint8_t _unknown16[44]; /* Always zero */
|
||||
uint32_t mcc_mnc; /* GSM/WCDMA only, see MCC/MNC format note */
|
||||
uint8_t lte_dbm; /* 0x00 if not in LTE mode */
|
||||
uint8_t _unknown17[3]; /* Always zero */
|
||||
uint8_t _unknown18[4];
|
||||
} __attribute__ ((packed));
|
||||
typedef struct WmcCmdNetworkInfo3Rsp WmcCmdNetworkInfo3Rsp;
|
||||
|
||||
@@ -291,26 +291,26 @@ enum {
|
||||
/* Used on UML190 */
|
||||
struct WmcCmdConnectionInfoRsp {
|
||||
WmcCmdHeader hdr;
|
||||
u_int32_t rx_bytes;
|
||||
u_int32_t tx_bytes;
|
||||
u_int8_t _unknown1[8];
|
||||
u_int8_t state; /* One of WMC_CONNECTION_STATE_* */
|
||||
u_int8_t _unknown2[3]; /* Always 0xc0 0x0b 0x00 */
|
||||
uint32_t rx_bytes;
|
||||
uint32_t tx_bytes;
|
||||
uint8_t _unknown1[8];
|
||||
uint8_t state; /* One of WMC_CONNECTION_STATE_* */
|
||||
uint8_t _unknown2[3]; /* Always 0xc0 0x0b 0x00 */
|
||||
} __attribute__ ((packed));
|
||||
typedef struct WmcCmdConnectionInfoRsp WmcCmdConnectionInfoRsp;
|
||||
|
||||
/* Used on UML290 */
|
||||
struct WmcCmdConnectionInfo2Rsp {
|
||||
WmcCmdHeader hdr;
|
||||
u_int32_t rx_bytes;
|
||||
u_int32_t tx_bytes;
|
||||
u_int8_t _unknown1[8];
|
||||
u_int8_t state; /* One of WMC_CONNECTION_STATE_* */
|
||||
u_int8_t _unknown2[3]; /* Always 0xc0 0x0b 0x00 */
|
||||
u_int8_t _unknown3[4]; /* Always 0x01 0x00 0x00 0x00 */
|
||||
u_int8_t ip4_address[16]; /* String format, ie "10.156.45.3" */
|
||||
u_int8_t _unknown4[8]; /* Netmask? */
|
||||
u_int8_t ip6_address[40]; /* String format */
|
||||
uint32_t rx_bytes;
|
||||
uint32_t tx_bytes;
|
||||
uint8_t _unknown1[8];
|
||||
uint8_t state; /* One of WMC_CONNECTION_STATE_* */
|
||||
uint8_t _unknown2[3]; /* Always 0xc0 0x0b 0x00 */
|
||||
uint8_t _unknown3[4]; /* Always 0x01 0x00 0x00 0x00 */
|
||||
uint8_t ip4_address[16]; /* String format, ie "10.156.45.3" */
|
||||
uint8_t _unknown4[8]; /* Netmask? */
|
||||
uint8_t ip6_address[40]; /* String format */
|
||||
} __attribute__ ((packed));
|
||||
typedef struct WmcCmdConnection2InfoRsp WmcCmdConnection2InfoRsp;
|
||||
|
||||
@@ -329,16 +329,16 @@ enum {
|
||||
|
||||
struct WmcCmdGetGlobalMode {
|
||||
WmcCmdHeader hdr;
|
||||
u_int8_t _unknown1; /* always 0 */
|
||||
uint8_t _unknown1; /* always 0 */
|
||||
} __attribute__ ((packed));
|
||||
typedef struct WmcCmdGetGlobalMode WmcCmdGetGlobalMode;
|
||||
|
||||
struct WmcCmdGetGlobalModeRsp {
|
||||
WmcCmdHeader hdr;
|
||||
u_int8_t _unknown1; /* always 0x01 */
|
||||
u_int8_t mode; /* one of WMC_GLOBAL_MODE_* */
|
||||
u_int8_t _unknown2; /* always 0x05 */
|
||||
u_int8_t _unknown3; /* always 0x00 */
|
||||
uint8_t _unknown1; /* always 0x01 */
|
||||
uint8_t mode; /* one of WMC_GLOBAL_MODE_* */
|
||||
uint8_t _unknown2; /* always 0x05 */
|
||||
uint8_t _unknown3; /* always 0x00 */
|
||||
} __attribute__ ((packed));
|
||||
typedef struct WmcCmdGetGlobalModeRsp WmcCmdGetGlobalModeRsp;
|
||||
|
||||
@@ -346,17 +346,17 @@ typedef struct WmcCmdGetGlobalModeRsp WmcCmdGetGlobalModeRsp;
|
||||
|
||||
struct WmcCmdSetGlobalMode {
|
||||
WmcCmdHeader hdr;
|
||||
u_int8_t _unknown1; /* always 0x01 */
|
||||
u_int8_t mode; /* one of WMC_GLOBAL_MODE_* */
|
||||
u_int8_t _unknown2; /* always 0x05 */
|
||||
u_int8_t _unknown3; /* always 0x00 */
|
||||
uint8_t _unknown1; /* always 0x01 */
|
||||
uint8_t mode; /* one of WMC_GLOBAL_MODE_* */
|
||||
uint8_t _unknown2; /* always 0x05 */
|
||||
uint8_t _unknown3; /* always 0x00 */
|
||||
} __attribute__ ((packed));
|
||||
typedef struct WmcCmdSetGlobalMode WmcCmdSetGlobalMode;
|
||||
|
||||
struct WmcCmdSetGlobalModeRsp {
|
||||
WmcCmdHeader hdr;
|
||||
u_int8_t _unknown1; /* always 0x01 */
|
||||
u_int32_t _unknown2; /* always zero */
|
||||
uint8_t _unknown1; /* always 0x01 */
|
||||
uint32_t _unknown2; /* always zero */
|
||||
} __attribute__ ((packed));
|
||||
typedef struct WmcCmdSetGlobalModeRsp WmcCmdSetGlobalModeRsp;
|
||||
|
||||
@@ -364,11 +364,11 @@ typedef struct WmcCmdSetGlobalModeRsp WmcCmdSetGlobalModeRsp;
|
||||
|
||||
struct WmcCmdSetOperator {
|
||||
WmcCmdHeader hdr;
|
||||
u_int8_t automatic; /* 0x00 = manual, 0x01 = auto */
|
||||
u_int8_t _unknown1; /* always 0x50 */
|
||||
u_int8_t _unknown2[3]; /* always zero */
|
||||
u_int32_t mcc_mnc; /* MCC/MNC for manual reg (see format note), zero for auto */
|
||||
u_int8_t _unknown3[56]; /* always zero */
|
||||
uint8_t automatic; /* 0x00 = manual, 0x01 = auto */
|
||||
uint8_t _unknown1; /* always 0x50 */
|
||||
uint8_t _unknown2[3]; /* always zero */
|
||||
uint32_t mcc_mnc; /* MCC/MNC for manual reg (see format note), zero for auto */
|
||||
uint8_t _unknown3[56]; /* always zero */
|
||||
} __attribute__ ((packed));
|
||||
typedef struct WmcCmdSetOperator WmcCmdSetOperator;
|
||||
|
||||
@@ -380,8 +380,8 @@ enum {
|
||||
|
||||
struct WmcCmdSetOperatorRsp {
|
||||
WmcCmdHeader hdr;
|
||||
u_int8_t status; /* one of WMC_SET_OPERATOR_STATUS_* */
|
||||
u_int8_t _unknown1[3]; /* always zero */
|
||||
uint8_t status; /* one of WMC_SET_OPERATOR_STATUS_* */
|
||||
uint8_t _unknown1[3]; /* always zero */
|
||||
} __attribute__ ((packed));
|
||||
typedef struct WmcCmdSetOperatorRsp WmcCmdSetOperatorRsp;
|
||||
|
||||
@@ -396,18 +396,18 @@ enum {
|
||||
/* Response for both GET_FIRST_OPERATOR and GET_NEXT_OPERATOR */
|
||||
struct WmcCmdGetOperatorRsp {
|
||||
WmcCmdHeader hdr;
|
||||
u_int8_t _unknown1; /* Usually 0x50, sometimes 0x00 */
|
||||
u_int8_t _unknown2[3]; /* always zero */
|
||||
u_int32_t mcc_mnc; /* see format note */
|
||||
u_int8_t opname[8];
|
||||
u_int8_t _unknown3[56]; /* always zero */
|
||||
u_int8_t stat; /* follows 3GPP TS27.007 +COPS <stat> ? */
|
||||
u_int8_t _unknown4[3]; /* always zero */
|
||||
u_int8_t service; /* one of WMC_OPERATOR_SERVICE_* */
|
||||
u_int8_t _unknown5[3]; /* always zero */
|
||||
u_int8_t _unknown6; /* 0x63 (GET_FIRST_OP) might mean "wait" */
|
||||
u_int8_t _unknown7; /* 0x00 or 0x01 */
|
||||
u_int8_t _unknown8[2]; /* always zero */
|
||||
uint8_t _unknown1; /* Usually 0x50, sometimes 0x00 */
|
||||
uint8_t _unknown2[3]; /* always zero */
|
||||
uint32_t mcc_mnc; /* see format note */
|
||||
uint8_t opname[8];
|
||||
uint8_t _unknown3[56]; /* always zero */
|
||||
uint8_t stat; /* follows 3GPP TS27.007 +COPS <stat> ? */
|
||||
uint8_t _unknown4[3]; /* always zero */
|
||||
uint8_t service; /* one of WMC_OPERATOR_SERVICE_* */
|
||||
uint8_t _unknown5[3]; /* always zero */
|
||||
uint8_t _unknown6; /* 0x63 (GET_FIRST_OP) might mean "wait" */
|
||||
uint8_t _unknown7; /* 0x00 or 0x01 */
|
||||
uint8_t _unknown8[2]; /* always zero */
|
||||
} __attribute__ ((packed));
|
||||
typedef struct WmcCmdGetOperatorRsp WmcCmdGetOperatorRsp;
|
||||
|
||||
@@ -422,38 +422,38 @@ enum {
|
||||
/* Later devices return all zeros for this command */
|
||||
struct WmcCmdFieldTestRsp {
|
||||
WmcCmdHeader hdr;
|
||||
u_int8_t prl_requirements;
|
||||
u_int8_t eri_support;
|
||||
uint8_t prl_requirements;
|
||||
uint8_t eri_support;
|
||||
char nam_name[7];
|
||||
u_int8_t _unknown1; /* always zero */
|
||||
u_int8_t _unknown2[3]; /* always 0x0A 0x0A 0x0A */
|
||||
u_int8_t _unknown3[5]; /* always zero */
|
||||
u_int8_t _unknown4[10]; /* all 0x0F */
|
||||
u_int16_t home_sid;
|
||||
u_int16_t home_nid;
|
||||
uint8_t _unknown1; /* always zero */
|
||||
uint8_t _unknown2[3]; /* always 0x0A 0x0A 0x0A */
|
||||
uint8_t _unknown3[5]; /* always zero */
|
||||
uint8_t _unknown4[10]; /* all 0x0F */
|
||||
uint16_t home_sid;
|
||||
uint16_t home_nid;
|
||||
char min1[7];
|
||||
char min2[3];
|
||||
char mcc[3];
|
||||
char imsi_s[10];
|
||||
char mnc[2];
|
||||
u_int16_t primary_cdma_chan_a;
|
||||
u_int16_t secondary_cdma_chan_a;
|
||||
u_int16_t primary_cdma_chan_b;
|
||||
u_int16_t secondary_cdma_chan_b;
|
||||
u_int8_t accolc;
|
||||
uint16_t primary_cdma_chan_a;
|
||||
uint16_t secondary_cdma_chan_a;
|
||||
uint16_t primary_cdma_chan_b;
|
||||
uint16_t secondary_cdma_chan_b;
|
||||
uint8_t accolc;
|
||||
char sw_version[64];
|
||||
char hw_version[64];
|
||||
u_int16_t prlver;
|
||||
u_int16_t eriver;
|
||||
u_int16_t nid;
|
||||
u_int8_t last_call_end_reason; /* ? */
|
||||
u_int8_t rssi;
|
||||
u_int16_t channel;
|
||||
u_int8_t prev;
|
||||
u_int16_t pn_offset;
|
||||
u_int8_t sys_select_pref;
|
||||
u_int8_t mip_pref;
|
||||
u_int8_t hybrid_pref;
|
||||
uint16_t prlver;
|
||||
uint16_t eriver;
|
||||
uint16_t nid;
|
||||
uint8_t last_call_end_reason; /* ? */
|
||||
uint8_t rssi;
|
||||
uint16_t channel;
|
||||
uint8_t prev;
|
||||
uint16_t pn_offset;
|
||||
uint8_t sys_select_pref;
|
||||
uint8_t mip_pref;
|
||||
uint8_t hybrid_pref;
|
||||
} __attribute__ ((packed));
|
||||
typedef struct WmcCmdFieldTestRsp WmcCmdFieldTestRsp;
|
||||
|
||||
|
||||
@@ -28,11 +28,10 @@ void wmc_result_add_string (WmcResult *result,
|
||||
|
||||
void wmc_result_add_u8 (WmcResult *result,
|
||||
const char *key,
|
||||
u_int8_t num);
|
||||
uint8_t num);
|
||||
|
||||
void wmc_result_add_u32 (WmcResult *result,
|
||||
const char *key,
|
||||
u_int32_t num);
|
||||
uint32_t num);
|
||||
|
||||
#endif /* LIBWMC_RESULT_PRIVATE_H */
|
||||
|
||||
|
||||
+9
-10
@@ -38,8 +38,8 @@ struct Val {
|
||||
ValType type;
|
||||
union {
|
||||
char *s;
|
||||
u_int8_t u8;
|
||||
u_int32_t u32;
|
||||
uint8_t u8;
|
||||
uint32_t u32;
|
||||
} u;
|
||||
Val *next;
|
||||
};
|
||||
@@ -76,7 +76,7 @@ val_new_string (const char *key, const char *value)
|
||||
}
|
||||
|
||||
static Val *
|
||||
val_new_u8 (const char *key, u_int8_t u)
|
||||
val_new_u8 (const char *key, uint8_t u)
|
||||
{
|
||||
Val *v;
|
||||
|
||||
@@ -94,7 +94,7 @@ val_new_u8 (const char *key, u_int8_t u)
|
||||
}
|
||||
|
||||
static Val *
|
||||
val_new_u32 (const char *key, u_int32_t u)
|
||||
val_new_u32 (const char *key, uint32_t u)
|
||||
{
|
||||
Val *v;
|
||||
|
||||
@@ -114,7 +114,7 @@ val_new_u32 (const char *key, u_int32_t u)
|
||||
/*********************************************************/
|
||||
|
||||
struct WmcResult {
|
||||
u_int32_t refcount;
|
||||
uint32_t refcount;
|
||||
Val *first;
|
||||
};
|
||||
|
||||
@@ -225,7 +225,7 @@ wmc_result_get_string (WmcResult *r,
|
||||
void
|
||||
wmc_result_add_u8 (WmcResult *r,
|
||||
const char *key,
|
||||
u_int8_t num)
|
||||
uint8_t num)
|
||||
{
|
||||
Val *v;
|
||||
|
||||
@@ -242,7 +242,7 @@ wmc_result_add_u8 (WmcResult *r,
|
||||
int
|
||||
wmc_result_get_u8 (WmcResult *r,
|
||||
const char *key,
|
||||
u_int8_t *out_val)
|
||||
uint8_t *out_val)
|
||||
{
|
||||
Val *v;
|
||||
|
||||
@@ -262,7 +262,7 @@ wmc_result_get_u8 (WmcResult *r,
|
||||
void
|
||||
wmc_result_add_u32 (WmcResult *r,
|
||||
const char *key,
|
||||
u_int32_t num)
|
||||
uint32_t num)
|
||||
{
|
||||
Val *v;
|
||||
|
||||
@@ -279,7 +279,7 @@ wmc_result_add_u32 (WmcResult *r,
|
||||
int
|
||||
wmc_result_get_u32 (WmcResult *r,
|
||||
const char *key,
|
||||
u_int32_t *out_val)
|
||||
uint32_t *out_val)
|
||||
{
|
||||
Val *v;
|
||||
|
||||
@@ -295,4 +295,3 @@ wmc_result_get_u32 (WmcResult *r,
|
||||
*out_val = v->u.u32;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
+3
-4
@@ -18,7 +18,7 @@
|
||||
#ifndef LIBWMC_RESULT_H
|
||||
#define LIBWMC_RESULT_H
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <stdint.h>
|
||||
|
||||
typedef struct WmcResult WmcResult;
|
||||
|
||||
@@ -28,15 +28,14 @@ int wmc_result_get_string (WmcResult *r,
|
||||
|
||||
int wmc_result_get_u8 (WmcResult *r,
|
||||
const char *key,
|
||||
u_int8_t *out_val);
|
||||
uint8_t *out_val);
|
||||
|
||||
int wmc_result_get_u32 (WmcResult *r,
|
||||
const char *key,
|
||||
u_int32_t *out_val);
|
||||
uint32_t *out_val);
|
||||
|
||||
WmcResult *wmc_result_ref (WmcResult *r);
|
||||
|
||||
void wmc_result_unref (WmcResult *r);
|
||||
|
||||
#endif /* LIBWMC_RESULT_H */
|
||||
|
||||
|
||||
+10
-11
@@ -33,7 +33,7 @@
|
||||
*/
|
||||
|
||||
/* Table of CRCs for each possible byte, with a generator polynomial of 0x8408 */
|
||||
static const u_int16_t crc_table[256] = {
|
||||
static const uint16_t crc_table[256] = {
|
||||
0x0000, 0x1189, 0x2312, 0x329b, 0x4624, 0x57ad, 0x6536, 0x74bf,
|
||||
0x8c48, 0x9dc1, 0xaf5a, 0xbed3, 0xca6c, 0xdbe5, 0xe97e, 0xf8f7,
|
||||
0x1081, 0x0108, 0x3393, 0x221a, 0x56a5, 0x472c, 0x75b7, 0x643e,
|
||||
@@ -69,10 +69,10 @@ static const u_int16_t crc_table[256] = {
|
||||
};
|
||||
|
||||
/* Calculate the CRC for a buffer using a seed of 0xffff */
|
||||
u_int16_t
|
||||
wmc_crc16 (const char *buffer, size_t len, u_int16_t seed)
|
||||
uint16_t
|
||||
wmc_crc16 (const char *buffer, size_t len, uint16_t seed)
|
||||
{
|
||||
u_int16_t crc = seed ? seed : 0xFFFF;
|
||||
uint16_t crc = seed ? seed : 0xFFFF;
|
||||
|
||||
while (len--)
|
||||
crc = crc_table[(crc ^ *buffer++) & 0xff] ^ (crc >> 8);
|
||||
@@ -103,7 +103,7 @@ hdlc_escape (const char *inbuf,
|
||||
|
||||
/* Since escaping potentially doubles the # of bytes, short-circuit the
|
||||
* length check if destination buffer is clearly large enough. Note the
|
||||
*
|
||||
*
|
||||
*/
|
||||
if (outbuf_len <= inbuf_len << 1) {
|
||||
size_t outbuf_required = inbuf_len + 1; /* +1 for the trailing control char */
|
||||
@@ -129,7 +129,7 @@ hdlc_escape (const char *inbuf,
|
||||
src = inbuf;
|
||||
i = inbuf_len;
|
||||
while (i--) {
|
||||
u_int8_t byte = (u_int8_t) *src++;
|
||||
uint8_t byte = (uint8_t) *src++;
|
||||
|
||||
if ( byte == DIAG_CONTROL_CHAR
|
||||
|| byte == DIAG_ESC_CHAR
|
||||
@@ -194,13 +194,13 @@ size_t
|
||||
hdlc_encapsulate_buffer (char *inbuf,
|
||||
size_t cmd_len,
|
||||
size_t inbuf_len,
|
||||
u_int16_t crc_seed,
|
||||
uint16_t crc_seed,
|
||||
wmcbool add_trailer,
|
||||
wmcbool escape_all_ctrl,
|
||||
char *outbuf,
|
||||
size_t outbuf_len)
|
||||
{
|
||||
u_int16_t crc;
|
||||
uint16_t crc;
|
||||
size_t escaped_len;
|
||||
|
||||
wmc_return_val_if_fail (inbuf != NULL, 0);
|
||||
@@ -338,7 +338,7 @@ wmcbool
|
||||
hdlc_decapsulate_buffer (const char *inbuf,
|
||||
size_t inbuf_len,
|
||||
wmcbool check_known_crc,
|
||||
u_int16_t known_crc,
|
||||
uint16_t known_crc,
|
||||
char *outbuf,
|
||||
size_t outbuf_len,
|
||||
size_t *out_decap_len,
|
||||
@@ -347,7 +347,7 @@ hdlc_decapsulate_buffer (const char *inbuf,
|
||||
{
|
||||
wmcbool escaping = FALSE;
|
||||
size_t i, pkt_len = 0, unesc_len;
|
||||
u_int16_t crc, pkt_crc;
|
||||
uint16_t crc, pkt_crc;
|
||||
|
||||
wmc_return_val_if_fail (inbuf != NULL, FALSE);
|
||||
wmc_return_val_if_fail (outbuf != NULL, FALSE);
|
||||
@@ -457,4 +457,3 @@ wmc_decapsulate (const char *inbuf,
|
||||
outbuf, outbuf_len,
|
||||
out_decap_len, out_used, out_need_more);
|
||||
}
|
||||
|
||||
|
||||
+7
-8
@@ -18,14 +18,14 @@
|
||||
#ifndef LIBWMC_UTILS_H
|
||||
#define LIBWMC_UTILS_H
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <stdint.h>
|
||||
|
||||
typedef u_int8_t wmcbool;
|
||||
typedef uint8_t wmcbool;
|
||||
#ifndef TRUE
|
||||
#define TRUE ((u_int8_t) 1)
|
||||
#define TRUE ((uint8_t) 1)
|
||||
#endif
|
||||
#ifndef FALSE
|
||||
#define FALSE ((u_int8_t) 0)
|
||||
#define FALSE ((uint8_t) 0)
|
||||
#endif
|
||||
|
||||
#define DIAG_CONTROL_CHAR 0x7E
|
||||
@@ -33,7 +33,7 @@ typedef u_int8_t wmcbool;
|
||||
|
||||
/* Utility and testcase functions */
|
||||
|
||||
u_int16_t wmc_crc16 (const char *buffer, size_t len, u_int16_t seed);
|
||||
uint16_t wmc_crc16 (const char *buffer, size_t len, uint16_t seed);
|
||||
|
||||
size_t hdlc_escape (const char *inbuf,
|
||||
size_t inbuf_len,
|
||||
@@ -50,7 +50,7 @@ size_t hdlc_unescape (const char *inbuf,
|
||||
size_t hdlc_encapsulate_buffer (char *inbuf,
|
||||
size_t cmd_len,
|
||||
size_t inbuf_len,
|
||||
u_int16_t crc_seed,
|
||||
uint16_t crc_seed,
|
||||
wmcbool add_trailer,
|
||||
wmcbool escape_all_ctrl,
|
||||
char *outbuf,
|
||||
@@ -59,7 +59,7 @@ size_t hdlc_encapsulate_buffer (char *inbuf,
|
||||
wmcbool hdlc_decapsulate_buffer (const char *inbuf,
|
||||
size_t inbuf_len,
|
||||
wmcbool check_known_crc,
|
||||
u_int16_t known_crc,
|
||||
uint16_t known_crc,
|
||||
char *outbuf,
|
||||
size_t outbuf_len,
|
||||
size_t *out_decap_len,
|
||||
@@ -85,4 +85,3 @@ wmcbool wmc_decapsulate (const char *inbuf,
|
||||
wmcbool uml290);
|
||||
|
||||
#endif /* LIBWMC_UTILS_H */
|
||||
|
||||
|
||||
Reference in New Issue
Block a user