Mon May 26 21:56:36 1997  Michael Graff  <explorer@cygnus.com>

	* tcl_kadm5.c: on second thought, write the _none functions in
	tcl, not c.

Fri May 16 18:28:16 1997  Michael Graff  <explorer@cygnus.com>

	* tcl_kadm5.c: add tcl_krb5_strtodur_none and _durtostr_none
	and export them.  These versions display "none" when the
	value is 0, and accept "none" to mean 0.  Also, fix duration
	handling in general.

Mon May 12 16:34:41 1997  Marc Horowitz  <marc@cygnus.com>

	* tcl_kadm5.c (tcl_kadm5_addprinc): dtrt if the user requests
 	disallow_tix when creating the principal

Tue May  6 17:32:18 1997  Ken Raeburn  <raeburn@cygnus.com>

	* profile.l: Remove comment before {NL} rule; it confuses Solaris
	lex.

Wed Apr 16 16:28:37 1997  Ken Raeburn  <raeburn@cygnus.com>

	* profile.l (write_spaces, write_string): New functions.
	(write_data): Now takes Tcl_Channel argument instead of FILE*.
	Call write_spaces.
	(write_list): Now takes Tcl_Channel argument.
	(krb5tcl_write_profile): Open file as a Tcl_Channel instead of as
	a FILE*.
	(krb5tcl_put_profile): New function, writes data to (optional)
	specified Tcl file handle.
	(krb5tcl_init_profile): Make krb5tcl_put_profile available.

	* tcl_kadm5.c: Include context.h.
	(tcl_kadm5_set_error): Added MSG argument, an optional string to
	be put before the error-code string.  Most callers changed to pass
	null pointer.
	(tcl_kadm5_ktlist): Use tcl krb5 context, not kadm5 handle, so
	admin password won't be required to examine local keytab.  Pass
	string describing current action in all set_error calls.
	(Tcl_kadm5_init): Changed argument to krb5tcl_context instead of
	Tcl_Interp.  Use krb5tcl_add_proc to set up kadm5_ktlist.
	* init.c (Krb5tcl_Init): Pass Tcl_kadm5_init tctx, not interp.

Fri Mar 28 20:08:29 1997  Ken Raeburn  <raeburn@cygnus.com>

	* profile.l (parse_profile): Don't call setlinebuf.

	* misc.c (h_errno): Declare.

Wed Mar 26 17:51:37 1997  Ken Raeburn  <raeburn@cygnus.com>

	* context.h (krb5tcl_context): Don't set bitfield size on non-int
	fields, even unsigned long.

Wed Mar 26 16:34:11 1997  Michael Graff  <explorer@cygnus.com>

	* tcl_kadm5.c: use sprintf(cp, ...) then cp += strlen(cp), not 
	cp += sprintf(cp, ...)

Wed Mar 26 01:13:08 1997  Ken Raeburn  <raeburn@cygnus.com>

	* Makefile.in (CFLAGS): Look for include files in srcdir too.

	* profile.l: Remove most comments in lexer definition, or more
	them into actions; the Irix 6.2 lex gets confused otherwise.
	(yywrap): Don't use parens in #undef.  Duh.

Fri Mar 14 11:04:59 1997  Stephen Peters  <speters@cygnus.com>

	* tcl_kadm5.c (tcl_krb5_get_default_realm): Allow realm
	  lookup without running kadm5_init first.

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

	* misc.c (have_system_privs, read_password, system_only_write):
	New functions.
	(krb5tcl_init_misc): Make them available to Tcl code.
	(bad_args): New utility function, for complaining about bad
	usage.
	(canonicalize_hostname): Use it.

Fri Mar  7 01:29:46 1997  Ken Raeburn  <raeburn@raeburn.org>

	* init.c (Krb5tcl_Init): Break out init string into separate
	variable, and guarantee that it will be writeable at run time.
	The Tcl library requires this.

Wed Mar  5 14:14:33 1997  Ken Raeburn  <raeburn@cygnus.com>

	* misc.c: New file.  So far, only one function, for hostname
	canonicalization.
	* Makefile.in (SRCS, OBJS): Include it.
	* init.c (Krb5tcl_Init): Initialize refcount to zero.  Initialize
	misc functions.  Set krb5_path(tcllib), and if krb5_init.tcl is
	found there, source it.

Mon Mar  3 15:29:07 1997  Michael Graff  <explorer@cygnus.com>

	* tcl_kadm5.c: find (and parse) -kvno on modprinc and addprinc.
	Add krb5_get_default_realm (returns a string with the default
	realm in it)

Wed Feb 26 15:38:23 1997  Ken Raeburn  <raeburn@cygnus.com>

	* Makefile.in (profile.c): Don't use -f with $(RM).

	* profile.l: Include ctype.h.  Print all error messages from lexer
	into a buffer; omit any strings that may be unbounded.
	(parse_profile): Add argument for error-message buffer.
	(wrong_num_parms): Utility routine for krb5tcl_write_profile.
	(is_okay_tagname, is_okay_value): New routines for performing
	validation.
	(write_data, write_list): Send error messages back to tcl, and
	return TCL_ERROR.
	(krb5tcl_read_profile, krb5tcl_write_profile,
	krb5tcl_is_okay_tagname, krb5tcl_is_okay_value): New functions,
	for tcl interface to Kerberos profile functions.
	(krb5tcl_init_profile): New function; make the above known to the
	interpreter.

	* context.h: New file.
	* init.c: New file.  Init function is now named Krb5tcl_Init, for
	consistency with Tcl naming conventions.  Calls Tcl_kadm5_init and
	krb5tcl_init_profile.  Also sets some Tcl variables using values
	extracted from the Kerberos library.  Create ClientData used by
	Kerberos interface.  Define functions for adding procs that use
	that client data, and for cleaning up at exit.
	* Makefile.in (SRCS, OBJS): Include it.
	(CFLAGS): Define string 

	* Makefile.in (getdate.c): Generate using yyfix.
	(getdate.$(OBJEXT)): Depend on it.
	* getdate.y (yyparse, yylex, yyerror): Don't define these to
	hide the names.

Mon Feb 24 10:03:43 1997  Michael Graff  <explorer@cygnus.com>

	* tcl_kadm5.c (tcl_kadm5_init): Use krb5_kt_register to register
	the writable keytab operations.

