FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
esp32_https_server/docs/HTTPSServerConstants_8hpp_source.html at master · petraq/esp32_https_server · GitHub
petraq
esp32_https_server
Repository navigation
Code
Pull requests
Actions
Projects
Security and quality
Insights
Expand file tree
Breadcrumbs
esp32_https_server
/
docs
/
HTTPSServerConstants_8hpp_source.html
Copy path
More file actions
More file actions
Latest commit
History
History
History
98 lines (96 loc) · 15.9 KB
Breadcrumbs
esp32_https_server
/
docs
/
HTTPSServerConstants_8hpp_source.html
Copy path
File metadata and controls
98 lines (96 loc) · 15.9 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
>
<
html
xmlns
="
http://www.w3.org/1999/xhtml
"
>
<
head
>
<
meta
http-equiv
="
Content-Type
"
content
="
text/xhtml;charset=UTF-8
"
/>
<
meta
http-equiv
="
X-UA-Compatible
"
content
="
IE=9
"
/>
<
meta
name
="
generator
"
content
="
Doxygen 1.8.13
"
/>
<
meta
name
="
viewport
"
content
="
width=device-width, initial-scale=1
"
/>
<
title
>
ESP32 HTTPS Server: /home/frank/Projekte/esp32/https_server/esp32_https_server/src/HTTPSServerConstants.hpp Source File
</
title
>
<
link
href
="
tabs.css
"
rel
="
stylesheet
"
type
="
text/css
"
/>
<
script
type
="
text/javascript
"
src
="
jquery.js
"
>
</
script
>
<
script
type
="
text/javascript
"
src
="
dynsections.js
"
>
</
script
>
<
link
href
="
navtree.css
"
rel
="
stylesheet
"
type
="
text/css
"
/>
<
script
type
="
text/javascript
"
src
="
resize.js
"
>
</
script
>
<
script
type
="
text/javascript
"
src
="
navtreedata.js
"
>
</
script
>
<
script
type
="
text/javascript
"
src
="
navtree.js
"
>
</
script
>
<
script
type
="
text/javascript
"
>
$
(
document
)
.
ready
(
initResizable
)
;
</
script
>
<
link
href
="
search/search.css
"
rel
="
stylesheet
"
type
="
text/css
"
/>
<
script
type
="
text/javascript
"
src
="
search/searchdata.js
"
>
</
script
>
<
script
type
="
text/javascript
"
src
="
search/search.js
"
>
</
script
>
<
link
href
="
doxygen.css
"
rel
="
stylesheet
"
type
="
text/css
"
/>
</
head
>
<
body
>
<
div
id
="
top
"
>
<!-- do not remove this div, it is closed by doxygen! -->
<
div
id
="
titlearea
"
>
<
table
cellspacing
="
0
"
cellpadding
="
0
"
>
<
tbody
>
<
tr
style
="
height: 56px;
"
>
<
td
id
="
projectalign
"
style
="
padding-left: 0.5em;
"
>
<
div
id
="
projectname
"
>
ESP32 HTTPS Server
</
div
>
</
td
>
</
tr
>
</
tbody
>
</
table
>
</
div
>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<
script
type
="
text/javascript
"
>
var
searchBox
=
new
SearchBox
(
"searchBox"
,
"search"
,
false
,
'Search'
)
;
</
script
>
<
script
type
="
text/javascript
"
src
="
menudata.js
"
>
</
script
>
<
script
type
="
text/javascript
"
src
="
menu.js
"
>
</
script
>
<
script
type
="
text/javascript
"
>
$
(
function
(
)
{
initMenu
(
''
,
true
,
false
,
'search.php'
,
'Search'
)
;
$
(
document
)
.
ready
(
function
(
)
{
init_search
(
)
;
}
)
;
}
)
;
</
script
>
<
div
id
="
main-nav
"
>
</
div
>
</
div
>
<!-- top -->
<
div
id
="
side-nav
"
class
="
ui-resizable side-nav-resizable
"
>
<
div
id
="
nav-tree
"
>
<
div
id
="
nav-tree-contents
"
>
<
div
id
="
nav-sync
"
class
="
sync
"
>
</
div
>
</
div
>
</
div
>
<
div
id
="
splitbar
"
style
="
-moz-user-select:none;
"
class
="
ui-resizable-handle
"
>
</
div
>
</
div
>
<
script
type
="
text/javascript
"
>
$
(
document
)
.
ready
(
function
(
)
{
initNavTree
(
'HTTPSServerConstants_8hpp_source.html'
,
''
)
;
}
)
;
</
script
>
<
div
id
="
doc-content
"
>
<!-- window showing the filter options -->
<
div
id
="
MSearchSelectWindow
"
onmouseover
="
return searchBox.OnSearchSelectShow()
"
onmouseout
="
return searchBox.OnSearchSelectHide()
"
onkeydown
="
return searchBox.OnSearchSelectKey(event)
"
>
</
div
>
<!-- iframe showing the search results (closed by default) -->
<
div
id
="
MSearchResultsWindow
"
>
<
iframe
src
="
javascript:void(0)
"
frameborder
="
0
"
name
="
MSearchResults
"
id
="
MSearchResults
"
>
</
iframe
>
</
div
>
<
div
class
="
header
"
>
<
div
class
="
headertitle
"
>
<
div
class
="
title
"
>
HTTPSServerConstants.hpp
</
div
>
</
div
>
</
div
>
<!--header-->
<
div
class
="
contents
"
>
<
div
class
="
fragment
"
>
<
div
class
="
line
"
>
<
a
name
="
l00001
"
>
</
a
>
<
span
class
="
lineno
"
>
1
</
span
>
 
