socket: Actually use the console-socket definitions
Since the console_socket variables aren't declared with 'extern' in
console-server.h, we ended up with default definitions for these. This
happened to work, but with a zero-length socket path.
This change uses the console-socket.c object as intended, to provide
proper socket paths.
Now that the char[] is an extern, we'll need to get the address of it to
get the pointer value.
Also, fix the sizeof() to take account of the trailing nul.
Found by Joel Stanley <joel@jms.id.au>.
Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
diff --git a/console-client.c b/console-client.c
index b70fc95..63c4e70 100644
--- a/console-client.c
+++ b/console-client.c
@@ -170,7 +170,7 @@
memset(&addr, 0, sizeof(addr));
addr.sun_family = AF_UNIX;
- memcpy(addr.sun_path, console_socket_path, console_socket_path_len);
+ memcpy(&addr.sun_path, &console_socket_path, console_socket_path_len);
rc = connect(client->console_sd, (struct sockaddr *)&addr,
sizeof(addr));