phosphor-net-ipmid: connect with the correct sockaddr size

Abstract unix sockets start with the nul-charater, but are not nul
terminated. In fact, the nul-character has no meaning in the path.
According to the man page unix(7),

abstract:  an abstract socket address is distinguished (from a pathname
           socket) by the fact that sun_path[0] is a null byte ('\0').
           The socket's address in  this  namespace is  given by the
           additional bytes in sun_path that are covered by the
           specified length of the address structure.  (Null bytes in
           the name have no special significance.)

This means that when calling bind/connect, the size of the sockaddr
structure is not sizeof(sockaddr_un), it is sizeof(sockaddr_un) -
sizeof(sun_path) + (path_len)

Change-Id: I61f967d9215afb00e9e5c22f535f5c252b41d3af
Signed-off-by: Vernon Mauery <vernon.mauery@linux.intel.com>
diff --git a/sol/sol_manager.cpp b/sol/sol_manager.cpp
index 66d2b49..859f371 100644
--- a/sol/sol_manager.cpp
+++ b/sol/sol_manager.cpp
@@ -45,7 +45,9 @@
     consoleFD = std::make_unique<CustomFD>(fd);
     auto& conFD = *(consoleFD.get());
 
-    rc = connect(conFD(), (struct sockaddr*)&addr, sizeof(addr));
+    rc =
+        connect(conFD(), (struct sockaddr*)&addr,
+                sizeof(addr) - sizeof(addr.sun_path) + CONSOLE_SOCKET_PATH_LEN);
     if (rc < 0)
     {
         log<level::ERR>("Failed to connect to host console socket address",