Author: abartlet Date: 2008-03-19 01:21:06 +0000 (Wed, 19 Mar 2008) New Revision: 791
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=lorikeet&rev=791 Log: Update lorikeet-heimdal with Andrew Kroeger <[EMAIL PROTECTED]>'s work to allow AD-like custom error data (including an NT status code) to be pushed to the clients. This fixes the windows dialog for 'must change password' etc. Andrew Bartlett Modified: trunk/heimdal/heimdal-lorikeet.diff trunk/heimdal/kdc/kerberos5.c trunk/heimdal/kdc/windc.c trunk/heimdal/kdc/windc_plugin.h Changeset: Modified: trunk/heimdal/heimdal-lorikeet.diff =================================================================== --- trunk/heimdal/heimdal-lorikeet.diff 2008-03-18 01:10:15 UTC (rev 790) +++ trunk/heimdal/heimdal-lorikeet.diff 2008-03-19 01:21:06 UTC (rev 791) @@ -270,3 +270,104 @@ { u32 il,ir,t0,t1; /* temporary valiables */ +Binary files /data/samba/lorikeet/heimdal/kdc/524.gcda and kdc/524.gcda differ +Binary files /data/samba/lorikeet/heimdal/kdc/524.gcno and kdc/524.gcno differ +Only in /data/samba/lorikeet/heimdal/kdc: 524.lo +Binary files /data/samba/lorikeet/heimdal/kdc/524.o and kdc/524.o differ +Only in /data/samba/lorikeet/heimdal/kdc: config.c +Only in /data/samba/lorikeet/heimdal/kdc: config.gcda +Only in /data/samba/lorikeet/heimdal/kdc: config.gcno +Only in /data/samba/lorikeet/heimdal/kdc: config.o +Only in /data/samba/lorikeet/heimdal/kdc: connect.c +Only in /data/samba/lorikeet/heimdal/kdc: connect.gcda +Only in /data/samba/lorikeet/heimdal/kdc: connect.gcno +Only in /data/samba/lorikeet/heimdal/kdc: connect.o +Binary files /data/samba/lorikeet/heimdal/kdc/default_config.gcda and kdc/default_config.gcda differ +Binary files /data/samba/lorikeet/heimdal/kdc/default_config.gcno and kdc/default_config.gcno differ +Only in /data/samba/lorikeet/heimdal/kdc: default_config.lo +Binary files /data/samba/lorikeet/heimdal/kdc/default_config.o and kdc/default_config.o differ +Binary files /data/samba/lorikeet/heimdal/kdc/digest.gcda and kdc/digest.gcda differ +Binary files /data/samba/lorikeet/heimdal/kdc/digest.gcno and kdc/digest.gcno differ +Only in /data/samba/lorikeet/heimdal/kdc: digest.lo +Binary files /data/samba/lorikeet/heimdal/kdc/digest.o and kdc/digest.o differ +Only in /data/samba/lorikeet/heimdal/kdc: hprop +Only in /data/samba/lorikeet/heimdal/kdc: hprop.8 +Only in /data/samba/lorikeet/heimdal/kdc: hprop.c +Only in /data/samba/lorikeet/heimdal/kdc: hpropd +Only in /data/samba/lorikeet/heimdal/kdc: hpropd.8 +Only in /data/samba/lorikeet/heimdal/kdc: hpropd.c +Only in /data/samba/lorikeet/heimdal/kdc: hpropd.gcda +Only in /data/samba/lorikeet/heimdal/kdc: hpropd.gcno +Only in /data/samba/lorikeet/heimdal/kdc: hpropd.o +Only in /data/samba/lorikeet/heimdal/kdc: hprop.gcda +Only in /data/samba/lorikeet/heimdal/kdc: hprop.gcno +Only in /data/samba/lorikeet/heimdal/kdc: hprop.h +Only in /data/samba/lorikeet/heimdal/kdc: hprop.o +Only in /data/samba/lorikeet/heimdal/kdc: kadb.h +Binary files /data/samba/lorikeet/heimdal/kdc/kaserver.gcda and kdc/kaserver.gcda differ +Binary files /data/samba/lorikeet/heimdal/kdc/kaserver.gcno and kdc/kaserver.gcno differ +Only in /data/samba/lorikeet/heimdal/kdc: kaserver.lo +Binary files /data/samba/lorikeet/heimdal/kdc/kaserver.o and kdc/kaserver.o differ +Only in /data/samba/lorikeet/heimdal/kdc: kdc +Only in /data/samba/lorikeet/heimdal/kdc: kdc.8 +diff -ur /data/samba/lorikeet/heimdal/kdc/kdc-private.h kdc/kdc-private.h +--- /data/samba/lorikeet/heimdal/kdc/kdc-private.h 2008-03-17 18:12:47.000000000 +1100 ++++ kdc/kdc-private.h 2008-03-19 11:04:42.000000000 +1100 +@@ -281,6 +281,7 @@ + _kdc_windc_client_access ( + krb5_context /*context*/, + struct hdb_entry_ex */*client*/, +- KDC_REQ */*req*/); ++ KDC_REQ */*req*/, ++ krb5_data */*e_data*/); + + #endif /* __kdc_private_h__ */ +Only in /data/samba/lorikeet/heimdal/kdc: kdc-replay +Only in /data/samba/lorikeet/heimdal/kdc: kdc-replay.c +Only in /data/samba/lorikeet/heimdal/kdc: kdc-replay.gcda +Only in /data/samba/lorikeet/heimdal/kdc: kdc-replay.gcno +Only in /data/samba/lorikeet/heimdal/kdc: kdc-replay.o +Binary files /data/samba/lorikeet/heimdal/kdc/kerberos4.gcda and kdc/kerberos4.gcda differ +Binary files /data/samba/lorikeet/heimdal/kdc/kerberos4.gcno and kdc/kerberos4.gcno differ +Only in /data/samba/lorikeet/heimdal/kdc: kerberos4.lo +Binary files /data/samba/lorikeet/heimdal/kdc/kerberos4.o and kdc/kerberos4.o differ +diff -ur /data/samba/lorikeet/heimdal/kdc/kerberos5.c kdc/kerberos5.c +--- /data/samba/lorikeet/heimdal/kdc/kerberos5.c 2008-03-04 10:20:46.000000000 +1100 ++++ kdc/kerberos5.c 2008-03-19 11:04:42.000000000 +1100 +@@ -1050,7 +1050,7 @@ + goto out; + } + +- ret = _kdc_windc_client_access(context, client, req); ++ ret = _kdc_windc_client_access(context, client, req, &e_data); + if(ret) + goto out; + +diff -ur /data/samba/lorikeet/heimdal/kdc/windc.c kdc/windc.c +--- /data/samba/lorikeet/heimdal/kdc/windc.c 2007-06-09 20:24:24.000000000 +1000 ++++ kdc/windc.c 2008-03-19 11:04:42.000000000 +1100 +@@ -101,9 +101,10 @@ + krb5_error_code + _kdc_windc_client_access(krb5_context context, + struct hdb_entry_ex *client, +- KDC_REQ *req) ++ KDC_REQ *req, ++ krb5_data *e_data) + { + if (windcft == NULL) + return 0; +- return (windcft->client_access)(windcctx, context, client, req); ++ return (windcft->client_access)(windcctx, context, client, req, e_data); + } +diff -ur /data/samba/lorikeet/heimdal/kdc/windc_plugin.h kdc/windc_plugin.h +--- /data/samba/lorikeet/heimdal/kdc/windc_plugin.h 2007-06-09 20:24:24.000000000 +1000 ++++ kdc/windc_plugin.h 2008-03-19 11:04:42.000000000 +1100 +@@ -64,7 +64,7 @@ + + typedef krb5_error_code + (*krb5plugin_windc_client_access)( +- void *, krb5_context, struct hdb_entry_ex *, KDC_REQ *); ++ void *, krb5_context, struct hdb_entry_ex *, KDC_REQ *, krb5_data *); + + + #define KRB5_WINDC_PLUGING_MINOR 2 Modified: trunk/heimdal/kdc/kerberos5.c =================================================================== --- trunk/heimdal/kdc/kerberos5.c 2008-03-18 01:10:15 UTC (rev 790) +++ trunk/heimdal/kdc/kerberos5.c 2008-03-19 01:21:06 UTC (rev 791) @@ -1050,7 +1050,7 @@ goto out; } - ret = _kdc_windc_client_access(context, client, req); + ret = _kdc_windc_client_access(context, client, req, &e_data); if(ret) goto out; Modified: trunk/heimdal/kdc/windc.c =================================================================== --- trunk/heimdal/kdc/windc.c 2008-03-18 01:10:15 UTC (rev 790) +++ trunk/heimdal/kdc/windc.c 2008-03-19 01:21:06 UTC (rev 791) @@ -101,9 +101,10 @@ krb5_error_code _kdc_windc_client_access(krb5_context context, struct hdb_entry_ex *client, - KDC_REQ *req) + KDC_REQ *req, + krb5_data *e_data) { if (windcft == NULL) return 0; - return (windcft->client_access)(windcctx, context, client, req); + return (windcft->client_access)(windcctx, context, client, req, e_data); } Modified: trunk/heimdal/kdc/windc_plugin.h =================================================================== --- trunk/heimdal/kdc/windc_plugin.h 2008-03-18 01:10:15 UTC (rev 790) +++ trunk/heimdal/kdc/windc_plugin.h 2008-03-19 01:21:06 UTC (rev 791) @@ -64,7 +64,7 @@ typedef krb5_error_code (*krb5plugin_windc_client_access)( - void *, krb5_context, struct hdb_entry_ex *, KDC_REQ *); + void *, krb5_context, struct hdb_entry_ex *, KDC_REQ *, krb5_data *); #define KRB5_WINDC_PLUGING_MINOR 2