void bmha_init(const char *pattern) { int i; __boundcheck_metadata_store((void *)(&i),(void *)((size_t)(&i)+sizeof(i)*8-1)); int j; __boundcheck_metadata_store((void *)(&j),(void *)((size_t)(&j)+sizeof(j)*8-1)); pat = (uchar *)pattern; __boundcheck_metadata_trans_check((void *)(pat),(void *)(pattern),(void *)((uchar *)pattern)); patlen = strlen(pattern); for (i = 0; i <= UCHAR_MAX; ++i) /* rdg 10/93 */ { skip[i] = patlen; for (j = patlen - 1; j >= 0; --j) { if (lowerc(i) == lowerc(pat[j])) break; } if (j >= 0) skip[i] = patlen - j - 1; if (j == patlen - 1) skip[i] = LARGE; } skip2 = patlen; for (i = 0; i < patlen - 1; ++i) { if ( lowerc(pat[i]) == lowerc(pat[patlen - 1]) ) skip2 = patlen - i - 1; } }
void bmh_init(const char *pattern) { int i; __boundcheck_metadata_store((void *)(&i),(void *)((size_t)(&i)+sizeof(i)*8-1)); int lastpatchar; __boundcheck_metadata_store((void *)(&lastpatchar),(void *)((size_t)(&lastpatchar)+sizeof(lastpatchar)*8-1)); pat = (uchar *)pattern; __boundcheck_metadata_trans_check((void *)(pat),(void *)(pattern),(void *)((uchar *)pattern)); patlen = strlen(pattern); for (i = 0; i <= UCHAR_MAX; ++i) /* rdg 10/93 */ skip[i] = patlen; for (i = 0; i < patlen; ++i) skip[pat[i]] = patlen - i - 1; lastpatchar = pat[__boundcheck_ptr_cast_to_array_reference(35,29,"bmh_init",(void *)(pat),(void *)(pat+patlen - 1),patlen - 1)]; skip[lastpatchar] = LARGE; skip2 = patlen; /* Horspool's fixed second shift */ for (i = 0; i < patlen - 1; ++i) { if (pat[__boundcheck_ptr_cast_to_array_reference(40,25,"bmh_init",(void *)(pat),(void *)(pat+i),i)] == lastpatchar) skip2 = patlen - i - 1; } }
bool conver(int d[],int b[]) { int i; __boundcheck_metadata_store((void *)(&i),(void *)((size_t)(&i)+sizeof(i)*8-1)); int *p; __boundcheck_metadata_store((void *)(&p),(void *)((size_t)(&p)+sizeof(p)*8-1)); int *q; __boundcheck_metadata_store((void *)(&q),(void *)((size_t)(&q)+sizeof(q)*8-1)); p=b; __boundcheck_metadata_trans_check((void *)(p),(void *)(b),(void *)(b)); printf("%d\n",*(int *)(__boundcheck_ptr_reference(8,23,"conver",(void *)(p),(void *)(p+2)))); for(i=0;i<5;i++) (*(int *)(__boundcheck_ptr_reference(10,7,"conver",(void *)(&d[0]),(void *)(&d[i]))))=(*(int *)(__boundcheck_ptr_reference(10,12,"conver",(void *)(&b[0]),(void *)(&b[i])))); return 1; }
int main() { int i=0; __boundcheck_metadata_store((void *)(&i),(void *)((size_t)(&i)+sizeof(i)*8-1)); char *__tmp_string_2="tytui"; __boundcheck_metadata_store((void *)(__tmp_string_2),(void *)(__tmp_string_2+5)); char *__tmp_string_1="rteyy"; __boundcheck_metadata_store((void *)(__tmp_string_1),(void *)(__tmp_string_1+5)); char *__tmp_string_0="qwee"; __boundcheck_metadata_store((void *)(__tmp_string_0),(void *)(__tmp_string_0+4)); char *a[3]={__tmp_string_0,__tmp_string_1,__tmp_string_2};__boundcheck_metadata_store(&a[0],&a[3-1]); int j; __boundcheck_metadata_store((void *)(&j),(void *)((size_t)(&j)+sizeof(j)*8-1)); char *string[10];__boundcheck_metadata_store(&string[0],&string[10-1]); char **p; __boundcheck_metadata_store((void *)(&p),(void *)((size_t)(&p)+sizeof(p)*8-1)); if(i) { for(j=0;j<10;j++) { string[_RV_insert_check(0,10,15,9,"main",j)]=(char *)__boundcheck_malloc(100*sizeof(char)); } __boundcheck_strcpy(string[_RV_insert_check(0,10,17,14,"main",5)],"ASADAD"); p=&string[_RV_insert_check(0,10,18,10,"main",5)]; } else p=a; __boundcheck_metadata_trans_check((void *)(p),(void *)(a),(void *)(a)); printf("%s\n",*(char **)(__boundcheck_ptr_reference(22,19,"main",(void *)(p),(void *)(p)))); printf("%c\n",*(char *)(__boundcheck_ptr_reference(23,20,"main",(void *)(*p),(void *)*p))); printf("a=%p a[0]=%p\n",&a,&a[_RV_insert_check(0,3,24,32,"main",0)]); printf("%p %p\n",&p,&(*(char **)(__boundcheck_ptr_reference(25,27,"main",(void *)(p),(void *)(p))))); return 1; }
read_scan_script (j_compress_ptr cinfo, char * filename) /* Read a scan script from the specified text file. * Each entry in the file defines one scan to be emitted. * Entries are separated by semicolons ';'. * An entry contains one to four component indexes, * optionally followed by a colon ':' and four progressive-JPEG parameters. * The component indexes denote which component(s) are to be transmitted * in the current scan. The first component has index 0. * Sequential JPEG is used if the progressive-JPEG parameters are omitted. * The file is free format text: any whitespace may appear between numbers * and the ':' and ';' punctuation marks. Also, other punctuation (such * as commas or dashes) can be placed between numbers if desired. * Comments preceded by '#' may be included in the file. * Note: we do very little validity checking here; * jcmaster.c will validate the script parameters. */ { FILE * fp; __boundcheck_metadata_store((void *)(&fp),(void *)((size_t)(&fp)+sizeof(fp)*8-1)); int scanno; __boundcheck_metadata_store((void *)(&scanno),(void *)((size_t)(&scanno)+sizeof(scanno)*8-1)); int ncomps; __boundcheck_metadata_store((void *)(&ncomps),(void *)((size_t)(&ncomps)+sizeof(ncomps)*8-1)); int termchar; __boundcheck_metadata_store((void *)(&termchar),(void *)((size_t)(&termchar)+sizeof(termchar)*8-1)); long val; __boundcheck_metadata_store((void *)(&val),(void *)((size_t)(&val)+sizeof(val)*8-1)); jpeg_scan_info * scanptr; __boundcheck_metadata_store((void *)(&scanptr),(void *)((size_t)(&scanptr)+sizeof(scanptr)*8-1)); #define MAX_SCANS 100 /* quite arbitrary limit */ jpeg_scan_info scans[MAX_SCANS];__boundcheck_metadata_store(&scans[0],&scans[100-1]); if ((fp = fopen(filename, "r")) == NULL) { fprintf(stderr, "Can't open scan definition file %s\n", filename); return FALSE; } scanptr = scans; __boundcheck_metadata_trans_check((void *)(scanptr),(void *)(scans),(void *)(scans)); scanno = 0; while (read_scan_integer(fp, &val, &termchar)) { if (scanno >= MAX_SCANS) { fprintf(stderr, "Too many scans defined in file %s\n", filename); fclose(fp); return FALSE; } scanptr->component_index[_RV_insert_check(0,4,195,5,"read_scan_script",0)] = (int) val; ncomps = 1; while (termchar == ' ') { if (ncomps >= MAX_COMPS_IN_SCAN) { fprintf(stderr, "Too many components in one scan in file %s\n", filename); fclose(fp); return FALSE; } if (! read_scan_integer(fp, &val, &termchar)) goto bogus; scanptr->component_index[_RV_insert_check(0,4,206,7,"read_scan_script",ncomps)] = (int) val; ncomps++; } scanptr->comps_in_scan = ncomps; if (termchar == ':') { if (! read_scan_integer(fp, &val, &termchar) || termchar != ' ') goto bogus; scanptr->Ss = (int) val; if (! read_scan_integer(fp, &val, &termchar) || termchar != ' ') goto bogus; scanptr->Se = (int) val; if (! read_scan_integer(fp, &val, &termchar) || termchar != ' ') goto bogus; scanptr->Ah = (int) val; if (! read_scan_integer(fp, &val, &termchar)) goto bogus; scanptr->Al = (int) val; } else { /* set non-progressive parameters */ scanptr->Ss = 0; scanptr->Se = DCTSIZE2-1; scanptr->Ah = 0; scanptr->Al = 0; } if (termchar != ';' && termchar != EOF) { bogus: fprintf(stderr, "Invalid scan entry format in file %s\n", filename); fclose(fp); return FALSE; } scanptr++, scanno++; } if (termchar != EOF) { fprintf(stderr, "Non-numeric data in file %s\n", filename); fclose(fp); return FALSE; } if (scanno > 0) { /* Stash completed scan list in cinfo structure. * NOTE: for cjpeg's use, JPOOL_IMAGE is the right lifetime for this data, * but if you want to compress multiple images you'd want JPOOL_PERMANENT. */ scanptr = (jpeg_scan_info *) (*(void *(*)(j_common_ptr, int, size_t))(__boundcheck_ptr_reference(251,21,"read_scan_script",(void *)(cinfo->mem->alloc_small),(void *)cinfo->mem->alloc_small))) ((j_common_ptr) cinfo, JPOOL_IMAGE, scanno * SIZEOF(jpeg_scan_info)); MEMCOPY(scanptr, scans, scanno * SIZEOF(jpeg_scan_info)); cinfo->scan_info = scanptr; cinfo->num_scans = scanno; } fclose(fp); return TRUE; }