max message size ?
Johan Fischer
linux at fischaz.com
Mon Feb 14 16:48:24 PST 2005
Hi list, I was trying to update my code after the recent (maybe not
actually) API change for iter_append_*** and iter_append_basic ... and
discover 2 problems with my code:
Just quickly how I use the dbus lib:
- system debian Unstable
- dbus CVS HEAD - using just the lib (not the message bus) to connect
client to server. - using glib binding to manage server / client
connections, watch, server, handler ....
- It's a C++ code using the dbus lib (well, it was working before so It
shouldn't matter right ?)
The first problem was when I disconnect the client from the server, the
server stop listening to new connections. The first connection and
comms are ok, but after disconnecting and trying to reconnect, the
server stop listening and don't respond anymore. It seems the problem
was in the fact that I unref the connection when receiving the
disconnect signal message. static DBusHandlerResult filter_disconnect
(DBusConnection *connection, DBusMessage *message, void
*user_data)
{
if (!dbus_message_is_signal (message,
DBUS_INTERFACE_ORG_FREEDESKTOP_LOCAL,
"Disconnected"))
return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
UserManager *user = static_cast<UserManager*>(user_data);
user->disconnectSignal (connection, message, NULL);
//dbus_connection_unref (connection);
return DBUS_HANDLER_RESULT_HANDLED;
}
As you can see, my quick fix for it to work was to comment the unref
line... So I wonder if it was/is a pb in my code and that I shouldn't
have use the unref or a pb in the lib ?
The second one is about the signature and max message size. My server
seems to crash failing an assert when trying to create a 4kbytes
message. I'm creating a message using iter_append_basic only so it
might be too much append for the signature (I'm just guessing)...
The error message :
[ResTradeList] Start nb=31 - messageSize=4189
15860: assertion failed "data_len <= DBUS_MAXIMUM_SIGNATURE_LENGTH"
file "dbus-marshal-basic.c" line 760 function
marshal_len_followed_by_bytes
I hope this is enough for a start :) I can provide the dbus debug infos
as well if requested and more code.
Cheers.
JF.
----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-keys
Size: 2071 bytes
Desc: PGP Public Key
Url : http://lists.freedesktop.org/archives/dbus/attachments/20050215/fecf402c/attachment.key
More information about the dbus
mailing list