History log of /openbmc/sdbusplus/src/ (Results 1 – 25 of 73)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
5e36f4ab06-Nov-2025 Patrick Williams <patrick@stwcx.xyz>

async: remove tag_invoke calls

P2300R9 removed usage of tag_invoke. stdexec still has it
but in order to be forward compliant with the C++26 standard
we should modernize the code and remove its usa

async: remove tag_invoke calls

P2300R9 removed usage of tag_invoke. stdexec still has it
but in order to be forward compliant with the C++26 standard
we should modernize the code and remove its usage. This also
has the benefit of simplifying most sender/receiver implementations.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Ib0a1d0a82485c8d247a18daa020d0bba2249e95c

show more ...


/openbmc/sdbusplus/.clang-format-ignore
/openbmc/sdbusplus/README.md
/openbmc/sdbusplus/example/asio-example.cpp
/openbmc/sdbusplus/include/sdbusplus/asio/connection.hpp
/openbmc/sdbusplus/include/sdbusplus/asio/object_server.hpp
/openbmc/sdbusplus/include/sdbusplus/async/callback.hpp
/openbmc/sdbusplus/include/sdbusplus/async/context.hpp
/openbmc/sdbusplus/include/sdbusplus/async/execution.hpp
/openbmc/sdbusplus/include/sdbusplus/async/fdio.hpp
/openbmc/sdbusplus/include/sdbusplus/async/match.hpp
/openbmc/sdbusplus/include/sdbusplus/async/mutex.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__any_receiver_ref.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__as_awaitable.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__awaitable.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__basic_sender.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__bulk.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__completion_behavior.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__completion_signatures.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__concepts.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__config.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__connect_awaitable.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__continues_on.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__cpo.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__debug.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__diagnostics.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__domain.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__ensure_started.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__env.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__execute.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__execution_fwd.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__execution_legacy.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__force_include.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__inline_scheduler.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__into_variant.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__intrusive_mpsc_queue.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__intrusive_ptr.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__intrusive_queue.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__intrusive_slist.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__just.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__let.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__manual_lifetime.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__meta.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__on.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__operation_states.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__optional.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__preprocessor.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__query.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__ranges.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__read_env.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__receiver_adaptor.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__receiver_ref.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__receivers.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__run_loop.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__schedule_from.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__schedulers.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__scope.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__sender_adaptor_closure.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__sender_introspection.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__senders.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__senders_core.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__shared.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__spin_loop_pause.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__split.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__start_detached.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__starts_on.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__stop_token.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__stopped_as_error.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__stopped_as_optional.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__submit.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__sync_wait.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__tag_invoke.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__then.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__transfer_just.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__transform_completion_signatures.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__transform_sender.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__tuple.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__type_traits.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__unstoppable.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__upon_error.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__upon_stopped.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__utility.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__variant.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__when_all.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__with_awaitable_senders.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__write_env.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/any_sender_of.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/async_scope.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/at_coroutine_exit.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/commit.info
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/concepts.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/coroutine.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/env.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/execution.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/functional.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/import
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/inline_scheduler.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/scope.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/sequence_senders.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/stop_token.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/task.hpp
/openbmc/sdbusplus/include/sdbusplus/async/timer.hpp
async/context.cpp
async/fdio.cpp
async/match.cpp
async/mutex.cpp
/openbmc/sdbusplus/test/async/fdio_timed/fdio_timed_write_async_with_timeout.cpp
/openbmc/sdbusplus/test/async/fdio_timed/fdio_timed_write_async_with_timeout_iterative.cpp
/openbmc/sdbusplus/test/async/fdio_timed/fdio_timed_write_skip_with_timeout.cpp
/openbmc/sdbusplus/test/async/fdio_timed/fdio_timed_write_sync.cpp
/openbmc/sdbusplus/test/async/fdio_timed/fdio_timed_write_sync_iterative.cpp
/openbmc/sdbusplus/test/async/fdio_timed/meson.build
/openbmc/sdbusplus/test/async/fdio_timed/suite.cpp
/openbmc/sdbusplus/test/async/fdio_timed/suite.hpp
/openbmc/sdbusplus/test/async/meson.build
/openbmc/sdbusplus/test/gen/server/TestWithMethod/meson.build
/openbmc/sdbusplus/test/gen/server/meson.build
/openbmc/sdbusplus/test/gen/test_method_names.cpp
/openbmc/sdbusplus/test/gen/test_property_names.cpp
/openbmc/sdbusplus/test/gen/test_signal_names.cpp
/openbmc/sdbusplus/test/meson.build
/openbmc/sdbusplus/test/message/call.cpp
/openbmc/sdbusplus/test/message/flat_map_test.cpp
/openbmc/sdbusplus/test/timer/meson.build
/openbmc/sdbusplus/test/timer/suite.hpp
/openbmc/sdbusplus/test/timer/timer_callback_done.cpp
/openbmc/sdbusplus/test/timer/timer_callback_not_done.cpp
/openbmc/sdbusplus/test/timer/timer_expire.cpp
/openbmc/sdbusplus/test/timer/timer_not_expire.cpp
/openbmc/sdbusplus/test/timer/timer_update_expire.cpp
/openbmc/sdbusplus/test/timer/timer_update_not_expire.cpp
/openbmc/sdbusplus/test/unpack_properties.cpp
/openbmc/sdbusplus/test/yaml/server/Test2.interface.yaml
/openbmc/sdbusplus/test/yaml/server/TestWithMethod.interface.yaml
/openbmc/sdbusplus/tools/sdbusplus/property.py
/openbmc/sdbusplus/tools/sdbusplus/templates/interface.common.hpp.mako
bd04c3b207-Jul-2025 Jagpal Singh Gill <paligill@gmail.com>

