[OTR-dev] [libotr PATCH] Missing opdata when sending message fragments

David Goulet dgoulet at ev0ke.net
Sun Jan 27 20:32:13 EST 2013


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Hey Jacob,

Jacob Appelbaum:
> David Goulet:
>> Hi,
>> 
>> I've attached a patch to this email that fixes a problem we've
>> been having in irssi-otr which is that the opdata parameter is
>> always NULL for the inject_message callback with fragments.
>> 
>> (FYI, git format-patch was used for the patch).
>> 
> 
> 
> Thanks, I've merged this into a branch (ioerror/pending-patches)
> for Ian to review.
> 
> I've tested this patch by talking with a third party client 
> (xmpp-client) and a patched libotr client using bitlbee and another
> with xmpp-client/irssi. It appears to improve things as before it
> was applied, I wasn't able to start an OTR session with the other
> client and stay in sync.
> 
> Could those who are impacted by this bug go into some details on
> their clients, how they were broken and how this patch fixed
> things? It would be good to have this in writing somewhere.

As I said in the first email, I've discovered this problem with
irssi-otr alpha1 version that the opdata pointer was always NULL in
the inject_message callback. This was detected with message
fragmentation where only the last one was sent to the other party and
the others were ignored because of the invalid opdata pointer (in the
irssi-otr of the sender). Note that it is with
OTRL_FRAGMENT_SEND_ALL_BUT_LAST fragment policy.

Just a note with irssi and bitlbee. This patch is required for
irssi-otr to work and send multiple fragments but with bitlbee there
was an other problem that a fragmented message that is too large for
IRC for example, a Jabber message of 666 bytes, bitlbee creates two
IRC private messages (PRIVMSG) of 425 bytes and 241 bytes (the rest)
so I did a patch (now upstream) to reconstruct the original message
based on the OTR message markers ("?OTR:" and ".").

Hope this helps!

Thanks!
David

> 
> All the best, Jacob
> 
> _______________________________________________ OTR-dev mailing
> list OTR-dev at lists.cypherpunks.ca 
> http://lists.cypherpunks.ca/mailman/listinfo/otr-dev
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iQEcBAEBCgAGBQJRBdUaAAoJEELoaioR9I02eYsH/RUrcGva13BprpVEuFPiM23q
a28O9pLwbN7E2/a8RB1ogoa7UpIbF5xHZFxaMa0LE1+cXWP3oOOLxab0J7GSk1kc
ap6unnhwE2LTgSrVtJGkPWO2l1QDYKQKufQrfz3PFejtbuRkVyYNT2L3wME53e6p
pbDwRkcq4ZwNMoP/9N88hi3kftyQcHIWwReu2LqwZFhD6t+EcxXfzx28Cr/1NyxQ
JKfPDLhMrA4iGo2aPy+AkcMr0jKxhcERLk+4sRJiw03kRzA9HJBTFepjAkS/zbwN
KZxjWL0eX5omcB50euphB2Rfpd3O6Pkgw9vVhHX4pcGsCTNNEN37xvAJ0uMgqwA=
=Cn3g
-----END PGP SIGNATURE-----



More information about the OTR-dev mailing list