net/SocketAddress: light wrapper for struct sockaddr

This commit is contained in:
Max Kellermann
2015-02-10 20:30:10 +01:00
parent 42890b9acf
commit 4e30e74739
15 changed files with 201 additions and 67 deletions

View File

@@ -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";