Ken Raeburn [Wed, 30 Aug 2000 23:06:01 +0000 (23:06 +0000)]
* aclocal.m4 (KRB5_LIB_AUX): Fold in values of EXTRA_LIB_TARGETS,
EXTRA_LIBLINK_TARGETS, EXTRA_LIBINST_TARGETS set in shlib.conf. Substitute
EXTRA_CLEAN_TARGETS and EXTRA_CLEAN_LINKS.
(KRB5_LIB_PARAMS): Substitute LIB_LINK_OPT.
Ken Raeburn [Tue, 29 Aug 2000 22:36:45 +0000 (22:36 +0000)]
* get_creds.c (krb5_get_credentials_core): If the supplied enctype is not
supported, return an error; can't satisfy both TC_SUPPORTED_KTYPES and
TC_MATCH_KTYPE that way. Delete unused arguments CCACHE and OUT_CREDS; fix
callers.
renamed getmode() and setmode() to get_mode() and set_mode() to avoid a collision with Mac OS X file permission bits manipulation functions of the same name which get included through unistd.h
Tom Yu [Sat, 26 Aug 2000 01:30:04 +0000 (01:30 +0000)]
* ftpcmd.y: Fix up grammar so that single character token names
are no longer used; this was breaking the build using bison on
HP/UX because some system headers declare structures with members
having all-uppercase field names and bison puts the token name
#define statements in front of the C declarations section in the
output, causing them to be in force while those headers get
#included. There doesn't seem to be much purpose in not just
using character constants, anyway.
Ken Raeburn [Wed, 23 Aug 2000 22:57:08 +0000 (22:57 +0000)]
* main.c (initialize_realms): For "cannot initialize realm" messages, tell the
user to check the log file. Print out an error message as well as logging it
if retrieving the default realm name fails.
* kerberos_v4.c (kerberos_v4): Mask requested-life byte value with 0xff to
avoid sign-extension problems.
Ezra Peisach [Tue, 22 Aug 2000 21:12:32 +0000 (21:12 +0000)]
* secure.h (myaddr): For secure data stream, pass the port number
of the data stream and not the control stream to krb_mk_priv.
This would result in the occasional time out of bounds error when ftping
to the same machine. (mk_priv and rd_priv have some amusing
negating of timestamps depending on address and port of sockets).
Ezra Peisach [Tue, 22 Aug 2000 15:42:56 +0000 (15:42 +0000)]
* default.exp: Create a properly formatted krb.conf file. Also
provide a krb4_srvtab stanza (even though we are falling back on
the keytab file) so the tests do not try to access an installed
systems /etc/srvtab file.
Ezra Peisach [Tue, 22 Aug 2000 15:38:59 +0000 (15:38 +0000)]
* ftpd.c (auth_data): Iterate over all krb4 services instead of
trying to examine the srvtab file for a particular key (which
failes when falling back on the v5 keytab for des3 services).
Ezra Peisach [Thu, 17 Aug 2000 16:01:38 +0000 (16:01 +0000)]
* domacro.c: Compiler warning cleanups and fix the overflow fix to
index the proper array.
* cmds.c, cmdtab.c, ftp.c, ftp_var.h, getpass.c, glob.c, main.c,
radix.c, ruserpass.c, secure.c, secure.h: Compiler warning
cleanups including providing prototypes, cleanup of assignments in
conditionals, including unistd.h and stdlib.h (if present),
declaring local functions as static.
* Makefile.in: Do not compile pclose.c - the code is not used.
Ezra Peisach [Mon, 14 Aug 2000 20:03:22 +0000 (20:03 +0000)]
* cr_tkt.c (krb_cr_tkt_int): When prototypes were changed to not
include a narrow prototype, the flags were being sent OTW as four
bytes instead of one.
Tom Yu [Wed, 9 Aug 2000 18:40:29 +0000 (18:40 +0000)]
* cnv_tkt_skey.c: Fix up static prototypes for
krb524int_krb_create_ticket(), krb524int_krb_cr_tkt_krb5(), and
krb524int_krb_cr_tkt_int(), as well as their definitions, so that
there aren't bare identifiers in the prototypes and so that there
aren't narrow types in the definitions.
Ezra Peisach [Tue, 8 Aug 2000 19:38:44 +0000 (19:38 +0000)]
* default.exp: Create krb.conf and krb.realms files for v4
compatibility. Set KRBTKFILE environment variable. Add
v4_compatible_enctype() proc to test if krb4 tests are being run
and if the current encryption type being tested is compatible with
V4. Added v4kinit() proc.
Ezra Peisach [Mon, 7 Aug 2000 15:28:26 +0000 (15:28 +0000)]
* reference_encode.out, trval_reference.out: Test encoding of
negative lr_type field.
* krb5_decode_test.c: Fix enc_kdc_rep_part tests to trully handle
a negative lr_type in a krb5_last_req_entry structure. If
KRB5_GENEROUS_LR_TYPE is defined, do a backwards compatibility
test as well.
Ken Raeburn [Fri, 4 Aug 2000 02:51:02 +0000 (02:51 +0000)]
* listen.c (ss_quit): Now returns void. Fix type of argument ARGV to fit
prototype.
* ss.h (ss_execute_line) [__STDC__]: Make prototype unconditional.
(ss_quit): Use __SS_PROTO and return void, as with other command functions.
Ezra Peisach [Thu, 3 Aug 2000 15:40:09 +0000 (15:40 +0000)]
* kprop.c, kpropd.c: Compiler warning fixes including: not
shadowing global variabls/functions, assignments in conditionals,
declaring local functions static.
Ezra Peisach [Wed, 2 Aug 2000 21:08:07 +0000 (21:08 +0000)]
* klist.c: Compiler warning cleanups by declaring functions as
static, using existing global variables instead of trying to
shadow them, and removing assignments from conditionals.
Ezra Peisach [Wed, 2 Aug 2000 19:42:26 +0000 (19:42 +0000)]
* requests.c (DECLARE): Fix prototype for dispatch functions to
properly match what is expected by ss library.
* pager.c (ss_pager_create): Cast return from fork to int for use
in switch statement.
* ss.h: Provide full prototype for ss_name(). Add prototypes for
ss_execute_line(), ss_delete_invocation(), ss_add_info_dir(),
ss_delete_info_dir(), ss_abort_subsystem(), ss_get_prompt(),
ss_set_prompt(), ss_add_request_table(),
ss_delete_request_table(), ss_quit().
* ss_internal.h: Made full prototypes for ss_parse(),
ss_page_stdin(), ss_pagre_create(). Add prototypes for
ss_self_identify(), ss_subsystem_name(), ss_subsystem_version(),
ss_unimplemented(). Moved ss_execute_line() to ss.h
Tom Yu [Sun, 23 Jul 2000 03:17:39 +0000 (03:17 +0000)]
* default.exp: Add code to handle setting of PASS to constrain
multipass testing to particular passes. dejagnu-1.3 doesn't have
support for PASS, so we kludge it here, though some later versions
handle it by themselves.
(krb_exit): Add new proc to clean up on exit.
(kinit): Remove "expect \r" since "expect eof" will drain the pty
buffer properly anyway.
Peter Litwack [Fri, 21 Jul 2000 23:35:12 +0000 (23:35 +0000)]
* krlogin.c (writer): Improved bandwith efficiency by reading
and sending more than one character at a time if multiple
characters are available to be read from the terminal.
* krlogin.c (read_wrapper): Added this function as a helper
to writer. It facilitates checking for escape sequences
(~^Z etc.) when reading mulitple characters at a time.
* memcache.c: Add krb_in_tkt() function to initialize ticket for a
given principal. It is like in_tkt() but it is public and also
takes a realm for credentials caches that require a full
principal name (e.g., CCAPI).
* Makefile.in: Make krb524 library and k524init program build on
Windows.
* krb524.def, libinit.c: Files needed to build on Windows.
* k524init.c: Use public krb_in_tkt() with realm paramter instead of
potentially private in_tkt() w/o realm parameter (which does not
even exist w/o the realm paramter in some krb4 libraries). Use
krb_save_credentials() instead of tf_init() then
tf_save_credentials() then tf_close().
* cnv_tkt_skey.c: Put copy of krb_cr_tkt_krb5() and
krb_create_ticket() as static functions in this file, calling them
krb524int_*(). Call these functions instead of the ones in the
MIT krb4 library included in the krb5 tree.
* conv_princ.c: Remove unused headers.
* k524init.c, cnv_tkt_skey.c, conv_creds.c, encode.c, misc.c,
sendmsg.c, test.c: Do not include Unix headers on Windows.
* sendmsg.c (krb524_sendto_kdc): Fix call to krb5_locate_kdc() to
use right number and types of parameters. Use krb5int_accessor()
to get at internals: krb5_locate_kdc(), krb5_max_dgram_size,
krb5_skdc_timeout_1, and krb5_skdc_timeout_shift. (The latter 3
should probably be #defines...)
Add krb5int_accessor() to access internal krb5 functions from outside
the library (so that we don't have to export them for the krb525 and
gssapi libraries). The goal is to make this function eventually do
nothing.
* k5-int.h: Add krb5int_accessor() and related definitions.
krb5int_accessor should be used by any code that is trying to use
krb5 internal functions (such as krb524 and GSSAPI). The goal is
to eventually make this function do nothing. That will only be
accomplished when we fix our apps/libraries not to call internal
functions.
* in_tkt.c: Add krb_in_tkt() function to initialize ticket for a
given principal. It is like in_tkt() but it is public and also
takes a realm for credentials caches that require a full
principal name (e.g., CCAPI).
* k5-int.h: Move prototypes for krb5 only internal functions
krb5_libdefault_boolean, _krb5_use_dns_realm, _krb5_use_dns_kdc,
_krb5_conf_boolean to the header files in the lib/krb5/{os,krb}
directories.
Ken Raeburn [Fri, 14 Jul 2000 22:47:27 +0000 (22:47 +0000)]
Delete subdirectories we aren't compiling any more.
Rescued contents of "README", "todo", and test cases.
Test cases aren't actually used at present; this should be fixed, but
they'll probably need some work.
Ken Raeburn [Fri, 14 Jul 2000 22:33:59 +0000 (22:33 +0000)]
Collapse ccache implementations file, stdio, memory into single files.
(Old files not removed yet.)
Add a new file for krb5_cc_* dispatch functions that are no longer macros.
Ken Raeburn [Fri, 14 Jul 2000 22:04:39 +0000 (22:04 +0000)]
* aclocal.m4 (KRB5_LIB_PARAMS): Moved bulk of the work into config/shlib.conf.
(K5_AC_CHECK_FILES): Require AC_PROG_CC be run first.
(WITH_CC): If we're using gcc, enable a bunch of warning options.
Tom Yu [Wed, 12 Jul 2000 02:38:04 +0000 (02:38 +0000)]
* coding-style: Some minor tweaks. Require do-while to always be
braced. Note some aspects of function pointer and array pointer
usage. Elaborate on function declaration practices. Add
placeholders for sections on Makefiles and test suites.