📄 cx170.c
字号:
if (digbufp[strlen(digbufp)-1]=='#') digbufp[strlen(digbufp)-1] = '\0'; len = strlen(digbufp) ; if (len < 3) return NULL ; for (i=0;i<len;i++) if (digbufp[i] == '*') return NULL ; if ((len == 3) && ((*digbufp >= '2')&&(*digbufp <= '9'))) { gsmbill = 0; return ((void *) 1) ; } if ((digbufp[0] == '1') && (digbufp[1] == '3')) { gsmbill = atoi(digbufp); return ((void *) 1) ; } return NULL ;}void *val_phn2 (digbufp)char *digbufp ;{ int len, i ; if (digbufp[strlen(digbufp)-1]=='#') digbufp[strlen(digbufp)-1] = '\0' ; len = strlen(digbufp) ; for (i=0;i<len;i++) if (digbufp[i] == '*') return NULL ; if (len < 4) return NULL ; else return ((void *) 1) ;}void *val_phn3 (digbufp)char *digbufp ;{ int len, i ; if (digbufp[strlen(digbufp)-1]=='#') digbufp[strlen(digbufp)-1] = '\0' ; len = strlen(digbufp) ; for (i=0;i<len;i++) if (digbufp[i] == '*') return NULL ; if (len < 7) return NULL ; else return ((void *) 1) ;}void *val_secret (digbufp)char *digbufp ;{ int i, len ; if (digbufp[strlen(digbufp)-1] == '#') digbufp[strlen(digbufp)-1] = '\0' ; len = strlen (digbufp) ; if (len < 6) { for (i=5;i>5-len;i--) digbufp[i] = digbufp[i+len-6] ; for (i=0;i<=5-len;i++) digbufp[i] = ' ' ; digbufp[6] = '\0' ; } if (strcmp (secret, digbufp) == 0) return ((void *) 1) ; else return NULL ; return NULL ;}void *val_date (digbufp)char *digbufp ;{ time_t tt ; struct tm *tblock ; char act2[5], strtmp [8] ; typedef struct valdd { int mmon ; int maxday ; }; unsigned int i ; int month, day, tmp ; struct valdd tbmon[] = { {1, 31}, {2, 29}, {3, 31}, {4, 30}, {5, 31}, {6, 30}, {7, 31}, {8, 31}, {9, 30}, {10, 31}, {11, 30}, {12, 31 } }; if (ATDX_TERMMSK(devhandle)) { if (digbufp[strlen(digbufp)-1] == '#') digbufp[strlen(digbufp)-1] = '\0' ; if (strlen (digbufp) == 0) return (NULL) ; for (i=0; i<strlen(digbufp) ; i++) if (digbufp[i] == '*') return (NULL) ; tmp = atoi (digbufp) ; month = tmp / 100 ; day = tmp - month*100 ; if (month == 0) { tt = time (NULL) ; tblock = localtime (&tt) ; month = tblock->tm_mon + 1; sprintf (act2, "%d", month) ; if (month < 10) { act2[1] = act2[0] ; act2[0] = '0' ; } act2[2] = '\0' ; strcpy (strtmp, act2) ; strcat (strtmp, digbufp) ; strcpy (digbufp, strtmp) ; } else if (strlen (digbufp) == 3) { strcpy (strtmp, "0") ; strcat (strtmp, digbufp) ; strcpy (digbufp, strtmp) ; } for (i=0; i<12; i++) { if (month == tbmon[i].mmon) { if (day <= tbmon[i].maxday) return ((void *) 1) ; else return (NULL) ; } } } return (NULL) ;}void *val_month (digbufp)char *digbufp ;{ int i ; if (ATDX_TERMMSK(devhandle)) { if (digbufp[strlen(digbufp)-1] == '#') { digbufp[strlen(digbufp)-1] = '\0' ; } if (strlen (digbufp) == 0) return (NULL) ; for (i=0; i<strlen(digbufp) ; i++) if (digbufp[i] == '*') return (NULL) ; i = atoi (digbufp) ; if (i != 0 && i >=1 && i <=12) return ((void *) 1) ; } return (NULL) ;}void errnwsct(){ unsigned short recvdig;// recvdig = def_rp_tpt[DX_MAXDTMF-1].tp_length; /* Save max. digit setting */// def_rp_tpt[DX_MAXDTMF-1].tp_length = 0; /* Don't terminate on any digit */ playmsg("nwsctmlterr");// def_rp_tpt[DX_MAXDTMF-1].tp_length = recvdig; /* Restore max. digit set */// etime () ; duration(); offhkdti () ; longjmp(idlestate,1);}void bye_acnt(){ unsigned short recvdig;// recvdig = def_rp_tpt[DX_MAXDTMF-1].tp_length; /* Save max. digit setting */// def_rp_tpt[DX_MAXDTMF-1].tp_length = 0; /* Don't terminate on any digit */ playmsg("mlterrhao");// def_rp_tpt[DX_MAXDTMF-1].tp_length = recvdig; /* Restore max. digit set */ duration(); tb_offhkdti () ; longjmp(idlestate,1);}void bye_date(){ unsigned short recvdig;// recvdig = def_rp_tpt[DX_MAXDTMF-1].tp_length; /* Save max. digit setting */// def_rp_tpt[DX_MAXDTMF-1].tp_length = 0; /* Don't terminate on any digit */ playmsg("mltdterr");// def_rp_tpt[DX_MAXDTMF-1].tp_length = recvdig; /* Restore max. digit set */ duration(); tb_offhkdti () ; longjmp(idlestate,1);}void bye_month(){ unsigned short recvdig;// recvdig = def_rp_tpt[DX_MAXDTMF-1].tp_length; /* Save max. digit setting */// def_rp_tpt[DX_MAXDTMF-1].tp_length = 0; /* Don't terminate on any digit */ playmsg("mltmonerr");// def_rp_tpt[DX_MAXDTMF-1].tp_length = recvdig; /* Restore max. digit set */ duration(); tb_offhkdti () ; longjmp(idlestate,1);}void bye_scrt(){ unsigned short recvdig;// recvdig = def_rp_tpt[DX_MAXDTMF-1].tp_length; /* Save max. digit setting */// def_rp_tpt[DX_MAXDTMF-1].tp_length = 0; /* Don't terminate on any digit */ playmsg("mlterrmima");// def_rp_tpt[DX_MAXDTMF-1].tp_length = recvdig; /* Restore max. digit set */ duration(); tb_offhkdti () ; longjmp(idlestate,1);}void bye_bye (){ unsigned short recvdig;// recvdig = def_rp_tpt[DX_MAXDTMF-1].tp_length; /* Save max. digit setting */// def_rp_tpt[DX_MAXDTMF-1].tp_length = 0; /* Don't terminate on any digit */// def_rp_tpt[DX_MAXDTMF-1].tp_length = recvdig; /* Restore max. digit set */// etime () ; duration(); tb_offhkdti () ; longjmp(idlestate,1);}void startt (){ time_t tt ; char month[6], *str ; typedef struct valdd2 { char *chmon ; char *digmon ; }; int i ; struct valdd2 tbmon[] = { {"Jan", "01"}, {"Feb", "02"}, {"Mar", "03"}, {"Apr", "04"}, {"May", "05"}, {"Jun", "06"}, {"Jul", "07"}, {"Aug", "08"}, {"Sep", "09"}, {"Oct", "10"}, {"Nov", "11"}, {"Dec", "12"} }; tt = time (NULL) ; str = ctime (&tt) ; strtime[0] = str[20] ; strtime[1] = str[21] ; strtime[2] = str[22] ; strtime[3] = str[23] ; strtime[4] = '\0' ; month[0] = str[4] ; month[1] = str[5] ; month[2] = str[6] ; month[3] = '\0' ; for (i=0;i<12;i++) { if (strcmp (month, tbmon[i].chmon) == 0) { strcat (strtime, tbmon[i].digmon) ; break ; } } strtime[6] = str[8] ; strtime[7] = str[9] ; strtime[8] = str[11] ; strtime[9] = str[12] ; strtime[10] = str[14] ; strtime[11] = str[15] ; strtime[12] = str[17] ; strtime[13] = str[18] ; strtime[14] = '\0' ; for (i=0;i<14;i++) if (strtime[i] == ' ') strtime[i] = '0' ; return;}void etime (){ time_t tt ; char month[6], *str ; typedef struct valdd2 { char *chmon ; char *digmon ; }; int i ; struct valdd2 tbmon[] = { {"Jan", "01"}, {"Feb", "02"}, {"Mar", "03"}, {"Apr", "04"}, {"May", "05"}, {"Jun", "06"}, {"Jul", "07"}, {"Aug", "08"}, {"Sep", "09"}, {"Oct", "10"}, {"Nov", "11"}, {"Dec", "12" } }; tt = time (NULL) ; str = ctime (&tt) ; endtime[0] = str[20] ; endtime[1] = str[21] ; endtime[2] = str[22] ; endtime[3] = str[23] ; endtime[4] = '\0' ; month[0] = str[4] ; month[1] = str[5] ; month[2] = str[6] ; month[3] = '\0' ; for (i=0;i<12;i++) { if (strcmp (month, tbmon[i].chmon) == 0) { strcat (endtime, tbmon[i].digmon) ; break ; } } endtime[6] = str[8] ; endtime[7] = str[9] ; endtime[8] = str[11] ; endtime[9] = str[12] ; endtime[10] = str[14] ; endtime[11] = str[15] ; endtime[12] = str[17] ; endtime[13] = str[18] ; endtime[14] = '\0' ; for (i=0;i<14;i++) if (endtime[i] == ' ') endtime[i] = '0' ; return;}long binsrh (objstr, fname)char *objstr ;char *fname ;{ union { unsigned char str[5] ; unsigned long tblint ; }pp ; FILE *handle ; int hle ; long nup, nlow, mm, len ; char tmp[8] ; int kk ; if ((handle = fopen (fname, "r")) == NULL) return -1L ; fseek (handle, 0, 2) ; len = ftell (handle) ; fclose (handle) ; hle = open (fname, O_RDONLY) ; nlow = 0L ; nup = len / 10L ; while (1) { mm = (nup + nlow) / 2L ; lseek (hle, mm*10L, 0) ; read (hle, tmp, 6) ; tmp[6] = '\0' ; read (hle, pp.str, 4) ; kk = strcmp (tmp, objstr) ; if (kk == 0) { close (hle) ; return (pp.tblint) ; } else if (kk > 0) nup = mm -1L ; else nlow = mm + 1L ; if (nup < nlow) { close (hle) ; return (-1L) ; } } close (hle) ; return (-1L) ;}int rdsrt (){ int kk ; FILE *hle ; long nup, nlow, mm, len ; char str1[16], tmp[24] ; if ((hle = fopen ("passwd", "rt")) == NULL) {// printf ("Can't open file passwd\n") ; return 0 ; } fseek (hle, 0, 2) ; len = ftell (hle) ; nlow = 0L ; nup = len / 18; while (1) { mm = (nup + nlow) / 2L ; fseek (hle, mm*18, 0) ; fgets (str1, 12, hle) ; if (gsmbill) str1[10] = '\0'; else str1[7] = '\0'; fgets (tmp, 7, hle) ; tmp[6] = '\0' ; kk = strcmp (str1, longphone) ; if (kk == 0) {// printf ("Ok !\n") ; strcpy (secret, tmp) ; break ; } else if (kk > 0) nup = mm -1L ; else nlow = mm + 1L ; if (nup < nlow) { fclose (hle) ;// printf ("not match\n") ; return 0 ; } } fclose (hle) ; return 1 ;}void mxthmon (){ switch (phonenum[0]) { case '9': dgd1(NULL); break; case '1': gsm1(NULL); break; default: abcd1 (NULL) ; break; } return;}void gjqhdy (){ char asdf[8] ; strcpy (asdf, gjh) ; switch (phonenum[0]) { case '9': dgd1(asdf); break; case '1': gsm1(asdf); break; default: abcd1 (asdf) ; break; } return;/* if (phonenum[0] == '9' || phonenum[0] == '1') { dgd1 (asdf) ; return ; } abcd1 (asdf) ;*/}void gnqhdy (){ char asdf[8] ;printf("enter gnqhdy(), gnh=%s\n", gnh); strcpy (asdf, gnh) ; switch (phonenum[0]) { case '9': dgd1(asdf); break; case '1': gsm1(asdf); break; default: abcd1 (asdf) ; break; } return;/* if (phonenum[0] == '9' || phonenum[0] == '1') { dgd1 (asdf) ; return ; } abcd1 (asdf) ;*/}void dfhmdy (){ char asdf[18] ; strcpy (asdf, dfhm) ; switch (phonenum[0]) { case '9': dgd1(asdf); break; case '1': gsm1(asdf); break; default: abcd1 (asdf) ; break; } return;}int valphone (digbufp)char *digbufp ;{ int i, j, len, toltal_2 ; FILE *handle ; long asdf1, asdf2, phonelg ; char tmp[85], str1[12], str2[12], pqr[60] ; phonelg = atol (digbufp) ; if ((handle = fopen ("/jfsrv/xtydj/toltel.h", "r")) == NULL) {// printf ("\nError : can not open 'toltel.h'\n\n") ; writefifo(2, "Error: can not open toltel.h"); return -1 ; } fgets(tmp, 80, handle); fgets(tmp, 80, handle) ; fgets(tmp, 80, handle) ; len = strlen(tmp); for (i = 0; i < len-17; i++) pqr[i] = tmp[i+17]; pqr[i+17] = '\0'; toltal_2 = atoi (pqr) ; for (i=0;i<toltal_2;i++) { fgets (tmp, 80, handle) ; fgets (tmp, 80, handle) ; len = strlen (tmp) ; for (j=0;j<10 && j<len;j++) str1[j] = tmp[j+14] ; str1[9] = '\0' ; asdf1 = atol (str1) ; fgets (tmp, 80, handle) ; len = strlen (tmp) ; for (j=0;j<10 && j<len;j++) str2[j] = tmp[j+14] ; str2[9] = '\0' ; asdf2 = atol (str2) ; if ((phonelg <= (asdf1+asdf2)) && (phonelg >= asdf1)) { fclose (handle) ; return 0 ; } fgets (tmp, 80, handle) ; } fclose (handle) ; return -1 ;}void dqmx1122 (){ switch(phonenum[0]) { case '9': dgd4(NULL);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -