diff --git a/AES128_8cpp_source.html b/AES128_8cpp_source.html index 11f06834..e9eb144b 100644 --- a/AES128_8cpp_source.html +++ b/AES128_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -175,7 +175,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/AES192_8cpp_source.html b/AES192_8cpp_source.html index d17a0c80..2c8c31c6 100644 --- a/AES192_8cpp_source.html +++ b/AES192_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -175,7 +175,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/AES256_8cpp_source.html b/AES256_8cpp_source.html index 36b3646c..1891597a 100644 --- a/AES256_8cpp_source.html +++ b/AES256_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -182,7 +182,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/AESCommon_8cpp_source.html b/AESCommon_8cpp_source.html index 9e889f16..f6cbf811 100644 --- a/AESCommon_8cpp_source.html +++ b/AESCommon_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -415,7 +415,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/AES_8h_source.html b/AES_8h_source.html index 5437444a..0591c8aa 100644 --- a/AES_8h_source.html +++ b/AES_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -203,7 +203,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/AuthenticatedCipher_8cpp_source.html b/AuthenticatedCipher_8cpp_source.html index 43774f6e..02090343 100644 --- a/AuthenticatedCipher_8cpp_source.html +++ b/AuthenticatedCipher_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -125,7 +125,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/AuthenticatedCipher_8h_source.html b/AuthenticatedCipher_8h_source.html index 4ec47ac9..a70acac7 100644 --- a/AuthenticatedCipher_8h_source.html +++ b/AuthenticatedCipher_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -141,7 +141,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/BLAKE2b_8cpp_source.html b/BLAKE2b_8cpp_source.html index ffea6cb4..08c46185 100644 --- a/BLAKE2b_8cpp_source.html +++ b/BLAKE2b_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -331,7 +331,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/BLAKE2b_8h_source.html b/BLAKE2b_8h_source.html index 87a04f20..2af01e28 100644 --- a/BLAKE2b_8h_source.html +++ b/BLAKE2b_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -162,7 +162,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/BLAKE2s_8cpp_source.html b/BLAKE2s_8cpp_source.html index 5ad41037..c3332aca 100644 --- a/BLAKE2s_8cpp_source.html +++ b/BLAKE2s_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -323,7 +323,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/BLAKE2s_8h_source.html b/BLAKE2s_8h_source.html index e2f5dc8f..2dbe53bf 100644 --- a/BLAKE2s_8h_source.html +++ b/BLAKE2s_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -161,7 +161,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/BigNumberUtil_8cpp_source.html b/BigNumberUtil_8cpp_source.html index eb786fe1..af087b10 100644 --- a/BigNumberUtil_8cpp_source.html +++ b/BigNumberUtil_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -557,7 +557,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/BigNumberUtil_8h_source.html b/BigNumberUtil_8h_source.html index c3155f82..dd743ccc 100644 --- a/BigNumberUtil_8h_source.html +++ b/BigNumberUtil_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -199,7 +199,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Bitmap_8cpp_source.html b/Bitmap_8cpp_source.html index 221fa2fd..19ea767d 100644 --- a/Bitmap_8cpp_source.html +++ b/Bitmap_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -694,7 +694,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Bitmap_8h_source.html b/Bitmap_8h_source.html index cb33ba04..97ea520a 100644 --- a/Bitmap_8h_source.html +++ b/Bitmap_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -271,7 +271,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/BlinkLED_8cpp_source.html b/BlinkLED_8cpp_source.html index 179e6be1..ba9d2e7b 100644 --- a/BlinkLED_8cpp_source.html +++ b/BlinkLED_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -196,7 +196,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/BlinkLED_8h_source.html b/BlinkLED_8h_source.html index bab66e28..d4f6d250 100644 --- a/BlinkLED_8h_source.html +++ b/BlinkLED_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -157,7 +157,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/BlockCipher_8cpp_source.html b/BlockCipher_8cpp_source.html index 9006d542..5e7d6794 100644 --- a/BlockCipher_8cpp_source.html +++ b/BlockCipher_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -125,7 +125,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/BlockCipher_8h_source.html b/BlockCipher_8h_source.html index d2ecb032..c43d6574 100644 --- a/BlockCipher_8h_source.html +++ b/BlockCipher_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -146,7 +146,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/BoolField_8cpp_source.html b/BoolField_8cpp_source.html index 270edad8..8c957a32 100644 --- a/BoolField_8cpp_source.html +++ b/BoolField_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -202,7 +202,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/BoolField_8h_source.html b/BoolField_8h_source.html index 1a5d2062..bbef01f1 100644 --- a/BoolField_8h_source.html +++ b/BoolField_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -160,7 +160,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/CBC_8cpp_source.html b/CBC_8cpp_source.html index 22fdaaa0..1d52c3b5 100644 --- a/CBC_8cpp_source.html +++ b/CBC_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -208,7 +208,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/CBC_8h_source.html b/CBC_8h_source.html index 770418b7..4890c0be 100644 --- a/CBC_8h_source.html +++ b/CBC_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -172,7 +172,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/CFB_8cpp_source.html b/CFB_8cpp_source.html index 80cde5c8..bc3400a4 100644 --- a/CFB_8cpp_source.html +++ b/CFB_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -233,7 +233,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/CFB_8h_source.html b/CFB_8h_source.html index 0f6c8b9a..29fa070d 100644 --- a/CFB_8h_source.html +++ b/CFB_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -171,7 +171,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/CTR_8cpp_source.html b/CTR_8cpp_source.html index 43157713..c6fe485e 100644 --- a/CTR_8cpp_source.html +++ b/CTR_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -228,7 +228,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/CTR_8h_source.html b/CTR_8h_source.html index 07971c8b..73cf55cf 100644 --- a/CTR_8h_source.html +++ b/CTR_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -175,7 +175,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/ChaChaPoly_8cpp_source.html b/ChaChaPoly_8cpp_source.html index 67dc9150..4edbb504 100644 --- a/ChaChaPoly_8cpp_source.html +++ b/ChaChaPoly_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -262,7 +262,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/ChaChaPoly_8h_source.html b/ChaChaPoly_8h_source.html index 609f4795..30589fcc 100644 --- a/ChaChaPoly_8h_source.html +++ b/ChaChaPoly_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -173,7 +173,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/ChaCha_8cpp_source.html b/ChaCha_8cpp_source.html index 6b5e367b..95553779 100644 --- a/ChaCha_8cpp_source.html +++ b/ChaCha_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -311,7 +311,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/ChaCha_8h_source.html b/ChaCha_8h_source.html index 374d02c1..734d8e7a 100644 --- a/ChaCha_8h_source.html +++ b/ChaCha_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -170,7 +170,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Charlieplex_8cpp_source.html b/Charlieplex_8cpp_source.html index 8a22d249..5e68473b 100644 --- a/Charlieplex_8cpp_source.html +++ b/Charlieplex_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -232,7 +232,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Charlieplex_8h_source.html b/Charlieplex_8h_source.html index 72cf79bf..00521025 100644 --- a/Charlieplex_8h_source.html +++ b/Charlieplex_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -162,7 +162,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/ChaseLEDs_8cpp_source.html b/ChaseLEDs_8cpp_source.html index 26b25bc3..32bf2095 100644 --- a/ChaseLEDs_8cpp_source.html +++ b/ChaseLEDs_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -160,7 +160,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/ChaseLEDs_8h_source.html b/ChaseLEDs_8h_source.html index ae73ac1f..d53983a5 100644 --- a/ChaseLEDs_8h_source.html +++ b/ChaseLEDs_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -149,7 +149,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Cipher_8cpp_source.html b/Cipher_8cpp_source.html index e17a1863..85caa68a 100644 --- a/Cipher_8cpp_source.html +++ b/Cipher_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -125,7 +125,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Cipher_8h_source.html b/Cipher_8h_source.html index 77f550b3..5a7c1c3a 100644 --- a/Cipher_8h_source.html +++ b/Cipher_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -148,7 +148,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Crypto_8cpp_source.html b/Crypto_8cpp_source.html index 2c379086..e4b4a821 100644 --- a/Crypto_8cpp_source.html +++ b/Crypto_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -138,7 +138,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Crypto_8h_source.html b/Crypto_8h_source.html index 3ac6e51d..71614c7a 100644 --- a/Crypto_8h_source.html +++ b/Crypto_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -130,7 +130,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Curve25519_8cpp_source.html b/Curve25519_8cpp_source.html index 672006f7..5f4f65ba 100644 --- a/Curve25519_8cpp_source.html +++ b/Curve25519_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -1458,7 +1458,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Curve25519_8h_source.html b/Curve25519_8h_source.html index 185ded70..56fc2727 100644 --- a/Curve25519_8h_source.html +++ b/Curve25519_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -173,7 +173,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/DMD_8cpp_source.html b/DMD_8cpp_source.html index 694ac0c7..df356e72 100644 --- a/DMD_8cpp_source.html +++ b/DMD_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -456,7 +456,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/DMD_8h_source.html b/DMD_8h_source.html index 8b93d533..a88ebafb 100644 --- a/DMD_8h_source.html +++ b/DMD_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -170,7 +170,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/DS1307RTC_8cpp_source.html b/DS1307RTC_8cpp_source.html index 810bb1fe..d8863a71 100644 --- a/DS1307RTC_8cpp_source.html +++ b/DS1307RTC_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -415,7 +415,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/DS1307RTC_8h_source.html b/DS1307RTC_8h_source.html index e3a99846..45016e5f 100644 --- a/DS1307RTC_8h_source.html +++ b/DS1307RTC_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -172,7 +172,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/DS3231RTC_8cpp_source.html b/DS3231RTC_8cpp_source.html index b674f3cb..aa4cfbae 100644 --- a/DS3231RTC_8cpp_source.html +++ b/DS3231RTC_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -657,7 +657,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/DS3231RTC_8h_source.html b/DS3231RTC_8h_source.html index dc79e230..8470a185 100644 --- a/DS3231RTC_8h_source.html +++ b/DS3231RTC_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -202,7 +202,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/DS3232RTC_8cpp_source.html b/DS3232RTC_8cpp_source.html index 54e07a29..c0ad1709 100644 --- a/DS3232RTC_8cpp_source.html +++ b/DS3232RTC_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -575,7 +575,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/DS3232RTC_8h_source.html b/DS3232RTC_8h_source.html index ef8894e9..8ce71db5 100644 --- a/DS3232RTC_8h_source.html +++ b/DS3232RTC_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -190,7 +190,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/DejaVuSans9_8h_source.html b/DejaVuSans9_8h_source.html index 9f420a07..4e5cd0a0 100644 --- a/DejaVuSans9_8h_source.html +++ b/DejaVuSans9_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -257,7 +257,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/DejaVuSansBold9_8h_source.html b/DejaVuSansBold9_8h_source.html index b730469e..569684ee 100644 --- a/DejaVuSansBold9_8h_source.html +++ b/DejaVuSansBold9_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -257,7 +257,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/DejaVuSansItalic9_8h_source.html b/DejaVuSansItalic9_8h_source.html index 7fd07825..74822db4 100644 --- a/DejaVuSansItalic9_8h_source.html +++ b/DejaVuSansItalic9_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -257,7 +257,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/EAX_8cpp_source.html b/EAX_8cpp_source.html index f94409e6..ec414039 100644 --- a/EAX_8cpp_source.html +++ b/EAX_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -301,7 +301,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/EAX_8h_source.html b/EAX_8h_source.html index 2ef5f790..e001e2fd 100644 --- a/EAX_8h_source.html +++ b/EAX_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -196,7 +196,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/EEPROM24_8cpp_source.html b/EEPROM24_8cpp_source.html index 97720be1..2a41029a 100644 --- a/EEPROM24_8cpp_source.html +++ b/EEPROM24_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -282,7 +282,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/EEPROM24_8h_source.html b/EEPROM24_8h_source.html index 6fb6a88a..171a82fb 100644 --- a/EEPROM24_8h_source.html +++ b/EEPROM24_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -186,7 +186,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Ed25519_8cpp_source.html b/Ed25519_8cpp_source.html index e35da9eb..7ca7e817 100644 --- a/Ed25519_8cpp_source.html +++ b/Ed25519_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -572,7 +572,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Ed25519_8h_source.html b/Ed25519_8h_source.html index de2b4e64..9ea065df 100644 --- a/Ed25519_8h_source.html +++ b/Ed25519_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -168,7 +168,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Field_8cpp_source.html b/Field_8cpp_source.html index a6559e04..36009311 100644 --- a/Field_8cpp_source.html +++ b/Field_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -196,7 +196,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Field_8h_source.html b/Field_8h_source.html index f48316df..6e496f11 100644 --- a/Field_8h_source.html +++ b/Field_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -164,7 +164,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Form_8cpp_source.html b/Form_8cpp_source.html index f99c7a98..2c5eed05 100644 --- a/Form_8cpp_source.html +++ b/Form_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -278,7 +278,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Form_8h_source.html b/Form_8h_source.html index 287324e3..37d8caaf 100644 --- a/Form_8h_source.html +++ b/Form_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -172,7 +172,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/GCM_8cpp_source.html b/GCM_8cpp_source.html index 54e4e4a7..15d72a70 100644 --- a/GCM_8cpp_source.html +++ b/GCM_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -352,7 +352,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/GCM_8h_source.html b/GCM_8h_source.html index 990b7186..1408f4d5 100644 --- a/GCM_8h_source.html +++ b/GCM_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -191,7 +191,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/GF128_8cpp_source.html b/GF128_8cpp_source.html index 02cadb04..61515823 100644 --- a/GF128_8cpp_source.html +++ b/GF128_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -494,6 +494,83 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
478  V[3] = htobe32(V3);
479 #endif
480 }
+
481 
+
497 void GF128::dblXTS(uint32_t V[4])
+
498 {
+
499 #if defined(__AVR__)
+
500  __asm__ __volatile__ (
+
501  "ld r16,Z\n"
+
502  "ldd r17,Z+1\n"
+
503  "ldd r18,Z+2\n"
+
504  "ldd r19,Z+3\n"
+
505  "lsl r16\n"
+
506  "rol r17\n"
+
507  "rol r18\n"
+
508  "rol r19\n"
+
509  "std Z+1,r17\n"
+
510  "std Z+2,r18\n"
+
511  "std Z+3,r19\n"
+
512  "ldd r17,Z+4\n"
+
513  "ldd r18,Z+5\n"
+
514  "ldd r19,Z+6\n"
+
515  "ldd r20,Z+7\n"
+
516  "rol r17\n"
+
517  "rol r18\n"
+
518  "rol r19\n"
+
519  "rol r20\n"
+
520  "std Z+4,r17\n"
+
521  "std Z+5,r18\n"
+
522  "std Z+6,r19\n"
+
523  "std Z+7,r20\n"
+
524  "ldd r17,Z+8\n"
+
525  "ldd r18,Z+9\n"
+
526  "ldd r19,Z+10\n"
+
527  "ldd r20,Z+11\n"
+
528  "rol r17\n"
+
529  "rol r18\n"
+
530  "rol r19\n"
+
531  "rol r20\n"
+
532  "std Z+8,r17\n"
+
533  "std Z+9,r18\n"
+
534  "std Z+10,r19\n"
+
535  "std Z+11,r20\n"
+
536  "ldd r17,Z+12\n"
+
537  "ldd r18,Z+13\n"
+
538  "ldd r19,Z+14\n"
+
539  "ldd r20,Z+15\n"
+
540  "rol r17\n"
+
541  "rol r18\n"
+
542  "rol r19\n"
+
543  "rol r20\n"
+
544  "std Z+12,r17\n"
+
545  "std Z+13,r18\n"
+
546  "std Z+14,r19\n"
+
547  "std Z+15,r20\n"
+
548  "mov r17,__zero_reg__\n"
+
549  "sbc r17,__zero_reg__\n"
+
550  "andi r17,0x87\n"
+
551  "eor r16,r17\n"
+
552  "st Z,r16\n"
+
553  : : "z"(V)
+
554  : "r16", "r17", "r18", "r19", "r20"
+
555  );
+
556 #else
+
557  uint32_t V0 = le32toh(V[0]);
+
558  uint32_t V1 = le32toh(V[1]);
+
559  uint32_t V2 = le32toh(V[2]);
+
560  uint32_t V3 = le32toh(V[3]);
+
561  uint32_t mask = ((~(V3 >> 31)) + 1) & 0x00000087;
+
562  V3 = (V3 << 1) | (V2 >> 31);
+
563  V2 = (V2 << 1) | (V1 >> 31);
+
564  V1 = (V1 << 1) | (V0 >> 31);
+
565  V0 = (V0 << 1) ^ mask;
+
566  V[0] = htole32(V0);
+
567  V[1] = htole32(V1);
+
568  V[2] = htole32(V2);
+
569  V[3] = htole32(V3);
+
570 #endif
+
571 }
+
static void dblXTS(uint32_t V[4])
Doubles a value in the GF(2^128) field using XTS conventions.
Definition: GF128.cpp:497
static void dblEAX(uint32_t V[4])
Doubles a value in the GF(2^128) field using EAX conventions.
Definition: GF128.cpp:406
static void mul(uint32_t Y[4], const uint32_t H[4])
Perform a multiplication in the GF(2^128) field.
Definition: GF128.cpp:90
static void dbl(uint32_t V[4])
Doubles a value in the GF(2^128) field.
Definition: GF128.cpp:314
@@ -501,7 +578,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/GF128_8h_source.html b/GF128_8h_source.html index bcab4639..c9319584 100644 --- a/GF128_8h_source.html +++ b/GF128_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -126,9 +126,11 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
36  static void mul(uint32_t Y[4], const uint32_t H[4]);
37  static void dbl(uint32_t V[4]);
38  static void dblEAX(uint32_t V[4]);
-
39 };
-
40 
-
41 #endif
+
39  static void dblXTS(uint32_t V[4]);
+
40 };
+
41 
+
42 #endif
+
static void dblXTS(uint32_t V[4])
Doubles a value in the GF(2^128) field using XTS conventions.
Definition: GF128.cpp:497
static void dblEAX(uint32_t V[4])
Doubles a value in the GF(2^128) field using EAX conventions.
Definition: GF128.cpp:406
Operations in the Galois field GF(2^128).
Definition: GF128.h:28
static void mul(uint32_t Y[4], const uint32_t H[4])
Perform a multiplication in the GF(2^128) field.
Definition: GF128.cpp:90
@@ -137,7 +139,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/GHASH_8cpp_source.html b/GHASH_8cpp_source.html index 4f86a630..05ed615a 100644 --- a/GHASH_8cpp_source.html +++ b/GHASH_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -190,7 +190,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/GHASH_8h_source.html b/GHASH_8h_source.html index 1b08b3a4..4ab3b601 100644 --- a/GHASH_8h_source.html +++ b/GHASH_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -150,7 +150,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Hash_8cpp_source.html b/Hash_8cpp_source.html index 345a36e4..90845c39 100644 --- a/Hash_8cpp_source.html +++ b/Hash_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -151,7 +151,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Hash_8h_source.html b/Hash_8h_source.html index c1107ee5..6d107e12 100644 --- a/Hash_8h_source.html +++ b/Hash_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -154,7 +154,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/I2CMaster_8cpp_source.html b/I2CMaster_8cpp_source.html index 49cc30e5..a1bce6a3 100644 --- a/I2CMaster_8cpp_source.html +++ b/I2CMaster_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -115,7 +115,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/I2CMaster_8h_source.html b/I2CMaster_8h_source.html index e0e2f8b8..9c093181 100644 --- a/I2CMaster_8h_source.html +++ b/I2CMaster_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -140,7 +140,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/IRreceiver_8cpp_source.html b/IRreceiver_8cpp_source.html index 6d268560..6d52b117 100644 --- a/IRreceiver_8cpp_source.html +++ b/IRreceiver_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -261,7 +261,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/IRreceiver_8h_source.html b/IRreceiver_8h_source.html index baa93b98..c47f6234 100644 --- a/IRreceiver_8h_source.html +++ b/IRreceiver_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -157,7 +157,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/IntField_8cpp_source.html b/IntField_8cpp_source.html index 87cd708f..c3320fdb 100644 --- a/IntField_8cpp_source.html +++ b/IntField_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -208,7 +208,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/IntField_8h_source.html b/IntField_8h_source.html index ca95f6f2..09110ada 100644 --- a/IntField_8h_source.html +++ b/IntField_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -173,7 +173,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/KeccakCore_8cpp_source.html b/KeccakCore_8cpp_source.html index d0a5b0ee..e19f05e5 100644 --- a/KeccakCore_8cpp_source.html +++ b/KeccakCore_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -1991,7 +1991,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/KeccakCore_8h_source.html b/KeccakCore_8h_source.html index d9f77ae2..22693b7b 100644 --- a/KeccakCore_8h_source.html +++ b/KeccakCore_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -167,7 +167,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/LCD_8cpp_source.html b/LCD_8cpp_source.html index 16921905..5eb0b1f4 100644 --- a/LCD_8cpp_source.html +++ b/LCD_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -290,7 +290,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/LCD_8h_source.html b/LCD_8h_source.html index 32c89e0b..8c079be6 100644 --- a/LCD_8h_source.html +++ b/LCD_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -202,7 +202,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/ListField_8cpp_source.html b/ListField_8cpp_source.html index 86997d1e..a871a919 100644 --- a/ListField_8cpp_source.html +++ b/ListField_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -221,7 +221,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/ListField_8h_source.html b/ListField_8h_source.html index c65739f6..5ddcc74e 100644 --- a/ListField_8h_source.html +++ b/ListField_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -159,7 +159,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/LoginShell_8cpp_source.html b/LoginShell_8cpp_source.html new file mode 100644 index 00000000..a0bf537a --- /dev/null +++ b/LoginShell_8cpp_source.html @@ -0,0 +1,134 @@ + + + + + + +ArduinoLibs: LoginShell.cpp Source File + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + +
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
+ + +
+ +
+ + +
+
+
+
LoginShell.cpp
+
+
+
1 /*
+
2  * Copyright (C) 2016 Southern Storm Software, Pty Ltd.
+
3  *
+
4  * Permission is hereby granted, free of charge, to any person obtaining a
+
5  * copy of this software and associated documentation files (the "Software"),
+
6  * to deal in the Software without restriction, including without limitation
+
7  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+
8  * and/or sell copies of the Software, and to permit persons to whom the
+
9  * Software is furnished to do so, subject to the following conditions:
+
10  *
+
11  * The above copyright notice and this permission notice shall be included
+
12  * in all copies or substantial portions of the Software.
+
13  *
+
14  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+
15  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
16  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
17  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
18  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
19  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
20  * DEALINGS IN THE SOFTWARE.
+
21  */
+
22 
+
23 #include "LoginShell.h"
+
24 
+ +
68  : machName(0)
+
69  , checkFunc(0)
+
70 {
+
71 }
+
72 
+ +
77 {
+
78 }
+
LoginShell()
Constructs a new login shell.
Definition: LoginShell.cpp:67
+
virtual ~LoginShell()
Destroys this login shell.
Definition: LoginShell.cpp:76
+
+ + + + diff --git a/LoginShell_8h_source.html b/LoginShell_8h_source.html new file mode 100644 index 00000000..6dcc909c --- /dev/null +++ b/LoginShell_8h_source.html @@ -0,0 +1,163 @@ + + + + + + +ArduinoLibs: LoginShell.h Source File + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + +
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
+ + +
+ +
+ + +
+
+
+
LoginShell.h
+
+
+
1 /*
+
2  * Copyright (C) 2016 Southern Storm Software, Pty Ltd.
+
3  *
+
4  * Permission is hereby granted, free of charge, to any person obtaining a
+
5  * copy of this software and associated documentation files (the "Software"),
+
6  * to deal in the Software without restriction, including without limitation
+
7  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+
8  * and/or sell copies of the Software, and to permit persons to whom the
+
9  * Software is furnished to do so, subject to the following conditions:
+
10  *
+
11  * The above copyright notice and this permission notice shall be included
+
12  * in all copies or substantial portions of the Software.
+
13  *
+
14  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+
15  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
16  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
17  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
18  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
19  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
20  * DEALINGS IN THE SOFTWARE.
+
21  */
+
22 
+
23 #ifndef LOGIN_SHELL_h
+
24 #define LOGIN_SHELL_h
+
25 
+
26 #include "Shell.h"
+
27 
+
28 typedef int (*ShellPasswordCheckFunc)(const char *username, const char *password);
+
29 
+
30 class LoginShell : public Shell
+
31 {
+
32 public:
+
33  LoginShell();
+
34  virtual ~LoginShell();
+
35 
+
36  const char *machineName() const { return machName; }
+
37  void setMachineName(const char *machineName) { machName = machineName; }
+
38 
+
39  ShellPasswordCheckFunc passwordCheckFunction() const { return checkFunc; }
+
40  void setPasswordCheckFunction(ShellPasswordCheckFunc function) { checkFunc = function; }
+
41 
+
42 protected:
+
43  virtual void beginSession();
+
44  virtual void printPrompt();
+
45  virtual void execute();
+
46 
+
47 private:
+
48  const char *machName;
+
49  ShellPasswordCheckFunc checkFunc;
+
50 };
+
51 
+
52 #endif
+
void setMachineName(const char *machineName)
Sets the name of the machine to display in the login prompt.
Definition: LoginShell.h:37
+
const char * machineName() const
Gets the name of the machine to display in the login prompt.
Definition: LoginShell.h:36
+
void setPasswordCheckFunction(ShellPasswordCheckFunc function)
Sets the password checking function.
Definition: LoginShell.h:40
+
LoginShell()
Constructs a new login shell.
Definition: LoginShell.cpp:67
+
virtual void printPrompt()
Prints the current prompt string.
Definition: Shell.cpp:1007
+
ShellPasswordCheckFunc
Password checking function for login shells.
+
ShellPasswordCheckFunc passwordCheckFunction() const
Gets the current password checking function, or NULL if the function has not been set yet...
Definition: LoginShell.h:39
+
virtual void beginSession()
Begins a login session.
Definition: Shell.cpp:958
+
virtual void execute()
Executes the command in the buffer.
Definition: Shell.cpp:1057
+
Command-line shell access via a login shell.
Definition: LoginShell.h:30
+
virtual ~LoginShell()
Destroys this login shell.
Definition: LoginShell.cpp:76
+
Command-line shell access.
Definition: Shell.h:62
+
+ + + + diff --git a/Melody_8cpp_source.html b/Melody_8cpp_source.html index cfcee343..8822bd8f 100644 --- a/Melody_8cpp_source.html +++ b/Melody_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -215,7 +215,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Melody_8h_source.html b/Melody_8h_source.html index c21863ed..1824ef42 100644 --- a/Melody_8h_source.html +++ b/Melody_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -258,7 +258,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Mono5x7_8h_source.html b/Mono5x7_8h_source.html index 78a81ec5..16abf477 100644 --- a/Mono5x7_8h_source.html +++ b/Mono5x7_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -246,7 +246,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/NoiseSource_8cpp_source.html b/NoiseSource_8cpp_source.html index d6912ee9..5685844b 100644 --- a/NoiseSource_8cpp_source.html +++ b/NoiseSource_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -138,7 +138,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/NoiseSource_8h_source.html b/NoiseSource_8h_source.html index 8598aa68..8c3b3b33 100644 --- a/NoiseSource_8h_source.html +++ b/NoiseSource_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -142,7 +142,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/OFB_8cpp_source.html b/OFB_8cpp_source.html index 63b2b728..fbc9e3c5 100644 --- a/OFB_8cpp_source.html +++ b/OFB_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -206,7 +206,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/OFB_8h_source.html b/OFB_8h_source.html index f891af92..3ec20680 100644 --- a/OFB_8h_source.html +++ b/OFB_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -171,7 +171,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/OMAC_8cpp_source.html b/OMAC_8cpp_source.html index 587a56bf..c37ea299 100644 --- a/OMAC_8cpp_source.html +++ b/OMAC_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -208,7 +208,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/OMAC_8h_source.html b/OMAC_8h_source.html index cccad7c1..0219d36a 100644 --- a/OMAC_8h_source.html +++ b/OMAC_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -152,7 +152,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Poly1305_8cpp_source.html b/Poly1305_8cpp_source.html index 5d633a57..c55c2b56 100644 --- a/Poly1305_8cpp_source.html +++ b/Poly1305_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -355,7 +355,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Poly1305_8h_source.html b/Poly1305_8h_source.html index e538e1e1..4fa0517d 100644 --- a/Poly1305_8h_source.html +++ b/Poly1305_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -153,7 +153,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/PowerSave_8cpp_source.html b/PowerSave_8cpp_source.html index 681eeec7..b5a9bd20 100644 --- a/PowerSave_8cpp_source.html +++ b/PowerSave_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -155,7 +155,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/PowerSave_8h_source.html b/PowerSave_8h_source.html index 9de53c72..bb5cc2a1 100644 --- a/PowerSave_8h_source.html +++ b/PowerSave_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -158,7 +158,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/RC5_8h_source.html b/RC5_8h_source.html index 1839ca31..2509bbbd 100644 --- a/RC5_8h_source.html +++ b/RC5_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -435,7 +435,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/RNG_8cpp_source.html b/RNG_8cpp_source.html index 9c050ef1..9840181e 100644 --- a/RNG_8cpp_source.html +++ b/RNG_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -651,7 +651,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/RNG_8h_source.html b/RNG_8h_source.html index 0a5f73c9..a59f443a 100644 --- a/RNG_8h_source.html +++ b/RNG_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -177,7 +177,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/RTC_8cpp_source.html b/RTC_8cpp_source.html index 488ae909..54a2e169 100644 --- a/RTC_8cpp_source.html +++ b/RTC_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -380,7 +380,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/RTC_8h_source.html b/RTC_8h_source.html index bd34056f..fd37987e 100644 --- a/RTC_8h_source.html +++ b/RTC_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -237,7 +237,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/RingOscillatorNoiseSource_8cpp_source.html b/RingOscillatorNoiseSource_8cpp_source.html index 9e2ee7b1..7d80d52c 100644 --- a/RingOscillatorNoiseSource_8cpp_source.html +++ b/RingOscillatorNoiseSource_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -285,7 +285,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/RingOscillatorNoiseSource_8h_source.html b/RingOscillatorNoiseSource_8h_source.html index e8c3e2fa..87e1cec3 100644 --- a/RingOscillatorNoiseSource_8h_source.html +++ b/RingOscillatorNoiseSource_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -145,7 +145,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/SHA256_8cpp_source.html b/SHA256_8cpp_source.html index 0f9f62e8..c4725c0f 100644 --- a/SHA256_8cpp_source.html +++ b/SHA256_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -339,7 +339,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/SHA256_8h_source.html b/SHA256_8h_source.html index a32e5e17..aaa8602e 100644 --- a/SHA256_8h_source.html +++ b/SHA256_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -160,7 +160,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/SHA3_8cpp_source.html b/SHA3_8cpp_source.html index a73e6408..4e903e83 100644 --- a/SHA3_8cpp_source.html +++ b/SHA3_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -257,7 +257,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/SHA3_8h_source.html b/SHA3_8h_source.html index a53d7132..471871eb 100644 --- a/SHA3_8h_source.html +++ b/SHA3_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -188,7 +188,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/SHA512_8cpp_source.html b/SHA512_8cpp_source.html index 5e2e066d..d1fbbcaa 100644 --- a/SHA512_8cpp_source.html +++ b/SHA512_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -355,7 +355,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/SHA512_8h_source.html b/SHA512_8h_source.html index da81e43e..f41c6984 100644 --- a/SHA512_8h_source.html +++ b/SHA512_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -166,7 +166,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/SHAKE_8cpp_source.html b/SHAKE_8cpp_source.html index 211af597..eb7ea353 100644 --- a/SHAKE_8cpp_source.html +++ b/SHAKE_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -192,7 +192,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/SHAKE_8h_source.html b/SHAKE_8h_source.html index a2ce91b8..715de10b 100644 --- a/SHAKE_8h_source.html +++ b/SHAKE_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -174,7 +174,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Shell_8cpp_source.html b/Shell_8cpp_source.html new file mode 100644 index 00000000..1ca46925 --- /dev/null +++ b/Shell_8cpp_source.html @@ -0,0 +1,856 @@ + + + + + + +ArduinoLibs: Shell.cpp Source File + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + +
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
+ + +
+ +
+ + +
+
+
+
Shell.cpp
+
+
+
1 /*
+
2  * Copyright (C) 2016 Southern Storm Software, Pty Ltd.
+
3  *
+
4  * Permission is hereby granted, free of charge, to any person obtaining a
+
5  * copy of this software and associated documentation files (the "Software"),
+
6  * to deal in the Software without restriction, including without limitation
+
7  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+
8  * and/or sell copies of the Software, and to permit persons to whom the
+
9  * Software is furnished to do so, subject to the following conditions:
+
10  *
+
11  * The above copyright notice and this permission notice shall be included
+
12  * in all copies or substantial portions of the Software.
+
13  *
+
14  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+
15  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
16  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
17  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
18  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
19  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
20  * DEALINGS IN THE SOFTWARE.
+
21  */
+
22 
+
23 #include "Shell.h"
+
24 #include "LoginShell.h"
+
25 #include <string.h>
+
26 #include <stddef.h>
+
27 
+
105 // Modes for line editing (flags).
+
106 #define LINEMODE_NORMAL 0x01
+
107 #define LINEMODE_ECHO 0x02
+
108 #define LINEMODE_USERNAME 0x04
+
109 #define LINEMODE_PASSWORD 0x08
+
110 #define LINEMODE_PROMPT 0x10
+
111 #define LINEMODE_DELAY 0x20
+
112 
+
113 // Delay to insert after a failed login to slow down brute force attacks (ms).
+
114 #define LOGIN_SHELL_DELAY 3000
+
115 
+ +
123  : curStart(0)
+
124  , curLen(0)
+
125  , curMax(sizeof(buffer))
+
126  , history(0)
+
127  , historyWrite(0)
+
128  , historyRead(0)
+
129  , historySize(0)
+
130  , prom("$ ")
+
131  , isClient(false)
+
132  , lineMode(LINEMODE_NORMAL | LINEMODE_ECHO)
+
133  , uid(-1)
+
134  , timer(0)
+
135 {
+
136 }
+
137 
+ +
142 {
+
143  clearHistory();
+
144  delete [] history;
+
145 }
+
146 
+
176 bool Shell::begin(Stream &stream, size_t maxHistory, Terminal::Mode mode)
+
177 {
+
178  if (!beginShell(stream, maxHistory, mode))
+
179  return false;
+
180  isClient = false;
+
181  return true;
+
182 }
+
183 
+
208 bool Shell::begin(Client &client, size_t maxHistory, Terminal::Mode mode)
+
209 {
+
210  if (!beginShell(client, maxHistory, mode))
+
211  return false;
+
212  isClient = true;
+
213  return true;
+
214 }
+
215 
+
219 bool Shell::beginShell(Stream &stream, size_t maxHistory, Terminal::Mode mode)
+
220 {
+
221  // Initialize the Terminal base class with the underlying stream.
+
222  Terminal::begin(stream, mode);
+
223 
+
224  // Create the history buffer.
+
225  bool ok = true;
+
226  delete [] history;
+
227  historySize = sizeof(buffer) * maxHistory;
+
228  if (maxHistory) {
+
229  history = new char [historySize];
+
230  if (history) {
+
231  memset(history, 0, historySize);
+
232  } else {
+
233  maxHistory = 0;
+
234  historySize = 0;
+
235  ok = false;
+
236  }
+
237  } else {
+
238  history = 0;
+
239  }
+
240 
+
241  // Clear other variables.
+
242  curStart = 0;
+
243  curLen = 0;
+
244  curMax = sizeof(buffer);
+
245  historyWrite = 0;
+
246  historyRead = 0;
+
247  uid = -1;
+
248 
+
249  // Begins the login session.
+
250  beginSession();
+
251  return ok;
+
252 }
+
253 
+ +
263 {
+
264  Terminal::end();
+
265  clearHistory();
+
266  delete [] history;
+
267  curStart = 0;
+
268  curLen = 0;
+
269  curMax = sizeof(buffer);
+
270  history = 0;
+
271  historyWrite = 0;
+
272  historyRead = 0;
+
273  historySize = 0;
+
274  isClient = false;
+
275  lineMode = LINEMODE_NORMAL | LINEMODE_ECHO;
+
276  uid = -1;
+
277 }
+
278 
+
281 // Standard builtin command names.
+
282 static char const builtin_cmd_exit[] PROGMEM = "exit";
+
283 static char const builtin_cmd_help[] PROGMEM = "help";
+
284 static char const builtin_cmd_help_alt[] PROGMEM = "?";
+
285 
+ +
295 {
+
296  // If the stream is a TCP client, then check for disconnection.
+
297  if (isClient && !((Client *)stream())->connected()) {
+
298  end();
+
299  return;
+
300  }
+
301 
+
302  // If the login delay is active, then suppress all input.
+
303  if (lineMode & LINEMODE_DELAY) {
+
304  if ((millis() - timer) >= LOGIN_SHELL_DELAY) {
+
305  lineMode &= ~LINEMODE_DELAY;
+
306  timer = 0;
+
307  } else {
+
308  readKey();
+
309  return;
+
310  }
+
311  }
+
312 
+
313  // Print the prompt if necessary.
+
314  if (lineMode & LINEMODE_PROMPT)
+
315  printPrompt();
+
316 
+
317  // Read the next key and bail out if none. We only process a single
+
318  // key each time we enter this function to prevent other tasks in the
+
319  // system from becoming starved of time resources if the bytes are
+
320  // arriving rapidly from the underyling stream.
+
321  int key = readKey();
+
322  if (key == -1)
+
323  return;
+
324 
+
325  // Process the key.
+
326  switch (key) {
+
327  case KEY_BACKSPACE:
+
328  // Backspace over the last character.
+
329  clearCharacters(1);
+
330  break;
+
331 
+
332  case KEY_RETURN:
+
333  // CR, LF, or CRLF pressed, so execute the current command.
+
334  execute();
+
335  break;
+
336 
+
337  case 0x15:
+
338  // CTRL-U - clear the entire command.
+
339  clearCharacters(curLen);
+
340  break;
+
341 
+
342  case 0x04:
+
343  // CTRL-D - equivalent to the "exit" command.
+
344  if (lineMode & LINEMODE_NORMAL)
+
345  executeBuiltin(builtin_cmd_exit);
+
346  break;
+
347 
+
348  case KEY_UP_ARROW:
+
349  // Go back one item in the command history.
+
350  if ((lineMode & LINEMODE_NORMAL) != 0 &&
+
351  history && historyRead > 0) {
+
352  changeHistory(true);
+
353  }
+
354  break;
+
355 
+
356  case KEY_DOWN_ARROW:
+
357  // Go forward one item in the command history.
+
358  if ((lineMode & LINEMODE_NORMAL) != 0 &&
+
359  history && historyRead < historyWrite) {
+
360  changeHistory(false);
+
361  }
+
362  break;
+
363 
+
364  case KEY_F1:
+
365  // F1 is equivalent to the "help" command.
+
366  if (lineMode & LINEMODE_NORMAL)
+
367  executeBuiltin(builtin_cmd_help);
+
368  break;
+
369 
+
370  case KEY_UNICODE: {
+
371  // Add the Unicode code point to the buffer if it will fit.
+
372  long code = unicodeKey();
+
373  size_t size = Terminal::utf8Length(code);
+
374  if (size && (curLen + size) < (curMax - 1)) {
+
375  Terminal::utf8Format((uint8_t *)(buffer + curLen), code);
+
376  if (lineMode & LINEMODE_ECHO)
+
377  write((uint8_t *)(buffer + curLen), size);
+
378  curLen += size;
+
379  }
+
380  } break;
+
381 
+
382  default:
+
383  if (key >= 0x20 && key <= 0x7E) {
+
384  // Printable ASCII character - echo and add it to the buffer.
+
385  if (curLen < (curMax - 1)) {
+
386  if (lineMode & LINEMODE_ECHO)
+
387  write((uint8_t)key);
+
388  buffer[curLen++] = (char)key;
+
389  }
+
390  }
+
391  break;
+
392  }
+
393 }
+
394 
+
395 #if defined(__AVR__)
+
396 
+
397 // String compare of two strings in program memory.
+
398 static int progmem_strcmp(const char *str1, const char *str2)
+
399 {
+
400  uint8_t ch1, ch2;
+
401  for (;;) {
+
402  ch1 = pgm_read_byte((const uint8_t *)str1);
+
403  ch2 = pgm_read_byte((const uint8_t *)str2);
+
404  if (!ch1) {
+
405  if (ch2)
+
406  return -1;
+
407  else
+
408  break;
+
409  } else if (!ch2) {
+
410  return 1;
+
411  } else if (ch1 != ch2) {
+
412  return ((int)ch1) - ((int)ch2);
+
413  }
+
414  ++str1;
+
415  ++str2;
+
416  }
+
417  return 0;
+
418 }
+
419 
+
420 #else
+
421 
+
422 #define progmem_strcmp(str1,str2) (strcmp((str1), (str2)))
+
423 
+
424 #endif
+
425 
+
426 // Reads the "name" field from a command information block in program memory.
+
427 static const char *readInfoName(const ShellCommandInfo *info)
+
428 {
+
429 #if defined(__AVR__)
+
430  return (const char *)pgm_read_word
+
431  (((const uint8_t *)info) + offsetof(ShellCommandInfo, name));
+
432 #else
+
433  return info->name;
+
434 #endif
+
435 }
+
436 
+
437 // Reads the "help" field from a command information block in program memory.
+
438 static const char *readInfoHelp(const ShellCommandInfo *info)
+
439 {
+
440 #if defined(__AVR__)
+
441  return (const char *)pgm_read_word
+
442  (((const uint8_t *)info) + offsetof(ShellCommandInfo, help));
+
443 #else
+
444  return info->help;
+
445 #endif
+
446 }
+
447 
+
448 // Reads the "func" field from a command information block in program memory.
+
449 static ShellCommandFunc readInfoFunc(const ShellCommandInfo *info)
+
450 {
+
451 #if defined(__AVR__)
+
452  if (sizeof(ShellCommandFunc) == 2) {
+
453  return (ShellCommandFunc)pgm_read_word
+
454  (((const uint8_t *)info) + offsetof(ShellCommandInfo, func));
+
455  } else {
+
456  return (ShellCommandFunc)pgm_read_dword
+
457  (((const uint8_t *)info) + offsetof(ShellCommandInfo, func));
+
458  }
+
459 #else
+
460  return info->func;
+
461 #endif
+
462 }
+
463 
+
464 static ShellCommandRegister *firstCmd = 0;
+
465 
+
472 void Shell::registerCommand(ShellCommandRegister *cmd)
+
473 {
+
474  // Insert the command into the list in alphanumeric order.
+
475  // We cannot rely upon the construction order to sort the list for us.
+
476  ShellCommandRegister *prev = 0;
+
477  ShellCommandRegister *current = firstCmd;
+
478  while (current != 0) {
+
479  if (progmem_strcmp(readInfoName(cmd->info), readInfoName(current->info)) < 0)
+
480  break;
+
481  prev = current;
+
482  current = current->next;
+
483  }
+
484  if (prev)
+
485  prev->next = cmd;
+
486  else
+
487  firstCmd = cmd;
+
488  cmd->next = current;
+
489 }
+
490 
+ +
543 {
+
544  // Find the command with the maximum length.
+
545  ShellCommandRegister *current = firstCmd;
+
546  size_t maxLen = 0;
+
547  size_t len;
+
548  while (current != 0) {
+
549  len = strlen_P(readInfoName(current->info));
+
550  if (len > maxLen)
+
551  maxLen = len;
+
552  current = current->next;
+
553  }
+
554  maxLen += 2;
+
555 
+
556  // Print the commands with the help strings aligned on the right.
+
557  current = firstCmd;
+
558  while (current != 0) {
+
559  writeProgMem(readInfoName(current->info));
+
560  len = maxLen - strlen_P(readInfoName(current->info));
+
561  while (len > 0) {
+
562  write(' ');
+
563  --len;
+
564  }
+
565  writeProgMem(readInfoHelp(current->info));
+
566  println();
+
567  current = current->next;
+
568  }
+
569 }
+
570 
+ +
578 {
+
579  Stream *stream = this->stream();
+
580  uid = -1;
+
581  if (isClient) {
+
582  end();
+
583  ((Client *)stream)->stop();
+
584  } else {
+
585  clearHistory();
+
586  println();
+
587  beginSession();
+
588  }
+
589 }
+
590 
+ +
595 {
+
596  // No login support in the base class, so enter normal mode immediately.
+
597  lineMode = LINEMODE_NORMAL | LINEMODE_ECHO | LINEMODE_PROMPT;
+
598 }
+
599 
+ +
604 {
+
605  if (prom)
+
606  print(prom);
+
607  lineMode &= ~LINEMODE_PROMPT;
+
608 }
+
609 
+ +
614 {
+
615  // Terminate the current line.
+
616  println();
+
617 
+
618  // Make sure the command is properly NUL-terminated.
+
619  buffer[curLen] = '\0';
+
620 
+
621  // If we have a history stack and the new command is different from
+
622  // the previous command, then copy the command into the stack.
+
623  if (history && curLen > curStart) {
+
624  char *prevCmd;
+
625  bool newCmd = true;
+
626  if (historyWrite > 0) {
+
627  prevCmd = (char *)memrchr(history, '\0', historyWrite - 1);
+
628  if (prevCmd)
+
629  ++prevCmd;
+
630  else
+
631  prevCmd = history;
+
632  if (strcmp(prevCmd, buffer + curStart) == 0)
+
633  newCmd = false;
+
634  }
+
635  if (newCmd) {
+
636  size_t len = curLen - curStart;
+
637  while ((len + 1) > (historySize - historyWrite)) {
+
638  // History stack is full. Pop older entries to get some room.
+
639  prevCmd = (char *)memchr(history, '\0', historyWrite);
+
640  if (prevCmd) {
+
641  size_t histLen = historyWrite - ((prevCmd + 1) - history);
+
642  memmove(history, prevCmd + 1, histLen);
+
643  historyWrite = histLen;
+
644  } else {
+
645  historyWrite = 0;
+
646  break;
+
647  }
+
648  }
+
649  memcpy(history + historyWrite, buffer + curStart, len);
+
650  historyWrite += len;
+
651  history[historyWrite++] = '\0';
+
652  }
+
653  }
+
654 
+
655  // Reset the history read position to the top of the stack.
+
656  historyRead = historyWrite;
+
657 
+
658  // Break the command up into arguments and populate the argument array.
+
659  ShellArguments argv(buffer + curStart, curLen - curStart);
+
660 
+
661  // Clear the line buffer.
+
662  curLen = curStart;
+
663 
+
664  // Execute the command.
+
665  if (argv.count() > 0) {
+
666  if (!execute(argv)) {
+
667  // Could not find a matching command, try the builtin "help".
+
668  const char *argv0 = argv[0];
+
669  if (!strcmp_P(argv0, builtin_cmd_help) ||
+
670  !strcmp_P(argv0, builtin_cmd_help_alt)) {
+
671  help();
+
672  } else if (!strcmp_P(argv0, builtin_cmd_exit)) {
+
673  exit();
+
674  } else {
+
675  static char const unknown_cmd[] PROGMEM = "Unknown command: ";
+
676  writeProgMem(unknown_cmd);
+
677  print(argv0);
+
678  println();
+
679  }
+
680  }
+
681  }
+
682 
+
683  // Prepare to print the prompt for the next command.
+
684  lineMode |= LINEMODE_PROMPT;
+
685 }
+
686 
+
694 bool Shell::execute(const ShellArguments &argv)
+
695 {
+
696  const char *argv0 = argv[0];
+
697  ShellCommandRegister *current = firstCmd;
+
698  while (current != 0) {
+
699  if (!strcmp_P(argv0, readInfoName(current->info))) {
+
700  ShellCommandFunc func = readInfoFunc(current->info);
+
701  (*func)(*this, argv.count(), argv);
+
702  return true;
+
703  }
+
704  current = current->next;
+
705  }
+
706  return false;
+
707 }
+
708 
+
714 void Shell::executeBuiltin(const char *cmd)
+
715 {
+
716  clearCharacters(curLen);
+
717  curLen = strlen_P(cmd);
+
718  strncpy_P(buffer + curStart, cmd, curLen);
+
719  write((const uint8_t *)(buffer + curStart), curLen);
+
720  curLen += curStart;
+
721  execute();
+
722 }
+
723 
+
729 void Shell::clearCharacters(size_t len)
+
730 {
+
731  // If the characters are hidden, then there's nothing to backspace over.
+
732  if (!(lineMode & LINEMODE_ECHO))
+
733  return;
+
734 
+
735  // Backspace over all characters in the buffer.
+
736  while (len > 0 && curLen > curStart) {
+
737  uint8_t ch = (uint8_t)(buffer[curLen - 1]);
+
738  if (ch < 0x80) {
+
739  backspace();
+
740  } else {
+
741  // UTF-8 character sequence. Back up some more and
+
742  // determine the value of the Unicode code point.
+
743  long code = (ch & 0x3F);
+
744  uint8_t shift = 6;
+
745  while (curLen > 1) {
+
746  --curLen;
+
747  ch = (uint8_t)(buffer[curLen - 1]);
+
748  if ((ch & 0xC0) != 0x80)
+
749  break;
+
750  code |= ((long)(ch & 0x3F)) << shift;
+
751  shift += 6;
+
752  }
+
753  if ((ch & 0xE0) == 0xC0)
+
754  ch &= 0x1F;
+
755  else if ((ch & 0xF0) == 0xE0)
+
756  ch &= 0x0F;
+
757  else
+
758  ch &= 0x07;
+
759  code |= ((long)ch) << shift;
+
760 
+
761  // If the character is wide, we need to emit two backspaces.
+
762  if (isWideCharacter(code))
+
763  backspace();
+
764  backspace();
+
765  }
+
766  --len;
+
767  --curLen;
+
768  }
+
769 }
+
770 
+
777 void Shell::changeHistory(bool up)
+
778 {
+
779  char *cmd;
+
780  if (up) {
+
781  cmd = (char *)memrchr(history, '\0', historyRead - 1);
+
782  if (cmd)
+
783  historyRead = (size_t)(cmd - history + 1);
+
784  else
+
785  historyRead = 0;
+
786  } else {
+
787  cmd = (char *)memchr(history + historyRead, '\0', historyWrite - historyRead);
+
788  if (cmd)
+
789  historyRead = (size_t)(cmd - history + 1);
+
790  else
+
791  historyRead = historyWrite;
+
792  }
+
793  clearCharacters(curLen);
+
794  if (historyRead < historyWrite) {
+
795  cmd = history + historyRead;
+
796  curLen = strlen(cmd);
+
797  if (curLen > (curMax - curStart))
+
798  curLen = curMax - curStart;
+
799  memcpy(buffer + curStart, cmd, curLen);
+
800  write((uint8_t *)cmd, curLen);
+
801  curLen += curStart;
+
802  }
+
803 }
+
804 
+
811 void Shell::clearHistory()
+
812 {
+
813  if (history)
+
814  memset(history, 0, historySize);
+
815  historyRead = 0;
+
816  historyWrite = 0;
+
817  memset(buffer, 0, sizeof(buffer));
+
818 }
+
819 
+
853 ShellArguments::ShellArguments(char *buffer, size_t len)
+
854  : line(buffer)
+
855  , size(0)
+
856  , argc(0)
+
857  , currentIndex(0)
+
858  , currentPosn(0)
+
859 {
+
860  // Break the command up into arguments and add NUL terminators.
+
861  size_t posn = 0;
+
862  size_t outposn = 0;
+
863  char quote = 0;
+
864  while (posn < len) {
+
865  char ch = buffer[posn];
+
866  if (ch == ' ') {
+
867  ++posn;
+
868  continue;
+
869  }
+
870  ++argc;
+
871  do {
+
872  ch = buffer[posn];
+
873  if (ch == '"' || ch == '\'') {
+
874  if (quote == ch) {
+
875  quote = 0;
+
876  ++posn;
+
877  continue;
+
878  } else if (!quote) {
+
879  quote = ch;
+
880  ++posn;
+
881  continue;
+
882  }
+
883  } else if (!quote && ch == ' ') {
+
884  break;
+
885  }
+
886  buffer[outposn++] = ch;
+
887  ++posn;
+
888  } while (posn < len);
+
889  buffer[outposn++] = '\0';
+
890  if (posn < len)
+
891  ++posn;
+
892  }
+
893  size = outposn;
+
894 }
+
895 
+
927 const char *ShellArguments::operator[](int index) const
+
928 {
+
929  if (index < 0 || index >= argc) {
+
930  // Argument index is out of range.
+
931  return 0;
+
932  } else if (index == currentIndex) {
+
933  // We already found this argument last time.
+
934  return line + currentPosn;
+
935  } else {
+
936  // Search forwards or backwards for the next argument.
+
937  const char *temp;
+
938  while (index > currentIndex) {
+
939  temp = (const char *)memchr
+
940  (line + currentPosn, '\0', size - currentPosn);
+
941  if (!temp)
+
942  return 0;
+
943  currentPosn = ((size_t)(temp - line)) + 1;
+
944  ++currentIndex;
+
945  }
+
946  while (index < currentIndex) {
+
947  temp = (const char *)memrchr(line, '\0', currentPosn - 1);
+
948  if (temp)
+
949  currentPosn = ((size_t)(temp - line)) + 1;
+
950  else
+
951  currentPosn = 0;
+
952  --currentIndex;
+
953  }
+
954  return line + currentPosn;
+
955  }
+
956 }
+
957 
+ +
959 {
+
960  lineMode = LINEMODE_USERNAME | LINEMODE_ECHO | LINEMODE_PROMPT;
+
961  curStart = 0;
+
962  curLen = 0;
+
963  curMax = sizeof(buffer) / 2;
+
964 }
+
965 
+ +
1008 {
+
1009  static char const loginString[] PROGMEM = "login: ";
+
1010  static char const passwordString[] PROGMEM = "Password: ";
+
1011  if (lineMode & LINEMODE_NORMAL) {
+
1012  // Print the prompt for normal command entry.
+
1013  if (prom)
+
1014  print(prom);
+
1015 
+
1016  // Normal commands occupy the full command buffer.
+
1017  curStart = 0;
+
1018  curLen = 0;
+
1019  curMax = sizeof(buffer);
+
1020  } else if (lineMode & LINEMODE_USERNAME) {
+
1021  // Print the machine name and the login prompt.
+
1022  if (machName) {
+
1023  print(machName);
+
1024  write((uint8_t)' ');
+
1025  }
+
1026  writeProgMem(loginString);
+
1027 
+
1028  // Login name is placed into the first half of the line buffer.
+
1029  curStart = 0;
+
1030  curLen = 0;
+
1031  curMax = sizeof(buffer) / 2;
+
1032  } else if (lineMode & LINEMODE_PASSWORD) {
+
1033  // Print the password prompt.
+
1034  writeProgMem(passwordString);
+
1035 
+
1036  // Password is placed into the second half of the line buffer.
+
1037  curStart = sizeof(buffer) / 2;
+
1038  curLen = curStart;
+
1039  curMax = sizeof(buffer);
+
1040  }
+
1041  lineMode &= ~LINEMODE_PROMPT;
+
1042 }
+
1043 
+
1044 // Default password checking function. This is not a very good security check!
+
1045 static int defaultPasswordCheckFunc(const char *username, const char *password)
+
1046 {
+
1047  static char const defaultUsername[] PROGMEM = "root";
+
1048  static char const defaultPassword[] PROGMEM = "arduino";
+
1049  if (!strcmp_P(username, defaultUsername) &&
+
1050  !strcmp_P(password, defaultPassword)) {
+
1051  return 0;
+
1052  } else {
+
1053  return -1;
+
1054  }
+
1055 }
+
1056 
+ +
1058 {
+
1059  if (lineMode & LINEMODE_NORMAL) {
+
1060  // Normal command execution.
+
1061  Shell::execute();
+
1062  } else if (lineMode & LINEMODE_USERNAME) {
+
1063  // Prompting for the login username.
+
1064  buffer[curLen] = '\0';
+
1065  lineMode = LINEMODE_PASSWORD | LINEMODE_PROMPT;
+
1066  println();
+
1067  } else if (lineMode & LINEMODE_PASSWORD) {
+
1068  // Prompting for the login password.
+
1069  buffer[curLen] = '\0';
+
1070  println();
+
1071 
+
1072  // Check the user name and password.
+
1073  int userid;
+
1074  if (checkFunc)
+
1075  userid = checkFunc(buffer, buffer + sizeof(buffer) / 2);
+
1076  else
+
1077  userid = defaultPasswordCheckFunc(buffer, buffer + sizeof(buffer) / 2);
+
1078 
+
1079  // Clear the user name and password from memory after they are checked.
+
1080  memset(buffer, 0, sizeof(buffer));
+
1081 
+
1082  // Go to either normal mode or back to username mode.
+
1083  if (userid >= 0) {
+
1084  uid = userid;
+
1085  lineMode = LINEMODE_NORMAL | LINEMODE_ECHO | LINEMODE_PROMPT;
+
1086  } else {
+
1087  lineMode = LINEMODE_USERNAME | LINEMODE_ECHO |
+
1088  LINEMODE_PROMPT | LINEMODE_DELAY;
+
1089  timer = millis();
+
1090  }
+
1091  }
+
1092 }
+
const char * operator[](int index) const
Gets a specific argument for the command.
Definition: Shell.cpp:927
+
virtual void beginSession()
Begins a login session.
Definition: Shell.cpp:594
+
void help()
Displays help for all supported commands.
Definition: Shell.cpp:542
+
long unicodeKey() const
Gets the Unicode version of the last key returned by readKey().
Definition: Terminal.h:68
+
bool begin(Stream &stream, size_t maxHistory=0, Terminal::Mode mode=Serial)
Begin shell handling on an underlying character stream.
Definition: Shell.cpp:176
+
virtual size_t write(uint8_t c)
Writes a single byte to the underlying stream.
Definition: Terminal.cpp:286
+
virtual void printPrompt()
Prints the current prompt string.
Definition: Shell.cpp:603
+
static void registerCommand(ShellCommandRegister *cmd)
Registers a command with the shell.
Definition: Shell.cpp:472
+
void begin(Stream &stream, Mode mode=Serial)
Begins terminal operations on an underlying stream.
Definition: Terminal.cpp:183
+
void exit()
Exit from the shell back to the login prompt.
Definition: Shell.cpp:577
+
void backspace()
Backspaces over the last character.
Definition: Terminal.cpp:949
+
virtual void printPrompt()
Prints the current prompt string.
Definition: Shell.cpp:1007
+
void loop()
Performs regular activities on the shell.
Definition: Shell.cpp:294
+
Shell()
Constructs a new Shell instance.
Definition: Shell.cpp:122
+
Mode
Mode to operate in, Serial or Telnet.
Definition: Terminal.h:42
+
Stream * stream() const
Returns a pointer to the underlying Stream, or NULL if the stream has not been set with begin() yet...
Definition: Terminal.h:51
+
virtual void beginSession()
Begins a login session.
Definition: Shell.cpp:958
+
ShellCommandFunc
Type of functions that provide shell command handlers.
+
int count() const
Returns the number of arguments, including the name of the command.
Definition: Shell.h:127
+
void writeProgMem(const char *str)
Writes a static string that is stored in program memory.
Definition: Terminal.cpp:314
+
virtual void execute()
Executes the command in the buffer.
Definition: Shell.cpp:613
+
static size_t utf8Format(uint8_t *buffer, long code)
Formats a Unicode code point in a buffer in the UTF-8 encoding.
Definition: Terminal.cpp:1334
+
static size_t utf8Length(long code)
Determines the length of a Unicode code point in the UTF-8 encoding.
Definition: Terminal.cpp:1302
+
virtual void execute()
Executes the command in the buffer.
Definition: Shell.cpp:1057
+
void end()
Ends terminal operations on an underlying stream.
Definition: Terminal.cpp:198
+
int readKey()
Reads the next key that was typed on this terminal.
Definition: Terminal.cpp:387
+
Convenience class that encapsulates an array of shell command arguments.
Definition: Shell.h:119
+
void end()
Ends shell processing on the underlying stream.
Definition: Shell.cpp:262
+
static bool isWideCharacter(long code)
Determine if a Unicode character is wide.
Definition: Terminal.cpp:1247
+
virtual ~Shell()
Destroys this Shell object.
Definition: Shell.cpp:141
+
int userid() const
Gets the user identifier for the currently logged in user, or -1 if there is no user logged in curren...
Definition: Shell.h:79
+
+ + + + diff --git a/Shell_8h_source.html b/Shell_8h_source.html new file mode 100644 index 00000000..969db5b2 --- /dev/null +++ b/Shell_8h_source.html @@ -0,0 +1,281 @@ + + + + + + +ArduinoLibs: Shell.h Source File + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + +
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
+ + +
+ +
+ + +
+
+
+
Shell.h
+
+
+
1 /*
+
2  * Copyright (C) 2016 Southern Storm Software, Pty Ltd.
+
3  *
+
4  * Permission is hereby granted, free of charge, to any person obtaining a
+
5  * copy of this software and associated documentation files (the "Software"),
+
6  * to deal in the Software without restriction, including without limitation
+
7  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+
8  * and/or sell copies of the Software, and to permit persons to whom the
+
9  * Software is furnished to do so, subject to the following conditions:
+
10  *
+
11  * The above copyright notice and this permission notice shall be included
+
12  * in all copies or substantial portions of the Software.
+
13  *
+
14  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+
15  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
16  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
17  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
18  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
19  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
20  * DEALINGS IN THE SOFTWARE.
+
21  */
+
22 
+
23 #ifndef SHELL_h
+
24 #define SHELL_h
+
25 
+
26 #include "Terminal.h"
+
27 #include <Client.h>
+
28 
+
29 class Shell;
+
30 class ShellArguments;
+
31 class LoginShell;
+
32 
+
33 #if defined(__arm__)
+
34 #define SHELL_MAX_CMD_LEN 256
+
35 #else
+
36 #define SHELL_MAX_CMD_LEN 64
+
37 #endif
+
38 
+
39 typedef void (*ShellCommandFunc)(Shell &shell, int argc, const ShellArguments &argv);
+
40 
+
43 typedef struct
+
44 {
+
45  const char *name;
+
46  const char *help;
+
47  ShellCommandFunc func;
+
48 
+
49 } ShellCommandInfo;
+
50 
+
51 class ShellCommandRegister
+
52 {
+
53 public:
+
54  inline ShellCommandRegister(const ShellCommandInfo *_info);
+
55 
+
56  const ShellCommandInfo *info;
+
57  ShellCommandRegister *next;
+
58 };
+
59 
+
62 class Shell : public Terminal
+
63 {
+
64 public:
+
65  Shell();
+
66  virtual ~Shell();
+
67 
+
68  bool begin(Stream &stream, size_t maxHistory = 0, Terminal::Mode mode = Serial);
+
69  bool begin(Client &client, size_t maxHistory = 0, Terminal::Mode mode = Telnet);
+
70  void end();
+
71 
+
72  void loop();
+
73 
+
74  static void registerCommand(ShellCommandRegister *cmd);
+
75 
+
76  const char *prompt() const { return prom; }
+
77  void setPrompt(const char *prompt) { prom = prompt; }
+
78 
+
79  int userid() const { return uid; }
+
80  void setUserid(int userid) { uid = userid; }
+
81 
+
82  void help();
+
83  void exit();
+
84 
+
85 protected:
+
86  virtual void beginSession();
+
87  virtual void printPrompt();
+
88  virtual void execute();
+
89 
+
90 private:
+
91  char buffer[SHELL_MAX_CMD_LEN];
+
92  size_t curStart;
+
93  size_t curLen;
+
94  size_t curMax;
+
95  char *history;
+
96  size_t historyWrite;
+
97  size_t historyRead;
+
98  size_t historySize;
+
99  const char *prom;
+
100  bool isClient;
+
101  uint8_t lineMode;
+
102  int uid;
+
103  unsigned long timer;
+
104 
+
105  // Disable copy constructor and operator=().
+
106  Shell(const Shell &other) {}
+
107  Shell &operator=(const Shell &) { return *this; }
+
108 
+
109  bool beginShell(Stream &stream, size_t maxHistory, Terminal::Mode mode);
+
110  bool execute(const ShellArguments &argv);
+
111  void executeBuiltin(const char *cmd);
+
112  void clearCharacters(size_t len);
+
113  void changeHistory(bool up);
+
114  void clearHistory();
+
115 
+
116  friend class LoginShell;
+
117 };
+
118 
+ +
120 {
+
121  friend class Shell;
+
122 private:
+
123  ShellArguments(char *buffer, size_t len);
+
124  ~ShellArguments() {}
+
125 public:
+
126 
+
127  int count() const { return argc; }
+
128  const char *operator[](int index) const;
+
129 
+
130 private:
+
131  const char *line;
+
132  size_t size;
+
133  int argc;
+
134  mutable int currentIndex;
+
135  mutable size_t currentPosn;
+
136 
+
137  // Disable copy constructor and operator=().
+
138  ShellArguments(const ShellArguments &other) {}
+
139  ShellArguments &operator=(const ShellArguments &) { return *this; }
+
140 };
+
141 
+
144 inline ShellCommandRegister::ShellCommandRegister(const ShellCommandInfo *_info)
+
145  : info(_info)
+
146  , next(0)
+
147 {
+ +
149 }
+
150 
+
153 #define ShellCommand(name,help,function) \
+
154  static char const shell_id_##name[] PROGMEM = #name; \
+
155  static char const shell_help_##name[] PROGMEM = help; \
+
156  static ShellCommandInfo const shell_info_##name PROGMEM = { \
+
157  shell_id_##name, \
+
158  shell_help_##name, \
+
159  (function) \
+
160  }; \
+
161  static ShellCommandRegister shell_cmd_##name(&shell_info_##name)
+
162 
+
163 #endif
+
const char * operator[](int index) const
Gets a specific argument for the command.
Definition: Shell.cpp:927
+
virtual void beginSession()
Begins a login session.
Definition: Shell.cpp:594
+
void help()
Displays help for all supported commands.
Definition: Shell.cpp:542
+
bool begin(Stream &stream, size_t maxHistory=0, Terminal::Mode mode=Serial)
Begin shell handling on an underlying character stream.
Definition: Shell.cpp:176
+
virtual void printPrompt()
Prints the current prompt string.
Definition: Shell.cpp:603
+
static void registerCommand(ShellCommandRegister *cmd)
Registers a command with the shell.
Definition: Shell.cpp:472
+
Operates the terminal in serial mode.
Definition: Terminal.h:44
+
void exit()
Exit from the shell back to the login prompt.
Definition: Shell.cpp:577
+
Operates the terminal in telnet mode.
Definition: Terminal.h:45
+
Terminal::Mode mode() const
Returns the mode this terminal is operating in, Serial or Telnet.
Definition: Terminal.h:52
+
void loop()
Performs regular activities on the shell.
Definition: Shell.cpp:294
+
void setPrompt(const char *prompt)
Sets the prompt string to display in the shell.
Definition: Shell.h:77
+
Extended stream interface for terminal operations.
Definition: Terminal.h:36
+
Shell()
Constructs a new Shell instance.
Definition: Shell.cpp:122
+
Mode
Mode to operate in, Serial or Telnet.
Definition: Terminal.h:42
+
Stream * stream() const
Returns a pointer to the underlying Stream, or NULL if the stream has not been set with begin() yet...
Definition: Terminal.h:51
+
ShellCommandFunc
Type of functions that provide shell command handlers.
+
int count() const
Returns the number of arguments, including the name of the command.
Definition: Shell.h:127
+
const char * prompt() const
Gets the prompt string to display in the shell.
Definition: Shell.h:76
+
void setUserid(int userid)
Sets the user identifier for the currently logged in user.
Definition: Shell.h:80
+
virtual void execute()
Executes the command in the buffer.
Definition: Shell.cpp:613
+
Convenience class that encapsulates an array of shell command arguments.
Definition: Shell.h:119
+
Command-line shell access via a login shell.
Definition: LoginShell.h:30
+
void end()
Ends shell processing on the underlying stream.
Definition: Shell.cpp:262
+
virtual ~Shell()
Destroys this Shell object.
Definition: Shell.cpp:141
+
Command-line shell access.
Definition: Shell.h:62
+
int userid() const
Gets the user identifier for the currently logged in user, or -1 if there is no user logged in curren...
Definition: Shell.h:79
+
+ + + + diff --git a/SoftI2C_8cpp_source.html b/SoftI2C_8cpp_source.html index b32996b9..848c4aab 100644 --- a/SoftI2C_8cpp_source.html +++ b/SoftI2C_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -283,7 +283,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/SoftI2C_8h_source.html b/SoftI2C_8h_source.html index c9400a6a..7ed9a810 100644 --- a/SoftI2C_8h_source.html +++ b/SoftI2C_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -157,7 +157,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/SpeckSmall_8cpp_source.html b/SpeckSmall_8cpp_source.html index 415c2700..9dd084fe 100644 --- a/SpeckSmall_8cpp_source.html +++ b/SpeckSmall_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -715,7 +715,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/SpeckSmall_8h_source.html b/SpeckSmall_8h_source.html index f446d2fb..5a15f48e 100644 --- a/SpeckSmall_8h_source.html +++ b/SpeckSmall_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -141,7 +141,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/SpeckTiny_8cpp_source.html b/SpeckTiny_8cpp_source.html index 076a7bb9..d3901398 100644 --- a/SpeckTiny_8cpp_source.html +++ b/SpeckTiny_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -596,7 +596,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/SpeckTiny_8h_source.html b/SpeckTiny_8h_source.html index 863a8d30..de2a4549 100644 --- a/SpeckTiny_8h_source.html +++ b/SpeckTiny_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -154,7 +154,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Speck_8cpp_source.html b/Speck_8cpp_source.html index a42c6f37..0d0031e8 100644 --- a/Speck_8cpp_source.html +++ b/Speck_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -679,7 +679,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/Speck_8h_source.html b/Speck_8h_source.html index 6670eed1..ec866be4 100644 --- a/Speck_8h_source.html +++ b/Speck_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -149,7 +149,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/TelnetDefs_8h_source.html b/TelnetDefs_8h_source.html new file mode 100644 index 00000000..f96f2805 --- /dev/null +++ b/TelnetDefs_8h_source.html @@ -0,0 +1,213 @@ + + + + + + +ArduinoLibs: TelnetDefs.h Source File + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + +
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
+ + +
+ +
+ + +
+
+
+
TelnetDefs.h
+
+
+
1 /*
+
2  * Copyright (C) 2016 Southern Storm Software, Pty Ltd.
+
3  *
+
4  * Permission is hereby granted, free of charge, to any person obtaining a
+
5  * copy of this software and associated documentation files (the "Software"),
+
6  * to deal in the Software without restriction, including without limitation
+
7  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+
8  * and/or sell copies of the Software, and to permit persons to whom the
+
9  * Software is furnished to do so, subject to the following conditions:
+
10  *
+
11  * The above copyright notice and this permission notice shall be included
+
12  * in all copies or substantial portions of the Software.
+
13  *
+
14  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+
15  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
16  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
17  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
18  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
19  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
20  * DEALINGS IN THE SOFTWARE.
+
21  */
+
22 
+
23 #ifndef TELNET_DEFS_h
+
24 #define TELNET_DEFS_h
+
25 
+
26 // References:
+
27 // https://tools.ietf.org/html/rfc854
+
28 // http://www.iana.org/assignments/telnet-options/telnet-options.xhtml
+
29 
+
30 namespace TelnetDefs
+
31 {
+
32 
+
34 enum Command
+
35 {
+
36  EndOfFile = 236,
+
37  Suspend = 237,
+
38  Abort = 238,
+
39  EndOfRecord = 239,
+
40  SubEnd = 240,
+
41  NOP = 241,
+
42  DataMark = 242,
+
43  Break = 243,
+
44  Interrupt = 244,
+
45  AbortOutput = 245,
+
46  AreYouThere = 246,
+
47  EraseChar = 247,
+
48  EraseLine = 248,
+
49  GoAhead = 249,
+
50  SubStart = 250,
+
51  WILL = 251,
+
52  WONT = 252,
+
53  DO = 253,
+
54  DONT = 254,
+
55  IAC = 255
+
56 };
+
57 
+
59 enum Option
+
60 {
+
61  Binary = 0,
+
62  Echo = 1,
+
63  Reconnection = 2,
+
64  SuppressGoAhead = 3,
+
65  ApproxMsgSize = 4,
+
66  Status = 5,
+
67  TimingMark = 6,
+
68  RemoteTransmitEcho = 7,
+
69  LineWidth = 8,
+
70  PageSize = 9,
+
71  CarriageReturn = 10,
+
72  HorzTabStops = 11,
+
73  HorzTabStopDisp = 12,
+
74  FormFeed = 13,
+
75  VertTabStops = 14,
+
76  VertTabStopDisp = 15,
+
77  LineFeed = 16,
+
78  ExtendedASCII = 17,
+
79  Logout = 18,
+
80  ByteMacro = 19,
+
81  DataEntryTerminal = 20,
+
82  SUPDUP = 21,
+
83  SUPDUPOutput = 22,
+
84  SendLocation = 23,
+
85  TerminalType = 24,
+
86  EndOfRecordOption = 25,
+
87  TACACSUserId = 26,
+
88  OutputMarking = 27,
+
89  TerminalLocation = 28,
+
90  Telnet3270Regime = 29,
+
91  X3Pad = 30,
+
92  WindowSize = 31,
+
93  Speed = 32,
+
94  RemoteFlowControl = 33,
+
95  Linemode = 34,
+
96  XDisplay = 35,
+
97  EnvironmentOld = 36,
+
98  Authentication = 37,
+
99  Encryption = 38,
+
100  Environment = 39,
+
101  TN3270E = 40,
+
102  XAUTH = 41,
+
103  Charset = 42,
+
104  RemoteSerialPort = 43,
+
105  ComPortControl = 44,
+
106  SuppressLocalEcho = 45,
+
107  StartTLS = 46,
+
108  Kermit = 47,
+
109  SendURL = 48,
+
110  ForwardX = 49,
+
111  Extended = 255
+
112 };
+
113 
+
114 };
+
115 
+
116 #endif
+
+ + + + diff --git a/Terminal_8cpp_source.html b/Terminal_8cpp_source.html new file mode 100644 index 00000000..81510583 --- /dev/null +++ b/Terminal_8cpp_source.html @@ -0,0 +1,1045 @@ + + + + + + +ArduinoLibs: Terminal.cpp Source File + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + +
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
+ + +
+ +
+ + +
+
+
+
Terminal.cpp
+
+
+
1 /*
+
2  * Copyright (C) 2016 Southern Storm Software, Pty Ltd.
+
3  *
+
4  * Permission is hereby granted, free of charge, to any person obtaining a
+
5  * copy of this software and associated documentation files (the "Software"),
+
6  * to deal in the Software without restriction, including without limitation
+
7  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+
8  * and/or sell copies of the Software, and to permit persons to whom the
+
9  * Software is furnished to do so, subject to the following conditions:
+
10  *
+
11  * The above copyright notice and this permission notice shall be included
+
12  * in all copies or substantial portions of the Software.
+
13  *
+
14  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+
15  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
16  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
17  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
18  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
19  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
20  * DEALINGS IN THE SOFTWARE.
+
21  */
+
22 
+
23 #include "Terminal.h"
+
24 #include "TelnetDefs.h"
+
25 
+
100 // States for the key recognition state machine.
+
101 #define STATE_INIT 0 // Initial state.
+
102 #define STATE_CR 1 // Last character was CR, eat following LF.
+
103 #define STATE_ESC 2 // Last character was ESC.
+
104 #define STATE_MATCH 3 // Matching an escape sequence.
+
105 #define STATE_UTF8 4 // Recognizing a UTF-8 sequence.
+
106 #define STATE_IAC 5 // Recognizing telnet command after IAC (0xFF).
+
107 #define STATE_WILL 6 // Waiting for option code for WILL command.
+
108 #define STATE_WONT 7 // Waiting for option code for WONT command.
+
109 #define STATE_DO 8 // Waiting for option code for DO command.
+
110 #define STATE_DONT 9 // Waiting for option code for DONT command.
+
111 #define STATE_SB 10 // Option sub-negotiation.
+
112 #define STATE_SB_IAC 11 // Option sub-negotiation, byte after IAC.
+
113 
+
114 // Number of milliseconds to wait after an ESC character before
+
115 // concluding that it is KEY_ESC rather than an escape sequence.
+
116 #define ESC_TIMEOUT_MS 40
+
117 
+
118 // Number of milliseconds to wait for a new character within an
+
119 // escape sequence before concluding that the sequence was invalid
+
120 // or truncated, or not actually an escape sequence at all.
+
121 #define SEQ_TIMEOUT_MS 200
+
122 
+ +
134  : _stream(0)
+
135  , ucode(-1)
+
136  , ncols(80)
+
137  , nrows(24)
+
138  , timer(0)
+
139  , offset(0)
+
140  , state(STATE_INIT)
+
141  , utf8len(0)
+
142  , mod(Terminal::Serial)
+
143  , flags(0)
+
144 {
+
145 }
+
146 
+ +
151 {
+
152 }
+
153 
+
183 void Terminal::begin(Stream &stream, Mode mode)
+
184 {
+
185  _stream = &stream;
+
186  ucode = -1;
+
187  state = STATE_INIT;
+
188  flags = 0;
+
189  mod = mode;
+
190 }
+
191 
+ +
199 {
+
200  _stream = 0;
+
201 }
+
202 
+ +
229 {
+
230  return _stream ? _stream->available() : 0;
+
231 }
+
232 
+ +
241 {
+
242  return _stream ? _stream->peek() : -1;
+
243 }
+
244 
+ +
262 {
+
263  // Clear the key recognition state because we are bypassing readKey().
+
264  state = STATE_INIT;
+
265  ucode = -1;
+
266 
+
267  // Read the next byte from the underlying stream.
+
268  return _stream ? _stream->read() : -1;
+
269 }
+
270 
+ +
275 {
+
276  if (_stream)
+
277  _stream->flush();
+
278 }
+
279 
+
286 size_t Terminal::write(uint8_t c)
+
287 {
+
288  return _stream ? _stream->write(c) : 0;
+
289 }
+
290 
+
299 size_t Terminal::write(const uint8_t *buffer, size_t size)
+
300 {
+
301  return _stream ? _stream->write(buffer, size) : 0;
+
302 }
+
303 
+
314 void Terminal::writeProgMem(const char *str)
+
315 {
+
316  uint8_t buffer[16];
+
317  uint8_t posn;
+
318  uint8_t ch;
+
319  if (!_stream || !str)
+
320  return;
+
321  posn = 0;
+
322  while ((ch = pgm_read_byte((const uint8_t *)str)) != 0) {
+
323  buffer[posn++] = ch;
+
324  if (posn == sizeof(buffer)) {
+
325  _stream->write(buffer, posn);
+
326  posn = 0;
+
327  }
+
328  ++str;
+
329  }
+
330  if (posn != 0)
+
331  _stream->write(buffer, posn);
+
332 }
+
333 
+
341 static bool escapeSequenceStart(int ch)
+
342 {
+
343  if (ch == '[' || ch == '?')
+
344  return true;
+
345  else if (ch >= 'A' && ch <= 'Z')
+
346  return true;
+
347  else
+
348  return false;
+
349 }
+
350 
+ +
388 {
+
389  int ch;
+
390 
+
391  // Bail out if there is no underlying stream.
+
392  if (!_stream)
+
393  return -1;
+
394 
+
395  // Read the next character and bail out if nothing yet. Some special
+
396  // peek-ahead handling is needed just after the ESC character.
+
397  if (state == STATE_ESC) {
+
398  ch = _stream->peek();
+
399  if (ch < 0) {
+
400  // We just saw an ESC. If there has been a timeout
+
401  // then the key is KEY_ESC rather than the start of a
+
402  // VT100 escape sequence.
+
403  if ((millis() - timer) >= ESC_TIMEOUT_MS) {
+
404  state = STATE_INIT;
+
405  ucode = 0x1B;
+
406  return KEY_ESC;
+
407  }
+
408  ucode = -1;
+
409  return -1;
+
410  } else if (!escapeSequenceStart(ch)) {
+
411  // The next character is not legitimate as the start of
+
412  // an escape sequence, so the ESC must have been KEY_ESC.
+
413  state = STATE_INIT;
+
414  ucode = 0x1B;
+
415  return KEY_ESC;
+
416  } else {
+
417  // Part of an escape sequence. Read the character properly.
+
418  ch = _stream->read();
+
419  }
+
420  } else {
+
421  // Read the next character without any peek-ahead.
+
422  ch = _stream->read();
+
423  }
+
424  if (ch < 0) {
+
425  if (state == STATE_MATCH && (millis() - timer) >= SEQ_TIMEOUT_MS) {
+
426  // Timeout while waiting for the next character in an
+
427  // escape sequence. Abort and return to the initial state.
+
428  state = STATE_INIT;
+
429  }
+
430  ucode = -1;
+
431  return -1;
+
432  }
+
433 
+
434  // Determine what to do based on the key recognition state.
+
435  switch (state) {
+
436  case STATE_CR:
+
437  // We just saw a CR, so check for CRLF and eat the LF.
+
438  state = STATE_INIT;
+
439  if (ch == 0x0A) {
+
440  ucode = -1;
+
441  return -1;
+
442  } else if (ch == 0x00 && mod == Telnet) {
+
443  // In telnet mode, CR NUL is a literal carriage return,
+
444  // separate from the newline sequence CRLF. Eat the NUL.
+
445  // We already reported KEY_RETURN for the CR character.
+
446  ucode = -1;
+
447  return -1;
+
448  }
+
449  // Fall through to the next case.
+
450 
+
451  case STATE_INIT:
+
452  if (ch >= 0x20 && ch <= 0x7E) {
+
453  // Printable ASCII character.
+
454  state = STATE_INIT;
+
455  ucode = ch;
+
456  return ch;
+
457  } else if (ch == 0x1B) {
+
458  // Start of an escape sequence, or the escape character itself.
+
459  state = STATE_ESC;
+
460  timer = millis();
+
461  } else if (ch == 0x0D) {
+
462  // CR which may be followed by an LF.
+
463  state = STATE_CR;
+
464  ucode = ch;
+
465  return KEY_RETURN;
+
466  } else if (ch == 0x0A) {
+
467  // LF on its own without a preceding CR.
+
468  ucode = ch;
+
469  return KEY_RETURN;
+
470  } else if (ch == 0x08 || ch == 0x7F) {
+
471  // Backspace or DEL character.
+
472  state = STATE_INIT;
+
473  ucode = ch;
+
474  return KEY_BACKSPACE;
+
475  } else if (ch == 0x09) {
+
476  // TAB character.
+
477  state = STATE_INIT;
+
478  ucode = ch;
+
479  return KEY_TAB;
+
480  } else if (ch < 0x80) {
+
481  // Some other ASCII control character.
+
482  state = STATE_INIT;
+
483  ucode = ch;
+
484  return ch;
+
485  } else if (ch >= 0xC1 && ch <= 0xDF) {
+
486  // Two-byte UTF-8 sequence.
+
487  offset = ch & 0x1F;
+
488  utf8len = 2;
+
489  state = STATE_UTF8;
+
490  } else if (ch >= 0xE1 && ch <= 0xEF) {
+
491  // Three-byte UTF-8 sequence.
+
492  offset = ch & 0x0F;
+
493  utf8len = 3;
+
494  state = STATE_UTF8;
+
495  } else if (ch >= 0xF1 && ch <= 0xF7) {
+
496  // Four-byte UTF-8 sequence.
+
497  offset = ch & 0x07;
+
498  utf8len = 4;
+
499  state = STATE_UTF8;
+
500  } else if (ch == 0xFF && mod == Telnet) {
+
501  // Start of a telnet command (IAC byte).
+
502  state = STATE_IAC;
+
503  }
+
504  break;
+
505 
+
506  case STATE_ESC:
+
507  // Next character just after the ESC. Start the escape
+
508  // sequence matching engine at offset zero in the keymap table.
+
509  state = STATE_MATCH;
+
510  offset = 0;
+
511  // Fall through to the next case.
+
512 
+
513  case STATE_MATCH:
+
514  // In the middle of matching an escape sequence.
+
515  if (ch == 0x1B) {
+
516  // ESC character seen in the middle of an escape sequence.
+
517  // The previous escape sequence is invalid so abort and restart.
+
518  state = STATE_ESC;
+
519  timer = millis();
+
520  break;
+
521  }
+
522  ch = matchEscape(ch);
+
523  if (ch == -1) {
+
524  // Need more characters before knowing what this is.
+
525  timer = millis();
+
526  } else if (ch == -2) {
+
527  // Invalid escape sequence so abort and restart.
+
528  state = STATE_INIT;
+
529  } else if (ch < 0x80) {
+
530  // Escape sequence corresponds to a normal ASCII character.
+
531  state = STATE_INIT;
+
532  ucode = ch;
+
533  return ch;
+
534  } else {
+
535  // Extended keycode for an arrow or function key.
+
536  state = STATE_INIT;
+
537  ucode = -1;
+
538  return ch;
+
539  }
+
540  break;
+
541 
+
542  case STATE_UTF8:
+
543  // Recognize a multi-byte UTF-8 character encoding.
+
544  if ((ch & 0xC0) == 0x80) {
+
545  if (utf8len <= 2) {
+
546  // Final character in the sequence.
+
547  ucode = (((long)offset) << 6) | (ch & 0x3F);
+
548  state = STATE_INIT;
+
549  if (ucode > 0x10FFFFL)
+
550  break; // The code point is out of range.
+
551  return KEY_UNICODE;
+
552  } else {
+
553  // More characters still yet to come.
+
554  --utf8len;
+
555  offset = (offset << 6) | (ch & 0x3F);
+
556  }
+
557  } else {
+
558  // This character is invalid as part of a UTF-8 sequence.
+
559  state = STATE_INIT;
+
560  }
+
561  break;
+
562 
+
563  case STATE_IAC:
+
564  // Telnet command byte just after an IAC (0xFF) character.
+
565  switch (ch) {
+
566  case TelnetDefs::EndOfFile:
+
567  // Convert EOF into CTRL-D.
+
568  state = STATE_INIT;
+
569  ucode = 0x04;
+
570  return 0x04;
+
571 
+
572  case TelnetDefs::EndOfRecord:
+
573  // Convert end of record markers into CR.
+
574  state = STATE_INIT;
+
575  ucode = 0x0D;
+
576  return KEY_RETURN;
+
577 
+
578  case TelnetDefs::Interrupt:
+
579  // Convert interrupt into CTRL-C.
+
580  state = STATE_INIT;
+
581  ucode = 0x03;
+
582  return 0x03;
+
583 
+
584  case TelnetDefs::EraseChar:
+
585  // Convert erase character into DEL.
+
586  state = STATE_INIT;
+
587  ucode = 0x7F;
+
588  return KEY_BACKSPACE;
+
589 
+
590  case TelnetDefs::EraseLine:
+
591  // Convert erase line into CTRL-U.
+
592  state = STATE_INIT;
+
593  ucode = 0x15;
+
594  return 0x15;
+
595 
+
596  case TelnetDefs::SubStart:
+
597  // Option sub-negotiation.
+
598  utf8len = 0;
+
599  state = STATE_SB;
+
600  break;
+
601 
+
602  case TelnetDefs::WILL:
+
603  // Option negotiation, WILL command.
+
604  state = STATE_WILL;
+
605  break;
+
606 
+
607  case TelnetDefs::WONT:
+
608  // Option negotiation, WONT command.
+
609  state = STATE_WONT;
+
610  break;
+
611 
+
612  case TelnetDefs::DO:
+
613  // Option negotiation, DO command.
+
614  state = STATE_DO;
+
615  break;
+
616 
+
617  case TelnetDefs::DONT:
+
618  // Option negotiation, DONT command.
+
619  state = STATE_DONT;
+
620  break;
+
621 
+
622  case TelnetDefs::IAC:
+
623  // IAC followed by IAC is the literal byte 0xFF,
+
624  // but that isn't valid UTF-8 so we just drop it.
+
625  state = STATE_INIT;
+
626  break;
+
627 
+
628  default:
+
629  // Everything else is treated as a NOP.
+
630  state = STATE_INIT;
+
631  break;
+
632  }
+
633  break;
+
634 
+
635  case STATE_WILL:
+
636  // Telnet option negotiation, WILL command. Note: We don't do any
+
637  // loop detection. We assume that the client will eventually break
+
638  // the loop as it probably has more memory than us to store state.
+
639  if (ch == TelnetDefs::WindowSize ||
+
640  ch == TelnetDefs::RemoteFlowControl) {
+
641  // Send a DO command in response - we accept this option.
+
642  telnetCommand(TelnetDefs::DO, ch);
+
643  } else {
+
644  // Send a DONT command in response - we don't accept this option.
+
645  telnetCommand(TelnetDefs::DONT, ch);
+
646  }
+
647  if (!(flags & 0x01)) {
+
648  // The first time we see a WILL command from the client we
+
649  // send a request back saying that we will handle echoing.
+
650  flags |= 0x01;
+
651  telnetCommand(TelnetDefs::WILL, TelnetDefs::Echo);
+
652  }
+
653  state = STATE_INIT;
+
654  break;
+
655 
+
656  case STATE_WONT:
+
657  case STATE_DONT:
+
658  // Telnet option negotiation, WONT/DONT command. The other side
+
659  // is telling us that it does not understand this option or wants
+
660  // us to stop using it. For now there is nothing to do.
+
661  state = STATE_INIT;
+
662  break;
+
663 
+
664  case STATE_DO:
+
665  // Telnet option negotiation, DO command. Note: Other than Echo
+
666  // we don't do any loop detection. We assume that the client will
+
667  // break the loop as it probably has more memory than us to store state.
+
668  if (ch == TelnetDefs::Echo) {
+
669  // Special handling needed for Echo - don't say WILL again
+
670  // when the client acknowledges us with a DO command.
+
671  } else if (ch == TelnetDefs::SuppressGoAhead) {
+
672  // Send a WILL command in response - we accept this option.
+
673  telnetCommand(TelnetDefs::WILL, ch);
+
674  } else {
+
675  // Send a WONT command in response - we don't accept this option.
+
676  telnetCommand(TelnetDefs::WONT, ch);
+
677  }
+
678  state = STATE_INIT;
+
679  break;
+
680 
+
681  case STATE_SB:
+
682  // Telnet option sub-negotiation. Collect up all bytes and
+
683  // then execute the option once "IAC SubEnd" is seen.
+
684  if (ch == TelnetDefs::IAC) {
+
685  // IAC byte, which will be followed by either IAC or SubEnd.
+
686  state = STATE_SB_IAC;
+
687  break;
+
688  }
+
689  if (utf8len < sizeof(sb))
+
690  sb[utf8len++] = ch;
+
691  break;
+
692 
+
693  case STATE_SB_IAC:
+
694  // Telnet option sub-negotiation, byte after IAC.
+
695  if (ch == TelnetDefs::IAC) {
+
696  // Two IAC bytes in a row is a single escaped 0xFF byte.
+
697  if (utf8len < sizeof(sb))
+
698  sb[utf8len++] = 0xFF;
+
699  state = STATE_SB;
+
700  break;
+
701  } else if (ch == TelnetDefs::SubEnd) {
+
702  // End of the sub-negotiation field. Handle window size changes.
+
703  if (utf8len >= 5 && sb[0] == TelnetDefs::WindowSize) {
+
704  int width = (((int)(sb[1])) << 8) | sb[2];
+
705  int height = (((int)(sb[3])) << 8) | sb[4];
+
706  if (!width) // Zero width or height means "unspecified".
+
707  width = ncols;
+
708  if (!height)
+
709  height = nrows;
+
710  if (setWindowSize(width, height)) {
+
711  // The window size has changed; notify the caller.
+
712  ucode = -1;
+
713  state = STATE_INIT;
+
714  return KEY_WINSIZE;
+
715  }
+
716  }
+
717  }
+
718  state = STATE_INIT;
+
719  break;
+
720  }
+
721 
+
722  // If we get here, then we're still waiting for a full sequence.
+
723  ucode = -1;
+
724  return -1;
+
725 }
+
726 
+
757 size_t Terminal::writeUnicode(long code)
+
758 {
+
759  uint8_t utf8[4];
+
760  size_t size = utf8Format(utf8, code);
+
761  if (size > 0)
+
762  write(utf8, size);
+
763  return size;
+
764 }
+
765 
+
801 bool Terminal::setWindowSize(int columns, int rows)
+
802 {
+
803  // Sanity-check the range first.
+
804  if (columns < 1)
+
805  columns = 1;
+
806  else if (columns > 10000)
+
807  columns = 10000;
+
808  if (rows < 1)
+
809  rows = 1;
+
810  else if (rows > 10000)
+
811  rows = 10000;
+
812  if (ncols != columns || nrows != rows) {
+
813  ncols = columns;
+
814  nrows = rows;
+
815  return true;
+
816  } else {
+
817  return false;
+
818  }
+
819 }
+
820 
+ +
825 {
+
826  static char const escape[] PROGMEM = "\033[H\033[J";
+
827  writeProgMem(escape);
+
828 }
+
829 
+ +
834 {
+
835  static char const escape[] PROGMEM = "\033[K";
+
836  writeProgMem(escape);
+
837 }
+
838 
+
839 // Writes a decimal number to a buffer.
+
840 static void writeNumber(uint8_t *buf, uint8_t &posn, int value)
+
841 {
+
842  int divisor = 10000;
+
843  bool haveDigits = false;
+
844  while (divisor >= 1) {
+
845  int digit = value / divisor;
+
846  if (digit || haveDigits) {
+
847  buf[posn++] = '0' + digit;
+
848  haveDigits = true;
+
849  }
+
850  value %= divisor;
+
851  divisor /= 10;
+
852  }
+
853  if (!haveDigits) {
+
854  buf[posn++] = '0';
+
855  }
+
856 }
+
857 
+
866 void Terminal::cursorMove(int x, int y)
+
867 {
+
868  if (!_stream)
+
869  return;
+
870 
+
871  // Range check the arguments.
+
872  if (x < 0)
+
873  x = 0;
+
874  else if (x >= ncols)
+
875  x = ncols - 1;
+
876  if (y < 0)
+
877  y = 0;
+
878  else if (y >= nrows)
+
879  y = nrows - 1;
+
880 
+
881  // Format the command "ESC[row;colH" and send it.
+
882  uint8_t buffer[16];
+
883  uint8_t posn = 0;
+
884  buffer[posn++] = 0x1B;
+
885  buffer[posn++] = '[';
+
886  writeNumber(buffer, posn, y + 1);
+
887  buffer[posn++] = ';';
+
888  writeNumber(buffer, posn, x + 1);
+
889  buffer[posn++] = 'H';
+
890  _stream->write(buffer, posn);
+
891 }
+
892 
+ +
899 {
+
900  static char const escape[] PROGMEM = "\033[D";
+
901  writeProgMem(escape);
+
902 }
+
903 
+ +
910 {
+
911  static char const escape[] PROGMEM = "\033[C";
+
912  writeProgMem(escape);
+
913 }
+
914 
+ +
921 {
+
922  static char const escape[] PROGMEM = "\033[A";
+
923  writeProgMem(escape);
+
924 }
+
925 
+ +
932 {
+
933  static char const escape[] PROGMEM = "\033[B";
+
934  writeProgMem(escape);
+
935 }
+
936 
+ +
950 {
+
951  static char const escape[] PROGMEM = "\b \b";
+
952  writeProgMem(escape);
+
953 }
+
954 
+ +
961 {
+
962  static char const escape[] PROGMEM = "\033[L";
+
963  writeProgMem(escape);
+
964 }
+
965 
+ +
972 {
+
973  static char const escape[] PROGMEM = "\033[@";
+
974  writeProgMem(escape);
+
975 }
+
976 
+ +
983 {
+
984  static char const escape[] PROGMEM = "\033[M";
+
985  writeProgMem(escape);
+
986 }
+
987 
+ +
994 {
+
995  static char const escape[] PROGMEM = "\033[P";
+
996  writeProgMem(escape);
+
997 }
+
998 
+ +
1005 {
+
1006  static char const escape[] PROGMEM = "\033[S";
+
1007  writeProgMem(escape);
+
1008 }
+
1009 
+ +
1016 {
+
1017  static char const escape[] PROGMEM = "\033[T";
+
1018  writeProgMem(escape);
+
1019 }
+
1020 
+ +
1027 {
+
1028  static char const escape[] PROGMEM = "\033[0m";
+
1029  writeProgMem(escape);
+
1030 }
+
1031 
+ +
1038 {
+
1039  static char const escape[] PROGMEM = "\033[1m";
+
1040  writeProgMem(escape);
+
1041 }
+
1042 
+ +
1047 {
+
1048  static char const escape[] PROGMEM = "\033[4m";
+
1049  writeProgMem(escape);
+
1050 }
+
1051 
+ +
1056 {
+
1057  static char const escape[] PROGMEM = "\033[5m";
+
1058  writeProgMem(escape);
+
1059 }
+
1060 
+ +
1065 {
+
1066  static char const escape[] PROGMEM = "\033[7m";
+
1067  writeProgMem(escape);
+
1068 }
+
1069 
+ +
1175 {
+
1176  uint8_t code = (fg & 0x07);
+
1177  uint8_t bold = (fg & 0x08) ? 1 : 0;
+
1178  if (!_stream)
+
1179  return;
+
1180  uint8_t buffer[16];
+
1181  uint8_t posn = 0;
+
1182  buffer[posn++] = 0x1B;
+
1183  buffer[posn++] = '[';
+
1184  buffer[posn++] = '0'; // reset all attributes first
+
1185  buffer[posn++] = ';';
+
1186  buffer[posn++] = '3';
+
1187  buffer[posn++] = '0' + code;
+
1188  if (bold) {
+
1189  buffer[posn++] = ';';
+
1190  buffer[posn++] = '1';
+
1191  }
+
1192  buffer[posn++] = 'm';
+
1193  _stream->write(buffer, posn);
+
1194 }
+
1195 
+ +
1207 {
+
1208  uint8_t codefg = (fg & 0x07);
+
1209  uint8_t boldfg = (fg & 0x08) ? 1 : 0;
+
1210  uint8_t codebg = (bg & 0x07);
+
1211  if (!_stream)
+
1212  return;
+
1213  uint8_t buffer[16];
+
1214  uint8_t posn = 0;
+
1215  buffer[posn++] = 0x1B;
+
1216  buffer[posn++] = '[';
+
1217  buffer[posn++] = '0'; // reset all attributes first
+
1218  buffer[posn++] = ';';
+
1219  buffer[posn++] = '3';
+
1220  buffer[posn++] = '0' + codefg;
+
1221  if (boldfg) {
+
1222  buffer[posn++] = ';';
+
1223  buffer[posn++] = '1';
+
1224  }
+
1225  buffer[posn++] = ';';
+
1226  buffer[posn++] = '4';
+
1227  buffer[posn++] = '0' + codebg;
+
1228  buffer[posn++] = 'm';
+
1229  _stream->write(buffer, posn);
+
1230 }
+
1231 
+ +
1248 {
+
1249  // This function was automatically generated by genwcwidth.c
+
1250  static unsigned char const range3000[32] PROGMEM = {
+
1251  0xF1, 0xFF, 0xF3, 0x3F, 0x01, 0x00, 0x01, 0x78,
+
1252  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+
1253  0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00,
+
1254  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88
+
1255  };
+
1256  static unsigned char const rangeFE00[64] PROGMEM = {
+
1257  0x00, 0x00, 0x80, 0x03, 0x00, 0x00, 0xE1, 0xFF,
+
1258  0x9F, 0x01, 0x00, 0x7F, 0x0C, 0x03, 0x00, 0x00,
+
1259  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+
1260  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+
1261  0x10, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8,
+
1262  0x01, 0x00, 0x00, 0xF8, 0x01, 0x00, 0x00, 0x00,
+
1263  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+
1264  0x00, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00
+
1265  };
+
1266  unsigned c;
+
1267  if (code < 0x2300) {
+
1268  return false;
+
1269  } else if (code >= 0x3000 && code <= 0x30FF) {
+
1270  c = (unsigned)(code - 0x3000);
+
1271  return (pgm_read_byte(range3000 + (c / 8)) & (1 << (c % 8))) != 0;
+
1272  } else if (code >= 0xFE00 && code <= 0xFFFF) {
+
1273  c = (unsigned)(code - 0xFE00);
+
1274  return (pgm_read_byte(rangeFE00 + (c / 8)) & (1 << (c % 8))) != 0;
+
1275  } else if (code >= 0x3400 && code <= 0x4DBF) {
+
1276  return true;
+
1277  } else if (code >= 0x4E00 && code <= 0x9FFF) {
+
1278  return true;
+
1279  } else if (code >= 0xF900 && code <= 0xFAFF) {
+
1280  return true;
+
1281  } else if (code >= 0x20000 && code <= 0x2FFFD) {
+
1282  return true;
+
1283  } else if (code >= 0x30000 && code <= 0x3FFFD) {
+
1284  return true;
+
1285  } else if (code == 0x2329 ||
+
1286  code == 0x232A ||
+
1287  code == 0x3250 ||
+
1288  code == 0xA015) {
+
1289  return true;
+
1290  }
+
1291  return false;
+
1292 }
+
1302 size_t Terminal::utf8Length(long code)
+
1303 {
+
1304  // Reference: https://tools.ietf.org/html/rfc3629
+
1305  if (code < 0) {
+
1306  return 0;
+
1307  } else if (code <= 0x7FL) {
+
1308  return 1;
+
1309  } else if (code <= 0x07FFL) {
+
1310  return 2;
+
1311  } else if (code >= 0xD800L && code <= 0xDFFF) {
+
1312  // UTF-16 surrogate pairs are not valid in UTF-8.
+
1313  return 0;
+
1314  } else if (code <= 0xFFFFL) {
+
1315  return 3;
+
1316  } else if (code <= 0x10FFFFL) {
+
1317  return 4;
+
1318  } else {
+
1319  return 0;
+
1320  }
+
1321 }
+
1322 
+
1334 size_t Terminal::utf8Format(uint8_t *buffer, long code)
+
1335 {
+
1336  // Reference: https://tools.ietf.org/html/rfc3629
+
1337  if (code < 0) {
+
1338  return 0;
+
1339  } else if (code <= 0x7FL) {
+
1340  buffer[0] = (uint8_t)code;
+
1341  return 1;
+
1342  } else if (code <= 0x07FFL) {
+
1343  buffer[0] = 0xC0 | (uint8_t)(code >> 6);
+
1344  buffer[1] = 0x80 | (((uint8_t)code) & 0x3F);
+
1345  return 2;
+
1346  } else if (code >= 0xD800L && code <= 0xDFFF) {
+
1347  // UTF-16 surrogate pairs are not valid in UTF-8.
+
1348  return 0;
+
1349  } else if (code <= 0xFFFFL) {
+
1350  buffer[0] = 0xE0 | (uint8_t)(code >> 12);
+
1351  buffer[1] = 0x80 | (((uint8_t)(code >> 6)) & 0x3F);
+
1352  buffer[2] = 0x80 | (((uint8_t)code) & 0x3F);
+
1353  return 3;
+
1354  } else if (code <= 0x10FFFFL) {
+
1355  buffer[0] = 0xF0 | (uint8_t)(code >> 18);
+
1356  buffer[1] = 0x80 | (((uint8_t)(code >> 12)) & 0x3F);
+
1357  buffer[2] = 0x80 | (((uint8_t)(code >> 6)) & 0x3F);
+
1358  buffer[3] = 0x80 | (((uint8_t)code) & 0x3F);
+
1359  return 4;
+
1360  } else {
+
1361  return 0;
+
1362  }
+
1363 }
+
1364 
+
1365 // Keymap rule table. Compact representation of a recognition tree.
+
1366 // Each tree node is an array of entries of the following forms:
+
1367 // 0 End of this tree level.
+
1368 // ch code Leaf node: ASCII character (bit 7 clear) plus 8-bit keycode.
+
1369 // ch offset Interior node: ASCII character with the high bit set
+
1370 // plus a 16-bit offset to the first child node.
+
1371 // This table was generated with the "genkeymap" tool. Do not edit this
+
1372 // table but rather edit the tool and rebuild the table from it.
+
1373 static uint8_t const keymap[459] PROGMEM = {
+
1374  0xDB, 0x1A, 0x00, 0xCF, 0x57, 0x01, 0x41, 0xDA, 0x42, 0xD9, 0x43, 0xD7,
+
1375  0x44, 0xD8, 0xBF, 0xA2, 0x01, 0x50, 0xC2, 0x51, 0xC3, 0x52, 0xC4, 0x53,
+
1376  0xC5, 0x00, 0x41, 0xDA, 0x42, 0xD9, 0x43, 0xD7, 0x44, 0xD8, 0x48, 0xD2,
+
1377  0xB1, 0x42, 0x00, 0x46, 0xD5, 0xB4, 0xC9, 0x00, 0xB2, 0xCC, 0x00, 0xB3,
+
1378  0x2B, 0x01, 0xB5, 0x46, 0x01, 0xB6, 0x49, 0x01, 0xDB, 0x4C, 0x01, 0x5A,
+
1379  0x0B, 0x50, 0xD0, 0x47, 0xE5, 0x00, 0x7E, 0xD2, 0xB1, 0x5D, 0x00, 0xB2,
+
1380  0x6C, 0x00, 0xB3, 0x7B, 0x00, 0xB4, 0x88, 0x00, 0xB5, 0x95, 0x00, 0xB7,
+
1381  0xA2, 0x00, 0xB8, 0xAF, 0x00, 0xB9, 0xBC, 0x00, 0x00, 0x7E, 0xC2, 0xBB,
+
1382  0x65, 0x00, 0x5E, 0xFA, 0x00, 0xB2, 0x69, 0x00, 0x00, 0x7E, 0xF0, 0x00,
+
1383  0x7E, 0xC3, 0xBB, 0x74, 0x00, 0x5E, 0xFB, 0x00, 0xB2, 0x78, 0x00, 0x00,
+
1384  0x7E, 0xF1, 0x00, 0x7E, 0xC4, 0xBB, 0x81, 0x00, 0x00, 0xB2, 0x85, 0x00,
+
1385  0x00, 0x7E, 0xF2, 0x00, 0x7E, 0xC5, 0xBB, 0x8E, 0x00, 0x00, 0xB2, 0x92,
+
1386  0x00, 0x00, 0x7E, 0xF3, 0x00, 0x7E, 0xC6, 0xBB, 0x9B, 0x00, 0x00, 0xB2,
+
1387  0x9F, 0x00, 0x00, 0x7E, 0xF4, 0x00, 0x7E, 0xC7, 0xBB, 0xA8, 0x00, 0x00,
+
1388  0xB2, 0xAC, 0x00, 0x00, 0x7E, 0xF5, 0x00, 0x7E, 0xC8, 0xBB, 0xB5, 0x00,
+
1389  0x00, 0xB2, 0xB9, 0x00, 0x00, 0x7E, 0xF6, 0x00, 0x7E, 0xC9, 0xBB, 0xC2,
+
1390  0x00, 0x00, 0xB2, 0xC6, 0x00, 0x00, 0x7E, 0xF7, 0x00, 0x7E, 0xD5, 0x00,
+
1391  0x7E, 0xD1, 0xB0, 0xE7, 0x00, 0xB1, 0xF4, 0x00, 0xB3, 0x01, 0x01, 0xB4,
+
1392  0x10, 0x01, 0xB5, 0x1F, 0x01, 0xB6, 0x22, 0x01, 0xB8, 0x25, 0x01, 0xB9,
+
1393  0x28, 0x01, 0x00, 0x7E, 0xCA, 0xBB, 0xED, 0x00, 0x00, 0xB2, 0xF1, 0x00,
+
1394  0x00, 0x7E, 0xF8, 0x00, 0x7E, 0xCB, 0xBB, 0xFA, 0x00, 0x00, 0xB2, 0xFE,
+
1395  0x00, 0x00, 0x7E, 0xF9, 0x00, 0x7E, 0xCC, 0x24, 0xF8, 0xBB, 0x09, 0x01,
+
1396  0x00, 0xB2, 0x0D, 0x01, 0x00, 0x7E, 0xFA, 0x00, 0x7E, 0xCD, 0x24, 0xF9,
+
1397  0xBB, 0x18, 0x01, 0x00, 0xB2, 0x1C, 0x01, 0x00, 0x7E, 0xFB, 0x00, 0x7E,
+
1398  0xF0, 0x00, 0x7E, 0xF1, 0x00, 0x7E, 0xF2, 0x00, 0x7E, 0xF3, 0x00, 0x7E,
+
1399  0xD4, 0xB1, 0x3A, 0x01, 0xB2, 0x3D, 0x01, 0xB3, 0x40, 0x01, 0xB4, 0x43,
+
1400  0x01, 0x00, 0x7E, 0xF4, 0x00, 0x7E, 0xF5, 0x00, 0x7E, 0xF6, 0x00, 0x7E,
+
1401  0xF7, 0x00, 0x7E, 0xD3, 0x00, 0x7E, 0xD6, 0x00, 0x41, 0xC2, 0x42, 0xC3,
+
1402  0x43, 0xC4, 0x44, 0xC5, 0x45, 0xC6, 0x00, 0x41, 0xDA, 0x42, 0xD9, 0x43,
+
1403  0xD7, 0x44, 0xD8, 0x48, 0xD2, 0x46, 0xD5, 0x20, 0x20, 0x49, 0xB3, 0x4D,
+
1404  0xB0, 0x6A, 0x2A, 0x6B, 0x2B, 0x6C, 0x2C, 0x6D, 0x2D, 0x6E, 0x2E, 0x6F,
+
1405  0x2F, 0x70, 0x30, 0x71, 0x31, 0x72, 0x32, 0x73, 0x33, 0x74, 0x34, 0x75,
+
1406  0x35, 0x76, 0x36, 0x77, 0x37, 0x78, 0x38, 0x79, 0x39, 0x58, 0x3D, 0x50,
+
1407  0xC2, 0x51, 0xC3, 0x52, 0xC4, 0x53, 0xC5, 0xB2, 0x99, 0x01, 0x5A, 0x0B,
+
1408  0x00, 0x50, 0xF0, 0x51, 0xF1, 0x52, 0xF2, 0x53, 0xF3, 0x00, 0x20, 0x20,
+
1409  0x49, 0xB3, 0x4D, 0xB0, 0x6A, 0x2A, 0x6B, 0x2B, 0x6C, 0x2C, 0x6D, 0x2D,
+
1410  0x6E, 0x2E, 0x6F, 0x2F, 0x70, 0x30, 0x71, 0x31, 0x72, 0x32, 0x73, 0x33,
+
1411  0x74, 0x34, 0x75, 0x35, 0x76, 0x36, 0x77, 0x37, 0x78, 0x38, 0x79, 0x39,
+
1412  0x58, 0x3D, 0x00
+
1413 };
+
1414 
+
1422 int Terminal::matchEscape(int ch)
+
1423 {
+
1424  uint8_t kch;
+
1425  for (;;) {
+
1426  kch = pgm_read_byte(keymap + offset);
+
1427  if (!kch) {
+
1428  // No match at this level, so the escape sequence is invalid.
+
1429  break;
+
1430  } else if (kch & 0x80) {
+
1431  // Interior node.
+
1432  if ((kch & 0x7F) == ch) {
+
1433  // Interior node matches. Go down one tree level.
+
1434  offset = ((int)(pgm_read_byte(keymap + offset + 1))) |
+
1435  (((int)(pgm_read_byte(keymap + offset + 2))) << 8);
+
1436  return -1;
+
1437  }
+
1438  offset += 3;
+
1439  } else {
+
1440  // Leaf node.
+
1441  if (kch == (uint8_t)ch) {
+
1442  // We have found a match on a full escape sequence.
+
1443  return pgm_read_byte(keymap + offset + 1);
+
1444  }
+
1445  offset += 2;
+
1446  }
+
1447  }
+
1448  return -2;
+
1449 }
+
1450 
+
1457 void Terminal::telnetCommand(uint8_t type, uint8_t option)
+
1458 {
+
1459  uint8_t buf[3];
+
1460  buf[0] = (uint8_t)TelnetDefs::IAC;
+
1461  buf[1] = type;
+
1462  buf[2] = option;
+
1463  _stream->write(buf, 3);
+
1464 }
+
void insertChar()
Inserts a blank character at the cursor position.
Definition: Terminal.cpp:971
+
void cursorDown()
Moves the cursor down by one line.
Definition: Terminal.cpp:931
+
void insertLine()
Inserts a line at the cursor position.
Definition: Terminal.cpp:960
+
virtual ~Terminal()
Destroys this terminal object.
Definition: Terminal.cpp:150
+
void deleteLine()
Deletes a line at the cursor position.
Definition: Terminal.cpp:982
+
void cursorLeft()
Moves the cursor left by one character.
Definition: Terminal.cpp:898
+
void reverse()
Reverse the foreground and background colors for inverted text.
Definition: Terminal.cpp:1064
+
Color
Terminal foreground or background colors.
Definition: Terminal.h:102
+
void scrollDown()
Scrolls the contents of the window down one line.
Definition: Terminal.cpp:1015
+
virtual void flush()
Flushes all data in the underlying stream.
Definition: Terminal.cpp:274
+
virtual size_t write(uint8_t c)
Writes a single byte to the underlying stream.
Definition: Terminal.cpp:286
+
void deleteChar()
Deletes the character at the cursor position.
Definition: Terminal.cpp:993
+
void bold()
Enables bold text.
Definition: Terminal.cpp:1037
+
void clearToEOL()
Clears from the current cursor position to the end of the line.
Definition: Terminal.cpp:833
+
void color(Color fg)
Selects a text foreground color with the default background color.
Definition: Terminal.cpp:1174
+
void begin(Stream &stream, Mode mode=Serial)
Begins terminal operations on an underlying stream.
Definition: Terminal.cpp:183
+
void cursorUp()
Moves the cursor up by one line.
Definition: Terminal.cpp:920
+
void backspace()
Backspaces over the last character.
Definition: Terminal.cpp:949
+
void cursorRight()
Moves the cursor right by one character.
Definition: Terminal.cpp:909
+
void cursorMove(int x, int y)
Moves the cursor to a specific location in the window.
Definition: Terminal.cpp:866
+
Operates the terminal in telnet mode.
Definition: Terminal.h:45
+
bool setWindowSize(int columns, int rows)
Sets the number of columns and rows in the window.
Definition: Terminal.cpp:801
+
Terminal::Mode mode() const
Returns the mode this terminal is operating in, Serial or Telnet.
Definition: Terminal.h:52
+
Extended stream interface for terminal operations.
Definition: Terminal.h:36
+
size_t writeUnicode(long code)
Writes a Unicode code point to the output in UTF-8 encoding.
Definition: Terminal.cpp:757
+
Mode
Mode to operate in, Serial or Telnet.
Definition: Terminal.h:42
+
Terminal()
Constructs a terminal object.
Definition: Terminal.cpp:133
+
Stream * stream() const
Returns a pointer to the underlying Stream, or NULL if the stream has not been set with begin() yet...
Definition: Terminal.h:51
+
virtual int peek()
Peeks at the next byte from the underlying stream.
Definition: Terminal.cpp:240
+
void underline()
Enables underlined text.
Definition: Terminal.cpp:1046
+
void clear()
Move the cursor to the top-left position and clear the screen.
Definition: Terminal.cpp:824
+
void writeProgMem(const char *str)
Writes a static string that is stored in program memory.
Definition: Terminal.cpp:314
+
virtual int read()
Reads the next byte from the underlying stream.
Definition: Terminal.cpp:261
+
static size_t utf8Format(uint8_t *buffer, long code)
Formats a Unicode code point in a buffer in the UTF-8 encoding.
Definition: Terminal.cpp:1334
+
int rows() const
Gets the number of rows in the window; defaults to 24.
Definition: Terminal.h:73
+
void scrollUp()
Scrolls the contents of the window up one line.
Definition: Terminal.cpp:1004
+
static size_t utf8Length(long code)
Determines the length of a Unicode code point in the UTF-8 encoding.
Definition: Terminal.cpp:1302
+
void end()
Ends terminal operations on an underlying stream.
Definition: Terminal.cpp:198
+
int readKey()
Reads the next key that was typed on this terminal.
Definition: Terminal.cpp:387
+
void normal()
Selects normal text with all attributes and colors off.
Definition: Terminal.cpp:1026
+
void blink()
Enables blinking text.
Definition: Terminal.cpp:1055
+
int columns() const
Gets the number of columns in the window; defaults to 80.
Definition: Terminal.h:72
+
static bool isWideCharacter(long code)
Determine if a Unicode character is wide.
Definition: Terminal.cpp:1247
+
virtual int available()
Returns the number of bytes that are available for reading.
Definition: Terminal.cpp:228
+
+ + + + diff --git a/Terminal_8h_source.html b/Terminal_8h_source.html new file mode 100644 index 00000000..4ef6e916 --- /dev/null +++ b/Terminal_8h_source.html @@ -0,0 +1,307 @@ + + + + + + +ArduinoLibs: Terminal.h Source File + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + +
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
+ + +
+ +
+ + +
+
+
+
Terminal.h
+
+
+
1 /*
+
2  * Copyright (C) 2016 Southern Storm Software, Pty Ltd.
+
3  *
+
4  * Permission is hereby granted, free of charge, to any person obtaining a
+
5  * copy of this software and associated documentation files (the "Software"),
+
6  * to deal in the Software without restriction, including without limitation
+
7  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+
8  * and/or sell copies of the Software, and to permit persons to whom the
+
9  * Software is furnished to do so, subject to the following conditions:
+
10  *
+
11  * The above copyright notice and this permission notice shall be included
+
12  * in all copies or substantial portions of the Software.
+
13  *
+
14  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+
15  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
16  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
17  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
18  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
19  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
20  * DEALINGS IN THE SOFTWARE.
+
21  */
+
22 
+
23 #ifndef TERMINAL_h
+
24 #define TERMINAL_h
+
25 
+
26 #include <Arduino.h>
+
27 #include <USBAPI.h>
+
28 #include "USBKeysExtra.h"
+
29 
+
30 // Special key code that indicates that unicodeKey() contains the actual code.
+
31 #define KEY_UNICODE 0x1000
+
32 
+
33 // Special key code that indicates that the window size has changed.
+
34 #define KEY_WINSIZE 0x1001
+
35 
+
36 class Terminal : public Stream
+
37 {
+
38 public:
+
39  Terminal();
+
40  virtual ~Terminal();
+
41 
+
42  enum Mode
+
43  {
+ + +
46  };
+
47 
+
48  void begin(Stream &stream, Mode mode = Serial);
+
49  void end();
+
50 
+
51  Stream *stream() const { return _stream; }
+
52  Terminal::Mode mode() const { return (Terminal::Mode)mod; }
+
53 
+
54  virtual int available();
+
55  virtual int peek();
+
56  virtual int read();
+
57 
+
58  virtual void flush();
+
59 
+
60  virtual size_t write(uint8_t c);
+
61  virtual size_t write(const uint8_t *buffer, size_t size);
+
62  using Stream::write;
+
63 
+
64  void writeProgMem(const char *str);
+
65 
+
66  int readKey();
+
67 
+
68  long unicodeKey() const { return ucode; }
+
69 
+
70  size_t writeUnicode(long code);
+
71 
+
72  int columns() const { return ncols; }
+
73  int rows() const { return nrows; }
+
74 
+
75  bool setWindowSize(int columns, int rows);
+
76 
+
77  void clear();
+
78  void clearToEOL();
+
79 
+
80  void cursorMove(int x, int y);
+
81  void cursorLeft();
+
82  void cursorRight();
+
83  void cursorUp();
+
84  void cursorDown();
+
85 
+
86  void backspace();
+
87 
+
88  void insertLine();
+
89  void insertChar();
+
90  void deleteLine();
+
91  void deleteChar();
+
92 
+
93  void scrollUp();
+
94  void scrollDown();
+
95 
+
96  void normal();
+
97  void bold();
+
98  void underline();
+
99  void blink();
+
100  void reverse();
+
101 
+
102  enum Color
+
103  {
+
104  Black = 0x00,
+
105  DarkRed = 0x01,
+
106  DarkGreen = 0x02,
+
107  DarkYellow = 0x03,
+
108  DarkBlue = 0x04,
+
109  DarkMagenta = 0x05,
+
110  DarkCyan = 0x06,
+
111  LightGray = 0x07,
+
112  DarkGray = 0x08,
+
113  Red = 0x09,
+
114  Green = 0x0A,
+
115  Yellow = 0x0B,
+
116  Blue = 0x0C,
+
117  Magenta = 0x0D,
+
118  Cyan = 0x0E,
+
119  White = 0x0F
+
120  };
+
121 
+
122  void color(Color fg);
+
123  void color(Color fg, Color bg);
+
124 
+
125  static bool isWideCharacter(long code);
+
126 
+
127  static size_t utf8Length(long code);
+
128  static size_t utf8Format(uint8_t *buffer, long code);
+
129 
+
130 private:
+
131  Stream *_stream;
+
132  long ucode;
+
133  int ncols, nrows;
+
134  unsigned long timer;
+
135  uint16_t offset;
+
136  uint8_t state;
+
137  uint8_t utf8len;
+
138  uint8_t mod;
+
139  uint8_t sb[8];
+
140  uint8_t flags;
+
141 
+
142  int matchEscape(int ch);
+
143  void telnetCommand(uint8_t type, uint8_t option);
+
144 };
+
145 
+
146 #endif
+
void insertChar()
Inserts a blank character at the cursor position.
Definition: Terminal.cpp:971
+
Color is white.
Definition: Terminal.h:119
+
void cursorDown()
Moves the cursor down by one line.
Definition: Terminal.cpp:931
+
void insertLine()
Inserts a line at the cursor position.
Definition: Terminal.cpp:960
+
Color is light green.
Definition: Terminal.h:114
+
virtual ~Terminal()
Destroys this terminal object.
Definition: Terminal.cpp:150
+
Color is dark cyan.
Definition: Terminal.h:110
+
void deleteLine()
Deletes a line at the cursor position.
Definition: Terminal.cpp:982
+
Color is light blue.
Definition: Terminal.h:116
+
Color is dark green.
Definition: Terminal.h:106
+
Color is dark red.
Definition: Terminal.h:105
+
void cursorLeft()
Moves the cursor left by one character.
Definition: Terminal.cpp:898
+
void reverse()
Reverse the foreground and background colors for inverted text.
Definition: Terminal.cpp:1064
+
Color
Terminal foreground or background colors.
Definition: Terminal.h:102
+
long unicodeKey() const
Gets the Unicode version of the last key returned by readKey().
Definition: Terminal.h:68
+
void scrollDown()
Scrolls the contents of the window down one line.
Definition: Terminal.cpp:1015
+
virtual void flush()
Flushes all data in the underlying stream.
Definition: Terminal.cpp:274
+
Color is black.
Definition: Terminal.h:104
+
virtual size_t write(uint8_t c)
Writes a single byte to the underlying stream.
Definition: Terminal.cpp:286
+
void deleteChar()
Deletes the character at the cursor position.
Definition: Terminal.cpp:993
+
void bold()
Enables bold text.
Definition: Terminal.cpp:1037
+
void clearToEOL()
Clears from the current cursor position to the end of the line.
Definition: Terminal.cpp:833
+
Color is light cyan.
Definition: Terminal.h:118
+
void color(Color fg)
Selects a text foreground color with the default background color.
Definition: Terminal.cpp:1174
+
Operates the terminal in serial mode.
Definition: Terminal.h:44
+
void begin(Stream &stream, Mode mode=Serial)
Begins terminal operations on an underlying stream.
Definition: Terminal.cpp:183
+
Color is light red.
Definition: Terminal.h:113
+
void cursorUp()
Moves the cursor up by one line.
Definition: Terminal.cpp:920
+
void backspace()
Backspaces over the last character.
Definition: Terminal.cpp:949
+
void cursorRight()
Moves the cursor right by one character.
Definition: Terminal.cpp:909
+
void cursorMove(int x, int y)
Moves the cursor to a specific location in the window.
Definition: Terminal.cpp:866
+
Operates the terminal in telnet mode.
Definition: Terminal.h:45
+
bool setWindowSize(int columns, int rows)
Sets the number of columns and rows in the window.
Definition: Terminal.cpp:801
+
Terminal::Mode mode() const
Returns the mode this terminal is operating in, Serial or Telnet.
Definition: Terminal.h:52
+
Color is light gray.
Definition: Terminal.h:111
+
Extended stream interface for terminal operations.
Definition: Terminal.h:36
+
size_t writeUnicode(long code)
Writes a Unicode code point to the output in UTF-8 encoding.
Definition: Terminal.cpp:757
+
Color is dark yellow.
Definition: Terminal.h:107
+
Color is dark gray.
Definition: Terminal.h:112
+
Mode
Mode to operate in, Serial or Telnet.
Definition: Terminal.h:42
+
Color is dark blue.
Definition: Terminal.h:108
+
Terminal()
Constructs a terminal object.
Definition: Terminal.cpp:133
+
Stream * stream() const
Returns a pointer to the underlying Stream, or NULL if the stream has not been set with begin() yet...
Definition: Terminal.h:51
+
virtual int peek()
Peeks at the next byte from the underlying stream.
Definition: Terminal.cpp:240
+
void underline()
Enables underlined text.
Definition: Terminal.cpp:1046
+
void clear()
Move the cursor to the top-left position and clear the screen.
Definition: Terminal.cpp:824
+
Color is light magenta.
Definition: Terminal.h:117
+
void writeProgMem(const char *str)
Writes a static string that is stored in program memory.
Definition: Terminal.cpp:314
+
virtual int read()
Reads the next byte from the underlying stream.
Definition: Terminal.cpp:261
+
Color is dark magenta.
Definition: Terminal.h:109
+
static size_t utf8Format(uint8_t *buffer, long code)
Formats a Unicode code point in a buffer in the UTF-8 encoding.
Definition: Terminal.cpp:1334
+
int rows() const
Gets the number of rows in the window; defaults to 24.
Definition: Terminal.h:73
+
void scrollUp()
Scrolls the contents of the window up one line.
Definition: Terminal.cpp:1004
+
static size_t utf8Length(long code)
Determines the length of a Unicode code point in the UTF-8 encoding.
Definition: Terminal.cpp:1302
+
void end()
Ends terminal operations on an underlying stream.
Definition: Terminal.cpp:198
+
Color is light yellow.
Definition: Terminal.h:115
+
int readKey()
Reads the next key that was typed on this terminal.
Definition: Terminal.cpp:387
+
void normal()
Selects normal text with all attributes and colors off.
Definition: Terminal.cpp:1026
+
void blink()
Enables blinking text.
Definition: Terminal.cpp:1055
+
int columns() const
Gets the number of columns in the window; defaults to 80.
Definition: Terminal.h:72
+
static bool isWideCharacter(long code)
Determine if a Unicode character is wide.
Definition: Terminal.cpp:1247
+
virtual int available()
Returns the number of bytes that are available for reading.
Definition: Terminal.cpp:228
+
+ + + + diff --git a/TextField_8cpp_source.html b/TextField_8cpp_source.html index 08f4bfd4..d47ed3d0 100644 --- a/TextField_8cpp_source.html +++ b/TextField_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -156,7 +156,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/TextField_8h_source.html b/TextField_8h_source.html index 9e73aa37..ba58090b 100644 --- a/TextField_8h_source.html +++ b/TextField_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -142,7 +142,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/TimeField_8cpp_source.html b/TimeField_8cpp_source.html index f9c16e52..0f23c6f2 100644 --- a/TimeField_8cpp_source.html +++ b/TimeField_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -325,7 +325,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/TimeField_8h_source.html b/TimeField_8h_source.html index d67871c3..ed08fbda 100644 --- a/TimeField_8h_source.html +++ b/TimeField_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -167,7 +167,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/TransistorNoiseSource_8cpp_source.html b/TransistorNoiseSource_8cpp_source.html index 521adee1..294bcf1d 100644 --- a/TransistorNoiseSource_8cpp_source.html +++ b/TransistorNoiseSource_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -295,7 +295,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/TransistorNoiseSource_8h_source.html b/TransistorNoiseSource_8h_source.html index 92bafb99..5d6dfad8 100644 --- a/TransistorNoiseSource_8h_source.html +++ b/TransistorNoiseSource_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -151,7 +151,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/USBKeysExtra_8h_source.html b/USBKeysExtra_8h_source.html new file mode 100644 index 00000000..edca3a01 --- /dev/null +++ b/USBKeysExtra_8h_source.html @@ -0,0 +1,223 @@ + + + + + + +ArduinoLibs: USBKeysExtra.h Source File + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + +
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
+ + +
+ +
+ + +
+
+
+
USBKeysExtra.h
+
+
+
1 /*
+
2  * Copyright (C) 2016 Southern Storm Software, Pty Ltd.
+
3  *
+
4  * Permission is hereby granted, free of charge, to any person obtaining a
+
5  * copy of this software and associated documentation files (the "Software"),
+
6  * to deal in the Software without restriction, including without limitation
+
7  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+
8  * and/or sell copies of the Software, and to permit persons to whom the
+
9  * Software is furnished to do so, subject to the following conditions:
+
10  *
+
11  * The above copyright notice and this permission notice shall be included
+
12  * in all copies or substantial portions of the Software.
+
13  *
+
14  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+
15  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
16  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
17  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
18  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
19  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
20  * DEALINGS IN THE SOFTWARE.
+
21  */
+
22 
+
23 #ifndef USBKEYSEXTRA_h
+
24 #define USBKEYSEXTRA_h
+
25 
+
26 // Extra key codes that are not included in the standard USBAPI.h header.
+
27 // Reference: http://www.usb.org/developers/hidpage/Hut1_12v2.pdf
+
28 // Note: USBAPI.h shifts the Hut codes by adding 136 (0x88) so that
+
29 // they don't intersect with ASCII. We do that here as well so
+
30 // that these codes can be used with Keyboard.press(). We use #ifndef
+
31 // here in case the core Arduino libraries add these in the future.
+
32 
+
33 #ifndef KEY_PRINT_SCREEN
+
34 #define KEY_PRINT_SCREEN (0x46 + 0x88)
+
35 #endif
+
36 #ifndef KEY_SCROLL_LOCK
+
37 #define KEY_SCROLL_LOCK (0x47 + 0x88)
+
38 #endif
+
39 #ifndef KEY_PAUSE
+
40 #define KEY_PAUSE (0x48 + 0x88)
+
41 #endif
+
42 #ifndef KEY_NUM_LOCK
+
43 #define KEY_NUM_LOCK (0x53 + 0x88)
+
44 #endif
+
45 #ifndef KEY_NUMPAD_5
+
46 #define KEY_NUMPAD_5 (0x5D + 0x88)
+
47 #endif
+
48 #ifndef KEY_F13
+
49 #define KEY_F13 (0x68 + 0x88)
+
50 #endif
+
51 #ifndef KEY_F14
+
52 #define KEY_F14 (0x69 + 0x88)
+
53 #endif
+
54 #ifndef KEY_F15
+
55 #define KEY_F15 (0x6A + 0x88)
+
56 #endif
+
57 #ifndef KEY_F16
+
58 #define KEY_F16 (0x6B + 0x88)
+
59 #endif
+
60 #ifndef KEY_F17
+
61 #define KEY_F17 (0x6C + 0x88)
+
62 #endif
+
63 #ifndef KEY_F18
+
64 #define KEY_F18 (0x6D + 0x88)
+
65 #endif
+
66 #ifndef KEY_F19
+
67 #define KEY_F19 (0x6E + 0x88)
+
68 #endif
+
69 #ifndef KEY_F20
+
70 #define KEY_F20 (0x6F + 0x88)
+
71 #endif
+
72 #ifndef KEY_F21
+
73 #define KEY_F21 (0x70 + 0x88)
+
74 #endif
+
75 #ifndef KEY_F22
+
76 #define KEY_F22 (0x71 + 0x88)
+
77 #endif
+
78 #ifndef KEY_F23
+
79 #define KEY_F23 (0x72 + 0x88)
+
80 #endif
+
81 #ifndef KEY_F24
+
82 #define KEY_F24 (0x73 + 0x88)
+
83 #endif
+
84 
+
85 // USB does not have a code for "Back Tab" as it is usually Shift-TAB.
+
86 // For convenience, we map it to the ASCII vertical tab character (0x0B).
+
87 #define KEY_BACK_TAB 0x0B
+
88 
+
89 #ifndef KEY_RETURN
+
90 
+
91 // If the Arduino variant does not support USB, then USBAPI.h will not
+
92 // define the key codes that we need. So we define them here instead.
+
93 
+
94 #define KEY_RETURN (0x28 + 0x88)
+
95 #define KEY_ESC (0x29 + 0x88)
+
96 #define KEY_BACKSPACE (0x2A + 0x88)
+
97 #define KEY_TAB (0x2B + 0x88)
+
98 #define KEY_CAPS_LOCK (0x39 + 0x88)
+
99 #define KEY_F1 (0x3A + 0x88)
+
100 #define KEY_F2 (0x3B + 0x88)
+
101 #define KEY_F3 (0x3C + 0x88)
+
102 #define KEY_F4 (0x3D + 0x88)
+
103 #define KEY_F5 (0x3E + 0x88)
+
104 #define KEY_F6 (0x3F + 0x88)
+
105 #define KEY_F7 (0x40 + 0x88)
+
106 #define KEY_F8 (0x41 + 0x88)
+
107 #define KEY_F9 (0x42 + 0x88)
+
108 #define KEY_F10 (0x43 + 0x88)
+
109 #define KEY_F11 (0x44 + 0x88)
+
110 #define KEY_F12 (0x45 + 0x88)
+
111 #define KEY_INSERT (0x49 + 0x88)
+
112 #define KEY_HOME (0x4A + 0x88)
+
113 #define KEY_PAGE_UP (0x4B + 0x88)
+
114 #define KEY_DELETE (0x4C + 0x88)
+
115 #define KEY_END (0x4D + 0x88)
+
116 #define KEY_PAGE_DOWN (0x4E + 0x88)
+
117 #define KEY_RIGHT_ARROW (0x4F + 0x88)
+
118 #define KEY_LEFT_ARROW (0x50 + 0x88)
+
119 #define KEY_DOWN_ARROW (0x51 + 0x88)
+
120 #define KEY_UP_ARROW (0x52 + 0x88)
+
121 
+
122 #endif
+
123 
+
124 #endif
+
+ + + + diff --git a/XOF_8cpp_source.html b/XOF_8cpp_source.html index ddc496ee..50075a84 100644 --- a/XOF_8cpp_source.html +++ b/XOF_8cpp_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -125,7 +125,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/XOF_8h_source.html b/XOF_8h_source.html index 9f663a5a..ef516327 100644 --- a/XOF_8h_source.html +++ b/XOF_8h_source.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -152,7 +152,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/XTS_8cpp_source.html b/XTS_8cpp_source.html new file mode 100644 index 00000000..f23c8a46 --- /dev/null +++ b/XTS_8cpp_source.html @@ -0,0 +1,298 @@ + + + + + + +ArduinoLibs: XTS.cpp Source File + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + +
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
+ + +
+ +
+ + +
+
+
+
XTS.cpp
+
+
+
1 /*
+
2  * Copyright (C) 2016 Southern Storm Software, Pty Ltd.
+
3  *
+
4  * Permission is hereby granted, free of charge, to any person obtaining a
+
5  * copy of this software and associated documentation files (the "Software"),
+
6  * to deal in the Software without restriction, including without limitation
+
7  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+
8  * and/or sell copies of the Software, and to permit persons to whom the
+
9  * Software is furnished to do so, subject to the following conditions:
+
10  *
+
11  * The above copyright notice and this permission notice shall be included
+
12  * in all copies or substantial portions of the Software.
+
13  *
+
14  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+
15  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
16  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
17  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
18  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
19  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
20  * DEALINGS IN THE SOFTWARE.
+
21  */
+
22 
+
23 #include "XTS.h"
+
24 #include "Crypto.h"
+
25 #include "GF128.h"
+
26 #include <string.h>
+
27 
+ +
42  : sectSize(512)
+
43 {
+
44 }
+
45 
+ +
50 {
+
51  clean(twk);
+
52 }
+
53 
+
62 size_t XTSCommon::keySize() const
+
63 {
+
64  return blockCipher1->keySize() * 2;
+
65 }
+
66 
+
73 size_t XTSCommon::tweakSize() const
+
74 {
+
75  return 16;
+
76 }
+
77 
+
97 bool XTSCommon::setSectorSize(size_t size)
+
98 {
+
99  if (size < 16)
+
100  return false;
+
101  sectSize = size;
+
102  return true;
+
103 }
+
104 
+
119 bool XTSCommon::setKey(const uint8_t *key, size_t len)
+
120 {
+
121  if (!blockCipher1->setKey(key, len / 2))
+
122  return false;
+
123  return blockCipher2->setKey(key + len / 2, len - (len / 2));
+
124 }
+
125 
+
142 bool XTSCommon::setTweak(const uint8_t *tweak, size_t len)
+
143 {
+
144  if (len > 16)
+
145  return false;
+
146  memcpy(twk, tweak, len);
+
147  memset(((uint8_t *)twk) + len, 0, 16 - len);
+
148  blockCipher2->encryptBlock((uint8_t *)twk, (uint8_t *)twk);
+
149  return true;
+
150 }
+
151 
+
152 #define xorTweak(output, input, tweak) \
+
153  do { \
+
154  for (uint8_t i = 0; i < 16; ++i) \
+
155  (output)[i] = (input)[i] ^ ((const uint8_t *)(tweak))[i]; \
+
156  } while (0)
+
157 
+
170 void XTSCommon::encryptSector(uint8_t *output, const uint8_t *input)
+
171 {
+
172  size_t sectLast = sectSize & ~15;
+
173  size_t posn = 0;
+
174  uint32_t t[4];
+
175  memcpy(t, twk, sizeof(t));
+
176  while (posn < sectLast) {
+
177  // Process all complete 16-byte blocks.
+
178  xorTweak(output, input, t);
+
179  blockCipher1->encryptBlock(output, output);
+
180  xorTweak(output, output, t);
+
181  GF128::dblXTS(t);
+
182  input += 16;
+
183  output += 16;
+
184  posn += 16;
+
185  }
+
186  if (posn < sectSize) {
+
187  // Perform ciphertext stealing on the final partial block.
+
188  uint8_t leftOver = sectSize - posn;
+
189  output -= 16;
+
190  while (leftOver > 0) {
+
191  // Swap the left-over bytes in the last two blocks.
+
192  --leftOver;
+
193  uint8_t temp = input[leftOver];
+
194  output[leftOver + 16] = output[leftOver];
+
195  output[leftOver] = temp;
+
196  }
+
197  xorTweak(output, output, t);
+
198  blockCipher1->encryptBlock(output, output);
+
199  xorTweak(output, output, t);
+
200  }
+
201 }
+
202 
+
215 void XTSCommon::decryptSector(uint8_t *output, const uint8_t *input)
+
216 {
+
217  size_t sectLast = sectSize & ~15;
+
218  size_t posn = 0;
+
219  uint32_t t[4];
+
220  memcpy(t, twk, sizeof(t));
+
221  if (sectLast != sectSize)
+
222  sectLast -= 16;
+
223  while (posn < sectLast) {
+
224  // Process all complete 16-byte blocks.
+
225  xorTweak(output, input, t);
+
226  blockCipher1->decryptBlock(output, output);
+
227  xorTweak(output, output, t);
+
228  GF128::dblXTS(t);
+
229  input += 16;
+
230  output += 16;
+
231  posn += 16;
+
232  }
+
233  if (posn < sectSize) {
+
234  // Perform ciphertext stealing on the final two blocks.
+
235  uint8_t leftOver = sectSize - 16 - posn;
+
236  uint32_t u[4];
+
237 
+
238  // Decrypt the second-last block of ciphertext to recover
+
239  // the last partial block of plaintext. We need to use
+
240  // dblXTS(t) as the tweak for this block. Save the current
+
241  // tweak in "u" for use later.
+
242  memcpy(u, t, sizeof(t));
+
243  GF128::dblXTS(t);
+
244  xorTweak(output, input, t);
+
245  blockCipher1->decryptBlock(output, output);
+
246  xorTweak(output, output, t);
+
247 
+
248  // Swap the left-over bytes in the last two blocks.
+
249  while (leftOver > 0) {
+
250  --leftOver;
+
251  uint8_t temp = input[leftOver + 16];
+
252  output[leftOver + 16] = output[leftOver];
+
253  output[leftOver] = temp;
+
254  }
+
255 
+
256  // Decrypt the second-last block using the second-last tweak.
+
257  xorTweak(output, output, u);
+
258  blockCipher1->decryptBlock(output, output);
+
259  xorTweak(output, output, u);
+
260  }
+
261 }
+
262 
+ +
267 {
+
268  clean(twk);
+
269  blockCipher1->clear();
+
270  blockCipher2->clear();
+
271 }
+
272 
+ +
304 {
+
305 }
+
306 
+ +
316 {
+
317  return blockCipher1->keySize();
+
318 }
+
319 
+
334 bool XTSSingleKeyCommon::setKey(const uint8_t *key, size_t len)
+
335 {
+
336  return blockCipher1->setKey(key, len);
+
337 }
+
338 
+
static void dblXTS(uint32_t V[4])
Doubles a value in the GF(2^128) field using XTS conventions.
Definition: GF128.cpp:497
+
virtual void decryptBlock(uint8_t *output, const uint8_t *input)=0
Decrypts a single block using this cipher.
+
virtual void encryptBlock(uint8_t *output, const uint8_t *input)=0
Encrypts a single block using this cipher.
+
bool setKey(const uint8_t *key, size_t len)
Sets the key to use for single-keyh XTS mode.
Definition: XTS.cpp:334
+
bool setTweak(const uint8_t *tweak, size_t len)
Sets the tweak value for the current sector to encrypt or decrypt.
Definition: XTS.cpp:142
+
bool setSectorSize(size_t size)
Sets the size of sectors encrypted or decrypted by this class.
Definition: XTS.cpp:97
+
void encryptSector(uint8_t *output, const uint8_t *input)
Encrypts an entire sector of data.
Definition: XTS.cpp:170
+
void clear()
Clears all security-sensitive state from this XTS object.
Definition: XTS.cpp:266
+
size_t tweakSize() const
Gets the maximum supported size for the tweak.
Definition: XTS.cpp:73
+
void decryptSector(uint8_t *output, const uint8_t *input)
Decrypts an entire sector of data.
Definition: XTS.cpp:215
+
XTSCommon()
Constructs an XTS object with a default sector size of 512 bytes.
Definition: XTS.cpp:41
+
virtual bool setKey(const uint8_t *key, size_t len)=0
Sets the key to use for future encryption and decryption operations.
+
virtual ~XTSSingleKeyCommon()
Clears all sensitive information and destroys this object.
Definition: XTS.cpp:303
+
virtual bool setKey(const uint8_t *key, size_t len)
Sets the key to use for XTS mode.
Definition: XTS.cpp:119
+
virtual size_t keySize() const
Gets the size of the key for XTS mode.
Definition: XTS.cpp:62
+
virtual ~XTSCommon()
Clears all sensitive information and destroys this object.
Definition: XTS.cpp:49
+
size_t keySize() const
Gets the size of the key for single-pkey XTS mode.
Definition: XTS.cpp:315
+
virtual void clear()=0
Clears all security-sensitive state from this block cipher.
+
virtual size_t keySize() const =0
Default size of the key for this block cipher, in bytes.
+
+ + + + diff --git a/XTS_8h_source.html b/XTS_8h_source.html new file mode 100644 index 00000000..b8ee1052 --- /dev/null +++ b/XTS_8h_source.html @@ -0,0 +1,225 @@ + + + + + + +ArduinoLibs: XTS.h Source File + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + +
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
+ + +
+ +
+ + +
+
+
+
XTS.h
+
+
+
1 /*
+
2  * Copyright (C) 2016 Southern Storm Software, Pty Ltd.
+
3  *
+
4  * Permission is hereby granted, free of charge, to any person obtaining a
+
5  * copy of this software and associated documentation files (the "Software"),
+
6  * to deal in the Software without restriction, including without limitation
+
7  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+
8  * and/or sell copies of the Software, and to permit persons to whom the
+
9  * Software is furnished to do so, subject to the following conditions:
+
10  *
+
11  * The above copyright notice and this permission notice shall be included
+
12  * in all copies or substantial portions of the Software.
+
13  *
+
14  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+
15  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
16  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
17  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
18  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
19  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
20  * DEALINGS IN THE SOFTWARE.
+
21  */
+
22 
+
23 #ifndef CRYPTO_XTS_h
+
24 #define CRYPTO_XTS_h
+
25 
+
26 #include "BlockCipher.h"
+
27 
+
28 class XTSSingleKeyCommon;
+
29 
+
30 class XTSCommon
+
31 {
+
32 public:
+
33  virtual ~XTSCommon();
+
34 
+
35  virtual size_t keySize() const;
+
36  size_t tweakSize() const;
+
37 
+
38  size_t sectorSize() const { return sectSize; }
+
39  bool setSectorSize(size_t size);
+
40 
+
41  virtual bool setKey(const uint8_t *key, size_t len);
+
42  bool setTweak(const uint8_t *tweak, size_t len);
+
43 
+
44  void encryptSector(uint8_t *output, const uint8_t *input);
+
45  void decryptSector(uint8_t *output, const uint8_t *input);
+
46 
+
47  void clear();
+
48 
+
49 protected:
+
50  XTSCommon();
+
51  void setBlockCiphers(BlockCipher *cipher1, BlockCipher *cipher2)
+
52  {
+
53  blockCipher1 = cipher1;
+
54  blockCipher2 = cipher2;
+
55  }
+
56 
+
57 private:
+
58  BlockCipher *blockCipher1;
+
59  BlockCipher *blockCipher2;
+
60  uint32_t twk[4];
+
61  size_t sectSize;
+
62 
+
63  friend class XTSSingleKeyCommon;
+
64 };
+
65 
+ +
67 {
+
68 public:
+
69  virtual ~XTSSingleKeyCommon();
+
70 
+
71  size_t keySize() const;
+
72  bool setKey(const uint8_t *key, size_t len);
+
73 
+
74 protected:
+ +
76 };
+
77 
+
78 template <typename T1, typename T2 = T1>
+
79 class XTS : public XTSCommon
+
80 {
+
81 public:
+
82  XTS() { setBlockCiphers(&cipher1, &cipher2); }
+
83  ~XTS() {}
+
84 
+
85 private:
+
86  T1 cipher1;
+
87  T2 cipher2;
+
88 };
+
89 
+
90 template <typename T>
+ +
92 {
+
93 public:
+
94  XTSSingleKey() { setBlockCiphers(&cipher, &cipher); }
+ +
96 
+
97 private:
+
98  T cipher;
+
99 };
+
100 
+
101 #endif
+
Concrete base class to assist with implementing single-key XTS mode for 128-bit block ciphers...
Definition: XTS.h:66
+
Implementation of the single-key XTS mode for 128-bit block ciphers.
Definition: XTS.h:91
+
XTS()
Constructs an object for encrypting sectors in XTS mode.
Definition: XTS.h:82
+
Abstract base class for block ciphers.
Definition: BlockCipher.h:29
+
void setBlockCiphers(BlockCipher *cipher1, BlockCipher *cipher2)
Sets the two block ciphers to use for XTS mode.
Definition: XTS.h:51
+
size_t sectorSize() const
Gets the size of sectors encrypted or decrypted by this class.
Definition: XTS.h:38
+
~XTS()
Clears all sensitive information and destroys this object.
Definition: XTS.h:83
+
bool setKey(const uint8_t *key, size_t len)
Sets the key to use for single-keyh XTS mode.
Definition: XTS.cpp:334
+
bool setTweak(const uint8_t *tweak, size_t len)
Sets the tweak value for the current sector to encrypt or decrypt.
Definition: XTS.cpp:142
+
bool setSectorSize(size_t size)
Sets the size of sectors encrypted or decrypted by this class.
Definition: XTS.cpp:97
+
void encryptSector(uint8_t *output, const uint8_t *input)
Encrypts an entire sector of data.
Definition: XTS.cpp:170
+
void clear()
Clears all security-sensitive state from this XTS object.
Definition: XTS.cpp:266
+
XTSSingleKey()
Constructs an object for encrypting sectors in XTS mode with a single key instead of two split keys...
Definition: XTS.h:94
+
Implementation of the XTS mode for 128-bit block ciphers.
Definition: XTS.h:79
+
size_t tweakSize() const
Gets the maximum supported size for the tweak.
Definition: XTS.cpp:73
+
void decryptSector(uint8_t *output, const uint8_t *input)
Decrypts an entire sector of data.
Definition: XTS.cpp:215
+
XTSCommon()
Constructs an XTS object with a default sector size of 512 bytes.
Definition: XTS.cpp:41
+
virtual ~XTSSingleKeyCommon()
Clears all sensitive information and destroys this object.
Definition: XTS.cpp:303
+
virtual bool setKey(const uint8_t *key, size_t len)
Sets the key to use for XTS mode.
Definition: XTS.cpp:119
+
virtual size_t keySize() const
Gets the size of the key for XTS mode.
Definition: XTS.cpp:62
+
virtual ~XTSCommon()
Clears all sensitive information and destroys this object.
Definition: XTS.cpp:49
+
size_t keySize() const
Gets the size of the key for single-pkey XTS mode.
Definition: XTS.cpp:315
+
~XTSSingleKey()
Clears all sensitive information and destroys this object.
Definition: XTS.h:95
+
XTSSingleKeyCommon()
Constructs an XTS object with a default sector size of 512 bytes.
Definition: XTS.h:75
+
Concrete base class to assist with implementing XTS mode for 128-bit block ciphers.
Definition: XTS.h:30
+
+ + + + diff --git a/alarm-clock_8dox.html b/alarm-clock_8dox.html index 7153edb2..c8c49d8e 100644 --- a/alarm-clock_8dox.html +++ b/alarm-clock_8dox.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -87,7 +87,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/alarm_clock.html b/alarm_clock.html index 2d20618b..ac2168de 100644 --- a/alarm_clock.html +++ b/alarm_clock.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -140,7 +140,7 @@ Completed Clock
diff --git a/annotated.html b/annotated.html index 3e51796e..fa4d6b86 100644 --- a/annotated.html +++ b/annotated.html @@ -73,7 +73,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -134,39 +134,47 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); oCKeccakCoreKeccak core sponge function oCLCDEnhanced library for Freetronics 16x2 LCD shields oCListFieldField that manages selection from a static list of items -oCMelodyPlays a melody on a digital output pin using tone() -oCNoiseSourceAbstract base class for random noise sources -oCOFBImplementation of the Output Feedback (OFB) mode for 128-bit block ciphers -oCOFBCommonConcrete base class to assist with implementing OFB for 128-bit block ciphers -oCOMACImplementation of the OMAC message authenticator -oCPoly1305Poly1305 message authenticator -oCRingOscillatorNoiseSourceProcesses the signal from a ring oscillator based noise source -oCRNGClassPseudo random number generator suitable for cryptography -oCRTCBase class for realtime clock handlers -oCRTCAlarmStores alarm information from a realtime clock chip -oCRTCDateStores date information from a realtime clock chip -oCRTCTimeStores time information from a realtime clock chip -oCSHA256SHA-256 hash algorithm -oCSHA3_256SHA3-256 hash algorithm -oCSHA3_512SHA3-512 hash algorithm -oCSHA512SHA-512 hash algorithm -oCSHAKEAbstract base class for the SHAKE Extendable-Output Functions (XOFs) -oCSHAKE128SHAKE Extendable-Output Function (XOF) with 128-bit security -oCSHAKE256SHAKE Extendable-Output Function (XOF) with 256-bit security -oCSoftI2CBit-banged implementation of an I2C master -oCSpeckSpeck block cipher with a 128-bit block size -oCSpeckSmallSpeck block cipher with a 128-bit block size (small-memory version) -oCSpeckTinySpeck block cipher with a 128-bit block size (tiny-memory version) -oCTextFieldField that displays a read-only text value -oCTimeFieldField that manages the display and editing of a time value -oCTransistorNoiseSourceProcesses the signal from a transistor-based noise source -\CXOFAbstract base class for Extendable-Output Functions (XOFs) +oCLoginShellCommand-line shell access via a login shell +oCMelodyPlays a melody on a digital output pin using tone() +oCNoiseSourceAbstract base class for random noise sources +oCOFBImplementation of the Output Feedback (OFB) mode for 128-bit block ciphers +oCOFBCommonConcrete base class to assist with implementing OFB for 128-bit block ciphers +oCOMACImplementation of the OMAC message authenticator +oCPoly1305Poly1305 message authenticator +oCRingOscillatorNoiseSourceProcesses the signal from a ring oscillator based noise source +oCRNGClassPseudo random number generator suitable for cryptography +oCRTCBase class for realtime clock handlers +oCRTCAlarmStores alarm information from a realtime clock chip +oCRTCDateStores date information from a realtime clock chip +oCRTCTimeStores time information from a realtime clock chip +oCSHA256SHA-256 hash algorithm +oCSHA3_256SHA3-256 hash algorithm +oCSHA3_512SHA3-512 hash algorithm +oCSHA512SHA-512 hash algorithm +oCSHAKEAbstract base class for the SHAKE Extendable-Output Functions (XOFs) +oCSHAKE128SHAKE Extendable-Output Function (XOF) with 128-bit security +oCSHAKE256SHAKE Extendable-Output Function (XOF) with 256-bit security +oCShellCommand-line shell access +oCShellArgumentsConvenience class that encapsulates an array of shell command arguments +oCSoftI2CBit-banged implementation of an I2C master +oCSpeckSpeck block cipher with a 128-bit block size +oCSpeckSmallSpeck block cipher with a 128-bit block size (small-memory version) +oCSpeckTinySpeck block cipher with a 128-bit block size (tiny-memory version) +oCTerminalExtended stream interface for terminal operations +oCTextFieldField that displays a read-only text value +oCTimeFieldField that manages the display and editing of a time value +oCTransistorNoiseSourceProcesses the signal from a transistor-based noise source +oCXOFAbstract base class for Extendable-Output Functions (XOFs) +oCXTSImplementation of the XTS mode for 128-bit block ciphers +oCXTSCommonConcrete base class to assist with implementing XTS mode for 128-bit block ciphers +oCXTSSingleKeyImplementation of the single-key XTS mode for 128-bit block ciphers +\CXTSSingleKeyCommonConcrete base class to assist with implementing single-key XTS mode for 128-bit block ciphers
diff --git a/blink-blink_8dox.html b/blink-blink_8dox.html index 5064b112..1836cede 100644 --- a/blink-blink_8dox.html +++ b/blink-blink_8dox.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -87,7 +87,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/blink-charlieplex_8dox.html b/blink-charlieplex_8dox.html index 301f26f4..2e67bafa 100644 --- a/blink-charlieplex_8dox.html +++ b/blink-charlieplex_8dox.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -87,7 +87,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/blink-cylon_8dox.html b/blink-cylon_8dox.html index 539f09fc..bf0885c7 100644 --- a/blink-cylon_8dox.html +++ b/blink-cylon_8dox.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -87,7 +87,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/blink-startrek_8dox.html b/blink-startrek_8dox.html index ac24f4a0..024606c8 100644 --- a/blink-startrek_8dox.html +++ b/blink-startrek_8dox.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -87,7 +87,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/blink_blink.html b/blink_blink.html index 4ad447d6..33fec583 100644 --- a/blink_blink.html +++ b/blink_blink.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -120,7 +120,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/blink_charlieplex.html b/blink_charlieplex.html index 520bfb26..f24929c9 100644 --- a/blink_charlieplex.html +++ b/blink_charlieplex.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -160,7 +160,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/blink_cylon.html b/blink_cylon.html index e27d42db..7a5d204e 100644 --- a/blink_cylon.html +++ b/blink_cylon.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -171,7 +171,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/blink_startrek.html b/blink_startrek.html index 30917198..0474de9c 100644 --- a/blink_startrek.html +++ b/blink_startrek.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -237,7 +237,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classAES128-members.html b/classAES128-members.html index ecbde67a..6ac77dfe 100644 --- a/classAES128-members.html +++ b/classAES128-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -105,7 +105,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classAES128.html b/classAES128.html index 2930386e..81dd6b09 100644 --- a/classAES128.html +++ b/classAES128.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -265,7 +265,7 @@ Additional Inherited Members
diff --git a/classAES192-members.html b/classAES192-members.html index 81066c83..89744e86 100644 --- a/classAES192-members.html +++ b/classAES192-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -105,7 +105,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classAES192.html b/classAES192.html index a57791cb..83ca39ee 100644 --- a/classAES192.html +++ b/classAES192.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -265,7 +265,7 @@ Additional Inherited Members
diff --git a/classAES256-members.html b/classAES256-members.html index cdfabf9d..f928dd42 100644 --- a/classAES256-members.html +++ b/classAES256-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -105,7 +105,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classAES256.html b/classAES256.html index 40315c90..5599802e 100644 --- a/classAES256.html +++ b/classAES256.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -265,7 +265,7 @@ Additional Inherited Members
diff --git a/classAESCommon-members.html b/classAESCommon-members.html index 64627d10..94ffe4b3 100644 --- a/classAESCommon-members.html +++ b/classAESCommon-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -103,7 +103,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classAESCommon.html b/classAESCommon.html index ddfc8ef3..87124d42 100644 --- a/classAESCommon.html +++ b/classAESCommon.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -322,7 +322,7 @@ Protected Member Functions
diff --git a/classAuthenticatedCipher-members.html b/classAuthenticatedCipher-members.html index 7671c541..8427b1c7 100644 --- a/classAuthenticatedCipher-members.html +++ b/classAuthenticatedCipher-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -108,7 +108,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classAuthenticatedCipher.html b/classAuthenticatedCipher.html index 02aa9d10..8d447507 100644 --- a/classAuthenticatedCipher.html +++ b/classAuthenticatedCipher.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -351,7 +351,7 @@ virtual  diff --git a/classBLAKE2b-members.html b/classBLAKE2b-members.html index 8d526c9b..0fbe9bd0 100644 --- a/classBLAKE2b-members.html +++ b/classBLAKE2b-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -112,7 +112,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classBLAKE2b.html b/classBLAKE2b.html index fed962ea..36a9d81d 100644 --- a/classBLAKE2b.html +++ b/classBLAKE2b.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -536,7 +536,7 @@ Additional Inherited Members
diff --git a/classBLAKE2s-members.html b/classBLAKE2s-members.html index 7e3c18bc..149aaccd 100644 --- a/classBLAKE2s-members.html +++ b/classBLAKE2s-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -111,7 +111,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classBLAKE2s.html b/classBLAKE2s.html index 290299ee..5da0602f 100644 --- a/classBLAKE2s.html +++ b/classBLAKE2s.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -536,7 +536,7 @@ Additional Inherited Members
diff --git a/classBigNumberUtil-members.html b/classBigNumberUtil-members.html index 1b36e6a0..f62728a8 100644 --- a/classBigNumberUtil-members.html +++ b/classBigNumberUtil-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -105,7 +105,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classBigNumberUtil.html b/classBigNumberUtil.html index 6d74cfe5..a4e07811 100644 --- a/classBigNumberUtil.html +++ b/classBigNumberUtil.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -893,7 +893,7 @@ Static Public Member Functions
diff --git a/classBitmap-members.html b/classBitmap-members.html index d2d70a8a..42a1a217 100644 --- a/classBitmap-members.html +++ b/classBitmap-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -138,7 +138,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classBitmap.html b/classBitmap.html index 0218e4b9..88ec4edf 100644 --- a/classBitmap.html +++ b/classBitmap.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -1745,7 +1745,7 @@ class DMD
diff --git a/classBlinkLED-members.html b/classBlinkLED-members.html index 73c45ada..c3958a21 100644 --- a/classBlinkLED-members.html +++ b/classBlinkLED-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -103,7 +103,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classBlinkLED.html b/classBlinkLED.html index d7890daa..97b80471 100644 --- a/classBlinkLED.html +++ b/classBlinkLED.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -428,7 +428,7 @@ Public Member Functions
diff --git a/classBlockCipher-members.html b/classBlockCipher-members.html index c94f2f8d..2c06a376 100644 --- a/classBlockCipher-members.html +++ b/classBlockCipher-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -101,7 +101,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classBlockCipher.html b/classBlockCipher.html index 28400230..194d1e05 100644 --- a/classBlockCipher.html +++ b/classBlockCipher.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -410,7 +410,7 @@ Public Member Functions
diff --git a/classBoolField-members.html b/classBoolField-members.html index c5f1943e..e1f80f00 100644 --- a/classBoolField-members.html +++ b/classBoolField-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classBoolField.html b/classBoolField.html index c748a93e..694fbfdc 100644 --- a/classBoolField.html +++ b/classBoolField.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -506,7 +506,7 @@ LiquidCrystal *  diff --git a/classCBC-members.html b/classCBC-members.html index b3e182dd..89751bb3 100644 --- a/classCBC-members.html +++ b/classCBC-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -106,7 +106,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classCBC.html b/classCBC.html index 8b4c3c34..23f1b6b7 100644 --- a/classCBC.html +++ b/classCBC.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -185,7 +185,7 @@ class CBC< T >
diff --git a/classCBCCommon-members.html b/classCBCCommon-members.html index 4d223d6a..62a8fd72 100644 --- a/classCBCCommon-members.html +++ b/classCBCCommon-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -105,7 +105,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classCBCCommon.html b/classCBCCommon.html index 31aa8517..691e1674 100644 --- a/classCBCCommon.html +++ b/classCBCCommon.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -534,7 +534,7 @@ Protected Member Functions
diff --git a/classCFB-members.html b/classCFB-members.html index cded73a3..06e00ddb 100644 --- a/classCFB-members.html +++ b/classCFB-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -106,7 +106,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classCFB.html b/classCFB.html index 70095d96..0e1fb9e3 100644 --- a/classCFB.html +++ b/classCFB.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -185,7 +185,7 @@ class CFB< T >
diff --git a/classCFBCommon-members.html b/classCFBCommon-members.html index 921f63b0..8144f886 100644 --- a/classCFBCommon-members.html +++ b/classCFBCommon-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -105,7 +105,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classCFBCommon.html b/classCFBCommon.html index 6da56d9f..de39d4e3 100644 --- a/classCFBCommon.html +++ b/classCFBCommon.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -534,7 +534,7 @@ Protected Member Functions
diff --git a/classCTR-members.html b/classCTR-members.html index 964730ef..91e577a0 100644 --- a/classCTR-members.html +++ b/classCTR-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -107,7 +107,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classCTR.html b/classCTR.html index 9f8c6c44..72290ae8 100644 --- a/classCTR.html +++ b/classCTR.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -181,7 +181,7 @@ class CTR< T >
diff --git a/classCTRCommon-members.html b/classCTRCommon-members.html index 54b24c78..68245a61 100644 --- a/classCTRCommon-members.html +++ b/classCTRCommon-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -106,7 +106,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classCTRCommon.html b/classCTRCommon.html index f916ad98..88a660d4 100644 --- a/classCTRCommon.html +++ b/classCTRCommon.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -563,7 +563,7 @@ Protected Member Functions
diff --git a/classChaCha-members.html b/classChaCha-members.html index 31cf89ab..6e7291f8 100644 --- a/classChaCha-members.html +++ b/classChaCha-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -109,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classChaCha.html b/classChaCha.html index f229112c..a5f26642 100644 --- a/classChaCha.html +++ b/classChaCha.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -673,7 +673,7 @@ class ChaChaPoly<
diff --git a/classChaChaPoly-members.html b/classChaChaPoly-members.html index 17dd4a17..c2b14fdf 100644 --- a/classChaChaPoly-members.html +++ b/classChaChaPoly-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -115,7 +115,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classChaChaPoly.html b/classChaChaPoly.html index 8959eb9c..4e99dcce 100644 --- a/classChaChaPoly.html +++ b/classChaChaPoly.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -665,7 +665,7 @@ virtual  diff --git a/classCharlieplex-members.html b/classCharlieplex-members.html index 85146d57..689a64fe 100644 --- a/classCharlieplex-members.html +++ b/classCharlieplex-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classCharlieplex.html b/classCharlieplex.html index 132fbd7e..7e39c360 100644 --- a/classCharlieplex.html +++ b/classCharlieplex.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -538,7 +538,7 @@ Public Member Functions
diff --git a/classChaseLEDs-members.html b/classChaseLEDs-members.html index c7576a28..2a1317a3 100644 --- a/classChaseLEDs-members.html +++ b/classChaseLEDs-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -99,7 +99,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classChaseLEDs.html b/classChaseLEDs.html index f042feb1..6fe3905a 100644 --- a/classChaseLEDs.html +++ b/classChaseLEDs.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -347,7 +347,7 @@ Protected Member Functions
diff --git a/classCipher-members.html b/classCipher-members.html index 39216f4c..d31d794a 100644 --- a/classCipher-members.html +++ b/classCipher-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -102,7 +102,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classCipher.html b/classCipher.html index a0d8ff0b..b034b2f5 100644 --- a/classCipher.html +++ b/classCipher.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -485,7 +485,7 @@ Public Member Functions
diff --git a/classCurve25519-members.html b/classCurve25519-members.html index dc8537fd..969c6847 100644 --- a/classCurve25519-members.html +++ b/classCurve25519-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -97,7 +97,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classCurve25519.html b/classCurve25519.html index f9f60cec..6072d989 100644 --- a/classCurve25519.html +++ b/classCurve25519.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -303,7 +303,7 @@ class Ed25519 diff --git a/classDMD-members.html b/classDMD-members.html index 388483e2..2be9b38c 100644 --- a/classDMD-members.html +++ b/classDMD-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -150,7 +150,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classDMD.html b/classDMD.html index 861e8dd9..37dab271 100644 --- a/classDMD.html +++ b/classDMD.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -755,7 +755,7 @@ Multiple panels
diff --git a/classDS1307RTC-members.html b/classDS1307RTC-members.html index 0a486b9c..c628349a 100644 --- a/classDS1307RTC-members.html +++ b/classDS1307RTC-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -125,7 +125,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classDS1307RTC.html b/classDS1307RTC.html index 0d140318..d59c8d5f 100644 --- a/classDS1307RTC.html +++ b/classDS1307RTC.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -598,7 +598,7 @@ static const uint8_t  diff --git a/classDS3231RTC-members.html b/classDS3231RTC-members.html index a75bc028..ac0ce67c 100644 --- a/classDS3231RTC-members.html +++ b/classDS3231RTC-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -133,7 +133,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classDS3231RTC.html b/classDS3231RTC.html index bb29e05a..e017207d 100644 --- a/classDS3231RTC.html +++ b/classDS3231RTC.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -713,7 +713,7 @@ static const uint8_t  diff --git a/classDS3232RTC-members.html b/classDS3232RTC-members.html index e8b61480..5085ab01 100644 --- a/classDS3232RTC-members.html +++ b/classDS3232RTC-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -130,7 +130,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classDS3232RTC.html b/classDS3232RTC.html index 39fbb0bb..665803f8 100644 --- a/classDS3232RTC.html +++ b/classDS3232RTC.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -750,7 +750,7 @@ static const uint8_t  diff --git a/classEAX-members.html b/classEAX-members.html index f4733323..5dc67aa6 100644 --- a/classEAX-members.html +++ b/classEAX-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -118,7 +118,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classEAX.html b/classEAX.html index c238e555..85dc3f1d 100644 --- a/classEAX.html +++ b/classEAX.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -219,7 +219,7 @@ class EAX< T >
diff --git a/classEAXCommon-members.html b/classEAXCommon-members.html index df199839..cd29f937 100644 --- a/classEAXCommon-members.html +++ b/classEAXCommon-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -117,7 +117,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classEAXCommon.html b/classEAXCommon.html index e42bc250..9fc0be0f 100644 --- a/classEAXCommon.html +++ b/classEAXCommon.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -732,7 +732,7 @@ Protected Member Functions
diff --git a/classEEPROM24-members.html b/classEEPROM24-members.html index 6bf6f1cf..b1053cfe 100644 --- a/classEEPROM24-members.html +++ b/classEEPROM24-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -101,7 +101,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classEEPROM24.html b/classEEPROM24.html index a7037f5f..9fff5c55 100644 --- a/classEEPROM24.html +++ b/classEEPROM24.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -431,7 +431,7 @@ Public Member Functions
diff --git a/classEd25519-members.html b/classEd25519-members.html index 42b97c09..13b13844 100644 --- a/classEd25519-members.html +++ b/classEd25519-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -97,7 +97,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classEd25519.html b/classEd25519.html index b8883fd3..e1c29c22 100644 --- a/classEd25519.html +++ b/classEd25519.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -354,7 +354,7 @@ Static Public Member Functions
diff --git a/classField-members.html b/classField-members.html index dbad2b99..e3ad81bb 100644 --- a/classField-members.html +++ b/classField-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -106,7 +106,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classField.html b/classField.html index 86f28f64..fc4f1fa1 100644 --- a/classField.html +++ b/classField.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -424,7 +424,7 @@ class Form
diff --git a/classForm-members.html b/classForm-members.html index 754348bc..ffa638fc 100644 --- a/classForm-members.html +++ b/classForm-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -108,7 +108,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classForm.html b/classForm.html index 90abf05c..a9a981d6 100644 --- a/classForm.html +++ b/classForm.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -485,7 +485,7 @@ class Field
diff --git a/classGCM-members.html b/classGCM-members.html index 63f633bd..7316a0c2 100644 --- a/classGCM-members.html +++ b/classGCM-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -119,7 +119,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classGCM.html b/classGCM.html index a2486999..80ded69e 100644 --- a/classGCM.html +++ b/classGCM.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -223,7 +223,7 @@ class GCM< T >
diff --git a/classGCMCommon-members.html b/classGCMCommon-members.html index 83267bce..e93fcd63 100644 --- a/classGCMCommon-members.html +++ b/classGCMCommon-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -118,7 +118,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classGCMCommon.html b/classGCMCommon.html index 2f013848..ec1f9322 100644 --- a/classGCMCommon.html +++ b/classGCMCommon.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -736,7 +736,7 @@ Protected Member Functions
diff --git a/classGF128-members.html b/classGF128-members.html index a448bc82..33c1d140 100644 --- a/classGF128-members.html +++ b/classGF128-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -92,12 +92,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); - - + + +
dbl(uint32_t V[4])GF128static
dblEAX(uint32_t V[4])GF128static
mul(uint32_t Y[4], const uint32_t H[4])GF128static
mulInit(uint32_t H[4], const void *key)GF128static
dblXTS(uint32_t V[4])GF128static
mul(uint32_t Y[4], const uint32_t H[4])GF128static
mulInit(uint32_t H[4], const void *key)GF128static
diff --git a/classGF128.html b/classGF128.html index ff5e4173..0d37354f 100644 --- a/classGF128.html +++ b/classGF128.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -110,6 +110,9 @@ Static Public Member Functions static void dblEAX (uint32_t V[4])  Doubles a value in the GF(2^128) field using EAX conventions. More...
  +static void dblXTS (uint32_t V[4]) + Doubles a value in the GF(2^128) field using XTS conventions. More...

Detailed Description

Operations in the Galois field GF(2^128).

@@ -150,7 +153,7 @@ Static Public Member Functions

Block cipher modes such as XEX are similar to CTR mode but instead of incrementing the nonce every block, the modes multiply the nonce by 2 in the GF(2^128) field every block. This function is provided to help with implementing such modes.

-
See Also
dblEAX(), mul()
+
See Also
dblEAX(), dblXTS(), mul()

Definition at line 314 of file GF128.cpp.

@@ -187,10 +190,47 @@ Static Public Member Functions

This function differs from dbl() that it uses the conventions of EAX mode instead of those of NIST SP 800-38D (GCM). The two operations have equivalent security but the bits are ordered differently with the value shifted left instead of right.

References: https://en.wikipedia.org/wiki/EAX_mode, http://web.cs.ucdavis.edu/~rogaway/papers/eax.html

-
See Also
dbl(), mul()
+
See Also
dbl(), dblXTS(), mul()

Definition at line 406 of file GF128.cpp.

+
+
+ +
+
+ + + + + +
+ + + + + + + + +
void GF128::dblXTS (uint32_t V[4])
+
+static
+
+ +

Doubles a value in the GF(2^128) field using XTS conventions.

+
Parameters
+ + +
VThe value to double, and the result. This array is assumed to be in littlen-endian order on entry and exit.
+
+
+

This function differs from dbl() that it uses the conventions of XTS mode instead of those of NIST SP 800-38D (GCM). The two operations have equivalent security but the bits are ordered differently with the value shifted left instead of right.

+

References: IEEE Std. 1619-2007, XTS-AES

+
See Also
dbl(), dblEAX(), mul()
+ +

Definition at line 497 of file GF128.cpp.

+
@@ -294,7 +334,7 @@ Static Public Member Functions diff --git a/classGHASH-members.html b/classGHASH-members.html index 8db2fd3c..7f1a5cc7 100644 --- a/classGHASH-members.html +++ b/classGHASH-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -103,7 +103,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classGHASH.html b/classGHASH.html index 31092f95..1ba96eb2 100644 --- a/classGHASH.html +++ b/classGHASH.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -265,7 +265,7 @@ void  diff --git a/classHash-members.html b/classHash-members.html index be4e3c38..5f055e83 100644 --- a/classHash-members.html +++ b/classHash-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classHash.html b/classHash.html index 3686e4bd..5f9d96bc 100644 --- a/classHash.html +++ b/classHash.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -575,7 +575,7 @@ Protected Member Functions
diff --git a/classI2CMaster-members.html b/classI2CMaster-members.html index cbcabfc4..95f79a36 100644 --- a/classI2CMaster-members.html +++ b/classI2CMaster-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -100,7 +100,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classI2CMaster.html b/classI2CMaster.html index 3c062fd5..f6ebf352 100644 --- a/classI2CMaster.html +++ b/classI2CMaster.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -328,7 +328,7 @@ virtual unsigned int  diff --git a/classIRreceiver-members.html b/classIRreceiver-members.html index f06f9e50..a578b7c0 100644 --- a/classIRreceiver-members.html +++ b/classIRreceiver-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -100,7 +100,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classIRreceiver.html b/classIRreceiver.html index 5686d8bd..dfa8f32c 100644 --- a/classIRreceiver.html +++ b/classIRreceiver.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -328,7 +328,7 @@ void _IR_receive_interrupt
diff --git a/classIntField-members.html b/classIntField-members.html index 785c1cc6..c4397baa 100644 --- a/classIntField-members.html +++ b/classIntField-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -118,7 +118,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classIntField.html b/classIntField.html index 355bcf63..bb4efecd 100644 --- a/classIntField.html +++ b/classIntField.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -647,7 +647,7 @@ LiquidCrystal *  diff --git a/classKeccakCore-members.html b/classKeccakCore-members.html index 2e4f664e..37926b8b 100644 --- a/classKeccakCore-members.html +++ b/classKeccakCore-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -108,7 +108,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classKeccakCore.html b/classKeccakCore.html index 4f963e96..f61e304f 100644 --- a/classKeccakCore.html +++ b/classKeccakCore.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -475,7 +475,7 @@ void  diff --git a/classLCD-members.html b/classLCD-members.html index bae32cad..930f26aa 100644 --- a/classLCD-members.html +++ b/classLCD-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -110,7 +110,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classLCD.html b/classLCD.html index 5b14b0d1..4079035c 100644 --- a/classLCD.html +++ b/classLCD.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -592,7 +592,7 @@ Support for DFRobot LCD Shield
diff --git a/classListField-members.html b/classListField-members.html index fd5ffbe4..4427ce5e 100644 --- a/classListField-members.html +++ b/classListField-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -111,7 +111,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classListField.html b/classListField.html index 412b3db7..d0ab5ca0 100644 --- a/classListField.html +++ b/classListField.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -411,7 +411,7 @@ LiquidCrystal *  diff --git a/classLoginShell-members.html b/classLoginShell-members.html new file mode 100644 index 00000000..f478be68 --- /dev/null +++ b/classLoginShell-members.html @@ -0,0 +1,188 @@ + + + + + + +ArduinoLibs: Member List + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + + + + +
+ +
+ +
+
+
+
LoginShell Member List
+
+
+ +

This is the complete list of members for LoginShell, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
available()Terminalvirtual
backspace()Terminal
begin(Stream &stream, size_t maxHistory=0, Terminal::Mode mode=Serial)Shell
begin(Client &client, size_t maxHistory=0, Terminal::Mode mode=Telnet)Shell
Terminal::begin(Stream &stream, Mode mode=Serial)Terminal
beginSession()LoginShellprotectedvirtual
Black enum valueTerminal
blink()Terminal
Blue enum valueTerminal
bold()Terminal
clear()Terminal
clearToEOL()Terminal
Color enum nameTerminal
color(Color fg)Terminal
color(Color fg, Color bg)Terminal
columns() const Terminalinline
cursorDown()Terminal
cursorLeft()Terminal
cursorMove(int x, int y)Terminal
cursorRight()Terminal
cursorUp()Terminal
Cyan enum valueTerminal
DarkBlue enum valueTerminal
DarkCyan enum valueTerminal
DarkGray enum valueTerminal
DarkGreen enum valueTerminal
DarkMagenta enum valueTerminal
DarkRed enum valueTerminal
DarkYellow enum valueTerminal
deleteChar()Terminal
deleteLine()Terminal
end()Shell
execute()LoginShellprotectedvirtual
exit()Shell
flush()Terminalvirtual
Green enum valueTerminal
help()Shell
insertChar()Terminal
insertLine()Terminal
isWideCharacter(long code)Terminalstatic
LightGray enum valueTerminal
LoginShell()LoginShell
loop()Shell
machineName() const LoginShellinline
Magenta enum valueTerminal
mode() const Terminalinline
Mode enum nameTerminal
normal()Terminal
passwordCheckFunction() const LoginShellinline
peek()Terminalvirtual
printPrompt()LoginShellprotectedvirtual
prompt() const Shellinline
read()Terminalvirtual
readKey()Terminal
Red enum valueTerminal
registerCommand(ShellCommandRegister *cmd)Shellstatic
reverse()Terminal
rows() const Terminalinline
scrollDown()Terminal
scrollUp()Terminal
Serial enum valueTerminal
setMachineName(const char *machineName)LoginShellinline
setPasswordCheckFunction(ShellPasswordCheckFunc function)LoginShellinline
setPrompt(const char *prompt)Shellinline
setUserid(int userid)Shellinline
setWindowSize(int columns, int rows)Terminal
Shell()Shell
ShellCommandShellrelated
ShellCommandFuncShellrelated
ShellPasswordCheckFuncLoginShellrelated
stream() const Terminalinline
Telnet enum valueTerminal
Terminal()Terminal
underline()Terminal
unicodeKey() const Terminalinline
userid() const Shellinline
utf8Format(uint8_t *buffer, long code)Terminalstatic
utf8Length(long code)Terminalstatic
White enum valueTerminal
write(uint8_t c)Terminalvirtual
write(const uint8_t *buffer, size_t size)Terminalvirtual
writeProgMem(const char *str)Terminal
writeUnicode(long code)Terminal
Yellow enum valueTerminal
~LoginShell()LoginShellvirtual
~Shell()Shellvirtual
~Terminal()Terminalvirtual
+ + + + diff --git a/classLoginShell.html b/classLoginShell.html new file mode 100644 index 00000000..7afcb6ba --- /dev/null +++ b/classLoginShell.html @@ -0,0 +1,580 @@ + + + + + + +ArduinoLibs: LoginShell Class Reference + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + + + + +
+ +
+ +
+ +
+ +

Command-line shell access via a login shell. + More...

+ +

#include <LoginShell.h>

+
+Inheritance diagram for LoginShell:
+
+
+ + +Shell +Terminal + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 LoginShell ()
 Constructs a new login shell. More...
 
+virtual ~LoginShell ()
 Destroys this login shell.
 
const char * machineName () const
 Gets the name of the machine to display in the login prompt. More...
 
void setMachineName (const char *machineName)
 Sets the name of the machine to display in the login prompt. More...
 
ShellPasswordCheckFunc passwordCheckFunction () const
 Gets the current password checking function, or NULL if the function has not been set yet. More...
 
void setPasswordCheckFunction (ShellPasswordCheckFunc function)
 Sets the password checking function. More...
 
- Public Member Functions inherited from Shell
 Shell ()
 Constructs a new Shell instance. More...
 
+virtual ~Shell ()
 Destroys this Shell object.
 
bool begin (Stream &stream, size_t maxHistory=0, Terminal::Mode mode=Serial)
 Begin shell handling on an underlying character stream. More...
 
bool begin (Client &client, size_t maxHistory=0, Terminal::Mode mode=Telnet)
 Begin shell handling on a connected TCP client. More...
 
void end ()
 Ends shell processing on the underlying stream. More...
 
void loop ()
 Performs regular activities on the shell. More...
 
const char * prompt () const
 Gets the prompt string to display in the shell. More...
 
void setPrompt (const char *prompt)
 Sets the prompt string to display in the shell. More...
 
int userid () const
 Gets the user identifier for the currently logged in user, or -1 if there is no user logged in currently. More...
 
void setUserid (int userid)
 Sets the user identifier for the currently logged in user. More...
 
+void help ()
 Displays help for all supported commands.
 
void exit ()
 Exit from the shell back to the login prompt. More...
 
- Public Member Functions inherited from Terminal
 Terminal ()
 Constructs a terminal object. More...
 
+virtual ~Terminal ()
 Destroys this terminal object.
 
void begin (Stream &stream, Mode mode=Serial)
 Begins terminal operations on an underlying stream. More...
 
void end ()
 Ends terminal operations on an underlying stream. More...
 
Stream * stream () const
 Returns a pointer to the underlying Stream, or NULL if the stream has not been set with begin() yet. More...
 
Terminal::Mode mode () const
 Returns the mode this terminal is operating in, Serial or Telnet. More...
 
virtual int available ()
 Returns the number of bytes that are available for reading. More...
 
virtual int peek ()
 Peeks at the next byte from the underlying stream. More...
 
virtual int read ()
 Reads the next byte from the underlying stream. More...
 
+virtual void flush ()
 Flushes all data in the underlying stream.
 
virtual size_t write (uint8_t c)
 Writes a single byte to the underlying stream. More...
 
virtual size_t write (const uint8_t *buffer, size_t size)
 Writes a buffer of data to the underlying stream. More...
 
void writeProgMem (const char *str)
 Writes a static string that is stored in program memory. More...
 
int readKey ()
 Reads the next key that was typed on this terminal. More...
 
long unicodeKey () const
 Gets the Unicode version of the last key returned by readKey(). More...
 
size_t writeUnicode (long code)
 Writes a Unicode code point to the output in UTF-8 encoding. More...
 
int columns () const
 Gets the number of columns in the window; defaults to 80. More...
 
int rows () const
 Gets the number of rows in the window; defaults to 24. More...
 
bool setWindowSize (int columns, int rows)
 Sets the number of columns and rows in the window. More...
 
+void clear ()
 Move the cursor to the top-left position and clear the screen.
 
+void clearToEOL ()
 Clears from the current cursor position to the end of the line.
 
void cursorMove (int x, int y)
 Moves the cursor to a specific location in the window. More...
 
void cursorLeft ()
 Moves the cursor left by one character. More...
 
void cursorRight ()
 Moves the cursor right by one character. More...
 
void cursorUp ()
 Moves the cursor up by one line. More...
 
void cursorDown ()
 Moves the cursor down by one line. More...
 
void backspace ()
 Backspaces over the last character. More...
 
void insertLine ()
 Inserts a line at the cursor position. More...
 
void insertChar ()
 Inserts a blank character at the cursor position. More...
 
void deleteLine ()
 Deletes a line at the cursor position. More...
 
void deleteChar ()
 Deletes the character at the cursor position. More...
 
void scrollUp ()
 Scrolls the contents of the window up one line. More...
 
void scrollDown ()
 Scrolls the contents of the window down one line. More...
 
void normal ()
 Selects normal text with all attributes and colors off. More...
 
void bold ()
 Enables bold text. More...
 
+void underline ()
 Enables underlined text.
 
+void blink ()
 Enables blinking text.
 
+void reverse ()
 Reverse the foreground and background colors for inverted text.
 
void color (Color fg)
 Selects a text foreground color with the default background color. More...
 
void color (Color fg, Color bg)
 Selects text foreground and background colors. More...
 
+ + + + + + + + + + +

+Protected Member Functions

+virtual void beginSession ()
 Begins a login session.
 
+virtual void printPrompt ()
 Prints the current prompt string.
 
+virtual void execute ()
 Executes the command in the buffer.
 
+ + + + + + + + + + + + +

+Related Functions

(Note that these are not member functions.)

+
 ShellPasswordCheckFunc
 Password checking function for login shells. More...
 
+ + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Public Types inherited from Terminal
enum  Mode { Serial, +Telnet + }
 Mode to operate in, Serial or Telnet. More...
 
enum  Color {
+  Black = 0x00, +DarkRed = 0x01, +DarkGreen = 0x02, +DarkYellow = 0x03, +
+  DarkBlue = 0x04, +DarkMagenta = 0x05, +DarkCyan = 0x06, +LightGray = 0x07, +
+  DarkGray = 0x08, +Red = 0x09, +Green = 0x0A, +Yellow = 0x0B, +
+  Blue = 0x0C, +Magenta = 0x0D, +Cyan = 0x0E, +White = 0x0F +
+ }
 Terminal foreground or background colors. More...
 
- Static Public Member Functions inherited from Shell
static void registerCommand (ShellCommandRegister *cmd)
 Registers a command with the shell. More...
 
- Static Public Member Functions inherited from Terminal
static bool isWideCharacter (long code)
 Determine if a Unicode character is wide. More...
 
static size_t utf8Length (long code)
 Determines the length of a Unicode code point in the UTF-8 encoding. More...
 
static size_t utf8Format (uint8_t *buffer, long code)
 Formats a Unicode code point in a buffer in the UTF-8 encoding. More...
 
+

Detailed Description

+

Command-line shell access via a login shell.

+

This class provides a command-line shell with login support. The user is prompted for username and password when they connect and other commands will not be available until the correct credentials have been supplied.

+
See Also
Shell
+ +

Definition at line 30 of file LoginShell.h.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
LoginShell::LoginShell ()
+
+ +

Constructs a new login shell.

+

This constructor must be followed by a call to begin() to specify the underlying I/O stream.

+ +

Definition at line 67 of file LoginShell.cpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
const char * LoginShell::machineName () const
+
+inline
+
+ +

Gets the name of the machine to display in the login prompt.

+

The default value is NULL, indicating that no machine name should be shown.

+
See Also
setMachineName()
+ +

Definition at line 36 of file LoginShell.h.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
ShellPasswordCheckFunc LoginShell::passwordCheckFunction () const
+
+inline
+
+ +

Gets the current password checking function, or NULL if the function has not been set yet.

+
See Also
setPasswordCheckFunction()
+ +

Definition at line 39 of file LoginShell.h.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void LoginShell::setMachineName (const char * machineName)
+
+inline
+
+ +

Sets the name of the machine to display in the login prompt.

+
Parameters
+ + +
machineNameThe machine name, or NULL for no machine name.
+
+
+
See Also
machineName()
+ +

Definition at line 37 of file LoginShell.h.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void LoginShell::setPasswordCheckFunction (ShellPasswordCheckFunc function)
+
+inline
+
+ +

Sets the password checking function.

+
Parameters
+ + +
functionThe password checking function to set, or NULL to return to the default rules.
+
+
+

If no function is set, then LoginShell will check for a username of "root" and a password of "arduino" (both values are case-sensitive). This is of course not very secure. Realistic applications should set a proper password checking function.

+
See Also
passwordCheckFunction()
+ +

Definition at line 40 of file LoginShell.h.

+ +
+
+

Friends And Related Function Documentation

+ +
+
+ + + + + +
+ + + + +
ShellPasswordCheckFunc
+
+related
+
+ +

Password checking function for login shells.

+
Parameters
+ + + +
usernamePoints to the user name that was supplied at login.
passwordPoints to the password that was supplied at login.
+
+
+
Returns
Returns zero or greater if the username and password combination is correct, negative if incorrect.
+

The return value is reported to the application as Shell::userid(), which can be used by the application to restrict the set of commands that are available to the user, or to restrict the behaviour of those commands when acting on critical resources.

+

Timing can be very important: the check should take the same amount of time for valid and invalid user identifiers or passwords so that an attacker cannot gain knowledge about the valid users on the system based on failed login attempts.

+
See Also
Shell::userid()
+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classLoginShell.png b/classLoginShell.png new file mode 100644 index 00000000..6fe79d76 Binary files /dev/null and b/classLoginShell.png differ diff --git a/classMelody-members.html b/classMelody-members.html index 6051a8ae..3faa2970 100644 --- a/classMelody-members.html +++ b/classMelody-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -103,7 +103,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classMelody.html b/classMelody.html index d2306d86..d1e33d30 100644 --- a/classMelody.html +++ b/classMelody.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -371,7 +371,7 @@ bool  diff --git a/classNoiseSource-members.html b/classNoiseSource-members.html index 224a8cac..962a2bd9 100644 --- a/classNoiseSource-members.html +++ b/classNoiseSource-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -99,7 +99,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classNoiseSource.html b/classNoiseSource.html index a9d47187..349e69b8 100644 --- a/classNoiseSource.html +++ b/classNoiseSource.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -289,7 +289,7 @@ Protected Member Functions
diff --git a/classOFB-members.html b/classOFB-members.html index 57cbb6e8..f3e8942b 100644 --- a/classOFB-members.html +++ b/classOFB-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -106,7 +106,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classOFB.html b/classOFB.html index 310310c8..7c4d916b 100644 --- a/classOFB.html +++ b/classOFB.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -181,7 +181,7 @@ class OFB< T >
diff --git a/classOFBCommon-members.html b/classOFBCommon-members.html index 82c09443..d42382e9 100644 --- a/classOFBCommon-members.html +++ b/classOFBCommon-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -105,7 +105,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classOFBCommon.html b/classOFBCommon.html index 3cfde373..557fc47f 100644 --- a/classOFBCommon.html +++ b/classOFBCommon.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -534,7 +534,7 @@ Protected Member Functions
diff --git a/classOMAC-members.html b/classOMAC-members.html index f1c03598..b98cfdc7 100644 --- a/classOMAC-members.html +++ b/classOMAC-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -102,7 +102,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classOMAC.html b/classOMAC.html index 6ce18944..2d015b60 100644 --- a/classOMAC.html +++ b/classOMAC.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -387,7 +387,7 @@ void  diff --git a/classPoly1305-members.html b/classPoly1305-members.html index 383e8ec1..00e8fbf6 100644 --- a/classPoly1305-members.html +++ b/classPoly1305-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classPoly1305.html b/classPoly1305.html index ff3064c0..3a109a52 100644 --- a/classPoly1305.html +++ b/classPoly1305.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -280,7 +280,7 @@ void  diff --git a/classRNGClass-members.html b/classRNGClass-members.html index be8c23bd..eac5548a 100644 --- a/classRNGClass-members.html +++ b/classRNGClass-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -105,7 +105,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classRNGClass.html b/classRNGClass.html index cb51a1b8..90f1e583 100644 --- a/classRNGClass.html +++ b/classRNGClass.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -519,7 +519,7 @@ static const int  diff --git a/classRTC-members.html b/classRTC-members.html index 728c18d4..d90b549a 100644 --- a/classRTC-members.html +++ b/classRTC-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -123,7 +123,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classRTC.html b/classRTC.html index 6742ccbd..cf30874e 100644 --- a/classRTC.html +++ b/classRTC.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -779,7 +779,7 @@ static const uint8_t  diff --git a/classRTCAlarm-members.html b/classRTCAlarm-members.html index 0b17e03b..f119f340 100644 --- a/classRTCAlarm-members.html +++ b/classRTCAlarm-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -99,7 +99,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classRTCDate-members.html b/classRTCDate-members.html index 37edb5b8..bc691cde 100644 --- a/classRTCDate-members.html +++ b/classRTCDate-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -96,7 +96,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classRTCTime-members.html b/classRTCTime-members.html index 8189d95e..b335b017 100644 --- a/classRTCTime-members.html +++ b/classRTCTime-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -96,7 +96,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classRingOscillatorNoiseSource-members.html b/classRingOscillatorNoiseSource-members.html index f365ccaa..546e1fa5 100644 --- a/classRingOscillatorNoiseSource-members.html +++ b/classRingOscillatorNoiseSource-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -101,7 +101,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classRingOscillatorNoiseSource.html b/classRingOscillatorNoiseSource.html index 22863561..85423cf4 100644 --- a/classRingOscillatorNoiseSource.html +++ b/classRingOscillatorNoiseSource.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -253,7 +253,7 @@ Additional Inherited Members
diff --git a/classSHA256-members.html b/classSHA256-members.html index 96f1b2f3..9bb38887 100644 --- a/classSHA256-members.html +++ b/classSHA256-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -110,7 +110,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classSHA256.html b/classSHA256.html index 7a5b3277..1ff381d8 100644 --- a/classSHA256.html +++ b/classSHA256.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -506,7 +506,7 @@ Additional Inherited Members
diff --git a/classSHA3__256-members.html b/classSHA3__256-members.html index f6d84d7e..1f8d3009 100644 --- a/classSHA3__256-members.html +++ b/classSHA3__256-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -106,7 +106,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classSHA3__256.html b/classSHA3__256.html index 83bf299d..6a2bc30a 100644 --- a/classSHA3__256.html +++ b/classSHA3__256.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -506,7 +506,7 @@ Additional Inherited Members
diff --git a/classSHA3__512-members.html b/classSHA3__512-members.html index 93fe539f..f068ddce 100644 --- a/classSHA3__512-members.html +++ b/classSHA3__512-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -106,7 +106,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classSHA3__512.html b/classSHA3__512.html index 9d91fd99..0e91c557 100644 --- a/classSHA3__512.html +++ b/classSHA3__512.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -506,7 +506,7 @@ Additional Inherited Members
diff --git a/classSHA512-members.html b/classSHA512-members.html index 15b0228c..9cd48612 100644 --- a/classSHA512-members.html +++ b/classSHA512-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -112,7 +112,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classSHA512.html b/classSHA512.html index 8fd035be..a9455f86 100644 --- a/classSHA512.html +++ b/classSHA512.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -513,7 +513,7 @@ Additional Inherited Members
diff --git a/classSHAKE-members.html b/classSHAKE-members.html index 1d808873..e65f72d7 100644 --- a/classSHAKE-members.html +++ b/classSHAKE-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classSHAKE.html b/classSHAKE.html index 7e486b19..d8752728 100644 --- a/classSHAKE.html +++ b/classSHAKE.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -443,7 +443,7 @@ Protected Member Functions
diff --git a/classSHAKE128-members.html b/classSHAKE128-members.html index 6c775fac..0d65601b 100644 --- a/classSHAKE128-members.html +++ b/classSHAKE128-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -106,7 +106,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classSHAKE128.html b/classSHAKE128.html index 7a24f3ee..2e284aa4 100644 --- a/classSHAKE128.html +++ b/classSHAKE128.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -171,7 +171,7 @@ Additional Inherited Members
diff --git a/classSHAKE256-members.html b/classSHAKE256-members.html index 1b6c62a9..5954b2ae 100644 --- a/classSHAKE256-members.html +++ b/classSHAKE256-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -106,7 +106,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classSHAKE256.html b/classSHAKE256.html index 7e046eed..33bda6f2 100644 --- a/classSHAKE256.html +++ b/classSHAKE256.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -171,7 +171,7 @@ Additional Inherited Members
diff --git a/classShell-members.html b/classShell-members.html new file mode 100644 index 00000000..54a90e60 --- /dev/null +++ b/classShell-members.html @@ -0,0 +1,182 @@ + + + + + + +ArduinoLibs: Member List + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + + + + +
+ +
+ +
+
+
+
Shell Member List
+
+
+ +

This is the complete list of members for Shell, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
available()Terminalvirtual
backspace()Terminal
begin(Stream &stream, size_t maxHistory=0, Terminal::Mode mode=Serial)Shell
begin(Client &client, size_t maxHistory=0, Terminal::Mode mode=Telnet)Shell
Terminal::begin(Stream &stream, Mode mode=Serial)Terminal
beginSession()Shellprotectedvirtual
Black enum valueTerminal
blink()Terminal
Blue enum valueTerminal
bold()Terminal
clear()Terminal
clearToEOL()Terminal
Color enum nameTerminal
color(Color fg)Terminal
color(Color fg, Color bg)Terminal
columns() const Terminalinline
cursorDown()Terminal
cursorLeft()Terminal
cursorMove(int x, int y)Terminal
cursorRight()Terminal
cursorUp()Terminal
Cyan enum valueTerminal
DarkBlue enum valueTerminal
DarkCyan enum valueTerminal
DarkGray enum valueTerminal
DarkGreen enum valueTerminal
DarkMagenta enum valueTerminal
DarkRed enum valueTerminal
DarkYellow enum valueTerminal
deleteChar()Terminal
deleteLine()Terminal
end()Shell
execute()Shellprotectedvirtual
exit()Shell
flush()Terminalvirtual
Green enum valueTerminal
help()Shell
insertChar()Terminal
insertLine()Terminal
isWideCharacter(long code)Terminalstatic
LightGray enum valueTerminal
LoginShell (defined in Shell)Shellfriend
loop()Shell
Magenta enum valueTerminal
mode() const Terminalinline
Mode enum nameTerminal
normal()Terminal
peek()Terminalvirtual
printPrompt()Shellprotectedvirtual
prompt() const Shellinline
read()Terminalvirtual
readKey()Terminal
Red enum valueTerminal
registerCommand(ShellCommandRegister *cmd)Shellstatic
reverse()Terminal
rows() const Terminalinline
scrollDown()Terminal
scrollUp()Terminal
Serial enum valueTerminal
setPrompt(const char *prompt)Shellinline
setUserid(int userid)Shellinline
setWindowSize(int columns, int rows)Terminal
Shell()Shell
ShellCommandShellrelated
ShellCommandFuncShellrelated
stream() const Terminalinline
Telnet enum valueTerminal
Terminal()Terminal
underline()Terminal
unicodeKey() const Terminalinline
userid() const Shellinline
utf8Format(uint8_t *buffer, long code)Terminalstatic
utf8Length(long code)Terminalstatic
White enum valueTerminal
write(uint8_t c)Terminalvirtual
write(const uint8_t *buffer, size_t size)Terminalvirtual
writeProgMem(const char *str)Terminal
writeUnicode(long code)Terminal
Yellow enum valueTerminal
~Shell()Shellvirtual
~Terminal()Terminalvirtual
+ + + + diff --git a/classShell.html b/classShell.html new file mode 100644 index 00000000..0dba1031 --- /dev/null +++ b/classShell.html @@ -0,0 +1,845 @@ + + + + + + +ArduinoLibs: Shell Class Reference + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + + + + +
+ +
+ +
+
+ +
+
Shell Class Reference
+
+
+ +

Command-line shell access. + More...

+ +

#include <Shell.h>

+
+Inheritance diagram for Shell:
+
+
+ + +Terminal +LoginShell + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Shell ()
 Constructs a new Shell instance. More...
 
+virtual ~Shell ()
 Destroys this Shell object.
 
bool begin (Stream &stream, size_t maxHistory=0, Terminal::Mode mode=Serial)
 Begin shell handling on an underlying character stream. More...
 
bool begin (Client &client, size_t maxHistory=0, Terminal::Mode mode=Telnet)
 Begin shell handling on a connected TCP client. More...
 
void end ()
 Ends shell processing on the underlying stream. More...
 
void loop ()
 Performs regular activities on the shell. More...
 
const char * prompt () const
 Gets the prompt string to display in the shell. More...
 
void setPrompt (const char *prompt)
 Sets the prompt string to display in the shell. More...
 
int userid () const
 Gets the user identifier for the currently logged in user, or -1 if there is no user logged in currently. More...
 
void setUserid (int userid)
 Sets the user identifier for the currently logged in user. More...
 
+void help ()
 Displays help for all supported commands.
 
void exit ()
 Exit from the shell back to the login prompt. More...
 
- Public Member Functions inherited from Terminal
 Terminal ()
 Constructs a terminal object. More...
 
+virtual ~Terminal ()
 Destroys this terminal object.
 
void begin (Stream &stream, Mode mode=Serial)
 Begins terminal operations on an underlying stream. More...
 
void end ()
 Ends terminal operations on an underlying stream. More...
 
Stream * stream () const
 Returns a pointer to the underlying Stream, or NULL if the stream has not been set with begin() yet. More...
 
Terminal::Mode mode () const
 Returns the mode this terminal is operating in, Serial or Telnet. More...
 
virtual int available ()
 Returns the number of bytes that are available for reading. More...
 
virtual int peek ()
 Peeks at the next byte from the underlying stream. More...
 
virtual int read ()
 Reads the next byte from the underlying stream. More...
 
+virtual void flush ()
 Flushes all data in the underlying stream.
 
virtual size_t write (uint8_t c)
 Writes a single byte to the underlying stream. More...
 
virtual size_t write (const uint8_t *buffer, size_t size)
 Writes a buffer of data to the underlying stream. More...
 
void writeProgMem (const char *str)
 Writes a static string that is stored in program memory. More...
 
int readKey ()
 Reads the next key that was typed on this terminal. More...
 
long unicodeKey () const
 Gets the Unicode version of the last key returned by readKey(). More...
 
size_t writeUnicode (long code)
 Writes a Unicode code point to the output in UTF-8 encoding. More...
 
int columns () const
 Gets the number of columns in the window; defaults to 80. More...
 
int rows () const
 Gets the number of rows in the window; defaults to 24. More...
 
bool setWindowSize (int columns, int rows)
 Sets the number of columns and rows in the window. More...
 
+void clear ()
 Move the cursor to the top-left position and clear the screen.
 
+void clearToEOL ()
 Clears from the current cursor position to the end of the line.
 
void cursorMove (int x, int y)
 Moves the cursor to a specific location in the window. More...
 
void cursorLeft ()
 Moves the cursor left by one character. More...
 
void cursorRight ()
 Moves the cursor right by one character. More...
 
void cursorUp ()
 Moves the cursor up by one line. More...
 
void cursorDown ()
 Moves the cursor down by one line. More...
 
void backspace ()
 Backspaces over the last character. More...
 
void insertLine ()
 Inserts a line at the cursor position. More...
 
void insertChar ()
 Inserts a blank character at the cursor position. More...
 
void deleteLine ()
 Deletes a line at the cursor position. More...
 
void deleteChar ()
 Deletes the character at the cursor position. More...
 
void scrollUp ()
 Scrolls the contents of the window up one line. More...
 
void scrollDown ()
 Scrolls the contents of the window down one line. More...
 
void normal ()
 Selects normal text with all attributes and colors off. More...
 
void bold ()
 Enables bold text. More...
 
+void underline ()
 Enables underlined text.
 
+void blink ()
 Enables blinking text.
 
+void reverse ()
 Reverse the foreground and background colors for inverted text.
 
void color (Color fg)
 Selects a text foreground color with the default background color. More...
 
void color (Color fg, Color bg)
 Selects text foreground and background colors. More...
 
+ + + + + + + + + + + + + + +

+Static Public Member Functions

static void registerCommand (ShellCommandRegister *cmd)
 Registers a command with the shell. More...
 
- Static Public Member Functions inherited from Terminal
static bool isWideCharacter (long code)
 Determine if a Unicode character is wide. More...
 
static size_t utf8Length (long code)
 Determines the length of a Unicode code point in the UTF-8 encoding. More...
 
static size_t utf8Format (uint8_t *buffer, long code)
 Formats a Unicode code point in a buffer in the UTF-8 encoding. More...
 
+ + + + + + + + + + +

+Protected Member Functions

+virtual void beginSession ()
 Begins a login session.
 
+virtual void printPrompt ()
 Prints the current prompt string.
 
+virtual void execute ()
 Executes the command in the buffer.
 
+ + + +

+Friends

+class LoginShell
 
+ + + + + + + + +

+Related Functions

(Note that these are not member functions.)

+
 ShellCommandFunc
 Type of functions that provide shell command handlers. More...
 
#define ShellCommand(name, help, function)
 Registers a command with the shell. More...
 
+ + + + + + + + +

+Additional Inherited Members

- Public Types inherited from Terminal
enum  Mode { Serial, +Telnet + }
 Mode to operate in, Serial or Telnet. More...
 
enum  Color {
+  Black = 0x00, +DarkRed = 0x01, +DarkGreen = 0x02, +DarkYellow = 0x03, +
+  DarkBlue = 0x04, +DarkMagenta = 0x05, +DarkCyan = 0x06, +LightGray = 0x07, +
+  DarkGray = 0x08, +Red = 0x09, +Green = 0x0A, +Yellow = 0x0B, +
+  Blue = 0x0C, +Magenta = 0x0D, +Cyan = 0x0E, +White = 0x0F +
+ }
 Terminal foreground or background colors. More...
 
+

Detailed Description

+

Command-line shell access.

+

This class provides a command-line shell via serial ports, TCP connections, or any other type of Stream.

+

The following example is the minimal setup for a command-line shell on a serial port. The application calls begin() to set the underlying Stream, and periodically calls loop() to manage shell-related events.

+
Shell shell;
+
+
void setup() {
+
Serial.begin(9600);
+
shell.setPrompt("$ ");
+
shell.begin(Serial);
+
}
+
+
void loop() {
+
shell.loop();
+
}
+

Commands can be registered with the shell by the application to be invoked when the user types in the corresponding command. Each command is associated with a handler function:

+
void cmdMotor(Shell &shell, int argc, const ShellArguments &argv)
+
{
+
...
+
}
+
+
ShellCommand(motor, "Turn the motor on or off", cmdMotor);
+

There are two standard commands built into Shell: "help" and "exit". The "help" command provides a list of all registered commands with the short help string from the ShellCommand() registration. The "exit" command logs the user out and returns to the login prompt, or stops the underlying connection in the case of TCP streams.

+

The F1 key can be used as a synonym for "help" and CTRL-D can be used as a synonym for "exit".

+

Shell provides some limited history editing for scrolling back through previous commands. The size of the history stack is provided in the second argument to begin():

+
shell.begin(Serial, 5);
+
See Also
LoginShell, Terminal
+ +

Definition at line 62 of file Shell.h.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
Shell::Shell ()
+
+ +

Constructs a new Shell instance.

+

This constructor must be followed by a call to begin() to specify the underlying I/O stream.

+ +

Definition at line 122 of file Shell.cpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool Shell::begin (Stream & stream,
size_t maxHistory = 0,
Terminal::Mode mode = Serial 
)
+
+ +

Begin shell handling on an underlying character stream.

+
Parameters
+ + + + +
streamThe stream to apply the shell to. Usually this is a serial port or TCP network connection.
maxHistoryThe number of commands to allocate in the history stack for scrolling back through using Up/Down arrow keys.
modeThe terminal mode to operate in, Terminal::Serial or Terminal::Telnet. Default is Terminal::Serial.
+
+
+
Returns
Returns false if there is insufficient memory for the history stack. The session will continue but without command history.
+

This function will print the prompt() in preparation for entry of the first command. The default prompt is "$ "; call setPrompt() before begin() to change this:

+
Serial.begin(9600);
+
shell.setPrompt("Command: ");
+
shell.begin(Serial);
+

The maxHistory parameter indicates the number of commands of maximum length that can be stored in the history. If the actual entered commands are shorter, then more commands can be stored in the history.

+
See Also
end(), setPrompt()
+ +

Definition at line 176 of file Shell.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool Shell::begin (Client & client,
size_t maxHistory = 0,
Terminal::Mode mode = Telnet 
)
+
+ +

Begin shell handling on a connected TCP client.

+
Parameters
+ + + + +
clientThe client to apply the shell to. This must be a connected TCP client.
maxHistoryThe number of commands to allocate in the history stack for scrolling back through using Up/Down arrow keys.
modeThe terminal mode to operate in, Terminal::Serial or Terminal::Telnet. Default is Terminal::Telnet.
+
+
+
Returns
Returns true if the shell was initialized, or false if there is insufficient memory for the history stack.
+

This override is provided as a convenience for starting a shell on a TCP connection. This function also modifies the behaviour of the builtin "exit" command to forcibly stop the TCP connection rather than returning to the login prompt.

+

The maxHistory parameter indicates the number of commands of maximum length that can be stored in the history. If the actual entered commands are shorter, then more commands can be stored in the history.

+
See Also
end(), setPrompt()
+ +

Definition at line 208 of file Shell.cpp.

+ +
+
+ +
+
+ + + + + + + +
void Shell::end ()
+
+ +

Ends shell processing on the underlying stream.

+

This function is intended to be called when a TCP network connection is closed to clean up the shell state that was in use by the connection.

+
See Also
begin()
+ +

Definition at line 262 of file Shell.cpp.

+ +
+
+ +
+
+ + + + + + + +
void Shell::exit ()
+
+ +

Exit from the shell back to the login prompt.

+

If the underlying stream is a TCP client, then this function will stop the client, causing disconnection.

+ +

Definition at line 577 of file Shell.cpp.

+ +
+
+ +
+
+ + + + + + + +
void Shell::loop ()
+
+ +

Performs regular activities on the shell.

+

This function must be called regularly from the application's main loop to process input for the shell.

+ +

Definition at line 294 of file Shell.cpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
const char * Shell::prompt () const
+
+inline
+
+ +

Gets the prompt string to display in the shell.

+
Returns
The current prompt. The default is "$ ".
+
See Also
setPrompt()
+ +

Definition at line 76 of file Shell.h.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void Shell::registerCommand (ShellCommandRegister * cmd)
+
+static
+
+ +

Registers a command with the shell.

+
Note
This function is internal. The ShellCommand() macro should be used instead.
+ +

Definition at line 472 of file Shell.cpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void Shell::setPrompt (const char * prompt)
+
+inline
+
+ +

Sets the prompt string to display in the shell.

+
Parameters
+ + +
promptThe new prompt string. The caller is responsible to ensure that the string persists after this call returns. The Shell class does not make a copy of the string.
+
+
+

Calling this function will change the prompt for the next line of input.

+
See Also
prompt()
+ +

Definition at line 77 of file Shell.h.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void Shell::setUserid (int userid)
+
+inline
+
+ +

Sets the user identifier for the currently logged in user.

+
Parameters
+ + +
useridThe new user identifier to set, or -1 if there is no user logged in currently.
+
+
+

Normally the user identifier is set when LoginShell detects a successful login. This function can be used to alter the access rights of the logged-in user after login.

+
See Also
userid(), ShellPasswordCheckFunc
+ +

Definition at line 80 of file Shell.h.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
int Shell::userid () const
+
+inline
+
+ +

Gets the user identifier for the currently logged in user, or -1 if there is no user logged in currently.

+

The user identifier can be used by applications to restrict the set of commands that are available to the user, or to restrict the behaviour of those commands when acting on critical resources.

+
See Also
setUserid(), ShellPasswordCheckFunc
+ +

Definition at line 79 of file Shell.h.

+ +
+
+

Friends And Related Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
#define ShellCommand( name,
 help,
 function 
)
+
+related
+
+Value:
static char const shell_id_##name[] PROGMEM = #name; \
+
static char const shell_help_##name[] PROGMEM = help; \
+
static ShellCommandInfo const shell_info_##name PROGMEM = { \
+
shell_id_##name, \
+
shell_help_##name, \
+
(function) \
+
}; \
+
static ShellCommandRegister shell_cmd_##name(&shell_info_##name)
+
+

Registers a command with the shell.

+
Parameters
+ + + + +
nameThe name of the command.
helpHelp string to display that describes the command.
functionThe function to call to handle the command.
+
+
+

The name and help parameters must be constant strings that can be placed into program memory.

+
void cmdMotor(Shell &shell, int argc, const ShellArguments &argv)
+
{
+
...
+
}
+
+
ShellCommand(motor, "Turn the motor on or off", cmdMotor);
+

If there are multiple Shell instances active in the system, then the command will be registered with all of them.

+ +

Definition at line 153 of file Shell.h.

+ +
+
+ +
+
+ + + + + +
+ + + + +
ShellCommandFunc
+
+related
+
+ +

Type of functions that provide shell command handlers.

+
Parameters
+ + + + +
shellPoints to the shell instance that executed the command, which can be used to print command results or read more input.
argcNumber of arguments to the command, including the command's name.
argvThe arguments to the command.
+
+
+
See Also
ShellCommand()
+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classShell.png b/classShell.png new file mode 100644 index 00000000..d84283c6 Binary files /dev/null and b/classShell.png differ diff --git a/classShellArguments-members.html b/classShellArguments-members.html new file mode 100644 index 00000000..fbee4da2 --- /dev/null +++ b/classShellArguments-members.html @@ -0,0 +1,104 @@ + + + + + + +ArduinoLibs: Member List + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + + + + +
+ +
+ +
+
+
+
ShellArguments Member List
+
+
+ +

This is the complete list of members for ShellArguments, including all inherited members.

+ + + + +
count() const ShellArgumentsinline
operator[](int index) const ShellArguments
Shell (defined in ShellArguments)ShellArgumentsfriend
+ + + + diff --git a/classShellArguments.html b/classShellArguments.html new file mode 100644 index 00000000..63178ba2 --- /dev/null +++ b/classShellArguments.html @@ -0,0 +1,190 @@ + + + + + + +ArduinoLibs: ShellArguments Class Reference + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + + + + +
+ +
+ +
+
+ +
+
ShellArguments Class Reference
+
+
+ +

Convenience class that encapsulates an array of shell command arguments. + More...

+ +

#include <Shell.h>

+ + + + + + + + +

+Public Member Functions

int count () const
 Returns the number of arguments, including the name of the command. More...
 
const char * operator[] (int index) const
 Gets a specific argument for the command. More...
 
+ + + +

+Friends

+class Shell
 
+

Detailed Description

+

Convenience class that encapsulates an array of shell command arguments.

+
See Also
Shell
+ +

Definition at line 119 of file Shell.h.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
int ShellArguments::count () const
+
+inline
+
+ +

Returns the number of arguments, including the name of the command.

+
See Also
operator[]
+ +

Definition at line 127 of file Shell.h.

+ +
+
+ +
+
+ + + + + + + + +
const char * ShellArguments::operator[] (int index) const
+
+ +

Gets a specific argument for the command.

+
Parameters
+ + +
indexThe argument index between 0 and count() - 1.
+
+
+
Returns
The argument, or NULL if index is out of range.
+

The name of the command is argument 0. The command's remaining arguments are numbered 1 to count() - 1.

+
See Also
count()
+ +

Definition at line 927 of file Shell.cpp.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classSoftI2C-members.html b/classSoftI2C-members.html index 9d8ab6d3..9a27e7ff 100644 --- a/classSoftI2C-members.html +++ b/classSoftI2C-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -101,7 +101,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classSoftI2C.html b/classSoftI2C.html index 108af007..7e5d6398 100644 --- a/classSoftI2C.html +++ b/classSoftI2C.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -346,7 +346,7 @@ unsigned int  diff --git a/classSpeck-members.html b/classSpeck-members.html index b8dd6900..9e9e501b 100644 --- a/classSpeck-members.html +++ b/classSpeck-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -103,7 +103,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classSpeck.html b/classSpeck.html index badc2d0a..0f2e4048 100644 --- a/classSpeck.html +++ b/classSpeck.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -415,7 +415,7 @@ Public Member Functions
diff --git a/classSpeckSmall-members.html b/classSpeckSmall-members.html index 6d9c2d53..284f1523 100644 --- a/classSpeckSmall-members.html +++ b/classSpeckSmall-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -105,7 +105,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classSpeckSmall.html b/classSpeckSmall.html index 360a6b66..54d0d51e 100644 --- a/classSpeckSmall.html +++ b/classSpeckSmall.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -319,7 +319,7 @@ Public Member Functions
diff --git a/classSpeckTiny-members.html b/classSpeckTiny-members.html index 8371d3bb..6f5efa45 100644 --- a/classSpeckTiny-members.html +++ b/classSpeckTiny-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -104,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classSpeckTiny.html b/classSpeckTiny.html index d080ccf6..6487c918 100644 --- a/classSpeckTiny.html +++ b/classSpeckTiny.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -428,7 +428,7 @@ class SpeckSmall<
diff --git a/classTerminal-members.html b/classTerminal-members.html new file mode 100644 index 00000000..e80f4004 --- /dev/null +++ b/classTerminal-members.html @@ -0,0 +1,164 @@ + + + + + + +ArduinoLibs: Member List + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + + + + +
+ +
+ +
+
+
+
Terminal Member List
+
+
+ +

This is the complete list of members for Terminal, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
available()Terminalvirtual
backspace()Terminal
begin(Stream &stream, Mode mode=Serial)Terminal
Black enum valueTerminal
blink()Terminal
Blue enum valueTerminal
bold()Terminal
clear()Terminal
clearToEOL()Terminal
color(Color fg)Terminal
color(Color fg, Color bg)Terminal
Color enum nameTerminal
columns() const Terminalinline
cursorDown()Terminal
cursorLeft()Terminal
cursorMove(int x, int y)Terminal
cursorRight()Terminal
cursorUp()Terminal
Cyan enum valueTerminal
DarkBlue enum valueTerminal
DarkCyan enum valueTerminal
DarkGray enum valueTerminal
DarkGreen enum valueTerminal
DarkMagenta enum valueTerminal
DarkRed enum valueTerminal
DarkYellow enum valueTerminal
deleteChar()Terminal
deleteLine()Terminal
end()Terminal
flush()Terminalvirtual
Green enum valueTerminal
insertChar()Terminal
insertLine()Terminal
isWideCharacter(long code)Terminalstatic
LightGray enum valueTerminal
Magenta enum valueTerminal
mode() const Terminalinline
Mode enum nameTerminal
normal()Terminal
peek()Terminalvirtual
read()Terminalvirtual
readKey()Terminal
Red enum valueTerminal
reverse()Terminal
rows() const Terminalinline
scrollDown()Terminal
scrollUp()Terminal
Serial enum valueTerminal
setWindowSize(int columns, int rows)Terminal
stream() const Terminalinline
Telnet enum valueTerminal
Terminal()Terminal
underline()Terminal
unicodeKey() const Terminalinline
utf8Format(uint8_t *buffer, long code)Terminalstatic
utf8Length(long code)Terminalstatic
White enum valueTerminal
write(uint8_t c)Terminalvirtual
write(const uint8_t *buffer, size_t size)Terminalvirtual
writeProgMem(const char *str)Terminal
writeUnicode(long code)Terminal
Yellow enum valueTerminal
~Terminal()Terminalvirtual
+ + + + diff --git a/classTerminal.html b/classTerminal.html new file mode 100644 index 00000000..e86c49a3 --- /dev/null +++ b/classTerminal.html @@ -0,0 +1,1451 @@ + + + + + + +ArduinoLibs: Terminal Class Reference + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + + + + +
+ +
+ +
+
+ +
+
Terminal Class Reference
+
+
+ +

Extended stream interface for terminal operations. + More...

+ +

#include <Terminal.h>

+
+Inheritance diagram for Terminal:
+
+
+ + +Shell +LoginShell + +
+ + + + + + + + +

+Public Types

enum  Mode { Serial, +Telnet + }
 Mode to operate in, Serial or Telnet. More...
 
enum  Color {
+  Black = 0x00, +DarkRed = 0x01, +DarkGreen = 0x02, +DarkYellow = 0x03, +
+  DarkBlue = 0x04, +DarkMagenta = 0x05, +DarkCyan = 0x06, +LightGray = 0x07, +
+  DarkGray = 0x08, +Red = 0x09, +Green = 0x0A, +Yellow = 0x0B, +
+  Blue = 0x0C, +Magenta = 0x0D, +Cyan = 0x0E, +White = 0x0F +
+ }
 Terminal foreground or background colors. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Terminal ()
 Constructs a terminal object. More...
 
+virtual ~Terminal ()
 Destroys this terminal object.
 
void begin (Stream &stream, Mode mode=Serial)
 Begins terminal operations on an underlying stream. More...
 
void end ()
 Ends terminal operations on an underlying stream. More...
 
Stream * stream () const
 Returns a pointer to the underlying Stream, or NULL if the stream has not been set with begin() yet. More...
 
Terminal::Mode mode () const
 Returns the mode this terminal is operating in, Serial or Telnet. More...
 
virtual int available ()
 Returns the number of bytes that are available for reading. More...
 
virtual int peek ()
 Peeks at the next byte from the underlying stream. More...
 
virtual int read ()
 Reads the next byte from the underlying stream. More...
 
+virtual void flush ()
 Flushes all data in the underlying stream.
 
virtual size_t write (uint8_t c)
 Writes a single byte to the underlying stream. More...
 
virtual size_t write (const uint8_t *buffer, size_t size)
 Writes a buffer of data to the underlying stream. More...
 
void writeProgMem (const char *str)
 Writes a static string that is stored in program memory. More...
 
int readKey ()
 Reads the next key that was typed on this terminal. More...
 
long unicodeKey () const
 Gets the Unicode version of the last key returned by readKey(). More...
 
size_t writeUnicode (long code)
 Writes a Unicode code point to the output in UTF-8 encoding. More...
 
int columns () const
 Gets the number of columns in the window; defaults to 80. More...
 
int rows () const
 Gets the number of rows in the window; defaults to 24. More...
 
bool setWindowSize (int columns, int rows)
 Sets the number of columns and rows in the window. More...
 
+void clear ()
 Move the cursor to the top-left position and clear the screen.
 
+void clearToEOL ()
 Clears from the current cursor position to the end of the line.
 
void cursorMove (int x, int y)
 Moves the cursor to a specific location in the window. More...
 
void cursorLeft ()
 Moves the cursor left by one character. More...
 
void cursorRight ()
 Moves the cursor right by one character. More...
 
void cursorUp ()
 Moves the cursor up by one line. More...
 
void cursorDown ()
 Moves the cursor down by one line. More...
 
void backspace ()
 Backspaces over the last character. More...
 
void insertLine ()
 Inserts a line at the cursor position. More...
 
void insertChar ()
 Inserts a blank character at the cursor position. More...
 
void deleteLine ()
 Deletes a line at the cursor position. More...
 
void deleteChar ()
 Deletes the character at the cursor position. More...
 
void scrollUp ()
 Scrolls the contents of the window up one line. More...
 
void scrollDown ()
 Scrolls the contents of the window down one line. More...
 
void normal ()
 Selects normal text with all attributes and colors off. More...
 
void bold ()
 Enables bold text. More...
 
+void underline ()
 Enables underlined text.
 
+void blink ()
 Enables blinking text.
 
+void reverse ()
 Reverse the foreground and background colors for inverted text.
 
void color (Color fg)
 Selects a text foreground color with the default background color. More...
 
void color (Color fg, Color bg)
 Selects text foreground and background colors. More...
 
+ + + + + + + + + + +

+Static Public Member Functions

static bool isWideCharacter (long code)
 Determine if a Unicode character is wide. More...
 
static size_t utf8Length (long code)
 Determines the length of a Unicode code point in the UTF-8 encoding. More...
 
static size_t utf8Format (uint8_t *buffer, long code)
 Formats a Unicode code point in a buffer in the UTF-8 encoding. More...
 
+

Detailed Description

+

Extended stream interface for terminal operations.

+

This class extends the standard Arduino Stream class with functions that are suitable for interfacing to VT100 terminal applications like PuTTY.

+

The following example initializes a terminal running on the primary Arduino serial port:

+
Terminal term;
+
void setup() {
+
Serial.begin(9600);
+
term.begin(Serial);
+
}
+

The readKey() function reads input from the underlying stream, decodes any VT100 key escape sequences that it finds, and reports them to the application using USB, ASCII, or Unicode key codes. This is typically used in the application's main loop as follows:

+
void loop() {
+
int key = term.readKey();
+
switch (key) {
+
case -1: break; // No key available.
+
+
case KEY_LEFT_ARROW:
+
// Left arrow key has been pressed.
+
...
+
break;
+
+
case KEY_RIGHT_ARROW:
+
// Right arrow key has been pressed.
+
...
+
break;
+
+
case KEY_ESC:
+
// Escape key has been pressed.
+
...
+
break;
+
+
default:
+
if (key >= 0x20 && key <= 7E) {
+
// Visible ASCII character has been typed.
+
...
+
}
+
break;
+
}
+
}
+

This class understands extended characters in the UTF-8 encoding, allowing the full Unicode character set to be used in applications. Extended Unicode characters are reported by readKey() with the key code KEY_UNICODE, with the actual code point returned via unicodeKey().

+

On the output side, UTF-8 strings can be written to the terminal using write(), or writeUnicode() can be used to write a single Unicode character in UTF-8.

+
Note
This class does not have any special support for right-to-left scripts or composed characters. Unicode characters are read and written in the order in which they arrive. Applications may need to alter strings to display them correctly in such scripts. Patches are welcome to fix this.
+
See Also
Shell
+ +

Definition at line 36 of file Terminal.h.

+

Member Enumeration Documentation

+ +
+
+ + + + +
enum Terminal::Color
+
+ +

Terminal foreground or background colors.

+ + + + + + + + + + + + + + + + + +
Enumerator
Black  +

Color is black.

+
DarkRed  +

Color is dark red.

+
DarkGreen  +

Color is dark green.

+
DarkYellow  +

Color is dark yellow.

+
DarkBlue  +

Color is dark blue.

+
DarkMagenta  +

Color is dark magenta.

+
DarkCyan  +

Color is dark cyan.

+
LightGray  +

Color is light gray.

+
DarkGray  +

Color is dark gray.

+
Red  +

Color is light red.

+
Green  +

Color is light green.

+
Yellow  +

Color is light yellow.

+
Blue  +

Color is light blue.

+
Magenta  +

Color is light magenta.

+
Cyan  +

Color is light cyan.

+
White  +

Color is white.

+
+ +

Definition at line 102 of file Terminal.h.

+ +
+
+ +
+
+ + + + +
enum Terminal::Mode
+
+ +

Mode to operate in, Serial or Telnet.

+ + + +
Enumerator
Serial  +

Operates the terminal in serial mode.

+
Telnet  +

Operates the terminal in telnet mode.

+
+ +

Definition at line 42 of file Terminal.h.

+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
Terminal::Terminal ()
+
+ +

Constructs a terminal object.

+

This constructor must be followed by a call to begin() to specify the underlying stream to use for reading and writing.

+
See Also
begin()
+ +

Definition at line 133 of file Terminal.cpp.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
int Terminal::available ()
+
+virtual
+
+ +

Returns the number of bytes that are available for reading.

+
Note
It is possible for this function to return a positive value while readKey() does not produce a new key. This can happen with VT100 key escape sequences and UTF-8 characters that extend over multiple bytes.
+
See Also
readKey()
+ +

Definition at line 228 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + + + +
void Terminal::backspace ()
+
+ +

Backspaces over the last character.

+

This function prints CTRL-H, a space, and another CTRL-H to backspace over and erase the last character on the current line.

+

If the last character was a wide Unicode character, then two calls to this function are required to erase it. See isWideCharacter() for more information.

+
See Also
isWideCharacter()
+ +

Definition at line 949 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void Terminal::begin (Stream & stream,
Mode mode = Serial 
)
+
+ +

Begins terminal operations on an underlying stream.

+
Parameters
+ + + +
streamThe underlying stream, whether a serial port, TCP connection, or some other stream.
modeThe mode to operate in, either Serial or Telnet.
+
+
+

If Telnet mode is selected, then embedded commands and options from the telnet protocol (RFC 854) will be interpreted. This is useful if the underlying stream is a TCP connection on port 23. The mode operates as a telnet server.

+
See Also
end(), stream(), mode()
+ +

Definition at line 183 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + + + +
void Terminal::bold ()
+
+ +

Enables bold text.

+
See Also
normal()
+ +

Definition at line 1037 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + + + + +
void Terminal::color (Color fg)
+
+ +

Selects a text foreground color with the default background color.

+
Parameters
+ + +
fgThe foreground color to select.
+
+
+

All other text attributes (reverse, underline, etc) are disabled.

+

The following example displays a warning string with the initial word in red and all following words in normal text:

+
+
term.print("WARNING: ");
+
term.normal();
+
term.println("All files on the SD card will be deleted!");
+
See Also
normal()
+ +

Definition at line 1174 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void Terminal::color (Color fg,
Color bg 
)
+
+ +

Selects text foreground and background colors.

+
Parameters
+ + + +
fgThe foreground color to select.
bgThe background color to select.
+
+
+

All other text attributes (reverse, underline, etc) are disabled.

+
See Also
normal()
+ +

Definition at line 1206 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
int Terminal::columns () const
+
+inline
+
+ +

Gets the number of columns in the window; defaults to 80.

+
See Also
rows(), setWindowSize(), cursorMove()
+ +

Definition at line 72 of file Terminal.h.

+ +
+
+ +
+
+ + + + + + + +
void Terminal::cursorDown ()
+
+ +

Moves the cursor down by one line.

+
See Also
cursorUp(), cursorLeft(), cursorRight(), cursorMove()
+ +

Definition at line 931 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + + + +
void Terminal::cursorLeft ()
+
+ +

Moves the cursor left by one character.

+
See Also
cursorRight(), cursorUp(), cursorDown(), cursorMove()
+ +

Definition at line 898 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void Terminal::cursorMove (int x,
int y 
)
+
+ +

Moves the cursor to a specific location in the window.

+
Parameters
+ + + +
xThe x position for the cursor between 0 and columns() - 1.
yThe y position for the cursor between 0 and rows() - 1.
+
+
+
See Also
cursorLeft(), columns(), rows(), setWindowSize()
+ +

Definition at line 866 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + + + +
void Terminal::cursorRight ()
+
+ +

Moves the cursor right by one character.

+
See Also
cursorLeft(), cursorUp(), cursorDown(), cursorMove()
+ +

Definition at line 909 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + + + +
void Terminal::cursorUp ()
+
+ +

Moves the cursor up by one line.

+
See Also
cursorDown(), cursorLeft(), cursorRight(), cursorMove()
+ +

Definition at line 920 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + + + +
void Terminal::deleteChar ()
+
+ +

Deletes the character at the cursor position.

+
See Also
deleteLine(), insertChar()
+ +

Definition at line 993 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + + + +
void Terminal::deleteLine ()
+
+ +

Deletes a line at the cursor position.

+
See Also
deleteChar(), insertLine()
+ +

Definition at line 982 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + + + +
void Terminal::end ()
+
+ +

Ends terminal operations on an underlying stream.

+

This function may be useful if you want to detach the terminal from the underlying stream so that it can be used for something else.

+ +

Definition at line 198 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + + + +
void Terminal::insertChar ()
+
+ +

Inserts a blank character at the cursor position.

+
See Also
insertLine(), deleteChar()
+ +

Definition at line 971 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + + + +
void Terminal::insertLine ()
+
+ +

Inserts a line at the cursor position.

+
See Also
insertChar(), deleteLine()
+ +

Definition at line 960 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool Terminal::isWideCharacter (long code)
+
+static
+
+ +

Determine if a Unicode character is wide.

+
Parameters
+ + +
codeThe code point for the Unicode character.
+
+
+
Returns
Returns true if code is a wide character, false otherwise.
+

Wide characters typically come from East Asian languages and occupy two spaces in a terminal. Two calls to backspace() are required to erase such characters.

+

References: http://www.unicode.org/reports/tr11/, http://www.unicode.org/Public/UCD/latest/ucd/EastAsianWidth.txt

+
See Also
backspace(), writeUnicode()
+ +

Definition at line 1247 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Terminal::Mode Terminal::mode () const
+
+inline
+
+ +

Returns the mode this terminal is operating in, Serial or Telnet.

+
See Also
begin()
+ +

Definition at line 52 of file Terminal.h.

+ +
+
+ +
+
+ + + + + + + +
void Terminal::normal ()
+
+ +

Selects normal text with all attributes and colors off.

+
See Also
color(), bold(), underline(), blink(), reverse()
+ +

Definition at line 1026 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
int Terminal::peek ()
+
+virtual
+
+ +

Peeks at the next byte from the underlying stream.

+
Returns
The next byte or -1 if no bytes are available yet.
+
See Also
read()
+ +

Definition at line 240 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
int Terminal::read ()
+
+virtual
+
+ +

Reads the next byte from the underlying stream.

+
Returns
Returns 0x00 to 0xFF if a byte is ready, or -1 if none available.
+

This function performs a low-level read on the underlying byte stream without applying any specific interpretation to the byte. In particular, escape sequences corresponding to arrow and function keys will not be recognized.

+

Applications will usually want to call readKey() instead to handle escape sequences for arrow and function keys. This function is provided as a convenience to implement the parent Stream interface.

+
See Also
readKey()
+ +

Definition at line 261 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + + + +
int Terminal::readKey ()
+
+ +

Reads the next key that was typed on this terminal.

+
Returns
Returns -1 if there is no key ready yet; 0x00 to 0x7F for an ASCII character; KEY_UNICODE for an extended Unicode code point, or a USB keyboard code for special arrow or function keys.
+

For example, if the user types the Home key, then this function will return KEY_HOME. If the user types the capital letter A, then this function will return 0x41.

+

If the user types an extended Unicode character (U+0080 and higher), then this function will return KEY_UNICODE. The application should call unicodeKey() to retrieve the actual code point. All Unicode characters are assumed to be in the UTF-8 encoding on the stream.

+

Some ASCII control characters correspond to special keys and will be mapped appropriately:

+
    +
  • 0x08 (CTRL-H) and 0x7F (DEL) are mapped to KEY_BACKSPACE
  • +
  • 0x0D (CTRL-M) and 0x0A (CTRL-J) are mapped to KEY_RETURN
  • +
  • 0x09 (CTRL-I) is mapped to KEY_TAB
  • +
  • 0x1B (CTRL-[) is mapped to KEY_ESCAPE
  • +
+

In all of these cases, the original ASCII code will be reported by unicodeKey(). As a special case, if 0x0D is immediately followed by 0x0A (that is, CRLF) then KEY_RETURN will be reported only once with unicodeKey() set to 0x0D. This ensures that all line ending types are mapped to a single KEY_RETURN report.

+

If the window size has changed due to a remote event, then KEY_WINSIZE will be returned. This can allow the caller to clear and redraw the window in the new size.

+
See Also
unicodeKey(), read()
+ +

Definition at line 387 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
int Terminal::rows () const
+
+inline
+
+ +

Gets the number of rows in the window; defaults to 24.

+
See Also
columns(), setWindowSize(), cursorMove()
+ +

Definition at line 73 of file Terminal.h.

+ +
+
+ +
+
+ + + + + + + +
void Terminal::scrollDown ()
+
+ +

Scrolls the contents of the window down one line.

+
See Also
scrollUp()
+ +

Definition at line 1015 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + + + +
void Terminal::scrollUp ()
+
+ +

Scrolls the contents of the window up one line.

+
See Also
scrollDown()
+ +

Definition at line 1004 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
bool Terminal::setWindowSize (int columns,
int rows 
)
+
+ +

Sets the number of columns and rows in the window.

+
Parameters
+ + + +
columnsThe number of columns between 1 and 10000.
rowsThe number of rows between 1 and 10000.
+
+
+
Returns
Returns true if the window size has changed.
+

This function should be used if the application has some information about the actual window size. For serial ports, this usually isn't available but telnet and ssh sessions can get the window size from the remote host.

+

The window size defaults to 80x24 which is the standard default for terminal programs like PuTTY that emulate a VT100.

+

If the window size changes due to a remote event, readKey() will return KEY_WINSIZE to inform the application.

+
See Also
columns(), rows(), readKey()
+ +

Definition at line 801 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Stream * Terminal::stream () const
+
+inline
+
+ +

Returns a pointer to the underlying Stream, or NULL if the stream has not been set with begin() yet.

+
See Also
begin()
+ +

Definition at line 51 of file Terminal.h.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
long Terminal::unicodeKey () const
+
+inline
+
+ +

Gets the Unicode version of the last key returned by readKey().

+

If readKey() returned an ASCII character (0x00 to 0x7F) or KEY_UNICODE, then this function can be used to query the full Unicode code point for the key that was typed. If some other key is typed, or no key was typed, then this function will return -1.

+

Unicode code points range between 0 and 0x10FFFF.

+
See Also
readKey(), writeUnicode()
+ +

Definition at line 68 of file Terminal.h.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
size_t Terminal::utf8Format (uint8_t * buffer,
long code 
)
+
+static
+
+ +

Formats a Unicode code point in a buffer in the UTF-8 encoding.

+
Parameters
+ + + +
bufferThe buffer to write the UTF-8 encoding to. At most 4 bytes will be written to this buffer.
codeThe code point to be written between 0 and 0x10FFFF.
+
+
+
Returns
The number of bytes that were written to buffer to represent code. Returns zero if code is not a valid code point.
+
See Also
utf8Length(), writeUnicode()
+ +

Definition at line 1334 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
size_t Terminal::utf8Length (long code)
+
+static
+
+ +

Determines the length of a Unicode code point in the UTF-8 encoding.

+
Parameters
+ + +
codeThe code point to be written between 0 and 0x10FFFF.
+
+
+
Returns
The number of bytes that makes up the UTF-8 encoding of code. Returns zero if code is not a valid code point.
+
See Also
utf8Format(), writeUnicode()
+ +

Definition at line 1302 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
size_t Terminal::write (uint8_t c)
+
+virtual
+
+ +

Writes a single byte to the underlying stream.

+
Parameters
+ + +
cThe byte to write.
+
+
+
Returns
The number of bytes written, zero on error.
+ +

Definition at line 286 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
size_t Terminal::write (const uint8_t * buffer,
size_t size 
)
+
+virtual
+
+ +

Writes a buffer of data to the underlying stream.

+
Parameters
+ + + +
bufferPoints to the buffer to write.
sizeThe number of bytes in the buffer.
+
+
+
Returns
The number of bytes written, which may be short on error.
+ +

Definition at line 299 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + + + + +
void Terminal::writeProgMem (const char * str)
+
+ +

Writes a static string that is stored in program memory.

+
Parameters
+ + +
strPoints to the NUL-terminated string in program memory.
+
+
+

This is a convenience function for printing static strings that are stored in program memory.

+
See Also
write()
+ +

Definition at line 314 of file Terminal.cpp.

+ +
+
+ +
+
+ + + + + + + + +
size_t Terminal::writeUnicode (long code)
+
+ +

Writes a Unicode code point to the output in UTF-8 encoding.

+
Parameters
+ + +
codeThe code point to be written between 0 and 0x10FFFF.
+
+
+
Returns
The number of bytes that were written to the underlying stream to represent code. Returns zero if code is not a valid code point.
+

This function is useful when a specific Unicode character is desired; for example the code point 0x2264 corresponds to the less than or equal to operator "≤". See the Unicode standard for more information.

+

Unicode characters between 0x00 and 0x7F and strings that are already in the UTF-8 encoding can also be written using write().

+
See Also
write()
+ +

Definition at line 757 of file Terminal.cpp.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classTerminal.png b/classTerminal.png new file mode 100644 index 00000000..4e3fd821 Binary files /dev/null and b/classTerminal.png differ diff --git a/classTextField-members.html b/classTextField-members.html index e325f4f6..a25675cf 100644 --- a/classTextField-members.html +++ b/classTextField-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -109,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classTextField.html b/classTextField.html index d923e730..a362ab20 100644 --- a/classTextField.html +++ b/classTextField.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -167,7 +167,7 @@ LiquidCrystal * 

Detailed Description

Field that displays a read-only text value.

This following example displays a text field with the label "Form example" and a value() of "v1.0".

-
Form mainForm(lcd);
+
Form mainForm(lcd);
TextField welcomeField(mainForm, "Form example", "v1.0");
FormText.png @@ -177,7 +177,7 @@ LiquidCrystal * 
void loop() {
timeField.setValue(millis() / 1000);
-
+
mainForm.dispatch(lcd.getButton());
}

For writable fields, use BoolField, IntField, or TimeField.

See Also
Field
@@ -343,7 +343,7 @@ LiquidCrystal *  diff --git a/classTimeField-members.html b/classTimeField-members.html index 2f3630c8..17125352 100644 --- a/classTimeField-members.html +++ b/classTimeField-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -113,7 +113,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classTimeField.html b/classTimeField.html index 8b2bb247..0774973d 100644 --- a/classTimeField.html +++ b/classTimeField.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -181,12 +181,12 @@ LiquidCrystal * TimeField is suitable for displaying wall clock time in 24-hour format, or for displaying timeouts and durations in seconds. Times are specified in seconds as an unsigned long value. They are displayed as HH:MM:SS, for hours, minutes, and seconds.

The time field can be either read-only or read-write. When read-write, the Up, Down, Left, and Right buttons can be used to modify the hour, minute, and second components of the time value.

The following example displays the number of hours, minutes, and seconds since the device was reset, wrapping around after 24 hours:

-
Form mainForm(lcd);
+
Form mainForm(lcd);
TimeField timeField(mainForm, "Time since reset", 24, TIMEFIELD_READ_ONLY);
void loop() {
timeField.setValue(millis() / 1000);
-
mainForm.dispatch(lcd.getButton());
+
mainForm.dispatch(lcd.getButton());
}
FormTimeRO.png @@ -541,7 +541,7 @@ LiquidCrystal *  diff --git a/classTransistorNoiseSource-members.html b/classTransistorNoiseSource-members.html index 98f9e17c..f3857c5a 100644 --- a/classTransistorNoiseSource-members.html +++ b/classTransistorNoiseSource-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -101,7 +101,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classTransistorNoiseSource.html b/classTransistorNoiseSource.html index 8ef24f39..27806381 100644 --- a/classTransistorNoiseSource.html +++ b/classTransistorNoiseSource.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
+ All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -280,7 +280,7 @@ Additional Inherited Members
diff --git a/classXOF-members.html b/classXOF-members.html index 36f7f8bc..6369ed1a 100644 --- a/classXOF-members.html +++ b/classXOF-members.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -102,7 +102,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/classXOF.html b/classXOF.html index 779543f4..013cb351 100644 --- a/classXOF.html +++ b/classXOF.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -508,7 +508,7 @@ Public Member Functions
diff --git a/classXTS-members.html b/classXTS-members.html new file mode 100644 index 00000000..b595f8ae --- /dev/null +++ b/classXTS-members.html @@ -0,0 +1,115 @@ + + + + + + +ArduinoLibs: Member List + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + + + + +
+ +
+ +
+
+
+
XTS< T1, T2 > Member List
+
+
+ +

This is the complete list of members for XTS< T1, T2 >, including all inherited members.

+ + + + + + + + + + + + + + + +
clear()XTSCommon
decryptSector(uint8_t *output, const uint8_t *input)XTSCommon
encryptSector(uint8_t *output, const uint8_t *input)XTSCommon
keySize() const XTSCommonvirtual
sectorSize() const XTSCommoninline
setBlockCiphers(BlockCipher *cipher1, BlockCipher *cipher2)XTSCommoninlineprotected
setKey(const uint8_t *key, size_t len)XTSCommonvirtual
setSectorSize(size_t size)XTSCommon
setTweak(const uint8_t *tweak, size_t len)XTSCommon
tweakSize() const XTSCommon
XTS()XTS< T1, T2 >inline
XTSCommon()XTSCommonprotected
~XTS()XTS< T1, T2 >inline
~XTSCommon()XTSCommonvirtual
+ + + + diff --git a/classXTS.html b/classXTS.html new file mode 100644 index 00000000..fb98c15a --- /dev/null +++ b/classXTS.html @@ -0,0 +1,228 @@ + + + + + + +ArduinoLibs: XTS< T1, T2 > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + + + + +
+ +
+ +
+
+ +
+
XTS< T1, T2 > Class Template Reference
+
+
+ +

Implementation of the XTS mode for 128-bit block ciphers. + More...

+ +

#include <XTS.h>

+
+Inheritance diagram for XTS< T1, T2 >:
+
+
+ + +XTSCommon + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 XTS ()
 Constructs an object for encrypting sectors in XTS mode. More...
 
~XTS ()
 Clears all sensitive information and destroys this object.
 
- Public Member Functions inherited from XTSCommon
+virtual ~XTSCommon ()
 Clears all sensitive information and destroys this object.
 
virtual size_t keySize () const
 Gets the size of the key for XTS mode. More...
 
size_t tweakSize () const
 Gets the maximum supported size for the tweak. More...
 
size_t sectorSize () const
 Gets the size of sectors encrypted or decrypted by this class. More...
 
bool setSectorSize (size_t size)
 Sets the size of sectors encrypted or decrypted by this class. More...
 
virtual bool setKey (const uint8_t *key, size_t len)
 Sets the key to use for XTS mode. More...
 
bool setTweak (const uint8_t *tweak, size_t len)
 Sets the tweak value for the current sector to encrypt or decrypt. More...
 
void encryptSector (uint8_t *output, const uint8_t *input)
 Encrypts an entire sector of data. More...
 
void decryptSector (uint8_t *output, const uint8_t *input)
 Decrypts an entire sector of data. More...
 
+void clear ()
 Clears all security-sensitive state from this XTS object.
 
+ + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from XTSCommon
XTSCommon ()
 Constructs an XTS object with a default sector size of 512 bytes.
 
void setBlockCiphers (BlockCipher *cipher1, BlockCipher *cipher2)
 Sets the two block ciphers to use for XTS mode. More...
 
+

Detailed Description

+

template<typename T1, typename T2 = T1>
+class XTS< T1, T2 >

+ +

Implementation of the XTS mode for 128-bit block ciphers.

+

XTS mode implements the XEX tweakable block cipher mode with ciphertext stealing for data that isn't a multiple of the 128-bit block size.

+

XTS was designed for use in disk encryption where a large number of equal-sized "sectors" need to be encrypted in a way that information from one sector cannot be used to decrypt the other sectors. The mode combines the key with a sector-specific "tweak" which is usually based on the sector number.

+

Some Arduino systems have SD cards, but typically embedded systems do not have disk drives. However, XTS can still be useful on Arduino systems with lots of EEPROM or flash memory. If the application needs to store critical security parameters like private keys then XTS can be used to encrypt non-volatile memory to protect the parameters.

+

The following example encrypts a sector using XTS mode:

+
+
xts.setSectorSize(520);
+
xts.setKey(key, 64); // Twice the AES256 key size.
+
xts.setTweak(sectorNumber, sizeof(sectorNumber));
+
xts.encryptSector(output, input);
+

XTS keys are twice the size of the underlying block cipher (AES256 in the above example). The XTS key is divided into two halves. The first half is used to encrypt the plaintext and the second half is used to encrypt the sector-specific tweak. The same key can be used for both, in which case XTS is equivalent to the original XEX design upon which XTS was based. The companion XTSSingleKey class can be used for single-key scenarios.

+

The template parameter must be a concrete subclass of BlockCipher indicating the specific block cipher to use. The example above uses AES256 as the underlying cipher.

+

It is also possible to specify two different block ciphers, as long as they have the same key size. Because the second half of the key is only used to encrypt tweaks and never decrypt, a reduced block cipher implementation like SpeckTiny that only supports encryption can be used for the second block cipher:

+

This might save some memory that would otherwise be needed for the decryption key schedule of the second block cipher. XTSSingleKey provides another method to save memory.

+

References: IEEE Std. 1619-2007, NIST SP 800-38E, a href="http://web.cs.ucdavis.edu/~rogaway/papers/offsets.pdf">XEX.

+
See Also
XTSSingleKey, XTSCommon
+ +

Definition at line 79 of file XTS.h.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename T1, typename T2 = T1>
+ + + + + +
+ + + + + + + +
XTS< T1, T2 >::XTS ()
+
+inline
+
+ +

Constructs an object for encrypting sectors in XTS mode.

+

This constructor should be followed by a call to setSectorSize(). The default sector size is 512 bytes.

+ +

Definition at line 82 of file XTS.h.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classXTS.png b/classXTS.png new file mode 100644 index 00000000..aa75e255 Binary files /dev/null and b/classXTS.png differ diff --git a/classXTSCommon-members.html b/classXTSCommon-members.html new file mode 100644 index 00000000..0f1bf05f --- /dev/null +++ b/classXTSCommon-members.html @@ -0,0 +1,114 @@ + + + + + + +ArduinoLibs: Member List + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + + + + +
+ +
+ +
+
+
+
XTSCommon Member List
+
+
+ +

This is the complete list of members for XTSCommon, including all inherited members.

+ + + + + + + + + + + + + + +
clear()XTSCommon
decryptSector(uint8_t *output, const uint8_t *input)XTSCommon
encryptSector(uint8_t *output, const uint8_t *input)XTSCommon
keySize() const XTSCommonvirtual
sectorSize() const XTSCommoninline
setBlockCiphers(BlockCipher *cipher1, BlockCipher *cipher2)XTSCommoninlineprotected
setKey(const uint8_t *key, size_t len)XTSCommonvirtual
setSectorSize(size_t size)XTSCommon
setTweak(const uint8_t *tweak, size_t len)XTSCommon
tweakSize() const XTSCommon
XTSCommon()XTSCommonprotected
XTSSingleKeyCommon (defined in XTSCommon)XTSCommonfriend
~XTSCommon()XTSCommonvirtual
+ + + + diff --git a/classXTSCommon.html b/classXTSCommon.html new file mode 100644 index 00000000..0541f3aa --- /dev/null +++ b/classXTSCommon.html @@ -0,0 +1,505 @@ + + + + + + +ArduinoLibs: XTSCommon Class Reference + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + + + + +
+ +
+ +
+
+ +
+
XTSCommon Class Reference
+
+
+ +

Concrete base class to assist with implementing XTS mode for 128-bit block ciphers. + More...

+ +

#include <XTS.h>

+
+Inheritance diagram for XTSCommon:
+
+
+ + +XTS< T1, T2 > +XTSSingleKeyCommon +XTSSingleKey< T > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+virtual ~XTSCommon ()
 Clears all sensitive information and destroys this object.
 
virtual size_t keySize () const
 Gets the size of the key for XTS mode. More...
 
size_t tweakSize () const
 Gets the maximum supported size for the tweak. More...
 
size_t sectorSize () const
 Gets the size of sectors encrypted or decrypted by this class. More...
 
bool setSectorSize (size_t size)
 Sets the size of sectors encrypted or decrypted by this class. More...
 
virtual bool setKey (const uint8_t *key, size_t len)
 Sets the key to use for XTS mode. More...
 
bool setTweak (const uint8_t *tweak, size_t len)
 Sets the tweak value for the current sector to encrypt or decrypt. More...
 
void encryptSector (uint8_t *output, const uint8_t *input)
 Encrypts an entire sector of data. More...
 
void decryptSector (uint8_t *output, const uint8_t *input)
 Decrypts an entire sector of data. More...
 
+void clear ()
 Clears all security-sensitive state from this XTS object.
 
+ + + + + + + +

+Protected Member Functions

XTSCommon ()
 Constructs an XTS object with a default sector size of 512 bytes.
 
void setBlockCiphers (BlockCipher *cipher1, BlockCipher *cipher2)
 Sets the two block ciphers to use for XTS mode. More...
 
+ + + +

+Friends

+class XTSSingleKeyCommon
 
+

Detailed Description

+

Concrete base class to assist with implementing XTS mode for 128-bit block ciphers.

+

References: IEEE Std. 1619-2007, NIST SP 800-38E, a href="http://web.cs.ucdavis.edu/~rogaway/papers/offsets.pdf">XEX.

+
See Also
XTS, XTSSingleKey
+ +

Definition at line 30 of file XTS.h.

+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
void XTSCommon::decryptSector (uint8_t * output,
const uint8_t * input 
)
+
+ +

Decrypts an entire sector of data.

+
Parameters
+ + + +
outputThe output buffer to write the plaintext to, which can be the same as input.
inputThe input buffer to read the ciphertext from.
+
+
+

The input and output buffers must be at least sectorSize() bytes in length.

+
See Also
encryptSector(), setKey(), setTweak()
+ +

Definition at line 215 of file XTS.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void XTSCommon::encryptSector (uint8_t * output,
const uint8_t * input 
)
+
+ +

Encrypts an entire sector of data.

+
Parameters
+ + + +
outputThe output buffer to write the ciphertext to, which can be the same as input.
inputThe input buffer to read the plaintext from.
+
+
+

The input and output buffers must be at least sectorSize() bytes in length.

+
See Also
decryptSector(), setKey(), setTweak()
+ +

Definition at line 170 of file XTS.cpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
size_t XTSCommon::keySize () const
+
+virtual
+
+ +

Gets the size of the key for XTS mode.

+

The key size for XTS mode is twice the size of the underlying block cipher key size.

+
See Also
setKey(), tweakSize()
+ +

Reimplemented in XTSSingleKeyCommon.

+ +

Definition at line 62 of file XTS.cpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
size_t XTSCommon::sectorSize () const
+
+inline
+
+ +

Gets the size of sectors encrypted or decrypted by this class.

+

The default value is 512 bytes.

+
See Also
setSectorSize()
+ +

Definition at line 38 of file XTS.h.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void XTSCommon::setBlockCiphers (BlockCiphercipher1,
BlockCiphercipher2 
)
+
+inlineprotected
+
+ +

Sets the two block ciphers to use for XTS mode.

+
Parameters
+ + + +
cipher1Points to the first block cipher object, which must be capable of both encryption and decryption.
cipher2Points to the second block cipher object, which must be capable of both encryption but does not need to be capable of decryption.
+
+
+

Both block ciphers must have a 128-bit block size.

+ +

Definition at line 51 of file XTS.h.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool XTSCommon::setKey (const uint8_t * key,
size_t len 
)
+
+virtual
+
+ +

Sets the key to use for XTS mode.

+
Parameters
+ + + +
keyPoints to the key.
lenThe size of the key in bytes which must be twice the size of the underlying block cipher's key size.
+
+
+
Returns
Returns true if the key was set or false if len was incorrect.
+

This function should be followed by a call to setTweak() to specify the sector-specific tweak.

+
See Also
keySize(), setTweak(), encryptSector()
+ +

Reimplemented in XTSSingleKeyCommon.

+ +

Definition at line 119 of file XTS.cpp.

+ +
+
+ +
+
+ + + + + + + + +
bool XTSCommon::setSectorSize (size_t size)
+
+ +

Sets the size of sectors encrypted or decrypted by this class.

+
Parameters
+ + +
sizeThe sector size in bytes, which must be greater than or equal to 16.
+
+
+
Returns
Returns false if size is less than 16.
+
See Also
sectorSize(), encryptSector()
+ +

Definition at line 97 of file XTS.cpp.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
bool XTSCommon::setTweak (const uint8_t * tweak,
size_t len 
)
+
+ +

Sets the tweak value for the current sector to encrypt or decrypt.

+
Parameters
+ + + +
tweakPoints to the tweak.
lenThe length of the tweak which must be less than or equal to 16.
+
+
+
Returns
Returns true if the tweak was set or false if len was incorrect.
+

If len is less than 16, then the tweak will be zero-padded to 16 bytes.

+

The tweak is encrypted with the second half of the XTS key to generate the actual tweak value for the sector.

+
See Also
tweakSize(), setKey(), encryptSector()
+ +

Definition at line 142 of file XTS.cpp.

+ +
+
+ +
+
+ + + + + + + +
size_t XTSCommon::tweakSize () const
+
+ +

Gets the maximum supported size for the tweak.

+

This function returns 16, which indicates that any tweak up to 16 bytes in size can be specified via setTweak().

+ +

Definition at line 73 of file XTS.cpp.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classXTSCommon.png b/classXTSCommon.png new file mode 100644 index 00000000..a3d9503a Binary files /dev/null and b/classXTSCommon.png differ diff --git a/classXTSSingleKey-members.html b/classXTSSingleKey-members.html new file mode 100644 index 00000000..ac1dc11a --- /dev/null +++ b/classXTSSingleKey-members.html @@ -0,0 +1,117 @@ + + + + + + +ArduinoLibs: Member List + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + + + + +
+ +
+ +
+
+
+
XTSSingleKey< T > Member List
+
+
+ +

This is the complete list of members for XTSSingleKey< T >, including all inherited members.

+ + + + + + + + + + + + + + + + + +
clear()XTSCommon
decryptSector(uint8_t *output, const uint8_t *input)XTSCommon
encryptSector(uint8_t *output, const uint8_t *input)XTSCommon
keySize() const XTSSingleKeyCommonvirtual
sectorSize() const XTSCommoninline
setBlockCiphers(BlockCipher *cipher1, BlockCipher *cipher2)XTSCommoninlineprotected
setKey(const uint8_t *key, size_t len)XTSSingleKeyCommonvirtual
setSectorSize(size_t size)XTSCommon
setTweak(const uint8_t *tweak, size_t len)XTSCommon
tweakSize() const XTSCommon
XTSCommon()XTSCommonprotected
XTSSingleKey()XTSSingleKey< T >inline
XTSSingleKeyCommon()XTSSingleKeyCommoninlineprotected
~XTSCommon()XTSCommonvirtual
~XTSSingleKey()XTSSingleKey< T >inline
~XTSSingleKeyCommon()XTSSingleKeyCommonvirtual
+ + + + diff --git a/classXTSSingleKey.html b/classXTSSingleKey.html new file mode 100644 index 00000000..4f466364 --- /dev/null +++ b/classXTSSingleKey.html @@ -0,0 +1,226 @@ + + + + + + +ArduinoLibs: XTSSingleKey< T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + + + + +
+ +
+ +
+
+ +
+
XTSSingleKey< T > Class Template Reference
+
+
+ +

Implementation of the single-key XTS mode for 128-bit block ciphers. + More...

+ +

#include <XTS.h>

+
+Inheritance diagram for XTSSingleKey< T >:
+
+
+ + +XTSSingleKeyCommon +XTSCommon + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 XTSSingleKey ()
 Constructs an object for encrypting sectors in XTS mode with a single key instead of two split keys. More...
 
~XTSSingleKey ()
 Clears all sensitive information and destroys this object.
 
- Public Member Functions inherited from XTSSingleKeyCommon
+virtual ~XTSSingleKeyCommon ()
 Clears all sensitive information and destroys this object.
 
size_t keySize () const
 Gets the size of the key for single-pkey XTS mode. More...
 
bool setKey (const uint8_t *key, size_t len)
 Sets the key to use for single-keyh XTS mode. More...
 
- Public Member Functions inherited from XTSCommon
+virtual ~XTSCommon ()
 Clears all sensitive information and destroys this object.
 
size_t tweakSize () const
 Gets the maximum supported size for the tweak. More...
 
size_t sectorSize () const
 Gets the size of sectors encrypted or decrypted by this class. More...
 
bool setSectorSize (size_t size)
 Sets the size of sectors encrypted or decrypted by this class. More...
 
bool setTweak (const uint8_t *tweak, size_t len)
 Sets the tweak value for the current sector to encrypt or decrypt. More...
 
void encryptSector (uint8_t *output, const uint8_t *input)
 Encrypts an entire sector of data. More...
 
void decryptSector (uint8_t *output, const uint8_t *input)
 Decrypts an entire sector of data. More...
 
+void clear ()
 Clears all security-sensitive state from this XTS object.
 
+ + + + + + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from XTSSingleKeyCommon
XTSSingleKeyCommon ()
 Constructs an XTS object with a default sector size of 512 bytes.
 
- Protected Member Functions inherited from XTSCommon
XTSCommon ()
 Constructs an XTS object with a default sector size of 512 bytes.
 
void setBlockCiphers (BlockCipher *cipher1, BlockCipher *cipher2)
 Sets the two block ciphers to use for XTS mode. More...
 
+

Detailed Description

+

template<typename T>
+class XTSSingleKey< T >

+ +

Implementation of the single-key XTS mode for 128-bit block ciphers.

+

XTS mode normally uses two keys to encrypt plaintext and the sector-specific tweak values. This class uses the same key for both purposes, which can help save memory.

+

References: IEEE Std. 1619-2007, NIST SP 800-38E, a href="http://web.cs.ucdavis.edu/~rogaway/papers/offsets.pdf">XEX.

+
See Also
XTS, XTSSingleKeyCommon
+ +

Definition at line 91 of file XTS.h.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
XTSSingleKey< T >::XTSSingleKey ()
+
+inline
+
+ +

Constructs an object for encrypting sectors in XTS mode with a single key instead of two split keys.

+

This constructor should be followed by a call to setSectorSize(). The default sector size is 512 bytes.

+ +

Definition at line 94 of file XTS.h.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classXTSSingleKey.png b/classXTSSingleKey.png new file mode 100644 index 00000000..a3ed4bb5 Binary files /dev/null and b/classXTSSingleKey.png differ diff --git a/classXTSSingleKeyCommon-members.html b/classXTSSingleKeyCommon-members.html new file mode 100644 index 00000000..c413c905 --- /dev/null +++ b/classXTSSingleKeyCommon-members.html @@ -0,0 +1,115 @@ + + + + + + +ArduinoLibs: Member List + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + + + + +
+ +
+ +
+
+
+
XTSSingleKeyCommon Member List
+
+
+ +

This is the complete list of members for XTSSingleKeyCommon, including all inherited members.

+ + + + + + + + + + + + + + + +
clear()XTSCommon
decryptSector(uint8_t *output, const uint8_t *input)XTSCommon
encryptSector(uint8_t *output, const uint8_t *input)XTSCommon
keySize() const XTSSingleKeyCommonvirtual
sectorSize() const XTSCommoninline
setBlockCiphers(BlockCipher *cipher1, BlockCipher *cipher2)XTSCommoninlineprotected
setKey(const uint8_t *key, size_t len)XTSSingleKeyCommonvirtual
setSectorSize(size_t size)XTSCommon
setTweak(const uint8_t *tweak, size_t len)XTSCommon
tweakSize() const XTSCommon
XTSCommon()XTSCommonprotected
XTSSingleKeyCommon()XTSSingleKeyCommoninlineprotected
~XTSCommon()XTSCommonvirtual
~XTSSingleKeyCommon()XTSSingleKeyCommonvirtual
+ + + + diff --git a/classXTSSingleKeyCommon.html b/classXTSSingleKeyCommon.html new file mode 100644 index 00000000..5504f169 --- /dev/null +++ b/classXTSSingleKeyCommon.html @@ -0,0 +1,265 @@ + + + + + + +ArduinoLibs: XTSSingleKeyCommon Class Reference + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + + + + +
+ +
+ +
+
+ +
+
XTSSingleKeyCommon Class Reference
+
+
+ +

Concrete base class to assist with implementing single-key XTS mode for 128-bit block ciphers. + More...

+ +

#include <XTS.h>

+
+Inheritance diagram for XTSSingleKeyCommon:
+
+
+ + +XTSCommon +XTSSingleKey< T > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+virtual ~XTSSingleKeyCommon ()
 Clears all sensitive information and destroys this object.
 
size_t keySize () const
 Gets the size of the key for single-pkey XTS mode. More...
 
bool setKey (const uint8_t *key, size_t len)
 Sets the key to use for single-keyh XTS mode. More...
 
- Public Member Functions inherited from XTSCommon
+virtual ~XTSCommon ()
 Clears all sensitive information and destroys this object.
 
size_t tweakSize () const
 Gets the maximum supported size for the tweak. More...
 
size_t sectorSize () const
 Gets the size of sectors encrypted or decrypted by this class. More...
 
bool setSectorSize (size_t size)
 Sets the size of sectors encrypted or decrypted by this class. More...
 
bool setTweak (const uint8_t *tweak, size_t len)
 Sets the tweak value for the current sector to encrypt or decrypt. More...
 
void encryptSector (uint8_t *output, const uint8_t *input)
 Encrypts an entire sector of data. More...
 
void decryptSector (uint8_t *output, const uint8_t *input)
 Decrypts an entire sector of data. More...
 
+void clear ()
 Clears all security-sensitive state from this XTS object.
 
+ + + + + + + + + + + +

+Protected Member Functions

XTSSingleKeyCommon ()
 Constructs an XTS object with a default sector size of 512 bytes.
 
- Protected Member Functions inherited from XTSCommon
XTSCommon ()
 Constructs an XTS object with a default sector size of 512 bytes.
 
void setBlockCiphers (BlockCipher *cipher1, BlockCipher *cipher2)
 Sets the two block ciphers to use for XTS mode. More...
 
+

Detailed Description

+

Concrete base class to assist with implementing single-key XTS mode for 128-bit block ciphers.

+

References: IEEE Std. 1619-2007, NIST SP 800-38E, a href="http://web.cs.ucdavis.edu/~rogaway/papers/offsets.pdf">XEX.

+
See Also
XTSSingleKey, XTSCommon
+ +

Definition at line 66 of file XTS.h.

+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
size_t XTSSingleKeyCommon::keySize () const
+
+virtual
+
+ +

Gets the size of the key for single-pkey XTS mode.

+

The key size for single-key XTS mode is the same as the key size for the underlying block cipher.

+
See Also
setKey(), tweakSize()
+ +

Reimplemented from XTSCommon.

+ +

Definition at line 315 of file XTS.cpp.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool XTSSingleKeyCommon::setKey (const uint8_t * key,
size_t len 
)
+
+virtual
+
+ +

Sets the key to use for single-keyh XTS mode.

+
Parameters
+ + + +
keyPoints to the key.
lenThe size of the key in bytes which must be same as the size of the underlying block cipher.
+
+
+
Returns
Returns true if the key was set or false if len was incorrect.
+

This function should be followed by a call to setTweak() to specify the sector-specific tweak.

+
See Also
keySize(), setTweak(), encryptSector()
+ +

Reimplemented from XTSCommon.

+ +

Definition at line 334 of file XTS.cpp.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classXTSSingleKeyCommon.png b/classXTSSingleKeyCommon.png new file mode 100644 index 00000000..f8bb808f Binary files /dev/null and b/classXTSSingleKeyCommon.png differ diff --git a/classes.html b/classes.html index 68408445..52bb9b28 100644 --- a/classes.html +++ b/classes.html @@ -73,7 +73,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -90,54 +90,56 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
A | B | C | D | E | F | G | H | I | K | L | M | N | O | P | R | S | T | X
- - - - - - - - - - - + + + + + - - + - - + + + + + + + - - - - - - + + + + + + + + +
  A  
-
ChaCha   Form   
  M  
-
  S  
-
ChaChaPoly   
  G  
-
AES128   Charlieplex   Melody   SHA256   
AES192   ChaseLEDs   GCM   
  N  
-
SHA3_256   
AES256   Cipher   GCMCommon   SHA3_512   
AESCommon   CTR   GF128   NoiseSource   SHA512   
AuthenticatedCipher   CTRCommon   GHASH   
  O  
-
SHAKE   
  B  
-
Curve25519   
  H  
-
SHAKE128   
  D  
-
OFB   SHAKE256   
BigNumberUtil   Hash   OFBCommon   SoftI2C   
Bitmap   DMD   
  I  
-
OMAC   Speck   
BLAKE2b   DS1307RTC   
  P  
+
Charlieplex   GCMCommon   
  O  
+
SHAKE256   
ChaseLEDs   GF128   Shell   
AES128   Cipher   GHASH   OFB   ShellArguments   
AES192   CTR   
  H  
+
OFBCommon   SoftI2C   
AES256   CTRCommon   OMAC   Speck   
AESCommon   Curve25519   Hash   
  P  
SpeckSmall   
BLAKE2s   DS3231RTC   I2CMaster   SpeckTiny   
BlinkLED   DS3232RTC   IntField   Poly1305   
  T  
+
AuthenticatedCipher   
  D  
+
  I  
+
SpeckTiny   
  B  
+
Poly1305   
  T  
BlockCipher   
  E  
-
IRreceiver   
  R  
+
DMD   I2CMaster   
  R  
BoolField   
  K  
-
TextField   
BigNumberUtil   DS1307RTC   IntField   Terminal   
Bitmap   DS3231RTC   IRreceiver   RingOscillatorNoiseSource   TextField   
BLAKE2b   DS3232RTC   
  K  
+
RNGClass   TimeField   
BLAKE2s   
  E  
+
RTC   TransistorNoiseSource   
BlinkLED   KeccakCore   RTCAlarm   
  X  
+
BlockCipher   EAX   
  L  
+
RTCDate   
BoolField   EAXCommon   RTCTime   XOF   
  C  
-
EAX   RingOscillatorNoiseSource   TimeField   
EAXCommon   KeccakCore   RNGClass   TransistorNoiseSource   
CBC   Ed25519   
  L  
-
RTC   
  X  
-
CBCCommon   EEPROM24   RTCAlarm   
CFB   
  F  
-
LCD   RTCDate   XOF   
CFBCommon   ListField   RTCTime   
Field   
Ed25519   LCD   
  S  
+
XTS   
EEPROM24   ListField   XTSCommon   
CBC   
  F  
+
LoginShell   SHA256   XTSSingleKey   
CBCCommon   
  M  
+
SHA3_256   XTSSingleKeyCommon   
CFB   Field   SHA3_512   
CFBCommon   Form   Melody   SHA512   
ChaCha   
  G  
+
  N  
+
SHAKE   
ChaChaPoly   SHAKE128   
GCM   NoiseSource   
A | B | C | D | E | F | G | H | I | K | L | M | N | O | P | R | S | T | X
diff --git a/crypto-rng-ring_8dox.html b/crypto-rng-ring_8dox.html index 5ee81f0f..8e72283c 100644 --- a/crypto-rng-ring_8dox.html +++ b/crypto-rng-ring_8dox.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -87,7 +87,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/crypto-rng_8dox.html b/crypto-rng_8dox.html index 0c2a433e..a4b7f9c6 100644 --- a/crypto-rng_8dox.html +++ b/crypto-rng_8dox.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -87,7 +87,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/crypto.html b/crypto.html index d637fab2..0ce5c8cb 100644 --- a/crypto.html +++ b/crypto.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -83,7 +83,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); Supported Algorithms
diff --git a/crypto_8dox.html b/crypto_8dox.html index 95ff453d..d5d088d3 100644 --- a/crypto_8dox.html +++ b/crypto_8dox.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -87,7 +87,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/crypto_rng.html b/crypto_rng.html index 5b4be757..5b16e933 100644 --- a/crypto_rng.html +++ b/crypto_rng.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -190,7 +190,7 @@ Destroying secret data
diff --git a/crypto_rng_ring.html b/crypto_rng_ring.html index e7c50aef..dfccecc9 100644 --- a/crypto_rng_ring.html +++ b/crypto_rng_ring.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -151,7 +151,7 @@ Connecting to the Arduino
diff --git a/dir_1586d320a3b1e622174530fde769cda9.html b/dir_1586d320a3b1e622174530fde769cda9.html index 7ced1abd..a68ad37c 100644 --- a/dir_1586d320a3b1e622174530fde769cda9.html +++ b/dir_1586d320a3b1e622174530fde769cda9.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -102,7 +102,7 @@ Files
diff --git a/dir_1de32c476debcefedf4aa8bb43bea551.html b/dir_1de32c476debcefedf4aa8bb43bea551.html new file mode 100644 index 00000000..a1b7c753 --- /dev/null +++ b/dir_1de32c476debcefedf4aa8bb43bea551.html @@ -0,0 +1,114 @@ + + + + + + +ArduinoLibs: Shell Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
ArduinoLibs +
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
Shell Directory Reference
+
+
+ + + + + + + + + + + + + + + + + + +

+Files

file  LoginShell.cpp [code]
 
file  LoginShell.h [code]
 
file  Shell.cpp [code]
 
file  Shell.h [code]
 
file  TelnetDefs.h [code]
 
file  Terminal.cpp [code]
 
file  Terminal.h [code]
 
file  USBKeysExtra.h [code]
 
+
+ + + + diff --git a/dir_3dd03323535933fb3f714c41ff7a94da.html b/dir_3dd03323535933fb3f714c41ff7a94da.html index 9ccf4173..6b98b315 100644 --- a/dir_3dd03323535933fb3f714c41ff7a94da.html +++ b/dir_3dd03323535933fb3f714c41ff7a94da.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -94,7 +94,7 @@ Files
diff --git a/dir_48f64e79f12bd77ba047e9e436ec978c.html b/dir_48f64e79f12bd77ba047e9e436ec978c.html index 6cd014de..32f226ec 100644 --- a/dir_48f64e79f12bd77ba047e9e436ec978c.html +++ b/dir_48f64e79f12bd77ba047e9e436ec978c.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -122,7 +122,7 @@ Files
diff --git a/dir_5e87a7229a108582288ef7eda1233dc3.html b/dir_5e87a7229a108582288ef7eda1233dc3.html index d3a79eab..798dbac7 100644 --- a/dir_5e87a7229a108582288ef7eda1233dc3.html +++ b/dir_5e87a7229a108582288ef7eda1233dc3.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -94,7 +94,7 @@ Files
diff --git a/dir_6591a2127a29f6cea3994dcb5b0596d1.html b/dir_6591a2127a29f6cea3994dcb5b0596d1.html index c01f86fc..ac750270 100644 --- a/dir_6591a2127a29f6cea3994dcb5b0596d1.html +++ b/dir_6591a2127a29f6cea3994dcb5b0596d1.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -106,7 +106,7 @@ Files
diff --git a/dir_7e6ab9b017486261fe80629d442521f0.html b/dir_7e6ab9b017486261fe80629d442521f0.html index 03ef9352..ec9c6942 100644 --- a/dir_7e6ab9b017486261fe80629d442521f0.html +++ b/dir_7e6ab9b017486261fe80629d442521f0.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -94,7 +94,7 @@ Files
diff --git a/dir_9a34040863d1190c0e01b23e6b44de01.html b/dir_9a34040863d1190c0e01b23e6b44de01.html index 092be892..a0eb7cfc 100644 --- a/dir_9a34040863d1190c0e01b23e6b44de01.html +++ b/dir_9a34040863d1190c0e01b23e6b44de01.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -96,7 +96,7 @@ Files
diff --git a/dir_bc0718b08fb2015b8e59c47b2805f60c.html b/dir_bc0718b08fb2015b8e59c47b2805f60c.html index 735dabff..0b125b5a 100644 --- a/dir_bc0718b08fb2015b8e59c47b2805f60c.html +++ b/dir_bc0718b08fb2015b8e59c47b2805f60c.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -106,13 +106,15 @@ Directories   directory  RTC   +directory  Shell +  directory  TransistorNoiseSource  
diff --git a/dir_be059bf9978ae156837504b1b8a7568c.html b/dir_be059bf9978ae156837504b1b8a7568c.html index bcccb876..d0417bcf 100644 --- a/dir_be059bf9978ae156837504b1b8a7568c.html +++ b/dir_be059bf9978ae156837504b1b8a7568c.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -94,7 +94,7 @@ Files
diff --git a/dir_e2ce51835550ba18edf07a8311722290.html b/dir_e2ce51835550ba18edf07a8311722290.html index 3d6168d2..b7ee3dc7 100644 --- a/dir_e2ce51835550ba18edf07a8311722290.html +++ b/dir_e2ce51835550ba18edf07a8311722290.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -228,11 +228,15 @@ Files   file  XOF.h [code]   +file  XTS.cpp [code] +  +file  XTS.h [code]
diff --git a/dir_f34881fcf60f680b800190d5274dfaea.html b/dir_f34881fcf60f680b800190d5274dfaea.html index bcc408ce..2a97649d 100644 --- a/dir_f34881fcf60f680b800190d5274dfaea.html +++ b/dir_f34881fcf60f680b800190d5274dfaea.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -106,7 +106,7 @@ Files
diff --git a/dir_f9b96888882c2691b8eeaeafd1b9501d.html b/dir_f9b96888882c2691b8eeaeafd1b9501d.html index 190e1238..24522ac0 100644 --- a/dir_f9b96888882c2691b8eeaeafd1b9501d.html +++ b/dir_f9b96888882c2691b8eeaeafd1b9501d.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -102,7 +102,7 @@ Files
diff --git a/dmd-demo_8dox.html b/dmd-demo_8dox.html index 33397e80..c00817a7 100644 --- a/dmd-demo_8dox.html +++ b/dmd-demo_8dox.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -87,7 +87,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/dmd-running-figure_8dox.html b/dmd-running-figure_8dox.html index f7e17f49..e95e96b7 100644 --- a/dmd-running-figure_8dox.html +++ b/dmd-running-figure_8dox.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -87,7 +87,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/dmd_demo.html b/dmd_demo.html index 5169e1d7..e280d2d2 100644 --- a/dmd_demo.html +++ b/dmd_demo.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -236,7 +236,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/dmd_running_figure.html b/dmd_running_figure.html index 92a36879..29bcfd8d 100644 --- a/dmd_running_figure.html +++ b/dmd_running_figure.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -430,7 +430,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
diff --git a/files.html b/files.html index c022dcc3..a5ba35c7 100644 --- a/files.html +++ b/files.html @@ -70,7 +70,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
@@ -168,56 +168,66 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); o*LCD.h o*ListField.cpp o*ListField.h -o*Melody.cpp -o*Melody.h -o*Mono5x7.h -o*NoiseSource.cpp -o*NoiseSource.h -o*OFB.cpp -o*OFB.h -o*OMAC.cpp -o*OMAC.h -o*Poly1305.cpp -o*Poly1305.h -o*PowerSave.cpp -o*PowerSave.h -o*RC5.h -o*RingOscillatorNoiseSource.cpp -o*RingOscillatorNoiseSource.h -o*RNG.cpp -o*RNG.h -o*RTC.cpp -o*RTC.h -o*SHA256.cpp -o*SHA256.h -o*SHA3.cpp -o*SHA3.h -o*SHA512.cpp -o*SHA512.h -o*SHAKE.cpp -o*SHAKE.h -o*SoftI2C.cpp -o*SoftI2C.h -o*Speck.cpp -o*Speck.h -o*SpeckSmall.cpp -o*SpeckSmall.h -o*SpeckTiny.cpp -o*SpeckTiny.h -o*TextField.cpp -o*TextField.h -o*TimeField.cpp -o*TimeField.h -o*TransistorNoiseSource.cpp -o*TransistorNoiseSource.h -o*XOF.cpp -\*XOF.h +o*LoginShell.cpp +o*LoginShell.h +o*Melody.cpp +o*Melody.h +o*Mono5x7.h +o*NoiseSource.cpp +o*NoiseSource.h +o*OFB.cpp +o*OFB.h +o*OMAC.cpp +o*OMAC.h +o*Poly1305.cpp +o*Poly1305.h +o*PowerSave.cpp +o*PowerSave.h +o*RC5.h +o*RingOscillatorNoiseSource.cpp +o*RingOscillatorNoiseSource.h +o*RNG.cpp +o*RNG.h +o*RTC.cpp +o*RTC.h +o*SHA256.cpp +o*SHA256.h +o*SHA3.cpp +o*SHA3.h +o*SHA512.cpp +o*SHA512.h +o*SHAKE.cpp +o*SHAKE.h +o*Shell.cpp +o*Shell.h +o*SoftI2C.cpp +o*SoftI2C.h +o*Speck.cpp +o*Speck.h +o*SpeckSmall.cpp +o*SpeckSmall.h +o*SpeckTiny.cpp +o*SpeckTiny.h +o*TelnetDefs.h +o*Terminal.cpp +o*Terminal.h +o*TextField.cpp +o*TextField.h +o*TimeField.cpp +o*TimeField.h +o*TransistorNoiseSource.cpp +o*TransistorNoiseSource.h +o*USBKeysExtra.h +o*XOF.cpp +o*XOF.h +o*XTS.cpp +\*XTS.h
diff --git a/functions.html b/functions.html index d422b08f..0b092345 100644 --- a/functions.html +++ b/functions.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -186,12 +187,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , I2CMaster , RNGClass , SoftI2C +, Terminal
    diff --git a/functions_b.html b/functions_b.html index 65d9583e..f1fc2ea7 100644 --- a/functions_b.html +++ b/functions_b.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -133,8 +134,17 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • backlightPin() : LCD
  • +
  • backspace() +: Terminal +
  • begin() : RNGClass +, Shell +, Terminal +
  • +
  • beginSession() +: LoginShell +, Shell
  • Bitmap() : Bitmap @@ -144,6 +154,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Black : Bitmap +, Terminal
  • BLAKE2b() : BLAKE2b @@ -151,6 +162,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • BLAKE2s() : BLAKE2s
  • +
  • blink() +: Terminal +
  • BlinkLED() : BlinkLED
  • @@ -176,6 +190,12 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , SpeckTiny , XOF +
  • Blue +: Terminal +
  • +
  • bold() +: Terminal +
  • BoolField() : BoolField
  • @@ -188,7 +208,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/functions_c.html b/functions_c.html index 2cf986cb..1520eb87 100644 --- a/functions_c.html +++ b/functions_c.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -196,11 +197,25 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , Speck , SpeckSmall , SpeckTiny +, Terminal , XOF +, XTSCommon + +
  • clearToEOL() +: Terminal
  • Color : Bitmap
  • +
  • color() +: Terminal +
  • +
  • Color +: Terminal +
  • +
  • columns() +: Terminal +
  • command() : IRreceiver
  • @@ -215,6 +230,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • count() : Charlieplex +, ShellArguments
  • CTR() : CTR< T > @@ -225,11 +241,29 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • currentField() : Form
  • +
  • cursorDown() +: Terminal +
  • +
  • cursorLeft() +: Terminal +
  • +
  • cursorMove() +: Terminal +
  • +
  • cursorRight() +: Terminal +
  • +
  • cursorUp() +: Terminal +
  • +
  • Cyan +: Terminal +
  • diff --git a/functions_d.html b/functions_d.html index f7b01d59..542e90d4 100644 --- a/functions_d.html +++ b/functions_d.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -124,6 +125,27 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    Here is a list of all documented class members with links to the class documentation for each member:

    - d -

    diff --git a/functions_e.html b/functions_e.html index c4b78967..50874575 100644 --- a/functions_e.html +++ b/functions_e.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -173,6 +174,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , Speck , SpeckTiny +
  • encryptSector() +: XTSCommon +
  • +
  • end() +: Shell +, Terminal +
  • endWrite() : I2CMaster , SoftI2C @@ -188,6 +196,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • eval() : Curve25519
  • +
  • execute() +: LoginShell +, Shell +
  • +
  • exit() +: Shell +
  • exitField() : Field , TimeField @@ -203,7 +218,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • diff --git a/functions_enum.html b/functions_enum.html index 7f9aaa3e..813332b1 100644 --- a/functions_enum.html +++ b/functions_enum.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • @@ -83,7 +84,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -94,9 +95,15 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
     
      +
    • Color +: Terminal +
    • DayOfWeek : RTC
    • +
    • Mode +: Terminal +
    • ScreenSaverMode : LCD
    • @@ -104,7 +111,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/functions_eval.html b/functions_eval.html index f873374f..81bcf0d4 100644 --- a/functions_eval.html +++ b/functions_eval.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • @@ -83,7 +84,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -100,14 +101,68 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • BacklightOnSelect : LCD
  • +
  • Black +: Terminal +
  • +
  • Blue +: Terminal +
  • +
  • Cyan +: Terminal +
  • +
  • DarkBlue +: Terminal +
  • +
  • DarkCyan +: Terminal +
  • +
  • DarkGray +: Terminal +
  • +
  • DarkGreen +: Terminal +
  • +
  • DarkMagenta +: Terminal +
  • +
  • DarkRed +: Terminal +
  • +
  • DarkYellow +: Terminal +
  • DisplayOff : LCD
  • +
  • Green +: Terminal +
  • +
  • LightGray +: Terminal +
  • +
  • Magenta +: Terminal +
  • +
  • Red +: Terminal +
  • +
  • Serial +: Terminal +
  • +
  • Telnet +: Terminal +
  • +
  • White +: Terminal +
  • +
  • Yellow +: Terminal +
  • diff --git a/functions_f.html b/functions_f.html index b3165974..aa190c8f 100644 --- a/functions_f.html +++ b/functions_f.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -161,12 +162,15 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • flags : RTCAlarm
  • -
  • Font -: Bitmap +
  • flush() +: Terminal
  • font() : Bitmap
  • +
  • Font +: Bitmap +
  • form() : Field
  • @@ -183,7 +187,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/functions_func.html b/functions_func.html index 49922a3b..15312eba 100644 --- a/functions_func.html +++ b/functions_func.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -179,12 +180,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , I2CMaster , RNGClass , SoftI2C +, Terminal
    diff --git a/functions_func_b.html b/functions_func_b.html index 69cd6cbb..f2d9b0a4 100644 --- a/functions_func_b.html +++ b/functions_func_b.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -126,8 +127,17 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • backlightPin() : LCD
  • +
  • backspace() +: Terminal +
  • begin() : RNGClass +, Shell +, Terminal +
  • +
  • beginSession() +: LoginShell +, Shell
  • Bitmap() : Bitmap @@ -141,6 +151,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • BLAKE2s() : BLAKE2s
  • +
  • blink() +: Terminal +
  • BlinkLED() : BlinkLED
  • @@ -166,6 +179,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , SpeckTiny , XOF +
  • bold() +: Terminal +
  • BoolField() : BoolField
  • @@ -178,7 +194,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/functions_func_c.html b/functions_func_c.html index d0f977a8..a7c4cd10 100644 --- a/functions_func_c.html +++ b/functions_func_c.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -195,7 +196,18 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , Speck , SpeckSmall , SpeckTiny +, Terminal , XOF +, XTSCommon + +
  • clearToEOL() +: Terminal +
  • +
  • color() +: Terminal +
  • +
  • columns() +: Terminal
  • command() : IRreceiver @@ -211,6 +223,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • count() : Charlieplex +, ShellArguments
  • CTR() : CTR< T > @@ -221,11 +234,26 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • currentField() : Form
  • +
  • cursorDown() +: Terminal +
  • +
  • cursorLeft() +: Terminal +
  • +
  • cursorMove() +: Terminal +
  • +
  • cursorRight() +: Terminal +
  • +
  • cursorUp() +: Terminal +
  • diff --git a/functions_func_d.html b/functions_func_d.html index d21520d0..eae61c0a 100644 --- a/functions_func_d.html +++ b/functions_func_d.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -135,6 +136,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • dblEAX() : GF128
  • +
  • dblXTS() +: GF128 +
  • decrypt() : CBCCommon , CFBCommon @@ -154,9 +158,18 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , SpeckSmall , SpeckTiny
  • +
  • decryptSector() +: XTSCommon +
  • defaultField() : Form
  • +
  • deleteChar() +: Terminal +
  • +
  • deleteLine() +: Terminal +
  • derivePublicKey() : Ed25519
  • @@ -207,7 +220,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); : DMD
  • drawBitmap() -: Bitmap +: Bitmap
  • drawChar() : Bitmap @@ -246,7 +259,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • diff --git a/functions_func_e.html b/functions_func_e.html index 8d0300a8..c860e2eb 100644 --- a/functions_func_e.html +++ b/functions_func_e.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -172,6 +173,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , Speck , SpeckTiny +
  • encryptSector() +: XTSCommon +
  • +
  • end() +: Shell +, Terminal +
  • endWrite() : I2CMaster , SoftI2C @@ -187,6 +195,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • eval() : Curve25519
  • +
  • execute() +: LoginShell +, Shell +
  • +
  • exit() +: Shell +
  • exitField() : Field , TimeField @@ -202,7 +217,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • diff --git a/functions_func_f.html b/functions_func_f.html index 29f2454d..e31b09b5 100644 --- a/functions_func_f.html +++ b/functions_func_f.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -157,6 +158,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); : DS3231RTC , DS3232RTC +
  • flush() +: Terminal +
  • font() : Bitmap
  • @@ -176,7 +180,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/functions_func_g.html b/functions_func_g.html index baf51de4..14909c82 100644 --- a/functions_func_g.html +++ b/functions_func_g.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -142,7 +143,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/functions_func_h.html b/functions_func_h.html index febad318..8efcf140 100644 --- a/functions_func_h.html +++ b/functions_func_h.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -147,6 +148,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • height() : Bitmap
  • +
  • help() +: Shell +
  • hide() : Form
  • @@ -157,7 +161,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/functions_func_i.html b/functions_func_i.html index e7b98a35..a1674354 100644 --- a/functions_func_i.html +++ b/functions_func_i.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -129,8 +130,14 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • initNext() : OMAC
  • +
  • insertChar() +: Terminal +
  • +
  • insertLine() +: Terminal +
  • IntField() -: IntField +: IntField
  • invert() : Bitmap @@ -162,6 +169,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • isVisible() : Form
  • +
  • isWideCharacter() +: Terminal +
  • items() : ListField
  • @@ -180,7 +190,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/functions_func_k.html b/functions_func_k.html index 1fe71beb..0a70e1b5 100644 --- a/functions_func_k.html +++ b/functions_func_k.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -142,12 +143,14 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , OFBCommon , Speck , SpeckTiny +, XTSCommon +, XTSSingleKeyCommon
    diff --git a/functions_func_l.html b/functions_func_l.html index cac6a04b..26c3126f 100644 --- a/functions_func_l.html +++ b/functions_func_l.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -138,12 +139,16 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • ListField() : ListField
  • +
  • LoginShell() +: LoginShell +
  • loop() : BlinkLED , Charlieplex , ChaseLEDs , DMD , RNGClass +, Shell
  • loopCount() : Melody @@ -152,7 +157,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • diff --git a/functions_func_m.html b/functions_func_m.html index 70d4ff2e..3260e885 100644 --- a/functions_func_m.html +++ b/functions_func_m.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -123,6 +124,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');  

    - m -

    diff --git a/functions_func_n.html b/functions_func_n.html index 2d48c8be..fefea5d7 100644 --- a/functions_func_n.html +++ b/functions_func_n.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -132,6 +133,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • NoiseSource() : NoiseSource
  • +
  • normal() +: Terminal +
  • numRounds() : ChaCha
  • @@ -139,7 +143,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/functions_func_o.html b/functions_func_o.html index 7613790f..e8cafac2 100644 --- a/functions_func_o.html +++ b/functions_func_o.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -138,6 +139,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • onTime() : BlinkLED
  • +
  • operator[]() +: ShellArguments +
  • output() : NoiseSource
  • @@ -145,7 +149,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/functions_func_p.html b/functions_func_p.html index ce5ec513..33eeea8a 100644 --- a/functions_func_p.html +++ b/functions_func_p.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -137,9 +138,15 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • pageSize() : EEPROM24
  • +
  • passwordCheckFunction() +: LoginShell +
  • pause() : BlinkLED
  • +
  • peek() +: Terminal +
  • pixel() : Bitmap
  • @@ -158,6 +165,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • previousPin() : ChaseLEDs
  • +
  • printPrompt() +: LoginShell +, Shell +
  • +
  • prompt() +: Shell +
  • pwmLed() : Charlieplex
  • @@ -165,7 +179,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/functions_func_r.html b/functions_func_r.html index 82d59623..d1d21e3b 100644 --- a/functions_func_r.html +++ b/functions_func_r.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -130,6 +131,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); : EEPROM24 , I2CMaster , SoftI2C +, Terminal
  • readAlarm() : DS1307RTC @@ -148,6 +150,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , DS3232RTC , RTC
  • +
  • readKey() +: Terminal +
  • readOnly() : TimeField
  • @@ -172,11 +177,14 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); : Charlieplex , DMD +
  • registerCommand() +: Shell +
  • removeField() : Form
  • reset() -: BLAKE2b +: BLAKE2b , BLAKE2s , GHASH , Hash @@ -201,9 +209,15 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • resume() : BlinkLED
  • +
  • reverse() +: Terminal +
  • RNGClass() : RNGClass
  • +
  • rows() +: Terminal +
  • RTC() : RTC
  • @@ -214,7 +228,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/functions_func_s.html b/functions_func_s.html index 54d32d7d..6241f0a0 100644 --- a/functions_func_s.html +++ b/functions_func_s.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -132,6 +133,15 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • scroll() : Bitmap
  • +
  • scrollDown() +: Terminal +
  • +
  • scrollUp() +: Terminal +
  • +
  • sectorSize() +: XTSCommon +
  • setAdvanceTime() : ChaseLEDs
  • @@ -156,6 +166,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , OFBCommon , OMAC +
  • setBlockCiphers() +: XTSCommon +
  • setCapacity() : KeccakCore
  • @@ -214,6 +227,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , Speck , SpeckSmall , SpeckTiny +, XTSCommon +, XTSSingleKeyCommon
  • setLabel() : Field @@ -227,6 +242,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • setLoopDuration() : Melody
  • +
  • setMachineName() +: LoginShell +
  • setMaxHours() : TimeField
  • @@ -242,9 +260,15 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • setNumRounds() : ChaCha
  • +
  • setPasswordCheckFunction() +: LoginShell +
  • setPixel() : Bitmap
  • +
  • setPrompt() +: Shell +
  • setPwmLed() : Charlieplex
  • @@ -254,6 +278,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • setScreenSaverMode() : LCD
  • +
  • setSectorSize() +: XTSCommon +
  • setState() : BlinkLED
  • @@ -272,6 +299,12 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • setTrueLabel() : BoolField
  • +
  • setTweak() +: XTSCommon +
  • +
  • setUserid() +: Shell +
  • setValue() : BoolField , IntField @@ -279,6 +312,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , TextField , TimeField
  • +
  • setWindowSize() +: Terminal +
  • SHA256() : SHA256
  • @@ -300,6 +336,15 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • SHAKE256() : SHAKE256
  • +
  • Shell() +: Shell +
  • +
  • ShellCommandFunc() +: Shell +
  • +
  • ShellPasswordCheckFunc() +: LoginShell +
  • show() : Form
  • @@ -344,6 +389,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • stop() : Melody
  • +
  • stream() +: Terminal +
  • stride() : Bitmap
  • @@ -372,7 +420,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/functions_func_t.html b/functions_func_t.html index 42f8b94f..85b908ae 100644 --- a/functions_func_t.html +++ b/functions_func_t.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -129,17 +130,20 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , EAXCommon , GCMCommon +
  • Terminal() +: Terminal +
  • textColor() : Bitmap
  • TextField() -: TextField +: TextField
  • textHeight() : Bitmap
  • textWidth() -: Bitmap +: Bitmap
  • TimeField() : TimeField @@ -150,11 +154,14 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • trueLabel() : BoolField
  • +
  • tweakSize() +: XTSCommon +
  • diff --git a/functions_func_u.html b/functions_func_u.html index 81367727..5c034661 100644 --- a/functions_func_u.html +++ b/functions_func_u.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -123,6 +124,12 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');  

    - u -

    diff --git a/functions_func_v.html b/functions_func_v.html index eac35963..26f15ea6 100644 --- a/functions_func_v.html +++ b/functions_func_v.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -137,7 +138,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/functions_func_w.html b/functions_func_w.html index 20c9f801..aa5448cd 100644 --- a/functions_func_w.html +++ b/functions_func_w.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -130,6 +131,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); : EEPROM24 , I2CMaster , SoftI2C +, Terminal
  • writeAlarm() : DS1307RTC @@ -148,17 +150,23 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , DS3232RTC , RTC
  • +
  • writeProgMem() +: Terminal +
  • writeTime() : DS1307RTC , DS3231RTC , DS3232RTC , RTC
  • +
  • writeUnicode() +: Terminal +
  • diff --git a/functions_func_x.html b/functions_func_x.html index 10fac9af..c774b173 100644 --- a/functions_func_x.html +++ b/functions_func_x.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -126,11 +127,23 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • XOF() : XOF
  • +
  • XTS() +: XTS< T1, T2 > +
  • +
  • XTSCommon() +: XTSCommon +
  • +
  • XTSSingleKey() +: XTSSingleKey< T > +
  • +
  • XTSSingleKeyCommon() +: XTSSingleKeyCommon +
  • diff --git a/functions_func_~.html b/functions_func_~.html index 33aa5992..fc2ab28b 100644 --- a/functions_func_~.html +++ b/functions_func_~.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -177,6 +178,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • ~KeccakCore() : KeccakCore
  • +
  • ~LoginShell() +: LoginShell +
  • ~NoiseSource() : NoiseSource
  • @@ -213,14 +217,32 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • ~SHAKE256() : SHAKE256
  • +
  • ~Shell() +: Shell +
  • +
  • ~Terminal() +: Terminal +
  • ~XOF() : XOF
  • +
  • ~XTS() +: XTS< T1, T2 > +
  • +
  • ~XTSCommon() +: XTSCommon +
  • +
  • ~XTSSingleKey() +: XTSSingleKey< T > +
  • +
  • ~XTSSingleKeyCommon() +: XTSSingleKeyCommon +
  • diff --git a/functions_g.html b/functions_g.html index 2a1becaf..847dccca 100644 --- a/functions_g.html +++ b/functions_g.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -139,11 +140,14 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • GHASH() : GHASH
  • +
  • Green +: Terminal +
  • diff --git a/functions_h.html b/functions_h.html index 94c462cb..f74a0fd4 100644 --- a/functions_h.html +++ b/functions_h.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -148,6 +149,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • height() : Bitmap
  • +
  • help() +: Shell +
  • hide() : Form
  • @@ -162,7 +166,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/functions_i.html b/functions_i.html index 3c53755e..2259494d 100644 --- a/functions_i.html +++ b/functions_i.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -133,8 +134,14 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • initNext() : OMAC
  • +
  • insertChar() +: Terminal +
  • +
  • insertLine() +: Terminal +
  • IntField() -: IntField +: IntField
  • invert() : Bitmap @@ -166,6 +173,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • isVisible() : Form
  • +
  • isWideCharacter() +: Terminal +
  • items() : ListField
  • @@ -184,7 +194,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/functions_k.html b/functions_k.html index 3d0c7798..367d8815 100644 --- a/functions_k.html +++ b/functions_k.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -143,12 +144,14 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , OFBCommon , Speck , SpeckTiny +, XTSCommon +, XTSSingleKeyCommon
    diff --git a/functions_l.html b/functions_l.html index 19388040..2c5417e3 100644 --- a/functions_l.html +++ b/functions_l.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -136,8 +137,14 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • led() : Charlieplex
  • +
  • LightGray +: Terminal +
  • ListField() -: ListField +: ListField +
  • +
  • LoginShell() +: LoginShell
  • loop() : BlinkLED @@ -145,6 +152,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , ChaseLEDs , DMD , RNGClass +, Shell
  • loopCount() : Melody @@ -153,7 +161,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • diff --git a/functions_m.html b/functions_m.html index 1d824d5f..41ccf27f 100644 --- a/functions_m.html +++ b/functions_m.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -124,6 +125,12 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    Here is a list of all documented class members with links to the class documentation for each member:

    - m -

    diff --git a/functions_n.html b/functions_n.html index e46d07d2..56f62f82 100644 --- a/functions_n.html +++ b/functions_n.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -139,6 +140,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • NoiseSource() : NoiseSource
  • +
  • normal() +: Terminal +
  • numRounds() : ChaCha
  • @@ -146,7 +150,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/functions_o.html b/functions_o.html index dd5ef5d2..2b306521 100644 --- a/functions_o.html +++ b/functions_o.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -139,6 +140,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • onTime() : BlinkLED
  • +
  • operator[]() +: ShellArguments +
  • output() : NoiseSource
  • @@ -146,7 +150,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/functions_p.html b/functions_p.html index da44619c..516d115e 100644 --- a/functions_p.html +++ b/functions_p.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -138,9 +139,15 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • pageSize() : EEPROM24
  • +
  • passwordCheckFunction() +: LoginShell +
  • pause() : BlinkLED
  • +
  • peek() +: Terminal +
  • pixel() : Bitmap
  • @@ -159,9 +166,16 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • previousPin() : ChaseLEDs
  • +
  • printPrompt() +: LoginShell +, Shell +
  • ProgMem : Bitmap
  • +
  • prompt() +: Shell +
  • pwmLed() : Charlieplex
  • @@ -169,7 +183,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/functions_r.html b/functions_r.html index d9c74668..3eae68c8 100644 --- a/functions_r.html +++ b/functions_r.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -131,6 +132,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); : EEPROM24 , I2CMaster , SoftI2C +, Terminal
  • readAlarm() : DS1307RTC @@ -149,6 +151,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , DS3232RTC , RTC
  • +
  • readKey() +: Terminal +
  • readOnly() : TimeField
  • @@ -163,6 +168,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , DS3232RTC , RTC +
  • Red +: Terminal +
  • reduceQuick() : BigNumberUtil
  • @@ -173,11 +181,14 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); : Charlieplex , DMD +
  • registerCommand() +: Shell +
  • removeField() : Form
  • reset() -: BLAKE2b +: BLAKE2b , BLAKE2s , GHASH , Hash @@ -202,9 +213,15 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • resume() : BlinkLED
  • +
  • reverse() +: Terminal +
  • RNGClass() : RNGClass
  • +
  • rows() +: Terminal +
  • RTC() : RTC
  • @@ -215,7 +232,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/functions_rela.html b/functions_rela.html new file mode 100644 index 00000000..c05cd928 --- /dev/null +++ b/functions_rela.html @@ -0,0 +1,110 @@ + + + + + + +ArduinoLibs: Class Members - Related Functions + + + + + + + + + +
    +
    + + + + + + +
    +
    ArduinoLibs +
    +
    +
    + + + + + + +
    + +
    + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    + + +
    + +
    + +
    +
    + + + + diff --git a/functions_s.html b/functions_s.html index c45421bc..d4b018f2 100644 --- a/functions_s.html +++ b/functions_s.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -127,22 +128,34 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • save() : RNGClass
  • -
  • screenSaverMode() -: LCD -
  • ScreenSaverMode : LCD
  • +
  • screenSaverMode() +: LCD +
  • scroll() : Bitmap
  • +
  • scrollDown() +: Terminal +
  • +
  • scrollUp() +: Terminal +
  • second : RTCAlarm , RTCTime
  • +
  • sectorSize() +: XTSCommon +
  • SEED_SIZE : RNGClass
  • +
  • Serial +: Terminal +
  • setAdvanceTime() : ChaseLEDs
  • @@ -167,6 +180,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , OFBCommon , OMAC +
  • setBlockCiphers() +: XTSCommon +
  • setCapacity() : KeccakCore
  • @@ -225,6 +241,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , Speck , SpeckSmall , SpeckTiny +, XTSCommon +, XTSSingleKeyCommon
  • setLabel() : Field @@ -238,6 +256,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • setLoopDuration() : Melody
  • +
  • setMachineName() +: LoginShell +
  • setMaxHours() : TimeField
  • @@ -253,9 +274,15 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • setNumRounds() : ChaCha
  • +
  • setPasswordCheckFunction() +: LoginShell +
  • setPixel() : Bitmap
  • +
  • setPrompt() +: Shell +
  • setPwmLed() : Charlieplex
  • @@ -265,6 +292,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • setScreenSaverMode() : LCD
  • +
  • setSectorSize() +: XTSCommon +
  • setState() : BlinkLED
  • @@ -283,6 +313,12 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • setTrueLabel() : BoolField
  • +
  • setTweak() +: XTSCommon +
  • +
  • setUserid() +: Shell +
  • setValue() : BoolField , IntField @@ -290,6 +326,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , TextField , TimeField
  • +
  • setWindowSize() +: Terminal +
  • SHA256() : SHA256
  • @@ -311,6 +350,18 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • SHAKE256() : SHAKE256
  • +
  • Shell() +: Shell +
  • +
  • ShellCommand +: Shell +
  • +
  • ShellCommandFunc() +: Shell +
  • +
  • ShellPasswordCheckFunc() +: LoginShell +
  • show() : Form
  • @@ -355,6 +406,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • stop() : Melody
  • +
  • stream() +: Terminal +
  • stride() : Bitmap
  • @@ -383,7 +437,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/functions_t.html b/functions_t.html index 0dc63665..73a661cc 100644 --- a/functions_t.html +++ b/functions_t.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -130,6 +131,12 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); , EAXCommon , GCMCommon +
  • Telnet +: Terminal +
  • +
  • Terminal() +: Terminal +
  • textColor() : Bitmap
  • @@ -151,11 +158,14 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • trueLabel() : BoolField
  • +
  • tweakSize() +: XTSCommon +
  • diff --git a/functions_type.html b/functions_type.html index 3833f15e..5fdffb5d 100644 --- a/functions_type.html +++ b/functions_type.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • @@ -83,7 +84,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -107,7 +108,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/functions_u.html b/functions_u.html index b36a31d8..699dd7f1 100644 --- a/functions_u.html +++ b/functions_u.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -124,6 +125,12 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    Here is a list of all documented class members with links to the class documentation for each member:

    - u -

    diff --git a/functions_v.html b/functions_v.html index b1d93459..2c34b258 100644 --- a/functions_v.html +++ b/functions_v.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -138,7 +139,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/functions_vars.html b/functions_vars.html index 607b8f50..bdc18033 100644 --- a/functions_vars.html +++ b/functions_vars.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • @@ -83,7 +84,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -156,7 +157,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/functions_w.html b/functions_w.html index 039a8e2e..fa3d1b0a 100644 --- a/functions_w.html +++ b/functions_w.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -126,6 +127,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');

    - w -

    diff --git a/functions_x.html b/functions_x.html index 5d852bd5..a3ced9a5 100644 --- a/functions_x.html +++ b/functions_x.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -127,11 +128,23 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • XOF() : XOF
  • +
  • XTS() +: XTS< T1, T2 > +
  • +
  • XTSCommon() +: XTSCommon +
  • +
  • XTSSingleKey() +: XTSSingleKey< T > +
  • +
  • XTSSingleKeyCommon() +: XTSSingleKeyCommon +
  • diff --git a/functions_y.html b/functions_y.html index d24c6c81..8eb4f433 100644 --- a/functions_y.html +++ b/functions_y.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -127,11 +128,14 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • year : RTCDate
  • +
  • Yellow +: Terminal +
  • diff --git a/functions_~.html b/functions_~.html index 07daa11e..918761f2 100644 --- a/functions_~.html +++ b/functions_~.html @@ -75,6 +75,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Typedefs
  • Enumerations
  • Enumerator
  • +
  • Related Functions
  • + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -178,6 +179,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • ~KeccakCore() : KeccakCore
  • +
  • ~LoginShell() +: LoginShell +
  • ~NoiseSource() : NoiseSource
  • @@ -214,14 +218,32 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • ~SHAKE256() : SHAKE256
  • +
  • ~Shell() +: Shell +
  • +
  • ~Terminal() +: Terminal +
  • ~XOF() : XOF
  • +
  • ~XTS() +: XTS< T1, T2 > +
  • +
  • ~XTSCommon() +: XTSCommon +
  • +
  • ~XTSSingleKey() +: XTSSingleKey< T > +
  • +
  • ~XTSSingleKeyCommon() +: XTSSingleKeyCommon +
  • diff --git a/group__power__save.html b/group__power__save.html index 7f76ab86..220cbe8d 100644 --- a/group__power__save.html +++ b/group__power__save.html @@ -65,7 +65,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -201,7 +201,7 @@ void  diff --git a/hierarchy.html b/hierarchy.html index d33d4c90..dd413e18 100644 --- a/hierarchy.html +++ b/hierarchy.html @@ -73,7 +73,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
    + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -158,16 +158,25 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); oCRTCAlarmStores alarm information from a realtime clock chip oCRTCDateStores date information from a realtime clock chip oCRTCTimeStores time information from a realtime clock chip -\CXOFAbstract base class for Extendable-Output Functions (XOFs) - \CSHAKEAbstract base class for the SHAKE Extendable-Output Functions (XOFs) -  oCSHAKE128SHAKE Extendable-Output Function (XOF) with 128-bit security -  \CSHAKE256SHAKE Extendable-Output Function (XOF) with 256-bit security +oCShellArgumentsConvenience class that encapsulates an array of shell command arguments +oCStream +|\CTerminalExtended stream interface for terminal operations +| \CShellCommand-line shell access +|  \CLoginShellCommand-line shell access via a login shell +oCXOFAbstract base class for Extendable-Output Functions (XOFs) +|\CSHAKEAbstract base class for the SHAKE Extendable-Output Functions (XOFs) +| oCSHAKE128SHAKE Extendable-Output Function (XOF) with 128-bit security +| \CSHAKE256SHAKE Extendable-Output Function (XOF) with 256-bit security +\CXTSCommonConcrete base class to assist with implementing XTS mode for 128-bit block ciphers + oCXTS< T1, T2 >Implementation of the XTS mode for 128-bit block ciphers + \CXTSSingleKeyCommonConcrete base class to assist with implementing single-key XTS mode for 128-bit block ciphers +  \CXTSSingleKey< T >Implementation of the single-key XTS mode for 128-bit block ciphers
    diff --git a/index.html b/index.html index aad46a4b..3c802662 100644 --- a/index.html +++ b/index.html @@ -65,7 +65,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -129,7 +129,7 @@ Realtime Clock Library Cryptographic Library

    More information can be found on the Cryptographic Library page.

    +

    +Shell Library

    +

    Infrared Control Library

    diff --git a/ir-dumpir_8dox.html b/ir-dumpir_8dox.html index d0494ce1..8f177b9d 100644 --- a/ir-dumpir_8dox.html +++ b/ir-dumpir_8dox.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -87,7 +87,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/ir-snake_8dox.html b/ir-snake_8dox.html index 14b34e00..4df5f772 100644 --- a/ir-snake_8dox.html +++ b/ir-snake_8dox.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -87,7 +87,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/ir_dumpir.html b/ir_dumpir.html index ae8e2eb1..2a824f24 100644 --- a/ir_dumpir.html +++ b/ir_dumpir.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -283,7 +283,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/ir_snake.html b/ir_snake.html index 920e74cb..7b101b6a 100644 --- a/ir_snake.html +++ b/ir_snake.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -273,7 +273,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/lcd-form_8dox.html b/lcd-form_8dox.html index 3ba20b1e..74fbd1e5 100644 --- a/lcd-form_8dox.html +++ b/lcd-form_8dox.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -87,7 +87,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/lcd-helloworld_8dox.html b/lcd-helloworld_8dox.html index 85883da0..5fbc4e77 100644 --- a/lcd-helloworld_8dox.html +++ b/lcd-helloworld_8dox.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -87,7 +87,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/lcd_form.html b/lcd_form.html index 4639781e..0121f20a 100644 --- a/lcd_form.html +++ b/lcd_form.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -216,7 +216,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/lcd_hello_world.html b/lcd_hello_world.html index 9deaaef0..69fb7cab 100644 --- a/lcd_hello_world.html +++ b/lcd_hello_world.html @@ -64,7 +64,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -166,7 +166,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/mainpage_8dox.html b/mainpage_8dox.html index 02b6d108..b15a3f85 100644 --- a/mainpage_8dox.html +++ b/mainpage_8dox.html @@ -69,7 +69,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -87,7 +87,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/modules.html b/modules.html index 377b29b4..4116280a 100644 --- a/modules.html +++ b/modules.html @@ -65,7 +65,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -87,7 +87,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    diff --git a/pages.html b/pages.html index c17a7cc7..d3744290 100644 --- a/pages.html +++ b/pages.html @@ -65,7 +65,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -94,13 +94,15 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); oDumping Infrared Remote Control Codes oSnake Video Game Using an Infrared Remote Control oForm example for LCD displays -\Hello World for Freetronics LCD +oHello World for Freetronics LCD +oSerial port Shell example +\Telnet server example
    diff --git a/search/all_0.js b/search/all_0.js index 22684790..d9c915ae 100644 --- a/search/all_0.js +++ b/search/all_0.js @@ -20,5 +20,5 @@ var searchData= ['alarm_5fcount',['ALARM_COUNT',['../classRTC.html#aee5ae8f600ee5296e65635c0d836fca3',1,'RTC']]], ['authenticatedcipher',['AuthenticatedCipher',['../classAuthenticatedCipher.html',1,'AuthenticatedCipher'],['../classAuthenticatedCipher.html#a0b1c0210ecb9d374d09b5b62a5140ba2',1,'AuthenticatedCipher::AuthenticatedCipher()']]], ['auto_5frepeat',['AUTO_REPEAT',['../classIRreceiver.html#a9c37631cc1291dc47cabcfef2f631cf9',1,'IRreceiver']]], - ['available',['available',['../classEEPROM24.html#af8b70971d882b06de3fc6644a8ece3cf',1,'EEPROM24::available()'],['../classI2CMaster.html#a6458fa99cfd9e6270ae6dff993955833',1,'I2CMaster::available()'],['../classSoftI2C.html#a849af91018caedbb82e83f02c543305e',1,'SoftI2C::available()'],['../classRNGClass.html#a49e3231ba65a5e4b045bc90976e0a659',1,'RNGClass::available()']]] + ['available',['available',['../classEEPROM24.html#af8b70971d882b06de3fc6644a8ece3cf',1,'EEPROM24::available()'],['../classI2CMaster.html#a6458fa99cfd9e6270ae6dff993955833',1,'I2CMaster::available()'],['../classSoftI2C.html#a849af91018caedbb82e83f02c543305e',1,'SoftI2C::available()'],['../classRNGClass.html#a49e3231ba65a5e4b045bc90976e0a659',1,'RNGClass::available()'],['../classTerminal.html#a111698c496d601ef7fe0ce4de8a6de9a',1,'Terminal::available()']]] ]; diff --git a/search/all_1.js b/search/all_1.js index 2bcaa984..7918cfdb 100644 --- a/search/all_1.js +++ b/search/all_1.js @@ -3,13 +3,16 @@ var searchData= ['backlightoff',['BacklightOff',['../classLCD.html#a264bf94308c95d8598426e13dc8cdb28a9931c078cfd1023c69f1da431f9a656c',1,'LCD']]], ['backlightonselect',['BacklightOnSelect',['../classLCD.html#a264bf94308c95d8598426e13dc8cdb28a781f3c5e42506bf4f86ba06d69b23d35',1,'LCD']]], ['backlightpin',['backlightPin',['../classLCD.html#a171f59ba80e7775ebd3a399f56482a9c',1,'LCD']]], - ['begin',['begin',['../classRNGClass.html#a7f1aab3c324f8e8a424d683425e0fcf8',1,'RNGClass']]], + ['backspace',['backspace',['../classTerminal.html#ae4aec627f980fe0d26653401785d41bc',1,'Terminal']]], + ['begin',['begin',['../classRNGClass.html#a7f1aab3c324f8e8a424d683425e0fcf8',1,'RNGClass::begin()'],['../classShell.html#ad9acba905b6e0b661cce19d57c067990',1,'Shell::begin(Stream &stream, size_t maxHistory=0, Terminal::Mode mode=Serial)'],['../classShell.html#a3ff0cc86725388d4fe92520e5a18ad92',1,'Shell::begin(Client &client, size_t maxHistory=0, Terminal::Mode mode=Telnet)'],['../classTerminal.html#a6bf417195a7d2a2fab6b3518f25764a2',1,'Terminal::begin()']]], + ['beginsession',['beginSession',['../classLoginShell.html#a88a72760d4dc960c32e2fa4b691f9558',1,'LoginShell::beginSession()'],['../classShell.html#a3ad32b7cd3b48c78953ab9f7384d5a58',1,'Shell::beginSession()']]], ['bignumberutil',['BigNumberUtil',['../classBigNumberUtil.html',1,'']]], ['bitmap',['Bitmap',['../classBitmap.html',1,'Bitmap'],['../classBitmap.html#a40526748415c8bbc58a8510d636c20f4',1,'Bitmap::Bitmap()']]], ['bitsperpixel',['bitsPerPixel',['../classBitmap.html#ad18d3d5a1e77d541a95e93ad1f958411',1,'Bitmap']]], - ['black',['Black',['../classBitmap.html#a2c7faeeb89d3624b5bbca58871785adc',1,'Bitmap']]], + ['black',['Black',['../classBitmap.html#a2c7faeeb89d3624b5bbca58871785adc',1,'Bitmap::Black()'],['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20ae8891bcc826bd9843740727bd36481a4',1,'Terminal::Black()']]], ['blake2b',['BLAKE2b',['../classBLAKE2b.html',1,'BLAKE2b'],['../classBLAKE2b.html#a19b3b751809905a5587468f0d6c666ff',1,'BLAKE2b::BLAKE2b()']]], ['blake2s',['BLAKE2s',['../classBLAKE2s.html',1,'BLAKE2s'],['../classBLAKE2s.html#a7345f4e08c19d7a8c278282b46df21a2',1,'BLAKE2s::BLAKE2s()']]], + ['blink',['blink',['../classTerminal.html#a8485c7073e94e77f9873b80e9cac3151',1,'Terminal']]], ['blink_2dblink_2edox',['blink-blink.dox',['../blink-blink_8dox.html',1,'']]], ['blink_2dcharlieplex_2edox',['blink-charlieplex.dox',['../blink-charlieplex_8dox.html',1,'']]], ['blink_2dcylon_2edox',['blink-cylon.dox',['../blink-cylon_8dox.html',1,'']]], @@ -18,6 +21,8 @@ var searchData= ['blinkled',['BlinkLED',['../classBlinkLED.html',1,'BlinkLED'],['../classBlinkLED.html#afc33958651e7ce6dceb428ea654c2c2f',1,'BlinkLED::BlinkLED()']]], ['blockcipher',['BlockCipher',['../classBlockCipher.html',1,'BlockCipher'],['../classOMAC.html#abca82def496c6c6ab1ce5e5a958ec34a',1,'OMAC::blockCipher()'],['../classBlockCipher.html#adc3d7cba116cbea9ad017f4cded6fe2f',1,'BlockCipher::BlockCipher()']]], ['blocksize',['blockSize',['../classAESCommon.html#ae26afdcc6d18e8888974acae16df1413',1,'AESCommon::blockSize()'],['../classBLAKE2b.html#abec1b2320c3afaed12a29cf081b95fe2',1,'BLAKE2b::blockSize()'],['../classBLAKE2s.html#a9b5403734c20a0591d72a98912e4a305',1,'BLAKE2s::blockSize()'],['../classBlockCipher.html#a7059a310487c128db034b0ce0ad425a0',1,'BlockCipher::blockSize()'],['../classHash.html#a4e4297812e3483410556830fe5d47bdf',1,'Hash::blockSize()'],['../classKeccakCore.html#a3742ed39151811b5d1c263c75ee5b20a',1,'KeccakCore::blockSize()'],['../classSHA256.html#a71bbd9064f9d6191d0647f867953a858',1,'SHA256::blockSize()'],['../classSHA3__256.html#a88a50ab6c2d4ad105cda2dd504d96e7c',1,'SHA3_256::blockSize()'],['../classSHA3__512.html#a4493a717bad8fa5cd35fe3aa36f25ab3',1,'SHA3_512::blockSize()'],['../classSHA512.html#acf8b9bcb6be91ee70acc3700a2ffa1a1',1,'SHA512::blockSize()'],['../classSHAKE.html#a635b2475049541f73eaf577ed8e67cb7',1,'SHAKE::blockSize()'],['../classSpeck.html#a18a3b982a2cbc48befc8d498de08f188',1,'Speck::blockSize()'],['../classSpeckTiny.html#af8bbd1d1124fd1c4ef1aa167625376a9',1,'SpeckTiny::blockSize()'],['../classXOF.html#a469429647da7d43b3aa4aef44506d01c',1,'XOF::blockSize()']]], + ['blue',['Blue',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20a70f0c34fa3b8055231e826454b9cf8be',1,'Terminal']]], + ['bold',['bold',['../classTerminal.html#a2e8dd341fc1ce63aa120be6066a89bea',1,'Terminal']]], ['boolfield',['BoolField',['../classBoolField.html',1,'BoolField'],['../classBoolField.html#a5d4382cdcdc989de0179d8f3f3a59998',1,'BoolField::BoolField(const String &label)'],['../classBoolField.html#a49aad212ed18f84baa105c24e86281d9',1,'BoolField::BoolField(Form &form, const String &label, const String &trueLabel, const String &falseLabel, bool value)']]], ['bytecount',['byteCount',['../classDS1307RTC.html#a93c25269a9b78ab3331354db26672248',1,'DS1307RTC::byteCount()'],['../classDS3232RTC.html#a1319fe936dcb7e9d6bdf200b77a94f8e',1,'DS3232RTC::byteCount()'],['../classRTC.html#acfdebfb449710e44e11f9a3675e14fd8',1,'RTC::byteCount()']]] ]; diff --git a/search/all_10.js b/search/all_10.js index dfeefdfe..a722e1ea 100644 --- a/search/all_10.js +++ b/search/all_10.js @@ -3,16 +3,21 @@ var searchData= ['star_20trek_20example',['Star Trek Example',['../blink_startrek.html',1,'']]], ['snake_20video_20game_20using_20an_20infrared_20remote_20control',['Snake Video Game Using an Infrared Remote Control',['../ir_snake.html',1,'']]], ['save',['save',['../classRNGClass.html#a139584fb249148e2058d1d645d090db7',1,'RNGClass']]], - ['screensavermode',['screenSaverMode',['../classLCD.html#a1917fa285f81f476b4c7cc20d15456b8',1,'LCD::screenSaverMode() const '],['../classLCD.html#a264bf94308c95d8598426e13dc8cdb28',1,'LCD::ScreenSaverMode()']]], + ['screensavermode',['ScreenSaverMode',['../classLCD.html#a264bf94308c95d8598426e13dc8cdb28',1,'LCD::ScreenSaverMode()'],['../classLCD.html#a1917fa285f81f476b4c7cc20d15456b8',1,'LCD::screenSaverMode() const ']]], ['scroll',['scroll',['../classBitmap.html#ae08eb6f9086f9923d8dc83a469ae4c4a',1,'Bitmap::scroll(int dx, int dy, Color fillColor=Black)'],['../classBitmap.html#af79ad4432297ff453fddc55625fec485',1,'Bitmap::scroll(int x, int y, int width, int height, int dx, int dy, Color fillColor=Black)']]], + ['scrolldown',['scrollDown',['../classTerminal.html#a661474bb4790aa82178b3ce9a85e5dea',1,'Terminal']]], + ['scrollup',['scrollUp',['../classTerminal.html#a30d8d69fd84cafc6c2c94ae6fc65b690',1,'Terminal']]], ['second',['second',['../structRTCTime.html#a87b7c02e535d808dcba04c77e34abb91',1,'RTCTime::second()'],['../structRTCAlarm.html#ab749e3695ee5c5dd703aec71f72d46a1',1,'RTCAlarm::second()']]], + ['sectorsize',['sectorSize',['../classXTSCommon.html#a7b96255bdf33eccca8f64eb1572cf8eb',1,'XTSCommon']]], ['seed_5fsize',['SEED_SIZE',['../classRNGClass.html#ae3a013bfc73795fd26ee36e70d89f4c2',1,'RNGClass']]], + ['serial',['Serial',['../classTerminal.html#a6fd7d021468962e9604bee0522b3a364a7efe0e37dae166c00d913190cd8f55f6',1,'Terminal']]], ['setadvancetime',['setAdvanceTime',['../classChaseLEDs.html#af560270f72302c19fb7f95002089c9d7',1,'ChaseLEDs']]], ['setalarm',['setAlarm',['../classDS3231RTC.html#adb8b36354f00ea0a862cce6b1805d4c0',1,'DS3231RTC']]], ['setautosavetime',['setAutoSaveTime',['../classRNGClass.html#a5848e87a5f2f0302c88b0377f0e3366d',1,'RNGClass']]], ['setbacklightpin',['setBacklightPin',['../classLCD.html#a0b9b3b954290e7a3d94cdc829582b0a8',1,'LCD']]], ['setblinkrate',['setBlinkRate',['../classBlinkLED.html#a47f95624881063aa91c0066ed2c92258',1,'BlinkLED']]], ['setblockcipher',['setBlockCipher',['../classCBCCommon.html#a0b7631244b0c2c954cfdb50eb32f7db1',1,'CBCCommon::setBlockCipher()'],['../classCFBCommon.html#a9161530f456efacb64f5008fdb1a460c',1,'CFBCommon::setBlockCipher()'],['../classCTRCommon.html#a6c409c4ec1f99e0cb751196d891dc228',1,'CTRCommon::setBlockCipher()'],['../classEAXCommon.html#a7db44040163b33f818cfaf47185251ca',1,'EAXCommon::setBlockCipher()'],['../classGCMCommon.html#a7abd3044862f8634f3b176aafa779ba2',1,'GCMCommon::setBlockCipher()'],['../classOFBCommon.html#a0053e2566a88859effffacbf1e4ade04',1,'OFBCommon::setBlockCipher()'],['../classOMAC.html#a8ae86bc629cca60cebb995d092ba06b4',1,'OMAC::setBlockCipher()']]], + ['setblockciphers',['setBlockCiphers',['../classXTSCommon.html#aade8a16b70a49e8b04cb776522b29b7e',1,'XTSCommon']]], ['setcapacity',['setCapacity',['../classKeccakCore.html#ab3c1905f2002e49aca085d6f0b5546f7',1,'KeccakCore']]], ['setcounter',['setCounter',['../classChaCha.html#acab9109b7189ea88d9e5417a3a209eac',1,'ChaCha']]], ['setcountersize',['setCounterSize',['../classCTRCommon.html#ae2bc6b33a864412598b426320d853337',1,'CTRCommon']]], @@ -24,27 +29,34 @@ var searchData= ['setholdtime',['setHoldTime',['../classCharlieplex.html#a8502f4c752faba37023ced587695f6a4',1,'Charlieplex']]], ['setitems',['setItems',['../classListField.html#ae6709bce9355451b651893691456704e',1,'ListField']]], ['setiv',['setIV',['../classCBCCommon.html#ac7a586217835055b3a354bb932db160c',1,'CBCCommon::setIV()'],['../classCFBCommon.html#a597040eb7df40adbbef94b4c3975cd80',1,'CFBCommon::setIV()'],['../classChaCha.html#a734f3246b1e6810c63637b8cda26b259',1,'ChaCha::setIV()'],['../classChaChaPoly.html#a308056b17b3a4a496e9612ae19a2fd6f',1,'ChaChaPoly::setIV()'],['../classCipher.html#a3777acd8ff776a4e945bb7c9f2d044d9',1,'Cipher::setIV()'],['../classCTRCommon.html#aad289af3eb013cb3ffda6d7e8e8b3d04',1,'CTRCommon::setIV()'],['../classEAXCommon.html#a33a5da1f210f01c3622fbf27208f3d45',1,'EAXCommon::setIV()'],['../classGCMCommon.html#a2545135fe42c832e40e057b603824524',1,'GCMCommon::setIV()'],['../classOFBCommon.html#a4a35364cf30d78f1968cc00803686caf',1,'OFBCommon::setIV()']]], - ['setkey',['setKey',['../classAES128.html#a42d7548eb5084a2c3e2d5aa5f6f98ba4',1,'AES128::setKey()'],['../classAES192.html#a4ab37cff19fb05ceef1533ebc5e37cde',1,'AES192::setKey()'],['../classAES256.html#a6af085d2d6a730ff1e025f982121bbda',1,'AES256::setKey()'],['../classBlockCipher.html#a9a05307664469777592799c8f77397c4',1,'BlockCipher::setKey()'],['../classCBCCommon.html#add75ea4342a190e560cee26a8e9efc37',1,'CBCCommon::setKey()'],['../classCFBCommon.html#a45b9be25fb96f0e3ca5211b064e2baea',1,'CFBCommon::setKey()'],['../classChaCha.html#a6b2bdffbd3705e388bb458edb2f40c90',1,'ChaCha::setKey()'],['../classChaChaPoly.html#ae300892647dd92cbce711b834aa20c09',1,'ChaChaPoly::setKey()'],['../classCipher.html#a0dfe133bda81dfa680b668f5908ccbe5',1,'Cipher::setKey()'],['../classCTRCommon.html#a79da937dc2c444a174176beab33c055a',1,'CTRCommon::setKey()'],['../classEAXCommon.html#af5be5115c119610abb351028263d28de',1,'EAXCommon::setKey()'],['../classGCMCommon.html#a397c5dddde828c59eb63367385aec562',1,'GCMCommon::setKey()'],['../classOFBCommon.html#ac3a98e81d95ebc6c883baef5f4cfbefb',1,'OFBCommon::setKey()'],['../classSpeck.html#a7a07fc025bd25d832e9899333b5dabef',1,'Speck::setKey()'],['../classSpeckSmall.html#a3345df135f6530bad475d630ef6c1038',1,'SpeckSmall::setKey()'],['../classSpeckTiny.html#a05180c773b9d26d3b67ff569dc86fc2d',1,'SpeckTiny::setKey()']]], + ['setkey',['setKey',['../classAES128.html#a42d7548eb5084a2c3e2d5aa5f6f98ba4',1,'AES128::setKey()'],['../classAES192.html#a4ab37cff19fb05ceef1533ebc5e37cde',1,'AES192::setKey()'],['../classAES256.html#a6af085d2d6a730ff1e025f982121bbda',1,'AES256::setKey()'],['../classBlockCipher.html#a9a05307664469777592799c8f77397c4',1,'BlockCipher::setKey()'],['../classCBCCommon.html#add75ea4342a190e560cee26a8e9efc37',1,'CBCCommon::setKey()'],['../classCFBCommon.html#a45b9be25fb96f0e3ca5211b064e2baea',1,'CFBCommon::setKey()'],['../classChaCha.html#a6b2bdffbd3705e388bb458edb2f40c90',1,'ChaCha::setKey()'],['../classChaChaPoly.html#ae300892647dd92cbce711b834aa20c09',1,'ChaChaPoly::setKey()'],['../classCipher.html#a0dfe133bda81dfa680b668f5908ccbe5',1,'Cipher::setKey()'],['../classCTRCommon.html#a79da937dc2c444a174176beab33c055a',1,'CTRCommon::setKey()'],['../classEAXCommon.html#af5be5115c119610abb351028263d28de',1,'EAXCommon::setKey()'],['../classGCMCommon.html#a397c5dddde828c59eb63367385aec562',1,'GCMCommon::setKey()'],['../classOFBCommon.html#ac3a98e81d95ebc6c883baef5f4cfbefb',1,'OFBCommon::setKey()'],['../classSpeck.html#a7a07fc025bd25d832e9899333b5dabef',1,'Speck::setKey()'],['../classSpeckSmall.html#a3345df135f6530bad475d630ef6c1038',1,'SpeckSmall::setKey()'],['../classSpeckTiny.html#a05180c773b9d26d3b67ff569dc86fc2d',1,'SpeckTiny::setKey()'],['../classXTSCommon.html#a68b1ad6bad0b29aeb97dea80e4e03170',1,'XTSCommon::setKey()'],['../classXTSSingleKeyCommon.html#af150ada65640d0dcd1f5e09817f63769',1,'XTSSingleKeyCommon::setKey()']]], ['setlabel',['setLabel',['../classField.html#ad4ea63599d780c35b296cf2840b69f7b',1,'Field']]], ['setled',['setLed',['../classCharlieplex.html#ab103c9687a0890faf72e4da79e3de0a5',1,'Charlieplex']]], ['setloopcount',['setLoopCount',['../classMelody.html#a507097a2e8ff51a5e9157e3a320ae35b',1,'Melody']]], ['setloopduration',['setLoopDuration',['../classMelody.html#ae88ad06c2acb728f56dd213d5dad6006',1,'Melody']]], + ['setmachinename',['setMachineName',['../classLoginShell.html#a951838252942c56537dc877c48d3d63e',1,'LoginShell']]], ['setmaxhours',['setMaxHours',['../classTimeField.html#a7ac124eb9dde01c18c711c421736b5ed',1,'TimeField']]], ['setmaxvalue',['setMaxValue',['../classIntField.html#a36cbd7c24480cc3fcf0c7634d5e22bf1',1,'IntField']]], ['setmelody',['setMelody',['../classMelody.html#adb6ad8e8cfe8c9a137e470f4e85c7254',1,'Melody']]], ['setminvalue',['setMinValue',['../classIntField.html#afffe7be6721a043cec7a5a85c19e0ada',1,'IntField']]], ['setnumrounds',['setNumRounds',['../classChaCha.html#a1a0911e0be8f4590d7fb76884d98c541',1,'ChaCha']]], + ['setpasswordcheckfunction',['setPasswordCheckFunction',['../classLoginShell.html#a68d34a52a12f36113286418c17351bd4',1,'LoginShell']]], ['setpixel',['setPixel',['../classBitmap.html#aac994b75418e7d37ec66829437329114',1,'Bitmap']]], + ['setprompt',['setPrompt',['../classShell.html#a89d802eae5b716e80b2c4dfbce0a0a75',1,'Shell']]], ['setpwmled',['setPwmLed',['../classCharlieplex.html#a605a302e13005a1aa3d68d0e22bc474b',1,'Charlieplex']]], ['setreadonly',['setReadOnly',['../classTimeField.html#a3f002a0729e90e88d04025908be102fe',1,'TimeField']]], ['setscreensavermode',['setScreenSaverMode',['../classLCD.html#a56d1f68532c779c65fbbd071fb444801',1,'LCD']]], + ['setsectorsize',['setSectorSize',['../classXTSCommon.html#a7e0aa61628285073545a8f8e0b0d981d',1,'XTSCommon']]], ['setstate',['setState',['../classBlinkLED.html#af904a345e56d49948a042ac439d0b9d4',1,'BlinkLED']]], ['setstepvalue',['setStepValue',['../classIntField.html#a8fb6e207bd906062bb788e19dbe58bcb',1,'IntField']]], ['setsuffix',['setSuffix',['../classIntField.html#a9324bba994389f3a4563d9c18bd2f1cd',1,'IntField']]], ['setsystemfilter',['setSystemFilter',['../classIRreceiver.html#a920828f1411fa12d1856cd933066bd08',1,'IRreceiver']]], ['settextcolor',['setTextColor',['../classBitmap.html#a8e225a4f188269bb18265ae4b49de0a3',1,'Bitmap']]], ['settruelabel',['setTrueLabel',['../classBoolField.html#a803fc8c39765da4a44af01d925cd4194',1,'BoolField']]], + ['settweak',['setTweak',['../classXTSCommon.html#a744a533d46078de5ea9723139f74bcdb',1,'XTSCommon']]], + ['setuserid',['setUserid',['../classShell.html#a5db7316a4feb9829beea11dfe65462d2',1,'Shell']]], ['setvalue',['setValue',['../classBoolField.html#a080c575fd4a98e6afc4b9197fbab5577',1,'BoolField::setValue()'],['../classIntField.html#aed421e2c52946f2c7643534b4f6f13f7',1,'IntField::setValue()'],['../classListField.html#a266193631e897fb0b46e1270b1d0eb24',1,'ListField::setValue()'],['../classTextField.html#a24b98c5bb744331bf0a5facc8ea9c033',1,'TextField::setValue()'],['../classTimeField.html#a063b6df2bd6fa7970ee445ab4e5d1fc1',1,'TimeField::setValue()']]], + ['setwindowsize',['setWindowSize',['../classTerminal.html#af8957afd199718a809114dc5236f1a62',1,'Terminal']]], ['sha256',['SHA256',['../classSHA256.html',1,'SHA256'],['../classSHA256.html#ab672831c542df07ff03ded25760feec2',1,'SHA256::SHA256()']]], ['sha3_5f256',['SHA3_256',['../classSHA3__256.html',1,'SHA3_256'],['../classSHA3__256.html#ac091b276c6d80a981fa64a9e8c68ca87',1,'SHA3_256::SHA3_256()']]], ['sha3_5f512',['SHA3_512',['../classSHA3__512.html',1,'SHA3_512'],['../classSHA3__512.html#a5f8bc4180e9d19597f499468098a82a4',1,'SHA3_512::SHA3_512()']]], @@ -52,6 +64,14 @@ var searchData= ['shake',['SHAKE',['../classSHAKE.html',1,'SHAKE'],['../classSHAKE.html#a9346e4d53a9d7d686911ab772fc23387',1,'SHAKE::SHAKE()']]], ['shake128',['SHAKE128',['../classSHAKE128.html',1,'SHAKE128'],['../classSHAKE128.html#a7d9d435780157e944eea931b3a13df0d',1,'SHAKE128::SHAKE128()']]], ['shake256',['SHAKE256',['../classSHAKE256.html',1,'SHAKE256'],['../classSHAKE256.html#abbc01bc6798da9479e2da105f6661c22',1,'SHAKE256::SHAKE256()']]], + ['shell',['Shell',['../classShell.html',1,'Shell'],['../classShell.html#ad613444a902075e8fd26b1f51c4d3b63',1,'Shell::Shell()']]], + ['shell_2dserial_2edox',['shell-serial.dox',['../shell-serial_8dox.html',1,'']]], + ['shell_2dtelnet_2edox',['shell-telnet.dox',['../shell-telnet_8dox.html',1,'']]], + ['serial_20port_20shell_20example',['Serial port Shell example',['../shell_serial.html',1,'']]], + ['shellarguments',['ShellArguments',['../classShellArguments.html',1,'']]], + ['shellcommand',['ShellCommand',['../classShell.html#a809d96cf913bf11d02f3c0d51a120740',1,'Shell']]], + ['shellcommandfunc',['ShellCommandFunc',['../classShell.html#ad5bac6a4033cd81e24c1345650bca744',1,'Shell']]], + ['shellpasswordcheckfunc',['ShellPasswordCheckFunc',['../classLoginShell.html#adad54b04ec54d3577df4cd11944fff1d',1,'LoginShell']]], ['show',['show',['../classForm.html#a9e8d718ab55a8034c22c606ccfa90d65',1,'Form']]], ['sign',['sign',['../classEd25519.html#a36ecf67b4c5d2d39a31888f56af1f8a5',1,'Ed25519']]], ['size',['size',['../classEEPROM24.html#aa544875cef9bd05bf71d6c19be06cf7c',1,'EEPROM24']]], @@ -77,6 +97,7 @@ var searchData= ['stepvalue',['stepValue',['../classIntField.html#a49025ee3473fe066a6a6c546af98bfbd',1,'IntField']]], ['stir',['stir',['../classNoiseSource.html#a7ce647815524fe84f562aca5256e12f3',1,'NoiseSource::stir()'],['../classRNGClass.html#ad99535ea23ae2fec55bdebb8c24def02',1,'RNGClass::stir()'],['../classRingOscillatorNoiseSource.html#ad71698b5c92b41eef2f1322999b3eff9',1,'RingOscillatorNoiseSource::stir()'],['../classTransistorNoiseSource.html#add25c6a14b0506bc30ca781f2d923917',1,'TransistorNoiseSource::stir()']]], ['stop',['stop',['../classMelody.html#ac0c552233c41d85f2766d2e4df376b2b',1,'Melody']]], + ['stream',['stream',['../classTerminal.html#a18f46590476d5231e9480b5f69a68f63',1,'Terminal']]], ['stride',['stride',['../classBitmap.html#af30df263729385ea2330effe3c80a1bc',1,'Bitmap']]], ['sub',['sub',['../classBigNumberUtil.html#a6618e03bfcb3086961df508b40cc1e67',1,'BigNumberUtil']]], ['sub_5fp',['sub_P',['../classBigNumberUtil.html#af0fa1527647af42b65eda6b0aab982b3',1,'BigNumberUtil']]], diff --git a/search/all_11.js b/search/all_11.js index 5ac95b20..e6289d1b 100644 --- a/search/all_11.js +++ b/search/all_11.js @@ -1,11 +1,15 @@ var searchData= [ + ['telnet_20server_20example',['Telnet server example',['../shell_telnet.html',1,'']]], ['tagsize',['tagSize',['../classAuthenticatedCipher.html#a50c9de15b1ac1f3079dcfef626238759',1,'AuthenticatedCipher::tagSize()'],['../classChaChaPoly.html#a086c2aea395ab31136ebe7805591fd0a',1,'ChaChaPoly::tagSize()'],['../classEAXCommon.html#a8804341b21f752a5b8178a3bdb123fd9',1,'EAXCommon::tagSize()'],['../classGCMCommon.html#a935f343858e98ee331706daf43e34805',1,'GCMCommon::tagSize()']]], + ['telnet',['Telnet',['../classTerminal.html#a6fd7d021468962e9604bee0522b3a364a71eb4637496b7a884384c4250f3289a7',1,'Terminal']]], + ['terminal',['Terminal',['../classTerminal.html',1,'Terminal'],['../classTerminal.html#aa448509b5aa1ece53c3d86385655be0e',1,'Terminal::Terminal()']]], ['textcolor',['textColor',['../classBitmap.html#ab6e5f5744fd2f18478aac428b751d848',1,'Bitmap']]], ['textfield',['TextField',['../classTextField.html',1,'TextField'],['../classTextField.html#a5108741ab147b2cd5a399fefbe0a2382',1,'TextField::TextField(const String &label)'],['../classTextField.html#a24096a344d9161b2c99ce724ec2ee93c',1,'TextField::TextField(Form &form, const String &label, const String &value)']]], ['textheight',['textHeight',['../classBitmap.html#a628bb694fcfe6eab619a4f1e152d41c4',1,'Bitmap']]], ['textwidth',['textWidth',['../classBitmap.html#a0f7607b1c7867987f4500d490a666e8a',1,'Bitmap::textWidth(const char *str, int len=-1) const '],['../classBitmap.html#a8ca70aa0f8f722a228358bffe794e925',1,'Bitmap::textWidth(const String &str, int start=0, int len=-1) const ']]], ['timefield',['TimeField',['../classTimeField.html',1,'TimeField'],['../classTimeField.html#a138e2425379705828a87eb2d8a836431',1,'TimeField::TimeField(const String &label)'],['../classTimeField.html#a87f222bc098367963ed21a7edc4624de',1,'TimeField::TimeField(Form &form, const String &label, int maxHours, bool readOnly)']]], ['transistornoisesource',['TransistorNoiseSource',['../classTransistorNoiseSource.html',1,'TransistorNoiseSource'],['../classTransistorNoiseSource.html#a05bab61c301a5397021048c95ca3107d',1,'TransistorNoiseSource::TransistorNoiseSource()']]], - ['truelabel',['trueLabel',['../classBoolField.html#a9972030beec6e007b556c6eb652e163d',1,'BoolField']]] + ['truelabel',['trueLabel',['../classBoolField.html#a9972030beec6e007b556c6eb652e163d',1,'BoolField']]], + ['tweaksize',['tweakSize',['../classXTSCommon.html#afb3ebf14c7879bcbc92e3d6cc70b19a9',1,'XTSCommon']]] ]; diff --git a/search/all_12.js b/search/all_12.js index 431be5a3..f3d9a544 100644 --- a/search/all_12.js +++ b/search/all_12.js @@ -1,8 +1,13 @@ var searchData= [ + ['underline',['underline',['../classTerminal.html#a0e23c452353e7fdf0881d37521f3d105',1,'Terminal']]], + ['unicodekey',['unicodeKey',['../classTerminal.html#a33e5eb60d69e4ccf6e3c90f7428b4961',1,'Terminal']]], ['unpackbe',['unpackBE',['../classBigNumberUtil.html#a63f9d7884eb36227d39e1b95e219d865',1,'BigNumberUtil']]], ['unpackle',['unpackLE',['../classBigNumberUtil.html#a25041f898c417c8dd63f30536287ed79',1,'BigNumberUtil']]], ['unusedpin',['unusedPin',['../group__power__save.html#ga6dbe8e20a70e83cf5b068177675ec792',1,'PowerSave.h']]], ['update',['update',['../classBLAKE2b.html#a468e48c66ce1738e11c922d133135069',1,'BLAKE2b::update()'],['../classBLAKE2s.html#aa192da2fa044b03cccaf11e87fdf9911',1,'BLAKE2s::update()'],['../classGHASH.html#a235edb14c6ed1ec55ddda595816ef1c7',1,'GHASH::update()'],['../classHash.html#aec9761ee427d122e7450de8df200265c',1,'Hash::update()'],['../classKeccakCore.html#aaaa0355ccec0f469ac8eb577bdf853ed',1,'KeccakCore::update()'],['../classOMAC.html#a6692d7f37dd097fdfdd2b198aa0d9cde',1,'OMAC::update()'],['../classPoly1305.html#ae4e0b647ff93f501bd01459b1616557c',1,'Poly1305::update()'],['../classSHA256.html#a555bf8efb17afd4842d2e55a1f39f27b',1,'SHA256::update()'],['../classSHA3__256.html#a8356957ea403c5da326fc6899b91ea71',1,'SHA3_256::update()'],['../classSHA3__512.html#a0563e4c87150e6019671b4fe92fd63a4',1,'SHA3_512::update()'],['../classSHA512.html#a7d37a20d7ab431ab15d094f768b6a695',1,'SHA512::update()'],['../classSHAKE.html#aa6f3a32427433aabe20adccb6994a4aa',1,'SHAKE::update()'],['../classXOF.html#a35fe86f903d9102e64b1c920c69c394e',1,'XOF::update()']]], - ['updatecursor',['updateCursor',['../classField.html#afc612378167be0e7f8a6f8395b3537bd',1,'Field']]] + ['updatecursor',['updateCursor',['../classField.html#afc612378167be0e7f8a6f8395b3537bd',1,'Field']]], + ['userid',['userid',['../classShell.html#a6ae6e1af0a7f6116e6a9a1e658fb9a84',1,'Shell']]], + ['utf8format',['utf8Format',['../classTerminal.html#ae6478319776ecb726613b38429d7cdec',1,'Terminal']]], + ['utf8length',['utf8Length',['../classTerminal.html#a0ed780bd8568f752c5d3dfe68a111c52',1,'Terminal']]] ]; diff --git a/search/all_14.js b/search/all_14.js index 4166a089..04a63b7a 100644 --- a/search/all_14.js +++ b/search/all_14.js @@ -1,11 +1,13 @@ var searchData= [ - ['white',['White',['../classBitmap.html#a39b6754cfe50a457bbfdb1980fd87eb7',1,'Bitmap']]], + ['white',['White',['../classBitmap.html#a39b6754cfe50a457bbfdb1980fd87eb7',1,'Bitmap::White()'],['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20ae8296a3587847d6e0dd41efcc65251e8',1,'Terminal::White()']]], ['width',['width',['../classBitmap.html#a76c3b49e535761f07c553e7336daf523',1,'Bitmap']]], ['wrap',['WRAP',['../classRTC.html#a02ace2d775063be9a99035851c9274eb',1,'RTC']]], - ['write',['write',['../classEEPROM24.html#a9e017772e3459ee4ab987e27d78937f8',1,'EEPROM24::write(unsigned long address, uint8_t value)'],['../classEEPROM24.html#a3d918ed34da7ca6d21a776c0614eebf3',1,'EEPROM24::write(unsigned long address, const void *data, size_t length)'],['../classI2CMaster.html#a0bf6b84cb1e2b3a37a4a0260d0b6f960',1,'I2CMaster::write()'],['../classSoftI2C.html#ab46f0b6363c9cfe6fb3ab907956d5d73',1,'SoftI2C::write()']]], + ['write',['write',['../classEEPROM24.html#a9e017772e3459ee4ab987e27d78937f8',1,'EEPROM24::write(unsigned long address, uint8_t value)'],['../classEEPROM24.html#a3d918ed34da7ca6d21a776c0614eebf3',1,'EEPROM24::write(unsigned long address, const void *data, size_t length)'],['../classI2CMaster.html#a0bf6b84cb1e2b3a37a4a0260d0b6f960',1,'I2CMaster::write()'],['../classSoftI2C.html#ab46f0b6363c9cfe6fb3ab907956d5d73',1,'SoftI2C::write()'],['../classTerminal.html#ae723f16d4f97954fb45550fa05d600bb',1,'Terminal::write(uint8_t c)'],['../classTerminal.html#a134b9131e18b35af18c53eabec49186d',1,'Terminal::write(const uint8_t *buffer, size_t size)']]], ['writealarm',['writeAlarm',['../classDS1307RTC.html#a7354aed91d7c94d0d7b2144b1bf32c75',1,'DS1307RTC::writeAlarm()'],['../classDS3231RTC.html#a1ed8945018024816600f709c6eb0c749',1,'DS3231RTC::writeAlarm()'],['../classDS3232RTC.html#a8b0a65e0ac479aec8fad6ca3147dbe75',1,'DS3232RTC::writeAlarm()'],['../classRTC.html#a0e96c91efd9e7a6340effdae3eadf17e',1,'RTC::writeAlarm()']]], ['writebyte',['writeByte',['../classDS1307RTC.html#a6ef435fd4aa4adf8eefdf8b1741f5ba6',1,'DS1307RTC::writeByte()'],['../classDS3232RTC.html#a9acebf12c5cecdd6d84e0ff9ed41765a',1,'DS3232RTC::writeByte()'],['../classRTC.html#a1cab6397ec04b1e2b3feea5b3cd1f749',1,'RTC::writeByte()']]], ['writedate',['writeDate',['../classDS1307RTC.html#a4f7346be33612cf9ecd96080eb046230',1,'DS1307RTC::writeDate()'],['../classDS3231RTC.html#a450a143514a5aa228f8ef7a23d83d036',1,'DS3231RTC::writeDate()'],['../classDS3232RTC.html#a31c004a90c724979d8267c31f2dbf5ed',1,'DS3232RTC::writeDate()'],['../classRTC.html#ae667600d05c8e7b06a93574dd068a4d7',1,'RTC::writeDate()']]], - ['writetime',['writeTime',['../classDS1307RTC.html#a0a5d0d86a0345420ebb289ea724b19e8',1,'DS1307RTC::writeTime()'],['../classDS3231RTC.html#ae9bee8f68f9e124562230175ca9d15c3',1,'DS3231RTC::writeTime()'],['../classDS3232RTC.html#ab0ca13a8b80da856b37fc53b84e27c78',1,'DS3232RTC::writeTime()'],['../classRTC.html#a102e2ec15bf0273d8f7e9ce4b6dcc96e',1,'RTC::writeTime()']]] + ['writeprogmem',['writeProgMem',['../classTerminal.html#ae0b908585ec355e0f299579a015c1170',1,'Terminal']]], + ['writetime',['writeTime',['../classDS1307RTC.html#a0a5d0d86a0345420ebb289ea724b19e8',1,'DS1307RTC::writeTime()'],['../classDS3231RTC.html#ae9bee8f68f9e124562230175ca9d15c3',1,'DS3231RTC::writeTime()'],['../classDS3232RTC.html#ab0ca13a8b80da856b37fc53b84e27c78',1,'DS3232RTC::writeTime()'],['../classRTC.html#a102e2ec15bf0273d8f7e9ce4b6dcc96e',1,'RTC::writeTime()']]], + ['writeunicode',['writeUnicode',['../classTerminal.html#a25308d6b2a3d18820d8a0e641c7be937',1,'Terminal']]] ]; diff --git a/search/all_15.js b/search/all_15.js index d28cfccc..53ffb680 100644 --- a/search/all_15.js +++ b/search/all_15.js @@ -1,4 +1,8 @@ var searchData= [ - ['xof',['XOF',['../classXOF.html',1,'XOF'],['../classXOF.html#a855d1bb01d46b329c57b59783cd1e075',1,'XOF::XOF()']]] + ['xof',['XOF',['../classXOF.html',1,'XOF'],['../classXOF.html#a855d1bb01d46b329c57b59783cd1e075',1,'XOF::XOF()']]], + ['xts',['XTS',['../classXTS.html',1,'XTS< T1, T2 >'],['../classXTS.html#ae37ec61a7d4275071d52dfc61e467736',1,'XTS::XTS()']]], + ['xtscommon',['XTSCommon',['../classXTSCommon.html',1,'XTSCommon'],['../classXTSCommon.html#ae3ce2a2a72eb839f8ccde4a166ad40e6',1,'XTSCommon::XTSCommon()']]], + ['xtssinglekey',['XTSSingleKey',['../classXTSSingleKey.html',1,'XTSSingleKey< T >'],['../classXTSSingleKey.html#a074fb1ebccf252acfba01c3fe8edda43',1,'XTSSingleKey::XTSSingleKey()']]], + ['xtssinglekeycommon',['XTSSingleKeyCommon',['../classXTSSingleKeyCommon.html',1,'XTSSingleKeyCommon'],['../classXTSSingleKeyCommon.html#a75617e97fb9551d35173b3f345e77a4d',1,'XTSSingleKeyCommon::XTSSingleKeyCommon()']]] ]; diff --git a/search/all_16.js b/search/all_16.js index d4472111..6072063b 100644 --- a/search/all_16.js +++ b/search/all_16.js @@ -1,4 +1,5 @@ var searchData= [ - ['year',['year',['../structRTCDate.html#a7d31822daff3c3fc947386abd897732f',1,'RTCDate']]] + ['year',['year',['../structRTCDate.html#a7d31822daff3c3fc947386abd897732f',1,'RTCDate']]], + ['yellow',['Yellow',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20a5f04853bd0cf9cea91dae31cc5294f22',1,'Terminal']]] ]; diff --git a/search/all_17.js b/search/all_17.js index 45b10b26..daef7e68 100644 --- a/search/all_17.js +++ b/search/all_17.js @@ -18,6 +18,7 @@ var searchData= ['_7eghash',['~GHASH',['../classGHASH.html#ae7f63a587adf1aa1ffcdc0a6e20584fd',1,'GHASH']]], ['_7ehash',['~Hash',['../classHash.html#a4e4b4797dda8678aaed058bae155813e',1,'Hash']]], ['_7ekeccakcore',['~KeccakCore',['../classKeccakCore.html#a4579e3a9b24f1d615fa8d660c23e77a4',1,'KeccakCore']]], + ['_7eloginshell',['~LoginShell',['../classLoginShell.html#aaae466b141c9ea50870b66509402a2f9',1,'LoginShell']]], ['_7enoisesource',['~NoiseSource',['../classNoiseSource.html#a4eca1e894a5d719fb9bf4df34a791cdb',1,'NoiseSource']]], ['_7eofbcommon',['~OFBCommon',['../classOFBCommon.html#aae7435157e51bf977d3481e94e17ae01',1,'OFBCommon']]], ['_7eomac',['~OMAC',['../classOMAC.html#a6bb2222c997608ec68b25831da965e8f',1,'OMAC']]], @@ -30,5 +31,11 @@ var searchData= ['_7eshake',['~SHAKE',['../classSHAKE.html#a1729b9a96b71185166d68a2d98fb84e9',1,'SHAKE']]], ['_7eshake128',['~SHAKE128',['../classSHAKE128.html#a1d08d5987802636fa24c6245ebbe4288',1,'SHAKE128']]], ['_7eshake256',['~SHAKE256',['../classSHAKE256.html#a629a9817a524c1a7d273c7fca6d911c4',1,'SHAKE256']]], - ['_7exof',['~XOF',['../classXOF.html#a5164ebb6aef3e5492f81ce5d685a00af',1,'XOF']]] + ['_7eshell',['~Shell',['../classShell.html#a95f78f499b3dfd9c83f4099cf90ef3df',1,'Shell']]], + ['_7eterminal',['~Terminal',['../classTerminal.html#add5a7d4dd45b68af9a0afb1cc845af2f',1,'Terminal']]], + ['_7exof',['~XOF',['../classXOF.html#a5164ebb6aef3e5492f81ce5d685a00af',1,'XOF']]], + ['_7exts',['~XTS',['../classXTS.html#a97410cd5abc63921870c9610b03421b8',1,'XTS']]], + ['_7extscommon',['~XTSCommon',['../classXTSCommon.html#ac5398f0bd2201e7d3fa335899fb3c6f3',1,'XTSCommon']]], + ['_7extssinglekey',['~XTSSingleKey',['../classXTSSingleKey.html#ae19d16e738574582deecc48d73aad086',1,'XTSSingleKey']]], + ['_7extssinglekeycommon',['~XTSSingleKeyCommon',['../classXTSSingleKeyCommon.html#a0ab819b391d6e783d2dde4006440444c',1,'XTSSingleKeyCommon']]] ]; diff --git a/search/all_2.js b/search/all_2.js index be645de1..2699e89c 100644 --- a/search/all_2.js +++ b/search/all_2.js @@ -15,12 +15,14 @@ var searchData= ['chaseleds',['ChaseLEDs',['../classChaseLEDs.html',1,'ChaseLEDs'],['../classChaseLEDs.html#ab6bb3da371d3730a6552e93a9b2eab78',1,'ChaseLEDs::ChaseLEDs()']]], ['checktag',['checkTag',['../classAuthenticatedCipher.html#a4bb33d194e2c7d30c4e5a713e59786ff',1,'AuthenticatedCipher::checkTag()'],['../classChaChaPoly.html#aeffb3e0df0b4da03f72f30251243d953',1,'ChaChaPoly::checkTag()'],['../classEAXCommon.html#a72c403f52cefab57566bc5f634c1b963',1,'EAXCommon::checkTag()'],['../classGCMCommon.html#a70229be2fe2274c4109fe7511481075a',1,'GCMCommon::checkTag()']]], ['cipher',['Cipher',['../classCipher.html',1,'Cipher'],['../classCipher.html#a6a61077eca3ccd5900f92ceac58fb09c',1,'Cipher::Cipher()']]], - ['clear',['clear',['../classBitmap.html#a839dc8fab05a5ebf7a6b2e61436b2fa1',1,'Bitmap::clear()'],['../classAESCommon.html#a83e43f7d07e31d90fd7b768a93ecfce6',1,'AESCommon::clear()'],['../classBLAKE2b.html#a21623759bd381285ebf7e75a00c9c8a9',1,'BLAKE2b::clear()'],['../classBLAKE2s.html#a0848885f52df51dc53949d32a206e72d',1,'BLAKE2s::clear()'],['../classBlockCipher.html#a6f27d46e9dfa7761d014d828ad5f955b',1,'BlockCipher::clear()'],['../classCBCCommon.html#a7befadfe7384e0e857a96a59bf3845e9',1,'CBCCommon::clear()'],['../classCFBCommon.html#a847d320b0fe7f329385f26511b42c40d',1,'CFBCommon::clear()'],['../classChaCha.html#af533905f679066c41f4d6cd76bddb4cb',1,'ChaCha::clear()'],['../classChaChaPoly.html#a2d7fc3fd05a0b6c7c9c21fff6e939c9a',1,'ChaChaPoly::clear()'],['../classCipher.html#a4b7c3965646441a70d9ab934a7c92ab1',1,'Cipher::clear()'],['../classCTRCommon.html#ac0d6381c02fe2a8a017ad66d006a6ef2',1,'CTRCommon::clear()'],['../classEAXCommon.html#afa88b0f589e09103e9c69ace081db0af',1,'EAXCommon::clear()'],['../classGCMCommon.html#a06868ebd67a571aa68d88d5d072cece9',1,'GCMCommon::clear()'],['../classGHASH.html#a4b1ee789debf56f7f24807960ef0556e',1,'GHASH::clear()'],['../classHash.html#a4a959469433cd9348ab7f3ac6228bb34',1,'Hash::clear()'],['../classKeccakCore.html#aeff1df56e4a3103c99c1fe4307e60c66',1,'KeccakCore::clear()'],['../classOFBCommon.html#a55bf2396beb91c457bfc4c20ef5c8123',1,'OFBCommon::clear()'],['../classOMAC.html#a072715dbda39dc9c360cfcaab31d6aa7',1,'OMAC::clear()'],['../classPoly1305.html#ae3f3392b9a2bd0f3472e7e50dd7e21dd',1,'Poly1305::clear()'],['../classSHA256.html#add0d1649d533b27005ccd8508398c689',1,'SHA256::clear()'],['../classSHA3__256.html#a531467f995ef6fc901ad8c2b5776a8d1',1,'SHA3_256::clear()'],['../classSHA3__512.html#acfbc5e9b4d394f011d5132a2b156d260',1,'SHA3_512::clear()'],['../classSHA512.html#a0a9104dce5f099aeba216e5fbcb1ee1a',1,'SHA512::clear()'],['../classSHAKE.html#ab86f52425c1d5b0e5c924b4f96121fe0',1,'SHAKE::clear()'],['../classSpeck.html#aa3866273282addabb9d3703c41fdc95f',1,'Speck::clear()'],['../classSpeckSmall.html#aa93d9f0b5153425dc04e8fb8faff7513',1,'SpeckSmall::clear()'],['../classSpeckTiny.html#a303ecc2639459e47c6eeb21991d52ccf',1,'SpeckTiny::clear()'],['../classXOF.html#ac34cb22f251642b58b3dd78a6480aff3',1,'XOF::clear()']]], - ['color',['Color',['../classBitmap.html#a88d386944a7017aa776a177b10d8b2ba',1,'Bitmap']]], + ['clear',['clear',['../classBitmap.html#a839dc8fab05a5ebf7a6b2e61436b2fa1',1,'Bitmap::clear()'],['../classAESCommon.html#a83e43f7d07e31d90fd7b768a93ecfce6',1,'AESCommon::clear()'],['../classBLAKE2b.html#a21623759bd381285ebf7e75a00c9c8a9',1,'BLAKE2b::clear()'],['../classBLAKE2s.html#a0848885f52df51dc53949d32a206e72d',1,'BLAKE2s::clear()'],['../classBlockCipher.html#a6f27d46e9dfa7761d014d828ad5f955b',1,'BlockCipher::clear()'],['../classCBCCommon.html#a7befadfe7384e0e857a96a59bf3845e9',1,'CBCCommon::clear()'],['../classCFBCommon.html#a847d320b0fe7f329385f26511b42c40d',1,'CFBCommon::clear()'],['../classChaCha.html#af533905f679066c41f4d6cd76bddb4cb',1,'ChaCha::clear()'],['../classChaChaPoly.html#a2d7fc3fd05a0b6c7c9c21fff6e939c9a',1,'ChaChaPoly::clear()'],['../classCipher.html#a4b7c3965646441a70d9ab934a7c92ab1',1,'Cipher::clear()'],['../classCTRCommon.html#ac0d6381c02fe2a8a017ad66d006a6ef2',1,'CTRCommon::clear()'],['../classEAXCommon.html#afa88b0f589e09103e9c69ace081db0af',1,'EAXCommon::clear()'],['../classGCMCommon.html#a06868ebd67a571aa68d88d5d072cece9',1,'GCMCommon::clear()'],['../classGHASH.html#a4b1ee789debf56f7f24807960ef0556e',1,'GHASH::clear()'],['../classHash.html#a4a959469433cd9348ab7f3ac6228bb34',1,'Hash::clear()'],['../classKeccakCore.html#aeff1df56e4a3103c99c1fe4307e60c66',1,'KeccakCore::clear()'],['../classOFBCommon.html#a55bf2396beb91c457bfc4c20ef5c8123',1,'OFBCommon::clear()'],['../classOMAC.html#a072715dbda39dc9c360cfcaab31d6aa7',1,'OMAC::clear()'],['../classPoly1305.html#ae3f3392b9a2bd0f3472e7e50dd7e21dd',1,'Poly1305::clear()'],['../classSHA256.html#add0d1649d533b27005ccd8508398c689',1,'SHA256::clear()'],['../classSHA3__256.html#a531467f995ef6fc901ad8c2b5776a8d1',1,'SHA3_256::clear()'],['../classSHA3__512.html#acfbc5e9b4d394f011d5132a2b156d260',1,'SHA3_512::clear()'],['../classSHA512.html#a0a9104dce5f099aeba216e5fbcb1ee1a',1,'SHA512::clear()'],['../classSHAKE.html#ab86f52425c1d5b0e5c924b4f96121fe0',1,'SHAKE::clear()'],['../classSpeck.html#aa3866273282addabb9d3703c41fdc95f',1,'Speck::clear()'],['../classSpeckSmall.html#aa93d9f0b5153425dc04e8fb8faff7513',1,'SpeckSmall::clear()'],['../classSpeckTiny.html#a303ecc2639459e47c6eeb21991d52ccf',1,'SpeckTiny::clear()'],['../classXOF.html#ac34cb22f251642b58b3dd78a6480aff3',1,'XOF::clear()'],['../classXTSCommon.html#a96e3cb4a3d35dc4e3a5acbae19b4465b',1,'XTSCommon::clear()'],['../classTerminal.html#a4be741767b27739eec98901477e1c3d4',1,'Terminal::clear()']]], + ['cleartoeol',['clearToEOL',['../classTerminal.html#aeb93d71925cdfb17065e7f1ef2e83414',1,'Terminal']]], + ['color',['color',['../classTerminal.html#ad1fc2be31d49124a1d32e8afddaa57b8',1,'Terminal::color(Color fg)'],['../classTerminal.html#ae22436e478a854e8b559fe73182bc329',1,'Terminal::color(Color fg, Color bg)'],['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20',1,'Terminal::Color()'],['../classBitmap.html#a88d386944a7017aa776a177b10d8b2ba',1,'Bitmap::Color()']]], + ['columns',['columns',['../classTerminal.html#aed25b5a884f89dcd2bb269a8e356e5d6',1,'Terminal']]], ['command',['command',['../classIRreceiver.html#a4b021592a2b089dc2f1e138a38506fda',1,'IRreceiver']]], ['computetag',['computeTag',['../classAuthenticatedCipher.html#a73fa4306053ed457e5c533b3127391c9',1,'AuthenticatedCipher::computeTag()'],['../classChaChaPoly.html#a92d850ad7027829e4072c43bd5028f95',1,'ChaChaPoly::computeTag()'],['../classEAXCommon.html#ab5a61bba48561d6e7e6b8bafc51d91e3',1,'EAXCommon::computeTag()'],['../classGCMCommon.html#a444634bd4469bb5d404ac882d1d8fdf4',1,'GCMCommon::computeTag()']]], ['copy',['copy',['../classBitmap.html#ab22fe1f3871934987a670b559f67c67c',1,'Bitmap']]], - ['count',['count',['../classCharlieplex.html#a5008aa4143d381ce34a3aed1a3843e4e',1,'Charlieplex']]], + ['count',['count',['../classCharlieplex.html#a5008aa4143d381ce34a3aed1a3843e4e',1,'Charlieplex::count()'],['../classShellArguments.html#ad1d8f103c645bc280e518f2522a62cc1',1,'ShellArguments::count()']]], ['cryptographic_20library',['Cryptographic Library',['../crypto.html',1,'']]], ['crypto_2drng_2dring_2edox',['crypto-rng-ring.dox',['../crypto-rng-ring_8dox.html',1,'']]], ['crypto_2drng_2edox',['crypto-rng.dox',['../crypto-rng_8dox.html',1,'']]], @@ -28,5 +30,11 @@ var searchData= ['ctr',['CTR',['../classCTR.html',1,'CTR< T >'],['../classCTR.html#a7025ab5d79f0f0763f751aeabc425ca9',1,'CTR::CTR()']]], ['ctrcommon',['CTRCommon',['../classCTRCommon.html',1,'CTRCommon'],['../classCTRCommon.html#abeb01342f17023e99776001d397c51ff',1,'CTRCommon::CTRCommon()']]], ['currentfield',['currentField',['../classForm.html#a85a219a73294cef1f89a2182b5c25bf8',1,'Form']]], - ['curve25519',['Curve25519',['../classCurve25519.html',1,'']]] + ['cursordown',['cursorDown',['../classTerminal.html#a4068f1fd6087ff865b169da0a3d61ec5',1,'Terminal']]], + ['cursorleft',['cursorLeft',['../classTerminal.html#a2b8434f44885beabb668b70565bfbebe',1,'Terminal']]], + ['cursormove',['cursorMove',['../classTerminal.html#a7f60537603bd91df3ff1371a895054ea',1,'Terminal']]], + ['cursorright',['cursorRight',['../classTerminal.html#adba29515f7a2f7e3a8038cd583bd28dc',1,'Terminal']]], + ['cursorup',['cursorUp',['../classTerminal.html#ae5259872812d674e1fda215ddd18ee70',1,'Terminal']]], + ['curve25519',['Curve25519',['../classCurve25519.html',1,'']]], + ['cyan',['Cyan',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20a12656e5c242667b489e639d399964077',1,'Terminal']]] ]; diff --git a/search/all_3.js b/search/all_3.js index a6141f1d..280caf38 100644 --- a/search/all_3.js +++ b/search/all_3.js @@ -1,14 +1,25 @@ var searchData= [ + ['darkblue',['DarkBlue',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20a857041b4a99e4a303f183a9881c32b8e',1,'Terminal']]], + ['darkcyan',['DarkCyan',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20a7770ad09b7bc5a420575bba06878efeb',1,'Terminal']]], + ['darkgray',['DarkGray',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20ab5595f67da54848741ee2b31a38bafec',1,'Terminal']]], + ['darkgreen',['DarkGreen',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20a3e3b823d801aa16880e837ee4b5a950a',1,'Terminal']]], + ['darkmagenta',['DarkMagenta',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20a3c0cb0568e93ebf1ea54bea5991b40a9',1,'Terminal']]], + ['darkred',['DarkRed',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20a7e02ffbae282462707f7fa9b521a5350',1,'Terminal']]], + ['darkyellow',['DarkYellow',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20aa79363e8a838f09ac55b4be7ddabe625',1,'Terminal']]], ['data',['data',['../classBitmap.html#a5eeed27c176eb6e4a2c39ea83444e27d',1,'Bitmap::data()'],['../classBitmap.html#a20fea2a946545aa3b5edd78245149e5f',1,'Bitmap::data() const ']]], ['day',['day',['../structRTCDate.html#a2d68ff3fb90240df522b41222362704c',1,'RTCDate::day()'],['../structRTCAlarm.html#a9cbc0c2bd8cee02917539af77e845fc4',1,'RTCAlarm::day()']]], - ['dayofweek',['dayOfWeek',['../classRTC.html#a525a9c1dad89613708f47a683eb316aa',1,'RTC::dayOfWeek(const RTCDate *date)'],['../classRTC.html#ab2ca0cbee608ec32d3d6e04d40298f11',1,'RTC::DayOfWeek()']]], + ['dayofweek',['DayOfWeek',['../classRTC.html#ab2ca0cbee608ec32d3d6e04d40298f11',1,'RTC::DayOfWeek()'],['../classRTC.html#a525a9c1dad89613708f47a683eb316aa',1,'RTC::dayOfWeek(const RTCDate *date)']]], ['dbl',['dbl',['../classGF128.html#aef22f6b7be5937f60ed2b7bcf831e52d',1,'GF128']]], ['dbleax',['dblEAX',['../classGF128.html#a56000a4cd7d436de42360e9d43eecde4',1,'GF128']]], + ['dblxts',['dblXTS',['../classGF128.html#a3732c9471771c36ac1b518e974d46b3e',1,'GF128']]], ['decrement',['DECREMENT',['../classRTC.html#a05b1bd1479afc80682abdd4f3e58dc6f',1,'RTC']]], ['decrypt',['decrypt',['../classCBCCommon.html#ab46a2625cae9a654c708e1f31a0e22b6',1,'CBCCommon::decrypt()'],['../classCFBCommon.html#aaaa3d61c5743e30e355207c193c0b0ef',1,'CFBCommon::decrypt()'],['../classChaCha.html#a1f54b2b51b59428010f81a6c4dc4e42c',1,'ChaCha::decrypt()'],['../classChaChaPoly.html#a42f556f202b1166486434ee15b6d95a0',1,'ChaChaPoly::decrypt()'],['../classCipher.html#ac6099d1a0d7f2ff67b0e4ccb4a17eb08',1,'Cipher::decrypt()'],['../classCTRCommon.html#a0943387cf1124258389702e0690740fe',1,'CTRCommon::decrypt()'],['../classEAXCommon.html#a63ce8ae45db137ec9d447216b84245c2',1,'EAXCommon::decrypt()'],['../classGCMCommon.html#a60912d3ab5766aa68dc9b3111ac2c0d7',1,'GCMCommon::decrypt()'],['../classOFBCommon.html#aeb3636d7175b150e2bf16367e51c2e36',1,'OFBCommon::decrypt()'],['../classXOF.html#a1c322679dfd211cd77ae05fb201a32e8',1,'XOF::decrypt()']]], ['decryptblock',['decryptBlock',['../classAESCommon.html#a95a806adf42f975765ff62907efdc639',1,'AESCommon::decryptBlock()'],['../classBlockCipher.html#ac3ba2450222aa1ea804ae4881ab6440c',1,'BlockCipher::decryptBlock()'],['../classSpeck.html#ad8c040df1c52d2559da8fdb3963d28b4',1,'Speck::decryptBlock()'],['../classSpeckSmall.html#acced022717603980ecca21b3f953bf51',1,'SpeckSmall::decryptBlock()'],['../classSpeckTiny.html#a19e54aef7d1b3ef92e8140dd9c308c3c',1,'SpeckTiny::decryptBlock()']]], + ['decryptsector',['decryptSector',['../classXTSCommon.html#a7dd21d5a994724e2af433872ecc3a90b',1,'XTSCommon']]], ['defaultfield',['defaultField',['../classForm.html#aba75b59f68b31dd77dbbac9ab5c3124b',1,'Form']]], + ['deletechar',['deleteChar',['../classTerminal.html#a7daffb0fe91d76678c5a9f22fe16e2c5',1,'Terminal']]], + ['deleteline',['deleteLine',['../classTerminal.html#ae2f95592f13a1a5fe8464176a2b10298',1,'Terminal']]], ['derivepublickey',['derivePublicKey',['../classEd25519.html#ab62bac52ed07f77f76f3ff0fccd71cb2',1,'Ed25519']]], ['destroy',['destroy',['../classRNGClass.html#a9901367d86f2303a59bbc12fe91cad00',1,'RNGClass']]], ['dh1',['dh1',['../classCurve25519.html#a2b6911583d17ea9a36bbbb40d58b3d89',1,'Curve25519']]], diff --git a/search/all_4.js b/search/all_4.js index 6970c09c..f01f87ee 100644 --- a/search/all_4.js +++ b/search/all_4.js @@ -12,9 +12,13 @@ var searchData= ['enabletimer2',['enableTimer2',['../classDMD.html#a5469775db7fafebca2cdbc6a6372fb97',1,'DMD']]], ['encrypt',['encrypt',['../classCBCCommon.html#a41d2f655a7df13cfcd009b2882e13147',1,'CBCCommon::encrypt()'],['../classCFBCommon.html#a57af3692389bed300d3cfdf351351c51',1,'CFBCommon::encrypt()'],['../classChaCha.html#acd4fff140b8871c233d9a31abf753ed8',1,'ChaCha::encrypt()'],['../classChaChaPoly.html#a7df4acd04f459ecf9d3b24317bde94a3',1,'ChaChaPoly::encrypt()'],['../classCipher.html#ad2832bd61039d61560e34ea3382ca562',1,'Cipher::encrypt()'],['../classCTRCommon.html#a201bda584d111552ce8ec09fac759963',1,'CTRCommon::encrypt()'],['../classEAXCommon.html#aad2c563f749535f539b8efbd74b09099',1,'EAXCommon::encrypt()'],['../classGCMCommon.html#a01ac69afe3d9fc4d72b2ea5dc242e55c',1,'GCMCommon::encrypt()'],['../classKeccakCore.html#acaf5c13452003e6e2e7793939f62a123',1,'KeccakCore::encrypt()'],['../classOFBCommon.html#a984d81a460e0799895b19dc48c3b5cf8',1,'OFBCommon::encrypt()'],['../classSHAKE.html#a6621c9d1ffbf8c34780b901275ceb81f',1,'SHAKE::encrypt()'],['../classXOF.html#aa6c027228f0459b07b61fb51c7b47c94',1,'XOF::encrypt()']]], ['encryptblock',['encryptBlock',['../classAESCommon.html#a2d95f6159abfcd92b5841f9018e44296',1,'AESCommon::encryptBlock()'],['../classBlockCipher.html#aed0788b25f6bb2f1bd47d5a5f0c5db33',1,'BlockCipher::encryptBlock()'],['../classSpeck.html#af6b8b91929e4b5b2023400688c9437f9',1,'Speck::encryptBlock()'],['../classSpeckTiny.html#a5dd2cf40dc48addb6a393e78a58a07c0',1,'SpeckTiny::encryptBlock()']]], + ['encryptsector',['encryptSector',['../classXTSCommon.html#a8bf1cbd4c1a5422a3cf285fe995fe0e7',1,'XTSCommon']]], + ['end',['end',['../classShell.html#a8a654aadd0b6a379309bb1007749e41d',1,'Shell::end()'],['../classTerminal.html#a9e4c08d43a1a1c039e385d63aca049c0',1,'Terminal::end()']]], ['endwrite',['endWrite',['../classI2CMaster.html#ab29f63551ddeb032a91505d1c0b8ac41',1,'I2CMaster::endWrite()'],['../classSoftI2C.html#aa12ae82813598b2e9ea70463c23c5bf3',1,'SoftI2C::endWrite()']]], ['enterfield',['enterField',['../classBoolField.html#ab3f1e610b52caed7e41016f6ae3d7d09',1,'BoolField::enterField()'],['../classField.html#aa032bbeacb405c56546cb56fbbee94f5',1,'Field::enterField()'],['../classIntField.html#a51d9127b660e8dd7f87718acd230202a',1,'IntField::enterField()'],['../classListField.html#a191b79b460e45cf48e04b04eface2888',1,'ListField::enterField()'],['../classTextField.html#aa78f1354f9240b64fabd6f996e312f32',1,'TextField::enterField()'],['../classTimeField.html#ae914d6b870283a334d2d669460f7646b',1,'TimeField::enterField()']]], ['eval',['eval',['../classCurve25519.html#a2e4b7dd83a019b32c76584c99bfda21a',1,'Curve25519']]], + ['execute',['execute',['../classLoginShell.html#af54c5c14adac7955cf5e4f9460bd9ca5',1,'LoginShell::execute()'],['../classShell.html#ab4a3f80dc5ff779ac99116a1f7e35cda',1,'Shell::execute()']]], + ['exit',['exit',['../classShell.html#ab9dab65bc0757ce3bb0ac926bbefcee3',1,'Shell']]], ['exitfield',['exitField',['../classField.html#ad6805c75ee1e62f8cd8bd550c4530c07',1,'Field::exitField()'],['../classTimeField.html#a5a6b7db2e3fda7745e0ff9c3d8d9a541',1,'TimeField::exitField()']]], ['extend',['extend',['../classSHAKE.html#ac3fe37617644e3498d40a86e846562fb',1,'SHAKE::extend()'],['../classXOF.html#a1bb311f04dae8465c1489a4f033703cd',1,'XOF::extend()']]], ['extract',['extract',['../classKeccakCore.html#aad83ece853c0cc15fcab947fdcba924f',1,'KeccakCore']]] diff --git a/search/all_5.js b/search/all_5.js index 4e5ff3cd..f295ffb2 100644 --- a/search/all_5.js +++ b/search/all_5.js @@ -7,7 +7,8 @@ var searchData= ['finalizehmac',['finalizeHMAC',['../classBLAKE2b.html#a29fafbba26e3c1d896b4d4c428f7d52a',1,'BLAKE2b::finalizeHMAC()'],['../classBLAKE2s.html#a3f910f3bd48cc4a9c5330c31bcda31fc',1,'BLAKE2s::finalizeHMAC()'],['../classHash.html#aab42fa5420cc0bda4321a3d3866cfd06',1,'Hash::finalizeHMAC()'],['../classSHA256.html#a28bc2510c5bdaf210a012f9f21a753cd',1,'SHA256::finalizeHMAC()'],['../classSHA3__256.html#a001215fa1b7d2c30717b4b5b1618d68c',1,'SHA3_256::finalizeHMAC()'],['../classSHA3__512.html#a25c9d2da26d01d46ba6b72c8a7905ea0',1,'SHA3_512::finalizeHMAC()'],['../classSHA512.html#a1fe9533f0d3dfdb426eb3dc4bdc31904',1,'SHA512::finalizeHMAC()']]], ['firedalarm',['firedAlarm',['../classDS3231RTC.html#a6a5b3717ff65528de566c021eb821b94',1,'DS3231RTC::firedAlarm()'],['../classDS3232RTC.html#a79649f100a4562b9c1ba7c69e85cbca3',1,'DS3232RTC::firedAlarm()']]], ['flags',['flags',['../structRTCAlarm.html#a0f2ef7363cb60a26642d5295b77ca19e',1,'RTCAlarm']]], - ['font',['Font',['../classBitmap.html#a456f7d6da03189c1e7148563a891b3cf',1,'Bitmap::Font()'],['../classBitmap.html#a7bf0a232b4bd12573cc570cc0edef47c',1,'Bitmap::font() const ']]], + ['flush',['flush',['../classTerminal.html#a908cdfa64167279ed565d43b45470c3d',1,'Terminal']]], + ['font',['font',['../classBitmap.html#a7bf0a232b4bd12573cc570cc0edef47c',1,'Bitmap::font() const '],['../classBitmap.html#a456f7d6da03189c1e7148563a891b3cf',1,'Bitmap::Font()']]], ['form',['Form',['../classForm.html',1,'Form'],['../classField.html#a27427319be1cc92db3128637d8884ee5',1,'Field::form()'],['../classForm.html#ad30836b22edde707a52d94090b716996',1,'Form::Form()']]], ['formathmackey',['formatHMACKey',['../classHash.html#ab6f40c9af91dc3d738d9fcce59af63cc',1,'Hash']]], ['fromrgb',['fromRGB',['../classDMD.html#a557412f734fc4596e1102bf71e110ea0',1,'DMD']]], diff --git a/search/all_6.js b/search/all_6.js index c744a66b..8e6d3a81 100644 --- a/search/all_6.js +++ b/search/all_6.js @@ -6,5 +6,6 @@ var searchData= ['generateprivatekey',['generatePrivateKey',['../classEd25519.html#ab8be5115ac5adc8a556dbac7d7e90d2e',1,'Ed25519']]], ['getbutton',['getButton',['../classLCD.html#ac1e80e2603bd1cf0276c36092c416292',1,'LCD']]], ['gf128',['GF128',['../classGF128.html',1,'']]], - ['ghash',['GHASH',['../classGHASH.html',1,'GHASH'],['../classGHASH.html#a3a1abd0f641bccd9b4aa1f40beb8dca3',1,'GHASH::GHASH()']]] + ['ghash',['GHASH',['../classGHASH.html',1,'GHASH'],['../classGHASH.html#a3a1abd0f641bccd9b4aa1f40beb8dca3',1,'GHASH::GHASH()']]], + ['green',['Green',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20a884f0fec8e7a5adac3047b890fcbf491',1,'Terminal']]] ]; diff --git a/search/all_7.js b/search/all_7.js index b427daec..1e65ecb8 100644 --- a/search/all_7.js +++ b/search/all_7.js @@ -5,6 +5,7 @@ var searchData= ['hashsize',['hashSize',['../classBLAKE2b.html#a7555de16f6918ab820170a7ed3098c89',1,'BLAKE2b::hashSize()'],['../classBLAKE2s.html#af9f50aac096f92ba27b1b2dd48df4c52',1,'BLAKE2s::hashSize()'],['../classHash.html#adcdd30de3e5ecaa2f798c0c5644d9ef8',1,'Hash::hashSize()'],['../classSHA256.html#a103d5bc5ced792464a82cb1d7986de94',1,'SHA256::hashSize()'],['../classSHA3__256.html#a2c5c08119d5ad853021f929a763784f3',1,'SHA3_256::hashSize()'],['../classSHA3__512.html#a9f13e4d2b99dd204e96b11142e9c1803',1,'SHA3_512::hashSize()'],['../classSHA512.html#a6ab3cc1e172eecf4796e4cac629e0a44',1,'SHA512::hashSize()']]], ['hasupdates',['hasUpdates',['../classDS1307RTC.html#a6fec8ff71f33cc1a129eb0bd009600b0',1,'DS1307RTC::hasUpdates()'],['../classDS3231RTC.html#a180bea03bd68df8f696e529cd1582095',1,'DS3231RTC::hasUpdates()'],['../classDS3232RTC.html#a619ffee1bc013c9ddf4ae415115798bc',1,'DS3232RTC::hasUpdates()'],['../classRTC.html#a3690761f29654a2c9e676fcbfa32dd30',1,'RTC::hasUpdates()']]], ['height',['height',['../classBitmap.html#adcd4e3dc7594421e647b0f52da9a41a3',1,'Bitmap']]], + ['help',['help',['../classShell.html#a58b0e9104d1f6c7ec7d1663c69cd03dd',1,'Shell']]], ['hide',['hide',['../classForm.html#a88b9146a3f68e837c5e831203096f9e9',1,'Form']]], ['holdtime',['holdTime',['../classCharlieplex.html#abb429659a7b1ee4c7306ea659050cb30',1,'Charlieplex']]], ['hour',['hour',['../structRTCTime.html#a98ba717092ef856dd2b773ba02fcb1a4',1,'RTCTime::hour()'],['../structRTCAlarm.html#a75bdc42acd3ab3ad495680c6b6a34692',1,'RTCAlarm::hour()']]], diff --git a/search/all_8.js b/search/all_8.js index fd3f5cf8..631289bc 100644 --- a/search/all_8.js +++ b/search/all_8.js @@ -4,6 +4,8 @@ var searchData= ['increment',['INCREMENT',['../classRTC.html#aacbe3ebbf893685950b05327c11d5c37',1,'RTC']]], ['initfirst',['initFirst',['../classOMAC.html#a0274138725ddf6240c030574bae3975c',1,'OMAC']]], ['initnext',['initNext',['../classOMAC.html#ad496c7d2de4f22fd4192345003e75ee5',1,'OMAC']]], + ['insertchar',['insertChar',['../classTerminal.html#af79ea5335f73762828087f5c813feafd',1,'Terminal']]], + ['insertline',['insertLine',['../classTerminal.html#a9109858612082ffd3d91a88713b7448a',1,'Terminal']]], ['intfield',['IntField',['../classIntField.html',1,'IntField'],['../classIntField.html#a9df274c4100ed37d2d78738f09fc53b6',1,'IntField::IntField(const String &label)'],['../classIntField.html#a10c9c958bcde276698f1f1f9bff949dd',1,'IntField::IntField(Form &form, const String &label, int minValue, int maxValue, int stepValue, int value)'],['../classIntField.html#a2b99fa19be6a0ed01ddc4939352b372e',1,'IntField::IntField(Form &form, const String &label, int minValue, int maxValue, int stepValue, int value, const String &suffix)']]], ['invert',['invert',['../classBitmap.html#a6d85556bcc9fac91d33f0f6f7a6430dd',1,'Bitmap']]], ['ir_2ddumpir_2edox',['ir-dumpir.dox',['../ir-dumpir_8dox.html',1,'']]], @@ -16,6 +18,7 @@ var searchData= ['isscreensaved',['isScreenSaved',['../classLCD.html#af5d5ca618a3161aa352027b58fe09d0e',1,'LCD']]], ['isvalid',['isValid',['../classBitmap.html#a3846a240722e847d3cf11f701da1ce7b',1,'Bitmap']]], ['isvisible',['isVisible',['../classForm.html#a3101f288e3e5aa8307c57f35861ad587',1,'Form']]], + ['iswidecharacter',['isWideCharacter',['../classTerminal.html#a25fdddd02378250799016cbb714c8a6b',1,'Terminal']]], ['items',['items',['../classListField.html#a4dbbdeebd386551eb8f245b42b45ccf0',1,'ListField']]], ['ivsize',['ivSize',['../classCBCCommon.html#a016277533730284a38bb6ad8cd6f91ce',1,'CBCCommon::ivSize()'],['../classCFBCommon.html#a55db1be69de87aafe5601d31be918ebb',1,'CFBCommon::ivSize()'],['../classChaCha.html#afaa3df343a7d07976bd7e03a0c1bf43c',1,'ChaCha::ivSize()'],['../classChaChaPoly.html#ac3ebfaaaffe9d607905681949e75140d',1,'ChaChaPoly::ivSize()'],['../classCipher.html#ab8b53ddc4ce431f03c2a1903d70ace9c',1,'Cipher::ivSize()'],['../classCTRCommon.html#a98c1717d11d8da8e1fa108607358774a',1,'CTRCommon::ivSize()'],['../classEAXCommon.html#abc6ccfb9338c94699458723f669513bf',1,'EAXCommon::ivSize()'],['../classGCMCommon.html#a01cff072505e861fd20f6cfee1e10fb2',1,'GCMCommon::ivSize()'],['../classOFBCommon.html#a67b4639aaece17a796fcba3a2ce8b43c',1,'OFBCommon::ivSize()']]] ]; diff --git a/search/all_9.js b/search/all_9.js index 5e018a60..bfea1d41 100644 --- a/search/all_9.js +++ b/search/all_9.js @@ -1,5 +1,5 @@ var searchData= [ ['keccakcore',['KeccakCore',['../classKeccakCore.html',1,'KeccakCore'],['../classKeccakCore.html#a850c8e85bdb6b347411239716535d9c9',1,'KeccakCore::KeccakCore()']]], - ['keysize',['keySize',['../classAES128.html#aa871832a156f0ea61b964e489670ae9d',1,'AES128::keySize()'],['../classAES192.html#ade28843e51e262b30eb55791c83fd791',1,'AES192::keySize()'],['../classAES256.html#af8ed6412bae6fc78274f60344899366a',1,'AES256::keySize()'],['../classBlockCipher.html#afde6004a859e015d877eab3c37042a0f',1,'BlockCipher::keySize()'],['../classCBCCommon.html#adb7daacfe2a4fca3d13b62b75372fe4e',1,'CBCCommon::keySize()'],['../classCFBCommon.html#a82899da983bc70bc8152ee67f424552e',1,'CFBCommon::keySize()'],['../classChaCha.html#af286083291fab2bd36dc7ad1f54d5cd7',1,'ChaCha::keySize()'],['../classChaChaPoly.html#a666760e68cb53f28ba0a8dc09039c0fb',1,'ChaChaPoly::keySize()'],['../classCipher.html#a4cea432ea0278c865441f17cbb88b1ab',1,'Cipher::keySize()'],['../classCTRCommon.html#a29ce8e13a302350397fc6790a686bea2',1,'CTRCommon::keySize()'],['../classEAXCommon.html#a027956913eecfa0bc760f20f3b62df29',1,'EAXCommon::keySize()'],['../classGCMCommon.html#a134ba35e740a18bee3c45502b4149eae',1,'GCMCommon::keySize()'],['../classOFBCommon.html#a76ea9f9ea9dd137778338813e534a8ce',1,'OFBCommon::keySize()'],['../classSpeck.html#a061e43c1363178cda088c3f46e07d87b',1,'Speck::keySize()'],['../classSpeckTiny.html#a5587909ba48776b01bbd40b339b1262e',1,'SpeckTiny::keySize()']]] + ['keysize',['keySize',['../classAES128.html#aa871832a156f0ea61b964e489670ae9d',1,'AES128::keySize()'],['../classAES192.html#ade28843e51e262b30eb55791c83fd791',1,'AES192::keySize()'],['../classAES256.html#af8ed6412bae6fc78274f60344899366a',1,'AES256::keySize()'],['../classBlockCipher.html#afde6004a859e015d877eab3c37042a0f',1,'BlockCipher::keySize()'],['../classCBCCommon.html#adb7daacfe2a4fca3d13b62b75372fe4e',1,'CBCCommon::keySize()'],['../classCFBCommon.html#a82899da983bc70bc8152ee67f424552e',1,'CFBCommon::keySize()'],['../classChaCha.html#af286083291fab2bd36dc7ad1f54d5cd7',1,'ChaCha::keySize()'],['../classChaChaPoly.html#a666760e68cb53f28ba0a8dc09039c0fb',1,'ChaChaPoly::keySize()'],['../classCipher.html#a4cea432ea0278c865441f17cbb88b1ab',1,'Cipher::keySize()'],['../classCTRCommon.html#a29ce8e13a302350397fc6790a686bea2',1,'CTRCommon::keySize()'],['../classEAXCommon.html#a027956913eecfa0bc760f20f3b62df29',1,'EAXCommon::keySize()'],['../classGCMCommon.html#a134ba35e740a18bee3c45502b4149eae',1,'GCMCommon::keySize()'],['../classOFBCommon.html#a76ea9f9ea9dd137778338813e534a8ce',1,'OFBCommon::keySize()'],['../classSpeck.html#a061e43c1363178cda088c3f46e07d87b',1,'Speck::keySize()'],['../classSpeckTiny.html#a5587909ba48776b01bbd40b339b1262e',1,'SpeckTiny::keySize()'],['../classXTSCommon.html#a2da350825a438355665683ab9eb57aa7',1,'XTSCommon::keySize()'],['../classXTSSingleKeyCommon.html#ac017d457a08001a3ea44a9900dee2b64',1,'XTSSingleKeyCommon::keySize()']]] ]; diff --git a/search/all_a.js b/search/all_a.js index 151e1cdf..bd27634d 100644 --- a/search/all_a.js +++ b/search/all_a.js @@ -5,7 +5,9 @@ var searchData= ['lcd_2dform_2edox',['lcd-form.dox',['../lcd-form_8dox.html',1,'']]], ['lcd_2dhelloworld_2edox',['lcd-helloworld.dox',['../lcd-helloworld_8dox.html',1,'']]], ['led',['led',['../classCharlieplex.html#a90fd09f24b62424b0b7b8bcdb0140b9d',1,'Charlieplex']]], + ['lightgray',['LightGray',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20a3b4388fbed1f6c20cbe706d49b968683',1,'Terminal']]], ['listfield',['ListField',['../classListField.html',1,'ListField'],['../classListField.html#a118501da7edb0b0bc6b493734975b4e9',1,'ListField::ListField(const String &label)'],['../classListField.html#aa303898a1f74b52c1c4982653de488b7',1,'ListField::ListField(Form &form, const String &label, ListItems items, int value=0)']]], - ['loop',['loop',['../classBlinkLED.html#aeeaf42b94c5392935f00f0f12a58c75e',1,'BlinkLED::loop()'],['../classCharlieplex.html#a8313edeacd8387c428b8299d52584d6a',1,'Charlieplex::loop()'],['../classChaseLEDs.html#a8745fa6b9f33b6c6274a563dd4dea786',1,'ChaseLEDs::loop()'],['../classDMD.html#a2c74a0845ef6080056b972d490648114',1,'DMD::loop()'],['../classRNGClass.html#a8cb91e39f0c4591de5bf98b1e2880b13',1,'RNGClass::loop()']]], + ['loginshell',['LoginShell',['../classLoginShell.html',1,'LoginShell'],['../classLoginShell.html#a8a6e6c259bc6415eb9cfbb13980e31d4',1,'LoginShell::LoginShell()']]], + ['loop',['loop',['../classBlinkLED.html#aeeaf42b94c5392935f00f0f12a58c75e',1,'BlinkLED::loop()'],['../classCharlieplex.html#a8313edeacd8387c428b8299d52584d6a',1,'Charlieplex::loop()'],['../classChaseLEDs.html#a8745fa6b9f33b6c6274a563dd4dea786',1,'ChaseLEDs::loop()'],['../classDMD.html#a2c74a0845ef6080056b972d490648114',1,'DMD::loop()'],['../classRNGClass.html#a8cb91e39f0c4591de5bf98b1e2880b13',1,'RNGClass::loop()'],['../classShell.html#afc45cae4ccfc76321a254bb617dce08c',1,'Shell::loop()']]], ['loopcount',['loopCount',['../classMelody.html#ab78253ae9abc8478b05f415f5d878a60',1,'Melody']]] ]; diff --git a/search/all_b.js b/search/all_b.js index 6a32d399..8db2567e 100644 --- a/search/all_b.js +++ b/search/all_b.js @@ -1,5 +1,7 @@ var searchData= [ + ['machinename',['machineName',['../classLoginShell.html#a540bd00b4af88a896068d72a58cbf23a',1,'LoginShell']]], + ['magenta',['Magenta',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20a438c102a577219f2b654bebce4d53ea0',1,'Terminal']]], ['mainpage_2edox',['mainpage.dox',['../mainpage_8dox.html',1,'']]], ['maxhours',['maxHours',['../classTimeField.html#aa73f5a62c330ac7d2f647dfe27d026b7',1,'TimeField']]], ['maxtransfersize',['maxTransferSize',['../classI2CMaster.html#a3cd0cea8169ac4e6dd6f39fd6cfb1926',1,'I2CMaster::maxTransferSize()'],['../classSoftI2C.html#aad488669f28f6a5a4ceaae3de61d38f4',1,'SoftI2C::maxTransferSize()']]], @@ -7,6 +9,7 @@ var searchData= ['melody',['Melody',['../classMelody.html',1,'Melody'],['../classMelody.html#a9edc4165a49368dd5d78eedf982c38b9',1,'Melody::Melody()']]], ['minute',['minute',['../structRTCTime.html#acf2161ca037080dc4b767e636ad8db84',1,'RTCTime::minute()'],['../structRTCAlarm.html#ad9a75ceb4b4b3474baa66dd5466e62fe',1,'RTCAlarm::minute()']]], ['minvalue',['minValue',['../classIntField.html#af3dab3f2b46d29136d7a93ce46b0b8fb',1,'IntField']]], + ['mode',['Mode',['../classTerminal.html#a6fd7d021468962e9604bee0522b3a364',1,'Terminal::Mode()'],['../classTerminal.html#acbf591c7371acba52bcd84ba4a0ce5c8',1,'Terminal::mode() const ']]], ['month',['month',['../structRTCDate.html#a6e6196059b36186041a5312400ea9202',1,'RTCDate']]], ['mul',['mul',['../classBigNumberUtil.html#a1c2c5484f2bf440ae292fd3dfd2d594f',1,'BigNumberUtil::mul()'],['../classGF128.html#a7d9a341a1715d37d25feba21627bc3ab',1,'GF128::mul()']]], ['mul_5fp',['mul_P',['../classBigNumberUtil.html#aacdee1806a239eb9e58753ef1ddb964a',1,'BigNumberUtil']]], diff --git a/search/all_c.js b/search/all_c.js index 82456dfc..ae199e43 100644 --- a/search/all_c.js +++ b/search/all_c.js @@ -5,5 +5,6 @@ var searchData= ['nodisplay',['noDisplay',['../classLCD.html#af3974da6d988ba2d21c25135ada12108',1,'LCD']]], ['nofill',['NoFill',['../classBitmap.html#aa89170263dc1f51f6366c1907119715e',1,'Bitmap']]], ['noisesource',['NoiseSource',['../classNoiseSource.html',1,'NoiseSource'],['../classNoiseSource.html#a601479b7d8cc215f97f2f8a18d3ef4c2',1,'NoiseSource::NoiseSource()']]], + ['normal',['normal',['../classTerminal.html#a928023c8125f226ab0851f8b4bb6302f',1,'Terminal']]], ['numrounds',['numRounds',['../classChaCha.html#a0a73d3623da377bc593876156768dd72',1,'ChaCha']]] ]; diff --git a/search/all_d.js b/search/all_d.js index ec10b51a..90ad7ff4 100644 --- a/search/all_d.js +++ b/search/all_d.js @@ -5,5 +5,6 @@ var searchData= ['offtime',['offTime',['../classBlinkLED.html#a74c640edf1a9f6e8bea1e139462908bc',1,'BlinkLED']]], ['omac',['OMAC',['../classOMAC.html',1,'OMAC'],['../classOMAC.html#ae84365423cef3f769464489848942559',1,'OMAC::OMAC()']]], ['ontime',['onTime',['../classBlinkLED.html#a8475f78f41d1a2d5d719bec8cbbb3ebb',1,'BlinkLED']]], + ['operator_5b_5d',['operator[]',['../classShellArguments.html#a1308c90889e9341f07986b4b256acc16',1,'ShellArguments']]], ['output',['output',['../classNoiseSource.html#a1af7449a5ae4a8acd34ac218c9eec6c1',1,'NoiseSource']]] ]; diff --git a/search/all_e.js b/search/all_e.js index 11cbe216..aacede2a 100644 --- a/search/all_e.js +++ b/search/all_e.js @@ -4,7 +4,9 @@ var searchData= ['packle',['packLE',['../classBigNumberUtil.html#a989cd5f389ac5adc798d8767383e2810',1,'BigNumberUtil']]], ['pad',['pad',['../classGHASH.html#a8c38ee9313605f1d8b12dca7cd43e4ad',1,'GHASH::pad()'],['../classKeccakCore.html#a97852ee4381ced17ee6d21704cf0b4d7',1,'KeccakCore::pad()'],['../classPoly1305.html#aaea2f40c1f22dcc2f8f690c793fb4388',1,'Poly1305::pad()']]], ['pagesize',['pageSize',['../classEEPROM24.html#af33b23e2614f3966bbaf2554890c032a',1,'EEPROM24']]], + ['passwordcheckfunction',['passwordCheckFunction',['../classLoginShell.html#ae1cfc0c58be3fcba8b11392d57fd5183',1,'LoginShell']]], ['pause',['pause',['../classBlinkLED.html#a2760a0223cd6a0598b961f681ffb5c0a',1,'BlinkLED']]], + ['peek',['peek',['../classTerminal.html#a49f6aa694fae8a9ff8a526350dd8f8fc',1,'Terminal']]], ['pixel',['pixel',['../classBitmap.html#a35aa38b377d509d6c4f061a0b988d203',1,'Bitmap']]], ['play',['play',['../classMelody.html#a9fd8e0d48833d8da3cd3b3b58408b0b5',1,'Melody']]], ['playonce',['playOnce',['../classMelody.html#aecc9185c9cb1246e8a55521b17d72932',1,'Melody']]], @@ -12,6 +14,8 @@ var searchData= ['power_20saving_20utility_20functions',['Power saving utility functions',['../group__power__save.html',1,'']]], ['prevfield',['prevField',['../classForm.html#acb080fe4f4631e9060e6efab8eaa0a90',1,'Form']]], ['previouspin',['previousPin',['../classChaseLEDs.html#a27c460fcb341c2dc2fcf9341616eb525',1,'ChaseLEDs']]], + ['printprompt',['printPrompt',['../classLoginShell.html#a6574705053f780acb8f0d8594c210524',1,'LoginShell::printPrompt()'],['../classShell.html#a720144957bf6462659017cc25c429beb',1,'Shell::printPrompt()']]], ['progmem',['ProgMem',['../classBitmap.html#a2fcc98fd7580932b218134126a29ce43',1,'Bitmap']]], + ['prompt',['prompt',['../classShell.html#af4a335f97bc888a25f7e54f2a025c11c',1,'Shell']]], ['pwmled',['pwmLed',['../classCharlieplex.html#a89312f2fd1d27c4e56346ed9cccfb9f6',1,'Charlieplex']]] ]; diff --git a/search/all_f.js b/search/all_f.js index 8264adb0..9eead5ae 100644 --- a/search/all_f.js +++ b/search/all_f.js @@ -3,22 +3,27 @@ var searchData= ['ring_20oscillator_20noise_20sources',['Ring Oscillator Noise Sources',['../crypto_rng_ring.html',1,'']]], ['running_20figure_20example',['Running figure example',['../dmd_running_figure.html',1,'']]], ['rand',['rand',['../classRNGClass.html#a418a833cf18198fd7e5d6dbd78c99c29',1,'RNGClass']]], - ['read',['read',['../classEEPROM24.html#a960971377d4decb122ff38d12603e586',1,'EEPROM24::read(unsigned long address)'],['../classEEPROM24.html#a63e23dc014415f947975359ac09f627e',1,'EEPROM24::read(unsigned long address, void *data, size_t length)'],['../classI2CMaster.html#a49eeebb57f6bc06de39973fe836369cd',1,'I2CMaster::read()'],['../classSoftI2C.html#a330dbba5b726fa161a6b01a9ca49e1bc',1,'SoftI2C::read()']]], + ['read',['read',['../classEEPROM24.html#a960971377d4decb122ff38d12603e586',1,'EEPROM24::read(unsigned long address)'],['../classEEPROM24.html#a63e23dc014415f947975359ac09f627e',1,'EEPROM24::read(unsigned long address, void *data, size_t length)'],['../classI2CMaster.html#a49eeebb57f6bc06de39973fe836369cd',1,'I2CMaster::read()'],['../classSoftI2C.html#a330dbba5b726fa161a6b01a9ca49e1bc',1,'SoftI2C::read()'],['../classTerminal.html#a14dfd6dc5c4a30acfb47ab24c22d1cd5',1,'Terminal::read()']]], ['readalarm',['readAlarm',['../classDS1307RTC.html#aab608eb1630520ee122306b721fdc47a',1,'DS1307RTC::readAlarm()'],['../classDS3231RTC.html#aab56929e759a49a90785729cceb72f2e',1,'DS3231RTC::readAlarm()'],['../classDS3232RTC.html#a09c7073c687dcbbc423baf48074c7873',1,'DS3232RTC::readAlarm()'],['../classRTC.html#ade282d7a60147c3f0269f1fcd59c8d66',1,'RTC::readAlarm()']]], ['readbyte',['readByte',['../classDS1307RTC.html#a7364609a201022688778ab116c3e4f4a',1,'DS1307RTC::readByte()'],['../classDS3232RTC.html#a5ba83a3ef7d65d45c2f3241afdd8fef7',1,'DS3232RTC::readByte()'],['../classRTC.html#a0f47b10b436e3f9d36e04ec907579431',1,'RTC::readByte()']]], ['readdate',['readDate',['../classDS1307RTC.html#a6fb56d1690bc30e7995961a5b5e5fdc4',1,'DS1307RTC::readDate()'],['../classDS3231RTC.html#a498a1a37b78993ab52780198c5b4a9df',1,'DS3231RTC::readDate()'],['../classDS3232RTC.html#ab03358e3b5996e38d766e2f9f6ab62ca',1,'DS3232RTC::readDate()'],['../classRTC.html#aa1e21bf42ebd4456919744ae0f4f631e',1,'RTC::readDate()']]], + ['readkey',['readKey',['../classTerminal.html#aa82621ea174422601cc7384c8185eb96',1,'Terminal']]], ['readonly',['readOnly',['../classTimeField.html#aa0795c873ba9941c8a1a3bf8c06668f1',1,'TimeField']]], ['readtemperature',['readTemperature',['../classDS3231RTC.html#ad1dcb7897fd14ae745720a19fbe71e37',1,'DS3231RTC::readTemperature()'],['../classDS3232RTC.html#a0faf40c25ab019a326a60f301c2bb41b',1,'DS3232RTC::readTemperature()'],['../classRTC.html#aeca3c8387332e8cabfd09c1806276e5a',1,'RTC::readTemperature()']]], ['readtime',['readTime',['../classDS1307RTC.html#acd9800d6df2244b8e4e790480a1d62a6',1,'DS1307RTC::readTime()'],['../classDS3231RTC.html#a3a2c448b152c401fb598c487ef0ed288',1,'DS3231RTC::readTime()'],['../classDS3232RTC.html#af89e68c68f1c4b7e94286f800b5b2747',1,'DS3232RTC::readTime()'],['../classRTC.html#aaf0a5c1f32f210a49718d148620b5bec',1,'RTC::readTime()']]], + ['red',['Red',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20af2687d41cae4cb8276778be71c1e1efb',1,'Terminal']]], ['reducequick',['reduceQuick',['../classBigNumberUtil.html#a5af5f50c91594183da4e079d76702d34',1,'BigNumberUtil']]], ['reducequick_5fp',['reduceQuick_P',['../classBigNumberUtil.html#a00c9cde0b626788a60552a6bc9ce058b',1,'BigNumberUtil']]], ['refresh',['refresh',['../classCharlieplex.html#a3c961bfff866e400dad371f0376f096b',1,'Charlieplex::refresh()'],['../classDMD.html#a9e4bf2a9d247312d35c1401ff61261c8',1,'DMD::refresh()']]], + ['registercommand',['registerCommand',['../classShell.html#a03dfba66a0125a8c02dd71b3f3b37870',1,'Shell']]], ['removefield',['removeField',['../classForm.html#a7abd717029f9b19ee7318470072cd697',1,'Form']]], ['reset',['reset',['../classBLAKE2b.html#a917beae2ca6e9831a35717a526089e8a',1,'BLAKE2b::reset()'],['../classBLAKE2b.html#a9afd8ec05ccfa08a922de74461e45387',1,'BLAKE2b::reset(uint8_t outputLength)'],['../classBLAKE2s.html#a778776d15316c182fdb2df5a89b3ca02',1,'BLAKE2s::reset()'],['../classBLAKE2s.html#a91ba6bc39e42002ac61114ced1d0af6d',1,'BLAKE2s::reset(uint8_t outputLength)'],['../classGHASH.html#a479a3e8c37e320bf99f54b95bf5f4c55',1,'GHASH::reset()'],['../classHash.html#a7b94309acaa5f52386785fb780e5be61',1,'Hash::reset()'],['../classKeccakCore.html#a5a322eb7e3b5c1eaad127c9c6e6a529b',1,'KeccakCore::reset()'],['../classPoly1305.html#a544839403d0a19300c239708bc1e6ed8',1,'Poly1305::reset()'],['../classSHA256.html#ad9d80d8fdccffb15497bd36285afce65',1,'SHA256::reset()'],['../classSHA3__256.html#a57b5f29347a733e04fe47d60621f3202',1,'SHA3_256::reset()'],['../classSHA3__512.html#a435746d5a8b012f7c65050337cc4a23f',1,'SHA3_512::reset()'],['../classSHA512.html#a0d009e8d9157c3f14323e68631c33e97',1,'SHA512::reset()'],['../classSHAKE.html#af199eea3c22bb193638827163c2b23db',1,'SHAKE::reset()'],['../classXOF.html#a6dd11ef356335d049da6932e2490bf03',1,'XOF::reset()']]], ['resethmac',['resetHMAC',['../classBLAKE2b.html#acb1ca4081c509d1c34b3aee465cd4494',1,'BLAKE2b::resetHMAC()'],['../classBLAKE2s.html#a7f9745854704b34a508497105ca5e2fd',1,'BLAKE2s::resetHMAC()'],['../classHash.html#adf50359c1f525af884721cc9034e7945',1,'Hash::resetHMAC()'],['../classSHA256.html#a2271683d6f1c7c103272f1dec55a6871',1,'SHA256::resetHMAC()'],['../classSHA3__256.html#a324fe4d268bbf23d7b492033fe3bc632',1,'SHA3_256::resetHMAC()'],['../classSHA3__512.html#aac7133f420f2be0288965c2e863f389b',1,'SHA3_512::resetHMAC()'],['../classSHA512.html#a2427ad8bf8b6958df91bd5806986167c',1,'SHA512::resetHMAC()']]], ['resume',['resume',['../classBlinkLED.html#a380241e4dfd20e8a558487227f2f4252',1,'BlinkLED']]], + ['reverse',['reverse',['../classTerminal.html#a4d770065054af95c2b8f98b561619ede',1,'Terminal']]], ['ringoscillatornoisesource',['RingOscillatorNoiseSource',['../classRingOscillatorNoiseSource.html',1,'']]], ['rngclass',['RNGClass',['../classRNGClass.html',1,'RNGClass'],['../classRNGClass.html#acbcf327242f51ae2d9209aeaa45e30e9',1,'RNGClass::RNGClass()']]], + ['rows',['rows',['../classTerminal.html#ac01cf545938eff14f8e249e072b82357',1,'Terminal']]], ['rtc',['RTC',['../classRTC.html',1,'RTC'],['../classRTC.html#ada31c5120d18d2dd2863b3d440308da2',1,'RTC::RTC()']]], ['rtcalarm',['RTCAlarm',['../structRTCAlarm.html',1,'']]], ['rtcdate',['RTCDate',['../structRTCDate.html',1,'']]], diff --git a/search/classes_10.js b/search/classes_10.js index a3c82386..41231c33 100644 --- a/search/classes_10.js +++ b/search/classes_10.js @@ -7,6 +7,8 @@ var searchData= ['shake',['SHAKE',['../classSHAKE.html',1,'']]], ['shake128',['SHAKE128',['../classSHAKE128.html',1,'']]], ['shake256',['SHAKE256',['../classSHAKE256.html',1,'']]], + ['shell',['Shell',['../classShell.html',1,'']]], + ['shellarguments',['ShellArguments',['../classShellArguments.html',1,'']]], ['softi2c',['SoftI2C',['../classSoftI2C.html',1,'']]], ['speck',['Speck',['../classSpeck.html',1,'']]], ['specksmall',['SpeckSmall',['../classSpeckSmall.html',1,'']]], diff --git a/search/classes_11.js b/search/classes_11.js index 57d4c0cb..ef30f373 100644 --- a/search/classes_11.js +++ b/search/classes_11.js @@ -1,5 +1,6 @@ var searchData= [ + ['terminal',['Terminal',['../classTerminal.html',1,'']]], ['textfield',['TextField',['../classTextField.html',1,'']]], ['timefield',['TimeField',['../classTimeField.html',1,'']]], ['transistornoisesource',['TransistorNoiseSource',['../classTransistorNoiseSource.html',1,'']]] diff --git a/search/classes_12.js b/search/classes_12.js index c960609f..3938498b 100644 --- a/search/classes_12.js +++ b/search/classes_12.js @@ -1,4 +1,8 @@ var searchData= [ - ['xof',['XOF',['../classXOF.html',1,'']]] + ['xof',['XOF',['../classXOF.html',1,'']]], + ['xts',['XTS',['../classXTS.html',1,'']]], + ['xtscommon',['XTSCommon',['../classXTSCommon.html',1,'']]], + ['xtssinglekey',['XTSSingleKey',['../classXTSSingleKey.html',1,'']]], + ['xtssinglekeycommon',['XTSSingleKeyCommon',['../classXTSSingleKeyCommon.html',1,'']]] ]; diff --git a/search/classes_a.js b/search/classes_a.js index cfd886c9..2d59189b 100644 --- a/search/classes_a.js +++ b/search/classes_a.js @@ -1,5 +1,6 @@ var searchData= [ ['lcd',['LCD',['../classLCD.html',1,'']]], - ['listfield',['ListField',['../classListField.html',1,'']]] + ['listfield',['ListField',['../classListField.html',1,'']]], + ['loginshell',['LoginShell',['../classLoginShell.html',1,'']]] ]; diff --git a/search/enums_0.js b/search/enums_0.js index d73fdcec..f738613c 100644 --- a/search/enums_0.js +++ b/search/enums_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['dayofweek',['DayOfWeek',['../classRTC.html#ab2ca0cbee608ec32d3d6e04d40298f11',1,'RTC']]] + ['color',['Color',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20',1,'Terminal']]] ]; diff --git a/search/enums_1.js b/search/enums_1.js index cd712f20..d73fdcec 100644 --- a/search/enums_1.js +++ b/search/enums_1.js @@ -1,5 +1,4 @@ var searchData= [ - ['screensavermode',['ScreenSaverMode',['../classLCD.html#a264bf94308c95d8598426e13dc8cdb28',1,'LCD']]], - ['sleepduration',['SleepDuration',['../group__power__save.html#gabdc6266a040b28c4d79028ddb0ceae36',1,'PowerSave.h']]] + ['dayofweek',['DayOfWeek',['../classRTC.html#ab2ca0cbee608ec32d3d6e04d40298f11',1,'RTC']]] ]; diff --git a/search/enums_2.html b/search/enums_2.html new file mode 100644 index 00000000..f96cf0a7 --- /dev/null +++ b/search/enums_2.html @@ -0,0 +1,26 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/enums_2.js b/search/enums_2.js new file mode 100644 index 00000000..124837cf --- /dev/null +++ b/search/enums_2.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['mode',['Mode',['../classTerminal.html#a6fd7d021468962e9604bee0522b3a364',1,'Terminal']]] +]; diff --git a/search/enums_3.html b/search/enums_3.html new file mode 100644 index 00000000..77df324a --- /dev/null +++ b/search/enums_3.html @@ -0,0 +1,26 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/enums_3.js b/search/enums_3.js new file mode 100644 index 00000000..cd712f20 --- /dev/null +++ b/search/enums_3.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['screensavermode',['ScreenSaverMode',['../classLCD.html#a264bf94308c95d8598426e13dc8cdb28',1,'LCD']]], + ['sleepduration',['SleepDuration',['../group__power__save.html#gabdc6266a040b28c4d79028ddb0ceae36',1,'PowerSave.h']]] +]; diff --git a/search/enumvalues_0.js b/search/enumvalues_0.js index 6512fd4b..2eda3d1f 100644 --- a/search/enumvalues_0.js +++ b/search/enumvalues_0.js @@ -1,5 +1,7 @@ var searchData= [ ['backlightoff',['BacklightOff',['../classLCD.html#a264bf94308c95d8598426e13dc8cdb28a9931c078cfd1023c69f1da431f9a656c',1,'LCD']]], - ['backlightonselect',['BacklightOnSelect',['../classLCD.html#a264bf94308c95d8598426e13dc8cdb28a781f3c5e42506bf4f86ba06d69b23d35',1,'LCD']]] + ['backlightonselect',['BacklightOnSelect',['../classLCD.html#a264bf94308c95d8598426e13dc8cdb28a781f3c5e42506bf4f86ba06d69b23d35',1,'LCD']]], + ['black',['Black',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20ae8891bcc826bd9843740727bd36481a4',1,'Terminal']]], + ['blue',['Blue',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20a70f0c34fa3b8055231e826454b9cf8be',1,'Terminal']]] ]; diff --git a/search/enumvalues_1.js b/search/enumvalues_1.js index ed2e276d..983d225b 100644 --- a/search/enumvalues_1.js +++ b/search/enumvalues_1.js @@ -1,4 +1,4 @@ var searchData= [ - ['displayoff',['DisplayOff',['../classLCD.html#a264bf94308c95d8598426e13dc8cdb28a3f1e62d5fcd314d6ff067d3e74c4bf5f',1,'LCD']]] + ['cyan',['Cyan',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20a12656e5c242667b489e639d399964077',1,'Terminal']]] ]; diff --git a/search/enumvalues_2.js b/search/enumvalues_2.js index 8a0737e6..7a17d015 100644 --- a/search/enumvalues_2.js +++ b/search/enumvalues_2.js @@ -1,13 +1,11 @@ var searchData= [ - ['sleep_5f120_5fms',['SLEEP_120_MS',['../group__power__save.html#ggabdc6266a040b28c4d79028ddb0ceae36a96fa577b54aa6f2341ea5ddd839aa8bc',1,'PowerSave.h']]], - ['sleep_5f15_5fms',['SLEEP_15_MS',['../group__power__save.html#ggabdc6266a040b28c4d79028ddb0ceae36a3d16487a7386c6348f1c1d886564e3c4',1,'PowerSave.h']]], - ['sleep_5f1_5fsec',['SLEEP_1_SEC',['../group__power__save.html#ggabdc6266a040b28c4d79028ddb0ceae36a92310daf29e5899770b80c1c4e850b9b',1,'PowerSave.h']]], - ['sleep_5f250_5fms',['SLEEP_250_MS',['../group__power__save.html#ggabdc6266a040b28c4d79028ddb0ceae36abcbf68cfdb688220da61ac98b1a2ec69',1,'PowerSave.h']]], - ['sleep_5f2_5fsec',['SLEEP_2_SEC',['../group__power__save.html#ggabdc6266a040b28c4d79028ddb0ceae36a04571aa0b801c28cd756513303b229cd',1,'PowerSave.h']]], - ['sleep_5f30_5fms',['SLEEP_30_MS',['../group__power__save.html#ggabdc6266a040b28c4d79028ddb0ceae36af31050c5ef733b3e231920143b041825',1,'PowerSave.h']]], - ['sleep_5f4_5fsec',['SLEEP_4_SEC',['../group__power__save.html#ggabdc6266a040b28c4d79028ddb0ceae36a4cba1036d7a69225110b68b372f10410',1,'PowerSave.h']]], - ['sleep_5f500_5fms',['SLEEP_500_MS',['../group__power__save.html#ggabdc6266a040b28c4d79028ddb0ceae36aa49e4d5f92a5f48070dde0babf75a9b0',1,'PowerSave.h']]], - ['sleep_5f60_5fms',['SLEEP_60_MS',['../group__power__save.html#ggabdc6266a040b28c4d79028ddb0ceae36a716f5a9f35e77a2d334ad71f05bd5fdc',1,'PowerSave.h']]], - ['sleep_5f8_5fsec',['SLEEP_8_SEC',['../group__power__save.html#ggabdc6266a040b28c4d79028ddb0ceae36a8c47dd1ef81c2f41da7525b5ee4bfc3a',1,'PowerSave.h']]] + ['darkblue',['DarkBlue',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20a857041b4a99e4a303f183a9881c32b8e',1,'Terminal']]], + ['darkcyan',['DarkCyan',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20a7770ad09b7bc5a420575bba06878efeb',1,'Terminal']]], + ['darkgray',['DarkGray',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20ab5595f67da54848741ee2b31a38bafec',1,'Terminal']]], + ['darkgreen',['DarkGreen',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20a3e3b823d801aa16880e837ee4b5a950a',1,'Terminal']]], + ['darkmagenta',['DarkMagenta',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20a3c0cb0568e93ebf1ea54bea5991b40a9',1,'Terminal']]], + ['darkred',['DarkRed',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20a7e02ffbae282462707f7fa9b521a5350',1,'Terminal']]], + ['darkyellow',['DarkYellow',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20aa79363e8a838f09ac55b4be7ddabe625',1,'Terminal']]], + ['displayoff',['DisplayOff',['../classLCD.html#a264bf94308c95d8598426e13dc8cdb28a3f1e62d5fcd314d6ff067d3e74c4bf5f',1,'LCD']]] ]; diff --git a/search/enumvalues_3.html b/search/enumvalues_3.html new file mode 100644 index 00000000..0a2d754e --- /dev/null +++ b/search/enumvalues_3.html @@ -0,0 +1,26 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/enumvalues_3.js b/search/enumvalues_3.js new file mode 100644 index 00000000..59b6cd77 --- /dev/null +++ b/search/enumvalues_3.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['green',['Green',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20a884f0fec8e7a5adac3047b890fcbf491',1,'Terminal']]] +]; diff --git a/search/enumvalues_4.html b/search/enumvalues_4.html new file mode 100644 index 00000000..1258082b --- /dev/null +++ b/search/enumvalues_4.html @@ -0,0 +1,26 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/enumvalues_4.js b/search/enumvalues_4.js new file mode 100644 index 00000000..5ad81304 --- /dev/null +++ b/search/enumvalues_4.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['lightgray',['LightGray',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20a3b4388fbed1f6c20cbe706d49b968683',1,'Terminal']]] +]; diff --git a/search/enumvalues_5.html b/search/enumvalues_5.html new file mode 100644 index 00000000..e42d4959 --- /dev/null +++ b/search/enumvalues_5.html @@ -0,0 +1,26 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/enumvalues_5.js b/search/enumvalues_5.js new file mode 100644 index 00000000..70701fcd --- /dev/null +++ b/search/enumvalues_5.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['magenta',['Magenta',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20a438c102a577219f2b654bebce4d53ea0',1,'Terminal']]] +]; diff --git a/search/enumvalues_6.html b/search/enumvalues_6.html new file mode 100644 index 00000000..96249ec4 --- /dev/null +++ b/search/enumvalues_6.html @@ -0,0 +1,26 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/enumvalues_6.js b/search/enumvalues_6.js new file mode 100644 index 00000000..811efdbb --- /dev/null +++ b/search/enumvalues_6.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['red',['Red',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20af2687d41cae4cb8276778be71c1e1efb',1,'Terminal']]] +]; diff --git a/search/enumvalues_7.html b/search/enumvalues_7.html new file mode 100644 index 00000000..d38c296a --- /dev/null +++ b/search/enumvalues_7.html @@ -0,0 +1,26 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/enumvalues_7.js b/search/enumvalues_7.js new file mode 100644 index 00000000..0a1fe862 --- /dev/null +++ b/search/enumvalues_7.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['serial',['Serial',['../classTerminal.html#a6fd7d021468962e9604bee0522b3a364a7efe0e37dae166c00d913190cd8f55f6',1,'Terminal']]], + ['sleep_5f120_5fms',['SLEEP_120_MS',['../group__power__save.html#ggabdc6266a040b28c4d79028ddb0ceae36a96fa577b54aa6f2341ea5ddd839aa8bc',1,'PowerSave.h']]], + ['sleep_5f15_5fms',['SLEEP_15_MS',['../group__power__save.html#ggabdc6266a040b28c4d79028ddb0ceae36a3d16487a7386c6348f1c1d886564e3c4',1,'PowerSave.h']]], + ['sleep_5f1_5fsec',['SLEEP_1_SEC',['../group__power__save.html#ggabdc6266a040b28c4d79028ddb0ceae36a92310daf29e5899770b80c1c4e850b9b',1,'PowerSave.h']]], + ['sleep_5f250_5fms',['SLEEP_250_MS',['../group__power__save.html#ggabdc6266a040b28c4d79028ddb0ceae36abcbf68cfdb688220da61ac98b1a2ec69',1,'PowerSave.h']]], + ['sleep_5f2_5fsec',['SLEEP_2_SEC',['../group__power__save.html#ggabdc6266a040b28c4d79028ddb0ceae36a04571aa0b801c28cd756513303b229cd',1,'PowerSave.h']]], + ['sleep_5f30_5fms',['SLEEP_30_MS',['../group__power__save.html#ggabdc6266a040b28c4d79028ddb0ceae36af31050c5ef733b3e231920143b041825',1,'PowerSave.h']]], + ['sleep_5f4_5fsec',['SLEEP_4_SEC',['../group__power__save.html#ggabdc6266a040b28c4d79028ddb0ceae36a4cba1036d7a69225110b68b372f10410',1,'PowerSave.h']]], + ['sleep_5f500_5fms',['SLEEP_500_MS',['../group__power__save.html#ggabdc6266a040b28c4d79028ddb0ceae36aa49e4d5f92a5f48070dde0babf75a9b0',1,'PowerSave.h']]], + ['sleep_5f60_5fms',['SLEEP_60_MS',['../group__power__save.html#ggabdc6266a040b28c4d79028ddb0ceae36a716f5a9f35e77a2d334ad71f05bd5fdc',1,'PowerSave.h']]], + ['sleep_5f8_5fsec',['SLEEP_8_SEC',['../group__power__save.html#ggabdc6266a040b28c4d79028ddb0ceae36a8c47dd1ef81c2f41da7525b5ee4bfc3a',1,'PowerSave.h']]] +]; diff --git a/search/enumvalues_8.html b/search/enumvalues_8.html new file mode 100644 index 00000000..9966e468 --- /dev/null +++ b/search/enumvalues_8.html @@ -0,0 +1,26 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/enumvalues_8.js b/search/enumvalues_8.js new file mode 100644 index 00000000..638c1dc8 --- /dev/null +++ b/search/enumvalues_8.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['telnet',['Telnet',['../classTerminal.html#a6fd7d021468962e9604bee0522b3a364a71eb4637496b7a884384c4250f3289a7',1,'Terminal']]] +]; diff --git a/search/enumvalues_9.html b/search/enumvalues_9.html new file mode 100644 index 00000000..926ed9f2 --- /dev/null +++ b/search/enumvalues_9.html @@ -0,0 +1,26 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/enumvalues_9.js b/search/enumvalues_9.js new file mode 100644 index 00000000..3308603c --- /dev/null +++ b/search/enumvalues_9.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['white',['White',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20ae8296a3587847d6e0dd41efcc65251e8',1,'Terminal']]] +]; diff --git a/search/enumvalues_a.html b/search/enumvalues_a.html new file mode 100644 index 00000000..fa2cf426 --- /dev/null +++ b/search/enumvalues_a.html @@ -0,0 +1,26 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/enumvalues_a.js b/search/enumvalues_a.js new file mode 100644 index 00000000..f9223ea6 --- /dev/null +++ b/search/enumvalues_a.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['yellow',['Yellow',['../classTerminal.html#a7a03a2e94316da7b2144dad5ba95ac20a5f04853bd0cf9cea91dae31cc5294f22',1,'Terminal']]] +]; diff --git a/search/files_7.html b/search/files_7.html new file mode 100644 index 00000000..c5355726 --- /dev/null +++ b/search/files_7.html @@ -0,0 +1,26 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/files_7.js b/search/files_7.js new file mode 100644 index 00000000..300a0095 --- /dev/null +++ b/search/files_7.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['shell_2dserial_2edox',['shell-serial.dox',['../shell-serial_8dox.html',1,'']]], + ['shell_2dtelnet_2edox',['shell-telnet.dox',['../shell-telnet_8dox.html',1,'']]] +]; diff --git a/search/functions_0.js b/search/functions_0.js index 79728e45..34125a32 100644 --- a/search/functions_0.js +++ b/search/functions_0.js @@ -16,5 +16,5 @@ var searchData= ['aes256',['AES256',['../classAES256.html#a3b2cbe56f03a87ec4260be4f8914fb02',1,'AES256']]], ['aescommon',['AESCommon',['../classAESCommon.html#acf224a392659429bac80dc68c7471b21',1,'AESCommon']]], ['authenticatedcipher',['AuthenticatedCipher',['../classAuthenticatedCipher.html#a0b1c0210ecb9d374d09b5b62a5140ba2',1,'AuthenticatedCipher']]], - ['available',['available',['../classEEPROM24.html#af8b70971d882b06de3fc6644a8ece3cf',1,'EEPROM24::available()'],['../classI2CMaster.html#a6458fa99cfd9e6270ae6dff993955833',1,'I2CMaster::available()'],['../classSoftI2C.html#a849af91018caedbb82e83f02c543305e',1,'SoftI2C::available()'],['../classRNGClass.html#a49e3231ba65a5e4b045bc90976e0a659',1,'RNGClass::available()']]] + ['available',['available',['../classEEPROM24.html#af8b70971d882b06de3fc6644a8ece3cf',1,'EEPROM24::available()'],['../classI2CMaster.html#a6458fa99cfd9e6270ae6dff993955833',1,'I2CMaster::available()'],['../classSoftI2C.html#a849af91018caedbb82e83f02c543305e',1,'SoftI2C::available()'],['../classRNGClass.html#a49e3231ba65a5e4b045bc90976e0a659',1,'RNGClass::available()'],['../classTerminal.html#a111698c496d601ef7fe0ce4de8a6de9a',1,'Terminal::available()']]] ]; diff --git a/search/functions_1.js b/search/functions_1.js index 931712b9..532e44df 100644 --- a/search/functions_1.js +++ b/search/functions_1.js @@ -1,14 +1,18 @@ var searchData= [ ['backlightpin',['backlightPin',['../classLCD.html#a171f59ba80e7775ebd3a399f56482a9c',1,'LCD']]], - ['begin',['begin',['../classRNGClass.html#a7f1aab3c324f8e8a424d683425e0fcf8',1,'RNGClass']]], + ['backspace',['backspace',['../classTerminal.html#ae4aec627f980fe0d26653401785d41bc',1,'Terminal']]], + ['begin',['begin',['../classRNGClass.html#a7f1aab3c324f8e8a424d683425e0fcf8',1,'RNGClass::begin()'],['../classShell.html#ad9acba905b6e0b661cce19d57c067990',1,'Shell::begin(Stream &stream, size_t maxHistory=0, Terminal::Mode mode=Serial)'],['../classShell.html#a3ff0cc86725388d4fe92520e5a18ad92',1,'Shell::begin(Client &client, size_t maxHistory=0, Terminal::Mode mode=Telnet)'],['../classTerminal.html#a6bf417195a7d2a2fab6b3518f25764a2',1,'Terminal::begin()']]], + ['beginsession',['beginSession',['../classLoginShell.html#a88a72760d4dc960c32e2fa4b691f9558',1,'LoginShell::beginSession()'],['../classShell.html#a3ad32b7cd3b48c78953ab9f7384d5a58',1,'Shell::beginSession()']]], ['bitmap',['Bitmap',['../classBitmap.html#a40526748415c8bbc58a8510d636c20f4',1,'Bitmap']]], ['bitsperpixel',['bitsPerPixel',['../classBitmap.html#ad18d3d5a1e77d541a95e93ad1f958411',1,'Bitmap']]], ['blake2b',['BLAKE2b',['../classBLAKE2b.html#a19b3b751809905a5587468f0d6c666ff',1,'BLAKE2b']]], ['blake2s',['BLAKE2s',['../classBLAKE2s.html#a7345f4e08c19d7a8c278282b46df21a2',1,'BLAKE2s']]], + ['blink',['blink',['../classTerminal.html#a8485c7073e94e77f9873b80e9cac3151',1,'Terminal']]], ['blinkled',['BlinkLED',['../classBlinkLED.html#afc33958651e7ce6dceb428ea654c2c2f',1,'BlinkLED']]], ['blockcipher',['blockCipher',['../classOMAC.html#abca82def496c6c6ab1ce5e5a958ec34a',1,'OMAC::blockCipher()'],['../classBlockCipher.html#adc3d7cba116cbea9ad017f4cded6fe2f',1,'BlockCipher::BlockCipher()']]], ['blocksize',['blockSize',['../classAESCommon.html#ae26afdcc6d18e8888974acae16df1413',1,'AESCommon::blockSize()'],['../classBLAKE2b.html#abec1b2320c3afaed12a29cf081b95fe2',1,'BLAKE2b::blockSize()'],['../classBLAKE2s.html#a9b5403734c20a0591d72a98912e4a305',1,'BLAKE2s::blockSize()'],['../classBlockCipher.html#a7059a310487c128db034b0ce0ad425a0',1,'BlockCipher::blockSize()'],['../classHash.html#a4e4297812e3483410556830fe5d47bdf',1,'Hash::blockSize()'],['../classKeccakCore.html#a3742ed39151811b5d1c263c75ee5b20a',1,'KeccakCore::blockSize()'],['../classSHA256.html#a71bbd9064f9d6191d0647f867953a858',1,'SHA256::blockSize()'],['../classSHA3__256.html#a88a50ab6c2d4ad105cda2dd504d96e7c',1,'SHA3_256::blockSize()'],['../classSHA3__512.html#a4493a717bad8fa5cd35fe3aa36f25ab3',1,'SHA3_512::blockSize()'],['../classSHA512.html#acf8b9bcb6be91ee70acc3700a2ffa1a1',1,'SHA512::blockSize()'],['../classSHAKE.html#a635b2475049541f73eaf577ed8e67cb7',1,'SHAKE::blockSize()'],['../classSpeck.html#a18a3b982a2cbc48befc8d498de08f188',1,'Speck::blockSize()'],['../classSpeckTiny.html#af8bbd1d1124fd1c4ef1aa167625376a9',1,'SpeckTiny::blockSize()'],['../classXOF.html#a469429647da7d43b3aa4aef44506d01c',1,'XOF::blockSize()']]], + ['bold',['bold',['../classTerminal.html#a2e8dd341fc1ce63aa120be6066a89bea',1,'Terminal']]], ['boolfield',['BoolField',['../classBoolField.html#a5d4382cdcdc989de0179d8f3f3a59998',1,'BoolField::BoolField(const String &label)'],['../classBoolField.html#a49aad212ed18f84baa105c24e86281d9',1,'BoolField::BoolField(Form &form, const String &label, const String &trueLabel, const String &falseLabel, bool value)']]], ['bytecount',['byteCount',['../classDS1307RTC.html#a93c25269a9b78ab3331354db26672248',1,'DS1307RTC::byteCount()'],['../classDS3232RTC.html#a1319fe936dcb7e9d6bdf200b77a94f8e',1,'DS3232RTC::byteCount()'],['../classRTC.html#acfdebfb449710e44e11f9a3675e14fd8',1,'RTC::byteCount()']]] ]; diff --git a/search/functions_10.js b/search/functions_10.js index 0884e1a7..86ec3e83 100644 --- a/search/functions_10.js +++ b/search/functions_10.js @@ -3,12 +3,16 @@ var searchData= ['save',['save',['../classRNGClass.html#a139584fb249148e2058d1d645d090db7',1,'RNGClass']]], ['screensavermode',['screenSaverMode',['../classLCD.html#a1917fa285f81f476b4c7cc20d15456b8',1,'LCD']]], ['scroll',['scroll',['../classBitmap.html#ae08eb6f9086f9923d8dc83a469ae4c4a',1,'Bitmap::scroll(int dx, int dy, Color fillColor=Black)'],['../classBitmap.html#af79ad4432297ff453fddc55625fec485',1,'Bitmap::scroll(int x, int y, int width, int height, int dx, int dy, Color fillColor=Black)']]], + ['scrolldown',['scrollDown',['../classTerminal.html#a661474bb4790aa82178b3ce9a85e5dea',1,'Terminal']]], + ['scrollup',['scrollUp',['../classTerminal.html#a30d8d69fd84cafc6c2c94ae6fc65b690',1,'Terminal']]], + ['sectorsize',['sectorSize',['../classXTSCommon.html#a7b96255bdf33eccca8f64eb1572cf8eb',1,'XTSCommon']]], ['setadvancetime',['setAdvanceTime',['../classChaseLEDs.html#af560270f72302c19fb7f95002089c9d7',1,'ChaseLEDs']]], ['setalarm',['setAlarm',['../classDS3231RTC.html#adb8b36354f00ea0a862cce6b1805d4c0',1,'DS3231RTC']]], ['setautosavetime',['setAutoSaveTime',['../classRNGClass.html#a5848e87a5f2f0302c88b0377f0e3366d',1,'RNGClass']]], ['setbacklightpin',['setBacklightPin',['../classLCD.html#a0b9b3b954290e7a3d94cdc829582b0a8',1,'LCD']]], ['setblinkrate',['setBlinkRate',['../classBlinkLED.html#a47f95624881063aa91c0066ed2c92258',1,'BlinkLED']]], ['setblockcipher',['setBlockCipher',['../classCBCCommon.html#a0b7631244b0c2c954cfdb50eb32f7db1',1,'CBCCommon::setBlockCipher()'],['../classCFBCommon.html#a9161530f456efacb64f5008fdb1a460c',1,'CFBCommon::setBlockCipher()'],['../classCTRCommon.html#a6c409c4ec1f99e0cb751196d891dc228',1,'CTRCommon::setBlockCipher()'],['../classEAXCommon.html#a7db44040163b33f818cfaf47185251ca',1,'EAXCommon::setBlockCipher()'],['../classGCMCommon.html#a7abd3044862f8634f3b176aafa779ba2',1,'GCMCommon::setBlockCipher()'],['../classOFBCommon.html#a0053e2566a88859effffacbf1e4ade04',1,'OFBCommon::setBlockCipher()'],['../classOMAC.html#a8ae86bc629cca60cebb995d092ba06b4',1,'OMAC::setBlockCipher()']]], + ['setblockciphers',['setBlockCiphers',['../classXTSCommon.html#aade8a16b70a49e8b04cb776522b29b7e',1,'XTSCommon']]], ['setcapacity',['setCapacity',['../classKeccakCore.html#ab3c1905f2002e49aca085d6f0b5546f7',1,'KeccakCore']]], ['setcounter',['setCounter',['../classChaCha.html#acab9109b7189ea88d9e5417a3a209eac',1,'ChaCha']]], ['setcountersize',['setCounterSize',['../classCTRCommon.html#ae2bc6b33a864412598b426320d853337',1,'CTRCommon']]], @@ -20,27 +24,34 @@ var searchData= ['setholdtime',['setHoldTime',['../classCharlieplex.html#a8502f4c752faba37023ced587695f6a4',1,'Charlieplex']]], ['setitems',['setItems',['../classListField.html#ae6709bce9355451b651893691456704e',1,'ListField']]], ['setiv',['setIV',['../classCBCCommon.html#ac7a586217835055b3a354bb932db160c',1,'CBCCommon::setIV()'],['../classCFBCommon.html#a597040eb7df40adbbef94b4c3975cd80',1,'CFBCommon::setIV()'],['../classChaCha.html#a734f3246b1e6810c63637b8cda26b259',1,'ChaCha::setIV()'],['../classChaChaPoly.html#a308056b17b3a4a496e9612ae19a2fd6f',1,'ChaChaPoly::setIV()'],['../classCipher.html#a3777acd8ff776a4e945bb7c9f2d044d9',1,'Cipher::setIV()'],['../classCTRCommon.html#aad289af3eb013cb3ffda6d7e8e8b3d04',1,'CTRCommon::setIV()'],['../classEAXCommon.html#a33a5da1f210f01c3622fbf27208f3d45',1,'EAXCommon::setIV()'],['../classGCMCommon.html#a2545135fe42c832e40e057b603824524',1,'GCMCommon::setIV()'],['../classOFBCommon.html#a4a35364cf30d78f1968cc00803686caf',1,'OFBCommon::setIV()']]], - ['setkey',['setKey',['../classAES128.html#a42d7548eb5084a2c3e2d5aa5f6f98ba4',1,'AES128::setKey()'],['../classAES192.html#a4ab37cff19fb05ceef1533ebc5e37cde',1,'AES192::setKey()'],['../classAES256.html#a6af085d2d6a730ff1e025f982121bbda',1,'AES256::setKey()'],['../classBlockCipher.html#a9a05307664469777592799c8f77397c4',1,'BlockCipher::setKey()'],['../classCBCCommon.html#add75ea4342a190e560cee26a8e9efc37',1,'CBCCommon::setKey()'],['../classCFBCommon.html#a45b9be25fb96f0e3ca5211b064e2baea',1,'CFBCommon::setKey()'],['../classChaCha.html#a6b2bdffbd3705e388bb458edb2f40c90',1,'ChaCha::setKey()'],['../classChaChaPoly.html#ae300892647dd92cbce711b834aa20c09',1,'ChaChaPoly::setKey()'],['../classCipher.html#a0dfe133bda81dfa680b668f5908ccbe5',1,'Cipher::setKey()'],['../classCTRCommon.html#a79da937dc2c444a174176beab33c055a',1,'CTRCommon::setKey()'],['../classEAXCommon.html#af5be5115c119610abb351028263d28de',1,'EAXCommon::setKey()'],['../classGCMCommon.html#a397c5dddde828c59eb63367385aec562',1,'GCMCommon::setKey()'],['../classOFBCommon.html#ac3a98e81d95ebc6c883baef5f4cfbefb',1,'OFBCommon::setKey()'],['../classSpeck.html#a7a07fc025bd25d832e9899333b5dabef',1,'Speck::setKey()'],['../classSpeckSmall.html#a3345df135f6530bad475d630ef6c1038',1,'SpeckSmall::setKey()'],['../classSpeckTiny.html#a05180c773b9d26d3b67ff569dc86fc2d',1,'SpeckTiny::setKey()']]], + ['setkey',['setKey',['../classAES128.html#a42d7548eb5084a2c3e2d5aa5f6f98ba4',1,'AES128::setKey()'],['../classAES192.html#a4ab37cff19fb05ceef1533ebc5e37cde',1,'AES192::setKey()'],['../classAES256.html#a6af085d2d6a730ff1e025f982121bbda',1,'AES256::setKey()'],['../classBlockCipher.html#a9a05307664469777592799c8f77397c4',1,'BlockCipher::setKey()'],['../classCBCCommon.html#add75ea4342a190e560cee26a8e9efc37',1,'CBCCommon::setKey()'],['../classCFBCommon.html#a45b9be25fb96f0e3ca5211b064e2baea',1,'CFBCommon::setKey()'],['../classChaCha.html#a6b2bdffbd3705e388bb458edb2f40c90',1,'ChaCha::setKey()'],['../classChaChaPoly.html#ae300892647dd92cbce711b834aa20c09',1,'ChaChaPoly::setKey()'],['../classCipher.html#a0dfe133bda81dfa680b668f5908ccbe5',1,'Cipher::setKey()'],['../classCTRCommon.html#a79da937dc2c444a174176beab33c055a',1,'CTRCommon::setKey()'],['../classEAXCommon.html#af5be5115c119610abb351028263d28de',1,'EAXCommon::setKey()'],['../classGCMCommon.html#a397c5dddde828c59eb63367385aec562',1,'GCMCommon::setKey()'],['../classOFBCommon.html#ac3a98e81d95ebc6c883baef5f4cfbefb',1,'OFBCommon::setKey()'],['../classSpeck.html#a7a07fc025bd25d832e9899333b5dabef',1,'Speck::setKey()'],['../classSpeckSmall.html#a3345df135f6530bad475d630ef6c1038',1,'SpeckSmall::setKey()'],['../classSpeckTiny.html#a05180c773b9d26d3b67ff569dc86fc2d',1,'SpeckTiny::setKey()'],['../classXTSCommon.html#a68b1ad6bad0b29aeb97dea80e4e03170',1,'XTSCommon::setKey()'],['../classXTSSingleKeyCommon.html#af150ada65640d0dcd1f5e09817f63769',1,'XTSSingleKeyCommon::setKey()']]], ['setlabel',['setLabel',['../classField.html#ad4ea63599d780c35b296cf2840b69f7b',1,'Field']]], ['setled',['setLed',['../classCharlieplex.html#ab103c9687a0890faf72e4da79e3de0a5',1,'Charlieplex']]], ['setloopcount',['setLoopCount',['../classMelody.html#a507097a2e8ff51a5e9157e3a320ae35b',1,'Melody']]], ['setloopduration',['setLoopDuration',['../classMelody.html#ae88ad06c2acb728f56dd213d5dad6006',1,'Melody']]], + ['setmachinename',['setMachineName',['../classLoginShell.html#a951838252942c56537dc877c48d3d63e',1,'LoginShell']]], ['setmaxhours',['setMaxHours',['../classTimeField.html#a7ac124eb9dde01c18c711c421736b5ed',1,'TimeField']]], ['setmaxvalue',['setMaxValue',['../classIntField.html#a36cbd7c24480cc3fcf0c7634d5e22bf1',1,'IntField']]], ['setmelody',['setMelody',['../classMelody.html#adb6ad8e8cfe8c9a137e470f4e85c7254',1,'Melody']]], ['setminvalue',['setMinValue',['../classIntField.html#afffe7be6721a043cec7a5a85c19e0ada',1,'IntField']]], ['setnumrounds',['setNumRounds',['../classChaCha.html#a1a0911e0be8f4590d7fb76884d98c541',1,'ChaCha']]], + ['setpasswordcheckfunction',['setPasswordCheckFunction',['../classLoginShell.html#a68d34a52a12f36113286418c17351bd4',1,'LoginShell']]], ['setpixel',['setPixel',['../classBitmap.html#aac994b75418e7d37ec66829437329114',1,'Bitmap']]], + ['setprompt',['setPrompt',['../classShell.html#a89d802eae5b716e80b2c4dfbce0a0a75',1,'Shell']]], ['setpwmled',['setPwmLed',['../classCharlieplex.html#a605a302e13005a1aa3d68d0e22bc474b',1,'Charlieplex']]], ['setreadonly',['setReadOnly',['../classTimeField.html#a3f002a0729e90e88d04025908be102fe',1,'TimeField']]], ['setscreensavermode',['setScreenSaverMode',['../classLCD.html#a56d1f68532c779c65fbbd071fb444801',1,'LCD']]], + ['setsectorsize',['setSectorSize',['../classXTSCommon.html#a7e0aa61628285073545a8f8e0b0d981d',1,'XTSCommon']]], ['setstate',['setState',['../classBlinkLED.html#af904a345e56d49948a042ac439d0b9d4',1,'BlinkLED']]], ['setstepvalue',['setStepValue',['../classIntField.html#a8fb6e207bd906062bb788e19dbe58bcb',1,'IntField']]], ['setsuffix',['setSuffix',['../classIntField.html#a9324bba994389f3a4563d9c18bd2f1cd',1,'IntField']]], ['setsystemfilter',['setSystemFilter',['../classIRreceiver.html#a920828f1411fa12d1856cd933066bd08',1,'IRreceiver']]], ['settextcolor',['setTextColor',['../classBitmap.html#a8e225a4f188269bb18265ae4b49de0a3',1,'Bitmap']]], ['settruelabel',['setTrueLabel',['../classBoolField.html#a803fc8c39765da4a44af01d925cd4194',1,'BoolField']]], + ['settweak',['setTweak',['../classXTSCommon.html#a744a533d46078de5ea9723139f74bcdb',1,'XTSCommon']]], + ['setuserid',['setUserid',['../classShell.html#a5db7316a4feb9829beea11dfe65462d2',1,'Shell']]], ['setvalue',['setValue',['../classBoolField.html#a080c575fd4a98e6afc4b9197fbab5577',1,'BoolField::setValue()'],['../classIntField.html#aed421e2c52946f2c7643534b4f6f13f7',1,'IntField::setValue()'],['../classListField.html#a266193631e897fb0b46e1270b1d0eb24',1,'ListField::setValue()'],['../classTextField.html#a24b98c5bb744331bf0a5facc8ea9c033',1,'TextField::setValue()'],['../classTimeField.html#a063b6df2bd6fa7970ee445ab4e5d1fc1',1,'TimeField::setValue()']]], + ['setwindowsize',['setWindowSize',['../classTerminal.html#af8957afd199718a809114dc5236f1a62',1,'Terminal']]], ['sha256',['SHA256',['../classSHA256.html#ab672831c542df07ff03ded25760feec2',1,'SHA256']]], ['sha3_5f256',['SHA3_256',['../classSHA3__256.html#ac091b276c6d80a981fa64a9e8c68ca87',1,'SHA3_256']]], ['sha3_5f512',['SHA3_512',['../classSHA3__512.html#a5f8bc4180e9d19597f499468098a82a4',1,'SHA3_512']]], @@ -48,6 +59,9 @@ var searchData= ['shake',['SHAKE',['../classSHAKE.html#a9346e4d53a9d7d686911ab772fc23387',1,'SHAKE']]], ['shake128',['SHAKE128',['../classSHAKE128.html#a7d9d435780157e944eea931b3a13df0d',1,'SHAKE128']]], ['shake256',['SHAKE256',['../classSHAKE256.html#abbc01bc6798da9479e2da105f6661c22',1,'SHAKE256']]], + ['shell',['Shell',['../classShell.html#ad613444a902075e8fd26b1f51c4d3b63',1,'Shell']]], + ['shellcommandfunc',['ShellCommandFunc',['../classShell.html#ad5bac6a4033cd81e24c1345650bca744',1,'Shell']]], + ['shellpasswordcheckfunc',['ShellPasswordCheckFunc',['../classLoginShell.html#adad54b04ec54d3577df4cd11944fff1d',1,'LoginShell']]], ['show',['show',['../classForm.html#a9e8d718ab55a8034c22c606ccfa90d65',1,'Form']]], ['sign',['sign',['../classEd25519.html#a36ecf67b4c5d2d39a31888f56af1f8a5',1,'Ed25519']]], ['size',['size',['../classEEPROM24.html#aa544875cef9bd05bf71d6c19be06cf7c',1,'EEPROM24']]], @@ -62,6 +76,7 @@ var searchData= ['stepvalue',['stepValue',['../classIntField.html#a49025ee3473fe066a6a6c546af98bfbd',1,'IntField']]], ['stir',['stir',['../classNoiseSource.html#a7ce647815524fe84f562aca5256e12f3',1,'NoiseSource::stir()'],['../classRNGClass.html#ad99535ea23ae2fec55bdebb8c24def02',1,'RNGClass::stir()'],['../classRingOscillatorNoiseSource.html#ad71698b5c92b41eef2f1322999b3eff9',1,'RingOscillatorNoiseSource::stir()'],['../classTransistorNoiseSource.html#add25c6a14b0506bc30ca781f2d923917',1,'TransistorNoiseSource::stir()']]], ['stop',['stop',['../classMelody.html#ac0c552233c41d85f2766d2e4df376b2b',1,'Melody']]], + ['stream',['stream',['../classTerminal.html#a18f46590476d5231e9480b5f69a68f63',1,'Terminal']]], ['stride',['stride',['../classBitmap.html#af30df263729385ea2330effe3c80a1bc',1,'Bitmap']]], ['sub',['sub',['../classBigNumberUtil.html#a6618e03bfcb3086961df508b40cc1e67',1,'BigNumberUtil']]], ['sub_5fp',['sub_P',['../classBigNumberUtil.html#af0fa1527647af42b65eda6b0aab982b3',1,'BigNumberUtil']]], diff --git a/search/functions_11.js b/search/functions_11.js index 12965b43..31df7616 100644 --- a/search/functions_11.js +++ b/search/functions_11.js @@ -1,11 +1,13 @@ var searchData= [ ['tagsize',['tagSize',['../classAuthenticatedCipher.html#a50c9de15b1ac1f3079dcfef626238759',1,'AuthenticatedCipher::tagSize()'],['../classChaChaPoly.html#a086c2aea395ab31136ebe7805591fd0a',1,'ChaChaPoly::tagSize()'],['../classEAXCommon.html#a8804341b21f752a5b8178a3bdb123fd9',1,'EAXCommon::tagSize()'],['../classGCMCommon.html#a935f343858e98ee331706daf43e34805',1,'GCMCommon::tagSize()']]], + ['terminal',['Terminal',['../classTerminal.html#aa448509b5aa1ece53c3d86385655be0e',1,'Terminal']]], ['textcolor',['textColor',['../classBitmap.html#ab6e5f5744fd2f18478aac428b751d848',1,'Bitmap']]], ['textfield',['TextField',['../classTextField.html#a5108741ab147b2cd5a399fefbe0a2382',1,'TextField::TextField(const String &label)'],['../classTextField.html#a24096a344d9161b2c99ce724ec2ee93c',1,'TextField::TextField(Form &form, const String &label, const String &value)']]], ['textheight',['textHeight',['../classBitmap.html#a628bb694fcfe6eab619a4f1e152d41c4',1,'Bitmap']]], ['textwidth',['textWidth',['../classBitmap.html#a0f7607b1c7867987f4500d490a666e8a',1,'Bitmap::textWidth(const char *str, int len=-1) const '],['../classBitmap.html#a8ca70aa0f8f722a228358bffe794e925',1,'Bitmap::textWidth(const String &str, int start=0, int len=-1) const ']]], ['timefield',['TimeField',['../classTimeField.html#a138e2425379705828a87eb2d8a836431',1,'TimeField::TimeField(const String &label)'],['../classTimeField.html#a87f222bc098367963ed21a7edc4624de',1,'TimeField::TimeField(Form &form, const String &label, int maxHours, bool readOnly)']]], ['transistornoisesource',['TransistorNoiseSource',['../classTransistorNoiseSource.html#a05bab61c301a5397021048c95ca3107d',1,'TransistorNoiseSource']]], - ['truelabel',['trueLabel',['../classBoolField.html#a9972030beec6e007b556c6eb652e163d',1,'BoolField']]] + ['truelabel',['trueLabel',['../classBoolField.html#a9972030beec6e007b556c6eb652e163d',1,'BoolField']]], + ['tweaksize',['tweakSize',['../classXTSCommon.html#afb3ebf14c7879bcbc92e3d6cc70b19a9',1,'XTSCommon']]] ]; diff --git a/search/functions_12.js b/search/functions_12.js index 431be5a3..f3d9a544 100644 --- a/search/functions_12.js +++ b/search/functions_12.js @@ -1,8 +1,13 @@ var searchData= [ + ['underline',['underline',['../classTerminal.html#a0e23c452353e7fdf0881d37521f3d105',1,'Terminal']]], + ['unicodekey',['unicodeKey',['../classTerminal.html#a33e5eb60d69e4ccf6e3c90f7428b4961',1,'Terminal']]], ['unpackbe',['unpackBE',['../classBigNumberUtil.html#a63f9d7884eb36227d39e1b95e219d865',1,'BigNumberUtil']]], ['unpackle',['unpackLE',['../classBigNumberUtil.html#a25041f898c417c8dd63f30536287ed79',1,'BigNumberUtil']]], ['unusedpin',['unusedPin',['../group__power__save.html#ga6dbe8e20a70e83cf5b068177675ec792',1,'PowerSave.h']]], ['update',['update',['../classBLAKE2b.html#a468e48c66ce1738e11c922d133135069',1,'BLAKE2b::update()'],['../classBLAKE2s.html#aa192da2fa044b03cccaf11e87fdf9911',1,'BLAKE2s::update()'],['../classGHASH.html#a235edb14c6ed1ec55ddda595816ef1c7',1,'GHASH::update()'],['../classHash.html#aec9761ee427d122e7450de8df200265c',1,'Hash::update()'],['../classKeccakCore.html#aaaa0355ccec0f469ac8eb577bdf853ed',1,'KeccakCore::update()'],['../classOMAC.html#a6692d7f37dd097fdfdd2b198aa0d9cde',1,'OMAC::update()'],['../classPoly1305.html#ae4e0b647ff93f501bd01459b1616557c',1,'Poly1305::update()'],['../classSHA256.html#a555bf8efb17afd4842d2e55a1f39f27b',1,'SHA256::update()'],['../classSHA3__256.html#a8356957ea403c5da326fc6899b91ea71',1,'SHA3_256::update()'],['../classSHA3__512.html#a0563e4c87150e6019671b4fe92fd63a4',1,'SHA3_512::update()'],['../classSHA512.html#a7d37a20d7ab431ab15d094f768b6a695',1,'SHA512::update()'],['../classSHAKE.html#aa6f3a32427433aabe20adccb6994a4aa',1,'SHAKE::update()'],['../classXOF.html#a35fe86f903d9102e64b1c920c69c394e',1,'XOF::update()']]], - ['updatecursor',['updateCursor',['../classField.html#afc612378167be0e7f8a6f8395b3537bd',1,'Field']]] + ['updatecursor',['updateCursor',['../classField.html#afc612378167be0e7f8a6f8395b3537bd',1,'Field']]], + ['userid',['userid',['../classShell.html#a6ae6e1af0a7f6116e6a9a1e658fb9a84',1,'Shell']]], + ['utf8format',['utf8Format',['../classTerminal.html#ae6478319776ecb726613b38429d7cdec',1,'Terminal']]], + ['utf8length',['utf8Length',['../classTerminal.html#a0ed780bd8568f752c5d3dfe68a111c52',1,'Terminal']]] ]; diff --git a/search/functions_14.js b/search/functions_14.js index d62137ea..cb6b3bd3 100644 --- a/search/functions_14.js +++ b/search/functions_14.js @@ -1,9 +1,11 @@ var searchData= [ ['width',['width',['../classBitmap.html#a76c3b49e535761f07c553e7336daf523',1,'Bitmap']]], - ['write',['write',['../classEEPROM24.html#a9e017772e3459ee4ab987e27d78937f8',1,'EEPROM24::write(unsigned long address, uint8_t value)'],['../classEEPROM24.html#a3d918ed34da7ca6d21a776c0614eebf3',1,'EEPROM24::write(unsigned long address, const void *data, size_t length)'],['../classI2CMaster.html#a0bf6b84cb1e2b3a37a4a0260d0b6f960',1,'I2CMaster::write()'],['../classSoftI2C.html#ab46f0b6363c9cfe6fb3ab907956d5d73',1,'SoftI2C::write()']]], + ['write',['write',['../classEEPROM24.html#a9e017772e3459ee4ab987e27d78937f8',1,'EEPROM24::write(unsigned long address, uint8_t value)'],['../classEEPROM24.html#a3d918ed34da7ca6d21a776c0614eebf3',1,'EEPROM24::write(unsigned long address, const void *data, size_t length)'],['../classI2CMaster.html#a0bf6b84cb1e2b3a37a4a0260d0b6f960',1,'I2CMaster::write()'],['../classSoftI2C.html#ab46f0b6363c9cfe6fb3ab907956d5d73',1,'SoftI2C::write()'],['../classTerminal.html#ae723f16d4f97954fb45550fa05d600bb',1,'Terminal::write(uint8_t c)'],['../classTerminal.html#a134b9131e18b35af18c53eabec49186d',1,'Terminal::write(const uint8_t *buffer, size_t size)']]], ['writealarm',['writeAlarm',['../classDS1307RTC.html#a7354aed91d7c94d0d7b2144b1bf32c75',1,'DS1307RTC::writeAlarm()'],['../classDS3231RTC.html#a1ed8945018024816600f709c6eb0c749',1,'DS3231RTC::writeAlarm()'],['../classDS3232RTC.html#a8b0a65e0ac479aec8fad6ca3147dbe75',1,'DS3232RTC::writeAlarm()'],['../classRTC.html#a0e96c91efd9e7a6340effdae3eadf17e',1,'RTC::writeAlarm()']]], ['writebyte',['writeByte',['../classDS1307RTC.html#a6ef435fd4aa4adf8eefdf8b1741f5ba6',1,'DS1307RTC::writeByte()'],['../classDS3232RTC.html#a9acebf12c5cecdd6d84e0ff9ed41765a',1,'DS3232RTC::writeByte()'],['../classRTC.html#a1cab6397ec04b1e2b3feea5b3cd1f749',1,'RTC::writeByte()']]], ['writedate',['writeDate',['../classDS1307RTC.html#a4f7346be33612cf9ecd96080eb046230',1,'DS1307RTC::writeDate()'],['../classDS3231RTC.html#a450a143514a5aa228f8ef7a23d83d036',1,'DS3231RTC::writeDate()'],['../classDS3232RTC.html#a31c004a90c724979d8267c31f2dbf5ed',1,'DS3232RTC::writeDate()'],['../classRTC.html#ae667600d05c8e7b06a93574dd068a4d7',1,'RTC::writeDate()']]], - ['writetime',['writeTime',['../classDS1307RTC.html#a0a5d0d86a0345420ebb289ea724b19e8',1,'DS1307RTC::writeTime()'],['../classDS3231RTC.html#ae9bee8f68f9e124562230175ca9d15c3',1,'DS3231RTC::writeTime()'],['../classDS3232RTC.html#ab0ca13a8b80da856b37fc53b84e27c78',1,'DS3232RTC::writeTime()'],['../classRTC.html#a102e2ec15bf0273d8f7e9ce4b6dcc96e',1,'RTC::writeTime()']]] + ['writeprogmem',['writeProgMem',['../classTerminal.html#ae0b908585ec355e0f299579a015c1170',1,'Terminal']]], + ['writetime',['writeTime',['../classDS1307RTC.html#a0a5d0d86a0345420ebb289ea724b19e8',1,'DS1307RTC::writeTime()'],['../classDS3231RTC.html#ae9bee8f68f9e124562230175ca9d15c3',1,'DS3231RTC::writeTime()'],['../classDS3232RTC.html#ab0ca13a8b80da856b37fc53b84e27c78',1,'DS3232RTC::writeTime()'],['../classRTC.html#a102e2ec15bf0273d8f7e9ce4b6dcc96e',1,'RTC::writeTime()']]], + ['writeunicode',['writeUnicode',['../classTerminal.html#a25308d6b2a3d18820d8a0e641c7be937',1,'Terminal']]] ]; diff --git a/search/functions_15.js b/search/functions_15.js index 193874c8..b0444d30 100644 --- a/search/functions_15.js +++ b/search/functions_15.js @@ -1,4 +1,8 @@ var searchData= [ - ['xof',['XOF',['../classXOF.html#a855d1bb01d46b329c57b59783cd1e075',1,'XOF']]] + ['xof',['XOF',['../classXOF.html#a855d1bb01d46b329c57b59783cd1e075',1,'XOF']]], + ['xts',['XTS',['../classXTS.html#ae37ec61a7d4275071d52dfc61e467736',1,'XTS']]], + ['xtscommon',['XTSCommon',['../classXTSCommon.html#ae3ce2a2a72eb839f8ccde4a166ad40e6',1,'XTSCommon']]], + ['xtssinglekey',['XTSSingleKey',['../classXTSSingleKey.html#a074fb1ebccf252acfba01c3fe8edda43',1,'XTSSingleKey']]], + ['xtssinglekeycommon',['XTSSingleKeyCommon',['../classXTSSingleKeyCommon.html#a75617e97fb9551d35173b3f345e77a4d',1,'XTSSingleKeyCommon']]] ]; diff --git a/search/functions_16.js b/search/functions_16.js index 45b10b26..daef7e68 100644 --- a/search/functions_16.js +++ b/search/functions_16.js @@ -18,6 +18,7 @@ var searchData= ['_7eghash',['~GHASH',['../classGHASH.html#ae7f63a587adf1aa1ffcdc0a6e20584fd',1,'GHASH']]], ['_7ehash',['~Hash',['../classHash.html#a4e4b4797dda8678aaed058bae155813e',1,'Hash']]], ['_7ekeccakcore',['~KeccakCore',['../classKeccakCore.html#a4579e3a9b24f1d615fa8d660c23e77a4',1,'KeccakCore']]], + ['_7eloginshell',['~LoginShell',['../classLoginShell.html#aaae466b141c9ea50870b66509402a2f9',1,'LoginShell']]], ['_7enoisesource',['~NoiseSource',['../classNoiseSource.html#a4eca1e894a5d719fb9bf4df34a791cdb',1,'NoiseSource']]], ['_7eofbcommon',['~OFBCommon',['../classOFBCommon.html#aae7435157e51bf977d3481e94e17ae01',1,'OFBCommon']]], ['_7eomac',['~OMAC',['../classOMAC.html#a6bb2222c997608ec68b25831da965e8f',1,'OMAC']]], @@ -30,5 +31,11 @@ var searchData= ['_7eshake',['~SHAKE',['../classSHAKE.html#a1729b9a96b71185166d68a2d98fb84e9',1,'SHAKE']]], ['_7eshake128',['~SHAKE128',['../classSHAKE128.html#a1d08d5987802636fa24c6245ebbe4288',1,'SHAKE128']]], ['_7eshake256',['~SHAKE256',['../classSHAKE256.html#a629a9817a524c1a7d273c7fca6d911c4',1,'SHAKE256']]], - ['_7exof',['~XOF',['../classXOF.html#a5164ebb6aef3e5492f81ce5d685a00af',1,'XOF']]] + ['_7eshell',['~Shell',['../classShell.html#a95f78f499b3dfd9c83f4099cf90ef3df',1,'Shell']]], + ['_7eterminal',['~Terminal',['../classTerminal.html#add5a7d4dd45b68af9a0afb1cc845af2f',1,'Terminal']]], + ['_7exof',['~XOF',['../classXOF.html#a5164ebb6aef3e5492f81ce5d685a00af',1,'XOF']]], + ['_7exts',['~XTS',['../classXTS.html#a97410cd5abc63921870c9610b03421b8',1,'XTS']]], + ['_7extscommon',['~XTSCommon',['../classXTSCommon.html#ac5398f0bd2201e7d3fa335899fb3c6f3',1,'XTSCommon']]], + ['_7extssinglekey',['~XTSSingleKey',['../classXTSSingleKey.html#ae19d16e738574582deecc48d73aad086',1,'XTSSingleKey']]], + ['_7extssinglekeycommon',['~XTSSingleKeyCommon',['../classXTSSingleKeyCommon.html#a0ab819b391d6e783d2dde4006440444c',1,'XTSSingleKeyCommon']]] ]; diff --git a/search/functions_2.js b/search/functions_2.js index a3492ddf..1b8d5303 100644 --- a/search/functions_2.js +++ b/search/functions_2.js @@ -13,12 +13,20 @@ var searchData= ['chaseleds',['ChaseLEDs',['../classChaseLEDs.html#ab6bb3da371d3730a6552e93a9b2eab78',1,'ChaseLEDs']]], ['checktag',['checkTag',['../classAuthenticatedCipher.html#a4bb33d194e2c7d30c4e5a713e59786ff',1,'AuthenticatedCipher::checkTag()'],['../classChaChaPoly.html#aeffb3e0df0b4da03f72f30251243d953',1,'ChaChaPoly::checkTag()'],['../classEAXCommon.html#a72c403f52cefab57566bc5f634c1b963',1,'EAXCommon::checkTag()'],['../classGCMCommon.html#a70229be2fe2274c4109fe7511481075a',1,'GCMCommon::checkTag()']]], ['cipher',['Cipher',['../classCipher.html#a6a61077eca3ccd5900f92ceac58fb09c',1,'Cipher']]], - ['clear',['clear',['../classBitmap.html#a839dc8fab05a5ebf7a6b2e61436b2fa1',1,'Bitmap::clear()'],['../classAESCommon.html#a83e43f7d07e31d90fd7b768a93ecfce6',1,'AESCommon::clear()'],['../classBLAKE2b.html#a21623759bd381285ebf7e75a00c9c8a9',1,'BLAKE2b::clear()'],['../classBLAKE2s.html#a0848885f52df51dc53949d32a206e72d',1,'BLAKE2s::clear()'],['../classBlockCipher.html#a6f27d46e9dfa7761d014d828ad5f955b',1,'BlockCipher::clear()'],['../classCBCCommon.html#a7befadfe7384e0e857a96a59bf3845e9',1,'CBCCommon::clear()'],['../classCFBCommon.html#a847d320b0fe7f329385f26511b42c40d',1,'CFBCommon::clear()'],['../classChaCha.html#af533905f679066c41f4d6cd76bddb4cb',1,'ChaCha::clear()'],['../classChaChaPoly.html#a2d7fc3fd05a0b6c7c9c21fff6e939c9a',1,'ChaChaPoly::clear()'],['../classCipher.html#a4b7c3965646441a70d9ab934a7c92ab1',1,'Cipher::clear()'],['../classCTRCommon.html#ac0d6381c02fe2a8a017ad66d006a6ef2',1,'CTRCommon::clear()'],['../classEAXCommon.html#afa88b0f589e09103e9c69ace081db0af',1,'EAXCommon::clear()'],['../classGCMCommon.html#a06868ebd67a571aa68d88d5d072cece9',1,'GCMCommon::clear()'],['../classGHASH.html#a4b1ee789debf56f7f24807960ef0556e',1,'GHASH::clear()'],['../classHash.html#a4a959469433cd9348ab7f3ac6228bb34',1,'Hash::clear()'],['../classKeccakCore.html#aeff1df56e4a3103c99c1fe4307e60c66',1,'KeccakCore::clear()'],['../classOFBCommon.html#a55bf2396beb91c457bfc4c20ef5c8123',1,'OFBCommon::clear()'],['../classOMAC.html#a072715dbda39dc9c360cfcaab31d6aa7',1,'OMAC::clear()'],['../classPoly1305.html#ae3f3392b9a2bd0f3472e7e50dd7e21dd',1,'Poly1305::clear()'],['../classSHA256.html#add0d1649d533b27005ccd8508398c689',1,'SHA256::clear()'],['../classSHA3__256.html#a531467f995ef6fc901ad8c2b5776a8d1',1,'SHA3_256::clear()'],['../classSHA3__512.html#acfbc5e9b4d394f011d5132a2b156d260',1,'SHA3_512::clear()'],['../classSHA512.html#a0a9104dce5f099aeba216e5fbcb1ee1a',1,'SHA512::clear()'],['../classSHAKE.html#ab86f52425c1d5b0e5c924b4f96121fe0',1,'SHAKE::clear()'],['../classSpeck.html#aa3866273282addabb9d3703c41fdc95f',1,'Speck::clear()'],['../classSpeckSmall.html#aa93d9f0b5153425dc04e8fb8faff7513',1,'SpeckSmall::clear()'],['../classSpeckTiny.html#a303ecc2639459e47c6eeb21991d52ccf',1,'SpeckTiny::clear()'],['../classXOF.html#ac34cb22f251642b58b3dd78a6480aff3',1,'XOF::clear()']]], + ['clear',['clear',['../classBitmap.html#a839dc8fab05a5ebf7a6b2e61436b2fa1',1,'Bitmap::clear()'],['../classAESCommon.html#a83e43f7d07e31d90fd7b768a93ecfce6',1,'AESCommon::clear()'],['../classBLAKE2b.html#a21623759bd381285ebf7e75a00c9c8a9',1,'BLAKE2b::clear()'],['../classBLAKE2s.html#a0848885f52df51dc53949d32a206e72d',1,'BLAKE2s::clear()'],['../classBlockCipher.html#a6f27d46e9dfa7761d014d828ad5f955b',1,'BlockCipher::clear()'],['../classCBCCommon.html#a7befadfe7384e0e857a96a59bf3845e9',1,'CBCCommon::clear()'],['../classCFBCommon.html#a847d320b0fe7f329385f26511b42c40d',1,'CFBCommon::clear()'],['../classChaCha.html#af533905f679066c41f4d6cd76bddb4cb',1,'ChaCha::clear()'],['../classChaChaPoly.html#a2d7fc3fd05a0b6c7c9c21fff6e939c9a',1,'ChaChaPoly::clear()'],['../classCipher.html#a4b7c3965646441a70d9ab934a7c92ab1',1,'Cipher::clear()'],['../classCTRCommon.html#ac0d6381c02fe2a8a017ad66d006a6ef2',1,'CTRCommon::clear()'],['../classEAXCommon.html#afa88b0f589e09103e9c69ace081db0af',1,'EAXCommon::clear()'],['../classGCMCommon.html#a06868ebd67a571aa68d88d5d072cece9',1,'GCMCommon::clear()'],['../classGHASH.html#a4b1ee789debf56f7f24807960ef0556e',1,'GHASH::clear()'],['../classHash.html#a4a959469433cd9348ab7f3ac6228bb34',1,'Hash::clear()'],['../classKeccakCore.html#aeff1df56e4a3103c99c1fe4307e60c66',1,'KeccakCore::clear()'],['../classOFBCommon.html#a55bf2396beb91c457bfc4c20ef5c8123',1,'OFBCommon::clear()'],['../classOMAC.html#a072715dbda39dc9c360cfcaab31d6aa7',1,'OMAC::clear()'],['../classPoly1305.html#ae3f3392b9a2bd0f3472e7e50dd7e21dd',1,'Poly1305::clear()'],['../classSHA256.html#add0d1649d533b27005ccd8508398c689',1,'SHA256::clear()'],['../classSHA3__256.html#a531467f995ef6fc901ad8c2b5776a8d1',1,'SHA3_256::clear()'],['../classSHA3__512.html#acfbc5e9b4d394f011d5132a2b156d260',1,'SHA3_512::clear()'],['../classSHA512.html#a0a9104dce5f099aeba216e5fbcb1ee1a',1,'SHA512::clear()'],['../classSHAKE.html#ab86f52425c1d5b0e5c924b4f96121fe0',1,'SHAKE::clear()'],['../classSpeck.html#aa3866273282addabb9d3703c41fdc95f',1,'Speck::clear()'],['../classSpeckSmall.html#aa93d9f0b5153425dc04e8fb8faff7513',1,'SpeckSmall::clear()'],['../classSpeckTiny.html#a303ecc2639459e47c6eeb21991d52ccf',1,'SpeckTiny::clear()'],['../classXOF.html#ac34cb22f251642b58b3dd78a6480aff3',1,'XOF::clear()'],['../classXTSCommon.html#a96e3cb4a3d35dc4e3a5acbae19b4465b',1,'XTSCommon::clear()'],['../classTerminal.html#a4be741767b27739eec98901477e1c3d4',1,'Terminal::clear()']]], + ['cleartoeol',['clearToEOL',['../classTerminal.html#aeb93d71925cdfb17065e7f1ef2e83414',1,'Terminal']]], + ['color',['color',['../classTerminal.html#ad1fc2be31d49124a1d32e8afddaa57b8',1,'Terminal::color(Color fg)'],['../classTerminal.html#ae22436e478a854e8b559fe73182bc329',1,'Terminal::color(Color fg, Color bg)']]], + ['columns',['columns',['../classTerminal.html#aed25b5a884f89dcd2bb269a8e356e5d6',1,'Terminal']]], ['command',['command',['../classIRreceiver.html#a4b021592a2b089dc2f1e138a38506fda',1,'IRreceiver']]], ['computetag',['computeTag',['../classAuthenticatedCipher.html#a73fa4306053ed457e5c533b3127391c9',1,'AuthenticatedCipher::computeTag()'],['../classChaChaPoly.html#a92d850ad7027829e4072c43bd5028f95',1,'ChaChaPoly::computeTag()'],['../classEAXCommon.html#ab5a61bba48561d6e7e6b8bafc51d91e3',1,'EAXCommon::computeTag()'],['../classGCMCommon.html#a444634bd4469bb5d404ac882d1d8fdf4',1,'GCMCommon::computeTag()']]], ['copy',['copy',['../classBitmap.html#ab22fe1f3871934987a670b559f67c67c',1,'Bitmap']]], - ['count',['count',['../classCharlieplex.html#a5008aa4143d381ce34a3aed1a3843e4e',1,'Charlieplex']]], + ['count',['count',['../classCharlieplex.html#a5008aa4143d381ce34a3aed1a3843e4e',1,'Charlieplex::count()'],['../classShellArguments.html#ad1d8f103c645bc280e518f2522a62cc1',1,'ShellArguments::count()']]], ['ctr',['CTR',['../classCTR.html#a7025ab5d79f0f0763f751aeabc425ca9',1,'CTR']]], ['ctrcommon',['CTRCommon',['../classCTRCommon.html#abeb01342f17023e99776001d397c51ff',1,'CTRCommon']]], - ['currentfield',['currentField',['../classForm.html#a85a219a73294cef1f89a2182b5c25bf8',1,'Form']]] + ['currentfield',['currentField',['../classForm.html#a85a219a73294cef1f89a2182b5c25bf8',1,'Form']]], + ['cursordown',['cursorDown',['../classTerminal.html#a4068f1fd6087ff865b169da0a3d61ec5',1,'Terminal']]], + ['cursorleft',['cursorLeft',['../classTerminal.html#a2b8434f44885beabb668b70565bfbebe',1,'Terminal']]], + ['cursormove',['cursorMove',['../classTerminal.html#a7f60537603bd91df3ff1371a895054ea',1,'Terminal']]], + ['cursorright',['cursorRight',['../classTerminal.html#adba29515f7a2f7e3a8038cd583bd28dc',1,'Terminal']]], + ['cursorup',['cursorUp',['../classTerminal.html#ae5259872812d674e1fda215ddd18ee70',1,'Terminal']]] ]; diff --git a/search/functions_3.js b/search/functions_3.js index 665cbab7..bdd224da 100644 --- a/search/functions_3.js +++ b/search/functions_3.js @@ -4,9 +4,13 @@ var searchData= ['dayofweek',['dayOfWeek',['../classRTC.html#a525a9c1dad89613708f47a683eb316aa',1,'RTC']]], ['dbl',['dbl',['../classGF128.html#aef22f6b7be5937f60ed2b7bcf831e52d',1,'GF128']]], ['dbleax',['dblEAX',['../classGF128.html#a56000a4cd7d436de42360e9d43eecde4',1,'GF128']]], + ['dblxts',['dblXTS',['../classGF128.html#a3732c9471771c36ac1b518e974d46b3e',1,'GF128']]], ['decrypt',['decrypt',['../classCBCCommon.html#ab46a2625cae9a654c708e1f31a0e22b6',1,'CBCCommon::decrypt()'],['../classCFBCommon.html#aaaa3d61c5743e30e355207c193c0b0ef',1,'CFBCommon::decrypt()'],['../classChaCha.html#a1f54b2b51b59428010f81a6c4dc4e42c',1,'ChaCha::decrypt()'],['../classChaChaPoly.html#a42f556f202b1166486434ee15b6d95a0',1,'ChaChaPoly::decrypt()'],['../classCipher.html#ac6099d1a0d7f2ff67b0e4ccb4a17eb08',1,'Cipher::decrypt()'],['../classCTRCommon.html#a0943387cf1124258389702e0690740fe',1,'CTRCommon::decrypt()'],['../classEAXCommon.html#a63ce8ae45db137ec9d447216b84245c2',1,'EAXCommon::decrypt()'],['../classGCMCommon.html#a60912d3ab5766aa68dc9b3111ac2c0d7',1,'GCMCommon::decrypt()'],['../classOFBCommon.html#aeb3636d7175b150e2bf16367e51c2e36',1,'OFBCommon::decrypt()'],['../classXOF.html#a1c322679dfd211cd77ae05fb201a32e8',1,'XOF::decrypt()']]], ['decryptblock',['decryptBlock',['../classAESCommon.html#a95a806adf42f975765ff62907efdc639',1,'AESCommon::decryptBlock()'],['../classBlockCipher.html#ac3ba2450222aa1ea804ae4881ab6440c',1,'BlockCipher::decryptBlock()'],['../classSpeck.html#ad8c040df1c52d2559da8fdb3963d28b4',1,'Speck::decryptBlock()'],['../classSpeckSmall.html#acced022717603980ecca21b3f953bf51',1,'SpeckSmall::decryptBlock()'],['../classSpeckTiny.html#a19e54aef7d1b3ef92e8140dd9c308c3c',1,'SpeckTiny::decryptBlock()']]], + ['decryptsector',['decryptSector',['../classXTSCommon.html#a7dd21d5a994724e2af433872ecc3a90b',1,'XTSCommon']]], ['defaultfield',['defaultField',['../classForm.html#aba75b59f68b31dd77dbbac9ab5c3124b',1,'Form']]], + ['deletechar',['deleteChar',['../classTerminal.html#a7daffb0fe91d76678c5a9f22fe16e2c5',1,'Terminal']]], + ['deleteline',['deleteLine',['../classTerminal.html#ae2f95592f13a1a5fe8464176a2b10298',1,'Terminal']]], ['derivepublickey',['derivePublicKey',['../classEd25519.html#ab62bac52ed07f77f76f3ff0fccd71cb2',1,'Ed25519']]], ['destroy',['destroy',['../classRNGClass.html#a9901367d86f2303a59bbc12fe91cad00',1,'RNGClass']]], ['dh1',['dh1',['../classCurve25519.html#a2b6911583d17ea9a36bbbb40d58b3d89',1,'Curve25519']]], diff --git a/search/functions_4.js b/search/functions_4.js index 1580f323..25ab1e47 100644 --- a/search/functions_4.js +++ b/search/functions_4.js @@ -11,9 +11,13 @@ var searchData= ['enabletimer2',['enableTimer2',['../classDMD.html#a5469775db7fafebca2cdbc6a6372fb97',1,'DMD']]], ['encrypt',['encrypt',['../classCBCCommon.html#a41d2f655a7df13cfcd009b2882e13147',1,'CBCCommon::encrypt()'],['../classCFBCommon.html#a57af3692389bed300d3cfdf351351c51',1,'CFBCommon::encrypt()'],['../classChaCha.html#acd4fff140b8871c233d9a31abf753ed8',1,'ChaCha::encrypt()'],['../classChaChaPoly.html#a7df4acd04f459ecf9d3b24317bde94a3',1,'ChaChaPoly::encrypt()'],['../classCipher.html#ad2832bd61039d61560e34ea3382ca562',1,'Cipher::encrypt()'],['../classCTRCommon.html#a201bda584d111552ce8ec09fac759963',1,'CTRCommon::encrypt()'],['../classEAXCommon.html#aad2c563f749535f539b8efbd74b09099',1,'EAXCommon::encrypt()'],['../classGCMCommon.html#a01ac69afe3d9fc4d72b2ea5dc242e55c',1,'GCMCommon::encrypt()'],['../classKeccakCore.html#acaf5c13452003e6e2e7793939f62a123',1,'KeccakCore::encrypt()'],['../classOFBCommon.html#a984d81a460e0799895b19dc48c3b5cf8',1,'OFBCommon::encrypt()'],['../classSHAKE.html#a6621c9d1ffbf8c34780b901275ceb81f',1,'SHAKE::encrypt()'],['../classXOF.html#aa6c027228f0459b07b61fb51c7b47c94',1,'XOF::encrypt()']]], ['encryptblock',['encryptBlock',['../classAESCommon.html#a2d95f6159abfcd92b5841f9018e44296',1,'AESCommon::encryptBlock()'],['../classBlockCipher.html#aed0788b25f6bb2f1bd47d5a5f0c5db33',1,'BlockCipher::encryptBlock()'],['../classSpeck.html#af6b8b91929e4b5b2023400688c9437f9',1,'Speck::encryptBlock()'],['../classSpeckTiny.html#a5dd2cf40dc48addb6a393e78a58a07c0',1,'SpeckTiny::encryptBlock()']]], + ['encryptsector',['encryptSector',['../classXTSCommon.html#a8bf1cbd4c1a5422a3cf285fe995fe0e7',1,'XTSCommon']]], + ['end',['end',['../classShell.html#a8a654aadd0b6a379309bb1007749e41d',1,'Shell::end()'],['../classTerminal.html#a9e4c08d43a1a1c039e385d63aca049c0',1,'Terminal::end()']]], ['endwrite',['endWrite',['../classI2CMaster.html#ab29f63551ddeb032a91505d1c0b8ac41',1,'I2CMaster::endWrite()'],['../classSoftI2C.html#aa12ae82813598b2e9ea70463c23c5bf3',1,'SoftI2C::endWrite()']]], ['enterfield',['enterField',['../classBoolField.html#ab3f1e610b52caed7e41016f6ae3d7d09',1,'BoolField::enterField()'],['../classField.html#aa032bbeacb405c56546cb56fbbee94f5',1,'Field::enterField()'],['../classIntField.html#a51d9127b660e8dd7f87718acd230202a',1,'IntField::enterField()'],['../classListField.html#a191b79b460e45cf48e04b04eface2888',1,'ListField::enterField()'],['../classTextField.html#aa78f1354f9240b64fabd6f996e312f32',1,'TextField::enterField()'],['../classTimeField.html#ae914d6b870283a334d2d669460f7646b',1,'TimeField::enterField()']]], ['eval',['eval',['../classCurve25519.html#a2e4b7dd83a019b32c76584c99bfda21a',1,'Curve25519']]], + ['execute',['execute',['../classLoginShell.html#af54c5c14adac7955cf5e4f9460bd9ca5',1,'LoginShell::execute()'],['../classShell.html#ab4a3f80dc5ff779ac99116a1f7e35cda',1,'Shell::execute()']]], + ['exit',['exit',['../classShell.html#ab9dab65bc0757ce3bb0ac926bbefcee3',1,'Shell']]], ['exitfield',['exitField',['../classField.html#ad6805c75ee1e62f8cd8bd550c4530c07',1,'Field::exitField()'],['../classTimeField.html#a5a6b7db2e3fda7745e0ff9c3d8d9a541',1,'TimeField::exitField()']]], ['extend',['extend',['../classSHAKE.html#ac3fe37617644e3498d40a86e846562fb',1,'SHAKE::extend()'],['../classXOF.html#a1bb311f04dae8465c1489a4f033703cd',1,'XOF::extend()']]], ['extract',['extract',['../classKeccakCore.html#aad83ece853c0cc15fcab947fdcba924f',1,'KeccakCore']]] diff --git a/search/functions_5.js b/search/functions_5.js index 8102bd63..c7c39e45 100644 --- a/search/functions_5.js +++ b/search/functions_5.js @@ -6,6 +6,7 @@ var searchData= ['finalize',['finalize',['../classBLAKE2b.html#a0cd8146b7868bd0f4c24a3856f106d17',1,'BLAKE2b::finalize()'],['../classBLAKE2s.html#a751a3d772cbe1cd1dad83dbd09853b1b',1,'BLAKE2s::finalize()'],['../classGHASH.html#ab221298ca69c9612bfbfd3dedcb28307',1,'GHASH::finalize()'],['../classHash.html#a09b3ccec22763fc86b1415695862977c',1,'Hash::finalize()'],['../classOMAC.html#ae4ccdaee764df779f7ae0c7433078b3e',1,'OMAC::finalize()'],['../classPoly1305.html#aab3fa6c5f6fa7d9ca6c82bead38f499c',1,'Poly1305::finalize()'],['../classSHA256.html#a695157bcdf5495ba892ebac309f3abd6',1,'SHA256::finalize()'],['../classSHA3__256.html#a8fe7cad1f83bd1bae1a0d521324247a1',1,'SHA3_256::finalize()'],['../classSHA3__512.html#ac0227aafb5f047bb50f0bd84df0b4b5b',1,'SHA3_512::finalize()'],['../classSHA512.html#afc136ad0e77de527b031db3fb8b32464',1,'SHA512::finalize()']]], ['finalizehmac',['finalizeHMAC',['../classBLAKE2b.html#a29fafbba26e3c1d896b4d4c428f7d52a',1,'BLAKE2b::finalizeHMAC()'],['../classBLAKE2s.html#a3f910f3bd48cc4a9c5330c31bcda31fc',1,'BLAKE2s::finalizeHMAC()'],['../classHash.html#aab42fa5420cc0bda4321a3d3866cfd06',1,'Hash::finalizeHMAC()'],['../classSHA256.html#a28bc2510c5bdaf210a012f9f21a753cd',1,'SHA256::finalizeHMAC()'],['../classSHA3__256.html#a001215fa1b7d2c30717b4b5b1618d68c',1,'SHA3_256::finalizeHMAC()'],['../classSHA3__512.html#a25c9d2da26d01d46ba6b72c8a7905ea0',1,'SHA3_512::finalizeHMAC()'],['../classSHA512.html#a1fe9533f0d3dfdb426eb3dc4bdc31904',1,'SHA512::finalizeHMAC()']]], ['firedalarm',['firedAlarm',['../classDS3231RTC.html#a6a5b3717ff65528de566c021eb821b94',1,'DS3231RTC::firedAlarm()'],['../classDS3232RTC.html#a79649f100a4562b9c1ba7c69e85cbca3',1,'DS3232RTC::firedAlarm()']]], + ['flush',['flush',['../classTerminal.html#a908cdfa64167279ed565d43b45470c3d',1,'Terminal']]], ['font',['font',['../classBitmap.html#a7bf0a232b4bd12573cc570cc0edef47c',1,'Bitmap']]], ['form',['form',['../classField.html#a27427319be1cc92db3128637d8884ee5',1,'Field::form()'],['../classForm.html#ad30836b22edde707a52d94090b716996',1,'Form::Form()']]], ['formathmackey',['formatHMACKey',['../classHash.html#ab6f40c9af91dc3d738d9fcce59af63cc',1,'Hash']]], diff --git a/search/functions_7.js b/search/functions_7.js index c6178cd2..c34406b3 100644 --- a/search/functions_7.js +++ b/search/functions_7.js @@ -5,6 +5,7 @@ var searchData= ['hashsize',['hashSize',['../classBLAKE2b.html#a7555de16f6918ab820170a7ed3098c89',1,'BLAKE2b::hashSize()'],['../classBLAKE2s.html#af9f50aac096f92ba27b1b2dd48df4c52',1,'BLAKE2s::hashSize()'],['../classHash.html#adcdd30de3e5ecaa2f798c0c5644d9ef8',1,'Hash::hashSize()'],['../classSHA256.html#a103d5bc5ced792464a82cb1d7986de94',1,'SHA256::hashSize()'],['../classSHA3__256.html#a2c5c08119d5ad853021f929a763784f3',1,'SHA3_256::hashSize()'],['../classSHA3__512.html#a9f13e4d2b99dd204e96b11142e9c1803',1,'SHA3_512::hashSize()'],['../classSHA512.html#a6ab3cc1e172eecf4796e4cac629e0a44',1,'SHA512::hashSize()']]], ['hasupdates',['hasUpdates',['../classDS1307RTC.html#a6fec8ff71f33cc1a129eb0bd009600b0',1,'DS1307RTC::hasUpdates()'],['../classDS3231RTC.html#a180bea03bd68df8f696e529cd1582095',1,'DS3231RTC::hasUpdates()'],['../classDS3232RTC.html#a619ffee1bc013c9ddf4ae415115798bc',1,'DS3232RTC::hasUpdates()'],['../classRTC.html#a3690761f29654a2c9e676fcbfa32dd30',1,'RTC::hasUpdates()']]], ['height',['height',['../classBitmap.html#adcd4e3dc7594421e647b0f52da9a41a3',1,'Bitmap']]], + ['help',['help',['../classShell.html#a58b0e9104d1f6c7ec7d1663c69cd03dd',1,'Shell']]], ['hide',['hide',['../classForm.html#a88b9146a3f68e837c5e831203096f9e9',1,'Form']]], ['holdtime',['holdTime',['../classCharlieplex.html#abb429659a7b1ee4c7306ea659050cb30',1,'Charlieplex']]] ]; diff --git a/search/functions_8.js b/search/functions_8.js index 4102c271..81e24eac 100644 --- a/search/functions_8.js +++ b/search/functions_8.js @@ -2,6 +2,8 @@ var searchData= [ ['initfirst',['initFirst',['../classOMAC.html#a0274138725ddf6240c030574bae3975c',1,'OMAC']]], ['initnext',['initNext',['../classOMAC.html#ad496c7d2de4f22fd4192345003e75ee5',1,'OMAC']]], + ['insertchar',['insertChar',['../classTerminal.html#af79ea5335f73762828087f5c813feafd',1,'Terminal']]], + ['insertline',['insertLine',['../classTerminal.html#a9109858612082ffd3d91a88713b7448a',1,'Terminal']]], ['intfield',['IntField',['../classIntField.html#a9df274c4100ed37d2d78738f09fc53b6',1,'IntField::IntField(const String &label)'],['../classIntField.html#a10c9c958bcde276698f1f1f9bff949dd',1,'IntField::IntField(Form &form, const String &label, int minValue, int maxValue, int stepValue, int value)'],['../classIntField.html#a2b99fa19be6a0ed01ddc4939352b372e',1,'IntField::IntField(Form &form, const String &label, int minValue, int maxValue, int stepValue, int value, const String &suffix)']]], ['invert',['invert',['../classBitmap.html#a6d85556bcc9fac91d33f0f6f7a6430dd',1,'Bitmap']]], ['irreceiver',['IRreceiver',['../classIRreceiver.html#a06eccb8b8311eac395e4b20c4e0163e3',1,'IRreceiver']]], @@ -12,6 +14,7 @@ var searchData= ['isscreensaved',['isScreenSaved',['../classLCD.html#af5d5ca618a3161aa352027b58fe09d0e',1,'LCD']]], ['isvalid',['isValid',['../classBitmap.html#a3846a240722e847d3cf11f701da1ce7b',1,'Bitmap']]], ['isvisible',['isVisible',['../classForm.html#a3101f288e3e5aa8307c57f35861ad587',1,'Form']]], + ['iswidecharacter',['isWideCharacter',['../classTerminal.html#a25fdddd02378250799016cbb714c8a6b',1,'Terminal']]], ['items',['items',['../classListField.html#a4dbbdeebd386551eb8f245b42b45ccf0',1,'ListField']]], ['ivsize',['ivSize',['../classCBCCommon.html#a016277533730284a38bb6ad8cd6f91ce',1,'CBCCommon::ivSize()'],['../classCFBCommon.html#a55db1be69de87aafe5601d31be918ebb',1,'CFBCommon::ivSize()'],['../classChaCha.html#afaa3df343a7d07976bd7e03a0c1bf43c',1,'ChaCha::ivSize()'],['../classChaChaPoly.html#ac3ebfaaaffe9d607905681949e75140d',1,'ChaChaPoly::ivSize()'],['../classCipher.html#ab8b53ddc4ce431f03c2a1903d70ace9c',1,'Cipher::ivSize()'],['../classCTRCommon.html#a98c1717d11d8da8e1fa108607358774a',1,'CTRCommon::ivSize()'],['../classEAXCommon.html#abc6ccfb9338c94699458723f669513bf',1,'EAXCommon::ivSize()'],['../classGCMCommon.html#a01cff072505e861fd20f6cfee1e10fb2',1,'GCMCommon::ivSize()'],['../classOFBCommon.html#a67b4639aaece17a796fcba3a2ce8b43c',1,'OFBCommon::ivSize()']]] ]; diff --git a/search/functions_9.js b/search/functions_9.js index f2e530ca..b57fdf5c 100644 --- a/search/functions_9.js +++ b/search/functions_9.js @@ -1,5 +1,5 @@ var searchData= [ ['keccakcore',['KeccakCore',['../classKeccakCore.html#a850c8e85bdb6b347411239716535d9c9',1,'KeccakCore']]], - ['keysize',['keySize',['../classAES128.html#aa871832a156f0ea61b964e489670ae9d',1,'AES128::keySize()'],['../classAES192.html#ade28843e51e262b30eb55791c83fd791',1,'AES192::keySize()'],['../classAES256.html#af8ed6412bae6fc78274f60344899366a',1,'AES256::keySize()'],['../classBlockCipher.html#afde6004a859e015d877eab3c37042a0f',1,'BlockCipher::keySize()'],['../classCBCCommon.html#adb7daacfe2a4fca3d13b62b75372fe4e',1,'CBCCommon::keySize()'],['../classCFBCommon.html#a82899da983bc70bc8152ee67f424552e',1,'CFBCommon::keySize()'],['../classChaCha.html#af286083291fab2bd36dc7ad1f54d5cd7',1,'ChaCha::keySize()'],['../classChaChaPoly.html#a666760e68cb53f28ba0a8dc09039c0fb',1,'ChaChaPoly::keySize()'],['../classCipher.html#a4cea432ea0278c865441f17cbb88b1ab',1,'Cipher::keySize()'],['../classCTRCommon.html#a29ce8e13a302350397fc6790a686bea2',1,'CTRCommon::keySize()'],['../classEAXCommon.html#a027956913eecfa0bc760f20f3b62df29',1,'EAXCommon::keySize()'],['../classGCMCommon.html#a134ba35e740a18bee3c45502b4149eae',1,'GCMCommon::keySize()'],['../classOFBCommon.html#a76ea9f9ea9dd137778338813e534a8ce',1,'OFBCommon::keySize()'],['../classSpeck.html#a061e43c1363178cda088c3f46e07d87b',1,'Speck::keySize()'],['../classSpeckTiny.html#a5587909ba48776b01bbd40b339b1262e',1,'SpeckTiny::keySize()']]] + ['keysize',['keySize',['../classAES128.html#aa871832a156f0ea61b964e489670ae9d',1,'AES128::keySize()'],['../classAES192.html#ade28843e51e262b30eb55791c83fd791',1,'AES192::keySize()'],['../classAES256.html#af8ed6412bae6fc78274f60344899366a',1,'AES256::keySize()'],['../classBlockCipher.html#afde6004a859e015d877eab3c37042a0f',1,'BlockCipher::keySize()'],['../classCBCCommon.html#adb7daacfe2a4fca3d13b62b75372fe4e',1,'CBCCommon::keySize()'],['../classCFBCommon.html#a82899da983bc70bc8152ee67f424552e',1,'CFBCommon::keySize()'],['../classChaCha.html#af286083291fab2bd36dc7ad1f54d5cd7',1,'ChaCha::keySize()'],['../classChaChaPoly.html#a666760e68cb53f28ba0a8dc09039c0fb',1,'ChaChaPoly::keySize()'],['../classCipher.html#a4cea432ea0278c865441f17cbb88b1ab',1,'Cipher::keySize()'],['../classCTRCommon.html#a29ce8e13a302350397fc6790a686bea2',1,'CTRCommon::keySize()'],['../classEAXCommon.html#a027956913eecfa0bc760f20f3b62df29',1,'EAXCommon::keySize()'],['../classGCMCommon.html#a134ba35e740a18bee3c45502b4149eae',1,'GCMCommon::keySize()'],['../classOFBCommon.html#a76ea9f9ea9dd137778338813e534a8ce',1,'OFBCommon::keySize()'],['../classSpeck.html#a061e43c1363178cda088c3f46e07d87b',1,'Speck::keySize()'],['../classSpeckTiny.html#a5587909ba48776b01bbd40b339b1262e',1,'SpeckTiny::keySize()'],['../classXTSCommon.html#a2da350825a438355665683ab9eb57aa7',1,'XTSCommon::keySize()'],['../classXTSSingleKeyCommon.html#ac017d457a08001a3ea44a9900dee2b64',1,'XTSSingleKeyCommon::keySize()']]] ]; diff --git a/search/functions_a.js b/search/functions_a.js index 9547f241..9b3cf49b 100644 --- a/search/functions_a.js +++ b/search/functions_a.js @@ -4,6 +4,7 @@ var searchData= ['lcd',['LCD',['../classLCD.html#a00bb2db1390721abc7b24ac4b8c276c8',1,'LCD::LCD()'],['../classLCD.html#a067bc741cf27f143aba5d9f147908401',1,'LCD::LCD(uint8_t pin9)'],['../classLCD.html#a203d268bef6c61fa293562dbb0e9f51e',1,'LCD::LCD(uint8_t rs, uint8_t enable, uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3)'],['../classField.html#a5cf21bf958a71e51feac9e1bf9f599d1',1,'Field::lcd()']]], ['led',['led',['../classCharlieplex.html#a90fd09f24b62424b0b7b8bcdb0140b9d',1,'Charlieplex']]], ['listfield',['ListField',['../classListField.html#a118501da7edb0b0bc6b493734975b4e9',1,'ListField::ListField(const String &label)'],['../classListField.html#aa303898a1f74b52c1c4982653de488b7',1,'ListField::ListField(Form &form, const String &label, ListItems items, int value=0)']]], - ['loop',['loop',['../classBlinkLED.html#aeeaf42b94c5392935f00f0f12a58c75e',1,'BlinkLED::loop()'],['../classCharlieplex.html#a8313edeacd8387c428b8299d52584d6a',1,'Charlieplex::loop()'],['../classChaseLEDs.html#a8745fa6b9f33b6c6274a563dd4dea786',1,'ChaseLEDs::loop()'],['../classDMD.html#a2c74a0845ef6080056b972d490648114',1,'DMD::loop()'],['../classRNGClass.html#a8cb91e39f0c4591de5bf98b1e2880b13',1,'RNGClass::loop()']]], + ['loginshell',['LoginShell',['../classLoginShell.html#a8a6e6c259bc6415eb9cfbb13980e31d4',1,'LoginShell']]], + ['loop',['loop',['../classBlinkLED.html#aeeaf42b94c5392935f00f0f12a58c75e',1,'BlinkLED::loop()'],['../classCharlieplex.html#a8313edeacd8387c428b8299d52584d6a',1,'Charlieplex::loop()'],['../classChaseLEDs.html#a8745fa6b9f33b6c6274a563dd4dea786',1,'ChaseLEDs::loop()'],['../classDMD.html#a2c74a0845ef6080056b972d490648114',1,'DMD::loop()'],['../classRNGClass.html#a8cb91e39f0c4591de5bf98b1e2880b13',1,'RNGClass::loop()'],['../classShell.html#afc45cae4ccfc76321a254bb617dce08c',1,'Shell::loop()']]], ['loopcount',['loopCount',['../classMelody.html#ab78253ae9abc8478b05f415f5d878a60',1,'Melody']]] ]; diff --git a/search/functions_b.js b/search/functions_b.js index 13a3edb0..5ef69282 100644 --- a/search/functions_b.js +++ b/search/functions_b.js @@ -1,10 +1,12 @@ var searchData= [ + ['machinename',['machineName',['../classLoginShell.html#a540bd00b4af88a896068d72a58cbf23a',1,'LoginShell']]], ['maxhours',['maxHours',['../classTimeField.html#aa73f5a62c330ac7d2f647dfe27d026b7',1,'TimeField']]], ['maxtransfersize',['maxTransferSize',['../classI2CMaster.html#a3cd0cea8169ac4e6dd6f39fd6cfb1926',1,'I2CMaster::maxTransferSize()'],['../classSoftI2C.html#aad488669f28f6a5a4ceaae3de61d38f4',1,'SoftI2C::maxTransferSize()']]], ['maxvalue',['maxValue',['../classIntField.html#aaa0adcb0d16e822e5f176be5cb9ca8ad',1,'IntField']]], ['melody',['Melody',['../classMelody.html#a9edc4165a49368dd5d78eedf982c38b9',1,'Melody']]], ['minvalue',['minValue',['../classIntField.html#af3dab3f2b46d29136d7a93ce46b0b8fb',1,'IntField']]], + ['mode',['mode',['../classTerminal.html#acbf591c7371acba52bcd84ba4a0ce5c8',1,'Terminal']]], ['mul',['mul',['../classBigNumberUtil.html#a1c2c5484f2bf440ae292fd3dfd2d594f',1,'BigNumberUtil::mul()'],['../classGF128.html#a7d9a341a1715d37d25feba21627bc3ab',1,'GF128::mul()']]], ['mul_5fp',['mul_P',['../classBigNumberUtil.html#aacdee1806a239eb9e58753ef1ddb964a',1,'BigNumberUtil']]], ['mulinit',['mulInit',['../classGF128.html#a43adbd72619e4f97ce427a60e7c0a248',1,'GF128']]] diff --git a/search/functions_c.js b/search/functions_c.js index ba3908ff..1802e35b 100644 --- a/search/functions_c.js +++ b/search/functions_c.js @@ -3,5 +3,6 @@ var searchData= ['nextfield',['nextField',['../classForm.html#a788a186ea4a7ebd75283a948ca45f4d1',1,'Form']]], ['nodisplay',['noDisplay',['../classLCD.html#af3974da6d988ba2d21c25135ada12108',1,'LCD']]], ['noisesource',['NoiseSource',['../classNoiseSource.html#a601479b7d8cc215f97f2f8a18d3ef4c2',1,'NoiseSource']]], + ['normal',['normal',['../classTerminal.html#a928023c8125f226ab0851f8b4bb6302f',1,'Terminal']]], ['numrounds',['numRounds',['../classChaCha.html#a0a73d3623da377bc593876156768dd72',1,'ChaCha']]] ]; diff --git a/search/functions_d.js b/search/functions_d.js index 52ce8ed3..2c1d27a2 100644 --- a/search/functions_d.js +++ b/search/functions_d.js @@ -5,5 +5,6 @@ var searchData= ['offtime',['offTime',['../classBlinkLED.html#a74c640edf1a9f6e8bea1e139462908bc',1,'BlinkLED']]], ['omac',['OMAC',['../classOMAC.html#ae84365423cef3f769464489848942559',1,'OMAC']]], ['ontime',['onTime',['../classBlinkLED.html#a8475f78f41d1a2d5d719bec8cbbb3ebb',1,'BlinkLED']]], + ['operator_5b_5d',['operator[]',['../classShellArguments.html#a1308c90889e9341f07986b4b256acc16',1,'ShellArguments']]], ['output',['output',['../classNoiseSource.html#a1af7449a5ae4a8acd34ac218c9eec6c1',1,'NoiseSource']]] ]; diff --git a/search/functions_e.js b/search/functions_e.js index 2a086512..3bd76b69 100644 --- a/search/functions_e.js +++ b/search/functions_e.js @@ -4,12 +4,16 @@ var searchData= ['packle',['packLE',['../classBigNumberUtil.html#a989cd5f389ac5adc798d8767383e2810',1,'BigNumberUtil']]], ['pad',['pad',['../classGHASH.html#a8c38ee9313605f1d8b12dca7cd43e4ad',1,'GHASH::pad()'],['../classKeccakCore.html#a97852ee4381ced17ee6d21704cf0b4d7',1,'KeccakCore::pad()'],['../classPoly1305.html#aaea2f40c1f22dcc2f8f690c793fb4388',1,'Poly1305::pad()']]], ['pagesize',['pageSize',['../classEEPROM24.html#af33b23e2614f3966bbaf2554890c032a',1,'EEPROM24']]], + ['passwordcheckfunction',['passwordCheckFunction',['../classLoginShell.html#ae1cfc0c58be3fcba8b11392d57fd5183',1,'LoginShell']]], ['pause',['pause',['../classBlinkLED.html#a2760a0223cd6a0598b961f681ffb5c0a',1,'BlinkLED']]], + ['peek',['peek',['../classTerminal.html#a49f6aa694fae8a9ff8a526350dd8f8fc',1,'Terminal']]], ['pixel',['pixel',['../classBitmap.html#a35aa38b377d509d6c4f061a0b988d203',1,'Bitmap']]], ['play',['play',['../classMelody.html#a9fd8e0d48833d8da3cd3b3b58408b0b5',1,'Melody']]], ['playonce',['playOnce',['../classMelody.html#aecc9185c9cb1246e8a55521b17d72932',1,'Melody']]], ['poly1305',['Poly1305',['../classPoly1305.html#a7d62e7cd2d67f1c72142580036066fa2',1,'Poly1305']]], ['prevfield',['prevField',['../classForm.html#acb080fe4f4631e9060e6efab8eaa0a90',1,'Form']]], ['previouspin',['previousPin',['../classChaseLEDs.html#a27c460fcb341c2dc2fcf9341616eb525',1,'ChaseLEDs']]], + ['printprompt',['printPrompt',['../classLoginShell.html#a6574705053f780acb8f0d8594c210524',1,'LoginShell::printPrompt()'],['../classShell.html#a720144957bf6462659017cc25c429beb',1,'Shell::printPrompt()']]], + ['prompt',['prompt',['../classShell.html#af4a335f97bc888a25f7e54f2a025c11c',1,'Shell']]], ['pwmled',['pwmLed',['../classCharlieplex.html#a89312f2fd1d27c4e56346ed9cccfb9f6',1,'Charlieplex']]] ]; diff --git a/search/functions_f.js b/search/functions_f.js index 7a4a335d..3fea7e07 100644 --- a/search/functions_f.js +++ b/search/functions_f.js @@ -1,21 +1,25 @@ var searchData= [ ['rand',['rand',['../classRNGClass.html#a418a833cf18198fd7e5d6dbd78c99c29',1,'RNGClass']]], - ['read',['read',['../classEEPROM24.html#a960971377d4decb122ff38d12603e586',1,'EEPROM24::read(unsigned long address)'],['../classEEPROM24.html#a63e23dc014415f947975359ac09f627e',1,'EEPROM24::read(unsigned long address, void *data, size_t length)'],['../classI2CMaster.html#a49eeebb57f6bc06de39973fe836369cd',1,'I2CMaster::read()'],['../classSoftI2C.html#a330dbba5b726fa161a6b01a9ca49e1bc',1,'SoftI2C::read()']]], + ['read',['read',['../classEEPROM24.html#a960971377d4decb122ff38d12603e586',1,'EEPROM24::read(unsigned long address)'],['../classEEPROM24.html#a63e23dc014415f947975359ac09f627e',1,'EEPROM24::read(unsigned long address, void *data, size_t length)'],['../classI2CMaster.html#a49eeebb57f6bc06de39973fe836369cd',1,'I2CMaster::read()'],['../classSoftI2C.html#a330dbba5b726fa161a6b01a9ca49e1bc',1,'SoftI2C::read()'],['../classTerminal.html#a14dfd6dc5c4a30acfb47ab24c22d1cd5',1,'Terminal::read()']]], ['readalarm',['readAlarm',['../classDS1307RTC.html#aab608eb1630520ee122306b721fdc47a',1,'DS1307RTC::readAlarm()'],['../classDS3231RTC.html#aab56929e759a49a90785729cceb72f2e',1,'DS3231RTC::readAlarm()'],['../classDS3232RTC.html#a09c7073c687dcbbc423baf48074c7873',1,'DS3232RTC::readAlarm()'],['../classRTC.html#ade282d7a60147c3f0269f1fcd59c8d66',1,'RTC::readAlarm()']]], ['readbyte',['readByte',['../classDS1307RTC.html#a7364609a201022688778ab116c3e4f4a',1,'DS1307RTC::readByte()'],['../classDS3232RTC.html#a5ba83a3ef7d65d45c2f3241afdd8fef7',1,'DS3232RTC::readByte()'],['../classRTC.html#a0f47b10b436e3f9d36e04ec907579431',1,'RTC::readByte()']]], ['readdate',['readDate',['../classDS1307RTC.html#a6fb56d1690bc30e7995961a5b5e5fdc4',1,'DS1307RTC::readDate()'],['../classDS3231RTC.html#a498a1a37b78993ab52780198c5b4a9df',1,'DS3231RTC::readDate()'],['../classDS3232RTC.html#ab03358e3b5996e38d766e2f9f6ab62ca',1,'DS3232RTC::readDate()'],['../classRTC.html#aa1e21bf42ebd4456919744ae0f4f631e',1,'RTC::readDate()']]], + ['readkey',['readKey',['../classTerminal.html#aa82621ea174422601cc7384c8185eb96',1,'Terminal']]], ['readonly',['readOnly',['../classTimeField.html#aa0795c873ba9941c8a1a3bf8c06668f1',1,'TimeField']]], ['readtemperature',['readTemperature',['../classDS3231RTC.html#ad1dcb7897fd14ae745720a19fbe71e37',1,'DS3231RTC::readTemperature()'],['../classDS3232RTC.html#a0faf40c25ab019a326a60f301c2bb41b',1,'DS3232RTC::readTemperature()'],['../classRTC.html#aeca3c8387332e8cabfd09c1806276e5a',1,'RTC::readTemperature()']]], ['readtime',['readTime',['../classDS1307RTC.html#acd9800d6df2244b8e4e790480a1d62a6',1,'DS1307RTC::readTime()'],['../classDS3231RTC.html#a3a2c448b152c401fb598c487ef0ed288',1,'DS3231RTC::readTime()'],['../classDS3232RTC.html#af89e68c68f1c4b7e94286f800b5b2747',1,'DS3232RTC::readTime()'],['../classRTC.html#aaf0a5c1f32f210a49718d148620b5bec',1,'RTC::readTime()']]], ['reducequick',['reduceQuick',['../classBigNumberUtil.html#a5af5f50c91594183da4e079d76702d34',1,'BigNumberUtil']]], ['reducequick_5fp',['reduceQuick_P',['../classBigNumberUtil.html#a00c9cde0b626788a60552a6bc9ce058b',1,'BigNumberUtil']]], ['refresh',['refresh',['../classCharlieplex.html#a3c961bfff866e400dad371f0376f096b',1,'Charlieplex::refresh()'],['../classDMD.html#a9e4bf2a9d247312d35c1401ff61261c8',1,'DMD::refresh()']]], + ['registercommand',['registerCommand',['../classShell.html#a03dfba66a0125a8c02dd71b3f3b37870',1,'Shell']]], ['removefield',['removeField',['../classForm.html#a7abd717029f9b19ee7318470072cd697',1,'Form']]], ['reset',['reset',['../classBLAKE2b.html#a917beae2ca6e9831a35717a526089e8a',1,'BLAKE2b::reset()'],['../classBLAKE2b.html#a9afd8ec05ccfa08a922de74461e45387',1,'BLAKE2b::reset(uint8_t outputLength)'],['../classBLAKE2s.html#a778776d15316c182fdb2df5a89b3ca02',1,'BLAKE2s::reset()'],['../classBLAKE2s.html#a91ba6bc39e42002ac61114ced1d0af6d',1,'BLAKE2s::reset(uint8_t outputLength)'],['../classGHASH.html#a479a3e8c37e320bf99f54b95bf5f4c55',1,'GHASH::reset()'],['../classHash.html#a7b94309acaa5f52386785fb780e5be61',1,'Hash::reset()'],['../classKeccakCore.html#a5a322eb7e3b5c1eaad127c9c6e6a529b',1,'KeccakCore::reset()'],['../classPoly1305.html#a544839403d0a19300c239708bc1e6ed8',1,'Poly1305::reset()'],['../classSHA256.html#ad9d80d8fdccffb15497bd36285afce65',1,'SHA256::reset()'],['../classSHA3__256.html#a57b5f29347a733e04fe47d60621f3202',1,'SHA3_256::reset()'],['../classSHA3__512.html#a435746d5a8b012f7c65050337cc4a23f',1,'SHA3_512::reset()'],['../classSHA512.html#a0d009e8d9157c3f14323e68631c33e97',1,'SHA512::reset()'],['../classSHAKE.html#af199eea3c22bb193638827163c2b23db',1,'SHAKE::reset()'],['../classXOF.html#a6dd11ef356335d049da6932e2490bf03',1,'XOF::reset()']]], ['resethmac',['resetHMAC',['../classBLAKE2b.html#acb1ca4081c509d1c34b3aee465cd4494',1,'BLAKE2b::resetHMAC()'],['../classBLAKE2s.html#a7f9745854704b34a508497105ca5e2fd',1,'BLAKE2s::resetHMAC()'],['../classHash.html#adf50359c1f525af884721cc9034e7945',1,'Hash::resetHMAC()'],['../classSHA256.html#a2271683d6f1c7c103272f1dec55a6871',1,'SHA256::resetHMAC()'],['../classSHA3__256.html#a324fe4d268bbf23d7b492033fe3bc632',1,'SHA3_256::resetHMAC()'],['../classSHA3__512.html#aac7133f420f2be0288965c2e863f389b',1,'SHA3_512::resetHMAC()'],['../classSHA512.html#a2427ad8bf8b6958df91bd5806986167c',1,'SHA512::resetHMAC()']]], ['resume',['resume',['../classBlinkLED.html#a380241e4dfd20e8a558487227f2f4252',1,'BlinkLED']]], + ['reverse',['reverse',['../classTerminal.html#a4d770065054af95c2b8f98b561619ede',1,'Terminal']]], ['rngclass',['RNGClass',['../classRNGClass.html#acbcf327242f51ae2d9209aeaa45e30e9',1,'RNGClass']]], + ['rows',['rows',['../classTerminal.html#ac01cf545938eff14f8e249e072b82357',1,'Terminal']]], ['rtc',['RTC',['../classRTC.html#ada31c5120d18d2dd2863b3d440308da2',1,'RTC']]], ['run',['run',['../classMelody.html#ad1103b970be1f59058cc7d927be68955',1,'Melody']]] ]; diff --git a/search/pages_8.js b/search/pages_8.js index c70dda2c..caff712b 100644 --- a/search/pages_8.js +++ b/search/pages_8.js @@ -1,5 +1,6 @@ var searchData= [ ['star_20trek_20example',['Star Trek Example',['../blink_startrek.html',1,'']]], - ['snake_20video_20game_20using_20an_20infrared_20remote_20control',['Snake Video Game Using an Infrared Remote Control',['../ir_snake.html',1,'']]] + ['snake_20video_20game_20using_20an_20infrared_20remote_20control',['Snake Video Game Using an Infrared Remote Control',['../ir_snake.html',1,'']]], + ['serial_20port_20shell_20example',['Serial port Shell example',['../shell_serial.html',1,'']]] ]; diff --git a/search/pages_9.html b/search/pages_9.html new file mode 100644 index 00000000..203934e3 --- /dev/null +++ b/search/pages_9.html @@ -0,0 +1,26 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/pages_9.js b/search/pages_9.js new file mode 100644 index 00000000..1faf3322 --- /dev/null +++ b/search/pages_9.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['telnet_20server_20example',['Telnet server example',['../shell_telnet.html',1,'']]] +]; diff --git a/search/related_0.html b/search/related_0.html new file mode 100644 index 00000000..b6476349 --- /dev/null +++ b/search/related_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/related_0.js b/search/related_0.js new file mode 100644 index 00000000..d322aab7 --- /dev/null +++ b/search/related_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['shellcommand',['ShellCommand',['../classShell.html#a809d96cf913bf11d02f3c0d51a120740',1,'Shell']]] +]; diff --git a/search/search.js b/search/search.js index d3c489be..ab43ca64 100644 --- a/search/search.js +++ b/search/search.js @@ -9,14 +9,15 @@ var indexSectionsWithContent = { 0: "abcdefghiklmnoprstuvwxy~", 1: "abcdefghiklmnoprstx", - 2: "abcdilm", + 2: "abcdilms", 3: "abcdefghiklmnoprstuvwx~", 4: "abdfhimnswy", 5: "cfp", - 6: "ds", - 7: "bds", - 8: "p", - 9: "abcdfghrs" + 6: "cdms", + 7: "bcdglmrstwy", + 8: "s", + 9: "p", + 10: "abcdfghrst" }; var indexSectionNames = @@ -29,8 +30,9 @@ var indexSectionNames = 5: "typedefs", 6: "enums", 7: "enumvalues", - 8: "groups", - 9: "pages" + 8: "related", + 9: "groups", + 10: "pages" }; function convertToId(search) diff --git a/shell-serial_8dox.html b/shell-serial_8dox.html new file mode 100644 index 00000000..5a9d4298 --- /dev/null +++ b/shell-serial_8dox.html @@ -0,0 +1,95 @@ + + + + + + +ArduinoLibs: shell-serial.dox File Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    ArduinoLibs +
    +
    +
    + + + + + + + + + +
    + +
    + +
    +
    +
    +
    shell-serial.dox File Reference
    +
    +
    +
    + + + + diff --git a/shell-telnet_8dox.html b/shell-telnet_8dox.html new file mode 100644 index 00000000..2dff3a7a --- /dev/null +++ b/shell-telnet_8dox.html @@ -0,0 +1,95 @@ + + + + + + +ArduinoLibs: shell-telnet.dox File Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    ArduinoLibs +
    +
    +
    + + + + + + + + + +
    + +
    + +
    +
    +
    +
    shell-telnet.dox File Reference
    +
    +
    +
    + + + + diff --git a/shell_serial.html b/shell_serial.html new file mode 100644 index 00000000..dbcb62be --- /dev/null +++ b/shell_serial.html @@ -0,0 +1,164 @@ + + + + + + +ArduinoLibs: Serial port Shell example + + + + + + + + + +
    +
    + + + + + + +
    +
    ArduinoLibs +
    +
    +
    + + + + + + + + +
    + +
    + +
    +
    +
    +
    Serial port Shell example
    +
    +
    +

    The Shell class provides a Unix-like shell for issuing commands to the Arduino. This example shows how to use Shell to provide command-line access via a serial port. The example has one command "led" for turning the status LED on D13 on and off.

    +

    We start by including the shell library definitions and declaring a variable of type Shell:

    +
    #include <Shell.h>
    +
    +
    Shell shell;
    +

    +

    Next we need to initialize the serial port and tell the shell object to use it for communications:

    +
    void setup()
    +
    {
    +
    pinMode(ledPin, OUTPUT);
    +
    +
    Serial.begin(9600);
    +
    shell.setPrompt("Command: ");
    +
    shell.begin(Serial, 5);
    +
    }
    +

    +

    The call to shell.setPrompt() specifies the prompt to display whenever a new line of input is required. The default value is "$ " but we have changed it to "Command: " in this example. The string can be anything and can be changed later if necessary.

    +

    The call to shell.begin() starts the actual shell. The first argument is the underlying stream to use for communications, the Serial port in our case. The second argument sets the size of the history stack so that Shell can remember previous commands and let the user navigate back to them with the up/down arrow keys.

    +

    The shell needs to regularly process input from the serial port and handle commands. We accomplish this by calling shell.loop() from the application's main loop() function:

    +
    void loop()
    +
    {
    +
    shell.loop();
    +
    }
    +

    +

    At this point the application will have two builtin commands, "help" and "exit". But we also want a command of our own. We do this by declaring a command handler:

    +
    int ledPin = 13;
    +
    +
    void cmdLed(Shell &shell, int argc, const ShellArguments &argv)
    +
    {
    +
    if (argc > 1 && !strcmp(argv[1], "on"))
    +
    digitalWrite(ledPin, HIGH);
    +
    else
    +
    digitalWrite(ledPin, LOW);
    +
    }
    +
    +
    ShellCommand(led, "Turns the status LED on or off", cmdLed);
    +

    +

    The ShellCommand() macro informs the shell of a new command with its name, help string, and the name of the handler function.

    +

    The full source code for the example follows:

    +
    /*
    +
    This example demonstrates how to create a simple shell on the serial port.
    +
    +
    This example is placed into the public domain.
    +
    */
    +
    +
    #include <Shell.h>
    +
    +
    Shell shell;
    +
    +
    int ledPin = 13;
    +
    +
    void cmdLed(Shell &shell, int argc, const ShellArguments &argv)
    +
    {
    +
    if (argc > 1 && !strcmp(argv[1], "on"))
    +
    digitalWrite(ledPin, HIGH);
    +
    else
    +
    digitalWrite(ledPin, LOW);
    +
    }
    +
    +
    ShellCommand(led, "Turns the status LED on or off", cmdLed);
    +
    +
    void setup()
    +
    {
    +
    pinMode(ledPin, OUTPUT);
    +
    +
    Serial.begin(9600);
    +
    shell.setPrompt("Command: ");
    +
    shell.begin(Serial, 5);
    +
    }
    +
    +
    void loop()
    +
    {
    +
    shell.loop();
    +
    }
    +
    + + + + diff --git a/shell_telnet.html b/shell_telnet.html new file mode 100644 index 00000000..9fae03b3 --- /dev/null +++ b/shell_telnet.html @@ -0,0 +1,173 @@ + + + + + + +ArduinoLibs: Telnet server example + + + + + + + + + +
    +
    + + + + + + +
    +
    ArduinoLibs +
    +
    +
    + + + + + + + + +
    + +
    + +
    +
    +
    +
    Telnet server example
    +
    +
    +

    The Shell class provides a Unix-like shell for issuing commands to the Arduino. The LoginShell class extends Shell to also include login functionality. The user is prompted for username and password before access is granted to shell commands.

    +

    This example shows how to use LoginShell to provide command-line access over the Internet via the telnet protocol. The example has one command "led" for turning the status LED on D13 on and off.

    +

    The full source code for the example follows:

    +
    +
    /*
    +
    This example demonstrates how to create a simple telnet server.
    +
    +
    This example is placed into the public domain.
    +
    */
    +
    +
    #include <SPI.h>
    +
    #include <Ethernet.h>
    +
    #include <Shell.h>
    +
    #include <LoginShell.h>
    +
    +
    byte macAddress[6] = {
    +
    0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED
    +
    };
    +
    +
    int ledPin = 13;
    +
    +
    EthernetServer server(23);
    +
    EthernetClient client;
    +
    bool haveClient = false;
    +
    +
    LoginShell shell;
    +
    +
    void cmdLed(Shell &shell, int argc, const ShellArguments &argv)
    +
    {
    +
    if (argc > 1 && !strcmp(argv[1], "on"))
    +
    digitalWrite(ledPin, HIGH);
    +
    else
    +
    digitalWrite(ledPin, LOW);
    +
    }
    +
    +
    ShellCommand(led, "Turns the status LED on or off", cmdLed);
    +
    +
    void setup()
    +
    {
    +
    // Configure I/O.
    +
    pinMode(ledPin, OUTPUT);
    +
    digitalWrite(ledPin, LOW);
    +
    +
    // Start the serial port for status messages.
    +
    Serial.begin(9600);
    +
    Serial.println();
    +
    Serial.print("Acquiring IP address ... ");
    +
    +
    // Start Ethernet running and get an IP address via DHCP.
    +
    if (Ethernet.begin(macAddress))
    +
    Serial.println(Ethernet.localIP());
    +
    else
    +
    Serial.println("failed");
    +
    +
    // Listen on port 23 for incoming telnet connections.
    +
    server.begin();
    +
    shell.setMachineName("Arduino");
    +
    }
    +
    +
    void loop()
    +
    {
    +
    // Maintain the DHCP lease over time.
    +
    Ethernet.maintain();
    +
    +
    // Handle new/disconnecting clients.
    +
    if (!haveClient) {
    +
    // Check for new client connections.
    +
    client = server.available();
    +
    if (client) {
    +
    haveClient = true;
    +
    shell.begin(client, 5);
    +
    }
    +
    } else if (!client.connected()) {
    +
    // The current client has been disconnected. Shut down the shell.
    +
    shell.end();
    +
    client.stop();
    +
    client = EthernetClient();
    +
    haveClient = false;
    +
    }
    +
    +
    // Perform periodic shell processing on the active client.
    +
    shell.loop();
    +
    }
    +
    + + + + diff --git a/structRTCAlarm.html b/structRTCAlarm.html index be63a998..170d6ec0 100644 --- a/structRTCAlarm.html +++ b/structRTCAlarm.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -200,7 +200,7 @@ uint8_t  diff --git a/structRTCDate.html b/structRTCDate.html index bc95b939..5dfda78e 100644 --- a/structRTCDate.html +++ b/structRTCDate.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
    + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -123,7 +123,7 @@ uint8_t  diff --git a/structRTCTime.html b/structRTCTime.html index 9449edd0..01cd4959 100644 --- a/structRTCTime.html +++ b/structRTCTime.html @@ -72,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> - All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
    + All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
    @@ -123,7 +123,7 @@ uint8_t