1 Sun Feb 2 20:57:15 1997 Richard Basch <basch@lehman.com>
3 * serialize.c: Added FAR declarations to pointer arguments for
4 all functions declared as KRB5_DLLIMP.
6 Thu Jan 30 21:44:37 1997 Richard Basch <basch@lehman.com>
9 Export more crypto-layer functions:
10 krb5_encrypt, krb5_decrypt, krb5_eblock_enctype,
11 krb5_process_key, krb5_finish_key, krb5_string_to_key,
12 krb5_init_random_key, krb5_finish_random_key, krb5_random_key
14 Mon Dec 23 17:20:03 1996 Theodore Y. Ts'o <tytso@mit.edu>
16 * Makefile.in (SRCS): Add brand.c to the SRCS line so that the
17 kerbsrc.mac.tar includes brand.c
19 Sat Dec 21 01:26:11 1996 Theodore Y. Ts'o <tytso@mit.edu>
21 * brand.c: New file, which allows a release engineer to "brand"
22 the krb5 library or a binary application program
23 statically linked against the krb5 library. This file is
24 statically included by init_ctx.c, to force it be in a
25 binary library or application program.
27 * init_ctx.c (krb5_init_context): Use new call krb5_vercheck() for
28 Windows timebomb checking; this call returns an error
29 code, which is returned to the user if the timebomb should
32 Thu Nov 21 14:55:16 EST 1996 Richard Basch <basch@lehman.com>
34 * Makefile.in: win32 build
36 * auth_con.c bld_pr_ext.c conv_princ.c copy_addrs.c copy_athctr.c
37 copy_auth.c copy_cksum.c copy_creds.c copy_data.c copy_key.c
38 copy_princ.c copy_tick.c cp_key_cnt.c decrypt_tk.c fwd_tgt.c
39 gc_via_tkt.c get_creds.c get_in_tkt.c in_tkt_ktb.c in_tkt_pwd.c
40 in_tkt_sky.c init_ctx.c mk_cred.c mk_error.c mk_priv.c mk_rep.c
41 mk_req.c mk_req_ext.c mk_safe.c parse.c princ_comp.c rd_cred.c
42 rd_error.c rd_priv.c rd_rep.c rd_req.c rd_safe.c recvauth.c
43 sendauth.c str_conv.c unparse.c valid_times.c
44 DLL export various functions (see lib/krb5.def for full list)
46 Thu Nov 21 13:54:01 1996 Ezra Peisach <epeisach@mit.edu>
48 * recvauth.c (krb5_recvauth): If there is an error, and the server
49 argument to krb5_recvauth is NULL, create a dummy server
50 entry for the krb5_error structure so that krb5_mk_error
51 will not die with missing required fields. [krb5-libs/209]
53 Wed Nov 13 14:30:47 1996 Tom Yu <tlyu@mit.edu>
55 * init_ctx.c: Revert previous kt_default_name changes.
57 Tue Nov 12 22:07:33 1996 Tom Yu <tlyu@mit.edu>
59 * init_ctx.c (krb5_init_context): Oops. Initialize kt_default_name
62 * init_ctx.c (krb5_free_context): Free kt_default_name if it's
65 Sat Nov 9 14:19:28 1996 Ezra Peisach <epeisach@mit.edu>
67 * Makefile.in (check-unix): Invoking t_ser requires that
68 KRB5_CONFIG points to a valid krb5.conf
70 * t_ser.c (main): If verbose flag is set and there is an error,
71 display error message.
73 Wed Nov 6 14:02:21 1996 Theodore Y. Ts'o <tytso@mit.edu>
75 * init_ctx.c (krb5_init_context): Initialize the error tables, so
76 applications don't need to call krb5_init_ets().
78 Tue Nov 5 08:09:23 1996 Ezra Peisach <epeisach@mit.edu>
80 * serialize.c (krb5_register_serializer): Do not free a NULL pointer.
82 Thu Oct 31 13:48:14 1996 Theodore Y. Ts'o <tytso@mit.edu>
84 * init_ctx.c (krb5_init_context): Make it more obvious that
85 default ticket lifetimes is not yet supported.
87 Tue Sep 24 20:59:14 1996 Theodore Y. Ts'o <tytso@mit.edu>
89 * get_in_tkt.c (make_preauth_list): Correctly null-terminate the
90 preauth list generated by make_preauth_list.
92 Thu Sep 19 12:29:59 1996 Theodore Y. Ts'o <tytso@mit.edu>
94 * unparse.c (krb5_unparse_name_ext): Make unparse correctly handle
95 a all cases where a principal contains a nulls, backspace,
98 * t_kerb.c (test_parse_principal): Add test for checking
99 krb5_parse_principal()
101 * parse.c (krb5_parse_name): Set all of the magic field values.
103 Wed Jul 24 17:09:39 1996 Theodore Y. Ts'o <tytso@mit.edu>
105 * preauth.c (find_pa_system): Change type of first argument to be
106 krb5_preauthtype, to eliminate compiler warnings under
109 Wed Jul 10 20:22:41 1996 Theodore Y. Ts'o <tytso@mit.edu>
111 * init_ctx.c (krb5_init_context): Add a call to krb5_win_do_init()
112 on Win16 and Win32 machines. This is where we do timebomb
113 and version server checking.
115 Sun Jul 7 15:14:43 1996 Ezra Peisach <epeisach@kangaroo.mit.edu>
117 * get_creds.c: (krb5_get_credentials_val_renew_core) Combine
118 common internals needed from krb5_get_credentials_validate()
119 and used by new function krb5_get_credentials_renew()
121 * gc_frm_kdc.c (krb5_get_cred_from_kdc_renew): A wrapper that
122 passes KDC_OPT_RENEW to the static
123 krb5_get_cred_from_kdc_opt so that kinit can use it.
126 Mon Jun 24 09:45:04 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
128 * bld_princ.c (krb5_build_principal_va): Change const to
129 krb5_const, so that it works on compilers that don't
132 Mon Jun 17 20:23:48 1996 Ezra Peisach <epeisach@kangaroo.mit.edu>
134 * str_conv.c (krb5_string_to_timestamp): Ensure that all fields of
135 the timestamp are filled in if strptime does not fill in
138 Wed Jun 12 01:10:09 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
140 * sendauth.c (krb5_sendauth): If ECCONABORTED is not defined, try
141 using the Winsock equivalent (WSAECONNABORTED).
143 Mon Jun 10 21:47:21 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
145 * parse.c (krb5_parse_name): Change use of _WINDOWS to _MSDOS, and
146 add check for _WIN32.
148 Thu Jun 6 00:06:18 1996 Theodore Y. Ts'o <tytso@mit.edu>
150 * get_creds.c (krb5_get_credentials_core): A static function must
151 not use the INTERFACE keyword.
153 Tue May 14 18:39:22 1996 Richard Basch <basch@lehman.com>
155 * mk_req_ext.c mk_safe.c send_tgs.c:
156 set the length field of the krb5_checksum structure before
157 calling krb5_calculate_checksum.
159 * str_conv.c: replaced sha-des3 cksum with hmac-sha.
161 Tue May 14 02:53:42 1996 Theodore Y. Ts'o <tytso@mit.edu>
163 * ser_ctx.c (krb5_context_size, krb5_context_externalize,
164 krb5_context_internalize): Add missing fields from the
165 serialized context: clockskew, default_kdc_req_sumtype,
166 default_ap_req_sumtype, default_safe_sumtype,
167 kdc_default_options, library_options, profile_secure,
168 fcc_default_format, scc_default_format.
170 * ser_actx.c (krb5_auth_context_size, krb5_auth_context_externalize,
171 krb5_auth_context_internalize): Serialize the two fields
172 req_cksumtype and safe_cksumtype, instead of the one
175 * mk_safe.c (krb_mk_safe): Use safe_cksumtype instead of cksumtype
178 * mk_req_ext.c (krb5_mk_req_extended): Use req_cksumtype instead
179 of cksumtype in the auth context.
181 * init_ctx.c (krb5_init_context): Add support for new profile
182 relations libdefaults/tkt_lifetime,
183 libdefaults/kdc_req_checksum_type,
184 libdefaults/ap_req_cksumtype,
185 libdefaults/safe_checksumtype, and
186 libdefaults/kdc_default_options.
188 * auth_con.h: Remove old cksumtype element, and replace it with
189 req_cksumtype and safe_cksumtype.
191 * auth_con.c (krb5_auth_con_init): Initialize the req_cksumtype
192 and safe_cksumtype from the context's default
193 req_cksumtype and safe_cksumtype.
194 (krb5_auth_con_set_req_cksumtype,
195 krb5_auth_con_set_safe_cksumtype): New functions, to
196 replace old krb5_auth_con_setcksumtype
198 Fri May 10 18:48:38 EDT 1996 Richard Basch <basch@lehman.com>
200 * init_ctx.c: Removed des3-cbc-md5 default support
202 Fri May 10 02:51:17 1996 Richard Basch <basch@lehman.com>
204 * str_conv.c: changes des3-md5 to des3-sha & added sha cksum types
206 Sun May 5 09:46:18 1996 Ezra Peisach (epeisach@kangaroo.mit.edu)
208 * preauth.c: Add casts and const keywords as needed.
210 Fri May 3 00:15:18 1996 Mark Eichin <eichin@cygnus.com>
212 * get_creds.c (krb5_get_credentials_core): new function. Common
213 part of krb5_get_credentials and krb5_get_credentials_validate.
214 Some formerly local variables are now arguments.
215 (krb5_get_credentials): same as before, but calls _core to do some
217 (krb5_get_credentials_validate): uses
218 krb5_get_cred_from_kdc_validate and only stores the returned
219 credential in the cache, instead of storing all of them.
221 Thu May 2 22:48:56 1996 Mark Eichin <eichin@cygnus.com>
223 * gc_frm_kdc.c (krb5_get_cred_from_kdc_opt): new function. Same
224 body as krb5_get_cred_from_kdc, but takes one new argument,
225 kdcopts, and combines it with the other kdc options when calling
226 krb5_get_cred_via_tkt. This is static and only called by
227 (krb5_get_cred_from_kdc): a wrapper that provides the same
228 function it did before, and
229 (krb5_get_cred_from_kdc_validate): a wrapper that passes
230 KDC_OPT_VALIDATE, so that kinit can use it.
231 We'll probably need another one for renewing tickets as well.
233 * rd_req_dec.c (krb5_rd_req_decoded_opt): new function. Same body
234 as krb5_rd_req_decoded, but takes one new argument,
235 check_valid_flag, to determine whether or not to check if the
236 "invalid flag" is set in the ticket. Also made static, so that it
238 (krb5_rd_req_decoded): wrapper for krb5_rd_req_decoded_opt that
239 specifies the "invalid flag" gets checked, and
240 (krb5_rd_req_decoded_anyflag): wrapper for krb5_rd_req_decoded_opt
241 that specifies that the "invalid flag" doesn't get checked. (This
242 version is only called from kdc_util.c:kdc_process_tgs_req.)
244 Wed May 1 14:30:29 1996 Richard Basch <basch@lehman.com>
246 * srv_rcache.c (krb5_get_server_rcache): include the uid in the
247 default server replay cachename, for systems with geteuid.
249 * configure.in: test if the system has geteuid()
251 Wed May 1 02:26:53 1996 Mark Eichin <eichin@cygnus.com>
253 * str_conv.c (krb5_string_to_timestamp): double check that
254 strptime at least parsed *some* of the string, avoid degenerate
255 cases from GNU libc strptime.
257 Tue Apr 30 18:19:01 1996 Ken Raeburn <raeburn@cygnus.com>
259 * t_ser.c (stuff): New variable.
260 (ser_acontext_test, ser_eblock_test, ser_cksum_test): Use it,
261 instead of assuming it's valid to treat &FUNCTION as a data
264 * conv_princ.c (sconv_list): Now const.
265 (krb5_*_conv_principal): Use pointer to const for it.
267 Tue Apr 23 19:39:59 1996 Mark Eichin <eichin@cygnus.com>
269 * get_creds.c (krb5_get_credentials): this isn't the kernel, so
270 don't return negative errno values.
272 Sat Apr 27 19:14:21 1996 Richard Basch <basch@lehman.com>
274 * fwd_tgt.c (krb5_fwd_tgt_creds): fixed a possible null dereference.
276 Wed Apr 17 14:22:10 1996 Theodore Y. Ts'o <tytso@mit.edu>
278 * conv_princ.c: Added ftp and ecat to the list of services which
279 should be converted. This really ought to be something
280 that's configurable in the profile...
282 Thu Apr 11 21:30:23 1996 Theodore Y. Ts'o <tytso@dcl>
284 * init_ctx.c (krb5_init_context): On a Macintosh, turn on
285 kdc_timesync and use the v4 credentials cache by default.
287 * get_in_tkt.c (stash_as_reply, verify_as_reply): Move time offset
288 code from stash_as_reply to verify_as_reply, and fix it so
289 that it actually works.
291 Wed Apr 3 16:04:36 1996 Theodore Y. Ts'o <tytso@dcl>
293 * rd_req_dec.c (krb5_rd_req_decoded): Move code which
294 validated the ticket times to krb5_validate_times.
296 * valid_times.c (krb5_validate_times): New function which
297 determines whether or not the ticket times are valid.
299 * mk_req_ext.c (krb5_mk_req_extended): Call krb5_validate_time()
300 to determine whether or not the ticket in passed-in
301 credentials is valid. If it isn't, return an error right
304 Wed Mar 27 17:05:47 1996 Richard Basch <basch@lehman.com>
306 * in_tkt_ktb.c (keytab_keyproc): Do not check to see that the
307 enctype of the key is identical; there are several equivalent
310 * in_tkt_ktb.c (krb5_get_in_tkt_with_keytab): Removed the fancy
311 logic to only request the keytypes that correspond to those in
312 the keytab. There were too many fencepost conditions that could
313 get you into trouble. Either it should be there and *fully*
314 functional, or not in there at all. Besides, there are too many
315 other components in Kerberos that expect the end-service to know
316 all its keys that this sanity check is overkill.
318 Tue Mar 26 14:45:03 1996 Richard Basch <basch@lehman.com>
320 * conv_princ.c: added "imap" service to the conversion list as
321 requiring domain conversion for the instance. (imap/<host> is used
322 by some of the new imap mail implementations)
324 Sun Mar 24 01:34:14 1996 Sam Hartman <hartmans@tertius.mit.edu>
326 * send_tgs.c (krb5_send_tgs_basic): You want to setup the eblock
327 used for the authenticator using the in_cred->keyblock, *not*
328 request.ticket.enc_part.enctype. Under a multi-enctype system,
329 the session key may be different from the ticket key.
331 Wed Mar 20 23:00:59 1996 Theodore Y. Ts'o <tytso@dcl>
333 * walk_rtree.c (krb5_walk_realm_tree): Fix 16bit vs. 32bit error.
334 (cap_code should been a krb5_error_code, not an int!)
336 * mk_cred.c (krb5_mk_ncred_basic): Fix windows lint flame.
338 * get_in_tkt.c (krb5_get_in_tkt): Fix 16bit vs. 32bit error.
339 (do_more should not have been an int!)
341 Tue Mar 19 13:03:26 1996 Richard Basch <basch@lehman.com>
343 * in_tkt_ktb.c (krb5_get_in_tkt_with_keytab):
344 Only request keytypes that correspond to those in the keytab.
346 Mon Mar 18 21:49:39 1996 Ezra Peisach <epeisach@kangaroo.mit.edu>
348 * configure.in: Add KRB5_RUN_FLAGS
350 * Makefile.in: Use runtime flags.
352 Sun Mar 17 20:32:08 1996 Ezra Peisach <epeisach@dumpster.rose.brandeis.edu>
354 * configure.in: Add USE_ANAME, USE_KRB5_LIBRARY, KRB5_LIBRARIES so
355 that Makefile does not have to know build tree layout.
357 * Makefile.in: Rework to be consistant with configure defines so
358 that configure can specify other needed libraries.
360 Sun Mar 17 02:10:19 1996 Mark W. Eichin <eichin@cygnus.com>
362 * copy_addrs.c (krb5_copy_addr): make non-static so we can use it
364 * mk_cred.c (krb5_mk_ncred_basic): copy local_addr and remote_addr
365 instead of just aliasing them, so we can safely free them ourselves.
367 Fri Mar 15 14:29:00 1996 Richard Basch <basch@lehman.com>
369 * in_tkt_ktb.c: Close the keytab if we opened it, not if the
372 Wed Mar 13 17:31:30 1996 Ken Raeburn <raeburn@cygnus.com>
374 * configure.in: Use AC_HEADER_STDARG.
376 Mon Mar 11 11:15:26 1996 Ezra Peisach <epeisach@kangaroo.mit.edu>
378 * str_conv.c (krb5_timestamp_to_string): Handle statement not
381 * ser_addr.c (krb5_address_internalize): Add magic numbers
383 Thu Feb 29 11:49:38 1996 Theodore Y. Ts'o <tytso@dcl>
385 * fwd_tgt.c (NEED_SOCKETS): Use NEED_SOCKETS instead of #including
388 Sat Feb 24 16:27:54 1996 Theodore Y. Ts'o <tytso@dcl>
390 * gc_via_tkt.c (krb5_get_cred_via_tkt): Fix memory leak; free
393 Thu Jan 25 01:35:52 1996 Sam Hartman <hartmans@tertius.mit.edu>
395 * rd_req_dec.c (krb5_rd_req_decrypt_tkt_part): Remove outdated
396 comment about mapping etype to ktype.
398 * gc_via_tkt.c (krb5_get_cred_via_tkt): If the keyblock.enctype is
399 non-null in in_cred, then request that particular key.
401 Wed Jan 24 21:48:53 1996 Sam Hartman <hartmans@tertius.mit.edu>
403 * get_creds.c (krb5_get_credentials): Only match against enctype
404 if it is non-null in increds.
406 Sun Jan 21 23:32:53 1996 Tom Yu <tlyu@dragons-lair.MIT.EDU>
408 * gc_via_tkt.c (krb5_kdcrep2creds): Set is_skey so get_creds won't
409 break trying to match is_skey in the ccache. This way we
410 won't end up with many copies of user-to-user tickets.
412 Fri Jan 19 23:16:17 1996 Ezra Peisach <epeisach@kangaroo.mit.edu>
414 * mk_req.c (krb5_mk_req): krb5_get_credentials does not take
417 * sendauth.c (krb5_sendauth): krb5_get_credentials does not take
420 Wed Jan 10 21:01:36 1996 Theodore Y. Ts'o <tytso@dcl>
422 * init_ctx.c (krb5_init_context): Added checking of profile for
423 DCE compatability options (ccache type, and checksum type).
425 * fwd_tgt.c (krb5_fwd_tgt_creds): Initialize addrs to 0 so that we
426 don't try to free stack garbage on an error.
428 * krbconfig.c, Makefile.in: Removed krbconfig.c; it contained
429 global variables which are no longer used.
431 * recvauth.c: Removed the global extern of
432 krb5_kdc_default_options, which wasn't being used anyway.
434 * mk_req.c (krb5_mk_req): Replace use of krb5_kdc_default_options
435 with context->kdc_default_options.
437 * gc_frm_kdc.c: Remove the global extern of krb5_kdc_req_sumtype,
438 which wasn't being used anymore anyway.
440 * send_tgs.c (krb5_send_tgs_basic): Remove use of the global
441 variable krb5_kdc_req_sumtype, and use the kdc_req_sumtype
442 in the context structure instead.
444 * walk_rtree.c (krb5_walk_realm_tree): Applied patch submitted by
445 Doug Engbert, so that the configurable authentication
446 patch takes into account the null entry at the end of the
449 Tue Jan 9 22:04:09 1996 Theodore Y. Ts'o <tytso@dcl>
451 * fwd_tgt.c (krb5_fwd_tgt_creds): New function which handles all
452 of the dirty work of forwarding TGT's.
454 * rd_cred.c (krb5_rd_cred_basic): Clean up memory allocation
455 discpline to remove memory leaks.
457 * mk_cred.c (krb5_mk_ncred_basic, krb5_mk_ncred, krb5_mk_1cred):
458 Clean up memory allocation discpline to remove memory
461 * init_ctx.c (krb5_get_tgs_ktypes): Clean up parsing of the etype
462 list. Don't overrun the string containing the etype list.
464 Wed Jan 3 21:32:59 1996 Theodore Y. Ts'o <tytso@dcl>
466 * rd_cred.c (krb5_rd_cred_basic): When the keyblock is NULL,
467 assume we're being called from the gssapi code, which
468 doesn't have access to the sender or receive address
469 information, don't check the sender address, since it
472 * rd_cred.c (decrypt_credencdata): When calling krb5_rd_credd(),
473 if the keyblock is null, just copy the encoded structure
474 from the "ciphertext" part of the structure and decode it.
476 * mk_cred.c (encrypt_credencpart): When calling krb5_mk_cred(), if
477 the keyblock is NULL, don't encrypt it; just encode it and
478 leave it in the ciphertext area of the structure.
480 Thu Dec 21 18:47:54 1995 Theodore Y. Ts'o <tytso@dcl>
482 * rd_rep.c (krb5_rd_rep): Change use of
483 KRB5_SENDAUTH_MUTUAL_FAILED to KRB5_MUTUAL_FAILED.
485 Tue Dec 19 17:15:40 1995 Theodore Y. Ts'o <tytso@dcl>
487 * rd_cred.c (krb5_rd_cred_basic): Missing parenthesis meant that
488 wrong number of bytes was being allocated.
490 Sun Dec 3 11:49:09 1995 Ezra Peisach <epeisach@kangaroo.mit.edu>
492 * Makefile.in (SRCS/OBJS): Move compat_recv.c to krb5util library.
494 Fri Dec 1 17:04:43 1995 Theodore Y. Ts'o <tytso@dcl>
496 * recvauth.c (krb5_recvauth): Initialize rcache to zero, so that
497 on cleanup we don't try to free stack garbage.
499 Sun Nov 26 19:31:18 1995 Tom Yu <tlyu@dragons-lair.MIT.EDU>
501 * preauth.c: Ultrix is broken. Prototype obtain_enc_ts_padata()
502 and process_pw_salt() explicitly rather than using the
503 typedef in k5-int.h becaus that typedef is to a function
506 Fri Nov 17 22:35:52 1995 Theodore Y. Ts'o <tytso@dcl>
508 * get_in_tkt.c (decrypt_as_reply):
509 * preauth.c (process_pw_salt): When fetching the key to decrypting
510 the encrypted kdc reply, use the etype associated with the
511 etype reply, not the etype associated with the included
514 * encode_kdc.c: Remove eblock argument from krb5_encode_kdc_rep;
515 set the eblock type from the client_key's enctype.
517 Thu Nov 16 20:29:17 1995 Ezra Peisach <epeisach@kangaroo.mit.edu>
519 * srv_rcache.c (krb5_get_server_rcache): Use krb5_rc_default_type
520 instead of assuming default rcache type is "dfl".
522 Mon Nov 13 14:40:05 1995 <tytso@rsts-11.mit.edu>
524 * walk_rtree.c (krb5_walk_realm_tree): Added ANL changes to
525 support configuration authentication paths.
527 Mon Nov 13 12:57:12 1995 Theodore Y. Ts'o <tytso@dcl>
529 * preauth.c (krb5_process_padata): Added generalized processing
530 for preauth information which is returned by the KDC.
531 This should be general enough to support the AFS3_SALT
532 preauth type, the SNK4 preauth type, and the public-key
534 (process_pw_salt): New function for processing the KRB5_PW_SALT
535 preauthentication type.
537 * get_in_tkt.c (decrypt_as_reply): Removed temporary kludge for
538 processing the PW_SALT preauth type; that's now done in
540 (krb5_get_in_tkt): Call krb5_process_padata with new arguments so
541 that the preauth code can set the decryption_key if
544 Thu Nov 09 17:05:57 1995 Chris Provenzano (proven@mit.edu)
546 * in_tkt_pwd.c : Remove krb5_enctype from krb5_string_to_key() args.
548 Thu Nov 9 00:02:43 1995 Theodore Y. Ts'o <tytso@dcl>
550 * get_in_tkt.c (krb5_get_in_tkt): Remove the etype_info argument
551 from the call to krb5_obtain_padata.
553 * preauth.c (krb5_obtain_padata): Use the PADATA_ETYPE_INFO
554 preauth, if it exists, to determine which salt type to use
555 when encrypting the preauthentication data. Remove the
558 Wed Nov 8 02:50:59 1995 Theodore Y. Ts'o <tytso@dcl>
560 * krbconfig.c: Removed the krb5_clockskew variable.
562 * srv_rcache.c (krb5_get_server_rcache):
563 * rd_safe.c (krb5_rd_safe):
564 * rd_req_dec.c (krb5_rd_req_decoded):
565 * rd_priv.c (krb5_rd_priv):
566 * rd_cred.c (krb5_rd_cred):
567 * gc_via_tkt.c (krb5_get_cred_via_tkt):
568 * get_in_tkt.c (verify_as_reply): Replace use of krb5_clockskew
569 with context->clockskew.
571 * encrypt_tk.c (cleanup_scratch): Changed interface to no longer
572 require an eblock; we can use our own and figure out the
573 enctype from the passed-in key.
575 * get_in_tkt.c (krb5_get_in_tkt): Added calls to
576 krb5_obtain_padata().
578 * preauth.c: Completely restructured file to support
582 Fri Oct 27 22:15:33 1995 Theodore Y. Ts'o <tytso@dcl>
584 * get_in_tkt.c (krb5_get_in_tkt): Extensive reworking of the
585 structure of this file to make it possible to support
588 Mon Oct 23 17:08:59 1995 Theodore Y. Ts'o <tytso@dcl>
590 * in_tkt_pwd.c (krb5_get_in_tkt_with_password): Fix to properly
591 malloc password buffer.
593 Mon Oct 23 11:09:56 1995 Ezra Peisach <epeisach@kangaroo.mit.edu>
595 * rd_req_dec.c (krb5_rd_req_decoded): For heirarchal cross-realm,
596 set the length after initializing string.
598 * rd_req.c (krb5_rd_req): If a new auth_context is created
599 and then there is an error, make sure return pointer is not
600 looking at freed memory.
602 Fri Oct 6 22:04:42 1995 Theodore Y. Ts'o <tytso@dcl>
604 * Makefile.in: Remove ##DOS!include of config/windows.in.
605 config/windows.in is now included by wconfig.
607 Fri Sep 29 00:08:53 1995 Theodore Y. Ts'o <tytso@dcl>
609 * gc_via_tkt.c (krb5_get_cred_via_tkt): Only check the returned
610 starttime to make sure it matches the requested starttime
611 if we requested a postdated ticket.
613 Thu Sep 28 22:58:53 1995 Theodore Y. Ts'o <tytso@dcl>
615 * conv_princ.c (krb5_425_conv_principal): Only convert instances
616 which don't have a '.' in them. If they have a '.',
617 assume that they are fully qualified already.
619 Thu Sep 28 12:00:00 1995 John Rivlin <jrivlin@fusion.com)
621 * gc_via_tkt.c: Cleaned up corrupt ticket error testing to
622 make it more debugable and I think work around a compiler
625 Mon Sep 25 16:57:59 1995 Theodore Y. Ts'o <tytso@dcl>
627 * Makefile.in: Removed "foo:: foo-$(WHAT)" lines from the
630 Wed Sep 13 10:58:20 1995 Keith Vetter (keithv@fusion.com)
632 * get_in_t.c: removed unused variable.
633 * rd_cred.c: removed INTERFACE keyword.
634 * ser_auth.c: passing int32 where a size_t is wanted.
635 * ser_ctx.c: 16/32 bit int size mismatch.
637 Sun Sep 17 23:41:19 1995 Ezra Peisach <epeisach@kangaroo.mit.edu>
639 * rd_safe.c: Fix typo error.
641 Sat Sep 16 01:23:14 1995 Theodore Y. Ts'o <tytso@dcl>
643 * sendauth.c (krb5_sendauth): Make sure the scratch credentials
644 structure may have possible been used be freed..
646 * rd_safe.c (krb5_rd_safe_basic): Fall through to the cleanup code
647 at the end, to make sure the decoded message in message is
650 * rd_req_dec.c (krb5_rd_req_decoded): Use krb5_copy_keyblock to
651 copy authent->subkey to auth_context->remote_subkey.
652 Keeping them separate avoids aliasing problems.
654 * mk_req_ext.c (krb5_generate_authenticator): Fix memory leak.
655 Don't bash authent->subkey with key after carefully
656 copying it using krb5_copy_keyblock!
658 * recvauth.c (krb5_recvauth): krb5_get_server_rcache() already
659 opens the rcache; doing it again merely causes a memory leak.
661 Fri Sep 15 17:20:08 1995 Theodore Y. Ts'o <tytso@dcl>
663 * gen_subkey.c (krb5_generate_subkey): Eliminate memory leak.
664 krb5_init_random_key() does its own allocation of the
667 * gc_via_tkt.c (krb5_kdcrep2creds): Fix memory leak.
669 * srv_rcache.c (krb5_get_server_rcache): Fix memory leak.
671 * rd_safe.c (krb5_rd_safe_basic): Fix memory leak.
673 Tue Sep 12 12:40:30 1995 Ezra Peisach <epeisach@kangaroo.mit.edu>
675 * t_ser.c (ser_cksum_test): Work around an optimizer bug unser
678 Sun Sep 10 12:00:00 1995 James Mattly (mattly@fusion.com)
680 * gen_seqnum.c: change usage of krb5_crypto_us_timeofday to krb5_timeofday
681 * get_in_tkt.c: change usage of krb5_crypto_us_timeofday to krb5_timeofday
682 * mk_priv.c: change usage of krb5_crypto_us_timeofday to krb5_timeofday
683 * mk_req_ext.c: change usage of krb5_crypto_us_timeofday to krb5_timeofday
684 * send_tgs.c: change usage of krb5_timeofday over to krb5_crypto_us_timeofday
686 Wed Sep 06 14:20:57 1995 Chris Provenzano (proven@mit.edu)
688 * auth_con.c, decrypt_tk.c, encode_kdc.c, encrypt_tk.c,
689 * gc_frm_kdc.c, gen_seqnum.c, get_creds.c, get_in_tkt.c,
690 * in_tkt_ktb.c, in_tkt_pwd.c, in_tkt_sky.c, init_ctx.c,
691 * kdc_rep_dc.c, mk_cred.c, mk_priv.c, mk_rep.c, mk_req._ext.c,
692 * preauth.c, rd_cred.c, rd_priv.c, rd_rep.c, rd_req_dec.c,
693 * send_tgs.c, sendauth.c, ser_actx.c, ser_ctx.c, ser_eblk.c,
694 * ser_key.c, t_ser.c : s/keytype/enctype/g, s/KEYTYPE/ENCTYPE/g
696 Wed Sept 6 12:00:00 EDT 1995 James Mattly (mattly@fusion.com)
698 * get_in_tkt.c: change usage of krb5_timeofday to krb5_crypto_us_timeofday
699 * mk_req_ext.c: change usage of timeofday
700 * parse.c: disabled a usage of exit for macintosh
701 * send_tgs.c: change usage of krb5_timeofday over to
702 krb5_crypto_us_timeofday
703 * unparse.c: include <stdio.h>
706 Tue Sep 05 22:10:34 1995 Chris Provenzano (proven@mit.edu)
708 * decode_kdc.c, decrypt_tk.c, encode_kdc.c, encrypt_tk.c, gc_frm_kdc.c
709 * gc_via_tkt.c, get_in_tkt.c, in_tkt_ktb.c, in_tkt_pwd.c, in_tkt_sky.c
710 * init_ctx.c, kdc_rep_dc.c, mk_cred.c, mk_priv.c, mk_rep.c
711 * mk_req_ext.c, rd_cred.c, rd_priv.c, rd_rep.c, rd_req_dec.c,
712 * send_tgs.c, ser_ctx.c, ser_eblk.c, ser_key.c, t_ser.c:
713 Remove krb5_enctype references, and replace with
714 krb5_keytype where appropriate
716 Fri Sep 1 20:03:41 1995 Theodore Y. Ts'o <tytso@dcl>
718 * get_in_tkt.c (krb5_get_in_tkt): If kdc_settime is enabled, then
719 set the time_offset fields from the returned ticket's
722 * init_ctx.c (krb5_init_context): Initialize new fields in
723 krb5_context (clockskew, kdc_req_sumtype, and
724 kdc_default_options).
726 * gc_via_tkt.c (krb5_get_cred_via_tkt): Perform the necessary
727 sanity checking on the KDC response to make sure we detect
730 * send_tgs.c (krb5_send_tgs): Set the expected nonce in the
733 * krbconfig.c: Set the default checksum to use MD5
735 Fri Sep 1 11:16:43 EDT 1995 Paul Park (pjpark@mit.edu)
736 * ser_ctx.c - Add handling of new time offset fields in the os_context.
739 Tue Aug 29 14:14:26 EDT 1995 Paul Park (pjpark@mit.edu)
740 * Makefile.in, .Sanitize, ser_{actx,adata,addr,auth,cksum,ctx,eblk,key,
741 princ}.c, serialize.c, t_ser.c - Add serialization operations
742 for data structures required to serialize krb5_context, krb5_
743 auth_context, krb5_encrypt_block and krb5_principal.
744 * auth_con.h - Add magic number.
745 * auth_con.c - Add static routine to copy an address and use this
746 instead of the other code. Set the magic number when initing
747 an auth_context. Use krb5_free_address to release an address.
748 * init_ctx.c - Free the allocated serializers when releasing context.
749 * rd_rep.c - Copy the keyblock from the message instead of setting
752 Thu Aug 24 18:55:50 1995 Theodore Y. Ts'o <tytso@dcl>
754 * .Sanitize: Update file list.
756 Mon Aug 7 18:54:35 1995 Theodore Y. Ts'o <tytso@dcl>
758 * in_tkt_ktb.c (keytab_keyproc): If there is an error looking up
759 the key, make sure the keytab is closed as part of the
762 Fri Aug 4 22:04:08 1995 Tom Yu <tlyu@dragons-lair.MIT.EDU>
764 * conv_princ.c: Add braces to initializer to shut up gcc -Wall
766 Fri Jul 7 16:31:06 EDT 1995 Paul Park (pjpark@mit.edu)
767 * Makefile.in - Find com_err in TOPLIBD.
768 * rd_safe.c - Use checksum verifier instead of doing it manually.
770 Thu Jul 6 17:31:40 1995 Tom Yu <tlyu@lothlorien.MIT.EDU>
772 * rd_safe.c (krb5_rd_safe_basic): Pass context to os_localaddr.
774 * rd_priv.c (krb5_rd_priv_basic): Pass context to os_localaddr.
776 * rd_cred.c (krb5_rd_cred_basic): Pass context to os_localaddr.
778 * get_in_tkt.c (krb5_get_in_tkt): Pass context to os_localaddr.
780 Wed July 5 15:52:31 1995 James Mattly <mattly@fusion.com>
781 * added condition for _MACINTOSH
783 Sun Jul 2 18:59:53 1995 Sam Hartman <hartmans@tertius.mit.edu>
785 * recvauth.c (krb5_recvauth): recvauth should send an error reply
786 if problem is not zero. Removed if that caused it to only send a
789 Fri Jun 16 22:11:21 1995 Theodore Y. Ts'o (tytso@dcl)
791 * get_in_tkt.c (krb5_get_in_tkt): Allow the credentials cache
792 argument to be optional; allow it to be NULL, meaning that
793 the credentials shouldn't be stored in a credentials cache.
795 Mon Jun 12 16:49:42 1995 Chris Provenzano (proven@mit.edu)
797 A couple bug reports/patches from Ed Phillips (flaregun@udel.edu)
798 * in_tkt_ktb.c (keytab_keyproc()): Fix memory leak.
799 * recvauth.c (krb5_recvauth()): Don't open a new rcache if
800 the auth_context already has one.
801 * auth_con.c (krb5_auth_con_free()): Close rcache is the
802 auth_context has one set.
803 * auth_con.c (krb5_auth_con_getrcache()): Return pointer
804 to the rcache set in the auth_context.
806 Sun Jun 11 12:31:39 1995 Ezra Peisach (epeisach@kangaroo.mit.edu)
808 * auth_con.c (krb5_auth_con_init): Zero newly allocated
809 krb5_auth_context. (Fixed error in redefinitions).
811 Sat Jun 10 23:05:51 1995 Tom Yu (tlyu@dragons-lair)
813 * auth_con.c, compat_recv.c, mk_cred.c, mk_priv.c, mk_rep.c,
814 mk_req.c, mk_req_ext.c, mk_safe.c, rd_cred.c, rd_priv.c,
815 rd_rep.c, rd_req.c rd_req_dec.c, rd_safe.c, recvauth.c,
816 sendauth.c: krb5_auth_context redefinitions
818 Fri Jun 9 18:48:43 1995 <tytso@rsx-11.mit.edu>
820 * rd_req_dec.c (krb5_rd_req_decoded): Fix -Wall nits
822 * configure.in: Remove standardized set of autoconf macros, which
823 are now handled by CONFIG_RULES.
825 * Makefile.in, faddr_ordr.c: Remove faddr_ordr.c; its function,
826 krb5_fulladdr_order, isn't used anywhere.
828 Fri Jun 9 02:42:54 1995 Tom Yu (tlyu@dragons-lair)
830 * rd_cred.c (krb5_rd_cred_basic): fix typo (extra "context"
831 argument passed to krb5_xfree)
833 Thu Jun 8 22:48:27 1995 Theodore Y. Ts'o <tytso@dcl>
835 * rd_cred.c (krb5_rd_cred_basic): Fix problem where the ticket
836 field was assigned with a krb5_data, which was then
839 Thu Jun 8 16:06:44 1995 <tytso@rsx-11.mit.edu>
841 * compat_recv.c, auth_con.c, chk_trans.c, encrypt_tk.c,
842 gc_frm_kdc.c, gc_via_tkt.c, gen_seqnum.c, gen_subkey.c,
843 get_creds.c, get_in_tkt.c, in_tkt_ktb.c, in_tkt_pwd.c,
844 in_tkt_skey.c, init_ctx.c, kdc_rep_dc.c, mk_cred.c,
845 mk_error.c, mk_priv.c, mk_rep.c, mk_req.c, mk_req_ext.c,
846 mk_cred.c, mk_safe.c, parse.c, preauth.c, rd_cred.c,
847 rd_rep.c, rd_req.c, rd_req_dec.c, rd_safe.c, recvauth.c,
848 sendauth.c, send_tgs.c, srv_rcache.c, walk_rtree.c: Clean
851 Wed Jun 7 15:23:21 1995 <tytso@rsx-11.mit.edu>
853 * conv_princ.c (krb5_425_conv_principal): Remove old CONFIG_FILES
856 Fri May 26 10:18:28 1995 Keith Vetter (keithv@fusion.com)
858 * makefile.in: removed for the PC creating shared directory.
859 (still bug with the '@SHARED_RULE@' line but I'm waiting
860 on tytso for that since I don't want to break Unix).
862 Thu May 25 09:58:42 1995 Ezra Peisach <epeisach@kangaroo.mit.edu>
864 * gc_via_tkt.c (krb5_kdcrep2creds): Fix syntax error in the
865 freeing of the keyblock.
867 Wed May 24 18:19:17 1995 Theodore Y. Ts'o (tytso@dcl)
869 * Makefile.in, configure.in: Add rules for building shared library.
871 * gc_via_tkt.c (krb5_kdcrep2creds): On an error, free the keyblock.
873 Tue May 23 16:28:42 1995 Theodore Y. Ts'o (tytso@dcl)
875 * gc_frm_kdc.c, preauth.c, t_kerb.c, t_walk_rtree.c, unparse.c:
876 Rearrange #include files so that krb5.h gets included
877 first, so that the debugging information can be more
878 efficiently collapsed since the type numbers will be the
881 Sat May 20 14:01:16 1995 Ezra Peisach <epeisach@kangaroo.mit.edu>
883 * rd_safe.c (krb5_rd_safe): Increment remote_seq_number if
884 KRB5_AUTH_CONTEXT_DO_SEQUENCE is set.
886 Thu May 11 22:42:30 1995 Ezra Peisach <epeisach@kangaroo.mit.edu>
888 * rd_cred.c (krb5_rd_cred_basic): If address don't match, return
889 KRB5KRB_AP_ERR_BADADDR (add missing retval).
891 Thu May 11 18:30:21 1995 Chris Provenzano (proven@mit.edu)
893 * mk_cred.c (krb5_mk_cred()), mk_priv.c (krb5_mk_priv()),
894 * mk_safe.c (krb5_mk_safe()), rd_cred.c (krb5_rd_cred()),
895 * rd_priv.c (krb5_rd_prev()), rd_safe.c (krb5_rd_safe()):
896 Pass the contents pointer returned from krb5_make_fulladdr()
897 to free() not the address of the pointer.
899 Tue May 9 08:34:21 1995 Ezra Peisach <epeisach@kangaroo.mit.edu>
901 * Makefile.in (clean): Remove t_kerb and t_kerb.o
903 Fri May 5 00:06:24 1995 Theodore Y. Ts'o (tytso@dcl)
905 * conv_princ.c (krb5_425_conv_principal): Use new calling
906 convention of krb5_get_realm_domain, which is that it
907 returns the realm *without* the leading dot.
909 Also use the profile code to look up individual instance
910 conversions using [realms]/<realm>/v4_instance_convert/<inst>
911 This allows special case handling of mit.edu and
914 * t_kerb.c: New file for testing krb library functions. Currently
915 only tests krb5_425_conv_principal.
917 Wed May 03 03:30:51 1995 Chris Provenzano (proven@mit.edu)
919 * recvauth.c, compat_recv.c (krb5_recvauth()):
920 * compat_recv.c (krb5_compat_recvauth()):
921 No longer needs the rc_type arg.
923 Tue May 02 19:29:18 1995 Chris Provenzano (proven@mit.edu)
925 * mk_cred.c (mk_cred()), mk_priv.c (mk_priv()), mk_safe.c (mk_safe()),
926 * rd_cred.c (rd_cred()), rd_priv.c (rd_priv()), rd_safe.c (rd_safe()):
927 Don't call krb5_make_fulladdrs() if a port isn't specified.
929 Mon May 01 15:56:32 1995 Chris Provenzano (proven@mit.edu)
931 * auth_con.c (krb5_auth_con_free()) :
932 Free all the data associated with the auth_context.
934 * auth_con.c (krb5_auth_con_setkey()) : Removed.
935 * mk_rep.c (mk_rep()),
936 The krb5_mk_rep() routine must always encode the data in
937 the keyblock of the ticket, not the subkey.
939 * cleanup.h, auth_con.c (krb5_auth_con_setports()) : Added.
940 * auth_con.h, mk_cred.c (mk_cred()), mk_priv.c (mk_priv()),
941 * mk_safe.c (mk_safe()), rd_cred.c (rd_cred()),
942 * rd_priv.c (rd_priv()), rd_safe.c (rd_safe()) :
943 Changes to auth_context to better support full addresses.
945 Sat Apr 29 00:09:40 1995 Theodore Y. Ts'o <tytso@dcl>
947 * srv_rcache.c (krb5_get_server_rcache): Fix fencepost error which
948 caused an access beyond the allocated memory of piece->data.
950 * rd_priv.c (krb5_rd_priv_basic): Call krb5_free_priv_enc_part to free
951 the entire privenc_msg structure.
953 Fri Apr 28 09:54:51 EDT 1995 Paul Park (pjpark@mit.edu)
955 Move adm_rw.c from libkrb5 to libkadm.
957 Fri Apr 28 08:36:03 1995 Theodore Y. Ts'o <tytso@lurch.mit.edu>
959 * init_ctx.c (krb5_free_context): Extra semicolon meant the etypes
960 field in the context was never being freed.
962 Fri Apr 28 01:44:51 1995 Chris Provenzano (proven@mit.edu)
964 * send_tgs.c (krb5_send_tgs()), gc_via_tkt.c (krb5_get_cred_via_tkt()):
965 Removed krb5_cksumtype argument.
967 Thu Apr 27 21:36:01 1995 Chris Provenzano (proven@mit.edu)
969 * auth_con.c (krb5_auth_con_getaddrs() and krb5_auth_con_getflags()):
970 Added for completeness.
971 * mk_req_ext.c (krb5_mk_req_extended()) : Don't send the
972 AP_OPTS_USE_SUBKEY option over the wire.
974 Thu Apr 27 17:40:20 1995 Keith Vetter (keithv@fusion.com)
976 * adm_rw.c, mk_cred.c, rd_cred.c:
977 malloc on the PC must be size SIZE_T not int32.
978 * adm_rw.c: krb5_free_adm_data second argument now a krb5_int32.
980 Thu Apr 27 16:33:17 EDT 1995 Paul Park (pjpark@mit.edu)
982 * mk_priv.c - Back out previous change which always put in
983 timestamp, regardless of DO_TIME setting and
984 instead, clear out the replaydata before calling
985 mk_priv_basic from mk_priv.
986 * mk_safe.c - Same replaydata fix.
988 Thu Apr 26 15:59:51 EDT 1995 Paul Park (pjpark@mit.edu)
990 * Add adm_rw.c - routines to read and write commands from/to the
991 administrative (kpasswd/kadmin) server.
993 Wed Apr 27 11:30:00 1995 Keith Vetter (keithv@fusion.com)
995 * init_ctx.c: krb5_init_context wasn't checking return values.
996 * mk_req.c: deleted unused local variable.
998 Wed Apr 26 22:49:18 1995 Chris Provenzano (proven@mit.edu)
1000 * gc_via_tgt.c, and gc_2tgt.c : Removed.
1001 * Makefile.in, gc_via_tkt.c, gc_frm_kdc.c, and, int-proto.h :
1002 Replaced get_cred_via_tgt() and get_cred_via_2tgt()
1003 with more general function get_cred_via_tkt().
1005 Tue Apr 25 21:58:23 1995 Chris Provenzano (proven@mit.edu)
1007 * Makefile.in : Added gc_via_tkt.c and removed get_fcreds.c
1008 * auth_con.c (krb5_auth_con_setaddrs()) : Fixed so it allocates
1009 space and copies addresses, not just pointer.
1010 * mk_cred.c: Completely rewritten from sources donated by asriniva.
1011 * rd_cred.c: Completely rewritten from sources donated by asriniva.
1012 * mk_priv.c (krb5_mk_priv()), mk_safe.c (krb5_mk_safe()),
1013 rd_priv.c (krb5_rd_priv()), and rd_safe (krb5_rd_safe()) :
1014 Try using a subkey before using the session key for encryption.
1015 * recvauth.c (krb5_recvauth()): Don't close the rcache on success.
1017 Mon Apr 24 23:12:21 1995 Theodore Y. Ts'o <tytso@dcl>
1019 * Makefile.in, configure.in (t_walk_rtree): Add WITH_NETLIBS and
1020 $(LIBS), so that t_walk_rtree can compile under solaris.
1022 Mon Apr 24 17:09:36 1995 Ezra Peisach <epeisach@kangaroo.mit.edu>
1024 * parse.c (krb5_parse_name): Add magic number to new structure
1026 * get_creds.c: Fix comments describing operation
1028 * gc_frm_kdc.c: Fix comments describing operation
1030 * copy_cksum.c (krb5_copy_checksum): Fix comment in file
1032 * copy_addrs.c (krb5_append_addresses): ifdef out unused
1033 krb5_append_addresses function. (no API or prototype
1036 * copy_data.c (krb5_copy_data): Initialize magic number
1038 * init_ctx.c (krb5_init_context): If an error is returned from
1039 krb5_set_default_in_tkt_etypes or krb5_os_init_context,
1040 pass to caller instead of stack garbage.
1042 Sat Apr 22 11:06:45 1995 Ezra Peisach (epeisach@kangaroo.mit.edu)
1044 * Makefile.in: t_walk_rtree needs libcrypto
1046 * t_walk_rtree.c: error in checking for argument count
1048 Thu Apr 20 16:23:23 1995 Theodore Y. Ts'o (tytso@dcl)
1050 * copy_addrs.c, copy_athctr.c, copy_auth.c, copy_cksum.c,
1051 copy_creds.c, copy_key.c, copy_princ.c, copy_tick.c,
1052 gc_2tgt.c, gc_frm_kdc.c, gc_via_tgt.c, get_creds.c,
1053 mk_req_ext.c: Unless HAVE_C_STRUCTURE_ASSIGNMENT is defined, use
1054 memcpy to copy structures around, instead of using
1055 structure assignments. (Which aren't guaranteed to work
1056 on some broken compilers.)
1058 * mk_req.c (krb5_mk_req): Use krb5_sname_to_principal() in order
1059 to create the service principal from the service and
1060 hostname pair. This allows for the host cannoncialization
1063 * mk_req_ext.c (krb5_mk_req_extended): Revamp checksum handling
1064 code so that no checksum is performed in in_data is NULL,
1065 and the special case handing of cksumtype == 0x8003 for
1066 the GSSAPI library is handled correctly.
1068 Wed Apr 19 13:39:34 1995 Ezra Peisach <epeisach@kangaroo.mit.edu>
1070 * init_ctx.c: (krb5_init_context) initialize context default
1071 realm. (krb5_free_context) free default realm.
1073 Fri Apr 14 15:05:51 1995 <tytso@rsx-11.mit.edu>
1075 * sendauth.c (krb5_sendauth): initialize error return parameter
1077 * copy_princ.c (krb5_copy_principal): Fix bug where
1078 krb5_copy_principal can fail if it is asked to copy a
1079 principal with a zero-length component on a system where
1080 malloc(0) returns null.
1082 Thu Apr 13 15:49:16 1995 Keith Vetter (keithv@fusion.com)
1084 * *.[ch]: removed unneeded INTERFACE from non-api functions.
1086 Fri Mar 31 16:45:47 1995 Keith Vetter (keithv@fusion.com)
1088 * krb5_get_in_tkt: changed error return value for when clocks
1089 are out of skew to be KRB5_KDCREP_SKEW.
1091 Fri Mar 31 00:44:26 1995 Theodore Y. Ts'o (tytso@dcl)
1093 * rd_req.c (krb5_rd_req): Fix typo which caused new_keytab to not
1094 get freed, causing a memory leak.
1096 Thu Mar 30 15:49:27 1995 Keith Vetter (keithv@fusion.com)
1098 * rd_req.c: removed unused local variable.
1100 Tue Mar 28 18:34:20 1995 John Gilmore (gnu at toad.com)
1102 * rd_req_sim.c: Really remove the file.
1104 Mon Mar 27 08:34:49 1995 Chris Provenzano (proven@mit.edu)
1106 * Makefile.in: Removed rd_req_sim.c
1108 * auth_con.c: Default cksumtype is now CKSUMTYPE_RSA_MD4_DES.
1110 * auth_con.c: Added krb5_auth_con_setuseruserkey(),
1111 krb5_auth_con_getkey(),
1112 krb5_auth_con_getremotesubkey(),
1113 krb5_auth_con_getauthenticator(),
1114 krb5_auth_con_getremoteseqnumber(),
1115 krb5_auth_con_initivector().
1117 * auth_con.c: Fixed krb5_auth_con_getlocalsubkey() to check for
1118 a valid local_subkey before calling krb5_copy_keyblock().
1120 * auth_con.h: Fixed some comments.
1122 * mk_req_ext.c (krb5_mk_req_extended()): Always pass in a seed
1123 (the keyblock contents) to krb5_calculate_checksum()
1125 * rd_rep.c (krb5_rd_rep()): Use appropriate key to decode reply.
1127 * rd_safe.c (krb5_rd_safe()): Don't pass checksum to
1128 krb5_rd_safe_basic(), it's unnecessary.
1130 * compat_recv.c (krb5_compat_recvauth()):
1131 * mk_rep.c (krb5_mk_rep()):
1132 * rd_req.c (krb5_rd_req()):
1133 * rd_req_dec.c (krb5_rd_req_decode()):
1134 * recvauth.c (krb5_recvauth()):
1135 Added a krb5_auth_context argument and eliminated many of
1136 the other arguments because they are included in the
1137 krb5_auth_context structure.
1140 Tue Mar 21 19:22:51 1995 Keith Vetter (keithv@fusion.com)
1142 * mk_safe.c: fixed signed/unsigned mismatch.
1143 * rd_safe.c: removed unused local variable currentime.
1144 * mk_req_e.c: fixed signed/unsigned mismatch.
1146 Sat Mar 18 18:58:02 1995 John Gilmore (gnu at toad.com)
1148 * bld_pr_ext.c, bld_princ.c: Replace STDARG_PROTOTYPES with
1149 HAVE_STDARG_H for consistency.
1151 Fri Mar 17 19:48:07 1995 John Gilmore (gnu at toad.com)
1153 * Makefile.in (check-mac): Add.
1154 * compat_recv.c, get_fcreds.c, recvauth.c: Eliminate Unix socket
1155 #includes, which are now handled by k5-int.h (via k5-config.h).
1156 * conv_princ.c: Rename variable "comp" to another name; "comp"
1157 apparently bothers the MPW compiler...
1158 * rd_cred.c: Avoid (void) casts of void functions, for MPW.
1159 * t_walk_rtree.c: Put com_err.h after k5_int for <sys/types> stuff.
1160 (main): Declare and initialize the krb5_context that's being
1161 passed to everything.
1163 Fri Mar 10 10:58:59 1995 Chris Provenzano (proven@mit.edu)
1165 * auth_con.h auth_con.c Added for krb5_auth_con definition and
1168 * mk_req.c (krb5_mk_req())
1169 * mk_req_ext.c (krb5_mk_req_extended())
1170 * rd_rep.c (krb5_rd_rep())
1171 * sendauth.c (krb5_sendauth())
1172 * mk_priv.c (krb5_mk_priv())
1173 * mk_safe.c (krb5_mk_safe())
1174 * rd_priv.c (krb5_rd_priv())
1175 * rd_safe.c (krb5_rd_safe())
1176 Added a krb5_auth_context argument and eliminated many of
1177 the other arguments because they are included in the
1178 krb5_auth_context structure.
1180 * send_tgs.c (krb5_send_tgs()) Eliminate call to krb5_mk_req_extended(),
1181 which does far more than krb5_send_tgs() needs.
1183 Tue Mar 7 19:57:34 1995 Mark Eichin <eichin@cygnus.com>
1185 * configure.in: take out ISODE_INCLUDE.
1187 Tue Mar 7 13:20:06 1995 Keith Vetter (keithv@fusion.com)
1189 * Makefile.in: changed library name on the pc.
1190 * parse.c: disabled for the PC error messages to stderr.
1191 * chk_trans.c: fixed signed/unsigned assignment.
1193 Thu Mar 2 11:45:00 1995 Keith Vetter (keithv@fusion.com)
1195 * compat_recv.c, get_fcre.c, recvauth.c, sendauth.c: changed
1196 NEED_WINSOCK_H to NEED_SOCKETS.
1198 Wed Mar 1 20:15:00 1995 Keith Vetter (keithv@fusion.com)
1200 * compat_r.c, copy_pri.c, get_fcre.c, get_in_t.c, init_ctx.c, in_tkt_p.c
1201 in_tkt_s.c, preauth.c, princ_co.c, pr_to_sa.c, rd_req_d.c, recvauth.c
1202 sendauth.c, send_tgs.c, unparse.c: 16 vs 32 bit casts, removed some
1203 unused local variables, and pulled in winsock.h for network byte
1206 Tue Feb 28 01:14:57 1995 John Gilmore (gnu at toad.com)
1208 * *.c: Avoid <krb5/...> includes.
1209 * parse.c: Exdent #ifndef to left margin for old compilers.
1211 Wed Feb 22 17:14:31 1995 Keith Vetter (keithv@fusion.com)
1213 * walk_rtr.c (krb5_walk_realm_tree): formal parameter wasn't declared.
1214 * send_tgs.c: const in wrong place in the prototype.
1215 * get_in_tkt.c, preauth.c, rd_cred.c, rd_priv.c, rd_req_dec.c,
1216 rd_safe.c: needed a 32 bit abs() function.
1217 * parse.c: removed call to fprintf on error the windows version
1218 * send_auth.c: defined for windows the ECONNABORTED errno (will
1219 be removed when the socket layer is fully implemented).
1221 Tue Feb 21 23:38:34 1995 Theodore Y. Ts'o (tytso@dcl)
1223 * mk_cred.c (krb5_mk_cred): Fix argument type to
1224 krb5_free_cred_enc_part().
1226 Mon Feb 13 20:25:20 1995 Theodore Y. Ts'o (tytso@dcl)
1228 * get_in_tkt.c (krb5_get_in_tkt): Fix memory leak --- the default
1229 encryption types was not being freed.
1231 Fri Feb 10 15:45:59 1995 Theodore Y. Ts'o <tytso@dcl>
1233 * rd_req.c (krb5_rd_req): Remove ISODE cruft.
1235 Thu Feb 9 17:43:04 1995 Theodore Y. Ts'o <tytso@dcl>
1237 * gc_via_tgt.c (krb5_get_cred_via_tgt): Set up the keyblock's
1238 etype field correctly (after copying the keyblock, so it
1239 doesn't get overwritten!)
1241 Mon Feb 06 17:19:04 1995 Chris Provenzano (proven@mit.edu)
1243 * get_in_tkt.c (krb5_get_in_tkt())
1244 * in_tkt_sky.c (krb5_get_in_tkt_with_skey())
1245 * in_tkt_pwd.c (krb5_get_in_tkt_with_password())
1246 Removed krb5_keytype, changed krb5_enctype to krb5_enctype *,
1247 changed krb5_preauthtype to krb5_preauthtype *.
1249 Changed the args to the key_proc arg of krb5_get_in_tkt()
1250 to be the following (krb5_context, const krb5_keytype,
1251 krb5_data *, krb5_const_pointer, krb5_keyblock **)
1253 * in_tkt_ktb.c (krb5_get_in_tkt_with_keytab()) Added this routine
1254 to replace krb5_get_in_tkt_with_skey() in kinit.
1256 * Makefile.in Added new source file in_tkt_ktb.c.
1258 Fri Feb 3 16:41:19 1995 Mark Eichin (eichin@cygnus.com)
1260 * get_in_tkt.c (krb5_get_in_tkt): also check for the version
1261 number of the reply being whatever we had in the first byte of the
1264 Fri Feb 3 08:07:55 1995 Theodore Y. Ts'o (tytso@dcl)
1266 * compat_recv.c (krb_v4_recvauth): Use explicit 32 bit types so
1267 this will work on an Alpha.
1269 Fri Feb 3 00:43:48 1995 Tom Yu (tlyu@dragons-lair)
1271 * get_in_tkt.c (krb5_get_in_tkt): fix typo
1273 Thu Feb 2 20:51:55 1995 Mark Eichin (eichin@cygnus.com)
1275 * get_in_tkt.c (krb5_get_in_tkt): if krb5_is_as_rep fails, check
1276 if the packet might be a V4 error packet. Use modified V4 check so
1277 that it compiles under SCO.
1279 Mon Jan 30 15:46:14 1995 Chris Provenzano (proven@mit.edu)
1281 * int-proto.h Update prototypes for krb5_get_cred_via_tgt(), and
1282 krb5_get_cred_via_2tgt().
1284 * get_fcreds.c (krb5_get_for_creds())
1285 * gc_via_tgt.c (krb5_get_cred_via_tgt())
1286 * gc_2tgt.c (krb5_get_cred_via_2tgt())
1287 Removed krb5_enctype argument. Pass NULL list of encryption
1288 types to krb5_send_tgs to get default encryption types.
1290 * gc_frm_kdc.c Removed krb5_enctype argument passed to
1291 krb5_get_cred_via_tgt()
1293 * send_tgs.c (krb5_send_tgs()) Changed krb5_enctype arg to
1294 krb5_enctype *, a NULL terminated array of encryption
1295 types. If argument is NULL then krb5_send_tgs() will
1296 use defaul list of encryption types.
1298 * send_tgs.c (krb5_send_tgs()) To encrypt request ticket use
1299 usecred->keyblock.etype instead of (and now defunct)
1302 * init_ctx.c Added krb5_set_default_in_tkt_etypes() and
1303 krb5_get_default_in_tkt_etypes().
1305 * rd_req.c, rd_req_decode.c Removed typedef for rdreq_key_proc
1306 and use krb5_rd_req_decoded in its place.
1308 Mon Jan 30 11:26:05 1995 Chris Provenzano (proven@mit.edu)
1310 * get_fcreds.c Really needs #include<krb5/asn1.h> for definition
1311 of krb5_is_krb_error()
1313 Sat Jan 28 14:45:55 1995 Chris Provenzano (proven@mit.edu)
1315 * in_tkt_sky.c (skey_keyproc()), rd_req_dec.c (krb5_rd_req_decoded())
1316 use new API for krb5_kt_get_entry.
1318 Fri Jan 27 15:45:45 1995 Chris Provenzano (proven@mit.edu)
1320 * get_fcreds.c Removed #include<krb5/crc-32.h> and #include<krb5/asn1.h>
1322 Wed Jan 25 16:54:40 1995 Chris Provenzano (proven@mit.edu)
1324 * Removed all narrow types and references to wide.h and narrow.h
1326 Fri Jan 13 15:23:47 1995 Chris Provenzano (proven@mit.edu)
1328 * Added krb5_context to all krb5_routines
1330 Mon Dec 19 21:55:44 1994 Theodore Y. Ts'o (tytso@dcl)
1332 * init_ctx.c: New file. Initializes and frees the krb5_context
1335 Wed Dec 7 17:52:08 1994 <tytso@localhost>
1337 * rd_req_dec.c (decrypt_authenticator): If the subkey doesn't
1338 exist, don't try to set the subkey's etype.
1340 Wed Nov 30 17:10:39 1994 Theodore Y. Ts'o (tytso@dcl)
1342 * bld_princ.c (krb5_build_principal_va): Set the principal's type
1345 * Makefile.in: Build new test driver (t_walk_rtree) for
1346 krb5_walk_realm_tree.
1348 * walk_realm_tree.c (krb5_walk_realm_tree): Fix bug which occured
1349 when the client or the server is a subdomain of the other;
1350 walk_realm_tree would return the wrong answer, and suffer
1351 from memory access errors.
1353 * unparse.c (krb5_unparse_name_ext): Quote the '/' and '@'
1354 characters properly.
1356 * configure.in: Add appropriate help text for the --with-krb4
1357 option. Remove ISODE_DEFS call, since ISODE_INCLUDES now
1358 defines ISODE automatically.
1360 Mon Nov 21 15:30:07 1994 Theodore Y. Ts'o (tytso@dcl)
1362 * mk_req_ext.c (krb5_mk_req_extended): Sanitize how memory is
1363 freed in both error and normal cases, to remove memory
1366 * mk_req_ext.c (krb5_mk_req_extended): Use the encryption type
1367 specified by the ticket to generate the authenticator.
1369 * encode_kdc.c (krb5_encode_kdc_rep): Now requires that the
1370 caller pass in the encryption block to be used for
1371 encrpyting the ticket. That way, this routine doesn't
1372 need to create its own encryption block.
1374 * encrypt_tk.c (krb5_encrypt_tkt_part): Now requires that the
1375 caller pass in the encryption block to be used for
1376 encrpyting the ticket. That way, this routine doesn't
1377 need to create its own encryption block.
1379 Fri Nov 18 17:30:44 1994 Theodore Y. Ts'o (tytso@dcl)
1381 * mk_req_ext.c (krb5_mk_req_extended): Encrypt the authenticator
1382 using the same encryption system used to encrypt the ticket.
1384 Thu Nov 17 01:56:05 1994 Theodore Y. Ts'o (tytso@dcl)
1386 * gc_via_tgt.c (krb5_get_cred_via_tgt):
1387 * gc_2tgt.c (krb5_get_cred_via_2tgt): Set the encryption type of
1388 the session keyblock to be the type used to encrypt the
1391 Fri Nov 11 01:20:22 1994 Theodore Y. Ts'o (tytso@dcl)
1393 * get_in_tkt.c (krb5_get_in_tkt): Set the encryption type of the
1394 session keyblock to be the type used to encrypt the
1397 Thu Nov 10 23:56:43 1994 Theodore Y. Ts'o (tytso@dcl)
1399 * rd_rep.c (krb5_rd_rep): Set the encryption type in
1400 the subkey keyblock to be the encryption type used to
1401 encrypt the rd_rep message.
1403 * decrypt_tk.c (krb5_decrypt_tkt_part): Set the encryption type in
1404 the session keyblock to be the encryption type used to
1407 * rd_req_dec.c (decrypt_authenticator): Set the encryption type in
1408 the subkey keyblock to be the encryption type used to
1409 encrypt the authenticator.
1411 Tue Nov 8 17:09:48 1994 Theodore Y. Ts'o (tytso@dcl)
1413 * in_tkt_pwd.c (pwd_keyproc): Use the documented interface for
1414 calling krb5_string_to_key().
1416 Tue Oct 25 23:34:57 1994 Theodore Y. Ts'o (tytso@dcl)
1418 * srv_rcache.c (krb5_get_server_rcache): Added missing continue so
1419 that we don't copy both the unprintable character as well
1420 as the quoted version of it.
1422 Mon Oct 24 15:50:19 1994 Theodore Y. Ts'o (tytso@dcl)
1424 * configure.in: If KRB4 is defined, define KRB5_KRB4_COMPAT for
1427 Thu Oct 13 17:26:28 1994 Theodore Y. Ts'o (tytso@maytag)
1429 * configure.in: Add ISODE_DEFS
1431 Tue Oct 4 16:29:19 1994 Theodore Y. Ts'o (tytso@dcl)
1433 * in_tkt_sky.c (skey_keyproc):
1434 * in_tkt_pwd.c (pwd_keyproc): Add widen.h and narrow.h includes
1435 around pwd_keyproc, so that the keyproc input arguments
1436 are appropriately widened.
1438 Fri Sep 30 21:58:15 1994 Theodore Y. Ts'o (tytso@dcl)
1440 * preauth.c (preauth_systems): Add placeholder for magic number
1442 Thu Sep 29 15:31:10 1994 Theodore Y. Ts'o (tytso@dcl)
1444 * srv_rcache.c (krb5_get_server_rcache): cachename was not being
1445 properly null-terminated.
1447 * get_in_tkt.c (krb5_get_in_tkt): Return KRB5_IN_TKT_REALM_MISATCH
1448 if the client and server realms don't match. Return
1449 KRB5_KDCREP_SKEW if the KDC reply has an unacceptible
1450 clock skew (instead of KDCREP_MODIFIED.)
1452 * gc_via_tgt.c (krb5_get_cred_via_tgt): Use a distinct error code
1453 for KDC skew separate from the standard KDCREP_MODIFIED
1455 * princ_comp.c (krb5_realm_compare): Added new function from
1458 Wed Sep 21 17:57:35 1994 Theodore Y. Ts'o (tytso@dcl)
1460 * rd_req_dec.c (krb5_rd_req_decoded): Added Changes from Cybersafe
1461 to do transited realm path checking.
1463 * chk_trans.c: Added donated module from CyberSafe. It checks to
1464 see if a transited path is a legal one between two realms.
1466 Thu Sep 15 11:08:39 1994 Theodore Y. Ts'o (tytso@dcl)
1468 * rd_req_sim.c (krb5_rd_req_simple): Use krb5_rd_req instead of
1469 krb5_rd_req_decoded, to eliminate some code duplication.
1471 Sat Aug 20 01:43:43 1994 Theodore Y. Ts'o (tytso at tsx-11)
1473 * mk_req_ext.c (krb5_generate_authenticator): Fix pointer aliasing
1474 problem between newkey and authent->subkey.
1476 Wed Aug 17 17:58:22 1994 Theodore Y. Ts'o (tytso at tsx-11)
1478 * encode_kdc.c (krb5_encode_kdc_rep): Pass in to
1479 encode_krb5_enc_kdc_rep_part the msg_type which should be used.
1480 Old versions of Kerberos always assume TGS_REP; this merely allows
1481 the right msg_type to be passed down to the encoding routines.
1482 For now, the encoding routines will ignore this value and do
1483 things the old way, for compatibility's sake.
1485 Mon Aug 8 22:38:16 1994 Theodore Y. Ts'o (tytso at tsx-11)
1487 * preauth.c: Renamed preauthentication mechanism names to match
1488 what bcn and I agreed upon.
1490 Tue Jun 28 19:35:07 1994 Tom Yu (tlyu at dragons-lair)
1492 * decode_kdc.c: folding in Harry's changes
1494 * rd_req_sim.c: ditto
1495 * configure.in: adding ISODE_DEFS