Ken Raeburn [Mon, 7 Feb 2000 04:15:58 +0000 (04:15 +0000)]
Frank Cusack's patches, first two sets. Should be no incompatible changes,
except perhaps for a client talking to both a new and old KDC? Several
improvements to guard against replay attacks when hardware preauth is in use,
though they require re-enabling the USE_RCACHE code, which I haven't done yet.
Several changes of mine for silencing a few compiler warnings, and adding some
debugging log messages while I track what's going on with the preauth code.
Ken Raeburn [Mon, 7 Feb 2000 00:18:02 +0000 (00:18 +0000)]
Frank Cusack changes, set 1, diffs 1-3 of 4
Rename "sam_passcode" field to "sam_sad". Add data to predicted-sam-response
structure, in part to (prepare to) help with replay detection.
Fix some memory allocation problems.
Danilo Almeida [Fri, 4 Feb 2000 21:26:02 +0000 (21:26 +0000)]
* kinit.c: Major revamp to support Kerberos 4 compatibility. Code
restructured to allow changes to support Kerberos 4 or Kerberos 5
only operation depending on whether dynamic libraries are
avialable. Explicit documentation and support files to make it
easy to do this will be forthcoming.
* Makefile.in: On Windows, use getopt.lib instead of getopt.obj,
and add support for getopt_long.
Danilo Almeida [Fri, 4 Feb 2000 21:24:18 +0000 (21:24 +0000)]
* klist.c: Major revamp to support Kerberos 4 compatibility. Code
restructured to allow changes to support Kerberos 4 or Kerberos 5
only operation depending on whether dynamic libraries are
avialable. Explicit documentation and support files to make it
easy to do this will be forthcoming.
Danilo Almeida [Fri, 4 Feb 2000 21:23:59 +0000 (21:23 +0000)]
* kdestroy.c: Major revamp to support Kerberos 4 compatibility. Code
restructured to allow changes to support Kerberos 4 or Kerberos 5
only operation depending on whether dynamic libraries are
avialable. Explicit documentation and support files to make it
easy to do this will be forthcoming.
Danilo Almeida [Fri, 4 Feb 2000 20:14:56 +0000 (20:14 +0000)]
* getopt.c, getopt_long.c, getopt.h: Update to latest BSD code
found (from NetBSD).
* Makefile.in: Build getopt.lib which includes getopt.obj and
getopt_long.obj.
Danilo Almeida [Tue, 1 Feb 2000 20:49:25 +0000 (20:49 +0000)]
* gss-client.c, gss-server.c, gss-misc.c: Include Windows headers
instead of Unix headers under Windows.
* gss-server.c (usage): Fix usage info to reflect that service_name is
required.
* gss-misc.c (read_all, write_all): Change write to send and read
to recv for portability.
(gettimeofday): Add an implementation of gettimeofday() for
Windows.
Ezra Peisach [Sat, 29 Jan 2000 00:56:34 +0000 (00:56 +0000)]
* kts_g_ent.c, ktsrvtab.h (krb5_ktsrvtab_get_entry): Change the
third argument to krb5_const_principal (from krb5_principal) to
agree with krb5_kts_ops entries.
Ken Raeburn [Thu, 27 Jan 2000 22:02:58 +0000 (22:02 +0000)]
Don't use obsolete autoconf macros. Fix up output formatting a little.
Rewrote tcl config handling to extract info from installed tclConfig.sh.
Configure-time option to control IPv6 configuration.
Configure-time option to enable DNS lookups.
Ken Raeburn [Thu, 27 Jan 2000 00:56:27 +0000 (00:56 +0000)]
* k5-int.h [!NEED_SOCKETS]: Declare (but do not define) struct sockaddr if
SOCK_DGRAM hasn't been defined yet.
(krb5_locate_srv_conf, krb5_locate_srv_dns): Declare.
(struct krb5_keytypes, struct krb5_cksumtypes): enc, hash, and keyhash provider
structures pointed to are now const.
Ken Raeburn [Sat, 22 Jan 2000 03:49:56 +0000 (03:49 +0000)]
Various changes to:
* make most non-changing data const
* silence "gcc -Wall -Werror" complaints on sparc-solaris2.6
** delete unused functions and variables
** change if(a=b) ... to if((a=b)) or if((a=b)!=0) [yeah, kinda gratuitous]
** insert extra braces for 2-D arrays
* some basic thread safety checks
Not changing afsstring2key.c until I make sure I've got some tests for it.
Currently, prng.c and afsstring2key.c, at least, still aren't thread-safe.
Danilo Almeida [Sat, 4 Dec 1999 03:26:01 +0000 (03:26 +0000)]
Make Windows Makefile target creation atomic.
Build clients/kvno for Windows. Also pull from 1.1 branch: Add
install target for windows. Remove references to unused mit
directory.
Danilo Almeida [Sat, 4 Dec 1999 02:02:15 +0000 (02:02 +0000)]
Pull changes from krb5-1-1 branch: a) Make is so
that all C flags are the same and so that the only difference
between EXE and DLL builds are the DLL_LINKOPTS and EXE_LINKOPTS
linker options. b) Fix DNS error messages to wshelper instead of
version server. c) Fix DNS flags it does not try to depend on mit
dir. Define NULL so we can do directory existence checks via the
shell under both NT and 9x.
Tom Yu [Mon, 1 Nov 1999 21:08:55 +0000 (21:08 +0000)]
* krb5_decode.c (begin_structure): Update to deal with indefinite
encodings better; also call asn1_get_sequence().
* asn1_k_decode.c (sequence_of): Update to deal with indefinite
encodings better.
(begin_structure): Update to deal with indefinite encodings
better; also call asn1_get_sequence().
* asn1_get.h: Update prototypes for asn1_get_tag_indef(),
asn1_get_tag(), asn1_get_sequence(), asn1_get_length().
* asn1_get.c (asn1_get_tag_indef): New function; get tag info,
lengths, etc. as well as flag indicating whether the length is
indefinite.
(asn1_get_tag): Modify to just call asn1_get_tag_indef().
(asn1_get_sequence): Call asn1_get_tag_indef() in order to
determine whether encoding is indefinite length.
(asn1_get_length): Add "indef" arg to indicate whether an encoding
has an indefinite length.
* asn1buf.h: Update asn1buf_imbed() prototype.
* asn1buf.c (asn1buf_imbed): Add "indef" arg so that we don't
treat a definite zero-length encoding as an indefinite encoding.
Ken Raeburn [Fri, 29 Oct 1999 19:25:10 +0000 (19:25 +0000)]
* dispatch.c (dispatch): Make message in lookaside case less suggestive of
replay attacks, since it can result from normal packet loss causing
retransmissions.
* error_message.c, error_table.h: Added support to use ErrorLib
to get MIT Support Library and Mac OS Toolbox error codes
(similar to the way windows does it).
Wilfredo Sanchez [Tue, 26 Oct 1999 01:49:53 +0000 (01:49 +0000)]
Clean up usage of CFLAGS, CPPFLAGS, DEFS, DEFINES, LOCAL_INCLUDES such
that one can override CFLAGS from the command line without losing CPP
search patchs and defines. Some associated Makefile cleanup.
Ken Raeburn [Fri, 22 Oct 1999 22:17:35 +0000 (22:17 +0000)]
Silence gcc longjmp warnings:
* prompter.c (krb5_prompter_posix): Make ointrfunc, fd, and errcode volatile.
* promptusr.c (krb5_os_get_tty_uio): Make ointrfunc and retval volatile.
* read_pwd.c (krb5_read_password): Make ointrfunc volatile. Fix volatile decl
for readin_string (pointer is volatile, doesn't point to volatile).
* changepw.c (krb5_change_password): Wait only two minutes, not indefinitely,
for a response from the kpasswd server.