add support for async mutex

Add support for async mutex for synchronizing coroutines/tasks using
sender receiver framework. Also, add lock_guard support which provides a
RAII wrapper for mutex to ow

add support for async mutex

Add support for async mutex for synchronizing coroutines/tasks using
sender receiver framework. Also, add lock_guard support which provides a
RAII wrapper for mutex to own it for the duration of a scoped block.

Tested: Add Unit Test using gtest
```
1/1 test_async_mutex OK 2.01s

Ok: 1
Expected Fail: 0
Fail: 0
Unexpected Pass: 0
Skipped: 0
Timeout: 0
```

Change-Id: I691528885a94b9cf55d4b7f2fb0c1e0e6d0ab84f
Signed-off-by: Jagpal Singh Gill <paligill@gmail.com>
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...

5b54325122-Jul-2025 Jagpal Singh Gill <paligill@gmail.com>

add support for timed fdio

For certain operations such as reading and writing to a fd for request
response flows, the fd needs to have a timeout to avoid everlasting
hangs in case of a unresponsive

add support for timed fdio

For certain operations such as reading and writing to a fd for request
response flows, the fd needs to have a timeout to avoid everlasting
hangs in case of a unresponsive responder. To support this, the fdio has
been extended to add timeout support by throwing an exception in case of
timeout.

Tested: Unit Test
```
1/1 test_async_fdio_timed OK 10.03s

Ok: 1
Expected Fail: 0
Fail: 0
Unexpected Pass: 0
Skipped: 0
Timeout: 0
```

Change-Id: Ib219e4a4c55125785e6c1571488e445ba3379244
Signed-off-by: Jagpal Singh Gill <paligill@gmail.com>

show more ...


/openbmc/sdbusplus/include/sdbusplus/asio/connection.hpp
/openbmc/sdbusplus/include/sdbusplus/asio/object_server.hpp
/openbmc/sdbusplus/include/sdbusplus/async/fdio.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__awaitable.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__concepts.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__connect_awaitable.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__domain.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__meta.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__ranges.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__schedulers.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__senders.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__senders_core.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__tag_invoke.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/functional.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/sequence_senders.hpp
/openbmc/sdbusplus/include/sdbusplus/message/append.hpp
/openbmc/sdbusplus/include/sdbusplus/message/read.hpp
/openbmc/sdbusplus/include/sdbusplus/utility/make_dbus_args_tuple.hpp
/openbmc/sdbusplus/meson.build
async/fdio.cpp
/openbmc/sdbusplus/test/async/fdio_timed.cpp
/openbmc/sdbusplus/test/meson.build
/openbmc/sdbusplus/test/message/append.cpp
/openbmc/sdbusplus/test/utility/make_dbus_args_tuple.cpp
/openbmc/sdbusplus/tools/README.md
/openbmc/sdbusplus/tools/pyproject.toml
bc13997408-Jul-2025 Patrick Williams <patrick@stwcx.xyz>

watchdog: add support for systemd watchdog

Add interfaces and handling for systemd watchdog petting.

Systemd service files can specify a watchdog timeout and systemd will
expect the application to

watchdog: add support for systemd watchdog

Add interfaces and handling for systemd watchdog petting.

Systemd service files can specify a watchdog timeout and systemd will
expect the application to periodically poke a software watchdog, or
else the service will be restarted. This is enabled with the
'WatchdogSec=' service file directive. Add primitives for
interacting with the watchdog APIs.

Enable automatic support in the `async::context` for this watchdog
handling, such that if the watchdog is required (by checking
sd_watchdog_enabled) the daemon will automatically pet at the
appropriate rate, assuming that the `async::context` is functioning
correctly.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I68caf7b2c7166ca402b07ecee3db65f75365aa72

show more ...


