Flow-IPC 3.0.0
Flow-IPC project: Full implementation reference.
Classes | Namespaces | Functions
asio_local_stream_socket.hpp File Reference
#include "ipc/transport/detail/asio_local_stream_socket_fwd.hpp"
#include "ipc/util/shared_name.hpp"
#include <flow/log/log.hpp>
#include <flow/error/error.hpp>
#include <boost/array.hpp>
#include <string>
#include <cstdint>
#include <sys/socket.h>

Go to the source code of this file.

Classes

union  ipc::transport::asio_local_stream_socket::Msg_control_as_union
 Ancillary data (for recv[m]msg() and send[m]msg()) buffer, used in our case for storing transmitted native handle(s), properly sized to store the max supported # of handles and wrapped in a union in order to ensure it is suitably aligned. More...
 

Namespaces

namespace  ipc
 Catch-all namespace for the Flow-IPC project: A library/API in modern C++17 providing high-performance communication between processes.
 
namespace  ipc::transport
 Flow-IPC module providing transmission of structured messages and/or low-level blobs (and more) between pairs of processes.
 
namespace  ipc::transport::asio_local_stream_socket
 Additional (versus boost.asio) APIs for advanced work with local (Unix domain) stream and connected-datagram sockets including transmission of native handles through them; and peer process credentials acquisition.
 

Functions

template<typename Protocol >
Endpoint< Protocol > ipc::transport::asio_local_stream_socket::endpoint_at_shared_name (flow::log::Logger *logger_ptr, const Shared_name &absolute_name, Error_code *err_code=nullptr)
 Returns an Endpoint corresponding to the given absolute Shared_name, so that an Acceptor or Peer_socket could be bound to it. More...