]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
Implement default Auth::UserRequest::authenticated() (#1679)
authorFrancesco Chemolli <5175948+kinkie@users.noreply.github.com>
Fri, 23 Feb 2024 00:55:30 +0000 (00:55 +0000)
committerSquid Anubis <squid-anubis@squid-cache.org>
Fri, 23 Feb 2024 00:55:40 +0000 (00:55 +0000)
13 files changed:
src/acl/FilledChecklist.h
src/auth/UserRequest.cc
src/auth/UserRequest.h
src/auth/basic/UserRequest.cc
src/auth/basic/UserRequest.h
src/auth/digest/User.h
src/auth/digest/UserRequest.cc
src/auth/digest/UserRequest.h
src/auth/negotiate/UserRequest.cc
src/auth/negotiate/UserRequest.h
src/auth/ntlm/UserRequest.cc
src/auth/ntlm/UserRequest.h
src/tests/stub_libauth.cc

index f1512bde8deb3091238825fa057d15b300c2d092..51f505235025fdd0576bddd87d774b052813c763 100644 (file)
@@ -55,8 +55,6 @@ public:
     /// set the client side FD
     void fd(int aDescriptor);
 
-    //int authenticated();
-
     bool destinationDomainChecked() const;
     void markDestinationDomainChecked();
     bool sourceDomainChecked() const;
index 3b91676f841df89c7f98719d9500bb2df54f59ff..7dfae3ce89f0981bd93b208e086b66a8a7fc43e4 100644 (file)
@@ -132,6 +132,19 @@ Auth::UserRequest::denyMessage(char const * const default_message) const
     return getDenyMessage();
 }
 
+bool
+Auth::UserRequest::authenticated() const
+{
+    const auto u = user();
+    if (u && u->credentials() == Auth::Ok) {
+        debugs(29, 7, "yes");
+        return true;
+    }
+
+    debugs(29, 7, "no");
+    return false;
+}
+
 static void
 authenticateAuthUserRequestSetIp(Auth::UserRequest::Pointer auth_user_request, Ip::Address &ipaddr)
 {
@@ -172,11 +185,11 @@ authenticateAuthUserRequestIPCount(Auth::UserRequest::Pointer auth_user_request)
 /*
  * authenticateUserAuthenticated: is this auth_user structure logged in ?
  */
-int
-authenticateUserAuthenticated(Auth::UserRequest::Pointer auth_user_request)
+bool
+authenticateUserAuthenticated(const Auth::UserRequest::Pointer &auth_user_request)
 {
-    if (auth_user_request == nullptr || !auth_user_request->valid())
-        return 0;
+    if (!auth_user_request || !auth_user_request->valid())
+        return false;
 
     return auth_user_request->authenticated();
 }
index f2d7eefb3bb502b83d2ddb6533cebcd5f5925da7..98ca089df0e33d90084f1867cac772f14a2cb890 100644 (file)
@@ -112,7 +112,7 @@ public:
      \retval true   User has successfully been authenticated.
      \retval false  Timeouts on cached credentials have occurred or for any reason the credentials are not valid.
      */
-    virtual int authenticated() const = 0;
+    virtual bool authenticated() const;
 
     /**
      * Check a auth_user pointer for validity.
@@ -247,7 +247,7 @@ int authenticateAuthUserRequestIPCount(Auth::UserRequest::Pointer);
 
 /// \ingroup AuthAPI
 /// See Auth::UserRequest::authenticated()
-int authenticateUserAuthenticated(Auth::UserRequest::Pointer);
+bool authenticateUserAuthenticated(const Auth::UserRequest::Pointer &);
 
 #endif /* USE_AUTH */
 #endif /* SQUID_SRC_AUTH_USERREQUEST_H */
index a6d249573d0fd47c49af680e643bda2c414c79c7..8c3081a96534ba07e449aab796a6103715573614 100644 (file)
 #define HELPER_INPUT_BUFFER  8192
 #endif
 
-int
+bool
 Auth::Basic::UserRequest::authenticated() const
 {
     Auth::Basic::User const *basic_auth = dynamic_cast<Auth::Basic::User const *>(user().getRaw());
 
     if (basic_auth && basic_auth->authenticated())
-        return 1;
+        return true;
 
-    return 0;
+    return false;
 }
 
 const char *
index bb384b0d19a3759f0b07aa7b8e9e375aa72d3508..5c09614fadeb9b93ea7be8cae956c5236fbd167e 100644 (file)
@@ -32,7 +32,7 @@ public:
     UserRequest() {}
     ~UserRequest() override { assert(LockCount()==0); }
 
-    int authenticated() const override;
+    bool authenticated() const override;
     void authenticate(HttpRequest * request, ConnStateData *conn, Http::HdrType type) override;
     Auth::Direction module_direction() override;
     void startHelperLookup(HttpRequest * request, AccessLogEntry::Pointer &al, AUTHCB *, void *) override;
index 263470f97276c20b216ee882f7b45982bf5fef18..206c2afa6f55d8350da8378656901fc9afe519bb 100644 (file)
@@ -28,7 +28,6 @@ class User : public Auth::User
 public:
     User(Auth::SchemeConfig *, const char *requestRealm);
     ~User() override;
-    int authenticated() const;
     int32_t ttl() const override;
 
     /* Auth::User API */
index 1b642840bda2982c01df1c30158112e4054044f9..a9e3a91b6d6b8b6dffd5c958da503bd438ec11db 100644 (file)
@@ -58,15 +58,6 @@ Auth::Digest::UserRequest::~UserRequest()
         authDigestNonceUnlink(nonce);
 }
 
