You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by er...@apache.org on 2004/11/05 00:11:44 UTC

svn commit: rev 56629 - incubator/directory/kerberos/trunk/kerberos/src/test/org/apache/kerberos/kdc

Author: erodriguez
Date: Thu Nov  4 15:11:43 2004
New Revision: 56629

Added:
   incubator/directory/kerberos/trunk/kerberos/src/test/org/apache/kerberos/kdc/TestUtils.java
Log:
Util code for running Kerberos test.

Added: incubator/directory/kerberos/trunk/kerberos/src/test/org/apache/kerberos/kdc/TestUtils.java
==============================================================================
--- (empty file)
+++ incubator/directory/kerberos/trunk/kerberos/src/test/org/apache/kerberos/kdc/TestUtils.java	Thu Nov  4 15:11:43 2004
@@ -0,0 +1,174 @@
+/*
+ *   Copyright 2004 The Apache Software Foundation
+ *
+ *   Licensed under the Apache License, Version 2.0 (the "License");
+ *   you may not use this file except in compliance with the License.
+ *   You may obtain a copy of the License at
+ *
+ *       http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing, software
+ *   distributed under the License is distributed on an "AS IS" BASIS,
+ *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *   See the License for the specific language governing permissions and
+ *   limitations under the License.
+ *
+ */
+package org.apache.kerberos.kdc;
+
+import java.io.*;
+
+public class TestUtils {
+
+	public static char[] getControlDocument(String resource) throws IOException
+    {
+		InputStream is = ClassLoader.getSystemClassLoader().getResourceAsStream(resource);
+
+		Reader reader = new InputStreamReader(new BufferedInputStream(is));
+
+		CharArrayWriter writer = new CharArrayWriter();
+
+		try {
+			char[] buf = new char[2048];
+			int len = 0;
+			while (len >= 0) {
+				len = reader.read(buf);
+				if (len > 0)
+					writer.write(buf, 0, len);
+			}
+		} finally {
+			try {
+				reader.close();
+			} catch (IOException ioe) {
+			}
+		}
+
+		char[] isca = writer.toCharArray();
+		return isca;
+	}
+
+	public static byte[] getBytesFromResource(String resource) throws IOException
+    {
+		InputStream is = ClassLoader.getSystemClassLoader().getResourceAsStream(resource);
+		
+		BufferedInputStream stream = new BufferedInputStream(is);
+		int len = stream.available();
+		byte[] bytes = new byte[len];
+		stream.read(bytes, 0, len);
+		return bytes;
+	}
+	
+	public static void hexdump(byte[] data)
+    {
+		hexdump(data, true);
+	}
+	
+	public static void hexdump(byte[] data, boolean delimit)
+    {
+		String delimiter = new String("-------------------------------------------------");
+		
+		if (delimit)
+			System.out.println(delimiter);
+		
+		int lineLength = 0;
+		for (int i = 0;i < data.length; i++) {
+			System.out.print(byte2hexString(data[i]) + " ");
+			lineLength++;
+			if (lineLength == 8) {
+				System.out.print("  ");
+			}
+			if (lineLength == 16) {
+				System.out.println();
+				lineLength = 0;
+			}
+		}
+		if (delimit) {
+			System.out.println();
+			System.out.println(delimiter);
+		}
+	}
+
+	public static final String[] hex_digit =
+    {
+		"0", "1", "2", "3", "4", "5", "6", "7",
+		"8", "9", "a", "b", "c", "d", "e", "f"
+	};
+
+	public static String byte2hexString(byte x)
+    {
+		String s = "";
+		for (int i = 0; i < 2; i++) {
+			s = hex_digit[(((x) & 0xff) & (15 << (i * 4))) >>> (i * 4)] + s;
+		}
+		return s;
+	}
+
+	public static String int2hexString(int x)
+    {
+		String s = "";
+		for (int i = 0; i < 8; i++) {
+			s = hex_digit[(x & (15 << (i * 4))) >>> (i * 4)] + s;
+		}
+		return s;
+	}
+
+	public static String int2binString(int x)
+    {
+		String s = "";
+		for (int i = 0; i < 32; i++) {
+			if ((i > 0) && (i % 4 == 0)) s = " " + s;
+			s = hex_digit[(x & (1 << i)) >>> i] + s;
+		}
+		return s;
+	}
+
+	public static String long2hexString(long x)
+    {
+		String s = "";
+		for (int i = 0; i < 16; i++) {
+			s = hex_digit[(int)((x & (15L << (i * 4))) >>> (i * 4))] + s;
+		}
+		return s;
+	}
+
+	public static String long2binString(long x)
+    {
+		String s = "";
+		for (int i = 0; i < 64; i++) {
+			if ((i > 0) && (i % 4 == 0)) s = " " + s;
+			s = hex_digit[(int)((x & (1L << i)) >>> i)] + s;
+		}
+		return s;
+	}
+
+	public static String byte2hexString(byte[] input)
+    {
+		return byte2hexString(input, 0, input.length);
+	}
+
+	public static String byte2hexString(byte[] input, int offset)
+    {
+		return byte2hexString(input, offset, input.length);
+	}
+
+	public static String byte2hexString(byte[] input, int offset, int length)
+    {
+		String result = "";
+		for (int i = 0; i < length; i++) {
+			if (i + offset < input.length) {
+				result += byte2hexString(input[i + offset]);
+			}
+		}
+		return result;
+	}
+
+   	public static byte[] getBytesFromHexString(String hex)
+    {
+		byte[] bts = new byte[hex.length() / 2];
+		for (int i = 0; i < bts.length; i++) {
+			bts[i] = (byte) Integer.parseInt(hex.substring(2*i, 2*i+2), 16);
+		}
+		return bts;
+	}
+}
+