xref: /dflybsd-src/contrib/cvs-1.12/src/hardlink.h (revision 86d7f5d305c6adaa56ff4582ece9859d73106103)
1*86d7f5d3SJohn Marino /* This program is free software; you can redistribute it and/or modify
2*86d7f5d3SJohn Marino    it under the terms of the GNU General Public License as published by
3*86d7f5d3SJohn Marino    the Free Software Foundation; either version 2, or (at your option)
4*86d7f5d3SJohn Marino    any later version.
5*86d7f5d3SJohn Marino 
6*86d7f5d3SJohn Marino    This program is distributed in the hope that it will be useful,
7*86d7f5d3SJohn Marino    but WITHOUT ANY WARRANTY; without even the implied warranty of
8*86d7f5d3SJohn Marino    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
9*86d7f5d3SJohn Marino    GNU General Public License for more details.  */
10*86d7f5d3SJohn Marino 
11*86d7f5d3SJohn Marino /* Data type definitions and declarations for hardlink management.  */
12*86d7f5d3SJohn Marino 
13*86d7f5d3SJohn Marino /* This file should be #included in CVS source files after cvs.h
14*86d7f5d3SJohn Marino    since it relies on types and macros defined there. */
15*86d7f5d3SJohn Marino 
16*86d7f5d3SJohn Marino /* The `checked_out' member of a hardlink_info struct is used only
17*86d7f5d3SJohn Marino    when files are being checked out or updated.  It is used only when
18*86d7f5d3SJohn Marino    hardlinked files are being checked out. */
19*86d7f5d3SJohn Marino 
20*86d7f5d3SJohn Marino #ifdef PRESERVE_PERMISSIONS_SUPPORT
21*86d7f5d3SJohn Marino struct hardlink_info
22*86d7f5d3SJohn Marino {
23*86d7f5d3SJohn Marino     Ctype status;		/* as returned from Classify_File() */
24*86d7f5d3SJohn Marino     int checked_out;		/* has this file been checked out lately? */
25*86d7f5d3SJohn Marino };
26*86d7f5d3SJohn Marino 
27*86d7f5d3SJohn Marino extern List *hardlist;
28*86d7f5d3SJohn Marino extern char *working_dir;
29*86d7f5d3SJohn Marino 
30*86d7f5d3SJohn Marino Node *lookup_file_by_inode (const char *);
31*86d7f5d3SJohn Marino void update_hardlink_info (const char *);
32*86d7f5d3SJohn Marino List *list_linked_files_on_disk (char *);
33*86d7f5d3SJohn Marino int compare_linkage_lists (List *, List *);
34*86d7f5d3SJohn Marino int find_checkedout_proc (Node *, void *);
35*86d7f5d3SJohn Marino #endif /* PRESERVE_PERMISSIONS_SUPPORT */
36