int main (int argc, char *argv[]) { GfrEntry *currGE; int count; int countRemoved; if (argc != 2) { usage ("%s <string>",argv[0]); } count = 0; countRemoved = 0; gfr_init ("-"); puts (gfr_writeHeader ()); while (currGE = gfr_nextEntry ()) { if (currGE->descriptionTranscript1 == NULL || currGE->descriptionTranscript2 == NULL) { die ("Transcript description is missing"); } if (strCaseStr (currGE->descriptionTranscript1,argv[1]) || strCaseStr (currGE->descriptionTranscript2,argv[1])) { countRemoved++; continue; } puts (gfr_writeGfrEntry (currGE)); count++; } gfr_deInit (); warn ("%s_string: %s",argv[0],argv[1]); warn ("%s_numRemoved: %d",argv[0],countRemoved); warn ("%s_numGfrEntries: %d",argv[0],count); return 0; }
CHAR *Isapi_ArgAlloc(EXTENSION_CONTROL_BLOCK *pECB,CHAR *lpVarName) { // pECB->lpszQueryString CHAR *p,*p2; CHAR szName[180]; UINT is; sprintf(szName,"&%s=",lpVarName); if (!pECB->lpszQueryString) return NULL; is=(UINT) strlen(szName); if (strlen(pECB->lpszQueryString)<is) return NULL; // Se inizia per if (!_memicmp(pECB->lpszQueryString,szName+1,is-1)) { p=pECB->lpszQueryString; p+=(is-1); p2=strstr(p,"&"); if (p2) *p2=0; p=strDecode(p,SE_URL,NULL); if (p2) *p2='&'; return p; } // Cerco all'interno p=strCaseStr(pECB->lpszQueryString,szName); if (!p) return NULL; p+=strlen(szName); p2=strstr(p,"&"); if (p2) *p2=0; p=strDecode(p,SE_URL,NULL); if (p2) *p2='&'; return p; }