summaryrefslogtreecommitdiffstats
path: root/src/simutil.c
diff options
context:
space:
mode:
authorDenis Kenzior <denkenz@gmail.com>2012-11-22 06:47:50 -0600
committerDenis Kenzior <denkenz@gmail.com>2012-11-22 06:50:09 -0600
commitbca0f5cde15c15272560ce2acdf35274e29cba7f (patch)
treefac213f1656fec9645e552eada4d2db25b101fd1 /src/simutil.c
parentb1f0a5e84fde3c336100eabb3776d4664db0f50f (diff)
downloadofono-bca0f5cde15c15272560ce2acdf35274e29cba7f.tar.bz2
simutil: Add file type information to sim_db
Diffstat (limited to 'src/simutil.c')
-rw-r--r--src/simutil.c112
1 files changed, 58 insertions, 54 deletions
diff --git a/src/simutil.c b/src/simutil.c
index 23865a6c..016b5f7c 100644
--- a/src/simutil.c
+++ b/src/simutil.c
@@ -53,6 +53,10 @@ struct opl_operator {
guint8 id;
};
+#define MF 1
+#define DF 2
+#define EF 4
+
#define BINARY 0
#define RECORD 1
#define CYCLIC 3
@@ -66,60 +70,60 @@ struct opl_operator {
#define ROOTMF 0x3F00
static struct sim_ef_info ef_db[] = {
-{ 0x2F05, ROOTMF, BINARY, 0, ALW, PIN },
-{ 0x2F06, ROOTMF, RECORD, 0, ALW, PIN },
-{ 0x2FE2, ROOTMF, BINARY, 10, ALW, NEV },
-{ 0x4F20, 0x5F50, BINARY, 0, PIN, ADM },
-{ 0x6F05, 0x7F20, BINARY, 0, ALW, PIN },
-{ 0x6F06, 0x0000, RECORD, 0, ALW, ADM },
-{ 0x6F07, 0x0000, BINARY, 9, PIN, ADM },
-{ 0x6F14, 0x7F20, BINARY, 0, PIN, ADM },
-{ 0x6F15, 0x7F20, BINARY, 0, PIN, PIN },
-{ 0x6F18, 0x7F20, BINARY, 10, PIN, ADM },
-{ 0x6F2C, 0x7F20, BINARY, 16, PIN, PIN },
-{ 0x6F30, 0x7F20, BINARY, 0, PIN, PIN },
-{ 0x6F32, 0x7F20, BINARY, 0, PIN, ADM },
-{ 0x6F37, 0x7F20, BINARY, 3, PIN, PIN2 },
-{ 0x6F38, 0x7F20, BINARY, 0, PIN, ADM },
-{ 0x6F39, 0x7F20, CYCLIC, 3, PIN, PIN2 },
-{ 0x6F3B, 0x7F10, RECORD, 0, PIN, PIN2 },
-{ 0x6F3E, 0x7F20, BINARY, 0, PIN, ADM },
-{ 0x6F3F, 0x7F20, BINARY, 0, PIN, ADM },
-{ 0x6F40, 0x7F10, RECORD, 0, PIN, PIN },
-{ 0x6F41, 0x7F20, BINARY, 5, PIN, PIN2 },
-{ 0x6F42, 0x7F10, RECORD, 0, PIN, PIN },
-{ 0x6F44, 0x7F10, CYCLIC, 0, PIN, PIN },
-{ 0x6F45, 0x7F20, BINARY, 0, PIN, PIN },
-{ 0x6F46, 0x7F20, BINARY, 17, ALW, ADM },
-{ 0x6F48, 0x7F20, BINARY, 0, PIN, ADM },
-{ 0x6F49, 0x7F10, RECORD, 0, PIN, ADM },
-{ 0x6F4D, 0x7F20, RECORD, 0, PIN, PIN2 },
-{ 0x6F50, 0x7F20, BINARY, 0, PIN, PIN },
-{ 0x6F51, 0x7F20, RECORD, 0, PIN, ADM },
-{ 0x6F53, 0x7F20, BINARY, 14, PIN, PIN },
-{ 0x6F56, 0x0000, BINARY, 0, PIN, PIN2 },
-{ 0x6F60, 0x7F20, BINARY, 0, PIN, PIN },
-{ 0x6F61, 0x7F20, BINARY, 0, PIN, ADM },
-{ 0x6F62, 0x7F20, BINARY, 0, PIN, ADM },
-{ 0x6F73, 0x0000, BINARY, 14, PIN, PIN },
-{ 0x6F7B, 0x7F20, BINARY, 0, PIN, PIN },
-{ 0x6F7E, 0x7F20, BINARY, 11, PIN, PIN },
-{ 0x6FAD, 0x7F20, BINARY, 0, ALW, ADM },
-{ 0x6FAE, 0x7F20, BINARY, 1, ALW, ADM },
-{ 0x6FB7, 0x7F20, BINARY, 0, ALW, ADM },
-{ 0x6FC5, 0x7F20, RECORD, 0, ALW, ADM },
-{ 0x6FC6, 0x7F20, RECORD, 0, ALW, ADM },
-{ 0x6FC7, 0x7F20, RECORD, 0, PIN, PIN },
-{ 0x6FC9, 0x7F20, RECORD, 0, PIN, PIN },
-{ 0x6FCA, 0x7F20, RECORD, 0, PIN, PIN },
-{ 0x6FCB, 0x7F20, RECORD, 16, PIN, PIN },
-{ 0x6FCD, 0x7F20, BINARY, 0, PIN, ADM },
-{ 0x6FD9, 0x0000, BINARY, 0, PIN, ADM },
-{ 0x6FDB, 0x0000, BINARY, 1, PIN, ADM },
-{ 0x6FDC, 0x0000, BINARY, 1, PIN, ADM },
-{ 0x6FDE, 0x0000, BINARY, 0, ALW, ADM },
-{ 0x6FDF, 0x0000, RECORD, 0, ALW, ADM },
-{ 0x6FE3, 0x0000, BINARY, 18, PIN, PIN },
+{ 0x2F05, ROOTMF, EF, BINARY, 0, ALW, PIN },
+{ 0x2F06, ROOTMF, EF, RECORD, 0, ALW, PIN },
+{ 0x2FE2, ROOTMF, EF, BINARY, 10, ALW, NEV },
+{ 0x4F20, 0x5F50, EF, BINARY, 0, PIN, ADM },
+{ 0x6F05, 0x7F20, EF, BINARY, 0, ALW, PIN },
+{ 0x6F06, 0x0000, EF, RECORD, 0, ALW, ADM },
+{ 0x6F07, 0x0000, EF, BINARY, 9, PIN, ADM },
+{ 0x6F14, 0x7F20, EF, BINARY, 0, PIN, ADM },
+{ 0x6F15, 0x7F20, EF, BINARY, 0, PIN, PIN },
+{ 0x6F18, 0x7F20, EF, BINARY, 10, PIN, ADM },
+{ 0x6F2C, 0x7F20, EF, BINARY, 16, PIN, PIN },
+{ 0x6F30, 0x7F20, EF, BINARY, 0, PIN, PIN },
+{ 0x6F32, 0x7F20, EF, BINARY, 0, PIN, ADM },
+{ 0x6F37, 0x7F20, EF, BINARY, 3, PIN, PIN2 },
+{ 0x6F38, 0x7F20, EF, BINARY, 0, PIN, ADM },
+{ 0x6F39, 0x7F20, EF, CYCLIC, 3, PIN, PIN2 },
+{ 0x6F3B, 0x7F10, EF, RECORD, 0, PIN, PIN2 },
+{ 0x6F3E, 0x7F20, EF, BINARY, 0, PIN, ADM },
+{ 0x6F3F, 0x7F20, EF, BINARY, 0, PIN, ADM },
+{ 0x6F40, 0x7F10, EF, RECORD, 0, PIN, PIN },
+{ 0x6F41, 0x7F20, EF, BINARY, 5, PIN, PIN2 },
+{ 0x6F42, 0x7F10, EF, RECORD, 0, PIN, PIN },
+{ 0x6F44, 0x7F10, EF, CYCLIC, 0, PIN, PIN },
+{ 0x6F45, 0x7F20, EF, BINARY, 0, PIN, PIN },
+{ 0x6F46, 0x7F20, EF, BINARY, 17, ALW, ADM },
+{ 0x6F48, 0x7F20, EF, BINARY, 0, PIN, ADM },
+{ 0x6F49, 0x7F10, EF, RECORD, 0, PIN, ADM },
+{ 0x6F4D, 0x7F20, EF, RECORD, 0, PIN, PIN2 },
+{ 0x6F50, 0x7F20, EF, BINARY, 0, PIN, PIN },
+{ 0x6F51, 0x7F20, EF, RECORD, 0, PIN, ADM },
+{ 0x6F53, 0x7F20, EF, BINARY, 14, PIN, PIN },
+{ 0x6F56, 0x0000, EF, BINARY, 0, PIN, PIN2 },
+{ 0x6F60, 0x7F20, EF, BINARY, 0, PIN, PIN },
+{ 0x6F61, 0x7F20, EF, BINARY, 0, PIN, ADM },
+{ 0x6F62, 0x7F20, EF, BINARY, 0, PIN, ADM },
+{ 0x6F73, 0x0000, EF, BINARY, 14, PIN, PIN },
+{ 0x6F7B, 0x7F20, EF, BINARY, 0, PIN, PIN },
+{ 0x6F7E, 0x7F20, EF, BINARY, 11, PIN, PIN },
+{ 0x6FAD, 0x7F20, EF, BINARY, 0, ALW, ADM },
+{ 0x6FAE, 0x7F20, EF, BINARY, 1, ALW, ADM },
+{ 0x6FB7, 0x7F20, EF, BINARY, 0, ALW, ADM },
+{ 0x6FC5, 0x7F20, EF, RECORD, 0, ALW, ADM },
+{ 0x6FC6, 0x7F20, EF, RECORD, 0, ALW, ADM },
+{ 0x6FC7, 0x7F20, EF, RECORD, 0, PIN, PIN },
+{ 0x6FC9, 0x7F20, EF, RECORD, 0, PIN, PIN },
+{ 0x6FCA, 0x7F20, EF, RECORD, 0, PIN, PIN },
+{ 0x6FCB, 0x7F20, EF, RECORD, 16, PIN, PIN },
+{ 0x6FCD, 0x7F20, EF, BINARY, 0, PIN, ADM },
+{ 0x6FD9, 0x0000, EF, BINARY, 0, PIN, ADM },
+{ 0x6FDB, 0x0000, EF, BINARY, 1, PIN, ADM },
+{ 0x6FDC, 0x0000, EF, BINARY, 1, PIN, ADM },
+{ 0x6FDE, 0x0000, EF, BINARY, 0, ALW, ADM },
+{ 0x6FDF, 0x0000, EF, RECORD, 0, ALW, ADM },
+{ 0x6FE3, 0x0000, EF, BINARY, 18, PIN, PIN },
};
void simple_tlv_iter_init(struct simple_tlv_iter *iter,