Merge "SipService: send SERVER_ERROR if server doesn't provide nonce" into gingerbread

This commit is contained in:
Hung-ying Tyan
2010-09-14 23:09:26 -07:00
committed by Android (Google) Code Review

View File

@@ -712,9 +712,15 @@ class SipSessionGroup implements SipListener {
case Response.UNAUTHORIZED: case Response.UNAUTHORIZED:
case Response.PROXY_AUTHENTICATION_REQUIRED: case Response.PROXY_AUTHENTICATION_REQUIRED:
if (!handleAuthentication(event)) { if (!handleAuthentication(event)) {
Log.v(TAG, "Incorrect username/password"); if (mLastNonce == null) {
onRegistrationFailed(SipErrorCode.INVALID_CREDENTIALS, onRegistrationFailed(SipErrorCode.SERVER_ERROR,
"incorrect username or password"); "server does not provide challenge");
} else {
Log.v(TAG, "Incorrect username/password");
onRegistrationFailed(
SipErrorCode.INVALID_CREDENTIALS,
"incorrect username or password");
}
} }
return true; return true;
default: default:
@@ -869,6 +875,9 @@ class SipSessionGroup implements SipListener {
case Response.PROXY_AUTHENTICATION_REQUIRED: case Response.PROXY_AUTHENTICATION_REQUIRED:
if (handleAuthentication(event)) { if (handleAuthentication(event)) {
addSipSession(this); addSipSession(this);
} else if (mLastNonce == null) {
endCallOnError(SipErrorCode.SERVER_ERROR,
"server does not provide challenge");
} else { } else {
endCallOnError(SipErrorCode.INVALID_CREDENTIALS, endCallOnError(SipErrorCode.INVALID_CREDENTIALS,
"incorrect username or password"); "incorrect username or password");