D-Bus 1.16.0
|
Implementation details of DBusTransport on sockets. More...
Data Structures | |
struct | DBusTransportSocket |
Implementation details of DBusTransportSocket. More... | |
Typedefs | |
typedef struct DBusTransportSocket | DBusTransportSocket |
Opaque object representing a socket file descriptor transport. | |
Functions | |
DBusTransport * | _dbus_transport_new_for_socket (DBusSocket fd, const DBusString *server_guid, const DBusString *address) |
Creates a new transport for the given socket file descriptor. | |
DBusTransport * | _dbus_transport_new_for_tcp_socket (const char *host, const char *port, const char *family, const char *noncefile, DBusError *error) |
Creates a new transport for the given hostname and port. | |
DBusTransportOpenResult | _dbus_transport_open_socket (DBusAddressEntry *entry, DBusTransport **transport_p, DBusError *error) |
Opens a TCP socket transport. | |
DBusTransport * | _dbus_transport_new_for_domain_socket (const char *path, dbus_bool_t abstract, DBusError *error) |
Creates a new transport for the given Unix domain socket path. | |
DBusTransportOpenResult | _dbus_transport_open_unix_socket (DBusAddressEntry *entry, DBusTransport **transport_p, DBusError *error) |
Opens a UNIX socket transport. | |
Implementation details of DBusTransport on sockets.
typedef struct DBusTransportSocket DBusTransportSocket |
Opaque object representing a socket file descriptor transport.
Definition at line 49 of file dbus-transport-socket.c.
DBusTransport * _dbus_transport_new_for_domain_socket | ( | const char * | path, |
dbus_bool_t | abstract, | ||
DBusError * | error | ||
) |
Creates a new transport for the given Unix domain socket path.
This creates a client-side of a transport.
path | the path to the domain socket. |
abstract | TRUE to use abstract socket namespace |
error | address where an error can be returned. |
Definition at line 1518 of file dbus-transport-socket.c.
References _dbus_address_append_escaped(), _dbus_close_socket(), _dbus_connect_unix_socket(), _dbus_string_append(), _dbus_string_free(), _dbus_string_init(), _dbus_string_init_const(), _dbus_transport_new_for_socket(), DBUS_ERROR_NO_MEMORY, dbus_set_error(), and NULL.
Referenced by _dbus_transport_open_platform_specific(), and _dbus_transport_open_unix_socket().
DBusTransport * _dbus_transport_new_for_socket | ( | DBusSocket | fd, |
const DBusString * | server_guid, | ||
const DBusString * | address | ||
) |
Creates a new transport for the given socket file descriptor.
The file descriptor must be nonblocking (use _dbus_set_fd_nonblocking() to make it so). This function is shared by various transports that boil down to a full duplex file descriptor.
fd | the file descriptor. |
server_guid | non-NULL if this transport is on the server side of a connection |
address | the transport's address |
Definition at line 1295 of file dbus-transport-socket.c.
References _dbus_auth_set_unix_fd_possible(), _dbus_socket_can_pass_unix_fd(), _dbus_string_free(), _dbus_string_init(), _dbus_transport_init_base(), _dbus_watch_invalidate(), _dbus_watch_new(), _dbus_watch_unref(), DBusTransport::auth, base, dbus_free(), dbus_new0, DBUS_WATCH_READABLE, DBUS_WATCH_WRITABLE, encoded_incoming, encoded_outgoing, FALSE, fd, max_bytes_read_per_iteration, max_bytes_written_per_iteration, message_bytes_written, NULL, read_watch, and write_watch.
Referenced by _dbus_transport_new_for_domain_socket(), and _dbus_transport_new_for_tcp_socket().
DBusTransport * _dbus_transport_new_for_tcp_socket | ( | const char * | host, |
const char * | port, | ||
const char * | family, | ||
const char * | noncefile, | ||
DBusError * | error | ||
) |
Creates a new transport for the given hostname and port.
If host is NULL, it will default to localhost
host | the host to connect to |
port | the port to connect to |
family | the address family to connect to |
noncefile | path to nonce file |
error | location to store reason for failure. |
Definition at line 1379 of file dbus-transport-socket.c.
References _dbus_close_socket(), _dbus_string_append(), _dbus_string_free(), _dbus_string_init(), _dbus_transport_new_for_socket(), DBUS_ERROR_NO_MEMORY, dbus_set_error(), and NULL.
Referenced by _dbus_transport_open_socket().
DBusTransportOpenResult _dbus_transport_open_socket | ( | DBusAddressEntry * | entry, |
DBusTransport ** | transport_p, | ||
DBusError * | error | ||
) |
Opens a TCP socket transport.
entry | the address entry to try opening as a tcp transport. |
transport_p | return location for the opened transport |
error | error to be set |
Definition at line 1457 of file dbus-transport-socket.c.
References _dbus_assert, _dbus_set_bad_address(), _dbus_transport_new_for_tcp_socket(), dbus_address_entry_get_method(), dbus_address_entry_get_value(), NULL, and TRUE.
DBusTransportOpenResult _dbus_transport_open_unix_socket | ( | DBusAddressEntry * | entry, |
DBusTransport ** | transport_p, | ||
DBusError * | error | ||
) |
Opens a UNIX socket transport.
entry | the address entry to try opening as a unix transport. |
transport_p | return location for the opened transport |
error | error to be set |
Definition at line 1584 of file dbus-transport-socket.c.
References _dbus_assert, _dbus_set_bad_address(), _dbus_transport_new_for_domain_socket(), dbus_address_entry_get_method(), dbus_address_entry_get_value(), FALSE, NULL, and TRUE.