MOS Source Code
Loading...
Searching...
No Matches
ipc.hpp
Go to the documentation of this file.
1// SPDX-License-Identifier: GPL-3.0-or-later
2
3#pragma once
4
6#include "mos/types.hpp"
7
8#include <stddef.h>
9
10struct IPCDescriptor;
11struct IPCServer;
12
14
15void ipc_init(void);
16
17PtrResult<IPCServer> ipc_server_create(mos::string_view name, size_t max_pending_connections);
18
20
22
23void ipc_server_close(IPCServer *server);
24
26
27size_t ipc_client_read(IPCDescriptor *ipc, void *buffer, size_t size);
28size_t ipc_client_write(IPCDescriptor *ipc, const void *buffer, size_t size);
29size_t ipc_server_read(IPCDescriptor *ipc, void *buffer, size_t size);
30size_t ipc_server_write(IPCDescriptor *ipc, const void *buffer, size_t size);
31
void ipc_server_close(IPCServer *server)
Definition ipc.cpp:88
void ipc_server_close_channel(IPCDescriptor *ipc)
Definition ipc.cpp:167
void ipc_client_close_channel(IPCDescriptor *ipc)
Definition ipc.cpp:153
size_t ipc_server_read(IPCDescriptor *ipc, void *buffer, size_t size)
Definition ipc.cpp:143
PtrResult< IPCServer > ipc_get_server(mos::string_view name)
Definition ipc.cpp:224
PtrResult< IPCDescriptor > ipc_server_accept(IPCServer *server)
Definition ipc.cpp:236
PtrResult< IPCDescriptor > ipc_connect_to_server(mos::string_view name, size_t buffer_size)
Definition ipc.cpp:305
size_t ipc_server_write(IPCDescriptor *ipc, const void *buffer, size_t size)
Definition ipc.cpp:148
size_t ipc_client_read(IPCDescriptor *ipc, void *buffer, size_t size)
Definition ipc.cpp:133
const file_ops_t ipc_sysfs_file_ops
PtrResult< IPCServer > ipc_server_create(mos::string_view name, size_t max_pending_connections)
Definition ipc.cpp:188
size_t ipc_client_write(IPCDescriptor *ipc, const void *buffer, size_t size)
Definition ipc.cpp:138
void ipc_init(void)
Definition ipc.cpp:181
basic_string_view< char > string_view
size_t size
Definition slab.cpp:34
const char * name
Definition slab.cpp:35
static char buffer[2048]