diff options
author | Dan Williams <dcbw@redhat.com> | 2012-01-23 18:06:04 -0600 |
---|---|---|
committer | Dan Williams <dcbw@redhat.com> | 2012-01-23 18:54:28 -0600 |
commit | c386efee9c7057a89a054d79b7abb4aec446a9a7 (patch) | |
tree | 879164bc251abd5528cede87d5ad5be2ee9fc52c /libwmc/src/protocol.h | |
parent | 704489d660776b679434d5426d5f50a061fb536c (diff) |
wmc: decode more of DEVICE_INFO
CDMA MIN, home SID, PRL & ERI version
Diffstat (limited to 'libwmc/src/protocol.h')
-rw-r--r-- | libwmc/src/protocol.h | 73 |
1 files changed, 40 insertions, 33 deletions
diff --git a/libwmc/src/protocol.h b/libwmc/src/protocol.h index 77ec49c7..e341f56f 100644 --- a/libwmc/src/protocol.h +++ b/libwmc/src/protocol.h @@ -77,16 +77,21 @@ typedef struct WmcCmdInit2Rsp WmcCmdInit2Rsp; struct WmcCmdDeviceInfoRsp { WmcCmdHeader hdr; - u_int8_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 _unknown4[22]; - u_int8_t _unknown5[8]; - u_int8_t _unknown6[6]; + u_int8_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]; + 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]; } __attribute__ ((packed)); typedef struct WmcCmdDeviceInfoRsp WmcCmdDeviceInfoRsp; @@ -99,21 +104,22 @@ struct WmcCmdDeviceInfo2Rsp { 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 min[10]; /* CDMA2000/IS-95 MIN */ u_int8_t _unknown4[12]; - u_int16_t home_sid; /* ? */ - u_int8_t _unknown5[6]; - u_int16_t eri_ver; /* ? */ - u_int8_t _unknown6[3]; - u_int8_t _unknown7[64]; - u_int8_t _unknown8; + 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 _unknown9[6]; /* always zero */ - u_int8_t imei[16]; u_int8_t _unknown10[6]; /* always zero */ - u_int8_t _unknown11[16]; + 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 _unknown12[6]; + u_int8_t _unknown13[6]; } __attribute__ ((packed)); typedef struct WmcCmdDeviceInfo2Rsp WmcCmdDeviceInfo2Rsp; @@ -126,26 +132,27 @@ struct WmcCmdDeviceInfo3Rsp { 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 min[10]; /* CDMA2000/IS-95 MIN */ u_int8_t _unknown4[12]; - u_int16_t home_sid; /* ? */ - u_int8_t _unknown5[6]; - u_int16_t eri_ver; /* ? */ - u_int8_t _unknown6[3]; - u_int8_t _unknown7[64]; - u_int8_t _unknown8; + 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 _unknown9[6]; /* always zero */ - u_int8_t imei[16]; u_int8_t _unknown10[6]; /* always zero */ - u_int8_t _unknown11[16]; + 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 _unknown12[6]; + u_int8_t _unknown13[6]; u_int8_t mcc[16]; u_int8_t mnc[16]; - u_int8_t _unknown13[4]; u_int8_t _unknown14[4]; u_int8_t _unknown15[4]; + u_int8_t _unknown16[4]; } __attribute__ ((packed)); typedef struct WmcCmdDeviceInfo3Rsp WmcCmdDeviceInfo3Rsp; |