Import pkg_install-20090225:
[netbsd-mini2440.git] / external / bsd / pkg_install / dist / admin / audit-packages.sh.in
blobdfd9814ce6d45516e5e556fe9b826ef7545d7919
1 #!/bin/sh
3 pkg_admin=@PKG_ADMIN@
5 usage() {
6 echo 'Usage: audit-packages [-deqsVv] [-c config_file] [-F file]' >& $2
7 echo ' [-g file] [-h file]' >& $2
8 echo ' [-K pkg_dbdir] [-n package] [-p package]' >& $2
9 echo ' [-Q varname] [-t type]' >& $2
10 echo "Please use the audit, audit-pkg, audit-batch and fetch-pkg-vulnerabilities" >& $2
11 echo "commands of pkg_admin instead." >& $2
12 exit $1
15 do_pkgdb=
16 do_eol=
17 do_fetch=
18 do_quiet=
19 do_sign=
20 do_verbose=
21 do_check_file=
22 do_check_pattern=
23 do_check_installed=
24 do_check_vul_file=
25 do_limit_type=
26 do_print_var=
28 args=`getopt F:K:Q:Vc:deg:h:n:p:qst:v $*`
29 if [ $? -ne 0 ]; then
30 usage 1 2
33 set -- $args
35 while [ $# -gt 0 ]; do
36 case "$1" in
37 -F)
38 do_check_file=$2
39 shift
41 -K)
42 do_pkgdb="$1 $2"
43 shift
45 -Q)
46 do_print_var="$2"
47 shift
49 -V)
50 exec ${pkg_admin} -V
52 -c)
53 echo "The audit-packages wrapper does not support -c" >&2
54 echo "Please use the audit, audit-pkg, audit-batch and fetch-pkg-vulnerabilities" >& 2
55 echo "commands of pkg_admin instead." >& 2
56 exit 1
58 -d)
59 do_fetch=1
61 -e)
62 do_eol=-e
64 -g)
65 echo "The audit-packages wrapper does not support -g" >&2
66 echo "Please switch to \`\`pkg_admin fetch-pkg-vulnerabilities''." >&2
67 exit 1
69 -h)
70 do_check_vul_file=$2
71 shift
73 -n)
74 do_check_pattern=$2
75 shift
77 -p)
78 do_check_installed=$2
79 shift
81 -q)
82 do_quiet=-q
84 -s)
85 do_sign=-s
87 -t)
88 do_limit_type="-t $2"
89 shift
91 -v)
92 do_verbose="$do_verbose -v"
94 esac
95 shift
96 done
98 if [ -n "${do_fetch}" ]; then
99 exec ${pkg_admin} ${do_pkgdb} fetch-pkg-vulnerabilities ${do_sign}
102 if [ -n "${do_check_vul_file}" ]; then
103 exec ${pkg_admin} ${do_pkgdb} check-pkg-vulnerabilities ${do_sign} "${do_check_vul_file}"
106 if [ -n "${do_print_var}" ]; then
107 exec ${pkg_admin} ${do_pkgdb} config-var "${do_print_var}"
110 if [ -n "${do_check_file}" ]; then
111 if [ -n "${do_check_pattern}" -o -n "${do_check_installed}" ]; then
112 echo "Only one of -F, -n or -p is interpreted at a time." >& 2
113 usage 1 2
115 exec ${pkg_admin} ${do_pkgdb} ${do_verbose} ${do_quiet} audit-pkg \
116 ${do_eol} ${do_limit_type} ${do_check_file}
119 if [ -n "${do_check_pattern}" ]; then
120 if [ -n "${do_check_installed}" ]; then
121 echo "Only one of -F, -n or -p is interpreted at a time." >& 2
122 usage 1 2
124 exec ${pkg_admin} ${do_pkgdb} ${do_verbose} ${do_quiet} audit-pkg \
125 ${do_eol} ${do_limit_type} ${do_check_pattern}
128 # If do_check_installed is empty, all packages are checked.
129 exec ${pkg_admin} ${do_pkgdb} ${do_verbose} ${do_quiet} audit \
130 ${do_eol} ${do_limit_type} ${do_check_installed}