{"action":"created","issue":{"url":"https://api.github.com/repos/esp8266/Arduino/issues/3402","repository_url":"https://api.github.com/repos/esp8266/Arduino","labels_url":"https://api.github.com/repos/esp8266/Arduino/issues/3402/labels{/name}","comments_url":"https://api.github.com/repos/esp8266/Arduino/issues/3402/comments","events_url":"https://api.github.com/repos/esp8266/Arduino/issues/3402/events","html_url":"https://github.com/esp8266/Arduino/issues/3402","id":240437815,"number":3402,"title":"Exception 29 when using SSL","user":{"login":"Defozo","id":8215510,"avatar_url":"https://avatars2.githubusercontent.com/u/8215510?v=4","gravatar_id":"","url":"https://api.github.com/users/Defozo","html_url":"https://github.com/Defozo","followers_url":"https://api.github.com/users/Defozo/followers","following_url":"https://api.github.com/users/Defozo/following{/other_user}","gists_url":"https://api.github.com/users/Defozo/gists{/gist_id}","starred_url":"https://api.github.com/users/Defozo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Defozo/subscriptions","organizations_url":"https://api.github.com/users/Defozo/orgs","repos_url":"https://api.github.com/users/Defozo/repos","events_url":"https://api.github.com/users/Defozo/events{/privacy}","received_events_url":"https://api.github.com/users/Defozo/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2017-07-04T14:32:36Z","updated_at":"2017-12-28T00:26:15Z","closed_at":null,"author_association":"NONE","body":"### Basic Infos\r\n\r\n#### Hardware\r\nHardware:\t\t\tESP-07S\r\nCore Version:      \t2.4.0-rc1\r\n\r\n### Description\r\n\r\nSometimes (really rare) I get exception 29 when I'm trying to send something over HTTPS.\r\n\r\n### Settings in IDE\r\n\r\nModule:  \t\t\tGeneric ESP8266 Module\r\nFlash Size: \t\t4MB (1MB SPIFFS)\r\nCPU Frequency:\t\t160Mhz\r\nFlash Mode:\t\t\tqio\r\nFlash Frequency:\t40Mhz\r\nUpload Using:\t\tOTA / SERIAL\r\nReset Method:\t\tck\r\n\r\n### Debug Messages\r\n\r\n```\r\nException 29: StoreProhibited: A store referenced a page mapped with an attribute that does not permit stores\r\nDecoding 95 results\r\n0x4021d8c6: memmove at /Users/igrokhotkov/e/newlib-xtensa/xtensa-lx106-elf/newlib/libc/string/../../../.././newlib/libc/string/memmove.c line 74\r\n0x4022ab11: regular_square at crypto/bigint.c line 969\r\n:  (inlined by) bi_square at crypto/bigint.c line 1014\r\n0x4022a146: AES_cbc_decrypt at crypto/aes.c line 345\r\n0x4022a2d8: exp_bit_is_one at crypto/bigint.c line 672\r\n0x4022a559: bi_int_multiply at crypto/bigint.c line 672\r\n0x40214bb4: loop_task at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\cores\\esp8266/core_esp8266_main.cpp line 131\r\n0x4022a2d8: exp_bit_is_one at crypto/bigint.c line 672\r\n0x4022b00f: bi_set_mod at ?? line ?\r\n0x4022b264: bi_mod_power at crypto/bigint.c line 1387\r\n0x4022a1a8: more_comps at crypto/bigint.c line 672\r\n0x4022c395: RSA_encrypt at crypto/rsa.c line 285\r\n0x40227e0c: ssl_read at ssl/tls1.c line 2005\r\n0x402282a1: send_cert_verify at ssl/tls1_clnt.c line 500\r\n:  (inlined by) do_clnt_handshake at ssl/tls1_clnt.c line 118\r\n0x4020af40: ClientContext::read(char*, unsigned int) at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\libraries\\ESP8266WiFi\\src/WiFiClientSecure.cpp line 609\r\n0x40214c2c: esp_yield at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\cores\\esp8266/core_esp8266_main.cpp line 87\r\n0x40227c14: do_handshake at ssl/tls1.c line 2005\r\n:  (inlined by) basic_read at ssl/tls1.c line 1481\r\n0x40227ff0: send_client_hello at ssl/tls1_clnt.c line 273\r\n:  (inlined by) do_client_connect at ssl/tls1_clnt.c line 167\r\n0x401004d8: malloc at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\cores\\esp8266\\umm_malloc/umm_malloc.c line 1664\r\n0x40227d7c: basic_read at ssl/tls1.c line 2005\r\n0x4020b401: SSLContext::connect(ClientContext*, char const*, unsigned int) at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\libraries\\ESP8266WiFi\\src/WiFiClientSecure.cpp line 609\r\n:  (inlined by) WiFiClientSecure::_connectSSL(char const*) at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\libraries\\ESP8266WiFi\\src/WiFiClientSecure.cpp line 321\r\n0x4020a942: ClientContext at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\libraries\\ESP8266WiFi\\src/WiFiClient.cpp line 324\r\n:  (inlined by) WiFiClient::connect(IPAddress, unsigned short) at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\libraries\\ESP8266WiFi\\src/WiFiClient.cpp line 132\r\n0x4020b789: WiFiClientSecure::connect(char const*, unsigned short) at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\libraries\\ESP8266WiFi\\src/WiFiClientSecure.cpp line 304\r\n0x4020cb4c: std::unique_ptr   >::get() const at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\libraries\\ESP8266HTTPClient\\src/ESP8266HTTPClient.cpp line 196\r\n:  (inlined by) std::unique_ptr   >::operator bool() const at c:\\users\\defozo\\appdata\\local\\arduino15\\packages\\esp8266\\tools\\xtensa-lx106-elf-gcc\\1.20.0-26-gb404fb9-2\\xtensa-lx106-elf\\include\\c++\\4.8.2\\bits/unique_ptr.h line 245\r\n:  (inlined by) HTTPClient::connect() at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\libraries\\ESP8266HTTPClient\\src/ESP8266HTTPClient.cpp line 820\r\n0x4010053d: _umm_realloc at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\cores\\esp8266\\umm_malloc/umm_malloc.c line 1491\r\n:  (inlined by) realloc at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\cores\\esp8266\\umm_malloc/umm_malloc.c line 1709\r\n0x4020d02c: std::unique_ptr   >::get() const at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\libraries\\ESP8266HTTPClient\\src/ESP8266HTTPClient.cpp line 196\r\n:  (inlined by) std::unique_ptr   >::operator->() const at c:\\users\\defozo\\appdata\\local\\arduino15\\packages\\esp8266\\tools\\xtensa-lx106-elf-gcc\\1.20.0-26-gb404fb9-2\\xtensa-lx106-elf\\include\\c++\\4.8.2\\bits/unique_ptr.h line 229\r\n:  (inlined by) HTTPClient::returnError(int) at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\libraries\\ESP8266HTTPClient\\src/ESP8266HTTPClient.cpp line 1114\r\n0x40213f2b: String::~String() at ?? line ?\r\n0x40213f77: String::changeBuffer(unsigned int) at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\cores\\esp8266/WString.cpp line 519\r\n0x4020d0fc: HTTPClient::sendRequest(char const*, unsigned char*, unsigned int) at ?? line ?\r\n0x4020d11a: HTTPClient::GET() at ?? line ?\r\n0x40207aca: sendMeasurementsToServer(String) at C:\\Users\\Defozo\\AppData\\Local\\Temp\\arduino_modified_sketch_857861/laser_na_stacje_v2.ino line 426\r\n0x402140d8: String::move(String&) at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\cores\\esp8266/WString.cpp line 519\r\n0x402087f5: loop at C:\\Users\\Defozo\\AppData\\Local\\Temp\\arduino_modified_sketch_857861/laser_na_stacje_v2.ino line 398\r\n0x40240000: ieee80211_send_action_vendor_spec at ?? line ?\r\n0x40240000: ieee80211_send_action_vendor_spec at ?? line ?\r\n0x40240000: ieee80211_send_action_vendor_spec at ?? line ?\r\n0x40240000: ieee80211_send_action_vendor_spec at ?? line ?\r\n0x40220000: dns_enqueue at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 925\r\n:  (inlined by) dns_gethostbyname at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 985\r\n0x40220000: dns_enqueue at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 925\r\n:  (inlined by) dns_gethostbyname at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 985\r\n0x40220000: dns_enqueue at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 925\r\n:  (inlined by) dns_gethostbyname at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 985\r\n0x40224026: ip_output_if_opt at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/ipv4/ip.c line 741\r\n0x40240000: ieee80211_send_action_vendor_spec at ?? line ?\r\n0x40220000: dns_enqueue at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 925\r\n:  (inlined by) dns_gethostbyname at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 985\r\n0x40220000: dns_enqueue at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 925\r\n:  (inlined by) dns_gethostbyname at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 985\r\n0x40220000: dns_enqueue at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 925\r\n:  (inlined by) dns_gethostbyname at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 985\r\n0x40220000: dns_enqueue at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 925\r\n:  (inlined by) dns_gethostbyname at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 985\r\n0x40260000: bignum_exptmod at ?? line ?\r\n0x40260000: bignum_exptmod at ?? line ?\r\n0x40260000: bignum_exptmod at ?? line ?\r\n0x40240000: ieee80211_send_action_vendor_spec at ?? line ?\r\n0x40240000: ieee80211_send_action_vendor_spec at ?? line ?\r\n0x40240000: ieee80211_send_action_vendor_spec at ?? line ?\r\n0x40220000: dns_enqueue at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 925\r\n:  (inlined by) dns_gethostbyname at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 985\r\n0x40220000: dns_enqueue at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 925\r\n:  (inlined by) dns_gethostbyname at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 985\r\n0x40220000: dns_enqueue at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 925\r\n:  (inlined by) dns_gethostbyname at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 985\r\n0x40220000: dns_enqueue at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 925\r\n:  (inlined by) dns_gethostbyname at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 985\r\n0x4010068c: free at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\cores\\esp8266\\umm_malloc/umm_malloc.c line 1733\r\n0x40215f02: UdpContext::peek() at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\libraries\\ESP8266WiFi\\src\\include/UdpContext.h line 228\r\n:  (inlined by) WiFiUDP::peek() at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\libraries\\ESP8266WiFi\\src/WiFiUdp.cpp line 241\r\n0x40240000: ieee80211_send_action_vendor_spec at ?? line ?\r\n0x40220000: dns_enqueue at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 925\r\n:  (inlined by) dns_gethostbyname at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 985\r\n0x40260000: bignum_exptmod at ?? line ?\r\n0x40250000: wps_registrar_probe_req_rx at ?? line ?\r\n0x40250000: wps_registrar_probe_req_rx at ?? line ?\r\n0x40240000: ieee80211_send_action_vendor_spec at ?? line ?\r\n0x40210000: ESP8266WebServer::handleClient() at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\libraries\\ESP8266WebServer\\src\\detail/RequestHandlersImpl.h line 56\r\n0x40220000: dns_enqueue at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 925\r\n:  (inlined by) dns_gethostbyname at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 985\r\n0x40220000: dns_enqueue at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 925\r\n:  (inlined by) dns_gethostbyname at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 985\r\n0x40220000: dns_enqueue at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 925\r\n:  (inlined by) dns_gethostbyname at /Users/ivan/e/arduino-esp8266/tools/sdk/lwip/src/core/dns.c line 985\r\n0x40210000: ESP8266WebServer::handleClient() at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\libraries\\ESP8266WebServer\\src\\detail/RequestHandlersImpl.h line 56\r\n0x40100ec2: pp_post at ?? line ?\r\n0x40240000: ieee80211_send_action_vendor_spec at ?? line ?\r\n0x40210000: ESP8266WebServer::handleClient() at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\libraries\\ESP8266WebServer\\src\\detail/RequestHandlersImpl.h line 56\r\n0x40240000: ieee80211_send_action_vendor_spec at ?? line ?\r\n0x40240000: ieee80211_send_action_vendor_spec at ?? line ?\r\n0x40240000: ieee80211_send_action_vendor_spec at ?? line ?\r\n0x40240000: ieee80211_send_action_vendor_spec at ?? line ?\r\n0x40103109: lmacProcessTXStartData at ?? line ?\r\n0x40238000: wifi_softap_start at ?? line ?\r\n0x40210000: ESP8266WebServer::handleClient() at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\libraries\\ESP8266WebServer\\src\\detail/RequestHandlersImpl.h line 56\r\n0x40245555: rijndaelEncrypt at ?? line ?\r\n0x40214c00: preloop_update_frequency() at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\cores\\esp8266/core_esp8266_main.cpp line 73\r\n0x4010070c: cont_norm at C:\\Users\\Defozo\\AppData\\Local\\Arduino15\\packages\\esp8266\\hardware\\esp8266\\2.4.0-rc1\\cores\\esp8266/cont.S line 109\r\n\r\n```\r\n\r\nCan it be due to lack of heap? My heap size before connecting is 26632.\r\n"},"comment":{"url":"https://api.github.com/repos/esp8266/Arduino/issues/comments/354203035","html_url":"https://github.com/esp8266/Arduino/issues/3402#issuecomment-354203035","issue_url":"https://api.github.com/repos/esp8266/Arduino/issues/3402","id":354203035,"user":{"login":"igrr","id":4349050,"avatar_url":"https://avatars2.githubusercontent.com/u/4349050?v=4","gravatar_id":"","url":"https://api.github.com/users/igrr","html_url":"https://github.com/igrr","followers_url":"https://api.github.com/users/igrr/followers","following_url":"https://api.github.com/users/igrr/following{/other_user}","gists_url":"https://api.github.com/users/igrr/gists{/gist_id}","starred_url":"https://api.github.com/users/igrr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/igrr/subscriptions","organizations_url":"https://api.github.com/users/igrr/orgs","repos_url":"https://api.github.com/users/igrr/repos","events_url":"https://api.github.com/users/igrr/events{/privacy}","received_events_url":"https://api.github.com/users/igrr/received_events","type":"User","site_admin":false},"created_at":"2017-12-28T00:26:15Z","updated_at":"2017-12-28T00:26:15Z","author_association":"MEMBER","body":"The underlying issue is tracked in https://github.com/igrr/axtls-8266/issues/32, but recent axTLS versions have lower memory footprint, so you may be able to work with 26kB of available heap before the start of TLS connection."}}
{"actor":{"display_login":"igrr"}}