check that des expection works
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@23597 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
		
							
								
								
									
										144
									
								
								tests/kdc/check-des.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										144
									
								
								tests/kdc/check-des.in
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,144 @@ | |||||||
|  | #!/bin/sh | ||||||
|  | # | ||||||
|  | # Copyright (c) 2006 - 2008 Kungliga Tekniska H<>gskolan | ||||||
|  | # (Royal Institute of Technology, Stockholm, Sweden).  | ||||||
|  | # All rights reserved.  | ||||||
|  | # | ||||||
|  | # Redistribution and use in source and binary forms, with or without  | ||||||
|  | # modification, are permitted provided that the following conditions  | ||||||
|  | # are met:  | ||||||
|  | # | ||||||
|  | # 1. Redistributions of source code must retain the above copyright  | ||||||
|  | #    notice, this list of conditions and the following disclaimer.  | ||||||
|  | # | ||||||
|  | # 2. Redistributions in binary form must reproduce the above copyright  | ||||||
|  | #    notice, this list of conditions and the following disclaimer in the  | ||||||
|  | #    documentation and/or other materials provided with the distribution.  | ||||||
|  | # | ||||||
|  | # 3. Neither the name of the Institute nor the names of its contributors  | ||||||
|  | #    may be used to endorse or promote products derived from this software  | ||||||
|  | #    without specific prior written permission.  | ||||||
|  | # | ||||||
|  | # THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND  | ||||||
|  | # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE  | ||||||
|  | # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE  | ||||||
|  | # ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE  | ||||||
|  | # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL  | ||||||
|  | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS  | ||||||
|  | # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)  | ||||||
|  | # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT  | ||||||
|  | # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY  | ||||||
|  | # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF  | ||||||
|  | # SUCH DAMAGE.  | ||||||
|  | # | ||||||
|  | # $Id$ | ||||||
|  | # | ||||||
|  |  | ||||||
|  | srcdir="@srcdir@" | ||||||
|  | objdir="@objdir@" | ||||||
|  | EGREP="@EGREP@" | ||||||
|  |  | ||||||
|  | testfailed="echo test failed; cat messages.log; exit 1" | ||||||
|  |  | ||||||
|  | # If there is no useful db support compile in, disable test | ||||||
|  | ../db/have-db || exit 77 | ||||||
|  |  | ||||||
|  | R=TEST.H5L.SE | ||||||
|  | R2=TEST2.H5L.SE | ||||||
|  |  | ||||||
|  | port=@port@ | ||||||
|  |  | ||||||
|  | kadmin="${TESTS_ENVIRONMENT} ../../kadmin/kadmin -l -r $R" | ||||||
|  | kdc="${TESTS_ENVIRONMENT} ../../kdc/kdc --addresses=localhost -P $port" | ||||||
|  |  | ||||||
|  | server=afs/test.h5l.se | ||||||
|  | server2=host/server.test.h5l.se | ||||||
|  | cache="FILE:${objdir}/cache.krb5" | ||||||
|  |  | ||||||
|  | kinit="${TESTS_ENVIRONMENT} ../../kuser/kinit -c $cache --no-afslog" | ||||||
|  | klist="${TESTS_ENVIRONMENT} ../../kuser/klist -c $cache" | ||||||
|  | kgetcred="${TESTS_ENVIRONMENT} ../../kuser/kgetcred -c $cache" | ||||||
|  | kdestroy="${TESTS_ENVIRONMENT} ../../kuser/kdestroy -c $cache --no-unlog" | ||||||
|  |  | ||||||
|  | KRB5_CONFIG="${objdir}/krb5-no-weak.conf" | ||||||
|  | export KRB5_CONFIG | ||||||
|  |  | ||||||
|  | rm -f ${keytabfile} | ||||||
|  | rm -f current-db* | ||||||
|  | rm -f out-* | ||||||
|  | rm -f mkey.file* | ||||||
|  |  | ||||||
|  | > messages.log | ||||||
|  |  | ||||||
|  | echo Creating database | ||||||
|  | ${kadmin} \ | ||||||
|  |     init \ | ||||||
|  |     --realm-max-ticket-life=1day \ | ||||||
|  |     --realm-max-renewable-life=1month \ | ||||||
|  |     ${R} || exit 1 | ||||||
|  |  | ||||||
|  | ${kadmin} \ | ||||||
|  |     init \ | ||||||
|  |     --realm-max-ticket-life=1day \ | ||||||
|  |     --realm-max-renewable-life=1month \ | ||||||
|  |     ${R2} || exit 1 | ||||||
|  |  | ||||||
|  | ${kadmin} cpw -r krbtgt/${R}@${R} || exit 1 | ||||||
|  |  | ||||||
|  | ${kadmin} add -p foo --use-defaults foo@${R} || exit 1 | ||||||
|  | ${kadmin} add -p kaka --use-defaults ${server}@${R} || exit 1 | ||||||
|  | ${kadmin} add -p kaka --use-defaults ${server2}@${R} || exit 1 | ||||||
|  | ${kadmin} add_enctype -r ${server}@${R} des-cbc-crc || exit 1 | ||||||
|  | ${kadmin} add_enctype -r ${server2}@${R} des-cbc-crc || exit 1 | ||||||
|  |  | ||||||
|  | echo "Doing database check" | ||||||
|  | ${kadmin} check ${R} || exit 1 | ||||||
|  |  | ||||||
|  | echo foo > ${objdir}/foopassword | ||||||
|  |  | ||||||
|  | echo Starting kdc | ||||||
|  | ${kdc} & | ||||||
|  | kdcpid=$! | ||||||
|  |  | ||||||
|  | sh ${srcdir}/wait-kdc.sh | ||||||
|  | if [ "$?" != 0 ] ; then | ||||||
|  |     kill ${kdcpid} | ||||||
|  |     exit 1 | ||||||
|  | fi | ||||||
|  |  | ||||||
|  | trap "kill ${kdcpid}; echo signal killing kdc; exit 1;" EXIT | ||||||
|  |  | ||||||
|  | ec=0 | ||||||
|  |  | ||||||
|  | echo "Getting client initial tickets"; > messages.log | ||||||
|  | ${kinit} --password-file=${objdir}/foopassword foo@$R || \ | ||||||
|  | 	{ ec=1 ; eval "${testfailed}"; } | ||||||
|  | echo "Getting non des tickets (afs)"; > messages.log | ||||||
|  | ${kgetcred} ${server}@${R} || { ec=1 ; eval "${testfailed}"; } | ||||||
|  | ${klist} -v | grep des-cbc-crc > /dev/null && { ec=1 ; eval "${testfailed}"; } | ||||||
|  | echo "Getting non des tickets (host/)"; > messages.log | ||||||
|  | ${kgetcred} ${server2}@${R} || { ec=1 ; eval "${testfailed}"; } | ||||||
|  | ${klist} -v | grep des-cbc-crc > /dev/null && { ec=1 ; eval "${testfailed}"; } | ||||||
|  | ${kdestroy} | ||||||
|  |  | ||||||
|  |  | ||||||
|  |  | ||||||
|  | echo "Getting client initial tickets"; > messages.log | ||||||
|  | ${kinit} --password-file=${objdir}/foopassword foo@$R || \ | ||||||
|  | 	{ ec=1 ; eval "${testfailed}"; } | ||||||
|  | echo "Getting non des tickets (host/)"; > messages.log | ||||||
|  | ${kgetcred} -e des-cbc-crc ${server2}@${R} 2>/dev/null && \ | ||||||
|  |     { ec=1 ; eval "${testfailed}"; } | ||||||
|  | ${klist} -v | grep des-cbc-crc > /dev/null && { ec=1 ; eval "${testfailed}"; } | ||||||
|  | echo "Getting des tickets"; > messages.log | ||||||
|  | ${kgetcred} -e des-cbc-crc ${server}@${R} || { ec=1 ; eval "${testfailed}"; } | ||||||
|  | ${klist} -v | grep des-cbc-crc > /dev/null || { ec=1 ; eval "${testfailed}"; } | ||||||
|  |  | ||||||
|  | ${kdestroy} | ||||||
|  |  | ||||||
|  | echo "killing kdc (${kdcpid})" | ||||||
|  | kill $kdcpid || exit 1 | ||||||
|  |  | ||||||
|  | trap "" EXIT | ||||||
|  |  | ||||||
|  | exit $ec | ||||||
		Reference in New Issue
	
	Block a user
	 Love Hörnquist Åstrand
					Love Hörnquist Åstrand