Blame src/lib/kadm5/unit-test/api.current/mod-principal-v2.exp

Packit fd8b60
load_lib lib.t
Packit fd8b60
api_exit
Packit fd8b60
api_start
Packit fd8b60
Packit fd8b60
test "modify-principal 100-105"
Packit fd8b60
proc test100_104 {} {
Packit fd8b60
    global test
Packit fd8b60
    global prompt
Packit fd8b60
    
Packit fd8b60
    if {! ((  [principal_exists "$test/a"]) ||
Packit fd8b60
	   [create_principal "$test/a"])} {
Packit fd8b60
	    error_and_restart "$test: couldn't create principal \"$test/a\""
Packit fd8b60
	    return
Packit fd8b60
    }
Packit fd8b60
Packit fd8b60
    if {! [cmd {
Packit fd8b60
	kadm5_init admin admin $KADM5_ADMIN_SERVICE null \
Packit fd8b60
		$KADM5_STRUCT_VERSION $KADM5_API_VERSION_3 \
Packit fd8b60
		server_handle
Packit fd8b60
    }]} {
Packit fd8b60
	perror "$test: unexpected failure in init"
Packit fd8b60
	return
Packit fd8b60
    }
Packit fd8b60
Packit fd8b60
    set origtest "$test"
Packit fd8b60
Packit fd8b60
    test "modify-principal 100"
Packit fd8b60
    one_line_succeed_test [format {
Packit fd8b60
	kadm5_modify_principal $server_handle [simple_principal "%s/a"] \
Packit fd8b60
		{KADM5_MAX_RLIFE}
Packit fd8b60
    } $origtest]
Packit fd8b60
Packit fd8b60
    test "modify-principal 101"
Packit fd8b60
    one_line_fail_test [format {
Packit fd8b60
	kadm5_modify_principal $server_handle [simple_principal "%s/a"] \
Packit fd8b60
		{KADM5_LAST_SUCCESS}
Packit fd8b60
    } $origtest] "BAD_MASK"
Packit fd8b60
Packit fd8b60
    test "modify-principal 102"
Packit fd8b60
    one_line_fail_test [format {
Packit fd8b60
	kadm5_modify_principal $server_handle [simple_principal "%s/a"] \
Packit fd8b60
		{KADM5_LAST_FAILED}
Packit fd8b60
    } $origtest] "BAD_MASK"
Packit fd8b60
Packit fd8b60
#    This is now permitted to reset lockout count
Packit fd8b60
#    test "modify-principal 103"
Packit fd8b60
#    one_line_fail_test [format {
Packit fd8b60
#	kadm5_modify_principal $server_handle [simple_principal "%s/a"] \
Packit fd8b60
#		{KADM5_FAIL_AUTH_COUNT}
Packit fd8b60
#    } $origtest] "BAD_MASK"
Packit fd8b60
Packit fd8b60
    test "modify-principal 103.5"
Packit fd8b60
    one_line_fail_test [format {
Packit fd8b60
	kadm5_modify_principal $server_handle [simple_principal "%s/a"] \
Packit fd8b60
		{KADM5_KEY_DATA}
Packit fd8b60
    } $origtest] "BAD_MASK"
Packit fd8b60
Packit fd8b60
    test "modify-principal 105"
Packit fd8b60
    one_line_fail_test [format {
Packit fd8b60
	kadm5_modify_principal $server_handle \
Packit fd8b60
            "{%s/a} 0 0 0 0 {%s/a} 0 0 0 0 null 0 0 0 0 0 0 1 {} {{1 1 x}}" \
Packit fd8b60
		{KADM5_TL_DATA}
Packit fd8b60
    } $origtest $origtest] "BAD_TL_TYPE"
Packit fd8b60
Packit fd8b60
    test "modify-principal 100,104"
Packit fd8b60
    if { ! [cmd [format {
Packit fd8b60
	kadm5_modify_principal $server_handle \
Packit fd8b60
		"{%s/a} 0 0 0 0 {%s/a} 0 0 0 0 null 0 88 0 0 0 0 1 {} {{990 6 foobar}}" \
Packit fd8b60
		{KADM5_MAX_RLIFE KADM5_TL_DATA}
Packit fd8b60
    } $origtest $origtest]]} {
Packit fd8b60
	fail "$test: cannot set MAX_RLIFE or TL_DATA"
Packit fd8b60
	return
Packit fd8b60
    }
Packit fd8b60
    if {! [cmd [format {
Packit fd8b60
	kadm5_get_principal $server_handle "%s/a" principal {KADM5_PRINCIPAL_NORMAL_MASK KADM5_TL_DATA}
Packit fd8b60
    } $origtest]]} {
Packit fd8b60
	error_and_restart "$test: could not retrieve principal"
Packit fd8b60
	return
Packit fd8b60
    }
Packit fd8b60
    send "lindex \$principal 12\n"
Packit fd8b60
    expect {
Packit fd8b60
	-re "(\[0-9\]+)\n$prompt$" {set rlife $expect_out(1,string) }
Packit fd8b60
	timeout {
Packit fd8b60
	    error_and_restart "$test: timeout getting rlife"
Packit fd8b60
	    return
Packit fd8b60
	}
Packit fd8b60
	eof {
Packit fd8b60
	    error_and_restart "$test: eof getting rlife"
Packit fd8b60
	    return
Packit fd8b60
	}
Packit fd8b60
    }
Packit fd8b60
    send "lindex \$principal 19\n"
Packit fd8b60
    expect {
Packit fd8b60
	-re "\(\{.*\}\)\n$prompt$" {set tl $expect_out(1,string) }
Packit fd8b60
	timeout {
Packit fd8b60
	    error_and_restart "$test: timeout getting tl_data"
Packit fd8b60
	    return
Packit fd8b60
	}
Packit fd8b60
	eof {
Packit fd8b60
	    error_and_restart "$test: eof getting tl_data"
Packit fd8b60
	    return
Packit fd8b60
	}
Packit fd8b60
    }
Packit fd8b60
    if {($rlife == 88) && ($tl == "{{990 6 foobar}}")} {
Packit fd8b60
	pass "$test"
Packit fd8b60
    } else {
Packit fd8b60
	fail "$test: $rlife should be 88, $tl should be {{990 6 foobar}}"
Packit fd8b60
    }
Packit fd8b60
Packit fd8b60
    if { ! [cmd {kadm5_destroy $server_handle}]} {
Packit fd8b60
	perror "$test: unexpected failure in destroy"
Packit fd8b60
	return
Packit fd8b60
    }
Packit fd8b60
}
Packit fd8b60
test100_104