Tue May  6 16:50:45 1997  Ken Raeburn  <raeburn@cygnus.com>

	* sysconfig.tcl (update_services, update_inetd): Save old version
	of config file before installing new one.

	* ui.tcl (admin_principal): New variable.
	(get_admin_principal, v.local_principal): New procs.
	(top level): Before asking for admin password, first ask for the
	admin principal name.
	(kadmin_connect): Use $admin_principal as the principal to
	authenticate as.
	* db.tcl (create_admin_inst): Use $admin_principal.

Mon Apr 21 14:29:33 1997  Ken Raeburn  <raeburn@cygnus.com>

	* interact.tcl (v.kdcaddr, v.kdcaddr-or-empty): New procs.  Accept
	hostname:port form.  Not used yet.

	* ui.tcl: If kadm5_ktlist reports an error, display it in friendly
	form and quit.
	(fixperms): New proc, moved permission/ownership changes here from
	top-level code.
	(kadmin_connect): New proc, moved code from top level.  Top level
	now only connects to admin server if key extraction is needed.

Mon Mar 31 23:27:44 1997  Marc Horowitz  <marc@cygnus.com>

	* profile.tcl: remove ticket_lifetime stuff.  it doesn't do anything.

	* ui.tcl: remove ticket_lifetime stuff.  it doesn't do anything.
  	add des-cbc-crc:v4 to the supported_enctypes list, so that v4 will
 	work out of the box.

Mon Mar 31 17:00:32 1997  Ken Raeburn  <raeburn@cygnus.com>

	* do-kprop.in: Rewritten based on Jeff's comments.

	* ui.tcl: For slave KDC, enable service "krb5_prop", not the
	non-existent "kprop".

Tue Mar 25 23:08:14 1997  Ken Raeburn  <raeburn@cygnus.com>

	* db.tcl (create_db, create_admin_inst): Don't need to supply
	-force to "file delete".
	(load_db): New proc.
	(setup_database): New proc, broken out from ui.tcl.  Don't
	continue if database already exists and user doesn't want it
	removed.

	* profile.tcl (krb5_setup_default_config): Get
	default_ticket_lifetime from global environment.

	* sysconfig.tcl (unparse_inetd_line): Less horizontal whitespace.
	(update_inetd): pkg is global.

	* ui.tcl: More message tweaks.  Call setup_database.  Delete
	kadm5.keytab before creating.
	(fini): New proc.

Mon Mar 24 17:15:55 1997  Ken Raeburn  <raeburn@cygnus.com>

	* TODO: New file.

Thu Mar 20 20:11:05 1997  Ken Raeburn  <raeburn@cygnus.com>

	* ui.tcl (configure_symlink): New proc.  Asks user, also updates
	and checks krb5.conf.

	* sysconfig.tcl (krb5_daemon_invocation): Pass -k to kshd.
	(show_new_inetd, update_inetd): Add msg about sending SIGHUP.
	(update_services): Only put message about needing the entries if
	we're actually building a configuration that will need them.

	* ui.tcl: More message tweaks, at Andrea's suggestion.

	* profile.tcl (krb5_setup_default_config): Use default_set_pair.
	Set default enctypes, if not already set.

	* ui.tcl: Put line break in "creating host key" message.  Remove
	redundant message about slave propagation.  Save krb5.conf before
	asking about system install type.

Wed Mar 19 15:59:40 1997  Ken Raeburn  <raeburn@cygnus.com>

	* ui.tcl: Set setuid bits on programs that should have them, after
	fixing ownership and other permission issues.

Tue Mar 18 14:33:47 1997  Ken Raeburn  <raeburn@cygnus.com>

	* do-kprop.in: New file.
	* Makefile.in (install-tcl): Install it.
	* ui.tcl: For master KDC with slaves, run sed on do-kprop.in to
	make a useable slave propagation script, and ask the user to
	arrange for it to be run.  Tweak messages yet again.  Don't start
	interactive loop at end.

	* ui.tcl: Set up kpropd.acl for slave KDC system.

	* sysconfig.tcl (update_services): Tweak messages.
	(krb5_daemon_invocation): Include kprop info.
	(show_new_inetd): New proc, split out from update_inetd.
	(update_inetd): Write and replace inetd.conf; call show_new_inetd
	in case of failure, as well as when user doesn't want the work
	done automatically.

	* ui.tcl: Default admin server to first KDC if not already
	defined.  Fix evaluation time of symlink-change question.  Quit
	config early if appclient only, instead of repeating conditionals
	for the rest.  Don't create KDC db if it already exists.  Create
	admin/admin principal separately from db, and only on master KDC.
	Get admin/admin password for all non-appclient installs.
	Automatically add kprop to inetd list if slave server.  Start
	master KDC daemons.  Get a host key if needed.  Remind user to
	have rc script run at boot time for KDCs.

	* db.tcl (get_temp_file, create_admin_inst): New procs, split out
	from create_db.
	(create_db): Now takes only one arg.

	* rc-master.in, rc-slave.in: New files.
	* Makefile.in (rc.master, rc.slave): New targets.
	(PROGS): Include them.

