aboutsummaryrefslogtreecommitdiffstats
path: root/src/client
diff options
context:
space:
mode:
Diffstat (limited to 'src/client')
-rw-r--r--src/client/Client.hxx4
-rw-r--r--src/client/ClientNew.cxx7
2 files changed, 6 insertions, 5 deletions
diff --git a/src/client/Client.hxx b/src/client/Client.hxx
index ef7f4c406..bdfb1ef93 100644
--- a/src/client/Client.hxx
+++ b/src/client/Client.hxx
@@ -36,7 +36,7 @@
#include <stddef.h>
#include <stdarg.h>
-struct sockaddr;
+class SocketAddress;
class EventLoop;
class Path;
struct Partition;
@@ -204,7 +204,7 @@ void client_manager_init(void);
void
client_new(EventLoop &loop, Partition &partition,
- int fd, const sockaddr *sa, size_t sa_length, int uid);
+ int fd, SocketAddress address, int uid);
/**
* Write a C string to the client.
diff --git a/src/client/ClientNew.cxx b/src/client/ClientNew.cxx
index 2b6941fd0..8dca9f81f 100644
--- a/src/client/ClientNew.cxx
+++ b/src/client/ClientNew.cxx
@@ -23,6 +23,7 @@
#include "Partition.hxx"
#include "Instance.hxx"
#include "system/fd_util.h"
+#include "net/SocketAddress.hxx"
#include "net/Resolver.hxx"
#include "Permission.hxx"
#include "util/Error.hxx"
@@ -58,15 +59,15 @@ Client::Client(EventLoop &_loop, Partition &_partition,
void
client_new(EventLoop &loop, Partition &partition,
- int fd, const struct sockaddr *sa, size_t sa_length, int uid)
+ int fd, SocketAddress address, int uid)
{
static unsigned int next_client_num;
- const auto remote = sockaddr_to_string(sa, sa_length);
+ const auto remote = sockaddr_to_string(address);
assert(fd >= 0);
#ifdef HAVE_LIBWRAP
- if (sa->sa_family != AF_UNIX) {
+ if (address.GetFamily() != AF_UNIX) {
// TODO: shall we obtain the program name from argv[0]?
const char *progname = "mpd";