sd_bus_message_get_cookie
systemd
sd_bus_message_get_cookie
3
sd_bus_message_get_cookie
sd_bus_message_get_reply_cookie
Returns the transaction cookie of a message
#include <systemd/sd-bus.h>
int sd_bus_message_get_cookie
sd_bus_message *message
uint64_t *cookie
int sd_bus_message_get_reply_cookie
sd_bus_message *message
uint64_t *cookie
Description
sd_bus_message_get_cookie() returns the
transaction cookie of a message. The cookie uniquely identifies a
message within each bus peer, but is not globally unique. It is
assigned when a message is sent.
sd_bus_message_get_reply_cookie()
returns the transaction cookie of the message the specified
message is a response to. When a reply message is generated for a
method call message, its cookie is copied over into this field.
Note that while every message that is transferred is identified by
a cookie, only response messages carry a reply cookie
field.
Both functions take a message object as first parameter and
a place to store the 64-bit cookie in.
Return Value
On success, these calls return 0 or a positive integer. On failure, they return a negative
errno-style error code.
On success, the cookie/reply cookie is returned in the specified 64-bit unsigned integer
variable.
Errors
Returned errors may indicate the following problems:
-EINVAL
A specified parameter is invalid.
-ENODATA
No cookie has been assigned to this message. This either indicates that the
message has not been sent yet and hence has no cookie assigned, or that the message is not a method
response message and hence carries a reply cookie field.
History
sd_bus_message_get_cookie() and
sd_bus_message_get_reply_cookie() were added in version 209.
See Also
systemd1
sd-bus3
sd_bus_new3