File tree 1 file changed +14
-0
lines changed
1 file changed +14
-0
lines changed Original file line number Diff line number Diff line change @@ -25,6 +25,17 @@ export KCTF_CTF_DIR="$(realpath --no-symlinks "$(dirname "${BASH_SOURCE-$0}")/..
25
25
export KCTF_BIN="${KCTF_CTF_DIR}/kctf/bin"
26
26
source "${KCTF_BIN}/kctf-log"
27
27
28
+ function _kctf_check_umask {
29
+ if [[ $((8#$(umask) & 8#755)) -ne 0 ]]; then
30
+ _kctf_log_err "umask is too prohibitive. Please set it to 022 when using kctf"
31
+ return 1
32
+ fi
33
+ if [[ "$(stat "${KCTF_BIN}/kctf-cluster" --format '%a')" -ne "755" ]]; then
34
+ _kctf_log_err "${KCTF_BIN}/kctf-cluster has unexpected permissions. Maybe a umask problem during checkout?"
35
+ return 1
36
+ fi
37
+ }
38
+
28
39
function _kctf_setup_environment {
29
40
KCTF_CONFIG_DIR="$(mktemp -d --tmpdir kctf.XXXXXXXXXX)"
30
41
if [[ $? -ne 0 ]]; then
@@ -150,6 +161,7 @@ function _kctf_error_cleanup {
150
161
unset -f _kctf_enable_completion
151
162
unset -f _kctf_set_active_challenge
152
163
unset -f _kctf_setup_environment
164
+ unset -f _kctf_check_umask
153
165
unset -f _kctf_activate
154
166
unset -f _kctf_chal_string
155
167
unset -f _kctf_log
@@ -229,6 +241,8 @@ function _kctf_chal_string {
229
241
}
230
242
231
243
function _kctf_activate {
244
+ _kctf_check_umask || return 1
245
+
232
246
if ! _kctf_setup_environment; then
233
247
_kctf_log_err 'error setting up the environment'
234
248
return 1
You can’t perform that action at this time.
0 commit comments