Mon Mar 17 01:15:48 1997  Ken Raeburn  <raeburn@raeburn.org>

	* ui.tcl: Reword symbolic-link message.

	* sysconfig.tcl (remove_service): Add protocol argument, so
	removing a tcp service doesn't affect udp services, etc.
	(add_service): Pass protocol to remove_service.

Fri Mar 14 15:54:57 1997  Ken Raeburn  <raeburn@cygnus.com>

	* Makefile.in (SCRIPTS): New variable.
	(inst-config): Use $(SCRIPTS).

	* sysconfig.tcl: New file.  Routines for parsing, updating,
	writing /etc/services and /etc/inetd.conf.
	* interact.tcl: New file.
	* Makefile.in (SCRIPTS): List them.
	* ui.tcl (ask, v.realm, v.yes-no, ask-yesno, v.hostname-or-addr,
	v.hostname-addr-or-empty, askpw): Moved to interact.tcl.

	* ui.tcl: Save current Kerberos version in kerbnet-config stanza
	of krb5.conf.  Update /usr/cygnus/kerbnet symlink.  Update
	/etc/services and /etc/inetd.conf (for app servers).  For KDCs,
	make "kdc" subdir in localstatedir and create lib/krb5kdc symlink
	to it.  Removed some debugging code at end.  Tweak printed
	messages.
	(symlink_name): New var.
	(symlink): New proc.

	* profile.tcl (remove_values): New proc.
	(get_admin_server): Fix variable name references.

	* configure.in: Look for ui.tcl instead of kninstall-sh.

Thu Mar 13 19:19:12 1997  Ken Raeburn  <raeburn@cygnus.com>

	* Makefile.in (install-tcl): Use $(PROGS).
	(PROGS): Delete kninstall.
	(kninstall): Delete rule.
	* kninstall-sh: Deleted.  Not needed for ftp-/web-based installs;
	cd-rom installs won't be happening this release.

	* debug.tcl: New file.
	* Makefile.in (inst-config): Include debug.tcl.

	* profile.tcl (default_set_pair, default_set_realm_pair): New
	procs; set values only if they're not already set.
	(get_kdcs, get_admin_server): New procs, for fetching realm data.
	(setup): Deleted.
	(prof): Moved to debug.tcl.

	* Makefile.in (INSTDIR): Don't use / after $(DESTDIR).

	* db.tcl (kdb5_util_prog, kadmin_local_prog): Set from prefix
	value.
	(create_db.run): Check output for full-string match against
	supplied regexp, not partial substring.  If an initial-string
	match is made but extra text was returned, report only the extra
	text as the unexpected output.
	(create_db): Fix test for writable temporary directory.  Stick
	realm name into expected-output arrays.

	* header-sh: Never choose tk interface.

	* ui.tcl: Use krb5tcl_have_system_privs instead of running
	"whoami"; exit if not successful.  Write profiles out.  Get some
	defaults from pre-existing profiles, if found.  Permit slave KDC
	configuration.  Ask for local state dir, offering /var/kerbnet as
	the default.  Only set kdc values if not already set.
	(ask): Quote square brackets in string surrounding default value.
	(ask-yesno): Only look at first character of answer.
	(askpw): New proc, calls krb5tcl_read_password until successful.
	(write_profile, save_krb5_conf, save_kdc_conf): New procs.
	(v.install-type): Accept 1-4.
	(v.localstatedir, setup_localstatedir): New procs.
	(interactive): Moved to debug.tcl.

Fri Mar  7 01:55:03 1997  Ken Raeburn  <raeburn@raeburn.org>

	* db.tcl (create_db): Shorten temp file name, move the pid
	earlier, and delete the file when finished.

	* kninstall-sh: Allow specification of host type on command line.

Fri Mar  7 01:33:43 1997  Ken Raeburn  <raeburn@cygnus.com>

	* kninstall-sh: New file.  Shell script for unpacking and firing
	up a configuration tool.

	* header-sh: New file.  Header for Tcl script with magic
	incantation to get shell to load script, select interpreter, and
	fire it up on the current file.
	* profile.tcl, db.tcl, ui.tcl: New files.  Tool for configuring a
	new installation; some hooks for dealing with previous
	installations.  Not complete; just checkpointing.

	* configure.in: New file.
	* Makefile.in: New file.  Build and install 'em if Tcl is found.
