]> git.ipfire.org Git - thirdparty/squid.git/blobdiff - src/auth/ntlm/User.h
Source Format Enforcement (#532)
[thirdparty/squid.git] / src / auth / ntlm / User.h
index 3814759b11a9b1d4fd7ad8e090e72454cdc2c37e..9c886cbd901a97218325de69eaf9e885ed3f5d05 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 1996-2014 The Squid Software Foundation and contributors
+ * Copyright (C) 1996-2020 The Squid Software Foundation and contributors
  *
  * Squid software is distributed under GPLv2+ license and includes
  * contributions from numerous individuals and organizations.
@@ -9,32 +9,36 @@
 #ifndef _SQUID_AUTH_NTLM_USER_H
 #define _SQUID_AUTH_NTLM_USER_H
 
+#if HAVE_AUTH_MODULE_NTLM
+
 #include "auth/User.h"
 
 namespace Auth
 {
 
-class Config;
-
 namespace Ntlm
 {
 
 /** User credentials for the NTLM authentication protocol */
 class User : public Auth::User
 {
-public:
     MEMPROXY_CLASS(Auth::Ntlm::User);
-    User(Auth::Config *, const char *requestRealm);
-    ~User();
 
-    virtual int32_t ttl() const;
+public:
+    User(Auth::SchemeConfig *, const char *requestRealm);
+    virtual ~User();
+    virtual int32_t ttl() const override;
+
+    /* Auth::User API */
+    static CbcPointer<Auth::CredentialsCache> Cache();
+    virtual void addToNameCache() override;
 
     dlink_list proxy_auth_list;
 };
 
-MEMPROXY_CLASS_INLINE(Auth::Ntlm::User);
-
 } // namespace Ntlm
 } // namespace Auth
 
+#endif /* HAVE_AUTH_MODULE_NTLM */
 #endif /* _SQUID_AUTH_NTLM_USER_H */
+