mirror of
https://github.com/samba-team/samba.git
synced 2025-01-12 09:18:10 +03:00
heimdal: Add parameter to windc_plugin to allow extended return codes.
These changes add a krb5_data parameter named e_data to the windc_plugin to allow the samba KDC to return extended error information in addition to the standard KRB5KDC_ERR_* codes. Windows uses the extended information to provide detailed information in user dialogs (e.g. account disabled, logon hours restriction, must change password, etc.). This particular commit modifies only heimdal code. Hopefully this can be submitted and accepted into the upstream heimdal codebase.
This commit is contained in:
parent
a3e1f28306
commit
f542362be2
@ -281,6 +281,7 @@ 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*/);
|
||||
|
||||
#endif /* __kdc_private_h__ */
|
||||
|
@ -1043,7 +1043,7 @@ _kdc_as_rep(krb5_context context,
|
||||
goto out;
|
||||
}
|
||||
|
||||
ret = _kdc_windc_client_access(context, client, req);
|
||||
ret = _kdc_windc_client_access(context, client, req, &e_data);
|
||||
if(ret)
|
||||
goto out;
|
||||
|
||||
|
@ -101,9 +101,10 @@ _kdc_pac_verify(krb5_context context,
|
||||
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);
|
||||
}
|
||||
|
@ -64,7 +64,7 @@ typedef krb5_error_code
|
||||
|
||||
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
|
||||
|
Loading…
Reference in New Issue
Block a user