summaryrefslogtreecommitdiff
path: root/net/radius/files/patch-ad
diff options
context:
space:
mode:
authorKris Kennaway <kris@FreeBSD.org>2002-12-09 01:54:18 +0000
committerKris Kennaway <kris@FreeBSD.org>2002-12-09 01:54:18 +0000
commit6782ba5dbfaa505af7820b9c7345d5d4cd0188e3 (patch)
treedc862447d711611770f8259d87df3497b54bd712 /net/radius/files/patch-ad
parentThis port has been FORBIDDEN for 10 months for security reasons, and (diff)
These ports have been forbidden for 10 months for security reasons.
Removal was announced on Oct 12.
Notes
Notes: svn path=/head/; revision=71457
Diffstat (limited to 'net/radius/files/patch-ad')
-rw-r--r--net/radius/files/patch-ad67
1 files changed, 0 insertions, 67 deletions
diff --git a/net/radius/files/patch-ad b/net/radius/files/patch-ad
deleted file mode 100644
index d6fe8e6628e9..000000000000
--- a/net/radius/files/patch-ad
+++ /dev/null
@@ -1,67 +0,0 @@
---- src/rad.kerberos.c~ Fri Jun 26 00:40:50 1998
-+++ src/rad.kerberos.c Thu Sep 17 18:50:28 1998
-@@ -80,8 +80,8 @@
-
- #include <krb.h>
-
--static int krb_pass PROTO((AUTH_REQ *, int, char *,
-- int (*) (AUTH_REQ *, int, char *)));
-+static int krb_pass (AUTH_REQ *, int, char *,
-+ int (*) (AUTH_REQ *, int, char *));
-
- extern int debug_flag;
-
-@@ -225,8 +225,14 @@
- krbval = INTK_BADPW; /* Fail if type is bad somehow */
-
- /* get the ticket */
-- krbval = krb_get_in_tkt (userid, "", realm, "krbtgt", realm,
-+ krbval = krb_get_in_tkt (userid, KRB_INSTANCE, realm, "krbtgt", realm,
- DEFAULT_TKT_LIFE, passwd_to_key, NULL, passwd);
-+ /*
-+ * XXX
-+ * This can be spoofed fairly easily... Should attempt to authenticate
-+ * to some service on this machine (e.g., radius.thishost@REALM)
-+ * in order to ensure that the ticket we just got is really valid.
-+ */
- switch (krbval)
- {
- case INTK_OK:
-@@ -294,6 +300,37 @@
- krbval, userid, realm);
- break;
- }
-+#ifdef M_KERB
-+ /*
-+ * Ticket verification code based loosely on Berkeley klogin.c 8.3
-+ */
-+ if (krbreturn != EV_ACK) {
-+ dest_tkt();
-+ memset(passwd, 0, sizeof passwd);
-+ } else {
-+ struct sockaddr_in sin;
-+ char host[MAXHOSTNAMELEN], *p;
-+ AUTH_DAT authdata;
-+ KTEXT_ST ticket;
-+
-+ krb_get_local_addr(&sin);
-+ gethostname(host, sizeof host);
-+ if ((p = strchr(host, '.')) != 0)
-+ *p = '\0';
-+ krbval = krb_mk_req(&ticket, "radius", host, realm, 33);
-+ if (krbval == KSUCCESS) {
-+ krbval = krb_rd_req(&ticket, "radius", host,
-+ sin.sin_addr.s_addr, &authdata,
-+ "");
-+ }
-+ if (krbval != KSUCCESS) {
-+ logit(LOG_DAEMON, LOG_ERR,
-+ "Kerberos error verifying ticket for %s: %s",
-+ func, krb_err_txt[krbval]);
-+ krbreturn = EV_NAK;
-+ }
-+ }
-+#endif /* M_KERB */
-
- dest_tkt (); /* destroy the ticket */
- memset (passwd, 0, sizeof (passwd));