view pirollback/inopath.c @ 61:2bc45eb8818d

Pirelli PCB RE: attempt to trace out KBC/KBR lines stopped by grind-down damage
author Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
date Sun, 01 Dec 2013 23:59:56 +0000
parents 18472a2ccf55
children
line wrap: on
line source

#include <stdio.h>
#include <stdlib.h>
#include "pathname.h"

extern char *imgfile;
extern int last_inode;

main(argc, argv)
	char **argv;
{
	int ino;
	char *strtoul_endp;
	char pathname[PATHNAME_BUF_SIZE];

	if (argc != 3) {
usage:		fprintf(stderr, "usage: %s ffs-image inode\n", argv[0]);
		exit(1);
	}
	imgfile = argv[1];
	ino = strtoul(argv[2], &strtoul_endp, 16);
	if (!argv[2][0] || *strtoul_endp)
		goto usage;
	read_img_file();
	read_inodes();
	if (ino < 1 || ino > last_inode) {
		fprintf(stderr, "%s: bad inode number specified\n", argv[0]);
		exit(1);
	}
	walk_tree();
	check_object_names();
	if (pathname_of_inode(ino, pathname) < 0) {
		fprintf(stderr, "unable to get the pathname\n");
		exit(1);
	}
	printf("%s\n", pathname);
	exit(0);
}