<div dir="ltr"><div dir="ltr">Hi,<div><br></div><div>I have a question regarding manipulating sd-bus paths during run time. </div><div><br></div><div>Let us assume the calculator example from:</div><div><a href="http://0pointer.net/blog/the-new-sd-bus-api-of-systemd.html">http://0pointer.net/blog/the-new-sd-bus-api-of-systemd.html</a><br></div><div><br></div><div>We host the object /net/poettering/Calculator through net.poettering.Calculator.  </div><div><br></div><div>I am looking for ways to add/remove objects to the service after the process has started. </div><div>Say adding objects: /net/poettering/ScientificCalculator , /net/poettering/ProgrammerCalculator</div><div><br></div><div>One approach I could think of is:</div><div>- Stop the infinite loop</div><div>- Unref the bus and slot</div><div>- Call required number of sd_bus_add_object_vtable  objects (3 in this case)</div><div>- Request a well known name and restart the infinite loop.</div><div><br></div><div>Is this the right way?  </div><div>Can someone please help with any design patterns, references or pointers on how we could achieve this? </div><div><br></div><div>Thanks,<br>Guhan</div><div><br></div><div><div>Another approach (Crude but not the desired way):</div><div>- Take the number of bus paths from a config file</div><div>- Change config file and restart the process (systemctl restart process_name) </div><br class="gmail-Apple-interchange-newline"></div></div></div>