/* inode-sig.h:
*
****************************************************************
* Copyright (C) 2003 Tom Lord
*
* See the file "COPYING" for further information about
* the copyright and warranty status of this work.
*/
#ifndef INCLUDE__LIBARCH__INODE_SIG_H
#define INCLUDE__LIBARCH__INODE_SIG_H
#include "hackerlab/os/time.h"
#include "libawk/relational.h"
#include "libawk/associative.h"
#include "libarch/project-tree.h"
struct inode_sig_val {
rel_table ids;
rel_table paths;
time_t start_time;
};
typedef struct inode_sig_val inode_sig;
/* automatically generated __STDC__ prototypes */
extern t_uchar * arch_statb_inode_sig (struct stat * statb);
extern inode_sig arch_tree_inode_sig (arch_project_tree_t * tree);
extern void arch_snap_inode_sig (arch_project_tree_t * tree, arch_patch_id * patch_id);
extern void arch_snap_inode_sig_files (arch_project_tree_t * tree, t_uchar * archive, t_uchar * prev_revision, t_uchar * revision, rel_table file_list);
extern void arch_snap_inode_sig_not_reference (arch_project_tree_t * tree, t_uchar const * const archive, t_uchar const * const revision);
extern void arch_snap_inode_sig_not_reference_files (arch_project_tree_t * tree, t_uchar * archive, t_uchar * prev_revision, t_uchar * revision, rel_table file_list);
extern int arch_valid_inode_sig (arch_project_tree_t * tree, t_uchar const * const archive, t_uchar const * const revision);
extern void arch_read_inode_sig_ids (rel_table * as_table, assoc_table * as_assoc,
t_uchar const * const tree_root, t_uchar const * const archive, t_uchar const * const revision);
extern void arch_read_id_shortcut (assoc_table * tags_shortcut, t_uchar * tree_root);
extern void arch_inode_sig_free (inode_sig);
extern void arch_clear_inode_sigs (t_uchar const * const tree_root);
#endif /* INCLUDE__LIBARCH__INODE_SIG_H */
/* tag: Tom Lord Fri Sep 12 10:33:59 2003 (inode-sig.h)
*/
syntax highlighted by Code2HTML, v. 0.9.1