]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
Polish: display ACL enumeration text in debugs
authorAmos Jeffries <squid3@treenet.co.nz>
Fri, 30 Dec 2011 12:06:21 +0000 (01:06 +1300)
committerAmos Jeffries <squid3@treenet.co.nz>
Fri, 30 Dec 2011 12:06:21 +0000 (01:06 +1300)
Slightly hackish way to do it. But avoids ACCESS_ in some weird places
and makes the cache.log reading a lot more friendly.

src/acl/Acl.h

index 6e8c83a96651cb0884c0ea519b3dab7d196d9261..415784202b009327f1e1dab08f8f5a93a4dadff8 100644 (file)
 #include "cbdata.h"
 #include "dlink.h"
 
+#if HAVE_OSTREAM
+#include <ostream>
+#endif
+
 class ConfigParser;
 class ACLChecklist;
 
@@ -116,6 +120,33 @@ typedef enum {
     ACCESS_AUTH_EXPIRED_BAD  // Expired now. Were Failed.
 } allow_t;
 
+inline std::ostream &
+operator <<(std::ostream &o, const allow_t a)
+{
+    switch(a)
+    {
+    case ACCESS_DENIED:
+        o << "DENIED";
+        break;
+    case ACCESS_ALLOWED:
+        o << "ALLOWED";
+        break;
+    case ACCESS_DUNNO:
+        o << "DUNNO";
+        break;
+    case ACCESS_AUTH_REQUIRED:
+        o << "AUTH_REQUIRED";
+        break;
+    case ACCESS_AUTH_EXPIRED_OK:
+        o << "AUTH_EXPIRED_OK";
+        break;
+    case ACCESS_AUTH_EXPIRED_BAD:
+        o << "AUTH_EXPIRED_BAD";
+        break;
+    }
+    return o;
+}
+
 /// \ingroup ACLAPI
 class acl_access
 {