void process_file(FILE *input, avro_file_writer_t out, avro_schema_t schema, int verbose, int memstat, int errabort, int strjson, size_t max_str_sz) { json_error_t err; json_t *json; int n = 0; json = json_loadf(input, JSON_DISABLE_EOF_CHECK, &err); while (!feof(input)) { n++; if (verbose && !(n % 1000)) printf("Processing record %d\n", n); if (!json) { if (errabort) { fprintf(stderr, "JSON error on line %d, column %d, pos %d: %s, aborting.\n", n, err.column, err.position, err.text); return; } fprintf(stderr, "JSON error on line %d, column %d, pos %d: %s, skipping to EOL\n", n, err.column, err.position, err.text); while (getc(input) != '\n' && !feof(input)) {}; json = json_loadf(input, JSON_DISABLE_EOF_CHECK, &err); continue; } avro_value_t record; avro_value_iface_t *iface = avro_generic_class_from_schema(schema); avro_generic_value_new(iface, &record); if (!schema_traverse(schema, json, NULL, &record, 0, strjson, max_str_sz)) { if (avro_file_writer_append_value(out, &record)) { fprintf(stderr, "ERROR: avro_file_writer_append_value() FAILED: %s\n", avro_strerror()); exit(EXIT_FAILURE); } } else fprintf(stderr, "Error processing record %d, skipping...\n", n); avro_value_iface_decref(iface); avro_value_decref(&record); json_decref(json); if (memstat && !(n % 1000)) memory_status(); json = json_loadf(input, JSON_DISABLE_EOF_CHECK, &err); } if (memstat) memory_status(); avro_schema_decref(schema); }
static void new_checkMemory_normal(void **state){ heap_t * newHeap = heap_new(100,30); memory_t * newMemory = heap_interactionMemory(newHeap, 50); memory_check(newMemory, "I am normal string!"); assert_int_equal(memory_status(newMemory), M_OK); heap_delete(newHeap); }
static void new_memory_fullSize(void **state){ heap_t * newHeap = heap_new(50,30); memory_t * memory = heap_interactionMemory(newHeap, 100); assert_int_equal(heap_status(newHeap), H_FULL); assert_int_equal(memory_status(memory), M_EMPTY); heap_delete(newHeap); }
static void new_checkMemory_empty(void **state){ heap_t * newHeap = heap_new(100,30); memory_t * newMemory = heap_interactionMemory(newHeap, 50); memory_check(newMemory, ""); assert_int_equal(memory_status(newMemory), M_EMPTY); heap_delete(newHeap); }
void k_debugger(regs *r,uint32 eip, uint32 cs, uint32 eflags) { char *line; uint32 n; kprintf("OpenBLT Kernel Debugger"); for(;;){ krefresh(); line = kgetline(linebuf,80); if(!strncmp(line,"pgroup ",7)) { dumppgroup(readnum(line+7)); continue; } if(!strncmp(line,"resource ", 9)) { dumponersrc(line+9); continue; } if(!strcmp(line,"resources")) { dumprsrc(&resource_list); continue; } if(!strncmp(line,"queue ",6)) { dumpqueue(readnum(line+6)); continue; } if(!strcmp(line,"tasks")) { dumptasks(); continue; } if(!strcmp(line,"ports")) { dumpports(); continue; } if(!strcmp(line,"memory")) { memory_status(); continue; } if(!strcmp(line,"trace")) { trace(r->ebp,eip); continue; } if(!strcmp(line,"regs")) { print_regs(r,eip,cs,eflags); continue; } if(!strncmp(line,"dump ",5)) { dump(readnum(line+5),16); continue; } if(!strncmp(line,"aspace ",7)) { dumpaddr(readnum(line+7)); continue; } if(!strcmp(line,"reboot")) { reboot(); } if(!strncmp(line,"checksum ",9)) { checksum(line+9); continue; } if(!strncmp(line,"team ",5)) { dumpteam(readnum(line+5)); continue; } if(!strncmp(line,"find ",5)) { findpage(readnum(line+5)); continue; } if(!strcmp(line,"teams")) { dumpteams(); continue; } if(!strcmp(line,"exit")) break; if(!strcmp(line,"x")) break; if(!strcmp(line,"c")) break; } }