/openbmc/sdbusplus/.clang-format
/openbmc/sdbusplus/OWNERS
/openbmc/sdbusplus/example/asio-example.cpp
/openbmc/sdbusplus/example/calculator-client.cpp
/openbmc/sdbusplus/example/coroutine-example.cpp
/openbmc/sdbusplus/example/gen/meson.build
/openbmc/sdbusplus/example/gen/net/poettering/Calculator/meson.build
/openbmc/sdbusplus/example/gen/net/poettering/meson.build
/openbmc/sdbusplus/example/gen/regenerate-meson
/openbmc/sdbusplus/example/meson.build
/openbmc/sdbusplus/include/sdbusplus/asio/connection.hpp
/openbmc/sdbusplus/include/sdbusplus/asio/object_server.hpp
/openbmc/sdbusplus/include/sdbusplus/asio/property.hpp
/openbmc/sdbusplus/include/sdbusplus/async.hpp
/openbmc/sdbusplus/include/sdbusplus/async/match.hpp
/openbmc/sdbusplus/include/sdbusplus/async/server.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__awaitable.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__concepts.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__domain.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__let.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__meta.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__ranges.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__schedulers.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__sender_adaptor_closure.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__senders.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__senders_core.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__tag_invoke.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__transform_sender.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__utility.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/any_sender_of.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/at_coroutine_exit.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/coroutine.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/functional.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/sequence_senders.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/stop_token.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/task.hpp
/openbmc/sdbusplus/include/sdbusplus/bus.hpp
/openbmc/sdbusplus/include/sdbusplus/message.hpp
/openbmc/sdbusplus/include/sdbusplus/message/append.hpp
/openbmc/sdbusplus/include/sdbusplus/message/read.hpp
/openbmc/sdbusplus/include/sdbusplus/message/types.hpp
/openbmc/sdbusplus/include/sdbusplus/sdbus.hpp
/openbmc/sdbusplus/include/sdbusplus/sdbuspp_support/event.hpp
/openbmc/sdbusplus/include/sdbusplus/server/transaction.hpp
/openbmc/sdbusplus/include/sdbusplus/test/sdbus_mock.hpp
/openbmc/sdbusplus/include/sdbusplus/utility/container_traits.hpp
/openbmc/sdbusplus/include/sdbusplus/utility/memory.hpp
/openbmc/sdbusplus/include/sdbusplus/utility/type_traits.hpp
/openbmc/sdbusplus/include/sdbusplus/vtable.hpp
/openbmc/sdbusplus/meson.build
async/context.cpp
bus.cpp
/openbmc/sdbusplus/test/async/watchdog.cpp
/openbmc/sdbusplus/test/gen/meson.build
/openbmc/sdbusplus/test/gen/regenerate-meson
/openbmc/sdbusplus/test/gen/server/Test/meson.build
/openbmc/sdbusplus/test/gen/server/Test2/meson.build
/openbmc/sdbusplus/test/gen/server/Test3/meson.build
/openbmc/sdbusplus/test/gen/server/meson.build
/openbmc/sdbusplus/test/gen/test_aserver_emit_interfaces_added_signal.cpp
/openbmc/sdbusplus/test/gen/test_aserver_multiple_interfaces.cpp
/openbmc/sdbusplus/test/gen/test_aserver_no_uninitialized_value_constructor.cpp
/openbmc/sdbusplus/test/gen/test_server_no_uninitialized_value_constructor.cpp
/openbmc/sdbusplus/test/meson.build
/openbmc/sdbusplus/test/message/append.cpp
/openbmc/sdbusplus/test/message/read.cpp
/openbmc/sdbusplus/test/vtable/vtable.cpp
/openbmc/sdbusplus/test/yaml/server/Test2.interface.yaml
/openbmc/sdbusplus/test/yaml/server/Test3.interface.yaml
/openbmc/sdbusplus/tools/meson.build
/openbmc/sdbusplus/tools/sdbus++-gen-meson
/openbmc/sdbusplus/tools/sdbusplus/event.py
/openbmc/sdbusplus/tools/sdbusplus/main.py
/openbmc/sdbusplus/tools/sdbusplus/namedelement.py
/openbmc/sdbusplus/tools/sdbusplus/property.py
/openbmc/sdbusplus/tools/sdbusplus/templates/event.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/interface.aserver.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/interface.client.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/interface.common.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/interface.server.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/property.aserver.callback.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/signal.aserver.emit.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/signal.prototype.hpp.mako
36137e0918-Dec-2024 Patrick Williams <patrick@stwcx.xyz>

clang-format: re-format for clang-19

clang-format-19 isn't compatible with the clang-format-18 output, so we
need to reformat the code with the latest version. A few parameters
in clang-tidy have b

clang-format: re-format for clang-19

clang-format-19 isn't compatible with the clang-format-18 output, so we
need to reformat the code with the latest version. A few parameters
in clang-tidy have been deprecated, so adjust the style file
accordingly.

See Ie2f6eb3b043f2d655c9df806815afd7971fd0947 for updated style.
See I88192b41ab7a95599a90915013579608af7bc56f for clang-19 enablement.

Change-Id: I65cb0501917fee37f007ed97ce973e0dd07170fa
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...


/openbmc/sdbusplus/.clang-format
/openbmc/sdbusplus/example/calculator-aserver.cpp
/openbmc/sdbusplus/include/sdbusplus/async/callback.hpp
/openbmc/sdbusplus/include/sdbusplus/async/fdio.hpp
/openbmc/sdbusplus/include/sdbusplus/async/match.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__awaitable.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__basic_sender.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__bulk.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__connect_awaitable.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__continue_on.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__continues_on.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__domain.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__env.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__intrusive_mpsc_queue.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__intrusive_ptr.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__intrusive_queue.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__intrusive_slist.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__let.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__meta.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__on.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__operation_states.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__p2300.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__schedule_from.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__schedulers.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__senders.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__split.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__start_on.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__starts_on.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__sync_wait.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__transfer_just.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__transform_sender.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__when_all.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__with_awaitable_senders.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/any_sender_of.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/async_scope.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/at_coroutine_exit.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/functional.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/sequence_senders.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/stop_token.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/task.hpp
/openbmc/sdbusplus/include/sdbusplus/async/timer.hpp
/openbmc/sdbusplus/include/sdbusplus/message/native_types.hpp
/openbmc/sdbusplus/include/sdbusplus/utility/container_traits.hpp
async/context.cpp
/openbmc/sdbusplus/test/async/context.cpp
/openbmc/sdbusplus/test/async/fdio.cpp
f083bc1a16-Dec-2024 Patrick Williams <patrick@stwcx.xyz>

