author | Alan Coopersmith <Alan.Coopersmith@Oracle.COM> |
Mon, 10 Oct 2016 13:26:21 -0700 | |
changeset 7081 | 616e1d8621e7 |
parent 5866 | 683c5c035a79 |
permissions | -rw-r--r-- |
5741
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
1 |
#!/bin/ksh93 -p |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
2 |
# |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
3 |
# CDDL HEADER START |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
4 |
# |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
5 |
# The contents of this file are subject to the terms of the |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
6 |
# Common Development and Distribution License (the "License"). |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
7 |
# You may not use this file except in compliance with the License. |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
8 |
# |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
9 |
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
10 |
# or http://www.opensolaris.org/os/licensing. |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
11 |
# See the License for the specific language governing permissions |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
12 |
# and limitations under the License. |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
13 |
# |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
14 |
# When distributing Covered Code, include this CDDL HEADER in each |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
15 |
# file and include the License file at usr/src/OPENSOLARIS.LICENSE. |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
16 |
# If applicable, add the following below this CDDL HEADER, with the |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
17 |
# fields enclosed by brackets "[]" replaced with your own identifying |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
18 |
# information: Portions Copyright [yyyy] [name of copyright owner] |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
19 |
# |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
20 |
# CDDL HEADER END |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
21 |
# |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
22 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
23 |
# |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
24 |
# Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved. |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
25 |
# |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
26 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
27 |
# Run this command as root to set up for sasl testsuite |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
28 |
# creates a standard set of sasl users and makes them principals |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
29 |
# -- create/recreate the KDC principal DB |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
30 |
# -- create a sasldb |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
31 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
32 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
33 |
export THIRTYTWO |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
34 |
case `uname -p` in |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
35 |
i386) |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
36 |
THIRTYTWO="i86" |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
37 |
;; |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
38 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
39 |
sparc) THIRTYTWO="sparcv7" |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
40 |
;; |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
41 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
42 |
*) echo "Architecture unknown" |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
43 |
exit 1 |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
44 |
;; |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
45 |
esac |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
46 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
47 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
48 |
# realm used as default, edit if a different realm is desired. |
5866
683c5c035a79
23116175 Get the cyrus-sasl component ready for MIT-default Kerberos
Jan Parcel <jan.parcel@oracle.com>
parents:
5741
diff
changeset
|
49 |
export realm="SASLTEST.NET" |
5741
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
50 |
# realm for cross-realm auth. |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
51 |
crossrealm= |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
52 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
53 |
# password for all principals not added to keytab |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
54 |
export passwd="1234" |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
55 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
56 |
# Set this to the ID that is allowed to run kadmin |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
57 |
# Be default you would do: "kadmin -p kdc/admin" and use the passwd above. |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
58 |
admin_princ="kdc/admin" |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
59 |
|
5866
683c5c035a79
23116175 Get the cyrus-sasl component ready for MIT-default Kerberos
Jan Parcel <jan.parcel@oracle.com>
parents:
5741
diff
changeset
|
60 |
# used to determine if in |
683c5c035a79
23116175 Get the cyrus-sasl component ready for MIT-default Kerberos
Jan Parcel <jan.parcel@oracle.com>
parents:
5741
diff
changeset
|
61 |
# batch/non-intera/home/willf/app_support/etc/krb5/templates/db2ctive mode |
5741
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
62 |
force='false' |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
63 |
check_leaks='false' |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
64 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
65 |
# keytab config file |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
66 |
kt_config_file= |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
67 |
num_keytabs=0 |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
68 |
set -A kt_transfer_command |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
69 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
70 |
# should be null if seting up master kdc |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
71 |
master_kdc= |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
72 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
73 |
# get the base script name |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
74 |
me=${0##*/} |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
75 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
76 |
function usage { |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
77 |
cat >&2 <<EOF |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
78 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
79 |
-f: Force answer yes (non-interactive mode). Use with caution as |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
80 |
this script will delete existing KDB. |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
81 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
82 |
-?: This help message. |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
83 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
84 |
EOF |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
85 |
exit 1 |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
86 |
} |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
87 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
88 |
function ask { |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
89 |
trap - ERR |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
90 |
# ask question, set global answer |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
91 |
typeset question=$1 default_answer=$2 |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
92 |
if [ -z "$default_answer" ]; then |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
93 |
print "$question \c" |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
94 |
else |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
95 |
print "$question [$default_answer]: \c" |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
96 |
fi |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
97 |
read answer |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
98 |
[ -z "$answer" ] && answer="$default_answer" |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
99 |
} |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
100 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
101 |
function yesno { |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
102 |
trap - ERR |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
103 |
typeset question="$1" |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
104 |
# answer is a global set by ask |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
105 |
answer= |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
106 |
while [ -z "$answer" ]; do |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
107 |
ask "$question" 'n' |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
108 |
case $answer in |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
109 |
y|yes) answer=yes;; |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
110 |
n|no) answer=no;; |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
111 |
*) answer=;; |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
112 |
esac |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
113 |
done |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
114 |
} |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
115 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
116 |
function ok_to_proceed { |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
117 |
trap - ERR |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
118 |
yesno "$@" |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
119 |
if [[ "$answer" == 'no' ]]; then |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
120 |
echo "Exiting, no action performed" |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
121 |
exit 1 |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
122 |
fi |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
123 |
} |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
124 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
125 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
126 |
################################ Start of Main script ######################### |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
127 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
128 |
while getopts f flag |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
129 |
do |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
130 |
case "$flag" in |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
131 |
f) force=true ;; |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
132 |
\?) usage ;; |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
133 |
*) usage ;; |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
134 |
esac |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
135 |
done |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
136 |
shift $((OPTIND - 1)) |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
137 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
138 |
if [ -n "$1" ] ; then |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
139 |
echo "'$1'" = $1 |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
140 |
usage |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
141 |
fi |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
142 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
143 |
if [[ -f .setup ]] |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
144 |
then |
5866
683c5c035a79
23116175 Get the cyrus-sasl component ready for MIT-default Kerberos
Jan Parcel <jan.parcel@oracle.com>
parents:
5741
diff
changeset
|
145 |
print -u2 "Notice: $me already run" |
5741
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
146 |
exit 0 |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
147 |
fi |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
148 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
149 |
if [[ "$(/usr/bin/id -un)" != "root" ]] |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
150 |
then |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
151 |
print -u2 "Error: $me must be run as root. aborting..." |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
152 |
exit 1 |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
153 |
fi |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
154 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
155 |
# Check for the testsuites we need |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
156 |
if [[ ! -e ./testsuite || ! -e $THIRTYTWO/testsuite ]] |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
157 |
then |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
158 |
print -u2 \ |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
159 |
"Error: testsuite and $THIRTYTWO/testsuite must be in the local \ |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
160 |
directory, Aborting..." |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
161 |
exit 1 |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
162 |
fi |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
163 |
ln -s $THIRTYTWO 32 |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
164 |
|
5866
683c5c035a79
23116175 Get the cyrus-sasl component ready for MIT-default Kerberos
Jan Parcel <jan.parcel@oracle.com>
parents:
5741
diff
changeset
|
165 |
export SASL_PACKAGES_NEEDED="system/library/security/sasl/crammd5 \ |
5741
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
166 |
system/library/security/sasl/digestmd5 \ |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
167 |
system/library/security/sasl/anonymous " |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
168 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
169 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
170 |
export MYLOC=`pwd` |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
171 |
if [[ ! -f /etc/sasl2/TestSuite.conf ]] ; then |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
172 |
(cd /etc/sasl2 && ln -s $MYLOC/TestSuite.conf . ) |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
173 |
else |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
174 |
print -u2 "Please rename /etc/sasl2/TestSuite.conf and try again" |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
175 |
exit 1 |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
176 |
fi |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
177 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
178 |
if [[ ! -f /etc/resolv.conf ]] |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
179 |
then |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
180 |
print -u2 "Error: need to configure /etc/resolv.conf." |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
181 |
exit 1 |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
182 |
fi |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
183 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
184 |
if [[ -n "$fqdn" ]] |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
185 |
then |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
186 |
host=$fqdn |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
187 |
else |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
188 |
host=$(uname -n) |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
189 |
fi |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
190 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
191 |
if [[ -x /usr/sbin/nslookup ]] |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
192 |
then |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
193 |
/usr/sbin/nslookup $host 2>/dev/null | grep '^Name:' |\ |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
194 |
tr '[:upper:]' '[:lower:]' | read j fqdn |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
195 |
elif [[ -x /usr/sbin/dig ]] |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
196 |
then |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
197 |
/usr/sbin/dig +noall +search +answer $host 2>/dev/null |\ |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
198 |
tr '[:upper:]' '[:lower:]' | read fqdn j |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
199 |
fqdn=${fqdn%.} |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
200 |
fi |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
201 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
202 |
if ! ping $fqdn >/dev/null |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
203 |
then |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
204 |
print -u2 "Error: ping full hostname ${fqdn} failed. Aborting..." |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
205 |
exit 1 |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
206 |
fi |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
207 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
208 |
# get time and DNS running |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
209 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
210 |
if [[ ! -f /etc/inet/ntp.conf && -f /etc/inet/ntp.client ]] |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
211 |
then |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
212 |
cp /etc/inet/ntp.client /etc/inet/ntp.conf |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
213 |
fi |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
214 |
if [[ -f /etc/inet/ntp.conf ]] |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
215 |
then |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
216 |
svcadm enable -s svc:/network/ntp:default |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
217 |
fi |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
218 |
|
5866
683c5c035a79
23116175 Get the cyrus-sasl component ready for MIT-default Kerberos
Jan Parcel <jan.parcel@oracle.com>
parents:
5741
diff
changeset
|
219 |
export KMODE="mit" |
683c5c035a79
23116175 Get the cyrus-sasl component ready for MIT-default Kerberos
Jan Parcel <jan.parcel@oracle.com>
parents:
5741
diff
changeset
|
220 |
set -A MEDIATOR `pkg mediator -H kerberos5` |
5741
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
221 |
|
5866
683c5c035a79
23116175 Get the cyrus-sasl component ready for MIT-default Kerberos
Jan Parcel <jan.parcel@oracle.com>
parents:
5741
diff
changeset
|
222 |
case ${MEDIATOR[3]} in |
5741
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
223 |
|
5866
683c5c035a79
23116175 Get the cyrus-sasl component ready for MIT-default Kerberos
Jan Parcel <jan.parcel@oracle.com>
parents:
5741
diff
changeset
|
224 |
"solaris" ) # old kerberos configured |
683c5c035a79
23116175 Get the cyrus-sasl component ready for MIT-default Kerberos
Jan Parcel <jan.parcel@oracle.com>
parents:
5741
diff
changeset
|
225 |
KMODE="seam" |
683c5c035a79
23116175 Get the cyrus-sasl component ready for MIT-default Kerberos
Jan Parcel <jan.parcel@oracle.com>
parents:
5741
diff
changeset
|
226 |
;; |
5741
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
227 |
|
5866
683c5c035a79
23116175 Get the cyrus-sasl component ready for MIT-default Kerberos
Jan Parcel <jan.parcel@oracle.com>
parents:
5741
diff
changeset
|
228 |
*) # "MIT" or mediator does not exist |
683c5c035a79
23116175 Get the cyrus-sasl component ready for MIT-default Kerberos
Jan Parcel <jan.parcel@oracle.com>
parents:
5741
diff
changeset
|
229 |
KMODE="mit" |
683c5c035a79
23116175 Get the cyrus-sasl component ready for MIT-default Kerberos
Jan Parcel <jan.parcel@oracle.com>
parents:
5741
diff
changeset
|
230 |
;; |
683c5c035a79
23116175 Get the cyrus-sasl component ready for MIT-default Kerberos
Jan Parcel <jan.parcel@oracle.com>
parents:
5741
diff
changeset
|
231 |
esac |
5741
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
232 |
|
5866
683c5c035a79
23116175 Get the cyrus-sasl component ready for MIT-default Kerberos
Jan Parcel <jan.parcel@oracle.com>
parents:
5741
diff
changeset
|
233 |
. ./setup-for-$KMODE |
683c5c035a79
23116175 Get the cyrus-sasl component ready for MIT-default Kerberos
Jan Parcel <jan.parcel@oracle.com>
parents:
5741
diff
changeset
|
234 |
if (( $? != 0 )) |
5741
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
235 |
then |
5866
683c5c035a79
23116175 Get the cyrus-sasl component ready for MIT-default Kerberos
Jan Parcel <jan.parcel@oracle.com>
parents:
5741
diff
changeset
|
236 |
print -u2 "Setup failed" |
683c5c035a79
23116175 Get the cyrus-sasl component ready for MIT-default Kerberos
Jan Parcel <jan.parcel@oracle.com>
parents:
5741
diff
changeset
|
237 |
exit 1 |
5741
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
238 |
fi |
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
239 |
|
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
240 |
|
5866
683c5c035a79
23116175 Get the cyrus-sasl component ready for MIT-default Kerberos
Jan Parcel <jan.parcel@oracle.com>
parents:
5741
diff
changeset
|
241 |
print "$passwd" | kinit ken |
5741
b943514525d4
PSARC/2016/158 security-related packaging changes for libsasl2
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
242 |
touch .setup |