0efe76bd58795f4036e5fae95ea06b6729b08d17
[openafs.git] / src / package / validupdates.h
1 /*
2  * (C) Copyright Transarc Corporation 1989
3  * Licensed Materials - Property of Transarc
4  * All Rights Reserved.
5  */
6
7 /*------------------------------------------------------------------------
8  * validupdates.c
9  *
10  * Description:
11  *      Specification of all valid update modes for package, the AFS
12  *      workstation configuration tool.
13  *
14  * Author:
15  *      Transarc Corporation & Carnegie Mellon University
16  *------------------------------------------------------------------------*/
17
18 #include <sys/param.h>
19
20 struct updatetype
21 {
22     u_short filetype;   /*Type of file*/
23     u_short updtflags;  /*A valid update specification for the filetype*/
24 };
25
26 /*
27   * These entries record the meaning of the sequence of letters appearing
28   * as the first field of a line in the package configuration file.
29   *
30   * Question: Are FIQ and FIAQ combinations semantically valid?
31   */
32 static struct updatetype validupdates[] =
33 {
34   S_IFBLK,      /* B    */      0,
35   S_IFCHR,      /* C    */      0,
36   S_IFDIR,      /* D    */      0,
37   S_IFDIR,      /* DA   */      U_ABSPATH, 
38   S_IFDIR,      /* DR   */      U_RMEXTRA,
39   S_IFDIR,      /* DRA  */      U_ABSPATH | U_RMEXTRA,
40   S_IFDIR,      /* DX   */      U_LOSTFOUND,
41   S_IFDIR,      /* DXA  */      U_ABSPATH | U_LOSTFOUND,
42   S_IFREG,      /* F    */      0,
43   S_IFREG,      /* FA   */      U_ABSPATH,
44   S_IFREG,      /* FI   */      U_NOOVERWRITE,
45   S_IFREG,      /* FIA  */      U_ABSPATH | U_NOOVERWRITE,
46   S_IFREG,      /* FO   */      U_RENAMEOLD,
47   S_IFREG,      /* FOA  */      U_ABSPATH | U_RENAMEOLD,
48   S_IFREG,      /* FQ   */      U_REBOOT,
49   S_IFREG,      /* FAQ  */      U_ABSPATH | U_REBOOT,
50   S_IFREG,      /* FIQ  */      U_NOOVERWRITE | U_REBOOT,
51   S_IFREG,      /* FIAQ */      U_ABSPATH | U_NOOVERWRITE | U_REBOOT,
52   S_IFREG,      /* FOQ  */      U_RENAMEOLD | U_REBOOT,
53   S_IFREG,      /* FOAQ */      U_ABSPATH | U_RENAMEOLD | U_REBOOT,
54   S_IFLNK,      /* L    */      0,
55   S_IFLNK,      /* LA   */      U_ABSPATH,
56   S_IFLNK,      /* LI   */      U_NOOVERWRITE,
57   S_IFLNK,      /* LIA  */      U_ABSPATH | U_NOOVERWRITE,
58 #ifndef AFS_AIX_ENV
59   S_IFSOCK,     /* S    */      0,
60 #endif /* AFS_AIX_ENV */
61 #ifdef S_IFIFO
62   S_IFIFO,      /*P     */      0,
63   S_IFIFO,      /*PA    */      U_ABSPATH,
64   S_IFIFO,      /*PO    */      U_RENAMEOLD,
65   S_IFIFO,      /*PI    */      U_NOOVERWRITE,
66   S_IFIFO,      /*PAO   */      U_ABSPATH | U_RENAMEOLD,
67   S_IFIFO,      /*PAI   */      U_NOOVERWRITE,
68 #endif /* S_IFIFO */
69   /* W  0, $$what?: undocumented feature */
70         0,              0
71 };