<
span
class
="
preprocessor
"
>
#ifndef SRC_HTTPSSERVERCONSTANTS_HPP_
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00002
"
>
</
a
>
<
span
class
="
lineno
"
>
2
</
span
>
 
<
span
class
="
preprocessor
"
>
#define SRC_HTTPSSERVERCONSTANTS_HPP_
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00003
"
>
</
a
>
<
span
class
="
lineno
"
>
3
</
span
>
 
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00004
"
>
</
a
>
<
span
class
="
lineno
"
>
4
</
span
>
 
<
span
class
="
preprocessor
"
>
#include "Arduino.h"
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00005
"
>
</
a
>
<
span
class
="
lineno
"
>
5
</
span
>
 
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00006
"
>
</
a
>
<
span
class
="
lineno
"
>
6
</
span
>
 
<
span
class
="
comment
"
>
// 1: Error
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00007
"
>
</
a
>
<
span
class
="
lineno
"
>
7
</
span
>
 
<
span
class
="
comment
"
>
// 2: Error + Warn
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00008
"
>
</
a
>
<
span
class
="
lineno
"
>
8
</
span
>
 
<
span
class
="
comment
"
>
// 3: Error + Warn + Info
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00009
"
>
</
a
>
<
span
class
="
lineno
"
>
9
</
span
>
 
<
span
class
="
comment
"
>
// 4: Error + Warn + Info + Debug
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00010
"
>
</
a
>
<
span
class
="
lineno
"
>
10
</
span
>
 
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00011
"
>
</
a
>
<
span
class
="
lineno
"
>
11
</
span
>
 
<
span
class
="
preprocessor
"
>
#ifndef HTTPS_LOGLEVEL
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00012
"
>
</
a
>
<
span
class
="
lineno
"
>
12
</
span
>
 
<
span
class
="
preprocessor
"
>
#define HTTPS_LOGLEVEL 3
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00013
"
>
</
a
>
<
span
class
="
lineno
"
>
13
</
span
>
 
<
span
class
="
preprocessor
"
>
#endif
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00014
"
>
</
a
>
<
span
class
="
lineno
"
>
14
</
span
>
 
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00015
"
>
</
a
>
<
span
class
="
lineno
"
>
15
</
span
>
 
<
span
class
="
preprocessor
"
>
#ifdef HTTPS_LOGTIMESTAMP
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00016
"
>
</
a
>
<
span
class
="
lineno
"
>
16
</
span
>
 
<
span
class
="
preprocessor
"
>
#define HTTPS_LOGTAG(LVL) Serial.printf("[HTTPS:" LVL ":%10lu] ", millis())
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00017
"
>
</
a
>
<
span
class
="
lineno
"
>
17
</
span
>
 
<
span
class
="
preprocessor
"
>
#else
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00018
"
>
</
a
>
<
span
class
="
lineno
"
>
18
</
span
>
 
<
span
class
="
preprocessor
"
>
#define HTTPS_LOGTAG(LVL) Serial.print("[HTTPS:" LVL "] ")
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00019
"
>
</
a
>
<
span
class
="
lineno
"
>
19
</
span
>
 
<
span
class
="
preprocessor
"
>
#endif
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00020
"
>
</
a
>
<
span
class
="
lineno
"
>
20
</
span
>
 
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00021
"
>
</
a
>
<
span
class
="
lineno
"
>
21
</
span
>
 
<
span
class
="
preprocessor
"
>
#if HTTPS_LOGLEVEL > 0
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00022
"
>
</
a
>
<
span
class
="
lineno
"
>
22
</
span
>
 
<
span
class
="
preprocessor
"
>
#define HTTPS_LOGE(...) HTTPS_LOGTAG("E");Serial.printf(__VA_ARGS__);Serial.println()
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00023
"
>
</
a
>
<
span
class
="
lineno
"
>
23
</
span
>
 
<
span
class
="
preprocessor
"
>
#else
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00024
"
>
</
a
>
<
span
class
="
lineno
"
>
24
</
span
>
 
<
span
class
="
preprocessor
"
>
#define HTTPS_LOGE(...) do {} while (0)
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00025
"
>
</
a
>
<
span
class
="
lineno
"
>
25
</
span
>
 
<
span
class
="
preprocessor
"
>
#endif
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00026
"
>
</
a
>
<
span
class
="
lineno
"
>
26
</
span
>
 
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00027
"
>
</
a
>
<
span
class
="
lineno
"
>
27
</
span
>
 
<
span
class
="
preprocessor
"
>
#if HTTPS_LOGLEVEL > 1
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00028
"
>
</
a
>
<
span
class
="
lineno
"
>
28
</
span
>
 
<
span
class
="
preprocessor
"
>
#define HTTPS_LOGW(...) HTTPS_LOGTAG("W");Serial.printf(__VA_ARGS__);Serial.println()
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00029
"
>
</
a
>
<
span
class
="
lineno
"
>
29
</
span
>
 
<
span
class
="
preprocessor
"
>
#else
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00030
"
>
</
a
>
<
span
class
="
lineno
"
>
30
</
span
>
 
<
span
class
="
preprocessor
"
>
#define HTTPS_LOGW(...) do {} while (0)
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00031
"
>
</
a
>
<
span
class
="
lineno
"
>
31
</
span
>
 
<
span
class
="
preprocessor
"
>
#endif
</
span
>
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00032
"
>
</
a
>
<
span
class
="
lineno
"
>
32
</
span
>
 
</
div
>
<
div
class
="
line
"
>
<
a
name
="
l00033
"
>
</
a
>
<
span
class
="
lineno
"
>
33
</
span
>
 
<
span
class
="
preprocessor
"
>
#if HTTPS_LOGLEVEL > 2
</
span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor"> #define HTTPS_LOGI(...) HTTPS_LOGTAG("I");Serial.printf(__VA_ARGS__);Serial.println()</span></div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#else</span></div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor"> #define HTTPS_LOGI(...) do {} while (0)</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span> </div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor">#if HTTPS_LOGLEVEL > 3</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="preprocessor"> #define HTTPS_LOGD(...) HTTPS_LOGTAG("D");Serial.printf(__VA_ARGS__);Serial.println()</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="preprocessor">#else</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="preprocessor"> #define HTTPS_LOGD(...) do {} while (0)</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span> </div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="comment">// The following lines define limits of the protocol. Exceeding these limits will lead to a 500 error</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span> </div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="comment">// Maximum of header lines that are parsed</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="preprocessor">#ifndef HTTPS_REQUEST_MAX_HEADERS</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="preprocessor">#define HTTPS_REQUEST_MAX_HEADERS 20</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="comment">// Maximum length of the request line (GET /... HTTP/1.1)</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="preprocessor">#ifndef HTTPS_REQUEST_MAX_REQUEST_LENGTH</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="preprocessor">#define HTTPS_REQUEST_MAX_REQUEST_LENGTH 128</span></div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span> </div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="comment">// Maximum length of a header line (including name and value)</span></div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="preprocessor">#ifndef HTTPS_REQUEST_MAX_HEADER_LENGTH</span></div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="preprocessor">#define HTTPS_REQUEST_MAX_HEADER_LENGTH 384</span></div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span> </div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="comment">// Chunk size used for reading data from the ssl-enabled socket</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="preprocessor">#ifndef HTTPS_CONNECTION_DATA_CHUNK_SIZE</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="preprocessor">#define HTTPS_CONNECTION_DATA_CHUNK_SIZE 512</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span> </div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="comment">// Size (in bytes) of the Connection:keep-alive Cache (we need to be able to</span></div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="comment">// store-and-forward the response to calculate the content-size)</span></div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="preprocessor">#ifndef HTTPS_KEEPALIVE_CACHESIZE</span></div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="preprocessor">#define HTTPS_KEEPALIVE_CACHESIZE 1400</span></div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span> </div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="comment">// Timeout for an HTTPS connection without any transmission</span></div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="preprocessor">#ifndef HTTPS_CONNECTION_TIMEOUT</span></div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="preprocessor">#define HTTPS_CONNECTION_TIMEOUT 20000</span></div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="comment">// Timeout used to wait for shutdown of SSL connection (ms)</span></div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="comment">// (time for the client to return notify close flag) - without it, truncation attacks might be possible</span></div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="preprocessor">#ifndef HTTPS_SHUTDOWN_TIMEOUT</span></div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="preprocessor">#define HTTPS_SHUTDOWN_TIMEOUT 5000</span></div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span> </div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="comment">// Length of a SHA1 hash</span></div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="preprocessor">#ifndef HTTPS_SHA1_LENGTH</span></div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="preprocessor">#define HTTPS_SHA1_LENGTH 20</span></div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="preprocessor">#endif </span><span class="comment">/* SRC_HTTPSSERVERCONSTANTS_HPP_ */</span><span class="preprocessor"></span></div></div><!-- fragment --></div><!-- contents -->
</
div
>
<!-- doc-content -->
<!-- start footer part -->
<
div
id
="
nav-path
"
class
="
navpath
"
>
<!-- id is needed for treeview function! -->
<
ul
>
<
li
class
="
navelem
"
>
<
a
class
="
el
"
href
="
dir_68267d1309a1af8e8297ef4c3efbcdba.html
"
>
src
</
a
>
</
li
>
<
li
class
="
navelem
"
>
<
b
>
HTTPSServerConstants.hpp
</
b
>
</
li
>
<
li
class
="
footer
"
>
Generated by
<
a
href
="
http://www.doxygen.org/index.html
"
>
<
img
class
="
footer
"
src
="
doxygen.png
"
alt
="
doxygen
"
/>
</
a
>
1.8.13
</
li
>
</
ul
>
</
div
>
</
body
>
</
html
>
Back
|
FazBrowse Home
|
New Git URL