File: postrm

package info (click to toggle)
mh 6.8.4-28
  • links: PTS
  • area: main
  • in suites: slink
  • size: 7,012 kB
  • ctags: 7,496
  • sloc: ansic: 75,211; sh: 3,112; lisp: 2,205; ml: 1,894; makefile: 724; perl: 482; csh: 150; tcl: 66; sed: 43; awk: 7
file content (90 lines) | stat: -rw-r--r-- 3,019 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
#!/bin/sh

set -e

dounregister ( ) {
    if [ -x /usr/sbin/suidunregister ]; then
        suidunregister -s mh /usr/bin/mh/inc
        suidunregister -s mh /usr/bin/mh/msgchk
	# obsolete, but we still want to remove them
        suidunregister -s mh /usr/lib/mh/popwrd || true
        suidunregister -s mh /usr/lib/mh/spop   || true
    fi
}

case "$1" in
  remove)
    # This package has been removed, but its configuration has not yet
    # been purged.
    dounregister
    ;;
  purge)
    # This package has previously been removed and is now having
    # its configuration purged from the system.
:
    ;;
  disappear)
    if test "$2" != overwriter; then
      echo "$0: undocumented call to \`postrm $*'" 1>&2
      exit 1
    fi
    # This package has been completely overwritten by package $3
    # (version $4).  All our files are already gone from the system.
    # This is a special case: neither "prerm remove" nor "postrm remove"
    # have been called, because dpkg didn't know that this package would
    # disappear until this stage.
    if [ "$3" != mh -a -x /usr/sbin/suidunregister ]; then
	echo "mh has been replaced by $3 $4, unregistering suid files"
	dounregister
    fi
    ;;
  upgrade)
    # About to upgrade FROM THIS VERSION to version $2 of this package.
    # "prerm upgrade" has been called for this version, and "preinst
    # upgrade" has been called for the new version.  Last chance to
    # clean up.  Note that an 'upgrade' may be to any version of the
    # same package, even the same version or a previous version.
    dounregister
    ;;
  failed-upgrade)
    # About to upgrade from version $2 of this package TO THIS VERSION.
    # "prerm upgrade" has been called for the old version, and "preinst
    # upgrade" has been called for this version.  This is only used if
    # the previous version's "postrm upgrade" couldn't handle it and
    # returned non-zero. (Fix old postrm bugs here.)
    echo "resetting suid files"
    if [ -x /usr/sbin/suidregister ]; then
        suidregister -s mh /usr/bin/mh/inc root mail 2755
        suidregister -s mh /usr/bin/mh/msgchk root mail 2755
    else
        chown root.mail /usr/bin/mh/inc
        chmod 2755 /usr/bin/mh/inc
        chown root.mail /usr/bin/mh/msgchk
        chmod 2755 /usr/bin/mh/msgchk
    fi

    ;;
  abort-install)
    # Back out of an attempt to install this package.  Undo the effects of
    # "preinst install...".  There are two sub-cases.
:
    if test "${2+set}" = set; then
      # When the install was attempted, version $2's configuration
      # files were still on the system.  Undo the effects of "preinst
      # install $2".
:
    else
      # We were being installed from scratch.  Undo the effects of
      # "preinst install".
:
    fi ;;
  abort-upgrade)
    # Back out of an attempt to upgrade this package from version $2
    # TO THIS VERSION.  Undo the effects of "preinst upgrade $2".
:
    ;;
  *) echo "$0: didn't understand being called with \`$1'" 1>&2
     exit 1;;
esac

exit 0