ArduPilot / ArduPilot/MissionPlanner
Web Authentication Issue on GetResponse
- Dominant language
- C#
- Stars
- 2.4k
- Forks
- 2.9k
- Avg merge
- 19h 16m
- Merged PRs (30d)
- 4
Description
After spending way too many hours on debugging why MP could not get GoogleMaps, I found a workaround, but not the root cause.
This is a continuation of my posts on:
https://github.com/diydrones/MissionPlanner/issues/536
Bottom line; MP, or .NET, bails after the Client Key Exchange and Change Cipher spec TLS messages on a simple google map GetResponse. A standalone C# app works fine. Only my freshly downloaded MP build fails using VS2013Express on Win7. Must have something to do with some .NET or key setup.
The following WireShark trace shows the failure:

The following shows the same request in a working app:

The workaround is to change (force) from TLS to Ssl3 via an inserted statement:
ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3;
just before:
using (var response = request.GetResponse())
in GMapProvider.cs
So, I can continue with the mods I want to do, but someone more familiar with web authentication might want to pose an answer as to what's going on.
Thx - Tim
Contributor guide
No contributing guide indexed for this repository
Research direction
Start in GMapProvider.cs at the request.GetResponse() call and review how ServicePointManager.SecurityProtocol is configured. Compare the failing and working Wireshark traces around the Client Key Exchange and Change Cipher Spec messages, and review issue #536 for context. Done means identifying and fixing the TLS failure without relying on the reported SSL3 workaround, with the Google Maps request succeeding.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- networking
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100