ubergeek42 / weechat-android

Simple Weechat-Relay Android Client
524 stars 103 forks source link

Unable to connect #544

Closed kmein closed 2 years ago

kmein commented 2 years ago

Since the last update I am unable to connect (SSH tunnel) with the following error:

Screenshot_20220718-065504~2.png

This is the version I am on:

Screenshot_20220718-065812~2.png

AlexanderS commented 2 years ago

You need to add the ssh key again, because the serialVersionUID of the serialized class does not match with the class in the new version.

mhoran commented 2 years ago

Thanks, we can't fix this retroactively, but I've added configuration to R8 to keep this from happening again in the future.

oakkitten commented 2 years ago

Sorry about this!

We updated R8, our shrinker/optimization tool, and apparently it changed the key class in such a way that it failed to deserialize. Hopefully Ed25519 key is the only one affected; unlike others, it's defined in the SSH library itself. (And RSA/EC keys are normally stored inside hardware anyway.)

The fix above prevents Ed25519 key classes from being butcheredoptimized and should prevent this problem in the future, however, this will break deserialization for the existing keys, again. So very sorry.

P.S. DSA keys, which won't get stored inside hardware either, seem to be not affected.

BlackDex commented 2 years ago

@mhoran @oakkitten, not sure what happened. But for me it is fully broken now. Before this update i just could clear the key, import again and it worked, as suggested in the first reply. Now it keeps complaining it can't decode the key at all.

mhoran commented 2 years ago

We just released 1.8.1 which should fix this going forward. Make sure you have that version and try adding the key again.

BlackDex commented 2 years ago

@mhoran i know, that is when the issues started.

Screenshot_20220725-020210~2

And i think i have the latest version already.

BlackDex commented 2 years ago

Ok, small update. After i fully cleared all the data/cache for the app i was able to import it again, No clue what or why. But it works again now.

oakkitten commented 2 years ago

You had an Ed25519 key right?

I can't imagine why re-importing the key didn't work. If anyone has more intel on this, would love to hear it. Not sure what to do otherwise.

BlackDex commented 2 years ago

@oakkitten: I indeed had Ed25519. When i updated to v1.8 i needed to re-import it, which worked fine that time. Then with v1.8.1 i needed to import it again, but that failed for some reason, until i fully cleared the data of the app (with all my settings lost of course), but that at least seemed to fix it.

No issues currently at all. So, i think it's fine to just leave it. There is no way to fully reproduce this again i think. And at that point i wasn't able to use adb to check stuff. But if it might happen to someone else, this could be a solution, but more details would be great for you i think :) .

bast1aan commented 2 years ago

Unfortunately this problem reappears again, after I've already reinstalled the key a month ago. It would not be nice if I need to reinstall the SSH key every time the app updates on my phone.

oakkitten commented 2 years ago

@bast1aan Did the problem reappear all of a sudden?

1.8 had a problem and 1.8.1 fixed it, but that fix is unfortunately such that you have to import the key again after upgrading to 1.8.1. Also, I suppose this problem might reappear if the app is restored from a backup that has old data somehow. If this is not what you are seeing, could you please describe what you are seeing in more detail?