nodemcu/nodemcu-firmware

`net.server:close()` throws error (dev-esp32-idf4 branch)

serg3295 opened this issue · 0 comments

Expected behavior

net.server:close() closes the server.

Actual behavior

net.server:close() throws error.

sv = net.createServer(net.TCP, 30)
> print(sv)
userdata: 0x3ffc4214
> sv:close()
Lua error: 	stdin:1: not connected
stack traceback:
	[C]: in method 'close'
	stdin:1: in main chunk
	[C]: in ?
	[C]: in ?

> function receiver(sck, data)
print(data)
local port, ip = sck:getaddr()
print( port, ip)
sck:close()
end
>
> if sv then
>> sv:listen(80, function(conn)
conn:on("receive", receiver)
conn:send("hello world\n")
end)
end

> sv:close()
Lua error: 	stdin:1: unknown error
stack traceback:
	[C]: in method 'close'
	stdin:1: in main chunk
	[C]: in ?
	[C]: in ?

> GET / HTTP/1.1
Host: 192.168.1.48
User-Agent: curl/7.81.0
Accept: application/json, */*

80	192.168.1.48
sv:close()
Lua error: 	stdin:1: unknown error
stack traceback:
	[C]: in method 'close'
	stdin:1: in main chunk
	[C]: in ?
	[C]: in ?
>

Test code

sv = net.createServer(net.TCP, 30)
print(sv)
function receiver(sck, data)
  print(data)
  local port, ip = sck:getaddr()
  print( port, ip)
  sck:close()
end

if sv then
  sv:listen(80, function(conn)
    conn:on("receive", receiver)
    conn:send("hello world\n")
  end)
end

sv:close()

NodeMCU startup banner

�[0;32mI (29) boot: ESP-IDF v4.4.2 2nd stage bootloader�[0m
�[0;32mI (29) boot: compile time 16:10:30�[0m
�[0;32mI (29) boot: chip revision: 1�[0m
�[0;32mI (32) boot_comm: chip revision: 1, min. bootloader chip revision: 0�[0m
�[0;32mI (39) boot.esp32: SPI Speed      : 40MHz�[0m
�[0;32mI (43) boot.esp32: SPI Mode       : DIO�[0m
�[0;32mI (48) boot.esp32: SPI Flash Size : 4MB�[0m
�[0;32mI (52) boot: Enabling RNG early entropy source...�[0m
�[0;32mI (58) boot: Partition Table:�[0m
�[0;32mI (61) boot: ## Label            Usage          Type ST Offset   Length�[0m
�[0;32mI (69) boot:  0 nvs              WiFi data        01 02 00009000 00006000�[0m
�[0;32mI (76) boot:  1 phy_init         RF data          01 01 0000f000 00001000�[0m
�[0;32mI (84) boot:  2 factory          factory app      00 00 00010000 00180000�[0m
�[0;32mI (91) boot:  3 lfs              unknown          c2 01 00190000 00010000�[0m
�[0;32mI (99) boot:  4 storage          Unknown data     01 82 001a0000 00070000�[0m
�[0;32mI (106) boot: End of partition table�[0m
�[0;32mI (110) boot_comm: chip revision: 1, min. application chip revision: 0�[0m
�[0;32mI (118) esp_image: segment 0: paddr=00010020 vaddr=3f400020 size=23668h (145000) map�[0m
�[0;32mI (179) esp_image: segment 1: paddr=00033690 vaddr=3ffb0000 size=03840h ( 14400) load�[0m
�[0;32mI (185) esp_image: segment 2: paddr=00036ed8 vaddr=40080000 size=09140h ( 37184) load�[0m
�[0;32mI (200) esp_image: segment 3: paddr=00040020 vaddr=400d0020 size=b81e8h (754152) map�[0m
�[0;32mI (473) esp_image: segment 4: paddr=000f8210 vaddr=40089140 size=0cdd0h ( 52688) load�[0m
�[0;32mI (495) esp_image: segment 5: paddr=00104fe8 vaddr=400c0000 size=00064h (   100) load�[0m
�[0;32mI (495) esp_image: segment 6: paddr=00105054 vaddr=50000000 size=00010h (    16) load�[0m
�[0;32mI (512) boot: Loaded app from partition at offset 0x10000�[0m
�[0;32mI (512) boot: Disabling RNG early entropy source...�[0m
�[0;32mI (524) cpu_start: Pro cpu up.�[0m
�[0;32mI (524) cpu_start: Starting app cpu, entry point is 0x4008147c�[0m
�[0;32mI (510) cpu_start: App cpu up.�[0m
�[0;32mI (540) cpu_start: Pro cpu start user code�[0m
�[0;32mI (540) cpu_start: cpu freq: 160000000�[0m
�[0;32mI (540) cpu_start: Application information:�[0m
�[0;32mI (545) cpu_start: Project name:     nodemcu�[0m
�[0;32mI (550) cpu_start: App version:      1.4.0-master_20151229-857-gcad1�[0m
�[0;32mI (557) cpu_start: Compile time:     Nov  4 2022 11:24:59�[0m
�[0;32mI (563) cpu_start: ELF file SHA256:  dab5a6a86dbe17ec...�[0m
�[0;32mI (569) cpu_start: ESP-IDF:          v4.4.2�[0m
�[0;32mI (574) heap_init: Initializing. RAM available for dynamic allocation:�[0m
�[0;32mI (581) heap_init: At 3FFAE6E0 len 00001920 (6 KiB): DRAM�[0m
�[0;32mI (587) heap_init: At 3FFB7A48 len 000285B8 (161 KiB): DRAM�[0m
�[0;32mI (593) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM�[0m
�[0;32mI (600) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM�[0m
�[0;32mI (606) heap_init: At 40095F10 len 0000A0F0 (40 KiB): IRAM�[0m
�[0;32mI (614) spi_flash: detected chip: generic�[0m
�[0;32mI (617) spi_flash: flash io: dio�[0m
�[0;32mI (622) cpu_start: Starting scheduler on PRO CPU.�[0m
�[0;32mI (0) cpu_start: Starting scheduler on APP CPU.�[0m
�[0;32mI (633) uart: queue free spaces: 3�[0m

LFS image loaded
I (753) wifi:wifi driver task: 3ffc7828, prio:23, stack:6656, core=0
�[0;32mI (753) system_api: Base MAC address is not set�[0m
�[0;32mI (753) system_api: read default base MAC address from EFUSE�[0m
I (773) wifi:wifi firmware version: eeaa27d
I (773) wifi:wifi certification version: v7.0
I (773) wifi:config NVS flash: enabled
I (783) wifi:config nano formating: disabled
I (783) wifi:Init data frame dynamic rx buffer num: 32
I (783) wifi:Init management frame dynamic rx buffer num: 32
I (793) wifi:Init management short buffer num: 32
I (793) wifi:Init dynamic tx buffer num: 32
I (803) wifi:Init static rx buffer size: 1600
I (803) wifi:Init static rx buffer num: 10
I (813) wifi:Init dynamic rx buffer num: 32
�[0;32mI (813) wifi_init: rx ba win: 6�[0m
�[0;32mI (813) wifi_init: tcpip mbox: 32�[0m
�[0;32mI (823) wifi_init: udp mbox: 6�[0m
�[0;32mI (823) wifi_init: tcp mbox: 6�[0m
�[0;32mI (823) wifi_init: tcp tx win: 5744�[0m
�[0;32mI (833) wifi_init: tcp rx win: 5744�[0m
�[0;32mI (833) wifi_init: tcp mss: 1436�[0m
�[0;32mI (843) wifi_init: WiFi IRAM OP enabled�[0m
�[0;32mI (843) wifi_init: WiFi RX IRAM OP enabled�[0m

NodeMCU ESP32 build unspecified powered by Lua 5.3.5 [5.3-int32-singlefp] on IDF v4.4.2

Hardware

ESP32 Devkitc_v4