]> git.ipfire.org Git - thirdparty/squid.git/blobdiff - src/HelperReply.h
Merged from trunk
[thirdparty/squid.git] / src / HelperReply.h
index ea1657d701e74f57377c718abcb9495b553a2239..8ebed059d7cf3fee272153ddccd6652b3cafa0cd 100644 (file)
@@ -24,7 +24,7 @@ private:
 
 public:
     // create/parse details from the msg buffer provided
-    HelperReply(const char *buf, size_t len);
+    HelperReply(const char *buf, size_t len, bool urlQuoting = false);
 
     const MemBuf &other() const { return other_; }
 
@@ -34,6 +34,8 @@ public:
     /// and by token blob/arg parsing in Negotiate auth handler
     MemBuf &modifiableOther() const { return *const_cast<MemBuf*>(&other_); }
 
+    bool parseKeyValue(const char *key, size_t key_len, MemBuf &);
+
 public:
     /// The helper response 'result' field.
     enum Result_ {
@@ -45,11 +47,18 @@ public:
         // some result codes for backward compatibility with NTLM/Negotiate
         // TODO: migrate these into variants of the above results with key-pair parameters
         TT,
-        AF,
         NA
     } result;
 
-// TODO other key=pair values. when the callbacks actually use this object.
+    // some pre-determined keys
+    MemBuf tag;
+    MemBuf user;
+    MemBuf password;
+    MemBuf message;
+    MemBuf log;
+    MemBuf authToken;
+
+// TODO other (custom) key=pair values. when the callbacks actually use this object.
 // for now they retain their own parsing routines handling other()
 
     /// for stateful replies the responding helper 'server' needs to be preserved across callbacks