]> git.stg.codes - stg.git/blobdiff - projects/stargazer/users_impl.h
Fixed crash on problems with loading plugins.
[stg.git] / projects / stargazer / users_impl.h
index 70a5b9bdf9fe9f5d4f2f473fedb2e2d29aa69ab8..0cba7893bc04ca0db3630f890697673117753ed0 100644 (file)
@@ -71,10 +71,15 @@ class USERS_IMPL : private NONCOPYABLE, public USERS {
     friend class PROPERTY_NOTIFER_IP_AFTER;
 
 public:
-    USERS_IMPL(SETTINGS_IMPL * s, STORE * store, TARIFFS * tariffs, const ADMIN * sysAdmin);
+    USERS_IMPL(SETTINGS_IMPL * s, STORE * store,
+               TARIFFS * tariffs, SERVICES & svcs,
+               const ADMIN * sysAdmin);
     virtual ~USERS_IMPL();
 
     int             FindByName(const std::string & login, USER_PTR * user);
+    int             FindByName(const std::string & login, CONST_USER_PTR * user) const;
+
+    bool            Exists(const std::string & login) const;
 
     bool            TariffInUse(const std::string & tariffName) const;
 
@@ -124,6 +129,7 @@ private:
     bool            FindByIPIdx(uint32_t ip, user_iter & iter) const;
 
     int             FindByNameNonLock(const std::string & login, user_iter * user);
+    int             FindByNameNonLock(const std::string & login, const_user_iter * user) const;
 
     void            RealDelUser();
     void            ProcessActions();
@@ -146,6 +152,7 @@ private:
 
     SETTINGS_IMPL *     settings;
     TARIFFS *           tariffs;
+    SERVICES &          m_services;
     STORE *             store;
     const ADMIN *       sysAdmin;
     STG_LOGGER &        WriteServLog;