Ticket Created
over 3 years ago

CIQQA-728

BUG: sdk manager 4.0.6 segfaults on Ubuntu 18 while logging in

When logging in, the window shows 500 error, but it is actually a local segfault which you can see in gdb. Looks like some memory gets overwritten due to some library incompatibility. Tried it on two Ubuntu 18 systems with the same result. On Debian 9 and 10 it is not possible to get bin/sdkmanager to run without getting creative about installing the versions of the libraries that sdkmanager depends on, but the distros do not provide (does it really need to depend on 122 libraries just to download files via https?) Would be really helpful to have this manager in the form of a python script - less time to develop, and will run on most distros without this types of problems.

Update: I tracked down the root cause of the bug. The problem is that the following URL:

https://sso.garmin.com/sso/signin?service=https%3A%2F%2Fsso.garmin.com%2Fsso%2Fembed&source=https%3A%2F%2Fsso.garmin.com%2Fsso%2Fembed&redirectAfterAccountLoginUrl=https%3A%2F%2Fsso.garmin.com%2Fsso%2Fembed&redirectAfterAccountCreationUrl=https%3A%2F%2Fsso.garmin.com%2Fsso%2Fembed&gauthHost=https%3A%2F%2Fsso.garmin.com%2Fsso&locale=en&id=gauth-widget&cssUrl=https%3A%2F%2Fdeveloper.garmin.com%2Fdownloads%2Fconnect-iq%2Fsdk-manager-login.css&clientId=ConnectIqSdkManager&rememberMeShown=false&rememberMeChecked=false&createAccountShown=true&openCreateAccount=false&displayNameShown=false&consumeServiceTicket=true&initialFocus=true&embedWidget=true&generateExtraServiceTicket=false&generateTwoExtraServiceTickets=false&generateNoServiceTicket=false&globalOptInShown=false&globalOptInChecked=false&mobile=false&connectLegalTerms=false&showTermsOfUse=false&showPrivacyPolicy=false&showConnectLegalAge=false&locationPromptShown=false&showPassword=true&useCustomHeader=false&mfaRequired=false&performMFACheck=false&rememberMyBrowserShown=false&rememberMyBrowserChecked=false

returns error 500 on login info POST if the user agent is 

Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/538.15 (KHTML, like Gecko) Version/8.0 Safari/538.15

which is what libwebkitgtk-1.0 sets it to on Ubuntu 18.

If we set the user agent to just Mozilla/5.0, the login works.

I was able to get my SDK manager to work by compiling my own libwebkit-1.0 modified to set the user agent to just Mozilla/5.0, which you can download from http://asksasha.com/garmin/libwebkitgtk-1.0.so.0, put it in ~/garmin-hack/
then LD_LIBARARY_PATH=~/garmin-hack/ ~/garmin-sdk/bin/sdkmanager

and was able to log in and download SDK 4.0.6.

Former Member
Former Member