dtinfo other files
[oweals/cde.git] / cde / admin / IntegTools / post_install / sun / configTT.src
1 XCOMM! /bin/ksh
2 XCOMM #######
3 XCOMM  Product: CDE
4 XCOMM  Fileset: CDE-TT
5 XCOMM  configure
6 XCOMM  @(#) $XConsortium: configTT.src /main/5 1996/04/23 20:38:48 drk $
7 XCOMM #######
8 XCOMM
9 XCOMM (c) Copyright Hewlett-Packard Company, 1993
10 XCOMM
11 XCOMM #######
12 #define HASH #
13
14 PRODUCT=CDE
15 FILESET=CDE-TT
16 DO_CONFIGURATION=""
17 retval=0
18
19 FixInetdDotConf()
20 {
21 FILE=/etc/inetd.conf
22 TMPFILE=/tmp/inetd.conf
23 TTDBSERVERD=CDE_INSTALLATION_TOP/bin/rpc.ttdbserverd
24
25 XCOMM
26 XCOMM see if it already exists
27 XCOMM
28
29     nawk -v ttdb=$TTDBSERVERD \
30         '{if ($1 == "100083/1" && $6 != ttdb)
31                 print "#cde " $0;
32           else
33                 print $0
34          }' $FILE >$TMPFILE
35
36     cp $TMPFILE $FILE
37     rm $TMPFILE
38
39     awk '{if ($1 == "100083/1")
40                 print $0 > "/tmp/tt-already-there"
41          }' $FILE >/dev/null
42
43     if [ ! -f /tmp/tt-already-there ]
44     then
45         echo "100083/1 stream rpc/tcp wait root $TTDBSERVERD $TTDBSERVERD" \
46                  >>$FILE
47     else
48         rm /tmp/tt-already-there
49     fi
50 }
51
52 UnfixInetdDotConf()
53 {
54 FILE=/etc/inetd.conf
55 TMPFILE=/tmp/inetd.conf
56 TTDBSERVERD=CDE_INSTALLATION_TOP/bin/rpc.ttdbserverd
57
58     nawk -v ttdb=$TTDBSERVERD \
59         '{if ($1 == "100083/1" && $6 == ttdb)
60                 ;
61           else
62                 print $0
63          }' $FILE >$TMPFILE
64
65     cp $TMPFILE $FILE
66     rm $TMPFILE
67
68     awk '{if ($1 == "#cde" && ($2 == "100083/1" || $2 == "100083")) {
69                 $1 = $2;
70                 $2 = ""
71              }
72              print $0
73          }' $FILE >$TMPFILE
74
75     cp $TMPFILE $FILE
76     rm $TMPFILE
77 }
78
79 RemoveTTFiles()
80 {
81     while read SRC
82     do
83       if [ "$SRC" != "" ]
84       then
85         rm -f $SRC
86         dirname=${SRC%/STAR}
87         if [ -d $dirname ]
88         then
89           cd $dirname
90           while [ "$dirname" != "$CDE_TOP" ]
91           do
92             cd ..
93             rmdir ${dirname##STAR/} >/dev/null 2>/dev/null
94             dirname=${dirname%/STAR}
95           done
96         fi
97       fi
98     done <<-EOF
99 #include "CDE-TT.list"
100         EOF
101 }
102
103 VerifyInstalledFiles()
104 {
105     echo "Status   mode    owner   group   filename"
106     echo "-----------------------------------------"
107 XCOMM     exists  correct correct correct  /usr/dt/foo1
108 XCOMM     MISSING  WRONG   WRONG   WRONG   /usr/dt/foo2
109 XCOMM        exists    the link is correct    /usr/dt/link
110
111     while read SRC
112     do
113 #include "../verify.func"
114     done <<-EOF
115 #include "CDE-TT.lst"
116         EOF
117 }
118
119 #include "../option.func"
120
121 XCOMM ######################################################################
122 XCOMM
123 XCOMM                           Main Body
124 XCOMM
125 XCOMM ######################################################################
126
127   HandleOption $*
128
129   if [ "$OPERATION" = "configure" ]
130   then
131
132     FixInetdDotConf
133
134   elif [ "$OPERATION" = "deconfigure" ]
135   then
136
137     UnfixInetdDotConf
138
139     RemoveTTFiles
140
141     VerifyInstalledFiles
142
143   elif [ "$OPERATION" = "verify" ]
144   then
145
146     VerifyInstalledFiles
147
148   fi
149
150   if [ "$OPERATION" != "verify" ]
151   then
152
153     HASH issue a SIGHUP to the inetd process
154
155     ps -ef | grep inetd | grep -v grep >/tmp/tmppsout
156     if [ -s /tmp/tmppsout ]
157     then
158         awk '{print "kill -1 " $2}' /tmp/tmppsout | /bin/csh
159     else
160         /usr/sbin/inetd -s
161     fi
162
163     rm /tmp/tmppsout
164   fi
165
166   return $retval