private void readConfigFile(final String filename) {
		File configFile = null;
		BufferedReader br = null;

		String temp;

		configFile = new File(filename);

		if (configFile != null) {
			try {
				br = new BufferedReader(new FileReader(configFile));
			}
			catch (final FileNotFoundException fnfe) {
				// TODO is this debug message adequate?
				System.out.println("Config File does not exist.");
				System.out.println("--- Stack Trace ---");
				fnfe.printStackTrace();
			}

			if (br == null)
				return;

			try {
				String option = "";
				String value = "";
				int n = 0;

				while (br.ready()) {
					temp = br.readLine();

					if (temp != null) {
						final String[] temp1 = temp.split("=");

						option = temp1[0];

						if (temp1.length == 2) value = temp1[1];

						switch (option) {
						case "debug":
							n = Utils.toInt(value, -1);
							if (n == 1) debug = true;
							break;
						case "logging-enabled":
							if (value.equals("true")) logging = true;
						case "port":
							n = Utils.toInt(value, -1);
							if (n != 1 && (n > 1024 && n < 9999)) {
								port = n;
							}
						case "int-login":
							if (value.equals("true")) int_login = true;
							break;
						default:
							break;
						}
					}
				}

				br.close();
			}
			catch (final IOException ioe) {
				System.out.println("--- Stack Trace ---");
				ioe.printStackTrace();
			}
		}
	}