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;
void AddNotifierUserAdd(NOTIFIER_BASE<USER_PTR> *);
bool Authorize(const std::string & login, uint32_t ip,
uint32_t enabledDirs, const AUTH * auth);
- bool Unauthorize(const std::string & login, const AUTH * auth);
+ bool Unauthorize(const std::string & login,
+ const AUTH * auth,
+ const std::string & reason = std::string());
int ReadUsers();
size_t Count() const { return users.size(); }
SETTINGS_IMPL * settings;
TARIFFS * tariffs;
+ SERVICES & m_services;
STORE * store;
const ADMIN * sysAdmin;
STG_LOGGER & WriteServLog;