diff --git a/src/server/interface.cpp b/src/server/interface.cpp
index 653e6d6..e47f6ef 100644
--- a/src/server/interface.cpp
+++ b/src/server/interface.cpp
@@ -12,13 +12,13 @@
 interface::interface(sdbusplus::bus_t& bus, const char* path,
                      const char* interf, const sdbusplus::vtable_t* vtable,
                      void* context) :
-    _bus(bus.get(), bus.getInterface()),
+    _bus(get_busp(bus), bus.getInterface()),
     _path(path), _interf(interf), _intf(bus.getInterface()),
     _interface_added(false)
 {
     sd_bus_slot* slot = nullptr;
-    int r = _intf->sd_bus_add_object_vtable(_bus.get(), &slot, _path.c_str(),
-                                            _interf.c_str(), vtable, context);
+    int r = _intf->sd_bus_add_object_vtable(
+        get_busp(_bus), &slot, _path.c_str(), _interf.c_str(), vtable, context);
     if (r < 0)
     {
         throw exception::SdBusError(-r, "sd_bus_add_object_vtable");
@@ -38,7 +38,7 @@
 
     // Note: Converting to use _strv version, could also mock two pointer
     // use-case explicitly.
-    _intf->sd_bus_emit_properties_changed_strv(_bus.get(), _path.c_str(),
+    _intf->sd_bus_emit_properties_changed_strv(get_busp(_bus), _path.c_str(),
                                                _interf.c_str(), values.data());
 }
 