-int
-Auth::Digest::UserRequest::authenticated() const
-{
-    if (user() != nullptr && user()->credentials() == Auth::Ok)
-        return 1;
-
-    return 0;
-}
-
 const char *
 Auth::Digest::UserRequest::credentialsStr()
 {
index 99e05fb996e1fd0a46caf6db3c79926eab2ffe26..18753e911f46ba4acf6470a60b222b4ea571c49a 100644 (file)
@@ -34,7 +34,6 @@ public:
     UserRequest();
     ~UserRequest() override;
 
-    int authenticated() const override;
     void authenticate(HttpRequest * request, ConnStateData * conn, Http::HdrType type) override;
     Direction module_direction() override;
     void addAuthenticationInfoHeader(HttpReply * rep, int accel) override;
index 83756967fdcffd20331e414ed24531ff0b3c1570..de3ec2509e675df754963c79bb703a9236bc3d41 100644 (file)
@@ -53,18 +53,6 @@ Auth::Negotiate::UserRequest::connLastHeader()
     return nullptr;
 }
 
-int
-Auth::Negotiate::UserRequest::authenticated() const
-{
-    if (user() != nullptr && user()->credentials() == Auth::Ok) {
-        debugs(29, 9, "user authenticated.");
-        return 1;
-    }
-
-    debugs(29, 9, "user not fully authenticated.");
-    return 0;
-}
-
 const char *
 Auth::Negotiate::UserRequest::credentialsStr()
 {
index b07a5d3ffd6ce9796c11c86d468d5907fb5525e7..01829aab9b2595d02d3d35e69d625a8ae1236b9a 100644 (file)
@@ -31,7 +31,6 @@ class UserRequest : public Auth::UserRequest
 public:
     UserRequest();
     ~UserRequest() override;
-    int authenticated() const override;
     void authenticate(HttpRequest * request, ConnStateData * conn, Http::HdrType type) override;
     Direction module_direction() override;
     void startHelperLookup(HttpRequest *request, AccessLogEntry::Pointer &al, AUTHCB *, void *) override;
index 2fb2995154051f1f47a2fec6b912d2466aa013fe..0a22b4787ce4ee06d24f681d4b13e7b37b08c4c5 100644 (file)
@@ -51,18 +51,6 @@ Auth::Ntlm::UserRequest::connLastHeader()
     return nullptr;
 }
 
-int
-Auth::Ntlm::UserRequest::authenticated() const
-{
-    if (user() != nullptr && user()->credentials() == Auth::Ok) {
-        debugs(29, 9, "user authenticated.");
-        return 1;
-    }
-
-    debugs(29, 9, "user not fully authenticated.");
-    return 0;
-}
-
 const char *
 Auth::Ntlm::UserRequest::credentialsStr()
 {
index 6b222c466e2aa00d5ca4caf48c953d9b5c1efd14..c125de358712fc4ff21dacee2d9fc19594e65af0 100644 (file)
@@ -31,7 +31,6 @@ class UserRequest : public Auth::UserRequest
 public:
     UserRequest();
     ~UserRequest() override;
-    int authenticated() const override;
     void authenticate(HttpRequest * request, ConnStateData * conn, Http::HdrType type) override;
     Auth::Direction module_direction() override;
     void startHelperLookup(HttpRequest *req, AccessLogEntry::Pointer &al, AUTHCB *, void *) override;
index 04893308b193f74d4a9116793370b61b9024e9a6..e0883389f972d9e809df3ef3ac42bf45755c5653 100644 (file)
@@ -59,12 +59,13 @@ void Auth::UserRequest::operator delete (void *) STUB
 Auth::UserRequest::UserRequest() STUB
 Auth::UserRequest::~UserRequest() STUB
 void Auth::UserRequest::setDenyMessage(char const *) STUB
+bool Auth::UserRequest::authenticated() const STUB_RETVAL(false)
 char const * Auth::UserRequest::getDenyMessage() const STUB_RETVAL("stub")
 char const * Auth::UserRequest::denyMessage(char const * const) const STUB_RETVAL("stub")
 void authenticateAuthUserRequestRemoveIp(Auth::UserRequest::Pointer, Ip::Address const &) STUB
 void authenticateAuthUserRequestClearIp(Auth::UserRequest::Pointer) STUB
 int authenticateAuthUserRequestIPCount(Auth::UserRequest::Pointer) STUB_RETVAL(0)
-int authenticateUserAuthenticated(Auth::UserRequest::Pointer) STUB_RETVAL(0)
+bool authenticateUserAuthenticated(const Auth::UserRequest::Pointer&) STUB_RETVAL(false)
 Auth::Direction Auth::UserRequest::direction() STUB_RETVAL(Auth::CRED_ERROR)
 void Auth::UserRequest::addAuthenticationInfoHeader(HttpReply *, int) STUB
 void Auth::UserRequest::addAuthenticationInfoTrailer(HttpReply *, int) STUB