stdexec: update to latest commit

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I93e33afb0ca87f425074e86f87e6cde320f20dbc


/openbmc/sdbusplus/include/sdbusplus/async/context.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__basic_sender.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__bulk.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__config.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__connect_awaitable.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__continues_on.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__domain.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__env.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__execution_fwd.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__let.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__manual_lifetime.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__meta.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__on.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__read_env.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__receivers.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__schedule_from.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__schedulers.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__sender_adaptor_closure.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__senders.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__shared.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__spin_loop_pause.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__starts_on.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__sync_wait.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__transfer_just.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__tuple.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__type_traits.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__variant.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__when_all.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/async_scope.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/at_coroutine_exit.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/commit.info
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/coroutine.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/execution.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/task.hpp
/openbmc/sdbusplus/include/sdbusplus/async/timer.hpp
async/context.cpp
869230c612-Dec-2024 Patrick Williams <patrick@stwcx.xyz>

async: fdio: remove unused member

clang warns about an unused private field ('fd') because it is
a capture-only member. There isn't any reason to keep the fd
around once the underlying sd_event has

async: fdio: remove unused member

clang warns about an unused private field ('fd') because it is
a capture-only member. There isn't any reason to keep the fd
around once the underlying sd_event has been created, so remove
it as a member.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I176b2c4b53bbd7e4bb4bc9a9594f5816ee1bda2e

show more ...

2a12ae1223-Oct-2024 Jagpal Singh Gill <paligill@gmail.com>

add async fd sender receiver for coroutines

Add async sender receiver for file descriptor based events. The user of
the async file descriptor needs to initialize a fdio instance and then
call next()

add async fd sender receiver for coroutines

Add async sender receiver for file descriptor based events. The user of
the async file descriptor needs to initialize a fdio instance and then
call next() to get each new event for the fd.

Tested:
```
> meson test -C builddir test_async_fdio
ninja: Entering directory `/host/repos/sdbusplus/builddir'
ninja: no work to do.
1/1 test_async_fdio OK 6.01s

Ok: 1
Expected Fail: 0
Fail: 0
Unexpected Pass: 0
Skipped: 0
Timeout: 0

