summaryrefslogtreecommitdiff
path: root/netfs/daemon.h
diff options
context:
space:
mode:
Diffstat (limited to 'netfs/daemon.h')
-rw-r--r--netfs/daemon.h13
1 files changed, 9 insertions, 4 deletions
diff --git a/netfs/daemon.h b/netfs/daemon.h
index f3499c0..1f4fc64 100644
--- a/netfs/daemon.h
+++ b/netfs/daemon.h
@@ -55,11 +55,16 @@ class NetFSDaemon : public IceBox::Service {
class SessionPtr {
public:
- SessionPtr(boost::intrusive_ptr<DaemonGlobalState::Session> ptr);
- DaemonGlobalState::Session * operator->();
+ SessionPtr(boost::intrusive_ptr<DaemonGlobalState::Session> ptr, bool lock);
+ ~SessionPtr();
+
+ DaemonGlobalState::Session * operator->() const;
+
+ void lock() const;
+ void unlock() const;
private:
- boost::intrusive_ptr<DaemonGlobalState::Session> ptr;
- boost::lock_guard<boost::mutex> lg;
+ const boost::intrusive_ptr<DaemonGlobalState::Session> ptr;
+ mutable bool doUnlock;
};
class TempPrivs {