EionRobb / skype4pidgin

Skype Plugin for Pidgin, libpurple and more
https://github.com/EionRobb/skype4pidgin/tree/master/skypeweb#skypeweb-plugin-for-pidgin
625 stars 88 forks source link

Intermittent "Failed getting PPFT value, please try logging in via browser first" even when pidgin is started in nologin mode #655

Open acli opened 4 years ago

acli commented 4 years ago

The prpl seems to be handshaking with the skype servers even when pidgin is started in offline mode (pidgin -n).

Sometimes this results in the "Failed getting PPFT value, please try logging in via browser first" error. When this happens, switching to a non-offline status (from the status dropdown) will not clear the error, but pressing the Reconnect button seems to (so far) always clear it.

This might be the root cause of #603.

EionRobb commented 4 years ago

Pidgin will show the last error message when you start, if you quit it while the account has an error

Can you start with -d to confirm that it is trying to connect?

Also, using the "use alternate auth" setting should be enabled to help prevent that specific error

acli commented 4 years ago

Ok. I’ll look the next time I see this. Are there specific log messages I should be looking for?

EionRobb commented 4 years ago

Just anything to suggest that you might be connecting to the account :)

henrikp commented 4 years ago

Did a 'pidgin -d' run. https://dpaste.com/FFEHURLQB

EionRobb commented 4 years ago

@henrikp is that when running pidgin with -n ? You might want to try turning on "use alternate auth" in the advanced settings too. This issue is about starting pidgin with -n though

henrikp commented 4 years ago

That was my bad about missing -n parameter. My installation just has that issue in normal mode, failing to connect at all, even with alternate auth ("bad username or password"). Will see if I get around starting a new issue.

7kilobytes commented 3 years ago

Hello guys,

I am using skypeweb in bitlbee and getting the same error as above: <Ox4> account skypeweb set alt-login true <root> alt-login = 'true' <Ox4> account skypeweb on <root> skypeweb - Logging in: Connecting <root> skypeweb - Logging in: Authenticating <root> skypeweb - Login error: Failed getting PPFT value, please try logging in via browser first <root> skypeweb - Logging in: Signing off..

Here is the current settings: <Ox4> account skypeweb set <root> alt-login = 'true' <root> auto_connect = 'true' <root> auto_reconnect = 'true' <root> away is empty <root> display_name is empty <root> handle_unknown is empty <root> nick_format is empty <root> nick_source = 'handle' <root> password = '********' (hidden) <root> show-typing-as-icon = 'false' <root> show-typing-as-text = 'false' <root> status is empty <root> tag = 'skypeweb' <root> username = '<hidden>'

So the use alternate auth is not working for me. I have compiled the latest version from github:

commit f836eebcda6eba6e321d5baa2efd1934ab43ed1d (HEAD -> master, origin/master, origin/HEAD)
Merge: b226d1c 3c9015c
Author: Eion Robb <eion@robbmob.com>
Date:   Mon Aug 31 06:14:27 2020 +1200

    Merge pull request #659 from gitvb/devel

    Update purple-skypeweb.spec to v1.7

UPD: The problem was solved after I have received an email from M$ about suspicious activity where I had to confirm my identity.

Thanks for the excellent work.

CP1832 commented 3 years ago

Hi guys:

Today I am getting the same error reported on this ticket. I am always getting the "Failed getting PPFT value, please try logging in via browser first". I logged in via browser just in case but still I am getting the same error. The password is correct but when I try to connect using the alternative method, I get a "Bad username or password (Authentication Failure)" error. I am running Skype 2.14.1 and I have Skype web plugin version 1.7.

