mirror of
https://github.com/samba-team/samba.git
synced 2025-01-10 01:18:15 +03:00
r17677: There is no need for a 2nd krb5_to_nt_status function, is there?
Michael Adam/Volker, please check.
Guenther
(This used to be commit d0feb85781
)
This commit is contained in:
parent
23535f7d49
commit
58247fea05
@ -83,7 +83,7 @@ NTSTATUS ads_ntstatus(ADS_STATUS status)
|
||||
#endif
|
||||
#ifdef HAVE_KRB5
|
||||
case ENUM_ADS_ERROR_KRB5:
|
||||
return krb5_to_ntstatus(status.err.rc);
|
||||
return krb5_to_nt_status(status.err.rc);
|
||||
#endif
|
||||
default:
|
||||
break;
|
||||
|
@ -55,6 +55,7 @@ static const struct {
|
||||
#if defined(KRB5KRB_ERR_RESPONSE_TOO_BIG)
|
||||
{KRB5KRB_ERR_RESPONSE_TOO_BIG, NT_STATUS_PROTOCOL_UNREACHABLE},
|
||||
#endif
|
||||
{KRB5KDC_ERR_NONE, NT_STATUS_OK},
|
||||
{0, NT_STATUS_OK}
|
||||
};
|
||||
|
||||
|
@ -1566,40 +1566,3 @@ NTSTATUS map_nt_error_from_unix(int unix_error)
|
||||
/* Default return */
|
||||
return NT_STATUS_ACCESS_DENIED;
|
||||
}
|
||||
|
||||
#ifdef HAVE_KRB5
|
||||
/*********************************************************************
|
||||
Map a krb5 error code to an NT error code
|
||||
*********************************************************************/
|
||||
|
||||
struct krb5_error_map {
|
||||
int krb5_error;
|
||||
NTSTATUS nt_error;
|
||||
};
|
||||
|
||||
const struct krb5_error_map krb5_nt_errmap[] = {
|
||||
{ KRB5KDC_ERR_PREAUTH_FAILED, NT_STATUS_LOGON_FAILURE },
|
||||
{ KRB5_KDC_UNREACH, NT_STATUS_NO_LOGON_SERVERS },
|
||||
{ KRB5KRB_AP_ERR_SKEW, NT_STATUS_TIME_DIFFERENCE_AT_DC },
|
||||
/* not sure if this mapping is appropriate */
|
||||
{ KRB5KDC_ERR_C_PRINCIPAL_UNKNOWN, NT_STATUS_NO_TRUST_SAM_ACCOUNT },
|
||||
{ KRB5KDC_ERR_NONE, NT_STATUS_OK },
|
||||
/* end of array flag - not used as error code... */
|
||||
{ 0, NT_STATUS_OK }
|
||||
};
|
||||
|
||||
NTSTATUS krb5_to_ntstatus(int error)
|
||||
{
|
||||
int i = 0;
|
||||
|
||||
while (krb5_nt_errmap[i].krb5_error != 0) {
|
||||
if (krb5_nt_errmap[i].krb5_error == error) {
|
||||
return krb5_nt_errmap[i].nt_error;
|
||||
}
|
||||
i++;
|
||||
}
|
||||
|
||||
return NT_STATUS_ACCESS_DENIED;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user