]> git.stg.codes - stg.git/blobdiff - stglibs/srvconf.lib/parsers/auth_by.h
Handle callback errors in bfstreams.
[stg.git] / stglibs / srvconf.lib / parsers / auth_by.h
index c4757cf9699ce97392f3887f50689a1bf2c7ceea..5b2dfe52fb6cbf9b3ef1f32c93da99902cf71f11 100644 (file)
@@ -21,7 +21,7 @@
 #ifndef __STG_STGLIBS_SRVCONF_PARSER_AUTH_BY_H__
 #define __STG_STGLIBS_SRVCONF_PARSER_AUTH_BY_H__
 
-#include "parser.h"
+#include "base.h"
 
 #include "stg/servconf_types.h"
 
@@ -35,14 +35,15 @@ namespace AUTH_BY
 class PARSER: public STG::PARSER
 {
 public:
-    PARSER();
+    PARSER(CALLBACK f, void * data, const std::string & encoding);
     int  ParseStart(const char * el, const char ** attr);
     void ParseEnd(const char * el);
-    void SetCallback(CALLBACK f, void * data);
+    void Failure(const std::string & reason) { callback(false, reason, info, data); }
 
 private:
     CALLBACK callback;
     void * data;
+    std::string encoding;
     int depth;
     bool parsingAnswer;
     INFO info;