5 A Linux/Unix toolset and driver for Nokia mobile phones.
7 Released under the terms of the GNU GPL, see file COPYING for more details.
9 Header file for test utility.
17 int monitormode(int argc, char *argv[]);
20 int entersecuritycode(char *type);
21 int getsecuritycodestatus(void);
22 int getsecuritycode(char *type);
26 int sniff(int nargc, char *nargv[]);
27 int decodefile(int nargc, char *nargv[]);
32 static int getmemory(int argc, char *argv[]);
33 static int writephonebook(int argc, char *argv[]);
34 static int getspeeddial(char *number);
35 static int setspeeddial(char *argv[]);
37 int getsms(int argc, char *argv[]);
38 int renamesmsc(int argc, char *argv[]);
39 int deletesms(int argc, char *argv[]);
40 int sendsms(int argc, char *argv[]);
41 int savesms(int argc, char *argv[]);
42 int sendlogo(int argc, char *argv[]);
43 int savelogo(int argc, char *argv[]);
44 int sendringtone(int argc, char *argv[]);
45 int saveringtone(int argc, char *argv[]);
46 int getsmsc(char *mcn);
47 int setdatetime(int argc, char *argv[]);
48 int getdatetime(void);
49 int setalarm(char *argv[]);
51 int dialvoice(char *number);
53 static int cancelcall(void);
55 int getcalendarnote(int argc, char *argv[]);
56 int writecalendarnote(char *argv[]);
57 int deletecalendarnote(char *index);
58 int getdisplaystatus();
59 int netmonitor(char *_mode);
61 static int identify(void);
63 int senddtmf(char *String);
64 int foogle(char *argv[]);
66 int setlogo(int argc, char *argv[]);
67 int getlogo(int argc, char *argv[]);
68 int binringtoneconvert(int argc, char *argv[]);
69 int setringtone(int argc, char *argv[]);
70 int getringtone(int argc, char *argv[]);
72 static int reset(int argc, char *argv[]);
74 int getprofile(int argc, char *argv[]);
75 int setprofile(int argc, char *argv[]);
78 int presskeysequence(char *argv[]);
79 int restoresettings(char *argv[]);
80 int backupsettings(char *argv[]);
81 int playringtone(int argc, char *argv[]);
82 int ringtoneconvert(int argc, char *argv[]);
83 int bitmapconvert(int argc, char *argv[]);
84 int composer(int argc, char *argv[]);
85 int getphoneprofile();
86 int setphoneprofile(int argc, char *argv[]);
87 int getoperatorname();
88 int setoperatorname(int argc, char *argv[]);
89 int getvoicemailbox();
95 int resetphonesettings ();
96 int sendprofile(int argc, char *argv[]);
97 int showbitmap(int argc, char *argv[]);
98 int nm_collect(int argc, char *argv[]);
99 int netmonitordata(int argc, char *argv[]);
100 int getwapbookmark(int argc, char *argv[]);
101 int setwapbookmark(int argc, char *argv[]);
102 int savewapbookmark(int argc, char *argv[]);
103 int sendwapbookmark(int argc, char *argv[]);
104 int getwapsettings(int argc, char *argv[]);
105 int savewapsettings(int argc, char *argv[]);
106 int sendwapsettings(int argc, char *argv[]);
107 int savecalendarnote(int argc, char *argv[]);
108 int sendcalendarnote(int argc, char *argv[]);
109 int receivesms(int argc, char *argv[]);
110 int getsmsstatus(int argc, char *argv[]);
111 int divert(int argc, char *argv[]);
113 static int savephonebookentry(int argc, char *argv[]);
115 int sendphonebookentry(int argc, char *argv[]);
122 OPT_ENTERSECURITYCODE,
123 OPT_GETSECURITYCODESTATUS,
132 OPT_WRITECALENDARNOTE,
134 OPT_GETDISPLAYSTATUS,
169 OPT_PRESSKEYSEQUENCE,
182 OPT_GETSMSFOLDERS=129,
183 OPT_RESETPHONESETTINGS=130,
186 OPT_BINRINGTONECONVERT=133,
187 OPT_GETWAPBOOKMARK=134,
188 OPT_SAVEWAPBOOKMARK=135,
189 OPT_SENDWAPBOOKMARK=136,
190 OPT_GETWAPSETTINGS=137,
191 OPT_SAVEWAPSETTINGS=138,
192 OPT_SAVECALENDARNOTE=139,
193 OPT_SENDCALENDARNOTE=140,
194 OPT_SAVEPHONEBOOKENTRY=141,
195 OPT_SENDPHONEBOOKENTRY=142,
198 OPT_GETSMSSTATUS=145,
200 OPT_SENDWAPSETTINGS=147,
201 OPT_SETWAPBOOKMARK=148,
205 struct gnokii_arg_len {
212 /* This is used for checking correct argument count. If it is used then if
213 the user specifies some argument, their count should be equivalent to the
214 count the programmer expects. */
218 /* for --presskeysequence */
219 struct keys_table_position {
226 /* for --presskeysequence */
227 static struct keys_table_position Keys[] = {
230 {'n',PHONEKEY_NAMES},
231 {'N',PHONEKEY_NAMES},
232 {'p',PHONEKEY_POWER},
233 {'P',PHONEKEY_POWER},
238 {'+',PHONEKEY_INCREASEVOLUME},
239 {'-',PHONEKEY_DECREASEVOLUME},
249 {'*',PHONEKEY_ASTERISK},
252 {'g',PHONEKEY_GREEN},
253 {'G',PHONEKEY_GREEN},
263 //maximal number of screens for --nm_collect
264 #define MAX_NM_COLLECT 20
266 /* 255 used internally by functions */
267 #define NM_MAX_SCREEN 254
269 /* in 6150 v4.13 effectively used was 296 FIELDS + date + time ... */
270 #define NM_MAX_FIELDS 512
280 char value[NM_MAX_SCREEN_WIDTH];
284 // info for make ouput, filled in by parse_process()
287 unsigned long req_wait;
291 PARAM_INFO_MON *data[NM_MAX_FIELDS];
292 char out_f[NM_MAX_FIELDS];
293 unsigned char req_screen[NM_MAX_SCREEN];
296 static int semicolon_pipe_substitution( GSM_PhonebookEntry *pentry, unsigned int direction );
297 static int str_substch( char *str, const char toric, const char sost );