X-Git-Url: https://git.jankratochvil.net/?p=gnokii.git;a=blobdiff_plain;f=gnokii%2Fgnokii.h;fp=gnokii%2Fgnokii.h;h=dbcf972441c5b25928007c7b4972bdd4af7ba559;hp=0000000000000000000000000000000000000000;hb=16d95643e53afa3260db28dd6e9734852b3c804c;hpb=dc939895d3328edbec12fc741baa79030d38e018 diff --git a/gnokii/gnokii.h b/gnokii/gnokii.h new file mode 100644 index 0000000..dbcf972 --- /dev/null +++ b/gnokii/gnokii.h @@ -0,0 +1,278 @@ +/* + + G N O K I I + + A Linux/Unix toolset and driver for Nokia mobile phones. + + Released under the terms of the GNU GPL, see file COPYING for more details. + + Header file for test utility. + +*/ + +/* Prototypes */ + +int monitormode(int argc, char *argv[]); + +#ifdef SECURITY + int entersecuritycode(char *type); + int getsecuritycodestatus(void); + int getsecuritycode(char *type); +#endif + +#ifdef DEBUG + int sniff(int nargc, char *nargv[]); + int decodefile(int nargc, char *nargv[]); +#endif + +int getmemory(int argc, char *argv[]); +int writephonebook(int argc, char *argv[]); +int getspeeddial(char *number); +int setspeeddial(char *argv[]); +int getsms(int argc, char *argv[]); +int renamesmsc(int argc, char *argv[]); +int deletesms(int argc, char *argv[]); +int sendsms(int argc, char *argv[]); +int savesms(int argc, char *argv[]); +int sendlogo(int argc, char *argv[]); +int savelogo(int argc, char *argv[]); +int sendringtone(int argc, char *argv[]); +int saveringtone(int argc, char *argv[]); +int getsmsc(char *mcn); +int setdatetime(int argc, char *argv[]); +int getdatetime(void); +int setalarm(char *argv[]); +int getalarm(void); +int dialvoice(char *number); +int cancelcall(void); +int getcalendarnote(int argc, char *argv[]); +int writecalendarnote(char *argv[]); +int deletecalendarnote(char *index); +int getdisplaystatus(); +int netmonitor(char *_mode); +int identify(void); +int senddtmf(char *String); +int foogle(char *argv[]); +int pmon(void); +int setlogo(int argc, char *argv[]); +int getlogo(int argc, char *argv[]); +int binringtoneconvert(int argc, char *argv[]); +int setringtone(int argc, char *argv[]); +int getringtone(int argc, char *argv[]); +int reset(int argc, char *argv[]); +int getprofile(int argc, char *argv[]); +int setprofile(int argc, char *argv[]); +int allringtones(); +int displayoutput(); +int presskeysequence(char *argv[]); +int restoresettings(char *argv[]); +int backupsettings(char *argv[]); +int playringtone(int argc, char *argv[]); +int ringtoneconvert(int argc, char *argv[]); +int bitmapconvert(int argc, char *argv[]); +int composer(int argc, char *argv[]); +int getphoneprofile(); +int setphoneprofile(int argc, char *argv[]); +int getoperatorname(); +int setoperatorname(int argc, char *argv[]); +int getvoicemailbox(); +int phonetests(); +int simlockinfo(); +int geteeprom (); +int setsimlock (); +int getsmsfolders (); +int resetphonesettings (); +int sendprofile(int argc, char *argv[]); +int showbitmap(int argc, char *argv[]); +int nm_collect(int argc, char *argv[]); +int netmonitordata(int argc, char *argv[]); +int getwapbookmark(int argc, char *argv[]); +int setwapbookmark(int argc, char *argv[]); +int savewapbookmark(int argc, char *argv[]); +int sendwapbookmark(int argc, char *argv[]); +int getwapsettings(int argc, char *argv[]); +int savewapsettings(int argc, char *argv[]); +int sendwapsettings(int argc, char *argv[]); +int savecalendarnote(int argc, char *argv[]); +int sendcalendarnote(int argc, char *argv[]); +int receivesms(int argc, char *argv[]); +int getsmsstatus(int argc, char *argv[]); +int divert(int argc, char *argv[]); +int savephonebookentry(int argc, char *argv[]); +int sendphonebookentry(int argc, char *argv[]); + +typedef enum { + OPT_HELP, + OPT_VERSION, + OPT_MONITOR, + OPT_ENTERSECURITYCODE, + OPT_GETSECURITYCODESTATUS, + OPT_GETSECURITYCODE, + OPT_SETDATETIME, + OPT_GETDATETIME, + OPT_SETALARM, + OPT_GETALARM, + OPT_DIALVOICE, + OPT_CANCELCALL, + OPT_GETCALENDARNOTE, + OPT_WRITECALENDARNOTE, + OPT_DELCALENDARNOTE, + OPT_GETDISPLAYSTATUS, + OPT_GETMEMORY, + OPT_WRITEPHONEBOOK, + OPT_GETSPEEDDIAL, + OPT_SETSPEEDDIAL, + OPT_GETSMS, + OPT_DELETESMS, + OPT_SENDSMS, + OPT_SAVESMS, + OPT_GETSMSC, + OPT_RENAMESMSC, + OPT_PMON, + OPT_NETMONITOR, + OPT_NM_COLLECT, + OPT_NETMONITORDATA, + OPT_IDENTIFY, + OPT_SENDDTMF, + OPT_RESET, + OPT_SETLOGO, + OPT_GETLOGO, + OPT_SENDLOGO, + OPT_SAVELOGO, + OPT_BITMAPCONVERT, + OPT_SENDRINGTONE, + OPT_SAVERINGTONE, + OPT_SETRINGTONE, + OPT_PLAYRINGTONE, + OPT_RINGTONECONVERT, + OPT_COMPOSER, + OPT_ALLRINGTONES, + OPT_GETRINGTONE, + OPT_SNIFFER, + OPT_GETPROFILE, + OPT_SETPROFILE, + OPT_DISPLAYOUTPUT, + OPT_PRESSKEYSEQUENCE, + OPT_RESTORESETTINGS, + OPT_BACKUPSETTINGS, + OPT_GETPHONEPROFILE, + OPT_SETPHONEPROFILE, + OPT_GETOPERATORNAME, + OPT_SETOPERATORNAME, + OPT_GETVOICEMAILBOX, + OPT_PHONETESTS, + OPT_FOOGLE, + OPT_SIMLOCKINFO, + OPT_SETSIMLOCK, + OPT_GETEEPROM=128, + OPT_GETSMSFOLDERS=129, + OPT_RESETPHONESETTINGS=130, + OPT_SENDPROFILE=131, + OPT_SHOWBITMAP=132, + OPT_BINRINGTONECONVERT=133, + OPT_GETWAPBOOKMARK=134, + OPT_SAVEWAPBOOKMARK=135, + OPT_SENDWAPBOOKMARK=136, + OPT_GETWAPSETTINGS=137, + OPT_SAVEWAPSETTINGS=138, + OPT_SAVECALENDARNOTE=139, + OPT_SENDCALENDARNOTE=140, + OPT_SAVEPHONEBOOKENTRY=141, + OPT_SENDPHONEBOOKENTRY=142, + OPT_DECODEFILE=143, + OPT_RECEIVESMS=144, + OPT_GETSMSSTATUS=145, + OPT_DIVERT=146, + OPT_SENDWAPSETTINGS=147, + OPT_SETWAPBOOKMARK=148 +} opt_index; + +struct gnokii_arg_len { + int gal_opt; + int gal_min; + int gal_max; + int gal_flags; +}; + +/* This is used for checking correct argument count. If it is used then if + the user specifies some argument, their count should be equivalent to the + count the programmer expects. */ + +#define GAL_XOR 0x01 + +/* for --presskeysequence */ +struct keys_table_position { + char whatchar; + int whatcode; +}; + +/* for --presskeysequence */ +struct keys_table_position Keys[] = { +{'m',PHONEKEY_MENU}, +{'M',PHONEKEY_MENU}, +{'n',PHONEKEY_NAMES}, +{'N',PHONEKEY_NAMES}, +{'p',PHONEKEY_POWER}, +{'P',PHONEKEY_POWER}, +{'u',PHONEKEY_UP}, +{'U',PHONEKEY_UP}, +{'d',PHONEKEY_DOWN}, +{'D',PHONEKEY_DOWN}, +{'+',PHONEKEY_INCREASEVOLUME}, +{'-',PHONEKEY_DECREASEVOLUME}, +{'1',PHONEKEY_1}, +{'2',PHONEKEY_2}, +{'3',PHONEKEY_3}, +{'4',PHONEKEY_4}, +{'5',PHONEKEY_5}, +{'6',PHONEKEY_6}, +{'7',PHONEKEY_7}, +{'8',PHONEKEY_8}, +{'9',PHONEKEY_9}, +{'*',PHONEKEY_ASTERISK}, +{'0',PHONEKEY_0}, +{'#',PHONEKEY_HASH}, +{'g',PHONEKEY_GREEN}, +{'G',PHONEKEY_GREEN}, +{'r',PHONEKEY_RED}, +{'R',PHONEKEY_RED}, +{' ',0} +}; + +/* for NETMONITOR */ + +//maximal number of screens for --nm_collect +#define MAX_NM_COLLECT 20 + +/* 255 used internally by functions */ +#define NM_MAX_SCREEN 254 + +/* in 6150 v4.13 effectively used was 296 FIELDS + date + time ... */ +#define NM_MAX_FIELDS 512 + +typedef struct { + char *name; + int x; + int y; + int len; + char *mname; + int s_nr; + char type; + char value[NM_MAX_SCREEN_WIDTH]; + void *next; +} PARAM_INFO_MON; + +// info for make ouput, filled in by parse_process() +typedef struct { + int req_header; + unsigned long req_wait; + int req_n; + char req_fs[11]; + char req_ls[11]; + PARAM_INFO_MON *data[NM_MAX_FIELDS]; + char out_f[NM_MAX_FIELDS]; + unsigned char req_screen[NM_MAX_SCREEN]; +} OUT_INFO_MON; + +int semicolon_pipe_substitution( GSM_PhonebookEntry *pentry, unsigned int direction ); +int str_substch( char *str, const char toric, const char sost );