30.0 28.04.2022

  • TCP reassemble is now more robust with many fixes
  • new configuration option sip_tcp_reassembly_stream_max_attempts (default is 10)
  • change default value of parameter sip_tcp_reassembly_stream_max_attempts to 50
  • use packet time for cleanup calls in 'read from file' mode
  • fraud alerts optimization - each fraud alert has its own queue processing [VG-2458]
  • fix port filter in live sniffer [VS-1309]
  • adding queue for dtls packets - solves problem with decryption for some cases [VS-1242]
  • fix database configuration options - 'Configuration values in mysql have a higher weight than the values in the text configuration file' [VG-2422]
  • fix ipdefrag for ESP protocol
  • fix potential crash in iphdr2::get_protocol if header contain ESP protocol
  • skip packets with invalid time
  • fix crash in parse_peername
  • fix parse phone number for cases - INVITE sip:1231234@[2231:1a1:3... [VS-1316]
  • fix potential race when splitting packets into reassembly threads
  • fix tar_move for long file (>=2GB)
  • hide cloud_token when generating debug log [VG-2474]
  • -run-droppartitions-maxdays will not delete cdr_stat and rtp_stat
  • fix database backup if source database does not contain all tables - new option option database_backup_check_src_tables [VS-1315]
  • do not set default port 5060 if not required [VG-2472]
  • fix git self update (close all descriptors before upgrade)
  • fix SIP hold/unhold detection
  • rtp hashing optimisation

29.2 02.03.2022

  • general performance optimisations for traffic with 3 000 000 RTP packets / second
  • add support for dlt DLT_LINUX_SLL2 [VS-1306]
  • fix crashes when pcap files are written in standalone pcap files - add lock to main write operations in FileZipHandler [VS-1278]
  • fix issue with IPPROTO_ESP
  • fix MGCP memory leaks [VS-1303]
  • disable reconfiguration of spooldir when processing capture rules on next invite [VS-1308]
  • fix race condition when t2_boost=no
  • fix some TLS decoding [VS-1242]
  • fix same configuration options across multiple configuration files [VS-1302]
  • fix TCP reassembly in case handshake is missing [VS-1300]

29.1.4 27.01.2022

  • disable splitting UA header by space when searching (space was OR) [VG-2429]
  • fix memory leak when sniffer configuration from web GUI was changed and reloaded (since 28.6 version) [VS-1297]
  • fix possible crash when tar=no and savertp and savesip is yes [VS-1278]

29.1.3 25.01.2022

  • fix ssl keylogger compliation [VS-1292]
  • fix rare crash [VS-1293]
  • fix issue in report logger [VG-2437]
  • support host:port in parameter --mysql-server [VG-2426]
  • fix rare case "RTP strem used in another call" [VS-1291]
  • in billing feature destination IP was taken from the first INVITE and not the one in case of multiple INVITEs [VG-2439]

29.1.2 13.01.2022

  • fix 29.1.1 static builds crashing

29.1.1 13.01.2022

  • fix rare crash
  • speed optimisations in memory allocations
  • modify peername parsing if the peername contains multiple entries and the tag also contains domain (sip:+123;npdi;rn=+123@example.com;user=phone SIP/2.0) [VS-1287]

29.1 20.12.2021

  • duration and connect duration is now counted up to confirmed BUY ignoring further RTP or other packets in a call. It can be changed by setting new option ignore_duration_after_bye_confirmed = no [VS-1266]
  • fix destination_number_mode=1 for some cases [VS-1264]
  • implemented moving closed tar files to another folder - new options tar_move* [VG-2359]
  • fix parsing t2_boost_pb_detach_thread
  • set thread to maximum priority when t2_boost_pb_detach_thread is enabled
  • in case of multi call invite set SIP domain destination to the right one [VS-1268]
  • performance optimisation for dpdk
  • custom_headers_max_size is now configurable [VS-1281]
  • fix utf parsing when reading pcap file - Illegal mix of collations [VS-1285]
  • fix unsafe timeout conditions in cleanup functions for client-server (fixes 29.0 version) [VS-1285]
  • fix mirroring: exclude sent packets to server from monitored traffic [VS-1286]

29.0 16.11.2021

  • experimental DPDK implementation documented here https://www.voipmonitor.org/doc/DPDK
  • enable t2_boost=yes in default configuration
  • implemented aggregated hour trends [VG-2304]
  • store time between first INVITE and TRYING into DB column response_time_100 [VG-2384]
  • added support for ether type 0x8926 [VS-1258]
  • new manager command listopentars
  • ss7_use_sam_subsequent_number is now yes by default
  • added CURL WAV convert end hook
  • added anonymisation of the sipdomain when exporting cdrs [VG-2355]
  • send call information: added support for json request, added support for send first or all matching packets, added send packet time [VG-2352]
  • added new parameter storing_cdr_maximum_cdr_per_iteration (default is 50000)
  • automate SQL compression selection when creating tables based on mysql / mariadb version [VG-2381]
  • fix tcp reassembly with multiple CR LF at end of sip data [VS-1254]
  • fix crash in ssl3_init_handshake_digests (dssl) if cipher suite is unknown [VS-1243]
  • fix packetization when creating audio - enable via new option fix_packetization_in_create_audio = yes (default is NO) [VG-2354]
  • fix issue with next invite with reponse 481 after confirmed bye [VS-1233]
  • fix i686 issue in filter_mysql
  • fix call cleanup_calls for scanpcapdir [VS-1248]
  • fix CDR storing - quicker thread creation, added number of calls in save threads
  • fix memory consumption when the disk buffer is full [VS-1231]
  • adjustment of time comparison in mirror client server mode which fixes timezone half hour offset [VS-1168]
  • adding locking in configuration maps which prevents crashing in some scenarios [VS-1222]
  • fix rtp stream analysis export for 'RTP stream analysis' in GUI - export original rtp.seq from packets
  • create cdr_rtp table with columns sport and dport
  • fix cleanup calls for client/server mode if client runnig with scanpcapdir option [VS-1254]
  • rebuild call and registration cleanup when time-inconsistent packet flows occurs - packet flows with old packets can be sent to the server from clients when the server is unavailable to the client and the client sends old packets for processing
  • multinvite calls - treated as cancelled number for all response 4xx (originally only for response 404)
  • fix problem with call durations in GUI active calls section [VS-1261] [VS-1262]
  • fix dssl library issue when failed session_id and key sent from keylogger, fix fragmented handshake in dtls, fix multiple crypto-suite in dtls [VS-1242]
  • adding the ability to decrypt tls_1.2 with a keylogger using wireshark decryption routines - enable by new option ssl_tls_12_sessionkey_mode = ws (default is dssl) [VS-1260]
  • adjust key receive timeout in dtls [VS-1242]
  • enable ssl initialization for dtls without setting ssl_ipport options [VS-1239]

28.8 17.08.2021

  • improved conditions for detecting one-way calls in case INVITE is passing A->B->C without any response from C [VS-1223]
  • fix problem with creating duplicate partitions for tables containing custom headers [VS-1213]
  • fix creating old partitions for custom headers tables in migration instance [VS_1230]
  • new option t2_boost_pb_detach_thread (default no) which splits load in packet buffer thread (needed for very high traffic >= 2500Mbit calls >= 30000) - this option has trade off + 1 CPU core.
  • ssl key logger option WRITE_THREAD 1/0, fix crash if ssl returns NULL key
  • reset RTP timeout (rtptimeout timer option) if RTCP packets arrive [VS-1234]
  • ssl reassembly fix - better solution for the rest of the data from previous reassembly results, fix dtls header parsing with extended protection profile content [VS-1216]
  • ignore extra trailing \r\n in sip data lenght verification in TCP reassembly (any SIP TCP with extra \r\n were ignored) [VS-1236]
  • disallow ipfix options if sniffer is configured to mirror packets
  • fix mysql_enable_new_store = per_query for custom headers and billing

28.7 26.07.2021

  • support for ipfix tunneling (ACME / ORACLE SBC mirroring) [VS-133]
  • support for '487 session canceled' in 'fraud sequential' alert
  • fix SSL keylogger which was not working if the program (kamailio / etc.) was forking
  • fix SSL keylogger compilation on Ubuntu

28.6 15.07.2021

  • fix crashes when handling 3XX SIP responses for calls which includes RTP streams (all verions) [VS-1214]
  • add digestrealm column to the register_state/_failed tables [VG-1875]
  • fix content line separator: LF (\n) - fixes parsing l: tag [VS-1207]
  • ssl keylogger - fix Makefile for 'make with_tcp' (debian 10 issue) [VS-1212]
  • fix rtcp_mux for rtps

28.5 29.06.2021

  • add support for ESP transport encapsulation
  • send call - implement authentification [VG-2309]
  • dtls 1.3 fix problem with the webrtc fragment length, fix fingerprint problem in sdp [

28.4.1 24.06.2021

  • fix crash when incorrect content is in dtls packet [VS-1202]

28.4 22.06.2021

  • DTLS RTP decryption support (needs keylogger) [VS-1202]
  • allow to run autocleanmingb / autocleanspoolminpercent outside cleanspool_enable_fromto option [VS-1183]
  • implement mrcp saving to pcap [VS-1167]

28.3 09.06.2021

  • fix race condition leading to crash (when SIP compression was changed to LZO the race occured more often silently corrupting heap)
  • ss7: use isup.subsequent_number for extend called number (if new configuration value "ss7_use_sam_subsequent_number" set to "yes") [VS-1188]
  • fix crash for some callerid when t2_boost_enable_call_find_threads is enabled
  • adding support for custom headers without automatically added trailing colon [VS-1204]

28.2 26.05.2021

  • fix rare random crashes in TCP reassembler introduced in 28.0
  • fix crash if sdp_multiplication=0
  • fix issue with caplen and snaplen when loading pcap with -r [VS-1199]
  • increase SIP processing threads to 4 and optimise first thread

28.1 06.05.2021

  • First line in SIP message (INVITE etc.) can be used in custom headers [VS-550] [VS-615] - use header field invite
  • fix race condition leading to crash for 3XX SIP calls

28.0 04.05.2021

  • automatically split "d" thread in t2cpu threads which is responsible for packet classifications - now it is possible to process >5Gbit traffic on slower GHZ CPUs.
  • automatically split "s" thread in t2cpu threads which parses SIP packets - now extreme SIP packet rate is possible on slower GHZ CPUs
  • speed optimisations in t2cpu threads (less memory copying)
  • add support for anonymization ip in pcap [VG-2281]
  • fix crash in jitterbuffer if packetization == 1 [VS-1186]
  • ignore process error for attempt to decrypt data without data-remaing from previous pass
  • add new option ssl_unlimited_reassembly_attempts (yes/NO) for enable unlimited attempts for reassembly if next packet with the same tcp.ack arrived
  • add support for crypto suites AES_CM_256_HMAC_SHA1_80, AES_CM_256_HMAC_SHA1_32 in srtp decode
  • allow comment # in voipmonitor.conf at the end of value [VS-1195]
  • fix crash when refreshing fraud in case option for storing pcap is enabled [VS-1189]

27.8 06.04.2021

  • fix issue with synchronizing very slow and fast traffic across multiple interfaces [VS-1177]
  • fix cases where MOS 50ms jitterbuffer was low when it should not be [VS-1178]
  • fix peername parse from header with tel: prefix [VS-1181]
  • tls/ssl: fix decrypting multiple handshake messages, added support for session ticket (restore master key from previous session)), new option ssl_ignore_error_bad_finished_digest (default yes) [VS-1179]

27.7.4 10.03.2021

  • fix interface = any and convert_dlt_sll2en10 option for SS7 pcap files

27.7.3 05.03.2021

  • fix name 'realm' json variable when filtering SIP REGISTER in active registration table [VG-2286]
  • add support for multi-sensor select in filters: registers, options/subscribe/notify [VG-2277]

27.7.2 02.03.2021

  • fix memory increase for hot_restart manager command [VS-1175]
  • fix memory leak in options/subscribe/notify [VS-1175]
  • add support for space separator in load ip and number groups
  • fix lock issue for fraud_refresh manager command

27.7.1 23.02.2021

  • fix race condition in SIP REGISTER which can lead to exhaust all memory [VS-1173]
  • fix sip history sql store for request/response SIP messages

27.7 18.02.2021

  • add support for ss7/rudp (ss7_rudp_port = 7000)

27.6.1 16.02.2021

  • fix syslog spam in cloud version [VS-1171]

27.6 15.02.2021

  • fix buffer overflow in memcpy which can lead to remote code execution when live sniffer is enabled through GUI (credit to Sandro Gauci)
  • add support for Sonus STP SS7 stream [VS-1160]
  • client/server - fix situation when server/client has different time which leads to use all memory in buffers [VS-1161]
  • fix saveaudio_answeronly = yes for some cases [VS-1139]
  • fix counting RTPC as RTP at the beginning of a call [VS-1117]
  • ssl key logger - new define option 'DEBUG_TO_SYSLOG'
  • new options livesniffer_timeout_s (default 0 [s]) and livesniffer_tablesize_max_mb (default 0 [MB]) [VS-2243]
  • new options for OPTION, NOTIFY, SUBSCRIBE which controls how those messages are paired -- sip-msg-compare-ip-src (YES/no)- sip-msg-compare-ip-dst (YES/no) - sip-msg-compare-port-src (YES/no) - sip-msg-compare-port-dst (yes/NO) - sip-msg-compare-number-src (YES/no) - sip-msg-compare-number-dst (YES/no)- sip-msg-compare-domain-src (YES/no)- sip-msg-compare-domain-dst (YES/no) [VG-2271]
  • fix ssl keyloger (missing pthread.h on some systems) [VS-1131]
  • add option database_backup_to_date (see voipmonitor.conf) [VS-1162]

27.5 21.01.2021

  • video support - saving video RTP to pcap, new savertp_video = NO/yes/hdear/cdr_only [VS-312]
  • add new alert 'concurrent calls drop' [VG-2229]
  • fix memory/packetbuffer leak if call contains invite and message and if exists multiple rd threads

27.4 30.12.2020

  • added capture rules for sip options/subscribe/notify [VS-919]

27.3 18.12.2020

  • implemented hourly partition options instead of per day (for extreme CDR rate >= 15000)
  • fix RTP restore for some corner cases [VS-1147]
  • implemented hour partitions
  • implemented storing ip for IPinIP and GRE encapsulation (save_ip_from_encaps_ipheader: yes/NO, save_ip_from_encaps_ipheader_only_gre: yes/NO) [VS-1120]
  • exclude call from active calls and CDR if content type is application/csta+xml (can be reenabled by enable_content_type_application_csta_xml option) [VS-1148]
  • add support for multiple block in dump_rtcp_xr (fixes empty MOS-LQ) [VS-1153]

27.2.2 01.12.2020

  • fix memory leak when fraud queue is fulll [VS-1141]
  • fix FAX T.38 decode for some cases [VG-2226]

27.2.1 23.11.2020

  • Added support for G726-16,24,32,40 and AAL2-G726-16,24,32,40 audio decoding

27.2 03.11.2020

  • add wireshark version fo the RTCP calculation [VS-920]
  • add utf check to listcalls and listregister [VG-2193]
  • fix destination_number_mode=1 and update_dstnum_onanswer=yes dst number was from URI instead of To header [VS-1119]
  • add support for store/restore tls sessions for DH/TLS 1.3
  • add support for encrypted key transfer in ssl key logger
  • fix crash when new configuration was applied from gui (in client/server mode) [VS-1126]
  • fix audio resample - suppress resampling in cWavMix for PCMA/PCMU (resampling PCMA/U is done in function convertALAW2WAV/convertULAW2WAV) [VS-1129]

27.1.1 15.10.2020

  • use ipv4 for cloud connect and use ipv6 only if ipv4 is not resolved by DNS

27.1 14.10.2020

  • implement roundtrip (end to end) delay calculation from RTCP packets (not all RTCP has information for it) [VS-920]
  • TLS: implemnt 32bytes client-random secret
  • WEBRTC: fix webrtc parser which ignored half of packets in some cases [VS-1121]
  • increase number of possible RTP streams in a call (was limited to 30) [VS-1115]
  • fix IP proxy detection for multibranch calls [VS-1118]
  • fix long Call-ID string in tar.gz [VS-1116]

27.0.2 22.09.2020

  • ssl key logger is now compatible with >= 1.0.1 ssl versions (tested 1.0.1, 1.1.0 and 1.1.1)

27.0.1 22.09.2020

  • fix 100% CPU regression in 27.0 version

27.0 21.09.2020

  • added support for TLS 1.3 [VS-1101]
  • new SIP decryption method with voipmonitor sslkey logger using LD_PRELOAD injecting SSL functions in openssl (decryption is possible with any SIP proxy and any TLS and CIPHER suits) - http://www.voipmonitor.org/doc/Tls
  • modify SQL distribution in multiple threads (fixingf extreme SQL insert rates >= 60000 CDR / second)

26.22 03.09.2020

  • fas detection will now recognize Europe and UK ringing tones [VS-878]
  • fix compilation with LIBMYSQL_VERSION_ID >= 80000
  • modify condition checking if packet is RTCP (some RTCP packets were not recognised) [VS-1109]
  • suppress duplicate TCP SIP REGISTER packet via check tcp-seq which fixes failed REGISTER (after successfull register) [VS-1108]
  • change cps_avg and cps_min calculation for small traffic (now use complete interval with seconds without calls)

26.21.2 03.09.2020

  • fix energy levels in jitter buffer (out of sync)
  • when DNS returns ipv4 and ipv6 try to connect to ipv6 too (fixes ipv6 sniffer connection by DNS hostname) [VS-1105]

26.21.1 28.08.2020

  • analyze energy levels after jitter buffer, fix basic energy levels calculation if jitter buffer will be disabled [VG-2169]

26.21 27.08.2020

  • added support for kamailio siptrace mirroring to the voipmonitor (see kamailio_* options) - this feature is mainly for encrypted traffic as unencrypted traffic can be sniffed directly by the voipmonitor [VS-952]
  • fix missing RTP streams if IP address is different than in SDP (in certain private/public NAT scenario) VS-1106
  • fix memory allocation issue in check_sip if websocket data is invalid [VS-1102]
  • add more option to sip-options/subscribe/notify to allow only active (in-memory) information (avoiding pulling data into database) - (nodb option) or allowing avoid pcap files but still having them in DB [VS-1103]
  • change default value for option ssl_store_sessions from 'memory' to 'persistent' which allows to decrypt stored SSL sessions after sniffer restarts

26.20 12.08.2020

  • add support ipv6 to configuration options natalias, sdp_ignore_ip_port, ssl_ipport) [VS-1092]
  • new save-energylevels feature (see voipmonitor.conf) [VG-2169]
  • support for user restriction in alerts [VG-1266]
  • add support for regular expression in group of numbers example - R(12[34].*) [VG-2161]
  • new option icmp_process_data enables searching for SIP data in the ICMP type 3 [VS-1091]
  • SIP REGISTER behaviour change - from this version SIP REGISTER are compared by number and domain part from Contact header (to change to old behaviour set sip-register-state-compare-contact_num = no, sip-register-state-compare-contact_domain = no [VS-1099] [VS-1100]
  • fix cp behavior with --no-user-input parameter [VS-1093]
  • fix gcc 10
  • fix ip dst filter in options/subscribe/notify [VG-2165]
  • fix memory leak (one per thread) in conv_tz (active calls in GUI) [VS-1094]
  • document mirror_require_confirmation

26.19 21.07.2020

  • fix sending SIP packets in packetbuffer_sender=yes to some other instance for low SIP traffic [VS-1083]
  • fix large TLS INVITE packets [VS-1087]
  • fix sip overlap when both caller=A callee=A [VS-1085]
  • fix G711 codec instead of opus for calls which contains video (ignore m=video) [VS-1088]
  • reenable warning when capturing (interface=any) and packets have different DLT size (with suggestion to use convert_dlt_sll2en10 = yes) [VS-1086]
  • do not insert sensor and active calls when loading pcap from file [VS-1089]
  • store audio/image/video flag in CDR (video calls will be possible to filter now) [VS-559]
  • new mirror_require_confirmation option which is recommended to disable on high traffic throughput
  • new multiple service connections between client and server (increses connection performance)
  • fix memory leak in queue between database server and chart cache server (if queue is full)
  • fix cGzip::decompress
  • fix loading pcap with verbose option -v,process_rtp_header if pcap contains variable packetization and packets were saved with rtpsave=header [VS-1090]
  • fix AMR-WB decoder [VS-487]

26.18 03.07.2020

  • Support for billing recalculation [VG-2019]
  • Fix bug in packet mirroring client/server - time difference error could be wrong filling up all heap buffer

26.17.1 26.06.2020

  • fix client / server connection (extend rsa key length for service connection to 4096), force close connection if failed, fix typo 'sesnor' [VS-1081]
  • adjust conditions for the swap checking.

26.17 24.06.2020

  • change xPDV calculation so it will show median PDV now [VG-2115]
  • new options for client/server packet mirroring: mirror_connect_maximum_time_diff_s, client_server_connect_maximum_time_diff_s, receive_packetbuffer_maximum_time_diff_s [VS-1075]
  • log (syslog and GUI) 'Critical low disk space in spool' [VS-836]
  • log (syslog and GUI) if sniffer detects 'insufficient allocable RAM' before it crashes [VG-2084]
  • fix sensor upgrade in IPv6-only system. Now we try all ip addresses returned from DNS when downloading [VS-1072]
  • fix issue with non-ascii and utf characters like user agent and last sip response etc (only in mysql_enable_set_id mode)
  • do not cut STUN and DTLS RTP packets for rtpsave=header
  • fix check configuration values between mysql and default config [VG-2128]
  • fix uploading pcap without RTP payload (if rtpsave=header pcap was stored and reuploaded via sniffer/GUI) [VS-1076]
  • fix default mysql ssl values
  • fix set default values of mysql ssl parameters
  • add measure preventing overload packetbuffer in mirror receiver mode
  • add support for tcmalloc heap profiler
  • enable processing PcapQueue::pcapStat without verbose (-v1) [VS-1078]
  • break client/server connection when there are too much errors
  • add more debug information for dssl

26.16 26.05.2020

  • amr wb support [VS-487]
  • fix long calls ogg download [VG-2111]
  • fix pcap upload in client/server mode [VG-2109]
  • apply all capture rule types in new invite [VS-1071]
  • fix db compatibility in various client/server modes
  • fix backup / migration db when some tables do not exist [VS-1067]
  • new option ignore_rtp_after_auth_failed (default yes) [VS-1067]
  • simplify json input - now it can be used --json_config='[{"id_sensor":"11"}]' instead of --json_config='[{"name":"id_sensor","value":"11","set":1}]'
  • fix crash in SDP processing if data are garbled [VS-1063]
  • new way to load capture rules from csv - capture_rules_sip_header_file = capturerules_sip_header.csv
  • revert primary index of cdr to ID, calldate (change was sent by mistake)

26.15 20.04.2020

  • fix saveaudio = ogg (add missing fclose) [VS-1065]
  • adjust error log for missingn ethtool [VS-1057]
  • fix new voipmonitor instance did not killed old watchdog script

26.14 20.04.2020

  • Increase RRDs limit for packets count all/RTP to 100000000
  • do not add packet loss (and do not lower MOS score) in cases when there is >500ms RTP gap with missing MARK bit but timestamp difference is within range <10ms which is valid silence or gap [VS-1038] [VS-1051]
  • Added support for RFC1483 (LLC-encapsulated ATM) link-layer type
  • set rx queue and coalesce rx-usecs on sniffing interfaces with ethtool utility (option interfaces_optimize default is yes) [VS-1057]
  • send warning when sniffer is swapped [VG-2088]
  • fix crash when compiled with wireshark for SS7 support [VS-1061]
  • fix crash when downloading audio from GUI [VS-1060]
  • fix empty active calls for some cases [VG-2090]
  • fix bad headers error (when in nonstandard configuration) in client-server mode [VS-1050]
  • fix capture reloading in client-server if ipv6 is enabled [VG-2087]

26.13 20.03.2020

  • fix missing RTP in caller or called for some cases [VS-1053]
  • add samplerate convert (if need) to cWavMix (create audio) [VS-1049]
  • voipmonitor --dedup-pcap='SRC.pcap DST.pcap' [VG-1816]
  • removing unnecessary calls system(cmd) from convertRawToWav [VS-1044]
  • fix audio mixing (broken in 26.12)