From 98f5f9e905c050f2f934fdcdac8c2bc1899cf5b3 Mon Sep 17 00:00:00 2001 From: Dan Goodliffe Date: Wed, 16 Sep 2020 00:44:34 +0100 Subject: Progressive constructors for mappers --- netfs/fuse/fuseMappersImpl.cpp | 6 ++++-- netfs/fuse/fuseMappersImpl.h | 1 + netfs/lib/defaultMapper.cpp | 6 ++++-- netfs/lib/defaultMapper.h | 1 + 4 files changed, 10 insertions(+), 4 deletions(-) diff --git a/netfs/fuse/fuseMappersImpl.cpp b/netfs/fuse/fuseMappersImpl.cpp index 9e82b74..87266b1 100644 --- a/netfs/fuse/fuseMappersImpl.cpp +++ b/netfs/fuse/fuseMappersImpl.cpp @@ -2,8 +2,10 @@ #include namespace NetFS::Client { - HideUnknownMapperImpl::HideUnknownMapperImpl() : - users(std::make_shared()), groups(std::make_shared(users)) + HideUnknownMapperImpl::HideUnknownMapperImpl() : HideUnknownMapperImpl(std::make_shared()) { } + + HideUnknownMapperImpl::HideUnknownMapperImpl(EntryResolverPtr u) : + HideUnknownMapperImpl(std::move(u), std::make_shared(u)) { } diff --git a/netfs/fuse/fuseMappersImpl.h b/netfs/fuse/fuseMappersImpl.h index 4b0677f..b8e87f4 100644 --- a/netfs/fuse/fuseMappersImpl.h +++ b/netfs/fuse/fuseMappersImpl.h @@ -10,6 +10,7 @@ namespace NetFS { class HideUnknownMapperImpl : public HideUnknownMapper { public: HideUnknownMapperImpl(); + HideUnknownMapperImpl(EntryResolverPtr u); HideUnknownMapperImpl(EntryResolverPtr u, EntryResolverPtr g); Mapping::Transport mapFileSystem(int uid, int gid) override; diff --git a/netfs/lib/defaultMapper.cpp b/netfs/lib/defaultMapper.cpp index 865cca1..d20f7ba 100644 --- a/netfs/lib/defaultMapper.cpp +++ b/netfs/lib/defaultMapper.cpp @@ -3,8 +3,10 @@ #include namespace NetFS::Mapping { - DefaultMapper::DefaultMapper() : - users(std::make_shared()), groups(std::make_shared(users)) + DefaultMapper::DefaultMapper() : DefaultMapper(std::make_shared()) { } + + DefaultMapper::DefaultMapper(EntryResolverPtr u) : + DefaultMapper(std::move(u), std::make_shared(u)) { } diff --git a/netfs/lib/defaultMapper.h b/netfs/lib/defaultMapper.h index 214f9ed..5a5c335 100644 --- a/netfs/lib/defaultMapper.h +++ b/netfs/lib/defaultMapper.h @@ -10,6 +10,7 @@ namespace NetFS { class DefaultMapper : public Mapper { public: DefaultMapper(); + DefaultMapper(EntryResolverPtr users); DefaultMapper(EntryResolverPtr users, EntryResolverPtr groups); Transport mapFileSystem(int uid, int gid) override; -- cgit v1.2.3