1 Thu Feb 13 14:17:00 1997 Richard Basch <basch@lehman.com>
3 * get_in_tkt.c (krb5_get_in_tkt): Initialize as_reply; if
4 krb5_os_localaddr() returns an error, the cleanup
5 routine may try to free a garbage pointer (as_reply).
7 Wed Feb 12 20:47:30 1997 Tom Yu <tlyu@mit.edu>
9 * fwd_tgt.c (krb5_fwd_tgt_creds): Use the client's realm rather
10 than the server's realm for constructing the tgs principal.
11 Remove TC_MATCH_SRV_NAMEONLY from call to retrieve_cred()
12 because we want to get an exact match.
14 Mon Feb 10 10:41:36 1997 Ezra Peisach <epeisach@mit.edu>
16 * crypto_glue.c (krb5_calculate_checksum): Add krb5_const to
17 krb5_pointer of in data to match prototype.
19 Sat Feb 8 15:02:39 1997 Richard Basch <basch@lehman.com>
22 Export krb5_get_credentials_{renew,validate} (win32)
23 Removed unused variable.
25 Fri Feb 7 09:41:33 1997 Richard Basch <basch@lehman.com>
27 * mk_cred.c (krb5_mk_ncred): Declare ncred as krb5_int32 so that
28 the right value is pushed onto the stack when calling
31 * copy_addrs.c fwd_tgt.c mk_cred.c:
32 Use FAR keyword in pointer declarations.
34 * sendauth.c (krb5_sendauth): Do not free the credentials if they
35 are being returned to the caller [krb5-libs/357]
37 Sun Feb 2 20:57:15 1997 Richard Basch <basch@lehman.com>
39 * serialize.c: Added FAR declarations to pointer arguments for
40 all functions declared as KRB5_DLLIMP.
42 Thu Jan 30 21:44:37 1997 Richard Basch <basch@lehman.com>
45 Export more crypto-layer functions:
46 krb5_encrypt, krb5_decrypt, krb5_eblock_enctype,
47 krb5_process_key, krb5_finish_key, krb5_string_to_key,
48 krb5_init_random_key, krb5_finish_random_key, krb5_random_key
50 Sat Feb 8 18:41:42 1997 Tom Yu <tlyu@mit.edu>
53 * configure.in: Update to new program build procedure.
55 Thu Jan 2 17:16:18 1997 Tom Yu <tlyu@mit.edu>
58 * configure.in: Update to new library build procedure.
60 Mon Dec 23 17:20:03 1996 Theodore Y. Ts'o <tytso@mit.edu>
62 * Makefile.in (SRCS): Add brand.c to the SRCS line so that the
63 kerbsrc.mac.tar includes brand.c
65 Sat Dec 21 01:26:11 1996 Theodore Y. Ts'o <tytso@mit.edu>
67 * brand.c: New file, which allows a release engineer to "brand"
68 the krb5 library or a binary application program
69 statically linked against the krb5 library. This file is
70 statically included by init_ctx.c, to force it be in a
71 binary library or application program.
73 * init_ctx.c (krb5_init_context): Use new call krb5_vercheck() for
74 Windows timebomb checking; this call returns an error
75 code, which is returned to the user if the timebomb should
78 Thu Nov 21 14:55:16 EST 1996 Richard Basch <basch@lehman.com>
80 * Makefile.in: win32 build
82 * auth_con.c bld_pr_ext.c conv_princ.c copy_addrs.c copy_athctr.c
83 copy_auth.c copy_cksum.c copy_creds.c copy_data.c copy_key.c
84 copy_princ.c copy_tick.c cp_key_cnt.c decrypt_tk.c fwd_tgt.c
85 gc_via_tkt.c get_creds.c get_in_tkt.c in_tkt_ktb.c in_tkt_pwd.c
86 in_tkt_sky.c init_ctx.c mk_cred.c mk_error.c mk_priv.c mk_rep.c
87 mk_req.c mk_req_ext.c mk_safe.c parse.c princ_comp.c rd_cred.c
88 rd_error.c rd_priv.c rd_rep.c rd_req.c rd_safe.c recvauth.c
89 sendauth.c str_conv.c unparse.c valid_times.c
90 DLL export various functions (see lib/krb5.def for full list)
92 Thu Nov 21 13:54:01 1996 Ezra Peisach <epeisach@mit.edu>
94 * recvauth.c (krb5_recvauth): If there is an error, and the server
95 argument to krb5_recvauth is NULL, create a dummy server
96 entry for the krb5_error structure so that krb5_mk_error
97 will not die with missing required fields. [krb5-libs/209]
99 Wed Nov 13 14:30:47 1996 Tom Yu <tlyu@mit.edu>
101 * init_ctx.c: Revert previous kt_default_name changes.
103 Tue Nov 12 22:07:33 1996 Tom Yu <tlyu@mit.edu>
105 * init_ctx.c (krb5_init_context): Oops. Initialize kt_default_name
108 * init_ctx.c (krb5_free_context): Free kt_default_name if it's
111 Sat Nov 9 14:19:28 1996 Ezra Peisach <epeisach@mit.edu>
113 * Makefile.in (check-unix): Invoking t_ser requires that
114 KRB5_CONFIG points to a valid krb5.conf
116 * t_ser.c (main): If verbose flag is set and there is an error,
117 display error message.
119 Wed Nov 6 14:02:21 1996 Theodore Y. Ts'o <tytso@mit.edu>
121 * init_ctx.c (krb5_init_context): Initialize the error tables, so
122 applications don't need to call krb5_init_ets().
124 Tue Nov 5 08:09:23 1996 Ezra Peisach <epeisach@mit.edu>
126 * serialize.c (krb5_register_serializer): Do not free a NULL pointer.
128 Thu Oct 31 13:48:14 1996 Theodore Y. Ts'o <tytso@mit.edu>
130 * init_ctx.c (krb5_init_context): Make it more obvious that
131 default ticket lifetimes is not yet supported.
133 Tue Sep 24 20:59:14 1996 Theodore Y. Ts'o <tytso@mit.edu>
135 * get_in_tkt.c (make_preauth_list): Correctly null-terminate the
136 preauth list generated by make_preauth_list.
138 Thu Sep 19 12:29:59 1996 Theodore Y. Ts'o <tytso@mit.edu>
140 * unparse.c (krb5_unparse_name_ext): Make unparse correctly handle
141 a all cases where a principal contains a nulls, backspace,
144 * t_kerb.c (test_parse_principal): Add test for checking
145 krb5_parse_principal()
147 * parse.c (krb5_parse_name): Set all of the magic field values.
149 Wed Jul 24 17:09:39 1996 Theodore Y. Ts'o <tytso@mit.edu>
151 * preauth.c (find_pa_system): Change type of first argument to be
152 krb5_preauthtype, to eliminate compiler warnings under
155 Wed Jul 10 20:22:41 1996 Theodore Y. Ts'o <tytso@mit.edu>
157 * init_ctx.c (krb5_init_context): Add a call to krb5_win_do_init()
158 on Win16 and Win32 machines. This is where we do timebomb
159 and version server checking.
161 Sun Jul 7 15:14:43 1996 Ezra Peisach <epeisach@kangaroo.mit.edu>
163 * get_creds.c: (krb5_get_credentials_val_renew_core) Combine
164 common internals needed from krb5_get_credentials_validate()
165 and used by new function krb5_get_credentials_renew()
167 * gc_frm_kdc.c (krb5_get_cred_from_kdc_renew): A wrapper that
168 passes KDC_OPT_RENEW to the static
169 krb5_get_cred_from_kdc_opt so that kinit can use it.
172 Mon Jun 24 09:45:04 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
174 * bld_princ.c (krb5_build_principal_va): Change const to
175 krb5_const, so that it works on compilers that don't
178 Mon Jun 17 20:23:48 1996 Ezra Peisach <epeisach@kangaroo.mit.edu>
180 * str_conv.c (krb5_string_to_timestamp): Ensure that all fields of
181 the timestamp are filled in if strptime does not fill in
184 Wed Jun 12 01:10:09 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
186 * sendauth.c (krb5_sendauth): If ECCONABORTED is not defined, try
187 using the Winsock equivalent (WSAECONNABORTED).
189 Mon Jun 10 21:47:21 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
191 * parse.c (krb5_parse_name): Change use of _WINDOWS to _MSDOS, and
192 add check for _WIN32.
194 Thu Jun 6 00:06:18 1996 Theodore Y. Ts'o <tytso@mit.edu>
196 * get_creds.c (krb5_get_credentials_core): A static function must
197 not use the INTERFACE keyword.
199 Tue May 14 18:39:22 1996 Richard Basch <basch@lehman.com>
201 * mk_req_ext.c mk_safe.c send_tgs.c:
202 set the length field of the krb5_checksum structure before
203 calling krb5_calculate_checksum.
205 * str_conv.c: replaced sha-des3 cksum with hmac-sha.
207 Tue May 14 02:53:42 1996 Theodore Y. Ts'o <tytso@mit.edu>
209 * ser_ctx.c (krb5_context_size, krb5_context_externalize,
210 krb5_context_internalize): Add missing fields from the
211 serialized context: clockskew, default_kdc_req_sumtype,
212 default_ap_req_sumtype, default_safe_sumtype,
213 kdc_default_options, library_options, profile_secure,
214 fcc_default_format, scc_default_format.
216 * ser_actx.c (krb5_auth_context_size, krb5_auth_context_externalize,
217 krb5_auth_context_internalize): Serialize the two fields
218 req_cksumtype and safe_cksumtype, instead of the one
221 * mk_safe.c (krb_mk_safe): Use safe_cksumtype instead of cksumtype
224 * mk_req_ext.c (krb5_mk_req_extended): Use req_cksumtype instead
225 of cksumtype in the auth context.
227 * init_ctx.c (krb5_init_context): Add support for new profile
228 relations libdefaults/tkt_lifetime,
229 libdefaults/kdc_req_checksum_type,
230 libdefaults/ap_req_cksumtype,
231 libdefaults/safe_checksumtype, and
232 libdefaults/kdc_default_options.
234 * auth_con.h: Remove old cksumtype element, and replace it with
235 req_cksumtype and safe_cksumtype.
237 * auth_con.c (krb5_auth_con_init): Initialize the req_cksumtype
238 and safe_cksumtype from the context's default
239 req_cksumtype and safe_cksumtype.
240 (krb5_auth_con_set_req_cksumtype,
241 krb5_auth_con_set_safe_cksumtype): New functions, to
242 replace old krb5_auth_con_setcksumtype
244 Fri May 10 18:48:38 EDT 1996 Richard Basch <basch@lehman.com>
246 * init_ctx.c: Removed des3-cbc-md5 default support
248 Fri May 10 02:51:17 1996 Richard Basch <basch@lehman.com>
250 * str_conv.c: changes des3-md5 to des3-sha & added sha cksum types
252 Sun May 5 09:46:18 1996 Ezra Peisach (epeisach@kangaroo.mit.edu)
254 * preauth.c: Add casts and const keywords as needed.
256 Fri May 3 00:15:18 1996 Mark Eichin <eichin@cygnus.com>
258 * get_creds.c (krb5_get_credentials_core): new function. Common
259 part of krb5_get_credentials and krb5_get_credentials_validate.
260 Some formerly local variables are now arguments.
261 (krb5_get_credentials): same as before, but calls _core to do some
263 (krb5_get_credentials_validate): uses
264 krb5_get_cred_from_kdc_validate and only stores the returned
265 credential in the cache, instead of storing all of them.
267 Thu May 2 22:48:56 1996 Mark Eichin <eichin@cygnus.com>
269 * gc_frm_kdc.c (krb5_get_cred_from_kdc_opt): new function. Same
270 body as krb5_get_cred_from_kdc, but takes one new argument,
271 kdcopts, and combines it with the other kdc options when calling
272 krb5_get_cred_via_tkt. This is static and only called by
273 (krb5_get_cred_from_kdc): a wrapper that provides the same
274 function it did before, and
275 (krb5_get_cred_from_kdc_validate): a wrapper that passes
276 KDC_OPT_VALIDATE, so that kinit can use it.
277 We'll probably need another one for renewing tickets as well.
279 * rd_req_dec.c (krb5_rd_req_decoded_opt): new function. Same body
280 as krb5_rd_req_decoded, but takes one new argument,
281 check_valid_flag, to determine whether or not to check if the
282 "invalid flag" is set in the ticket. Also made static, so that it
284 (krb5_rd_req_decoded): wrapper for krb5_rd_req_decoded_opt that
285 specifies the "invalid flag" gets checked, and
286 (krb5_rd_req_decoded_anyflag): wrapper for krb5_rd_req_decoded_opt
287 that specifies that the "invalid flag" doesn't get checked. (This
288 version is only called from kdc_util.c:kdc_process_tgs_req.)
290 Wed May 1 14:30:29 1996 Richard Basch <basch@lehman.com>
292 * srv_rcache.c (krb5_get_server_rcache): include the uid in the
293 default server replay cachename, for systems with geteuid.
295 * configure.in: test if the system has geteuid()
297 Wed May 1 02:26:53 1996 Mark Eichin <eichin@cygnus.com>
299 * str_conv.c (krb5_string_to_timestamp): double check that
300 strptime at least parsed *some* of the string, avoid degenerate
301 cases from GNU libc strptime.
303 Tue Apr 30 18:19:01 1996 Ken Raeburn <raeburn@cygnus.com>
305 * t_ser.c (stuff): New variable.
306 (ser_acontext_test, ser_eblock_test, ser_cksum_test): Use it,
307 instead of assuming it's valid to treat &FUNCTION as a data
310 * conv_princ.c (sconv_list): Now const.
311 (krb5_*_conv_principal): Use pointer to const for it.
313 Tue Apr 23 19:39:59 1996 Mark Eichin <eichin@cygnus.com>
315 * get_creds.c (krb5_get_credentials): this isn't the kernel, so
316 don't return negative errno values.
318 Sat Apr 27 19:14:21 1996 Richard Basch <basch@lehman.com>
320 * fwd_tgt.c (krb5_fwd_tgt_creds): fixed a possible null dereference.
322 Wed Apr 17 14:22:10 1996 Theodore Y. Ts'o <tytso@mit.edu>
324 * conv_princ.c: Added ftp and ecat to the list of services which
325 should be converted. This really ought to be something
326 that's configurable in the profile...
328 Thu Apr 11 21:30:23 1996 Theodore Y. Ts'o <tytso@dcl>
330 * init_ctx.c (krb5_init_context): On a Macintosh, turn on
331 kdc_timesync and use the v4 credentials cache by default.
333 * get_in_tkt.c (stash_as_reply, verify_as_reply): Move time offset
334 code from stash_as_reply to verify_as_reply, and fix it so
335 that it actually works.
337 Wed Apr 3 16:04:36 1996 Theodore Y. Ts'o <tytso@dcl>
339 * rd_req_dec.c (krb5_rd_req_decoded): Move code which
340 validated the ticket times to krb5_validate_times.
342 * valid_times.c (krb5_validate_times): New function which
343 determines whether or not the ticket times are valid.
345 * mk_req_ext.c (krb5_mk_req_extended): Call krb5_validate_time()
346 to determine whether or not the ticket in passed-in
347 credentials is valid. If it isn't, return an error right
350 Wed Mar 27 17:05:47 1996 Richard Basch <basch@lehman.com>
352 * in_tkt_ktb.c (keytab_keyproc): Do not check to see that the
353 enctype of the key is identical; there are several equivalent
356 * in_tkt_ktb.c (krb5_get_in_tkt_with_keytab): Removed the fancy
357 logic to only request the keytypes that correspond to those in
358 the keytab. There were too many fencepost conditions that could
359 get you into trouble. Either it should be there and *fully*
360 functional, or not in there at all. Besides, there are too many
361 other components in Kerberos that expect the end-service to know
362 all its keys that this sanity check is overkill.
364 Tue Mar 26 14:45:03 1996 Richard Basch <basch@lehman.com>
366 * conv_princ.c: added "imap" service to the conversion list as
367 requiring domain conversion for the instance. (imap/<host> is used
368 by some of the new imap mail implementations)
370 Sun Mar 24 01:34:14 1996 Sam Hartman <hartmans@tertius.mit.edu>
372 * send_tgs.c (krb5_send_tgs_basic): You want to setup the eblock
373 used for the authenticator using the in_cred->keyblock, *not*
374 request.ticket.enc_part.enctype. Under a multi-enctype system,
375 the session key may be different from the ticket key.
377 Wed Mar 20 23:00:59 1996 Theodore Y. Ts'o <tytso@dcl>
379 * walk_rtree.c (krb5_walk_realm_tree): Fix 16bit vs. 32bit error.
380 (cap_code should been a krb5_error_code, not an int!)
382 * mk_cred.c (krb5_mk_ncred_basic): Fix windows lint flame.
384 * get_in_tkt.c (krb5_get_in_tkt): Fix 16bit vs. 32bit error.
385 (do_more should not have been an int!)
387 Tue Mar 19 13:03:26 1996 Richard Basch <basch@lehman.com>
389 * in_tkt_ktb.c (krb5_get_in_tkt_with_keytab):
390 Only request keytypes that correspond to those in the keytab.
392 Mon Mar 18 21:49:39 1996 Ezra Peisach <epeisach@kangaroo.mit.edu>
394 * configure.in: Add KRB5_RUN_FLAGS
396 * Makefile.in: Use runtime flags.
398 Sun Mar 17 20:32:08 1996 Ezra Peisach <epeisach@dumpster.rose.brandeis.edu>
400 * configure.in: Add USE_ANAME, USE_KRB5_LIBRARY, KRB5_LIBRARIES so
401 that Makefile does not have to know build tree layout.
403 * Makefile.in: Rework to be consistant with configure defines so
404 that configure can specify other needed libraries.
406 Sun Mar 17 02:10:19 1996 Mark W. Eichin <eichin@cygnus.com>
408 * copy_addrs.c (krb5_copy_addr): make non-static so we can use it
410 * mk_cred.c (krb5_mk_ncred_basic): copy local_addr and remote_addr
411 instead of just aliasing them, so we can safely free them ourselves.
413 Fri Mar 15 14:29:00 1996 Richard Basch <basch@lehman.com>
415 * in_tkt_ktb.c: Close the keytab if we opened it, not if the
418 Wed Mar 13 17:31:30 1996 Ken Raeburn <raeburn@cygnus.com>
420 * configure.in: Use AC_HEADER_STDARG.
422 Mon Mar 11 11:15:26 1996 Ezra Peisach <epeisach@kangaroo.mit.edu>
424 * str_conv.c (krb5_timestamp_to_string): Handle statement not
427 * ser_addr.c (krb5_address_internalize): Add magic numbers
429 Thu Feb 29 11:49:38 1996 Theodore Y. Ts'o <tytso@dcl>
431 * fwd_tgt.c (NEED_SOCKETS): Use NEED_SOCKETS instead of #including
434 Sat Feb 24 16:27:54 1996 Theodore Y. Ts'o <tytso@dcl>
436 * gc_via_tkt.c (krb5_get_cred_via_tkt): Fix memory leak; free
439 Thu Jan 25 01:35:52 1996 Sam Hartman <hartmans@tertius.mit.edu>
441 * rd_req_dec.c (krb5_rd_req_decrypt_tkt_part): Remove outdated
442 comment about mapping etype to ktype.
444 * gc_via_tkt.c (krb5_get_cred_via_tkt): If the keyblock.enctype is
445 non-null in in_cred, then request that particular key.
447 Wed Jan 24 21:48:53 1996 Sam Hartman <hartmans@tertius.mit.edu>
449 * get_creds.c (krb5_get_credentials): Only match against enctype
450 if it is non-null in increds.
452 Sun Jan 21 23:32:53 1996 Tom Yu <tlyu@dragons-lair.MIT.EDU>
454 * gc_via_tkt.c (krb5_kdcrep2creds): Set is_skey so get_creds won't
455 break trying to match is_skey in the ccache. This way we
456 won't end up with many copies of user-to-user tickets.
458 Fri Jan 19 23:16:17 1996 Ezra Peisach <epeisach@kangaroo.mit.edu>
460 * mk_req.c (krb5_mk_req): krb5_get_credentials does not take
463 * sendauth.c (krb5_sendauth): krb5_get_credentials does not take
466 Wed Jan 10 21:01:36 1996 Theodore Y. Ts'o <tytso@dcl>
468 * init_ctx.c (krb5_init_context): Added checking of profile for
469 DCE compatability options (ccache type, and checksum type).
471 * fwd_tgt.c (krb5_fwd_tgt_creds): Initialize addrs to 0 so that we
472 don't try to free stack garbage on an error.
474 * krbconfig.c, Makefile.in: Removed krbconfig.c; it contained
475 global variables which are no longer used.
477 * recvauth.c: Removed the global extern of
478 krb5_kdc_default_options, which wasn't being used anyway.
480 * mk_req.c (krb5_mk_req): Replace use of krb5_kdc_default_options
481 with context->kdc_default_options.
483 * gc_frm_kdc.c: Remove the global extern of krb5_kdc_req_sumtype,
484 which wasn't being used anymore anyway.
486 * send_tgs.c (krb5_send_tgs_basic): Remove use of the global
487 variable krb5_kdc_req_sumtype, and use the kdc_req_sumtype
488 in the context structure instead.
490 * walk_rtree.c (krb5_walk_realm_tree): Applied patch submitted by
491 Doug Engbert, so that the configurable authentication
492 patch takes into account the null entry at the end of the
495 Tue Jan 9 22:04:09 1996 Theodore Y. Ts'o <tytso@dcl>
497 * fwd_tgt.c (krb5_fwd_tgt_creds): New function which handles all
498 of the dirty work of forwarding TGT's.
500 * rd_cred.c (krb5_rd_cred_basic): Clean up memory allocation
501 discpline to remove memory leaks.
503 * mk_cred.c (krb5_mk_ncred_basic, krb5_mk_ncred, krb5_mk_1cred):
504 Clean up memory allocation discpline to remove memory
507 * init_ctx.c (krb5_get_tgs_ktypes): Clean up parsing of the etype
508 list. Don't overrun the string containing the etype list.
510 Wed Jan 3 21:32:59 1996 Theodore Y. Ts'o <tytso@dcl>
512 * rd_cred.c (krb5_rd_cred_basic): When the keyblock is NULL,
513 assume we're being called from the gssapi code, which
514 doesn't have access to the sender or receive address
515 information, don't check the sender address, since it
518 * rd_cred.c (decrypt_credencdata): When calling krb5_rd_credd(),
519 if the keyblock is null, just copy the encoded structure
520 from the "ciphertext" part of the structure and decode it.
522 * mk_cred.c (encrypt_credencpart): When calling krb5_mk_cred(), if
523 the keyblock is NULL, don't encrypt it; just encode it and
524 leave it in the ciphertext area of the structure.
526 Thu Dec 21 18:47:54 1995 Theodore Y. Ts'o <tytso@dcl>
528 * rd_rep.c (krb5_rd_rep): Change use of
529 KRB5_SENDAUTH_MUTUAL_FAILED to KRB5_MUTUAL_FAILED.
531 Tue Dec 19 17:15:40 1995 Theodore Y. Ts'o <tytso@dcl>
533 * rd_cred.c (krb5_rd_cred_basic): Missing parenthesis meant that
534 wrong number of bytes was being allocated.
536 Sun Dec 3 11:49:09 1995 Ezra Peisach <epeisach@kangaroo.mit.edu>
538 * Makefile.in (SRCS/OBJS): Move compat_recv.c to krb5util library.
540 Fri Dec 1 17:04:43 1995 Theodore Y. Ts'o <tytso@dcl>
542 * recvauth.c (krb5_recvauth): Initialize rcache to zero, so that
543 on cleanup we don't try to free stack garbage.
545 Sun Nov 26 19:31:18 1995 Tom Yu <tlyu@dragons-lair.MIT.EDU>
547 * preauth.c: Ultrix is broken. Prototype obtain_enc_ts_padata()
548 and process_pw_salt() explicitly rather than using the
549 typedef in k5-int.h becaus that typedef is to a function
552 Fri Nov 17 22:35:52 1995 Theodore Y. Ts'o <tytso@dcl>
554 * get_in_tkt.c (decrypt_as_reply):
555 * preauth.c (process_pw_salt): When fetching the key to decrypting
556 the encrypted kdc reply, use the etype associated with the
557 etype reply, not the etype associated with the included
560 * encode_kdc.c: Remove eblock argument from krb5_encode_kdc_rep;
561 set the eblock type from the client_key's enctype.
563 Thu Nov 16 20:29:17 1995 Ezra Peisach <epeisach@kangaroo.mit.edu>
565 * srv_rcache.c (krb5_get_server_rcache): Use krb5_rc_default_type
566 instead of assuming default rcache type is "dfl".
568 Mon Nov 13 14:40:05 1995 <tytso@rsts-11.mit.edu>
570 * walk_rtree.c (krb5_walk_realm_tree): Added ANL changes to
571 support configuration authentication paths.
573 Mon Nov 13 12:57:12 1995 Theodore Y. Ts'o <tytso@dcl>
575 * preauth.c (krb5_process_padata): Added generalized processing
576 for preauth information which is returned by the KDC.
577 This should be general enough to support the AFS3_SALT
578 preauth type, the SNK4 preauth type, and the public-key
580 (process_pw_salt): New function for processing the KRB5_PW_SALT
581 preauthentication type.
583 * get_in_tkt.c (decrypt_as_reply): Removed temporary kludge for
584 processing the PW_SALT preauth type; that's now done in
586 (krb5_get_in_tkt): Call krb5_process_padata with new arguments so
587 that the preauth code can set the decryption_key if
590 Thu Nov 09 17:05:57 1995 Chris Provenzano (proven@mit.edu)
592 * in_tkt_pwd.c : Remove krb5_enctype from krb5_string_to_key() args.
594 Thu Nov 9 00:02:43 1995 Theodore Y. Ts'o <tytso@dcl>
596 * get_in_tkt.c (krb5_get_in_tkt): Remove the etype_info argument
597 from the call to krb5_obtain_padata.
599 * preauth.c (krb5_obtain_padata): Use the PADATA_ETYPE_INFO
600 preauth, if it exists, to determine which salt type to use
601 when encrypting the preauthentication data. Remove the
604 Wed Nov 8 02:50:59 1995 Theodore Y. Ts'o <tytso@dcl>
606 * krbconfig.c: Removed the krb5_clockskew variable.
608 * srv_rcache.c (krb5_get_server_rcache):
609 * rd_safe.c (krb5_rd_safe):
610 * rd_req_dec.c (krb5_rd_req_decoded):
611 * rd_priv.c (krb5_rd_priv):
612 * rd_cred.c (krb5_rd_cred):
613 * gc_via_tkt.c (krb5_get_cred_via_tkt):
614 * get_in_tkt.c (verify_as_reply): Replace use of krb5_clockskew
615 with context->clockskew.
617 * encrypt_tk.c (cleanup_scratch): Changed interface to no longer
618 require an eblock; we can use our own and figure out the
619 enctype from the passed-in key.
621 * get_in_tkt.c (krb5_get_in_tkt): Added calls to
622 krb5_obtain_padata().
624 * preauth.c: Completely restructured file to support
628 Fri Oct 27 22:15:33 1995 Theodore Y. Ts'o <tytso@dcl>
630 * get_in_tkt.c (krb5_get_in_tkt): Extensive reworking of the
631 structure of this file to make it possible to support
634 Mon Oct 23 17:08:59 1995 Theodore Y. Ts'o <tytso@dcl>
636 * in_tkt_pwd.c (krb5_get_in_tkt_with_password): Fix to properly
637 malloc password buffer.
639 Mon Oct 23 11:09:56 1995 Ezra Peisach <epeisach@kangaroo.mit.edu>
641 * rd_req_dec.c (krb5_rd_req_decoded): For heirarchal cross-realm,
642 set the length after initializing string.
644 * rd_req.c (krb5_rd_req): If a new auth_context is created
645 and then there is an error, make sure return pointer is not
646 looking at freed memory.
648 Fri Oct 6 22:04:42 1995 Theodore Y. Ts'o <tytso@dcl>
650 * Makefile.in: Remove ##DOS!include of config/windows.in.
651 config/windows.in is now included by wconfig.
653 Fri Sep 29 00:08:53 1995 Theodore Y. Ts'o <tytso@dcl>
655 * gc_via_tkt.c (krb5_get_cred_via_tkt): Only check the returned
656 starttime to make sure it matches the requested starttime
657 if we requested a postdated ticket.
659 Thu Sep 28 22:58:53 1995 Theodore Y. Ts'o <tytso@dcl>
661 * conv_princ.c (krb5_425_conv_principal): Only convert instances
662 which don't have a '.' in them. If they have a '.',
663 assume that they are fully qualified already.
665 Thu Sep 28 12:00:00 1995 John Rivlin <jrivlin@fusion.com)
667 * gc_via_tkt.c: Cleaned up corrupt ticket error testing to
668 make it more debugable and I think work around a compiler
671 Mon Sep 25 16:57:59 1995 Theodore Y. Ts'o <tytso@dcl>
673 * Makefile.in: Removed "foo:: foo-$(WHAT)" lines from the
676 Wed Sep 13 10:58:20 1995 Keith Vetter (keithv@fusion.com)
678 * get_in_t.c: removed unused variable.
679 * rd_cred.c: removed INTERFACE keyword.
680 * ser_auth.c: passing int32 where a size_t is wanted.
681 * ser_ctx.c: 16/32 bit int size mismatch.
683 Sun Sep 17 23:41:19 1995 Ezra Peisach <epeisach@kangaroo.mit.edu>
685 * rd_safe.c: Fix typo error.
687 Sat Sep 16 01:23:14 1995 Theodore Y. Ts'o <tytso@dcl>
689 * sendauth.c (krb5_sendauth): Make sure the scratch credentials
690 structure may have possible been used be freed..
692 * rd_safe.c (krb5_rd_safe_basic): Fall through to the cleanup code
693 at the end, to make sure the decoded message in message is
696 * rd_req_dec.c (krb5_rd_req_decoded): Use krb5_copy_keyblock to
697 copy authent->subkey to auth_context->remote_subkey.
698 Keeping them separate avoids aliasing problems.
700 * mk_req_ext.c (krb5_generate_authenticator): Fix memory leak.
701 Don't bash authent->subkey with key after carefully
702 copying it using krb5_copy_keyblock!
704 * recvauth.c (krb5_recvauth): krb5_get_server_rcache() already
705 opens the rcache; doing it again merely causes a memory leak.
707 Fri Sep 15 17:20:08 1995 Theodore Y. Ts'o <tytso@dcl>
709 * gen_subkey.c (krb5_generate_subkey): Eliminate memory leak.
710 krb5_init_random_key() does its own allocation of the
713 * gc_via_tkt.c (krb5_kdcrep2creds): Fix memory leak.
715 * srv_rcache.c (krb5_get_server_rcache): Fix memory leak.
717 * rd_safe.c (krb5_rd_safe_basic): Fix memory leak.
719 Tue Sep 12 12:40:30 1995 Ezra Peisach <epeisach@kangaroo.mit.edu>
721 * t_ser.c (ser_cksum_test): Work around an optimizer bug unser
724 Sun Sep 10 12:00:00 1995 James Mattly (mattly@fusion.com)
726 * gen_seqnum.c: change usage of krb5_crypto_us_timeofday to krb5_timeofday
727 * get_in_tkt.c: change usage of krb5_crypto_us_timeofday to krb5_timeofday
728 * mk_priv.c: change usage of krb5_crypto_us_timeofday to krb5_timeofday
729 * mk_req_ext.c: change usage of krb5_crypto_us_timeofday to krb5_timeofday
730 * send_tgs.c: change usage of krb5_timeofday over to krb5_crypto_us_timeofday
732 Wed Sep 06 14:20:57 1995 Chris Provenzano (proven@mit.edu)
734 * auth_con.c, decrypt_tk.c, encode_kdc.c, encrypt_tk.c,
735 * gc_frm_kdc.c, gen_seqnum.c, get_creds.c, get_in_tkt.c,
736 * in_tkt_ktb.c, in_tkt_pwd.c, in_tkt_sky.c, init_ctx.c,
737 * kdc_rep_dc.c, mk_cred.c, mk_priv.c, mk_rep.c, mk_req._ext.c,
738 * preauth.c, rd_cred.c, rd_priv.c, rd_rep.c, rd_req_dec.c,
739 * send_tgs.c, sendauth.c, ser_actx.c, ser_ctx.c, ser_eblk.c,
740 * ser_key.c, t_ser.c : s/keytype/enctype/g, s/KEYTYPE/ENCTYPE/g
742 Wed Sept 6 12:00:00 EDT 1995 James Mattly (mattly@fusion.com)
744 * get_in_tkt.c: change usage of krb5_timeofday to krb5_crypto_us_timeofday
745 * mk_req_ext.c: change usage of timeofday
746 * parse.c: disabled a usage of exit for macintosh
747 * send_tgs.c: change usage of krb5_timeofday over to
748 krb5_crypto_us_timeofday
749 * unparse.c: include <stdio.h>
752 Tue Sep 05 22:10:34 1995 Chris Provenzano (proven@mit.edu)
754 * decode_kdc.c, decrypt_tk.c, encode_kdc.c, encrypt_tk.c, gc_frm_kdc.c
755 * gc_via_tkt.c, get_in_tkt.c, in_tkt_ktb.c, in_tkt_pwd.c, in_tkt_sky.c
756 * init_ctx.c, kdc_rep_dc.c, mk_cred.c, mk_priv.c, mk_rep.c
757 * mk_req_ext.c, rd_cred.c, rd_priv.c, rd_rep.c, rd_req_dec.c,
758 * send_tgs.c, ser_ctx.c, ser_eblk.c, ser_key.c, t_ser.c:
759 Remove krb5_enctype references, and replace with
760 krb5_keytype where appropriate
762 Fri Sep 1 20:03:41 1995 Theodore Y. Ts'o <tytso@dcl>
764 * get_in_tkt.c (krb5_get_in_tkt): If kdc_settime is enabled, then
765 set the time_offset fields from the returned ticket's
768 * init_ctx.c (krb5_init_context): Initialize new fields in
769 krb5_context (clockskew, kdc_req_sumtype, and
770 kdc_default_options).
772 * gc_via_tkt.c (krb5_get_cred_via_tkt): Perform the necessary
773 sanity checking on the KDC response to make sure we detect
776 * send_tgs.c (krb5_send_tgs): Set the expected nonce in the
779 * krbconfig.c: Set the default checksum to use MD5
781 Fri Sep 1 11:16:43 EDT 1995 Paul Park (pjpark@mit.edu)
782 * ser_ctx.c - Add handling of new time offset fields in the os_context.
785 Tue Aug 29 14:14:26 EDT 1995 Paul Park (pjpark@mit.edu)
786 * Makefile.in, .Sanitize, ser_{actx,adata,addr,auth,cksum,ctx,eblk,key,
787 princ}.c, serialize.c, t_ser.c - Add serialization operations
788 for data structures required to serialize krb5_context, krb5_
789 auth_context, krb5_encrypt_block and krb5_principal.
790 * auth_con.h - Add magic number.
791 * auth_con.c - Add static routine to copy an address and use this
792 instead of the other code. Set the magic number when initing
793 an auth_context. Use krb5_free_address to release an address.
794 * init_ctx.c - Free the allocated serializers when releasing context.
795 * rd_rep.c - Copy the keyblock from the message instead of setting
798 Thu Aug 24 18:55:50 1995 Theodore Y. Ts'o <tytso@dcl>
800 * .Sanitize: Update file list.
802 Mon Aug 7 18:54:35 1995 Theodore Y. Ts'o <tytso@dcl>
804 * in_tkt_ktb.c (keytab_keyproc): If there is an error looking up
805 the key, make sure the keytab is closed as part of the
808 Fri Aug 4 22:04:08 1995 Tom Yu <tlyu@dragons-lair.MIT.EDU>
810 * conv_princ.c: Add braces to initializer to shut up gcc -Wall
812 Fri Jul 7 16:31:06 EDT 1995 Paul Park (pjpark@mit.edu)
813 * Makefile.in - Find com_err in TOPLIBD.
814 * rd_safe.c - Use checksum verifier instead of doing it manually.
816 Thu Jul 6 17:31:40 1995 Tom Yu <tlyu@lothlorien.MIT.EDU>
818 * rd_safe.c (krb5_rd_safe_basic): Pass context to os_localaddr.
820 * rd_priv.c (krb5_rd_priv_basic): Pass context to os_localaddr.
822 * rd_cred.c (krb5_rd_cred_basic): Pass context to os_localaddr.
824 * get_in_tkt.c (krb5_get_in_tkt): Pass context to os_localaddr.
826 Wed July 5 15:52:31 1995 James Mattly <mattly@fusion.com>
827 * added condition for _MACINTOSH
829 Sun Jul 2 18:59:53 1995 Sam Hartman <hartmans@tertius.mit.edu>
831 * recvauth.c (krb5_recvauth): recvauth should send an error reply
832 if problem is not zero. Removed if that caused it to only send a
835 Fri Jun 16 22:11:21 1995 Theodore Y. Ts'o (tytso@dcl)
837 * get_in_tkt.c (krb5_get_in_tkt): Allow the credentials cache
838 argument to be optional; allow it to be NULL, meaning that
839 the credentials shouldn't be stored in a credentials cache.
841 Mon Jun 12 16:49:42 1995 Chris Provenzano (proven@mit.edu)
843 A couple bug reports/patches from Ed Phillips (flaregun@udel.edu)
844 * in_tkt_ktb.c (keytab_keyproc()): Fix memory leak.
845 * recvauth.c (krb5_recvauth()): Don't open a new rcache if
846 the auth_context already has one.
847 * auth_con.c (krb5_auth_con_free()): Close rcache is the
848 auth_context has one set.
849 * auth_con.c (krb5_auth_con_getrcache()): Return pointer
850 to the rcache set in the auth_context.
852 Sun Jun 11 12:31:39 1995 Ezra Peisach (epeisach@kangaroo.mit.edu)
854 * auth_con.c (krb5_auth_con_init): Zero newly allocated
855 krb5_auth_context. (Fixed error in redefinitions).
857 Sat Jun 10 23:05:51 1995 Tom Yu (tlyu@dragons-lair)
859 * auth_con.c, compat_recv.c, mk_cred.c, mk_priv.c, mk_rep.c,
860 mk_req.c, mk_req_ext.c, mk_safe.c, rd_cred.c, rd_priv.c,
861 rd_rep.c, rd_req.c rd_req_dec.c, rd_safe.c, recvauth.c,
862 sendauth.c: krb5_auth_context redefinitions
864 Fri Jun 9 18:48:43 1995 <tytso@rsx-11.mit.edu>
866 * rd_req_dec.c (krb5_rd_req_decoded): Fix -Wall nits
868 * configure.in: Remove standardized set of autoconf macros, which
869 are now handled by CONFIG_RULES.
871 * Makefile.in, faddr_ordr.c: Remove faddr_ordr.c; its function,
872 krb5_fulladdr_order, isn't used anywhere.
874 Fri Jun 9 02:42:54 1995 Tom Yu (tlyu@dragons-lair)
876 * rd_cred.c (krb5_rd_cred_basic): fix typo (extra "context"
877 argument passed to krb5_xfree)
879 Thu Jun 8 22:48:27 1995 Theodore Y. Ts'o <tytso@dcl>
881 * rd_cred.c (krb5_rd_cred_basic): Fix problem where the ticket
882 field was assigned with a krb5_data, which was then
885 Thu Jun 8 16:06:44 1995 <tytso@rsx-11.mit.edu>
887 * compat_recv.c, auth_con.c, chk_trans.c, encrypt_tk.c,
888 gc_frm_kdc.c, gc_via_tkt.c, gen_seqnum.c, gen_subkey.c,
889 get_creds.c, get_in_tkt.c, in_tkt_ktb.c, in_tkt_pwd.c,
890 in_tkt_skey.c, init_ctx.c, kdc_rep_dc.c, mk_cred.c,
891 mk_error.c, mk_priv.c, mk_rep.c, mk_req.c, mk_req_ext.c,
892 mk_cred.c, mk_safe.c, parse.c, preauth.c, rd_cred.c,
893 rd_rep.c, rd_req.c, rd_req_dec.c, rd_safe.c, recvauth.c,
894 sendauth.c, send_tgs.c, srv_rcache.c, walk_rtree.c: Clean
897 Wed Jun 7 15:23:21 1995 <tytso@rsx-11.mit.edu>
899 * conv_princ.c (krb5_425_conv_principal): Remove old CONFIG_FILES
902 Fri May 26 10:18:28 1995 Keith Vetter (keithv@fusion.com)
904 * makefile.in: removed for the PC creating shared directory.
905 (still bug with the '@SHARED_RULE@' line but I'm waiting
906 on tytso for that since I don't want to break Unix).
908 Thu May 25 09:58:42 1995 Ezra Peisach <epeisach@kangaroo.mit.edu>
910 * gc_via_tkt.c (krb5_kdcrep2creds): Fix syntax error in the
911 freeing of the keyblock.
913 Wed May 24 18:19:17 1995 Theodore Y. Ts'o (tytso@dcl)
915 * Makefile.in, configure.in: Add rules for building shared library.
917 * gc_via_tkt.c (krb5_kdcrep2creds): On an error, free the keyblock.
919 Tue May 23 16:28:42 1995 Theodore Y. Ts'o (tytso@dcl)
921 * gc_frm_kdc.c, preauth.c, t_kerb.c, t_walk_rtree.c, unparse.c:
922 Rearrange #include files so that krb5.h gets included
923 first, so that the debugging information can be more
924 efficiently collapsed since the type numbers will be the
927 Sat May 20 14:01:16 1995 Ezra Peisach <epeisach@kangaroo.mit.edu>
929 * rd_safe.c (krb5_rd_safe): Increment remote_seq_number if
930 KRB5_AUTH_CONTEXT_DO_SEQUENCE is set.
932 Thu May 11 22:42:30 1995 Ezra Peisach <epeisach@kangaroo.mit.edu>
934 * rd_cred.c (krb5_rd_cred_basic): If address don't match, return
935 KRB5KRB_AP_ERR_BADADDR (add missing retval).
937 Thu May 11 18:30:21 1995 Chris Provenzano (proven@mit.edu)
939 * mk_cred.c (krb5_mk_cred()), mk_priv.c (krb5_mk_priv()),
940 * mk_safe.c (krb5_mk_safe()), rd_cred.c (krb5_rd_cred()),
941 * rd_priv.c (krb5_rd_prev()), rd_safe.c (krb5_rd_safe()):
942 Pass the contents pointer returned from krb5_make_fulladdr()
943 to free() not the address of the pointer.
945 Tue May 9 08:34:21 1995 Ezra Peisach <epeisach@kangaroo.mit.edu>
947 * Makefile.in (clean): Remove t_kerb and t_kerb.o
949 Fri May 5 00:06:24 1995 Theodore Y. Ts'o (tytso@dcl)
951 * conv_princ.c (krb5_425_conv_principal): Use new calling
952 convention of krb5_get_realm_domain, which is that it
953 returns the realm *without* the leading dot.
955 Also use the profile code to look up individual instance
956 conversions using [realms]/<realm>/v4_instance_convert/<inst>
957 This allows special case handling of mit.edu and
960 * t_kerb.c: New file for testing krb library functions. Currently
961 only tests krb5_425_conv_principal.
963 Wed May 03 03:30:51 1995 Chris Provenzano (proven@mit.edu)
965 * recvauth.c, compat_recv.c (krb5_recvauth()):
966 * compat_recv.c (krb5_compat_recvauth()):
967 No longer needs the rc_type arg.
969 Tue May 02 19:29:18 1995 Chris Provenzano (proven@mit.edu)
971 * mk_cred.c (mk_cred()), mk_priv.c (mk_priv()), mk_safe.c (mk_safe()),
972 * rd_cred.c (rd_cred()), rd_priv.c (rd_priv()), rd_safe.c (rd_safe()):
973 Don't call krb5_make_fulladdrs() if a port isn't specified.
975 Mon May 01 15:56:32 1995 Chris Provenzano (proven@mit.edu)
977 * auth_con.c (krb5_auth_con_free()) :
978 Free all the data associated with the auth_context.
980 * auth_con.c (krb5_auth_con_setkey()) : Removed.
981 * mk_rep.c (mk_rep()),
982 The krb5_mk_rep() routine must always encode the data in
983 the keyblock of the ticket, not the subkey.
985 * cleanup.h, auth_con.c (krb5_auth_con_setports()) : Added.
986 * auth_con.h, mk_cred.c (mk_cred()), mk_priv.c (mk_priv()),
987 * mk_safe.c (mk_safe()), rd_cred.c (rd_cred()),
988 * rd_priv.c (rd_priv()), rd_safe.c (rd_safe()) :
989 Changes to auth_context to better support full addresses.
991 Sat Apr 29 00:09:40 1995 Theodore Y. Ts'o <tytso@dcl>
993 * srv_rcache.c (krb5_get_server_rcache): Fix fencepost error which
994 caused an access beyond the allocated memory of piece->data.
996 * rd_priv.c (krb5_rd_priv_basic): Call krb5_free_priv_enc_part to free
997 the entire privenc_msg structure.
999 Fri Apr 28 09:54:51 EDT 1995 Paul Park (pjpark@mit.edu)
1001 Move adm_rw.c from libkrb5 to libkadm.
1003 Fri Apr 28 08:36:03 1995 Theodore Y. Ts'o <tytso@lurch.mit.edu>
1005 * init_ctx.c (krb5_free_context): Extra semicolon meant the etypes
1006 field in the context was never being freed.
1008 Fri Apr 28 01:44:51 1995 Chris Provenzano (proven@mit.edu)
1010 * send_tgs.c (krb5_send_tgs()), gc_via_tkt.c (krb5_get_cred_via_tkt()):
1011 Removed krb5_cksumtype argument.
1013 Thu Apr 27 21:36:01 1995 Chris Provenzano (proven@mit.edu)
1015 * auth_con.c (krb5_auth_con_getaddrs() and krb5_auth_con_getflags()):
1016 Added for completeness.
1017 * mk_req_ext.c (krb5_mk_req_extended()) : Don't send the
1018 AP_OPTS_USE_SUBKEY option over the wire.
1020 Thu Apr 27 17:40:20 1995 Keith Vetter (keithv@fusion.com)
1022 * adm_rw.c, mk_cred.c, rd_cred.c:
1023 malloc on the PC must be size SIZE_T not int32.
1024 * adm_rw.c: krb5_free_adm_data second argument now a krb5_int32.
1026 Thu Apr 27 16:33:17 EDT 1995 Paul Park (pjpark@mit.edu)
1028 * mk_priv.c - Back out previous change which always put in
1029 timestamp, regardless of DO_TIME setting and
1030 instead, clear out the replaydata before calling
1031 mk_priv_basic from mk_priv.
1032 * mk_safe.c - Same replaydata fix.
1034 Thu Apr 26 15:59:51 EDT 1995 Paul Park (pjpark@mit.edu)
1036 * Add adm_rw.c - routines to read and write commands from/to the
1037 administrative (kpasswd/kadmin) server.
1039 Wed Apr 27 11:30:00 1995 Keith Vetter (keithv@fusion.com)
1041 * init_ctx.c: krb5_init_context wasn't checking return values.
1042 * mk_req.c: deleted unused local variable.
1044 Wed Apr 26 22:49:18 1995 Chris Provenzano (proven@mit.edu)
1046 * gc_via_tgt.c, and gc_2tgt.c : Removed.
1047 * Makefile.in, gc_via_tkt.c, gc_frm_kdc.c, and, int-proto.h :
1048 Replaced get_cred_via_tgt() and get_cred_via_2tgt()
1049 with more general function get_cred_via_tkt().
1051 Tue Apr 25 21:58:23 1995 Chris Provenzano (proven@mit.edu)
1053 * Makefile.in : Added gc_via_tkt.c and removed get_fcreds.c
1054 * auth_con.c (krb5_auth_con_setaddrs()) : Fixed so it allocates
1055 space and copies addresses, not just pointer.
1056 * mk_cred.c: Completely rewritten from sources donated by asriniva.
1057 * rd_cred.c: Completely rewritten from sources donated by asriniva.
1058 * mk_priv.c (krb5_mk_priv()), mk_safe.c (krb5_mk_safe()),
1059 rd_priv.c (krb5_rd_priv()), and rd_safe (krb5_rd_safe()) :
1060 Try using a subkey before using the session key for encryption.
1061 * recvauth.c (krb5_recvauth()): Don't close the rcache on success.
1063 Mon Apr 24 23:12:21 1995 Theodore Y. Ts'o <tytso@dcl>
1065 * Makefile.in, configure.in (t_walk_rtree): Add WITH_NETLIBS and
1066 $(LIBS), so that t_walk_rtree can compile under solaris.
1068 Mon Apr 24 17:09:36 1995 Ezra Peisach <epeisach@kangaroo.mit.edu>
1070 * parse.c (krb5_parse_name): Add magic number to new structure
1072 * get_creds.c: Fix comments describing operation
1074 * gc_frm_kdc.c: Fix comments describing operation
1076 * copy_cksum.c (krb5_copy_checksum): Fix comment in file
1078 * copy_addrs.c (krb5_append_addresses): ifdef out unused
1079 krb5_append_addresses function. (no API or prototype
1082 * copy_data.c (krb5_copy_data): Initialize magic number
1084 * init_ctx.c (krb5_init_context): If an error is returned from
1085 krb5_set_default_in_tkt_etypes or krb5_os_init_context,
1086 pass to caller instead of stack garbage.
1088 Sat Apr 22 11:06:45 1995 Ezra Peisach (epeisach@kangaroo.mit.edu)
1090 * Makefile.in: t_walk_rtree needs libcrypto
1092 * t_walk_rtree.c: error in checking for argument count
1094 Thu Apr 20 16:23:23 1995 Theodore Y. Ts'o (tytso@dcl)
1096 * copy_addrs.c, copy_athctr.c, copy_auth.c, copy_cksum.c,
1097 copy_creds.c, copy_key.c, copy_princ.c, copy_tick.c,
1098 gc_2tgt.c, gc_frm_kdc.c, gc_via_tgt.c, get_creds.c,
1099 mk_req_ext.c: Unless HAVE_C_STRUCTURE_ASSIGNMENT is defined, use
1100 memcpy to copy structures around, instead of using
1101 structure assignments. (Which aren't guaranteed to work
1102 on some broken compilers.)
1104 * mk_req.c (krb5_mk_req): Use krb5_sname_to_principal() in order
1105 to create the service principal from the service and
1106 hostname pair. This allows for the host cannoncialization
1109 * mk_req_ext.c (krb5_mk_req_extended): Revamp checksum handling
1110 code so that no checksum is performed in in_data is NULL,
1111 and the special case handing of cksumtype == 0x8003 for
1112 the GSSAPI library is handled correctly.
1114 Wed Apr 19 13:39:34 1995 Ezra Peisach <epeisach@kangaroo.mit.edu>
1116 * init_ctx.c: (krb5_init_context) initialize context default
1117 realm. (krb5_free_context) free default realm.
1119 Fri Apr 14 15:05:51 1995 <tytso@rsx-11.mit.edu>
1121 * sendauth.c (krb5_sendauth): initialize error return parameter
1123 * copy_princ.c (krb5_copy_principal): Fix bug where
1124 krb5_copy_principal can fail if it is asked to copy a
1125 principal with a zero-length component on a system where
1126 malloc(0) returns null.
1128 Thu Apr 13 15:49:16 1995 Keith Vetter (keithv@fusion.com)
1130 * *.[ch]: removed unneeded INTERFACE from non-api functions.
1132 Fri Mar 31 16:45:47 1995 Keith Vetter (keithv@fusion.com)
1134 * krb5_get_in_tkt: changed error return value for when clocks
1135 are out of skew to be KRB5_KDCREP_SKEW.
1137 Fri Mar 31 00:44:26 1995 Theodore Y. Ts'o (tytso@dcl)
1139 * rd_req.c (krb5_rd_req): Fix typo which caused new_keytab to not
1140 get freed, causing a memory leak.
1142 Thu Mar 30 15:49:27 1995 Keith Vetter (keithv@fusion.com)
1144 * rd_req.c: removed unused local variable.
1146 Tue Mar 28 18:34:20 1995 John Gilmore (gnu at toad.com)
1148 * rd_req_sim.c: Really remove the file.
1150 Mon Mar 27 08:34:49 1995 Chris Provenzano (proven@mit.edu)
1152 * Makefile.in: Removed rd_req_sim.c
1154 * auth_con.c: Default cksumtype is now CKSUMTYPE_RSA_MD4_DES.
1156 * auth_con.c: Added krb5_auth_con_setuseruserkey(),
1157 krb5_auth_con_getkey(),
1158 krb5_auth_con_getremotesubkey(),
1159 krb5_auth_con_getauthenticator(),
1160 krb5_auth_con_getremoteseqnumber(),
1161 krb5_auth_con_initivector().
1163 * auth_con.c: Fixed krb5_auth_con_getlocalsubkey() to check for
1164 a valid local_subkey before calling krb5_copy_keyblock().
1166 * auth_con.h: Fixed some comments.
1168 * mk_req_ext.c (krb5_mk_req_extended()): Always pass in a seed
1169 (the keyblock contents) to krb5_calculate_checksum()
1171 * rd_rep.c (krb5_rd_rep()): Use appropriate key to decode reply.
1173 * rd_safe.c (krb5_rd_safe()): Don't pass checksum to
1174 krb5_rd_safe_basic(), it's unnecessary.
1176 * compat_recv.c (krb5_compat_recvauth()):
1177 * mk_rep.c (krb5_mk_rep()):
1178 * rd_req.c (krb5_rd_req()):
1179 * rd_req_dec.c (krb5_rd_req_decode()):
1180 * recvauth.c (krb5_recvauth()):
1181 Added a krb5_auth_context argument and eliminated many of
1182 the other arguments because they are included in the
1183 krb5_auth_context structure.
1186 Tue Mar 21 19:22:51 1995 Keith Vetter (keithv@fusion.com)
1188 * mk_safe.c: fixed signed/unsigned mismatch.
1189 * rd_safe.c: removed unused local variable currentime.
1190 * mk_req_e.c: fixed signed/unsigned mismatch.
1192 Sat Mar 18 18:58:02 1995 John Gilmore (gnu at toad.com)
1194 * bld_pr_ext.c, bld_princ.c: Replace STDARG_PROTOTYPES with
1195 HAVE_STDARG_H for consistency.
1197 Fri Mar 17 19:48:07 1995 John Gilmore (gnu at toad.com)
1199 * Makefile.in (check-mac): Add.
1200 * compat_recv.c, get_fcreds.c, recvauth.c: Eliminate Unix socket
1201 #includes, which are now handled by k5-int.h (via k5-config.h).
1202 * conv_princ.c: Rename variable "comp" to another name; "comp"
1203 apparently bothers the MPW compiler...
1204 * rd_cred.c: Avoid (void) casts of void functions, for MPW.
1205 * t_walk_rtree.c: Put com_err.h after k5_int for <sys/types> stuff.
1206 (main): Declare and initialize the krb5_context that's being
1207 passed to everything.
1209 Fri Mar 10 10:58:59 1995 Chris Provenzano (proven@mit.edu)
1211 * auth_con.h auth_con.c Added for krb5_auth_con definition and
1214 * mk_req.c (krb5_mk_req())
1215 * mk_req_ext.c (krb5_mk_req_extended())
1216 * rd_rep.c (krb5_rd_rep())
1217 * sendauth.c (krb5_sendauth())
1218 * mk_priv.c (krb5_mk_priv())
1219 * mk_safe.c (krb5_mk_safe())
1220 * rd_priv.c (krb5_rd_priv())
1221 * rd_safe.c (krb5_rd_safe())
1222 Added a krb5_auth_context argument and eliminated many of
1223 the other arguments because they are included in the
1224 krb5_auth_context structure.
1226 * send_tgs.c (krb5_send_tgs()) Eliminate call to krb5_mk_req_extended(),
1227 which does far more than krb5_send_tgs() needs.
1229 Tue Mar 7 19:57:34 1995 Mark Eichin <eichin@cygnus.com>
1231 * configure.in: take out ISODE_INCLUDE.
1233 Tue Mar 7 13:20:06 1995 Keith Vetter (keithv@fusion.com)
1235 * Makefile.in: changed library name on the pc.
1236 * parse.c: disabled for the PC error messages to stderr.
1237 * chk_trans.c: fixed signed/unsigned assignment.
1239 Thu Mar 2 11:45:00 1995 Keith Vetter (keithv@fusion.com)
1241 * compat_recv.c, get_fcre.c, recvauth.c, sendauth.c: changed
1242 NEED_WINSOCK_H to NEED_SOCKETS.
1244 Wed Mar 1 20:15:00 1995 Keith Vetter (keithv@fusion.com)
1246 * compat_r.c, copy_pri.c, get_fcre.c, get_in_t.c, init_ctx.c, in_tkt_p.c
1247 in_tkt_s.c, preauth.c, princ_co.c, pr_to_sa.c, rd_req_d.c, recvauth.c
1248 sendauth.c, send_tgs.c, unparse.c: 16 vs 32 bit casts, removed some
1249 unused local variables, and pulled in winsock.h for network byte
1252 Tue Feb 28 01:14:57 1995 John Gilmore (gnu at toad.com)
1254 * *.c: Avoid <krb5/...> includes.
1255 * parse.c: Exdent #ifndef to left margin for old compilers.
1257 Wed Feb 22 17:14:31 1995 Keith Vetter (keithv@fusion.com)
1259 * walk_rtr.c (krb5_walk_realm_tree): formal parameter wasn't declared.
1260 * send_tgs.c: const in wrong place in the prototype.
1261 * get_in_tkt.c, preauth.c, rd_cred.c, rd_priv.c, rd_req_dec.c,
1262 rd_safe.c: needed a 32 bit abs() function.
1263 * parse.c: removed call to fprintf on error the windows version
1264 * send_auth.c: defined for windows the ECONNABORTED errno (will
1265 be removed when the socket layer is fully implemented).
1267 Tue Feb 21 23:38:34 1995 Theodore Y. Ts'o (tytso@dcl)
1269 * mk_cred.c (krb5_mk_cred): Fix argument type to
1270 krb5_free_cred_enc_part().
1272 Mon Feb 13 20:25:20 1995 Theodore Y. Ts'o (tytso@dcl)
1274 * get_in_tkt.c (krb5_get_in_tkt): Fix memory leak --- the default
1275 encryption types was not being freed.
1277 Fri Feb 10 15:45:59 1995 Theodore Y. Ts'o <tytso@dcl>
1279 * rd_req.c (krb5_rd_req): Remove ISODE cruft.
1281 Thu Feb 9 17:43:04 1995 Theodore Y. Ts'o <tytso@dcl>
1283 * gc_via_tgt.c (krb5_get_cred_via_tgt): Set up the keyblock's
1284 etype field correctly (after copying the keyblock, so it
1285 doesn't get overwritten!)
1287 Mon Feb 06 17:19:04 1995 Chris Provenzano (proven@mit.edu)
1289 * get_in_tkt.c (krb5_get_in_tkt())
1290 * in_tkt_sky.c (krb5_get_in_tkt_with_skey())
1291 * in_tkt_pwd.c (krb5_get_in_tkt_with_password())
1292 Removed krb5_keytype, changed krb5_enctype to krb5_enctype *,
1293 changed krb5_preauthtype to krb5_preauthtype *.
1295 Changed the args to the key_proc arg of krb5_get_in_tkt()
1296 to be the following (krb5_context, const krb5_keytype,
1297 krb5_data *, krb5_const_pointer, krb5_keyblock **)
1299 * in_tkt_ktb.c (krb5_get_in_tkt_with_keytab()) Added this routine
1300 to replace krb5_get_in_tkt_with_skey() in kinit.
1302 * Makefile.in Added new source file in_tkt_ktb.c.
1304 Fri Feb 3 16:41:19 1995 Mark Eichin (eichin@cygnus.com)
1306 * get_in_tkt.c (krb5_get_in_tkt): also check for the version
1307 number of the reply being whatever we had in the first byte of the
1310 Fri Feb 3 08:07:55 1995 Theodore Y. Ts'o (tytso@dcl)
1312 * compat_recv.c (krb_v4_recvauth): Use explicit 32 bit types so
1313 this will work on an Alpha.
1315 Fri Feb 3 00:43:48 1995 Tom Yu (tlyu@dragons-lair)
1317 * get_in_tkt.c (krb5_get_in_tkt): fix typo
1319 Thu Feb 2 20:51:55 1995 Mark Eichin (eichin@cygnus.com)
1321 * get_in_tkt.c (krb5_get_in_tkt): if krb5_is_as_rep fails, check
1322 if the packet might be a V4 error packet. Use modified V4 check so
1323 that it compiles under SCO.
1325 Mon Jan 30 15:46:14 1995 Chris Provenzano (proven@mit.edu)
1327 * int-proto.h Update prototypes for krb5_get_cred_via_tgt(), and
1328 krb5_get_cred_via_2tgt().
1330 * get_fcreds.c (krb5_get_for_creds())
1331 * gc_via_tgt.c (krb5_get_cred_via_tgt())
1332 * gc_2tgt.c (krb5_get_cred_via_2tgt())
1333 Removed krb5_enctype argument. Pass NULL list of encryption
1334 types to krb5_send_tgs to get default encryption types.
1336 * gc_frm_kdc.c Removed krb5_enctype argument passed to
1337 krb5_get_cred_via_tgt()
1339 * send_tgs.c (krb5_send_tgs()) Changed krb5_enctype arg to
1340 krb5_enctype *, a NULL terminated array of encryption
1341 types. If argument is NULL then krb5_send_tgs() will
1342 use defaul list of encryption types.
1344 * send_tgs.c (krb5_send_tgs()) To encrypt request ticket use
1345 usecred->keyblock.etype instead of (and now defunct)
1348 * init_ctx.c Added krb5_set_default_in_tkt_etypes() and
1349 krb5_get_default_in_tkt_etypes().
1351 * rd_req.c, rd_req_decode.c Removed typedef for rdreq_key_proc
1352 and use krb5_rd_req_decoded in its place.
1354 Mon Jan 30 11:26:05 1995 Chris Provenzano (proven@mit.edu)
1356 * get_fcreds.c Really needs #include<krb5/asn1.h> for definition
1357 of krb5_is_krb_error()
1359 Sat Jan 28 14:45:55 1995 Chris Provenzano (proven@mit.edu)
1361 * in_tkt_sky.c (skey_keyproc()), rd_req_dec.c (krb5_rd_req_decoded())
1362 use new API for krb5_kt_get_entry.
1364 Fri Jan 27 15:45:45 1995 Chris Provenzano (proven@mit.edu)
1366 * get_fcreds.c Removed #include<krb5/crc-32.h> and #include<krb5/asn1.h>
1368 Wed Jan 25 16:54:40 1995 Chris Provenzano (proven@mit.edu)
1370 * Removed all narrow types and references to wide.h and narrow.h
1372 Fri Jan 13 15:23:47 1995 Chris Provenzano (proven@mit.edu)
1374 * Added krb5_context to all krb5_routines
1376 Mon Dec 19 21:55:44 1994 Theodore Y. Ts'o (tytso@dcl)
1378 * init_ctx.c: New file. Initializes and frees the krb5_context
1381 Wed Dec 7 17:52:08 1994 <tytso@localhost>
1383 * rd_req_dec.c (decrypt_authenticator): If the subkey doesn't
1384 exist, don't try to set the subkey's etype.
1386 Wed Nov 30 17:10:39 1994 Theodore Y. Ts'o (tytso@dcl)
1388 * bld_princ.c (krb5_build_principal_va): Set the principal's type
1391 * Makefile.in: Build new test driver (t_walk_rtree) for
1392 krb5_walk_realm_tree.
1394 * walk_realm_tree.c (krb5_walk_realm_tree): Fix bug which occured
1395 when the client or the server is a subdomain of the other;
1396 walk_realm_tree would return the wrong answer, and suffer
1397 from memory access errors.
1399 * unparse.c (krb5_unparse_name_ext): Quote the '/' and '@'
1400 characters properly.
1402 * configure.in: Add appropriate help text for the --with-krb4
1403 option. Remove ISODE_DEFS call, since ISODE_INCLUDES now
1404 defines ISODE automatically.
1406 Mon Nov 21 15:30:07 1994 Theodore Y. Ts'o (tytso@dcl)
1408 * mk_req_ext.c (krb5_mk_req_extended): Sanitize how memory is
1409 freed in both error and normal cases, to remove memory
1412 * mk_req_ext.c (krb5_mk_req_extended): Use the encryption type
1413 specified by the ticket to generate the authenticator.
1415 * encode_kdc.c (krb5_encode_kdc_rep): Now requires that the
1416 caller pass in the encryption block to be used for
1417 encrpyting the ticket. That way, this routine doesn't
1418 need to create its own encryption block.
1420 * encrypt_tk.c (krb5_encrypt_tkt_part): Now requires that the
1421 caller pass in the encryption block to be used for
1422 encrpyting the ticket. That way, this routine doesn't
1423 need to create its own encryption block.
1425 Fri Nov 18 17:30:44 1994 Theodore Y. Ts'o (tytso@dcl)
1427 * mk_req_ext.c (krb5_mk_req_extended): Encrypt the authenticator
1428 using the same encryption system used to encrypt the ticket.
1430 Thu Nov 17 01:56:05 1994 Theodore Y. Ts'o (tytso@dcl)
1432 * gc_via_tgt.c (krb5_get_cred_via_tgt):
1433 * gc_2tgt.c (krb5_get_cred_via_2tgt): Set the encryption type of
1434 the session keyblock to be the type used to encrypt the
1437 Fri Nov 11 01:20:22 1994 Theodore Y. Ts'o (tytso@dcl)
1439 * get_in_tkt.c (krb5_get_in_tkt): Set the encryption type of the
1440 session keyblock to be the type used to encrypt the
1443 Thu Nov 10 23:56:43 1994 Theodore Y. Ts'o (tytso@dcl)
1445 * rd_rep.c (krb5_rd_rep): Set the encryption type in
1446 the subkey keyblock to be the encryption type used to
1447 encrypt the rd_rep message.
1449 * decrypt_tk.c (krb5_decrypt_tkt_part): Set the encryption type in
1450 the session keyblock to be the encryption type used to
1453 * rd_req_dec.c (decrypt_authenticator): Set the encryption type in
1454 the subkey keyblock to be the encryption type used to
1455 encrypt the authenticator.
1457 Tue Nov 8 17:09:48 1994 Theodore Y. Ts'o (tytso@dcl)
1459 * in_tkt_pwd.c (pwd_keyproc): Use the documented interface for
1460 calling krb5_string_to_key().
1462 Tue Oct 25 23:34:57 1994 Theodore Y. Ts'o (tytso@dcl)
1464 * srv_rcache.c (krb5_get_server_rcache): Added missing continue so
1465 that we don't copy both the unprintable character as well
1466 as the quoted version of it.
1468 Mon Oct 24 15:50:19 1994 Theodore Y. Ts'o (tytso@dcl)
1470 * configure.in: If KRB4 is defined, define KRB5_KRB4_COMPAT for
1473 Thu Oct 13 17:26:28 1994 Theodore Y. Ts'o (tytso@maytag)
1475 * configure.in: Add ISODE_DEFS
1477 Tue Oct 4 16:29:19 1994 Theodore Y. Ts'o (tytso@dcl)
1479 * in_tkt_sky.c (skey_keyproc):
1480 * in_tkt_pwd.c (pwd_keyproc): Add widen.h and narrow.h includes
1481 around pwd_keyproc, so that the keyproc input arguments
1482 are appropriately widened.
1484 Fri Sep 30 21:58:15 1994 Theodore Y. Ts'o (tytso@dcl)
1486 * preauth.c (preauth_systems): Add placeholder for magic number
1488 Thu Sep 29 15:31:10 1994 Theodore Y. Ts'o (tytso@dcl)
1490 * srv_rcache.c (krb5_get_server_rcache): cachename was not being
1491 properly null-terminated.
1493 * get_in_tkt.c (krb5_get_in_tkt): Return KRB5_IN_TKT_REALM_MISATCH
1494 if the client and server realms don't match. Return
1495 KRB5_KDCREP_SKEW if the KDC reply has an unacceptible
1496 clock skew (instead of KDCREP_MODIFIED.)
1498 * gc_via_tgt.c (krb5_get_cred_via_tgt): Use a distinct error code
1499 for KDC skew separate from the standard KDCREP_MODIFIED
1501 * princ_comp.c (krb5_realm_compare): Added new function from
1504 Wed Sep 21 17:57:35 1994 Theodore Y. Ts'o (tytso@dcl)
1506 * rd_req_dec.c (krb5_rd_req_decoded): Added Changes from Cybersafe
1507 to do transited realm path checking.
1509 * chk_trans.c: Added donated module from CyberSafe. It checks to
1510 see if a transited path is a legal one between two realms.
1512 Thu Sep 15 11:08:39 1994 Theodore Y. Ts'o (tytso@dcl)
1514 * rd_req_sim.c (krb5_rd_req_simple): Use krb5_rd_req instead of
1515 krb5_rd_req_decoded, to eliminate some code duplication.
1517 Sat Aug 20 01:43:43 1994 Theodore Y. Ts'o (tytso at tsx-11)
1519 * mk_req_ext.c (krb5_generate_authenticator): Fix pointer aliasing
1520 problem between newkey and authent->subkey.
1522 Wed Aug 17 17:58:22 1994 Theodore Y. Ts'o (tytso at tsx-11)
1524 * encode_kdc.c (krb5_encode_kdc_rep): Pass in to
1525 encode_krb5_enc_kdc_rep_part the msg_type which should be used.
1526 Old versions of Kerberos always assume TGS_REP; this merely allows
1527 the right msg_type to be passed down to the encoding routines.
1528 For now, the encoding routines will ignore this value and do
1529 things the old way, for compatibility's sake.
1531 Mon Aug 8 22:38:16 1994 Theodore Y. Ts'o (tytso at tsx-11)
1533 * preauth.c: Renamed preauthentication mechanism names to match
1534 what bcn and I agreed upon.
1536 Tue Jun 28 19:35:07 1994 Tom Yu (tlyu at dragons-lair)
1538 * decode_kdc.c: folding in Harry's changes
1540 * rd_req_sim.c: ditto
1541 * configure.in: adding ISODE_DEFS