This is my debug log when trying to log in: code g_log: purple_conversation_set_data: assertion conv != NULL' failed (09:56:42) g_log: purple_conversation_set_data: assertionconv != NULL' failed (09:56:42) g_log: purple_conversation_update: assertion conv != NULL' failed Prefix='C:\Users\user\Documents\Programas\Pidgin\App\Pidgin\spellcheck' Looking for modules in dir='C:\Users\user\AppData\Local\enchant' Looking for modules in dir='C:\Users\user\Documents\Programas\Pidgin\App\enchant' Looking for modules in dir='C:\Users\user\Documents\Programas\Pidgin\App\Pidgin\spellcheck\lib\enchant' (09:56:44) gtkspell: Failed to setup GtkSpell: enchant error for language: es (09:56:44) GLib-GObject: g_object_unref: assertionG_IS_OBJECT (object)' failed (09:56:44) GLib-GObject: g_object_unref: assertion G_IS_OBJECT (object)' failed (09:56:44) account: Connecting to account <account>. (09:56:44) connection: Connecting. gc = 0AF07D70 (09:56:44) http: Performing new request 0B162958 to login.skype.com. (09:56:44) signals: Signal data for chat-conversation-typing not found! (09:56:44) dnsquery: Performing DNS lookup for login.skype.com (09:56:44) dnsquery: IP resolved for login.skype.com (09:56:44) proxy: Attempting connection to 51.105.176.200 (09:56:44) proxy: Connecting to login.skype.com:443 with no proxy (09:56:44) proxy: Connection in progress (09:56:44) proxy: Connecting to login.skype.com:443. (09:56:44) proxy: Connected to login.skype.com:443. (09:56:45) nss: SSL version 3.3 using 128-bit AES with 256-bit SHA256 MAC Server Auth: 2048-bit RSA, Key Exchange: 256-bit ECDHE, Compression: NULL Cipher Suite Name: TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 (09:56:45) nss: subject=CN=login.skype.com,O=Skype,L=Dublin,C=IE issuer=CN=Microsoft RSA TLS CA 02,O=Microsoft Corporation,C=US (09:56:45) nss: subject=CN=Microsoft RSA TLS CA 02,O=Microsoft Corporation,C=US issuer=CN=Baltimore CyberTrust Root,OU=CyberTrust,O=Baltimore,C=IE (09:56:45) nss: partial certificate chain (09:56:45) certificate/x509/tls_cached: Starting verify for login.skype.com (09:56:45) certificate/x509/tls_cached: Checking for cached cert... (09:56:45) certificate/x509/tls_cached: ...Found cached cert (09:56:45) nss/x509: Loading certificate from C:\Users\user\Documents\Programas\Pidgin\Data\settings\.purple\certificates\x509\tls_peers\login.skype.com (09:56:45) certificate/x509/tls_cached: Peer cert matched cached (09:56:45) nss/x509: Exporting certificate to C:\Users\user\Documents\Programas\Pidgin\Data\settings\.purple\certificates\x509\tls_peers\login.skype.com (09:56:45) util: Writing file C:\Users\user\Documents\Programas\Pidgin\Data\settings\.purple\certificates\x509\tls_peers\login.skype.com (09:56:45) nss: Trusting CN=login.skype.com,O=Skype,L=Dublin,C=IE (09:56:45) certificate: Successfully verified certificate for login.skype.com (09:56:45) dnsquery: Performing DNS lookup for login.live.com (09:56:45) dnsquery: IP resolved for login.live.com (09:56:45) proxy: Attempting connection to 40.90.22.183 (09:56:45) proxy: Connecting to login.live.com:443 with no proxy (09:56:45) proxy: Connection in progress (09:56:45) proxy: Connecting to login.live.com:443. (09:56:45) proxy: Connected to login.live.com:443. (09:56:46) nss: SSL version 3.3 using 128-bit AES-GCM with 128-bit AEAD MAC Server Auth: 2048-bit RSA, Key Exchange: 256-bit ECDHE, Compression: NULL Cipher Suite Name: TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (09:56:46) nss: subject=CN=login.live.com,O=Microsoft Corporation,L=Redmond,ST=Washington,C=US issuer=CN=DigiCert SHA2 Secure Server CA,O=DigiCert Inc,C=US (09:56:46) nss: subject=CN=DigiCert SHA2 Secure Server CA,O=DigiCert Inc,C=US issuer=CN=DigiCert Global Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US (09:56:46) nss: partial certificate chain (09:56:46) certificate/x509/tls_cached: Starting verify for login.live.com (09:56:46) certificate/x509/tls_cached: Checking for cached cert... (09:56:46) certificate/x509/tls_cached: ...Found cached cert (09:56:46) nss/x509: Loading certificate from C:\Users\user\Documents\Programas\Pidgin\Data\settings\.purple\certificates\x509\tls_peers\login.live.com (09:56:46) certificate/x509/tls_cached: Peer cert matched cached (09:56:46) nss/x509: Exporting certificate to C:\Users\user\Documents\Programas\Pidgin\Data\settings\.purple\certificates\x509\tls_peers\login.live.com (09:56:46) util: Writing file C:\Users\user\Documents\Programas\Pidgin\Data\settings\.purple\certificates\x509\tls_peers\login.live.com (09:56:46) nss: Trusting CN=login.live.com,O=Microsoft Corporation,L=Redmond,ST=Washington,C=US (09:56:46) certificate: Successfully verified certificate for login.live.com (09:56:46) http: Request 0B162958 performed successfully. (09:56:46) http: Performing new request 0B162BF8 to login.live.com. (09:56:46) dnsquery: Performing DNS lookup for login.live.com (09:56:46) dnsquery: IP resolved for login.live.com (09:56:46) proxy: Attempting connection to 40.90.22.183 (09:56:46) proxy: Connecting to login.live.com:443 with no proxy (09:56:46) proxy: Connection in progress (09:56:46) proxy: Connecting to login.live.com:443. (09:56:46) proxy: Connected to login.live.com:443. (09:56:47) nss: SSL version 3.3 using 128-bit AES-GCM with 128-bit AEAD MAC Server Auth: 2048-bit RSA, Key Exchange: 256-bit ECDHE, Compression: NULL Cipher Suite Name: TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (09:56:47) nss: subject=CN=login.live.com,O=Microsoft Corporation,L=Redmond,ST=Washington,C=US issuer=CN=DigiCert SHA2 Secure Server CA,O=DigiCert Inc,C=US (09:56:47) nss: subject=CN=DigiCert SHA2 Secure Server CA,O=DigiCert Inc,C=US issuer=CN=DigiCert Global Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US (09:56:47) nss: partial certificate chain (09:56:47) certificate/x509/tls_cached: Starting verify for login.live.com (09:56:47) certificate/x509/tls_cached: Checking for cached cert... (09:56:47) certificate/x509/tls_cached: ...Found cached cert (09:56:47) nss/x509: Loading certificate from C:\Users\user\Documents\Programas\Pidgin\Data\settings\.purple\certificates\x509\tls_peers\login.live.com (09:56:47) certificate/x509/tls_cached: Peer cert matched cached (09:56:47) nss/x509: Exporting certificate to C:\Users\user\Documents\Programas\Pidgin\Data\settings\.purple\certificates\x509\tls_peers\login.live.com (09:56:47) util: Writing file C:\Users\user\Documents\Programas\Pidgin\Data\settings\.purple\certificates\x509\tls_peers\login.live.com (09:56:47) nss: Trusting CN=login.live.com,O=Microsoft Corporation,L=Redmond,ST=Washington,C=US (09:56:47) certificate: Successfully verified certificate for login.live.com (09:56:47) http: Request 0B162BF8 performed successfully. (09:56:47) g_log: skypeweb_string_get_chunk: assertionchunk_start' failed (09:56:47) connection: Connection error on 0AF07D70 (reason: 2 description: Failed getting PPFT value, please try logging in via browser first) (09:56:47) account: Disconnecting account (0583FC40) (09:56:47) connection: Disconnecting connection 0AF07D70 (09:56:47) GLib: g_source_remove: assertion tag > 0' failed (09:56:47) GLib: g_source_remove: assertiontag > 0' failed (09:56:47) GLib: g_source_remove: assertion `tag > 0' failed (09:56:47) http: Performing new request 0B162E98 to login.skype.com. (09:56:47) skypeweb: destroying incomplete connections (09:56:47) http: Request 0B162E98 performed without success. (09:56:47) connection: Destroying connection 0AF07D70[/code]

And this is the debug log when I try to log in using the alternative method: code account: Connecting to account . (10:07:42) connection: Connecting. gc = 0B219F98 (10:07:42) http: Performing new request 05ADC028 to login.live.com. (10:07:42) signals: Signal data for chat-conversation-typing not found! (10:07:42) dnsquery: Performing DNS lookup for login.live.com (10:07:42) dnsquery: IP resolved for login.live.com (10:07:42) proxy: Attempting connection to 40.90.23.68 (10:07:42) proxy: Connecting to login.live.com:443 with no proxy (10:07:42) proxy: Connection in progress (10:07:43) proxy: Connecting to login.live.com:443. (10:07:43) proxy: Connected to login.live.com:443. (10:07:44) nss: SSL version 3.3 using 128-bit AES-GCM with 128-bit AEAD MAC Server Auth: 2048-bit RSA, Key Exchange: 256-bit ECDHE, Compression: NULL Cipher Suite Name: TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (10:07:44) nss: subject=CN=login.live.com,O=Microsoft Corporation,L=Redmond,ST=Washington,C=US issuer=CN=DigiCert SHA2 Secure Server CA,O=DigiCert Inc,C=US (10:07:44) nss: subject=CN=DigiCert SHA2 Secure Server CA,O=DigiCert Inc,C=US issuer=CN=DigiCert Global Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US (10:07:44) nss: subject=CN=DigiCert Global Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US issuer=CN=DigiCert Global Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US (10:07:44) certificate/x509/tls_cached: Starting verify for login.live.com (10:07:44) certificate/x509/tls_cached: Checking for cached cert... (10:07:44) certificate/x509/tls_cached: ...Found cached cert (10:07:44) nss/x509: Loading certificate from C:\Users\user\Documents\Programas\Pidgin\Data\settings.purple\certificates\x509\tls_peers\login.live.com (10:07:44) certificate/x509/tls_cached: Peer cert matched cached (10:07:44) nss/x509: Exporting certificate to C:\Users\user\Documents\Programas\Pidgin\Data\settings.purple\certificates\x509\tls_peers\login.live.com (10:07:44) util: Writing file C:\Users\user\Documents\Programas\Pidgin\Data\settings.purple\certificates\x509\tls_peers\login.live.com (10:07:44) nss: Trusting CN=login.live.com,O=Microsoft Corporation,L=Redmond,ST=Washington,C=US (10:07:44) certificate: Successfully verified certificate for login.live.com (10:07:47) http: Request 05ADC028 performed successfully. (10:07:47) connection: Connection error on 0B219F98 (reason: 2 description: Login error: Bad username or password (Authentication Failure)) (10:07:47) account: Disconnecting account (058FF988) (10:07:47) connection: Disconnecting connection 0B219F98 (10:07:47) GLib: g_source_remove: assertion tag > 0' failed (10:07:47) GLib: g_source_remove: assertiontag > 0' failed (10:07:47) GLib: g_source_remove: assertion `tag > 0' failed (10:07:47) http: Performing new request 05ADB998 to login.skype.com. (10:07:47) skypeweb: destroying incomplete connections (10:07:47) http: Request 05ADB998 performed without success. (10:07:47) connection: Destroying connection 0B219F98[/code]

boris-petrov commented 3 years ago

@CP1832 - same started happening to me, I compiled from this PR and now all is fine.

CP1832 commented 3 years ago

Thanks Boris, would it be possible for anyone to compile this pull request into a dll?

pvgoran commented 3 years ago

@boris-petrov Doesn't seem to work for me, at least right now. (I'm not using "alternative login method".)

pvgoran commented 3 years ago

On the other hand, downgrading to 1.6 did resolve the problem.

Strykar commented 3 years ago

I'm using skypeweb git and am getting the same error via Bitlbee with an app password and alt-login=true.

itmagpro commented 3 years ago

@boris-petrov - thanks! Long time with 1.7 version I have same bug "Failed getting PPFT value, please try logging in via browser first"! After I compiled from your PR https://github.com/EionRobb/skype4pidgin/pull/665/files and now all is fine.

cron013 commented 3 years ago

I would like to comment that downgrading from 1.7 to 1.6 also resolved the issue for me as well.