Lines Matching +full:test +full:- +full:static +full:- +full:dbg
2 * read.c - read the blkid cache from disk, to avoid scanning all devices
7 * %Begin-Header%
10 * %End-Header%
44 static void debug_dump_dev(blkid_dev dev);
62 static char *skip_over_blank(char *cp) in skip_over_blank()
69 static char *skip_over_word(char *cp) in skip_over_word()
89 static char *strip_line(char *line) in strip_line()
95 p = line + strlen(line) - 1; in strip_line()
99 *p-- = '\0'; in strip_line()
108 static char *parse_word(char **buf)
119 char *end = next - 1;
135 * line starts with "<device" return 1 -> continue parsing line
136 * line starts with "<foo", empty, or # return 0 -> skip line
137 * line starts with other, return -BLKID_ERR_CACHE -> error
139 static int parse_start(char **cp) in parse_start()
152 DBG(DEBUG_READ, printf("found device header: %8s\n", p)); in parse_start()
162 return -BLKID_ERR_CACHE; in parse_start()
166 static int parse_end(char **cp) in parse_end()
171 DBG(DEBUG_READ, printf("found device trailer %9s\n", *cp)); in parse_end()
176 return -BLKID_ERR_CACHE; in parse_end()
185 static int parse_dev(blkid_cache cache, blkid_dev *dev, char **cp) in parse_dev()
195 DBG(DEBUG_READ, in parse_dev()
197 return -BLKID_ERR_CACHE; in parse_dev()
202 DBG(DEBUG_READ, printf("device should be %.*s\n", in parse_dev()
203 (int)(end - start), start)); in parse_dev()
213 DBG(DEBUG_READ, in parse_dev()
218 if (end - start <= 1) { in parse_dev()
219 DBG(DEBUG_READ, printf("blkid: empty device name: %s\n", *cp)); in parse_dev()
220 return -BLKID_ERR_CACHE; in parse_dev()
223 name = blkid_strndup(start, end-start); in parse_dev()
225 return -BLKID_ERR_MEM; in parse_dev()
227 DBG(DEBUG_READ, printf("found dev %s\n", name)); in parse_dev()
231 return -BLKID_ERR_MEM; in parse_dev()
241 static int parse_token(char **name, char **value, char **cp) in parse_token()
246 return -BLKID_ERR_PARAM; in parse_token()
258 DBG(DEBUG_READ, in parse_token()
261 return -BLKID_ERR_CACHE; in parse_token()
282 static int parse_xml(char **name, char **value, char **cp)
287 return -BLKID_ERR_PARAM;
303 * Return -ve error code.
305 static int parse_tag(blkid_cache cache, blkid_dev dev, char **cp) in parse_tag()
312 return -BLKID_ERR_PARAM; in parse_tag()
320 dev->bid_devno = STRTOULL(value, 0, 0); in parse_tag()
322 dev->bid_pri = strtol(value, 0, 0); in parse_tag()
324 dev->bid_time = STRTOULL(value, 0, 0); in parse_tag()
328 DBG(DEBUG_READ, printf(" tag: %s=\"%s\"\n", name, value)); in parse_tag()
339 * Returns -ve value on error.
341 * If a valid device was read, *dev_p is non-NULL, otherwise it is NULL
344 static int blkid_parse_line(blkid_cache cache, blkid_dev *dev_p, char *cp) in blkid_parse_line()
350 return -BLKID_ERR_PARAM; in blkid_parse_line()
354 DBG(DEBUG_READ, printf("line: %s\n", cp)); in blkid_parse_line()
365 if (dev->bid_type == NULL) { in blkid_parse_line()
366 DBG(DEBUG_READ, in blkid_parse_line()
367 printf("blkid: device %s has no TYPE\n",dev->bid_name)); in blkid_parse_line()
371 DBG(DEBUG_READ, blkid_debug_dump_dev(dev)); in blkid_parse_line()
395 if ((fd = open(cache->bic_filename, O_RDONLY)) < 0) in blkid_read_cache()
399 if ((st.st_mtime == cache->bic_ftime) || in blkid_read_cache()
400 (cache->bic_flags & BLKID_BIC_FL_CHANGED)) { in blkid_read_cache()
401 DBG(DEBUG_CACHE, printf("skipping re-read of %s\n", in blkid_read_cache()
402 cache->bic_filename)); in blkid_read_cache()
406 DBG(DEBUG_CACHE, printf("reading cache file %s\n", in blkid_read_cache()
407 cache->bic_filename)); in blkid_read_cache()
420 end = strlen(buf) - 1; in blkid_read_cache()
422 while (buf[end] == '\\' && end < sizeof(buf) - 2 && in blkid_read_cache()
423 fgets(buf + end, sizeof(buf) - end, file)) { in blkid_read_cache()
424 end = strlen(buf) - 1; in blkid_read_cache()
429 DBG(DEBUG_READ, in blkid_read_cache()
439 cache->bic_flags &= ~BLKID_BIC_FL_CHANGED; in blkid_read_cache()
440 cache->bic_ftime = st.st_mtime; in blkid_read_cache()
449 static void debug_dump_dev(blkid_dev dev) in debug_dump_dev()
458 printf(" dev: name = %s\n", dev->bid_name); in debug_dump_dev()
459 printf(" dev: DEVNO=\"0x%0llx\"\n", (long long)dev->bid_devno); in debug_dump_dev()
460 printf(" dev: TIME=\"%lld\"\n", (long long)dev->bid_time); in debug_dump_dev()
461 printf(" dev: PRI=\"%d\"\n", dev->bid_pri); in debug_dump_dev()
462 printf(" dev: flags = 0x%08X\n", dev->bid_flags); in debug_dump_dev()
464 list_for_each(p, &dev->bid_tags) { in debug_dump_dev()
467 printf(" tag: %s=\"%s\"\n", tag->bit_name, in debug_dump_dev()
468 tag->bit_val); in debug_dump_dev()
483 "Test parsing of the cache (filename)\n", argv[0]); in main()