Support Kerberos on Android

As part of this, allow asynchronous token return. This should be
allowed anyway, but is particularly important on Android, where getting
a token may cause user interaction.

BUG=474943

Review URL: https://codereview.chromium.org/1128043007

Cr-Commit-Position: refs/heads/master@{#338039}
diff --git a/net/net.gypi b/net/net.gypi
index 19f5e90..630be11 100644
--- a/net/net.gypi
+++ b/net/net.gypi
@@ -184,6 +184,8 @@
       'android/cert_verify_result_android.h',
       'android/gurl_utils.cc',
       'android/gurl_utils.h',
+      'android/http_auth_negotiate_android.cc',
+      'android/http_auth_negotiate_android.h',
       'android/keystore.cc',
       'android/keystore.h',
       'android/keystore_openssl.cc',
@@ -657,6 +659,8 @@
       'http/http_auth_handler_ntlm.h',
       'http/http_auth_handler_ntlm_portable.cc',
       'http/http_auth_handler_ntlm_win.cc',
+      'http/http_auth_multi_round_parse.cc',
+      'http/http_auth_multi_round_parse.h',
       'http/http_auth_sspi_win.cc',
       'http/http_auth_sspi_win.h',
       'http/http_basic_state.cc',
@@ -1289,6 +1293,9 @@
       'extras/sqlite/sqlite_persistent_cookie_store.h',
     ],
     'net_test_sources': [
+      'android/dummy_spnego_authenticator.cc',
+      'android/dummy_spnego_authenticator.h',
+      'android/http_auth_negotiate_android_unittest.cc',
       'android/keystore_unittest.cc',
       'android/network_change_notifier_android_unittest.cc',
       'base/address_list_unittest.cc',
@@ -1439,6 +1446,7 @@
       'http/http_auth_handler_mock.h',
       'http/http_auth_handler_negotiate_unittest.cc',
       'http/http_auth_handler_unittest.cc',
+      'http/http_auth_multi_round_parse_unittest.cc',
       'http/http_auth_sspi_win_unittest.cc',
       'http/http_auth_unittest.cc',
       'http/http_basic_state_unittest.cc',