Full log written to /host/repos/sdbusplus/builddir/meson-logs/testlog.txt
```

Change-Id: I1b4f16963e6096f30484c4a6df471e64ed24448b
Signed-off-by: Jagpal Singh Gill <paligill@gmail.com>

show more ...

b08d14dd05-Nov-2024 Patrick Williams <patrick@stwcx.xyz>

sdbus++: events: unpack an event from JSON

Generate code necessary to unpack a generated event from its
JSON representation.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I7a28617f

sdbus++: events: unpack an event from JSON

Generate code necessary to unpack a generated event from its
JSON representation.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I7a28617f3f0374968609328a44587b655a9141c1

show more ...

578b973311-Oct-2024 Patrick Williams <patrick@stwcx.xyz>

bus: add error handling for bus-open calls

sd-bus can return ENOMEDIUM in some cases for bus-open calls, so
we need to detect this condition rather than blindly ignoring the
return value. Add appro

bus: add error handling for bus-open calls

sd-bus can return ENOMEDIUM in some cases for bus-open calls, so
we need to detect this condition rather than blindly ignoring the
return value. Add appropriate error handling.

Tested:
```
$ sudo builddir/example/calculator-server
Password:
terminate called after throwing an instance of 'sdbusplus::exception::SdBusError'
what(): sdbusplus::bus::bus sdbusplus::bus::new_default(): System.Error.ENOMEDIUM: No medium found
zsh: IOT instruction sudo builddir/example/calculator-server
```

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I7b82a9e182f21a1cbbb80fc3dbfeaaa0174a369d

show more ...

fc0bb99611-Oct-2024 Patrick Williams <patrick@stwcx.xyz>

bus: un-inline functions

Due to additional upstream error results, the bus creation functions
need better error handling. This will result in larger functions
that are no longer a direct sd-bus cal

bus: un-inline functions

Due to additional upstream error results, the bus creation functions
need better error handling. This will result in larger functions
that are no longer a direct sd-bus call and probably shouldn't be
inlined. Move the functions to the `bus.cpp` file.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: If141ef74a62fd04b3bbf58b0720da2a9410481a7

show more ...

a4bfefde24-Sep-2024 Patrick Williams <patrick@stwcx.xyz>

exception: move sd_bus_error_set calls to exception

In the future, generated exceptions will need to fill the sd_error
with something other than the "description" in order to pass more
metadata. Mo

exception: move sd_bus_error_set calls to exception

In the future, generated exceptions will need to fill the sd_error
with something other than the "description" in order to pass more
metadata. Move the sd_bus_error_set calls to exception as a virtual
function so this can be accomplished.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I6e6947e4977701a8e7e27fef119bd35e837d866b

show more ...


/openbmc/sdbusplus/example/calculator-aserver.cpp
/openbmc/sdbusplus/example/calculator-server.cpp
/openbmc/sdbusplus/example/gen/meson.build
/openbmc/sdbusplus/example/gen/net/poettering/Calculator/meson.build
/openbmc/sdbusplus/example/gen/net/poettering/meson.build
/openbmc/sdbusplus/example/meson.build
/openbmc/sdbusplus/example/yaml/net/poettering/Calculator.events.yaml
/openbmc/sdbusplus/example/yaml/net/poettering/Calculator.interface.yaml
/openbmc/sdbusplus/include/sdbusplus/asio/connection.hpp
/openbmc/sdbusplus/include/sdbusplus/asio/object_server.hpp
/openbmc/sdbusplus/include/sdbusplus/exception.hpp
/openbmc/sdbusplus/include/sdbusplus/message.hpp
/openbmc/sdbusplus/include/sdbusplus/sdbus.hpp
/openbmc/sdbusplus/include/sdbusplus/sdbuspp_support/server.hpp
/openbmc/sdbusplus/include/sdbusplus/test/sdbus_mock.hpp
/openbmc/sdbusplus/include/sdbusplus/utility/consteval_string.hpp
exception.cpp
/openbmc/sdbusplus/test/gen/meson.build
/openbmc/sdbusplus/test/message/read.cpp
/openbmc/sdbusplus/tools/meson.build
/openbmc/sdbusplus/tools/sdbus++-gen-meson
/openbmc/sdbusplus/tools/sdbusplus/__init__.py
/openbmc/sdbusplus/tools/sdbusplus/error.py
/openbmc/sdbusplus/tools/sdbusplus/event.py
/openbmc/sdbusplus/tools/sdbusplus/interface.py
/openbmc/sdbusplus/tools/sdbusplus/main.py
/openbmc/sdbusplus/tools/sdbusplus/namedelement.py
/openbmc/sdbusplus/tools/sdbusplus/property.py
/openbmc/sdbusplus/tools/sdbusplus/schemas/events.schema.yaml
/openbmc/sdbusplus/tools/sdbusplus/templates/event.cpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/event.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/event.md.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/events.cpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/events.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/events.md.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/method.aserver.callback.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/method.prototype.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/property.aserver.callback.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/property.server.cpp.mako
/openbmc/sdbusplus/tools/setup.py
8d40adad22-Aug-2024 Igor Kononenko <i.kononenko.e@gmail.com>

transaction: fix -Wconversion c++ warning

Building sdbusplus by meson subproject as a part of external project
contains compile warning which can be interpreted as compile error (if
external project

transaction: fix -Wconversion c++ warning

Building sdbusplus by meson subproject as a part of external project
contains compile warning which can be interpreted as compile error (if
external project defines both `-Werror` and `-Wconversion`)

Changing the `Transaction::time` property type to the appropriate
`std::time_t` will solve the issue.

Change-Id: I9ab42472ff361aab9487c73d7804531151986e4c
Signed-off-by: Igor Kononenko <i.kononenko.e@gmail.com>

show more ...

06f265f616-Aug-2024 Patrick Williams <patrick@stwcx.xyz>

clang-format: re-format for clang-18

clang-format-18 isn't compatible with the clang-format-17 output, so we
need to reformat the code with the latest version. The way clang-18
handles lambda forma

clang-format: re-format for clang-18

clang-format-18 isn't compatible with the clang-format-17 output, so we
need to reformat the code with the latest version. The way clang-18
handles lambda formatting also changed, so we have made changes to the
organization default style format to better handle lambda formatting.

See I5e08687e696dd240402a2780158664b7113def0e for updated style.
See Iea0776aaa7edd483fa395e23de25ebf5a6288f71 for clang-18 enablement.

Change-Id: I4f63258febea27dae710c252033b9151e02be7e8
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...


/openbmc/sdbusplus/.clang-format
/openbmc/sdbusplus/docs/yaml/interface.md
/openbmc/sdbusplus/example/asio-example.cpp
/openbmc/sdbusplus/example/calculator-aserver.cpp
/openbmc/sdbusplus/example/calculator-client.cpp
/openbmc/sdbusplus/example/coroutine-example.cpp
/openbmc/sdbusplus/example/get-all-properties.cpp
/openbmc/sdbusplus/example/list-users.cpp
/openbmc/sdbusplus/example/register-property.cpp
/openbmc/sdbusplus/include/sdbusplus/asio/connection.hpp
/openbmc/sdbusplus/include/sdbusplus/asio/detail/async_send_handler.hpp
/openbmc/sdbusplus/include/sdbusplus/asio/object_server.hpp
/openbmc/sdbusplus/include/sdbusplus/asio/property.hpp
/openbmc/sdbusplus/include/sdbusplus/asio/sd_event.hpp
/openbmc/sdbusplus/include/sdbusplus/async/callback.hpp
/openbmc/sdbusplus/include/sdbusplus/async/execution.hpp
/openbmc/sdbusplus/include/sdbusplus/async/match.hpp
/openbmc/sdbusplus/include/sdbusplus/async/proxy.hpp
/openbmc/sdbusplus/include/sdbusplus/async/server.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__as_awaitable.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__awaitable.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__basic_sender.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__bulk.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__completion_signatures.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__concepts.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__config.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__connect_awaitable.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__continue_on.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__cpo.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__debug.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__diagnostics.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__domain.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__ensure_started.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__env.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__execute.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__execution_fwd.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__inline_scheduler.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__into_variant.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__intrusive_mpsc_queue.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__intrusive_ptr.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__intrusive_queue.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__intrusive_slist.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__just.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__let.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__meta.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__on.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__operation_states.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__optional.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__read_env.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__receiver_adaptor.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__receiver_ref.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__receivers.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__run_loop.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__schedule_from.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__schedulers.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__scope.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__sender_adaptor_closure.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__sender_introspection.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__senders.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__senders_core.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__shared.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__spin_loop_pause.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__split.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__start_detached.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__start_on.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__stop_token.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__stopped_as_error.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__stopped_as_optional.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__submit.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__sync_wait.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__tag_invoke.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__then.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__transfer_just.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__transform_completion_signatures.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__transform_sender.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__tuple.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__type_traits.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__upon_error.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__upon_stopped.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__utility.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__variant.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__when_all.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__with_awaitable_senders.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__write_env.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/any_sender_of.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/async_scope.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/at_coroutine_exit.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/commit.info
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/concepts.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/coroutine.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/env.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/execution.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/functional.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/inline_scheduler.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/sequence_senders.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/stop_token.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/task.hpp
/openbmc/sdbusplus/include/sdbusplus/async/task.hpp
/openbmc/sdbusplus/include/sdbusplus/async/timer.hpp
/openbmc/sdbusplus/include/sdbusplus/bus.hpp
/openbmc/sdbusplus/include/sdbusplus/message/append.hpp
/openbmc/sdbusplus/include/sdbusplus/message/native_types.hpp
/openbmc/sdbusplus/include/sdbusplus/message/read.hpp
/openbmc/sdbusplus/include/sdbusplus/sdbus.hpp
/openbmc/sdbusplus/include/sdbusplus/server/README.md
/openbmc/sdbusplus/include/sdbusplus/timer.hpp
/openbmc/sdbusplus/include/sdbusplus/unpack_properties.hpp
/openbmc/sdbusplus/include/sdbusplus/utility/container_traits.hpp
/openbmc/sdbusplus/include/sdbusplus/utility/dedup_variant.hpp
/openbmc/sdbusplus/include/sdbusplus/utility/type_traits.hpp
/openbmc/sdbusplus/include/sdbusplus/vtable.hpp
async/context.cpp
async/match.cpp
event.cpp
exception.cpp
server/interface.cpp
/openbmc/sdbusplus/test/async/context.cpp
/openbmc/sdbusplus/test/exception/sdbus_error.cpp
/openbmc/sdbusplus/test/message/call.cpp
/openbmc/sdbusplus/test/unpack_properties.cpp
/openbmc/sdbusplus/tools/sdbusplus/path.py
e0698be814-Jun-2024 Patrick Williams <patrick@stwcx.xyz>

object_path: fix potential buffer overrun

The `filename` function attempted to look at the first character
of a substring, which could have been empty. This was noticed by
UBSAN in GCC 13.2.

Signe

object_path: fix potential buffer overrun

The `filename` function attempted to look at the first character
of a substring, which could have been empty. This was noticed by
UBSAN in GCC 13.2.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I7397861b6b19ef86d1c5c01dc1007a8804d08ab6

show more ...


/openbmc/sdbusplus/OWNERS
/openbmc/sdbusplus/example/calculator-aserver.cpp
/openbmc/sdbusplus/example/meson.build
/openbmc/sdbusplus/include/sdbusplus/async/context.hpp
/openbmc/sdbusplus/include/sdbusplus/async/execution.hpp
/openbmc/sdbusplus/include/sdbusplus/async/proxy.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__basic_sender.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__concepts.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__config.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__cpo.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__domain.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__env.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__execution_fwd.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__intrusive_ptr.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__intrusive_queue.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__meta.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__ranges.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__scope.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__tuple.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__type_traits.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__utility.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/any_sender_of.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/async_scope.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/at_coroutine_exit.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/commit.info
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/concepts.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/coroutine.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/env.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/execution.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/functional.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/sequence_senders.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/stop_token.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/task.hpp
/openbmc/sdbusplus/include/sdbusplus/message/append.hpp
message/native_types.cpp
/openbmc/sdbusplus/test/meson.build
/openbmc/sdbusplus/tools/sdbusplus/templates/interface.client.hpp.mako
e8e6631b01-Dec-2023 Patrick Williams <patrick@stwcx.xyz>

async: context: use transfer instead of schedule

Later revisions of the stdexec proposal added a `transfer` method
that allows us to reduce 1 co_await.

Signed-off-by: Patrick Williams <patrick@stwc

async: context: use transfer instead of schedule

Later revisions of the stdexec proposal added a `transfer` method
that allows us to reduce 1 co_await.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: If43877a85254b5572cc2a3a1cacdf6b580870b5a

show more ...


/openbmc/sdbusplus/OWNERS
/openbmc/sdbusplus/example/asio-example.cpp
/openbmc/sdbusplus/include/sdbusplus/asio/connection.hpp
/openbmc/sdbusplus/include/sdbusplus/async/client.hpp
/openbmc/sdbusplus/include/sdbusplus/async/match.hpp
/openbmc/sdbusplus/include/sdbusplus/async/proxy.hpp
/openbmc/sdbusplus/include/sdbusplus/async/server.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__basic_sender.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__config.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__domain.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__env.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__execution_fwd.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__intrusive_ptr.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__meta.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__tuple.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__utility.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/any_sender_of.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/async_scope.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/at_coroutine_exit.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/commit.info
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/concepts.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/env.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/execution.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/sequence_senders.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/task.hpp
/openbmc/sdbusplus/include/sdbusplus/bus.hpp
/openbmc/sdbusplus/include/sdbusplus/bus/match.hpp
/openbmc/sdbusplus/include/sdbusplus/message.hpp
/openbmc/sdbusplus/include/sdbusplus/timer.hpp
async/context.cpp
/openbmc/sdbusplus/test/message/read.cpp
/openbmc/sdbusplus/test/timer.cpp
/openbmc/sdbusplus/tools/sdbusplus/templates/interface.aserver.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/interface.common.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/interface.server.hpp.mako
bbc181e316-Nov-2023 Patrick Williams <patrick@stwcx.xyz>

async: context: clean up TODO

The latest version of stdexec cleans up an issue we were seeing
that was marked with a TODO. Switch from a complicated task
structure back to the simple `task<>`.

Sig

async: context: clean up TODO

The latest version of stdexec cleans up an issue we were seeing
that was marked with a TODO. Switch from a complicated task
structure back to the simple `task<>`.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Ibe2a73b1e7d172f829308a12c88749db43354e83

show more ...


/openbmc/sdbusplus/include/sdbusplus/asio/sd_event.hpp
/openbmc/sdbusplus/include/sdbusplus/async/client.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__basic_sender.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__config.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__execution_fwd.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__intrusive_queue.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__meta.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__p2300.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__ranges.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__scope.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/__detail/__type_traits.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/any_sender_of.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/async_scope.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/at_coroutine_exit.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/commit.info
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/concepts.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/coroutine.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/env.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/execution.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/functional.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/import
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/inline_scheduler.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/sequence_senders.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/stop_token.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/task.hpp
/openbmc/sdbusplus/include/sdbusplus/async/timer.hpp
/openbmc/sdbusplus/include/sdbusplus/slot.hpp
/openbmc/sdbusplus/include/sdbusplus/utility/container_traits.hpp
async/context.cpp
/openbmc/sdbusplus/tools/sdbusplus/templates/interface.client.hpp.mako
6db8838720-Oct-2023 Patrick Williams <patrick@stwcx.xyz>

clang-format: copy latest and re-format

clang-format-17 has some backwards incompatible changes that require
additional settings for best compatibility and re-running the formatter.
Copy the latest

clang-format: copy latest and re-format

clang-format-17 has some backwards incompatible changes that require
additional settings for best compatibility and re-running the formatter.
Copy the latest .clang-format from the docs repository and reformat the
repository.

Change-Id: I1d7d35c8035993df4c164bfb055d3be476d3ea84
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...


/openbmc/sdbusplus/.clang-format
/openbmc/sdbusplus/docs/yaml/error.md
/openbmc/sdbusplus/docs/yaml/interface.md
/openbmc/sdbusplus/example/asio-example.cpp
/openbmc/sdbusplus/example/calculator-aserver.cpp
/openbmc/sdbusplus/example/calculator-client.cpp
/openbmc/sdbusplus/example/calculator-server.cpp
/openbmc/sdbusplus/example/coroutine-example.cpp
/openbmc/sdbusplus/example/gen/meson.build
/openbmc/sdbusplus/example/gen/net/poettering/Calculator/meson.build
/openbmc/sdbusplus/example/get-all-properties.cpp
/openbmc/sdbusplus/example/meson.build
/openbmc/sdbusplus/example/register-property.cpp
/openbmc/sdbusplus/example/yaml/net/poettering/Calculator.interface.yaml
/openbmc/sdbusplus/include/sdbusplus/asio/connection.hpp
/openbmc/sdbusplus/include/sdbusplus/asio/property.hpp
/openbmc/sdbusplus/include/sdbusplus/async/client.hpp
/openbmc/sdbusplus/include/sdbusplus/async/proxy.hpp
/openbmc/sdbusplus/include/sdbusplus/async/server.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/any_sender_of.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/async_scope.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/execution.hpp
/openbmc/sdbusplus/include/sdbusplus/async/stdexec/task.hpp
/openbmc/sdbusplus/include/sdbusplus/timer.hpp
/openbmc/sdbusplus/include/sdbusplus/unpack_properties.hpp
async/match.cpp
/openbmc/sdbusplus/test/bus/match.cpp
/openbmc/sdbusplus/test/gen/meson.build
/openbmc/sdbusplus/test/gen/server/Test/meson.build
/openbmc/sdbusplus/test/message/call.cpp
/openbmc/sdbusplus/test/unpack_properties.cpp
/openbmc/sdbusplus/test/vtable/vtable.cpp
/openbmc/sdbusplus/tools/meson.build
/openbmc/sdbusplus/tools/sdbus++-gen-meson
/openbmc/sdbusplus/tools/sdbusplus/error.py
/openbmc/sdbusplus/tools/sdbusplus/interface.py
/openbmc/sdbusplus/tools/sdbusplus/main.py
/openbmc/sdbusplus/tools/sdbusplus/path.py
/openbmc/sdbusplus/tools/sdbusplus/servicename.py
/openbmc/sdbusplus/tools/sdbusplus/templates/error.cpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/error.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/interface.aserver.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/interface.client.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/interface.common.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/method.aserver.callback.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/method.aserver.tag.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/method.aserver.typeid.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/method.aserver.vtable.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/method.client.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/property.aserver.callback.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/property.aserver.get.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/property.aserver.set.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/property.aserver.tag.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/property.aserver.typeid.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/property.aserver.value.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/property.aserver.vtable.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/property.client.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/signal.aserver.emit.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/signal.aserver.typeid.hpp.mako
/openbmc/sdbusplus/tools/sdbusplus/templates/signal.aserver.vtable.hpp.mako
1ee60d6d18-Aug-2023 Patrick Williams <patrick@stwcx.xyz>

async: context: add implicit conversion to bus_t

Many existing sdbusplus library calls expect a `bus_t`. Add an
implicit conversion to `bus_t&` so that a `context_t&` can be passed
into any functio

async: context: add implicit conversion to bus_t

Many existing sdbusplus library calls expect a `bus_t`. Add an
implicit conversion to `bus_t&` so that a `context_t&` can be passed
into any function that formerly accepted a `bus_t&`.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I791bf88d86ba5761a4d2fa9bf811b6e794b097af

show more ...

4a9e422118-Aug-2023 Patrick Williams <patrick@stwcx.xyz>

async: add context_ref class for CRTP patterns

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I6364f6f5a654ec0c628112637014ae2daed5d740

70bcf14c26-Jul-2023 Patrick Williams <patrick@stwcx.xyz>

exception: add string r-value constructor

If we are building a string as part of throwing this exception type,
it is more efficient to move the string rather than getting the
`c_str()` and doing ano

exception: add string r-value constructor

If we are building a string as part of throwing this exception type,
it is more efficient to move the string rather than getting the
`c_str()` and doing another allocation inside the class.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Ibec1c550f82208d5dde6dfef1626f907b7d2ad50

show more ...

9d8ba94713-Jul-2023 William A. Kennington III <wak@google.com>

bus: Consistently leverage mock

We have some project generating matches that are using the mock.
Previously, we never checked the return value of this function and it
allowed our match creations to

bus: Consistently leverage mock

We have some project generating matches that are using the mock.
Previously, we never checked the return value of this function and it
allowed our match creations to silently fail. With error checking added,
this was breaking unit tests.

This change makes sure that all users of slot generating functions have
their calls properly mocked.

Change-Id: I5dab3e3ae73e8516db21c928fc39bc00d4218c82
Signed-off-by: William A. Kennington III <wak@google.com>

show more ...

fc73b39507-Sep-2022 Willam A. Kennington III <wak@google.com>

bus/match: Compile all code into library

The match code is not templated or declared inline, so it should be
explicitly compiled into objects.

Change-Id: I56e7f2898c50e0b21b7d72d3347d7b7010d85739
S

bus/match: Compile all code into library

The match code is not templated or declared inline, so it should be
explicitly compiled into objects.

Change-Id: I56e7f2898c50e0b21b7d72d3347d7b7010d85739
Signed-off-by: Willam A. Kennington III <wak@google.com>

show more ...

9c6ec9b323-Jun-2023 Patrick Williams <patrick@stwcx.xyz>

async: add is_sender type-aliases

The latest version of stdexec requires all sender types to include a
type alias `is_sender` (which their examples all set to `void`) or
else a unique overload of a

async: add is_sender type-aliases

The latest version of stdexec requires all sender types to include a
type alias `is_sender` (which their examples all set to `void`) or
else a unique overload of a stdexec template. Add the type alias to
all of our defined sender types.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I2229905703b0f9c360d0fa5f1ba6acffd1f22a02

show more ...

5d16a8ed25-May-2023 Patrick Williams <patrick@stwcx.xyz>

async: context: remove pending_exception handling

With the move from scope to exec::async_scope there is no possibility
for pending-exceptions so clean up all the associated code.

Signed-off-by: Pa

async: context: remove pending_exception handling

With the move from scope to exec::async_scope there is no possibility
for pending-exceptions so clean up all the associated code.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I6f110d0641b9ba566e480f8e43eb90976e2b3c93

show more ...

123