RetroShare cannot read my pubring and segfault.
mathieu@Miyauchi-QC-PC:~/x$ RetroShare
RetroShare:: Successfully Installedthe SIGPIPE Block
Cannot hash executable! Plugins will not be loaded correctly.
retroShare::basedir() -> $HOME = /home/mathieu
Creating Root Retroshare Config Directories
Can't free 516 (0x204)
../../../src/openpgpsdk/openpgpsdk/packet-parse.c:341: OPS_E_P_NOT_ENOUGH_DATA, Not enough data
../../../src/openpgpsdk/openpgpsdk/packet-parse.c:1633: OPS_E_PROTO_UNKNOWN_SS, Unknown signature subpacket type (4)
terminate called after throwing an instance of 'std::runtime_error'
what(): PGPHandler::readKeyRing(): cannot read pubring. File corrupted.
Aborted (core dumped)
mathieu@Miyauchi-QC-PC:~/x$ ls -ltr
total 3528
-rw-r----- 1 mathieu mathieu 1806336 Jan 24 21:28 core-1
-rw-r----- 1 mathieu mathieu 1806336 Jan 24 21:32 core
mathieu@Miyauchi-QC-PC:~/x$
Hi.
Thanks for reporting this. It appears your keyring is corrupted. That should not happen. and apparently we're not handling it in a very clean way. It would help to tell us:
but for sure, 0x04 is not a signature type. So something's wrong in your keyring.
Thanks again. At least we're gonna add proper exception handling in this code.
Oups. Actually no. 0x04 is an exportable certification packet. Not a standard signature, and OpenPGP-SDK doesn't handle it yet.
I suggest one of these two solutions:
I have the felling you originally copied a gnupg keyring into RetroShare. Unfortunately, it happens from time to time that we figure out some unnusual packet types we don't handle yet.
thanks for replying. it gives me more insight on how to understand to this message.
I had strong doubt my pubring could be corrupt as I can read it fine with kgpg and gnupg itself.
seems like there are strong downside to OpenPGP-SDK.
maybe an idea would be to consider another lib ?
in the mean time, if you improve the output of this error message.
it would be interesting to display which of my key in my key ring has this certificate of type 4.
are you only scanning my own keys I have a private counterpart, or this certificate could be in one of my contacts keys?
I really would like to see RetroShare gain audience. and I believe support for all type of keys is mandatory. not only very few people have PGP keys but now we must have an RSA only, no subkeys, no certificate type 4, and what else?
this reduce your potential audience.
also, people who will be interested in using RetroShare might, like me, as their old PGP key that they want to keep using. it has been signed by people and all.
people will, like me, get stuck at login as they dont want to create a new key.
regards,