@@ -46,8 +46,11 @@ classic)
46
46
esac
47
47
48
48
osversion=$( sw_vers -productVersion)
49
- osmajor=$( echo " $osversion " | awk -F. ' {print $2}' )
50
- [ " $osmajor " -lt 7 ] && exit 1
49
+ osmajor=$( echo " $osversion " | awk -F. ' {print $1}' )
50
+ osminor=$( echo " $osversion " | awk -F. ' {print $2}' )
51
+ ospatch=$( echo " $osversion " | awk -F. ' {print $3}' )
52
+ [ " $osmajor " -lt 10 ] && exit 1
53
+ [ " $osmajor " == 10 ] && [ " $osminor " -lt 7 ] && exit 1
51
54
52
55
get_current_service () {
53
56
services=$( networksetup -listnetworkserviceorder | grep -F ' Hardware Port' )
@@ -111,35 +114,37 @@ get_current_resolvers() {
111
114
}
112
115
113
116
flush_dns_cache () {
114
- if [ " $osmajor " -le 8 ]; then
115
- killall -HUP mDNSResponder 2> /dev/null
116
- elif [ " $osmajor " = 9 ]; then
117
+ if [" $osmajor " -ge 11 ]; then
117
118
dscacheutil -flushcache 2> /dev/null
118
- killall -HUP mDNSResponder 2> /dev/null
119
- elif [ " $osmajor " = 10 ]; then
120
- osminor=$( echo " $osversion " | awk -F. ' {print $3}' )
121
- if [ " $osminor " -le 3 ]; then
122
- discoveryutil mdnsflushcache 2> /dev/null
123
- discoveryutil udnsflushcaches 2> /dev/null
124
- else
119
+ else
120
+ if [ " $osminor " -le 8 ]; then
121
+ killall -HUP mDNSResponder 2> /dev/null
122
+ elif [ " $osminor " = 9 ]; then
125
123
dscacheutil -flushcache 2> /dev/null
126
124
killall -HUP mDNSResponder 2> /dev/null
127
- fi
128
- elif [ " $osmajor " = 11 ]; then
129
- dscacheutil -flushcache 2> /dev/null
130
- killall -HUP mDNSResponder 2> /dev/null
131
- elif [ " $osmajor " = 12 ]; then
132
- osminor=$( echo " $osversion " | awk -F. ' {print $3}' )
133
- if [ " $osminor " -le 2 ]; then
125
+ elif [ " $osminor " = 10 ]; then
126
+ if [ " $ospatch " -le 3 ]; then
127
+ discoveryutil mdnsflushcache 2> /dev/null
128
+ discoveryutil udnsflushcaches 2> /dev/null
129
+ else
130
+ dscacheutil -flushcache 2> /dev/null
131
+ killall -HUP mDNSResponder 2> /dev/null
132
+ fi
133
+ elif [ " $osminor " = 11 ]; then
134
+ dscacheutil -flushcache 2> /dev/null
134
135
killall -HUP mDNSResponder 2> /dev/null
136
+ elif [ " $osminor " = 12 ]; then
137
+ if [ " $ospatch " -le 2 ]; then
138
+ killall -HUP mDNSResponder 2> /dev/null
139
+ else
140
+ killall -HUP mDNSResponder 2> /dev/null
141
+ killall mDNSResponderHelper 2> /dev/null
142
+ dscacheutil -flushcache 2> /dev/null
143
+ fi
135
144
else
136
145
killall -HUP mDNSResponder 2> /dev/null
137
- killall mDNSResponderHelper 2> /dev/null
138
146
dscacheutil -flushcache 2> /dev/null
139
147
fi
140
- else
141
- killall -HUP mDNSResponder 2> /dev/null
142
- dscacheutil -flushcache 2> /dev/null
143
148
fi
144
149
}
145
150
0 commit comments