ArduPilot / ArduPilot/MissionPlanner

Web Authentication Issue on GetResponse

Open
#551 2 comments 0 reactions 0 assignees View on GitHub
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:

![bad](https://cloud.githubusercontent.com/assets/8098174/3789801/52475cae-1ac4-11e4-8a9d-6a1de02e9f1c.JPG)

The following shows the same request in a working app:

![good](https://cloud.githubusercontent.com/assets/8098174/3789803/762a18b4-1ac4-11e4-8d2d-037c0aad6fba.JPG)

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.