[OTR-dev] Creating a libotr.so ...
Rüdiger Kuhlmann
l-otr.0705+23jv-l at ruediger-kuhlmann.de
Thu Jun 7 08:06:21 EDT 2007
Hi everyone,
recently I got OTR support for my instant messaging application (mICQ) by
using the library that should better be called libgaimotr. I found the API
it provides rather lacking, for the following reasons:
* For outgoing and incoming messages, the message text may be replaced
by a different text. However, the crucial information whether the
message will now be sent encrypted and whether the fingerprint is
trusted or not, is simply not available (and impossible to obtain
correctly in all cases).
* For outgoing messages, it is impossible to know whether the encrypted
message contains the original message or is just initiating the OTR
handshake (which makes it impossible to properly follow up with
acknowledgements of the IM system), because...
* ... the library is unable to signal back that the message must not be
sent, or must not be sent now because no OTR session is established.
Resending messages is _NOT_ the task of the library!
* It is impossible to signal back to the library that an injected
message could not be sent due to size constraints. Thus, the library
does not provide for outgoing fragmentation at all!
* The library sends back complete sentences to the library user in a
language that in most cases won't be the user's language. What for
a crazy idea is this? The question is not, how to translate those
messages, the question is why send those messages at all instead
of sending proper error messages?? Creating appropriate error
messages to the user is a task of the application, not of the
library!
* ... and even worse: these messages are HTML. OMG, Ponies!
* If an unencrypted message with on OTR offer is received, the library
does _not_ re-negotiate an OTR session (this can happen if an OTR
session was established and the sending application is killed and
restarted and thus doesn't know anything about any existing OTR session).
By the way, this email answers the question on the list for a command line
otr application with "now there is one" (doing ICQ and XMPP).
--
"See, free nations are peaceful nations. Free nations don't attack
each other. Free nations don't develop weapons of mass destruction."
- George W. Bush, Milwaukee, Wis., Oct. 3, 2003
More information about the OTR-dev
mailing list