![]() |
dbus-cxx
|
The Sendmsg handles reading and writing over a Unix FD that supports sendmsg(). More...
#include <sendmsgtransport.h>

Public Member Functions | |
| ~SendmsgTransport () | |
| ssize_t | writeMessage (std::shared_ptr< const Message > message, uint32_t serial) |
| std::shared_ptr< Message > | readMessage () |
| bool | is_valid () const |
| Check if this transport is OK. More... | |
| int | fd () const |
Public Member Functions inherited from DBus::priv::Transport | |
| virtual | ~Transport () |
| virtual ssize_t | writeMessage (std::shared_ptr< const Message > message, uint32_t serial)=0 |
| Writes a message to the transport stream. More... | |
| virtual std::shared_ptr< Message > | readMessage ()=0 |
| Read a message from the transport stream. More... | |
| virtual bool | is_valid () const =0 |
| Check to see if this transport is valid. More... | |
| virtual int | fd () const =0 |
| Returns the file descriptor that this transport acts on. More... | |
Static Public Member Functions | |
| static std::shared_ptr< SendmsgTransport > | create (int fd, bool initialize) |
| Create a SendmsgTransport. More... | |
Static Public Member Functions inherited from DBus::priv::Transport | |
| static std::shared_ptr< Transport > | open_transport (std::string address) |
| Open and return a transport based off of the given address. More... | |
Private Member Functions | |
| SendmsgTransport (int fd, bool initialize) | |
| void | purgeData () |
| DBUS_CXX_PROPAGATE_CONST (std::unique_ptr< priv_data >) m_priv | |
Additional Inherited Members | |
Protected Attributes inherited from DBus::priv::Transport | |
| std::vector< uint8_t > | m_serverAddress |
The Sendmsg handles reading and writing over a Unix FD that supports sendmsg().
This allows you to send file descriptors over a Unix FD
|
private |
References LOGGER_NAME, and SIMPLELOGGER_DEBUG.
Referenced by create().
| SendmsgTransport::~SendmsgTransport | ( | ) |
|
static |
Create a SendmsgTransport.
If the transport is unable to be created, returns an invalid shared_ptr.
| fd | The already-open file descriptor |
| initialize | True if this transport should initialize the connection by sending a single NULL byte |
References fd(), and SendmsgTransport().
Referenced by DBus::priv::Transport::open_transport().
|
private |
|
virtual |
Implements DBus::priv::Transport.
Referenced by create(), and writeMessage().
|
virtual |
|
private |
Referenced by readMessage().
|
virtual |
Implements DBus::priv::Transport.
References DBus::Message::create_from_data(), LOGGER_NAME, DBus::Validator::maximum_message_size(), purgeData(), and SIMPLELOGGER_DEBUG.
|
virtual |
Implements DBus::priv::Transport.
References fd(), DBus::hexdump(), LOGGER_NAME, SIMPLELOGGER_ERROR, and SIMPLELOGGER_TRACE.