diff --git a/ethernet_interface.cpp b/ethernet_interface.cpp
index 75cb761..06dd416 100644
--- a/ethernet_interface.cpp
+++ b/ethernet_interface.cpp
@@ -56,15 +56,15 @@
                                                              gateway);
         this->addrs.emplace(
                 std::make_pair(
+                    addr.ipaddress,
+                    std::make_unique<phosphor::network::IPAddress>(
+                        bus,
+                        ipAddressObjectPath.c_str(),
+                        *this,
+                        addressType,
                         addr.ipaddress,
-                        std::make_unique<phosphor::network::IPAddress>(
-                            bus,
-                            ipAddressObjectPath.c_str(),
-                            *this,
-                            addressType,
-                            addr.ipaddress,
-                            addr.prefix,
-                            gateway)));
+                        addr.prefix,
+                        gateway)));
     }
     // Emit deferred signal.
     this->emit_object_added();
diff --git a/network_manager.hpp b/network_manager.hpp
index 0bd082b..fe7debb 100644
--- a/network_manager.hpp
+++ b/network_manager.hpp
@@ -80,7 +80,10 @@
          */
         IntfAddrMap getInterfaceAddrs() const;
 
-        /** @brief converts the given subnet into prefix notation **/
+        /** @brief converts the given subnet into prefix notation
+         *  @param[in] subnetMask - Subnet Mask.
+         *  @returns prefix length.
+         */
         uint8_t toCidr(const char* subnetMask) const;
 
         /** @brief Persistent map of EthernetInterface dbus objects and their names */
