From 2013f0c63f312d28c0503a722e805c6852936d93 Mon Sep 17 00:00:00 2001 From: Ken Raeburn Date: Sat, 9 Sep 2000 00:18:20 +0000 Subject: [PATCH] * Makefile.in (DEFINES): Define HEIMDAL_FRIENDLY. * krlogind.c (recvauth): Don't complain about a subkey sent for KCMDV0.1 if HEIMDAL_FRIENDLY is defined, just quietly ignore it. * krshd.c (recvauth): Likewise. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@12646 dc483132-0cff-0310-8789-dd5450dbe970 --- src/appl/bsd/ChangeLog | 7 +++++++ src/appl/bsd/Makefile.in | 3 ++- src/appl/bsd/krlogind.c | 7 ++++++- src/appl/bsd/krshd.c | 7 ++++++- 4 files changed, 21 insertions(+), 3 deletions(-) diff --git a/src/appl/bsd/ChangeLog b/src/appl/bsd/ChangeLog index 1301646fa..f43d9ee33 100644 --- a/src/appl/bsd/ChangeLog +++ b/src/appl/bsd/ChangeLog @@ -1,3 +1,10 @@ +2000-09-08 Ken Raeburn + + * Makefile.in (DEFINES): Define HEIMDAL_FRIENDLY. + * krlogind.c (recvauth): Don't complain about a subkey sent for + KCMDV0.1 if HEIMDAL_FRIENDLY is defined, just quietly ignore it. + * krshd.c (recvauth): Likewise. + Tue Aug 8 13:38:22 2000 Ezra Peisach * krlogin.c (read_wrapper): Copy from the current point and not diff --git a/src/appl/bsd/Makefile.in b/src/appl/bsd/Makefile.in index 298fb49a8..167373959 100644 --- a/src/appl/bsd/Makefile.in +++ b/src/appl/bsd/Makefile.in @@ -28,7 +28,8 @@ BSD= -DUCB_RLOGIN=\"$(UCB_RLOGIN)\" \ -DUCB_RSH=\"$(UCB_RSH)\" -DUCB_RCP=\"$(UCB_RCP)\" DEFINES = $(RSH) $(BSD) $(RPROGS) \ - -DLOGIN_PROGRAM=\"$(SERVER_BINDIR)/login.krb5\" -DKPROGDIR=\"$(CLIENT_BINDIR)\" + -DLOGIN_PROGRAM=\"$(SERVER_BINDIR)/login.krb5\" -DKPROGDIR=\"$(CLIENT_BINDIR)\" \ + -DHEIMDAL_FRIENDLY all:: rsh rcp rlogin kshd klogind login.krb5 $(V4RCP) diff --git a/src/appl/bsd/krlogind.c b/src/appl/bsd/krlogind.c index d27488499..b3102bd18 100644 --- a/src/appl/bsd/krlogind.c +++ b/src/appl/bsd/krlogind.c @@ -1548,8 +1548,13 @@ recvauth(valid_checksum) fatal (netf, "Server can't get session subkey"); if (!key && do_encrypt && kcmd_proto == KCMD_NEW_PROTOCOL) fatal (netf, "No session subkey sent"); - if (key && kcmd_proto == KCMD_OLD_PROTOCOL) + if (key && kcmd_proto == KCMD_OLD_PROTOCOL) { +#ifdef HEIMDAL_FRIENDLY + key = 0; +#else fatal (netf, "Session subkey not permitted under old kcmd protocol"); +#endif + } if (key == 0) key = ticket->enc_part2->session; diff --git a/src/appl/bsd/krshd.c b/src/appl/bsd/krshd.c index c69729c5c..cb745e307 100644 --- a/src/appl/bsd/krshd.c +++ b/src/appl/bsd/krshd.c @@ -1957,8 +1957,13 @@ recvauth(netf, peersin, valid_checksum) fatal (netf, "Server can't get session subkey"); if (!key && do_encrypt && kcmd_proto == KCMD_NEW_PROTOCOL) fatal (netf, "No session subkey sent"); - if (key && kcmd_proto == KCMD_OLD_PROTOCOL) + if (key && kcmd_proto == KCMD_OLD_PROTOCOL) { +#ifdef HEIMDAL_FRIENDLY + key = 0; +#else fatal (netf, "Session subkey not allowed in old kcmd protocol"); +#endif + } if (key == 0) key = ticket->enc_part2->session; rcmd_stream_init_krb5 (key, do_encrypt, 0, 0, kcmd_proto); -- 2.26.2