NODE
static NODE *ftnode = NULL; /* mtree(8) specfile; used by -M */
if ((*todo)(pname, ino, NODE) == FAIL)
return (NODE);
if (inodetype(dp->d_ino) == NODE)
if (inodetype(dp->d_fileno) == NODE)
if (type == NODE)
if (ep->e_type != NODE)
if (type == NODE)
if (ip->e_type == NODE) {
if (type == NODE)
if (ep->e_type == NODE) {
if (ep->e_type == NODE)
if (type == NODE) {
if (ep->e_type != NODE)
if (ep->e_type == NODE) {
ep = addentry(".", UFS_ROOTINO, NODE);
if (np->e_type != NODE)
if (ep->e_type != NODE)
if (ep == NULL || ep->e_type == NODE)
if (ep == NULL || ep->e_type == NODE)
ep->e_type == NODE ? "NODE" : "LEAF");
ep = addentry(name, pathsearch(name)->d_ino, NODE);
DPRINTF(NODE, ("nilfs_root called\n"));
DPRINTF(NODE, ("nilfs_root finished\n"));
DPRINTF(NODE, ("lookup ino %"PRIu64"\n", ino));
DPRINTF(NODE, ("nilfs_reclaim called for node %p\n", nilfs_node));
DPRINTF(NODE, ("nilfs_reclaim(): null nilfsnode\n"));
DPRINTFIF(NODE, error, ("\tgot error removing file\n"));
DPRINTF(NODE, ("\tis a directory: perm. denied\n"));
DPRINTFIF(NODE, error, ("\tgot error removing file\n"));
DPRINTF(NODE, ("nilfs_inactive called for nilfs_node %p\n", VTOI(vp)));
DPRINTF(NODE, ("nilfs_inactive: inactive NULL NILFS node\n"));
DPRINTF(NODE, ("udf_write_phys_dscr_async() called\n"));
DPRINTF(NODE, ("udf_gro_rename called : %s -> %s\n",
DPRINTF(NODE, ("udf_gro_genealogy : "
DPRINTF(NODE, ("\tlookup of parent '..' resulted in error %d, "
DPRINTF(NODE, ("ROOT found!\n"));
DPRINTF(NODE, ("fdvp is ancestor of tdvp\n"));
DPRINTF(NODE, ("\tgetting the parent node\n"));
DPRINTF(NODE, ("udf_loadvnode called\n"));
DPRINTF(NODE, ("\tcan't translate icb address!\n"));
DPRINTF(NODE, ("\tstart reading descriptors\n"));
DPRINTF(NODE, ("\tread descriptor %d\n", dscr_type));
DPRINTF(NODE, ("\tnode fe/efe failed!\n"));
DPRINTF(NODE, ("\tnode fe/efe read in fine\n"));
DPRINTF(NODE, ("\tgot redirect extent\n"));
DPRINTF(NODE, ("read allocation extent at lb_num %d\n",
DPRINTF(NODE, ("\trecording redirect extent\n"));
DPRINTF(NODE, ("\tnode read in fine\n"));
DPRINTF(NODE, ("udf_writeout_node called\n"));
DPRINTF(NODE, ("\tnode deleted; not writing out\n"));
DPRINTF(NODE, ("udf_dispose_node called on node %p\n", udf_node));
DPRINTF(NODE, ("UDF: Dispose node on node NULL, ignoring\n"));
DPRINTF(NODE, ("udf_reclaim called for node %p\n", udf_node));
DPRINTF(NODE, ("udf_reclaim(): null udfnode\n"));
DPRINTF(NODE, ("udf_inactive deleting unlinked file\n"));
DPRINTFIF(NODE, error, ("\tgot error removing file\n"));
DPRINTF(NODE, ("\tis a directory: perm. denied\n"));
DPRINTFIF(NODE, error, ("\tgot error removing dir\n"));
DPRINTF(NODE, ("udf_inactive called for udf_node %p\n", VTOI(vp)));
DPRINTF(NODE, ("udf_inactive: inactive NULL UDF node\n"));
NODE *head; /* head of the sorted binary tree */
extern NODE *head; /* head of the sorted binary tree */
extern void put_entries(NODE *);
put_entries(NODE *node)
add_node(NODE *node, NODE *cur_node)
free_tree(NODE *node)
NODE *nnode;
static void add_node(NODE *, NODE *);
static void free_tree(NODE *);
NODE *np;
if (!(np = (NODE *)malloc(sizeof(NODE)))) {
if (!(head = np = (NODE *)malloc(sizeof(NODE))))
static NODE *graph, **cycle_buf, **longest_cycle;
static size_t find_cycle(NODE *, NODE *, size_t, size_t);
static NODE *get_node(const char *);
static void remove_node(NODE *);
NODE *n1;
NODE *n2;
static NODE *
NODE *n;
n = emalloc(sizeof(NODE) + key.size);
NODE *n;
NODE *n, *next;
remove_node(NODE *n)
NODE **np;
find_cycle(NODE *from, NODE *to, size_t longest_len, size_t depth)
NODE **np;
longest_len * sizeof(NODE *));
NODE **n_prevp; /* pointer to previous node's n_next */
NODE *n_next; /* next node in graph */
NODE **n_arcs; /* array of arcs to other nodes */
NODE *root;
apply_specdir(const char *dir, NODE *specnode, fsnode *dirnode, int speconly)
NODE *curnode;
apply_specentry(const char *dir, NODE *specnode, fsnode *dirnode)
static void apply_specdir(const char *, NODE *, fsnode *, int);
static void apply_specentry(const char *, NODE *, fsnode *);
compare(NODE *s, FTSENT *p)
int compare(NODE *, FTSENT *);
void dump_nodes(FILE *, const char *, NODE *, int);
int matchtags(NODE *);
matchtags(NODE *node)
NODE *spec(FILE *);
void free_nodes(NODE *);
static void replacenode(NODE *, NODE *);
static void set(char *, NODE *);
static void unset(char *, NODE *);
static NODE *addchild(NODE *, NODE *);
static int nodecmp(const NODE *, const NODE *);
NODE *
NODE *centry, *last, *pathparent, *cur;
NODE ginfo, *root;
if ((centry = calloc(1, sizeof(NODE) + strlen(p))) == NULL)
free_nodes(NODE *root)
NODE *cur, *next;
dump_nodes(FILE *fp, const char *dir, NODE *root, int pathlast)
NODE *cur;
replacenode(NODE *cur, NODE *new)
set(char *t, NODE *ip)
unset(char *t, NODE *ip)
static NODE *
addchild(NODE *pathparent, NODE *centry)
NODE *samename; /* node with the same name as centry */
NODE *replacepos; /* if non-NULL, centry should replace this node */
NODE *insertpos; /* if non-NULL, centry should be inserted
NODE *cur; /* for stepping through the list */
NODE *last; /* the last node in the list */
nodecmp(const NODE *a, const NODE *b)
mismatch(NODE *n1, NODE *n2, int differ, char const *path)
compare_nodes(NODE *n1, NODE *n2, char const *path)
walk_in_the_forest(NODE *t1, NODE *t2, char const *path)
NODE *c1, *c2, *n1, *n2;
NODE *root1, *root2;
shownode(NODE *n, int f, char const *path)
miss(NODE *p, char *tail)
static NODE *root;
static void miss(NODE *, char *);
NODE *ep, *level;