Closed laurfb closed 8 months ago
Hi. Minor error - memory leak in checking config srs file (with -t -c options) from srs_protocol_utility.cpp. SRS vesion - 6.0.75(Bee), running in docker (v4.22.1, 4GB memory, 2 processors allocated)
Logs:
cd /usr/local/srs/objs ./srs -t -c /usr/local/srs/conf/conf_me.conf [2023-09-09 13:37:41.591][INFO][29][q04089o4] XCORE-SRS/6.0.75(Bee) [2023-09-09 13:37:41.591][INFO][29][q04089o4] config parse complete [2023-09-09 13:37:41.591][INFO][29][q04089o4] srs checking config... [2023-09-09 13:37:41.592][INFO][29][q04089o4] ips, iface[0] eth0 ipv4 0x11043 172.17.0.2 [2023-09-09 13:37:41.592][INFO][29][q04089o4] devices, intranet eth0 172.17.0.2 [2023-09-09 13:37:41.592][WARN][29][q04089o4][2] stats network use index=0, ip=172.17.0.2, ifname=eth0 [2023-09-09 13:37:41.592][WARN][29][q04089o4][2] stats disk list: sda sdb xvda xvdb [2023-09-09 13:37:41.592][INFO][29][q04089o4] write log to console [2023-09-09 13:37:41.592][INFO][29][q04089o4] the config file /usr/local/srs/conf/conf_me.conf syntax is ok [2023-09-09 13:37:41.592][INFO][29][q04089o4] config file /usr/local/srs/conf/conf_me.conf test is successful
================================================================= ==29==ERROR: LeakSanitizer: detected memory leaks
Direct leak of 72 byte(s) in 1 object(s) allocated from:
#1 0x55e401060550 in discover_network_iface(ifaddrs*, std::vector<SrsIPAddress*, std::allocator<SrsIPAddress*> >&, std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >&, bool, bool) src/protocol/srs_protocol_utility.cpp:702 #2 0x55e401061220 in retrieve_local_ips() src/protocol/srs_protocol_utility.cpp:759 #3 0x55e401061cea in srs_get_local_ips() src/protocol/srs_protocol_utility.cpp:816 #4 0x55e4011eda51 in SrsConfig::check_normal_config() src/app/srs_app_config.cpp:2424 #5 0x55e4011ea9db in SrsConfig::check_config() src/app/srs_app_config.cpp:2241 #6 0x55e4011e5d3e in SrsConfig::parse_options(int, char**) src/app/srs_app_config.cpp:1909 #7 0x55e40157c1f0 in do_main(int, char**, char**) src/main/srs_main_server.cpp:142 #8 0x55e40157cfd7 in main src/main/srs_main_server.cpp:256 #9 0x7f2a0febea8f (/lib/x86_64-linux-gnu/libc.so.6+0x23a8f)
SUMMARY: AddressSanitizer: 72 byte(s) leaked in 1 allocation(s).
conf_me.conf file
listen 1935; max_connections 1000; daemon off; srs_log_tank console;
http_api { enabled on; listen 1985; crossdomain on;
https { enabled on; listen 1990; key ./conf/server.key; cert ./conf/server.crt; }
}
http_server { enabled on; listen 8080; crossdomain on; dir ./objs/nginx/html; https { enabled on; listen 8088; key ./conf/server.key; cert ./conf/server.crt; } }
srt_server { enabled on; listen 10080; connect_timeout 1000; #4000; latency 250; tsbpdmode on; tlpktdrop on; sendbuf 2000000; recvbuf 2000000; }
rtc_server { enabled off; listen 8000; # UDP port candidate $CANDIDATE; }
vhost defaultVhost { srt { enabled on; srt_to_rtmp off; }
hls { enabled off; hls_fragment 0.2; hls_window 2; hls_wait_keyframe off; hls_path ./objs/nginx/html; hls_m3u8_file [app]/[stream].m3u8; hls_ts_file [app]/[stream]-[seq].ts; } rtc { enabled off; #nack on; #twcc on; #stun_timeout 30; #dtls_role passive; #rtmp_to_rtc on; rtc_to_rtmp on; } http_remux { #enabled on; #mount [vhost]/[app]/[stream].flv; #mount [vhost]/[app]/[stream].m3u8; #mount [vhost]/[app]/[stream].ts; } play { gop_cache on; queue_length 10; mw_latency 250; #mr_latency 250; mw_msgs 4; } publish { mr off; }
stats { network 0; disk sda sdb xvda xvdb; }
regards, Laur
Hi. Minor error - memory leak in checking config srs file (with -t -c options) from srs_protocol_utility.cpp. SRS vesion - 6.0.75(Bee), running in docker (v4.22.1, 4GB memory, 2 processors allocated)
Logs:
cd /usr/local/srs/objs ./srs -t -c /usr/local/srs/conf/conf_me.conf [2023-09-09 13:37:41.591][INFO][29][q04089o4] XCORE-SRS/6.0.75(Bee) [2023-09-09 13:37:41.591][INFO][29][q04089o4] config parse complete [2023-09-09 13:37:41.591][INFO][29][q04089o4] srs checking config... [2023-09-09 13:37:41.592][INFO][29][q04089o4] ips, iface[0] eth0 ipv4 0x11043 172.17.0.2 [2023-09-09 13:37:41.592][INFO][29][q04089o4] devices, intranet eth0 172.17.0.2 [2023-09-09 13:37:41.592][WARN][29][q04089o4][2] stats network use index=0, ip=172.17.0.2, ifname=eth0 [2023-09-09 13:37:41.592][WARN][29][q04089o4][2] stats disk list: sda sdb xvda xvdb [2023-09-09 13:37:41.592][INFO][29][q04089o4] write log to console [2023-09-09 13:37:41.592][INFO][29][q04089o4] the config file /usr/local/srs/conf/conf_me.conf syntax is ok [2023-09-09 13:37:41.592][INFO][29][q04089o4] config file /usr/local/srs/conf/conf_me.conf test is successful
================================================================= ==29==ERROR: LeakSanitizer: detected memory leaks
Direct leak of 72 byte(s) in 1 object(s) allocated from:
0 0x55e400e80c87 in operator new(unsigned long) (/usr/local/srs/objs/srs+0x4d3c87)
SUMMARY: AddressSanitizer: 72 byte(s) leaked in 1 allocation(s).
conf_me.conf file
listen 1935; max_connections 1000; daemon off; srs_log_tank console;
srs_log_level info;
http_api { enabled on; listen 1985; crossdomain on;
}
http_server { enabled on; listen 8080; crossdomain on; dir ./objs/nginx/html; https { enabled on; listen 8088; key ./conf/server.key; cert ./conf/server.crt; } }
srt_server { enabled on; listen 10080; connect_timeout 1000; #4000; latency 250; tsbpdmode on; tlpktdrop on; sendbuf 2000000; recvbuf 2000000; }
rtc_server { enabled off; listen 8000; # UDP port candidate $CANDIDATE; }
vhost defaultVhost { srt { enabled on; srt_to_rtmp off; }
}
stats { network 0; disk sda sdb xvda xvdb; }
regards, Laur