Fix moves/forward

Clang has new checks for std::move/std::forward correctness, which
catches quite a few "wrong" things where we were making copies of
callback handlers.

Unfortunately, the lambda syntax of

callback{std::forward<Callback>(callback)}

in a capture confuses it, so change usages to
callback = std::forward<Callback>(callback)

to be consistent.

Tested: Redfish service validator passes.

Change-Id: I7a111ec00cf78ecb7d5f5b102c786c1c14d74384
Signed-off-by: Ed Tanous <ed@tanous.net>
diff --git a/include/dbus_privileges.hpp b/include/dbus_privileges.hpp
index b2bb1e3..a58f9be 100644
--- a/include/dbus_privileges.hpp
+++ b/include/dbus_privileges.hpp
@@ -109,7 +109,7 @@
 template <typename CallbackFn>
 void afterGetUserInfo(Request& req,
                       const std::shared_ptr<bmcweb::AsyncResp>& asyncResp,
-                      BaseRule& rule, CallbackFn&& callback,
+                      BaseRule& rule, CallbackFn callback,
                       const boost::system::error_code& ec,
                       const dbus::utility::DBusPropertiesMap& userInfoMap)
 {
@@ -151,7 +151,7 @@
     std::string username = req.session->username;
     crow::connections::systemBus->async_method_call(
         [req{std::move(req)}, asyncResp, &rule,
-         callback(std::forward<CallbackFn>(callback))](
+         callback = std::forward<CallbackFn>(callback)](
             const boost::system::error_code& ec,
             const dbus::utility::DBusPropertiesMap& userInfoMap) mutable {
         afterGetUserInfo(req, asyncResp, rule,