31 enum class WebServerMode {
40 virtual void start() = 0;
41 virtual void stop() = 0;
42 virtual void setWebServerMode(WebServerMode mode);
43 virtual WebServerMode getWebServerMode()
const;
44 virtual WebServerMode resolveWebServerMode()
const;
46 void notifyClientConnected(
bool isPost =
false);
47 virtual void parsePost(
const char *postContent,
49 bool lastChunk =
true);
50 virtual void resetParser();
51 const char *getCsrfToken();
52 bool isCsrfTokenValid(
const char *token);
53 void setBetaProcessing();
54 void setCsrfFirstFieldRequired(
bool required);
55 void addLastStateLog(
const char *log)
const;
57 virtual bool verifyEmbeddedHttpsCertificates();
62 void addSecurityLog(Supla::SecurityLogSource source,
const char *log)
const;
63 void addSecurityLog(uint32_t source,
const char *log)
const;
76 bool destroyGenerator =
false;
78 bool keyFound =
false;
80 char key[HTML_KEY_LENGTH] = {};
81 char *value =
nullptr;
82 bool betaProcessing =
false;
83 bool csrfFirstFieldRequired =
true;
84 bool csrfValidated =
false;
85 bool csrfRejected =
false;
86 uint8_t pendingReboot = 0;
87 uint8_t csrfSecret[16] = {};
88 char csrfToken[33] = {};