xref: /dflybsd-src/contrib/cvs-1.12/src/hardlink.h (revision 86d7f5d305c6adaa56ff4582ece9859d73106103)
186d7f5d3SJohn Marino /* This program is free software; you can redistribute it and/or modify
286d7f5d3SJohn Marino    it under the terms of the GNU General Public License as published by
386d7f5d3SJohn Marino    the Free Software Foundation; either version 2, or (at your option)
486d7f5d3SJohn Marino    any later version.
586d7f5d3SJohn Marino 
686d7f5d3SJohn Marino    This program is distributed in the hope that it will be useful,
786d7f5d3SJohn Marino    but WITHOUT ANY WARRANTY; without even the implied warranty of
886d7f5d3SJohn Marino    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
986d7f5d3SJohn Marino    GNU General Public License for more details.  */
1086d7f5d3SJohn Marino 
1186d7f5d3SJohn Marino /* Data type definitions and declarations for hardlink management.  */
1286d7f5d3SJohn Marino 
1386d7f5d3SJohn Marino /* This file should be #included in CVS source files after cvs.h
1486d7f5d3SJohn Marino    since it relies on types and macros defined there. */
1586d7f5d3SJohn Marino 
1686d7f5d3SJohn Marino /* The `checked_out' member of a hardlink_info struct is used only
1786d7f5d3SJohn Marino    when files are being checked out or updated.  It is used only when
1886d7f5d3SJohn Marino    hardlinked files are being checked out. */
1986d7f5d3SJohn Marino 
2086d7f5d3SJohn Marino #ifdef PRESERVE_PERMISSIONS_SUPPORT
2186d7f5d3SJohn Marino struct hardlink_info
2286d7f5d3SJohn Marino {
2386d7f5d3SJohn Marino     Ctype status;		/* as returned from Classify_File() */
2486d7f5d3SJohn Marino     int checked_out;		/* has this file been checked out lately? */
2586d7f5d3SJohn Marino };
2686d7f5d3SJohn Marino 
2786d7f5d3SJohn Marino extern List *hardlist;
2886d7f5d3SJohn Marino extern char *working_dir;
2986d7f5d3SJohn Marino 
3086d7f5d3SJohn Marino Node *lookup_file_by_inode (const char *);
3186d7f5d3SJohn Marino void update_hardlink_info (const char *);
3286d7f5d3SJohn Marino List *list_linked_files_on_disk (char *);
3386d7f5d3SJohn Marino int compare_linkage_lists (List *, List *);
3486d7f5d3SJohn Marino int find_checkedout_proc (Node *, void *);
3586d7f5d3SJohn Marino #endif /* PRESERVE_PERMISSIONS_SUPPORT */
36