]>
Commit | Line | Data |
---|---|---|
1 | #!/bin/sh | |
2 | # | |
3 | # $Header$ | |
4 | ||
5 | PATH=/usr/bin:/bin:/usr/sbin:/sbin | |
6 | ||
7 | if [ -d /var/athena ] && [ -w /var/athena ]; then | |
8 | exec >/var/athena/moira_update.log 2>&1 | |
9 | else | |
10 | exec >/tmp/moira_update.log 2>&1 | |
11 | fi | |
12 | ||
13 | # The following exit codes are defined and MUST BE CONSISTENT with the | |
14 | # error codes the library uses: | |
15 | MR_MISSINGFILE=47836473 | |
16 | MR_TARERR=47836476 | |
17 | MR_MKCRED=47836474 | |
18 | ||
19 | OUTFILE=/var/tmp/ip-billing.out | |
20 | OUTDIR=/var/tmp/ip-billing.dir | |
21 | ||
22 | # Alert if the output file doesn't exist | |
23 | test -r $OUTFILE || exit $MR_MISSINGFILE | |
24 | ||
25 | # Make a temporary directory to unpack files into. | |
26 | rm -rf $OUTDIR | |
27 | mkdir $OUTDIR || exit $MR_MKCRED | |
28 | cd $OUTDIR || exit $MR_MKCRED | |
29 | ||
30 | # unpack the file | |
31 | tar xpf $OUTFILE || exit $MR_TARERR | |
32 | for i in ctl dat; do | |
33 | if [ ! -f moira.$i ]; then | |
34 | exit $MR_MISSINGFILE | |
35 | fi | |
36 | mv moira.$i /var/tmp | |
37 | done | |
38 | ||
39 | # cleanup | |
40 | cd / | |
41 | rm -rf $OUTDIR | |
42 | test -f $OUTFILE && rm -f $OUTFILE | |
43 | test -f $0 && rm -f $0 | |
44 | ||
45 | exit 0 |