Remove MessageBoxA UI API call from socket code
There is code in socket_adapters.cc that was trying to display UI by
invoking the MessageBoxA API. This causes a linker failure when building
apps for versions of Windows that do not have the MessageBoxA API.
The text message that the socket code tries display also does not seem
right. It references Google Talk and provides a HTTP URI that is
invalid. The message is only in English instead of being localized in
all the languages supported by the app.
I am fixing this by replacing the call to MessageBoxA with a call to
RTC_LOG(LS_ERROR).
I am also attempting to clean up the text of the message by removing
the invalid URL and removing references to Google products. I am trying
to make the logging message more matter-of-fact about what is going on.
As I understand it, the message is displayed when a HTTP proxy sends a
Proxy-Authenticate HTTP response header that specifies an unsupported
authentication scheme. I changed the text of the logging message to
state this.
Bug: webrtc:11187
Change-Id: I14df32943b62130ac623f72fe901e8f2bb1e8f24
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161475
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30046}
diff --git a/rtc_base/socket_adapters.cc b/rtc_base/socket_adapters.cc
index 2bcdcd8..dc9d883 100644
--- a/rtc_base/socket_adapters.cc
+++ b/rtc_base/socket_adapters.cc
@@ -12,21 +12,6 @@
#pragma warning(disable : 4786)
#endif
-#include <errno.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <time.h>
-
-#if defined(WEBRTC_WIN)
-#include <windows.h>
-#include <winsock2.h>
-#include <ws2tcpip.h>
-
-#define SECURITY_WIN32
-#include <security.h>
-#endif
-
#include <algorithm>
#include "absl/strings/match.h"
@@ -386,30 +371,9 @@
return;
}
} else {
- static bool report = false;
- if (!unknown_mechanisms_.empty() && !report) {
- report = true;
- std::string msg(
- "Unable to connect to the Google Talk service due to an "
- "incompatibility "
- "with your proxy.\r\nPlease help us resolve this issue by "
- "submitting the "
- "following information to us using our technical issue submission "
- "form "
- "at:\r\n\r\n"
- "http://www.google.com/support/talk/bin/request.py\r\n\r\n"
- "We apologize for the inconvenience.\r\n\r\n"
- "Information to submit to Google: ");
- // std::string msg("Please report the following information to
- // foo@bar.com:\r\nUnknown methods: ");
- msg.append(unknown_mechanisms_);
-#if defined(WEBRTC_WIN) && !defined(WINUWP)
- MessageBoxA(0, msg.c_str(), "Oops!", MB_OK);
-#endif
-#if defined(WEBRTC_POSIX)
- // TODO: Raise a signal so the UI can be separated.
- RTC_LOG(LS_ERROR) << "Oops!\n\n" << msg;
-#endif
+ if (!unknown_mechanisms_.empty()) {
+ RTC_LOG(LS_ERROR) << "Unsupported authentication methods: "
+ << unknown_mechanisms_;
}
// Unexpected end of headers
Error(0);