|
|
@@ -41,10 +41,9 @@ func (cl *Client) ASExchange(realm string, ASReq messages.ASReq, referral int) (
|
|
|
rb, err = cl.SendToKDC(b, realm)
|
|
|
if err != nil {
|
|
|
if _, ok := err.(messages.KRBError); ok {
|
|
|
- return messages.ASRep{}, krberror.Errorf(err, krberror.KDCError, "AS Exchange Error: error response from KDC")
|
|
|
- } else {
|
|
|
- return messages.ASRep{}, krberror.Errorf(err, krberror.NetworkingError, "AS Exchange Error: failed sending AS_REQ to KDC")
|
|
|
+ return messages.ASRep{}, krberror.Errorf(err, krberror.KDCError, "AS Exchange Error: kerberos error response from KDC")
|
|
|
}
|
|
|
+ return messages.ASRep{}, krberror.Errorf(err, krberror.NetworkingError, "AS Exchange Error: failed sending AS_REQ to KDC")
|
|
|
}
|
|
|
case errorcode.KDC_ERR_WRONG_REALM:
|
|
|
// Client referral https://tools.ietf.org/html/rfc6806.html#section-7
|
|
|
@@ -53,6 +52,8 @@ func (cl *Client) ASExchange(realm string, ASReq messages.ASReq, referral int) (
|
|
|
}
|
|
|
referral++
|
|
|
return cl.ASExchange(e.CRealm, ASReq, referral)
|
|
|
+ default:
|
|
|
+ return messages.ASRep{}, krberror.Errorf(err, krberror.KDCError, "AS Exchange Error: kerberos error response from KDC")
|
|
|
}
|
|
|
} else {
|
|
|
return messages.ASRep{}, krberror.Errorf(err, krberror.NetworkingError, "AS Exchange Error: failed sending AS_REQ to KDC")
|