static int info_file()

in src/main.c [106:137]


static int info_file(const char *filename) {
  sparkey_logheader logheader;
  sparkey_hashheader hashheader;
  sparkey_returncode res = sparkey_load_logheader(&logheader, filename);
  if (res == SPARKEY_SUCCESS) {
    printf("Filename: %s\n", filename);
    print_logheader(&logheader);
    printf("\n");
    return 0;
  }

  if (res != SPARKEY_WRONG_LOG_MAGIC_NUMBER) {
    fprintf(stderr, "%s: %s\n", filename, sparkey_errstring(res));
    return 1;
  }

  res = sparkey_load_hashheader(&hashheader, filename);
  if (res == SPARKEY_SUCCESS) {
    printf("Filename: %s\n", filename);
    print_hashheader(&hashheader);
    printf("\n");
    return 0;
  }

  if (res != SPARKEY_WRONG_HASH_MAGIC_NUMBER) {
    fprintf(stderr, "%s: %s\n", filename, sparkey_errstring(res));
    return 1;
  }

  fprintf(stderr, "%s: Not a sparkey file.\n", filename);
  return 1;
}