-
Notifications
You must be signed in to change notification settings - Fork 119
Expand file tree
/
Copy pathChangeLog
More file actions
5644 lines (4311 loc) · 285 KB
/
ChangeLog
File metadata and controls
5644 lines (4311 loc) · 285 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
2026.03.1 11.03.2026
====================
- Fix crash when both save_sip_history and enable_premature_response are enabled
2026.03.0 10.03.2026
====================
- Add support for processing SIP responses that arrive before INVITE due to mirroring issues; create placeholder call, queue premature responses and replay them once the actual INVITE arrives. Enabled via new config option enable_premature_response=yes (default no) [VS-1805]
- Revision of RestartUpgrade and WDT classes - improved support for systemd, added lock for restart/upgrade process manager [VS-1821]
- Add info about country (IP/number) to the registers [VS-1815]
- Add support for new filter dialog for active calls [VG-2951]
- Allow control the saving of the SIP by headers inside next SIP packets [VS-1813]
- Add storage of auxiliary values for graphs for IPFIX QoS [VS-1811]
- Adding system metrics to json output of sniffer_threads command [VG-3091]
- Modification of packet buffer loading (-rpba) restrictions for SIP OPTIONS/SUBSCRIBE/NOTIFY [VS-1810]
- Lock optimization in pcap_store_queue::memoryBufferIsFull_log [VS-1819]
- Fix issue with resolver locking for valid IP addresses and localhost [VS-1816]
- Fix potential crash in SIPREC processing
- Fix potential crash in cAudioConvert
- Fix potential race condition in cross-thread CallBranch flags
- Preserve RRD option when explicitly set in JSON config during file read mode
- Log a message when loading CSV rules fails
- ARM64 support for sniffer self-upgrade
2026.02.1 09.02.2026
====================
- Fix crash in PII masking when processing registers with NULL values [VS-1807]
2026.02.0 06.02.2026
====================
- PII (Personally Identifiable Information) masking for phone numbers [VG-3080]
- When enabled (pii_enable = yes), caller and called numbers are anonymized before storing to database and in saved PCAP files
- Three masking modes: redact (character/text replacement), HMAC-SHA256 one-way hash (default), or AES-128-CTR reversible encryption
- Hash and encrypt modes use deterministic tokenization — same number always produces the same token, preserving per-number correlation and statistics
- Phone numbers are E.164-normalized before masking for consistent output
- Scope: calls, active calls, registrations (active and stored), SIP messages, livesniffer (description and PCAP), charts
- PCAP: SIP headers (Request-URI, From, To, Contact, P-Asserted-Identity, etc.) are masked directly in saved packet captures
- Configurable SIP header list (pii_sip_headers) or mask all headers (default)
- Optional caller name anonymization (pii_anonymize_callername, default yes)
- Optional SIP Authorization username anonymization (pii_anonymize_username, default yes)
- Configurable token prefixes (piih_ for hash, piie_ for encryption)
- New parameters: pii_enable, pii_masking_mode, pii_masking_secret, pii_redact_mode, pii_redact_char, pii_redact_text, pii_prefix_hash, pii_prefix_encrypt, pii_sip_headers, pii_anonymize_callername, pii_anonymize_username
2026.01.5 28.01.2026
====================
- Allow negative number values in listcalls management command [VG-2951]
- Don't set ethtool options when dpdk is used, adjust ethtool error messages [VS-1803]
- Create json output in cThreadMonitor::output
2026.01.4 25.01.2026
====================
- Disk I/O calibration now detects external I/O load before starting to ensure accurate baseline
- Load classification: IDLE (<20%) calibrates immediately, MODERATE (20-50%) waits 60s, HEAVY (>50%) waits for idle
- Auto-recalibration triggers when disk idle (<10%) for 10+ minutes if previous calibration was under load
- New status line indicators: WAIT_CALIB (waiting for idle disk), RECAL_PEND (recalibration pending)
- Before calibration status shows basic metrics: IO[U<util>|W<write>|R<read>|Q<qdepth>] WAIT_CALIB
2026.01.3 23.01.2026
====================
- Add disk I/O saturation monitoring for spool directory writes
- Automatic calibration measures disk performance (baseline latency, knee throughput, IOPS)
- Calibration profile stored in .disk_io_calibration.conf with UUID tracking for disk changes
- Syslog output format: IO[B<baseline>|L<latency>|U<util>|C<capacity>|W<write_mbs>|R<read_mbs>|Q<qdepth>|WI<write_iops>|RI<read_iops>]
- Status indicators: WARN at 80% capacity, DISK_SAT at 95% or 3x baseline latency
- New RRD graphs: Disk I/O Saturation, Disk I/O Throughput (dual Y-axis with dynamic scaling), Disk I/O Latency
- New files: disk_io_monitor.cpp, disk_io_monitor.h
- Manager commands: disk_io_calibration, disk_io_recalibrate for querying/forcing calibration
- sniffer_threads command now supports uid parameter for session-based isolation (prevents state interference between multiple GUI clients)
- sniffer_stat returns "initializing" flag when sniffer is starting up and statistics are not yet available
- Remove unsigned/signed modifiers from decimal/float/double MySQL column types [VS-1801]
- Removed parameters: hep_bind_udp, ribbonsbc_bind_udp, siprec_udp - TCP+UDP binding is now automatic [VS-1799]
2026.01.2 21.01.2026
====================
- New configuration option siprec_external_ip to specify an external IP address for SIPREC SDP responses. Useful when VoIPmonitor SIPREC server is behind NAT and needs to advertise a public IP for RTP media to reach it. Similar to Asterisk's externip functionality [VS-1798]
2026.01.1 20.01.2026
====================
- Fix deduplication when using HEP and packetbuffer_sender together [VS-1795]
- Fix deduplicate_ipheader=ip_only not working with mixed HEP and packetbuffer_sender sources
- Server now sends deduplicate_ipheader parameter to client in packetbuffer_sender mode, Previously, hash calculation mismatch between server and client caused deduplication to fail
- Workaround for older versions: set deduplicate_ipheader=ip_only on client side as well
- New debugging parameters for HEP/IPFIX timestamp handling:
- hep_use_system_time = yes/NO - use system arrival time instead of HEP packet timestamp
- ipfix_use_system_time = yes/NO - use system arrival time instead of IPFIX packet timestamp
- Useful for debugging packet timing issues when combining HEP with PCAP replay
2026.01.0 19.01.2026
====================
- fix Register Request Delay (RRDavg) alerts [VS-1785]
- load only enabled capture rules from DB [VG-3000]
- fix crash when attempting to change affinity for threads that are terminated very quickly (in combination with dpdk and client/server) [VS-1787]
- Add partition control options for Aurora DB compatibility create_new_partitions: number of partitions to create ahead (default 2), create_new_partitions_until: limit partition creation to specific date, disable_partition_operations_create: disable only partition creation, disable_partition_operations_drop: disable only partition dropping [VS-1763]
- Extended custom header functions: Packet time tracking for accurate first/last header resolution, New option to extract Nth occurrence of a header (nth_occurrence column) [VS-1789]
- Add IP/port filtering for traffic_dumper_path, New options: traffic_dumper_filter_ip, traffic_dumper_filter_port, Allows selective SIP packet capture for debugging in high-traffic environments [VS-1791]
- fix compilation on Almalinux 10.1
- fix keylogger build make with_tcp [VS-1797]
- Fix SRTP decryption breaking mid-call due to duplicate packets [VS-1794]
- Add support for filtering by IP address in cdr_proxy for user restrictions, Enables user permission rules to filter CDRs based on proxy IP addresses, Allows restricting user access to calls that passed through specific proxy IPs [VG-3068]
- modification of configuration control so that packetbuffer blocks can be forwarded from client to server during active reception of hep, ipfix, and ribbonsbc
2025.11.0 11.11.2025
====================
- Implement SIPREC server — tested with the Kamailio SIPREC client [VS-1768] - voipmonitor.org/doc/siprec
- CPU optimisations in thread processing (better throughput in extreme traffic)
- Significant CPU optimization in untar — previously slow under extreme calls-per-second
- Add support for the 'encrypt_then_mac' SSL extension to dssl ssl3_record_layer_decoder and ssl_decrypt_record — fixes private key AES128-SHA decryption [VS-1771].
- Add getservbyname and getservbyport functions to tools/dns_resolver/dns_resolver.c (used for arm64 static builds).
- Add option mosmin_f2 (YES/no) to suppress assigning mos_f2 to mosmin [VG-3049].
- Enable joint deduplication for scanned traffic and for HEP reception [VS-1774].
- Fix verbose-mode issue in process_rtp_header with G.729 packets without payload [VS-1770].
- Fix sensor names longer than 15 chars — fixes systemd script [VS-1769].
- Fix missing UDP header length recalculation during IP defragmentation of VXLAN when t2_boost = no (non-default) [VS-1778].
- Fix value -2147483648 displayed in sensor MySQL configuration [VG-3044].
2025.09.1 26.09.2025
====================
- do not set promisc mode for interface 'any'
2025.09.0 25.09.2025
====================
- added support for AEAD_AES_256_GCM encryption, completed the possibility of using libsrtp, added the srtp_decode command for testing rtp stream decryption [VS-1736]
- set mysql_redirect_cdr_queue = yes if mysql_enable_set_id = yes is enabled, use query cache if redirect queue is enabled, set mysql_redirect_cdr_queue = direct to disable it [VS-1732]
- add support for active listener to ribbonsbc data, voipmonitor.conf ribbon sbc configuration overhaul [VS-1747]
- enable ms precission for cloud mode [VS-1754]
- add support for ipfix qos [VS-1757]
- batch insert stored procedures are enabled again for MySQL >= 8.4
- new options for rtp_check_both_sides_by_sdp - strict: Verify both sides per SDP. Unverified RTP packets are temporarily allowed UNTIL at least one RTP packet in the caller/direction is successfully verified. After the first verified packet, only verified packets pass. very_strict: Verify both sides per SDP. NO unverified RTP packets are allowed to pass at any time [VS-1765] [VG-3008]
- fix memory barrier issues on ARM [VS-1737]
- fix compilation with rrd >= 1.9
- fix regexp parser CDR filter form -> number called group in report generator [VG-2903]
- do not store last sip response 1XX if there was at least >=200 sip response [VG-3020]
- ignore incorrect times from X-Siptrace-Time [VS-1750]
- reset username after save register_state (fixes wrong sip register username in some case) [VS-1758]
- update aarch64 Makefile
- fix potential race in dpdk/get_timestamp_us which fixes 1900-01-00 as a spool dir names [VS-1767]
- new dpdk option dpdk_rxq_per_thread=yes/NO
- command line sip+rtp high speed traffic generator. Run voipmonitor --sipgen for details and parameters
- add new options to ./configure: --without-curl - build without curl support, --with-dns-resolver - include internal DNS resolver, --with-systemd-subst - include substitution of missing systemd functions when building a static build without the systemd library, --with-exclude-static-libs="systemd,p11-kit"
2025.07.1 02.07.2025
====================
- skip alter for cdr.post_bye_delay if column does not exist
2025.07.0 01.07.2025
====================
- add option to suppress adapt jitterbuffer for streams where more than a limit amount of out of order states are detected, the limit is configurable using the jitterbuffer_adapt_ooo_limit parameter (example: jitterbuffer_adapt_ooo_limit=10000)
- the mysql.proc table doesn't exist anymore in latest mysq, check existance before trying to repair it [VS-1719]
- fix database backup/migration - no interface definition is needed, fix problem with the creation of register_state and register_failed tables, fix problem with multiple custom headers tables [VS-1695]
- fix pdv calculation in trends (only non-zero values were counted)
- call problems / issues are now calculated and stored on sniffer side for instant view in the GUI
- fix aarch64 compilation [VS-1721]
- add PBD (postByeDelay) metric - interval between BYE and 200 OK [VG-2955]
- change the default configuration (config/voipmonitor.conf) to enable time resolution in databases in ms
- added support for taking the 'To domain' value into account in multiple SIP REGISTER alerts [VG-3002]
- fix capture rule flags for audio saving (broken since 2025-04-02) [VS-1726]
- fix subtraction of length of rtp extended header (fixes audio conversion for some cases) [VG-3003]
- if mirror_require_confirmation is enabled and heap is >30% turn it off (fixes heap growing on higher latency networks) [VS-1729]
- fix mgcp - modification of record type detection for ignore upper/lower case [VS-1733]
- fix potential issues in udp frag (reading beyond the allocated length) if jumbo packets are fragmented and larger than snaplen or the length in the IP header is greater than the actual length
2025.05.0 20.05.2025
====================
- fix 3XX response processing - disable removal of RTP streams which caused CPU overload [VS-1701]
- modify reassembly and tls decryption in case there is a communication delay (no keep alive packets) and reassembly cancels link tracking and destroys ssl session. Allow the link to be established in both directions (not just towards the tls server). Preserving tl session data in case of its destruction [VS-1690]
- modify conditions for capturing tls keys from traffic - suppress key parsing if no upd port for keys is specified (ssl_sessionkey_udp_port) and key reception via tcp is enabled (ssl_sessionkey_bind) [VS-1702]
- shorten pcap_timeout from 1000ms to 100ms which fixes loading calls from pcap with 403 or 603 responses [VS-1697]
- implement possibility to add more MGCP ports [VS-1700]
- hep and ipfix packets are now processed through the internal packet buffers (fies CPU overloading) [VS-1708]
- write info about used protocols for SIP (udp/tcp) [VS-1221]
2025.04.4 14.04.2025
====================
- Fixed vulnerability allowing arbitrary command execution via tcp manager [VS-1698]
2025.04.3 08.04.2025
====================
- fix crash in MySqlStore::threadINotifyQFiles when read returns -1 (bug introduced in 2025.04.0)
2025.04.2 08.04.2025
====================
- fix threading_mod=1 if t2_boost=no
2025.04.1 08.04.2025
====================
- set dpdk_pkt_burst = 128 (from 32)
2025.04.0 07.04.2025
====================
- Added support for applying multiple filters on individual interfaces - interface_libpcap_filter. See doc/voipmonitor.conf for detailed explanation. This option allows to overcome ~2.2M PPS on AWS or other virtualisations without using DPDK where software interrupts is the bottleneck [VS-1683]
- DPDK: Added support for multiple RX queues. Parameter dpdk_nb_rxq now defaults to 2 - set it to 1 in case of issues.
- server_destination parameter now accepts multiple IP addresses for failover (e.g., server_destination = 1.2.3.4, 5.6.7.8) [VS-1686].
- Added support for MP3 audio format [VS-653].
- Added parameters to configure jitter buffer properties: jitterbuffer_f1_jbsize, jitterbuffer_f1_resync_threshold, jitterbuffer_f2_jbsize, jitterbuffer_f2_resync_threshold, jitterbuffer_adapt_jbsize, jitterbuffer_adapt_resync_threshold, saveaudio_jitterbuffer_jbsize, saveaudio_jitterbuffer_resync_threshold [VS-1634]
- Reduced frequency of logging the message: "packetbuffer: MEMORY IS FULL".
- Added logging for asynchronous write queue length (tacQ).
- Added source and destination IP addresses into RTCP graphs [VG-2957].
- Removed length limitation for callid during merging [VS-1684].
- Ensured maximum ID values from registration tables are read before starting interface data processing.
- new options: sql_errors_log_file and sql_errors_skip.
- Fixed potential crash in TLS when the cipher suite is not found.
- Fixed potential conflict in the declaration of the strstr function [VS-1692].
- Fixed memory leak occurring when the packet buffer block contains no valid packets (up to 20GB per week on some installations, present since version 2024.12) [VS-1691].
- Fixed string limitation when opt_callidmerge_header is encrypted and exceeds 128 bytes.
2025.02.2 17.02.2025
====================
- fix crash when creating audiograph - adding an error message handler to jpeg creation so that exit cannot be called [VS-1654]
- fix potential crash when parsing sdp if sdp data ends with "m=X", where X is one character or \0
- ipfix fixes (stream stucked occasianlly) [VS-1682]
2025.02.1 12.02.2025
====================
- fix pcap deduplication command line --dedup-pcap [VG-2935]
- fix crash when creating audiograph (save_audiograph is enabled aither in .conf or capture ruels) for very short RTP streams [VS-1654]
2025.02.0 03.02.2025
====================
- fix zstd decompress which fixes CDR transmission from client server configuraiton
- treat a=inactive in SDP as HOLD event as well as a=sendonly [VS-1311]
2025.01.0 29.01.2025
====================
- add support for server_type_compress=zstd [VS-1503]
- adding option audiograph_fftw_fork_mode = NO/yes (if enabled, fftw functions will be used in fork mode; this prevents the sniffer from crashing if something in the fftw library fails)
- add support for Ribbon SBC monitoring profiles [VS-1649]
- redesign packet_flags structure to resolve possible conflict between sip and rtp ports in t2_boost=high_traffic mode
- enable SO_KEEPALIVE flag when sniffer makes TCP connection (keylogger, sniffer->sniffer etc.)
2024.12.0 17.12.2024
====================
- fix missing RTP packets caused by SIP/SDP Packet Handling at Higher Traffic Rates: Previously, when t2_boost = yes (default setting), VoIPmonitor relied on the block of packets filling up quickly to trigger processing. For traffic rates below 200 Mb/s, an additional delay detection mechanism ensured blocks with a time difference exceeding 100ms between the first and last packet would be forwarded to the next thread. At higher traffic rates (>200 Mb/s), this delay detection was disabled, as it was assumed blocks would fill quickly. However, under certain conditions (e.g., low SIP traffic between threads), SIP/SDP packets could be delayed, causing RTP packets to be processed before the corresponding SIP/SDP packets. [VS-1669]
- add parameter sql_log_all_errors (overrides error log suppression)
- suppress the use of autocleanmingb if the disk size is smaller than this parameter
- suppress log entry 'Critical low disk space in spool...' if _maxpoolsize_autoclean is greater than the used space
- fix function SqlDb_mysql::getInsertId for client/server and cloud mode (fixes Configuration values in mysql have a higher weight) [VG-2911]
- pb thread optimisation in case voipmonitor is sniffing from multiple interfaces or is in receiver mode.
- use time in ms in active calls and registrations if there are cdr/register calldate columns for ms and even if the option time_precision_in_ms=yes is not specified
2024.11.2 02.12.2024
====================
- fix mirror receiver crash if mirror sender disconnects
- add dpdk parameter dpdk_mtu [VS-1665]
2024.11.1 27.11.2024
====================
- fix cleanup calls in t2_boost=no [VS-1664]
- fix srtp: completing the srtp key to the correct length, adding the srtp_use_all_keys (NO/yes) parameter to force the application of all known keys from all directions [VS-1661]
- limiting the number of attempts when creating a test table to verify compression algorithms in mariadb [VS-1660]
2024.11.0 25.11.2024
====================
- increase SIP processing by optimization of sip process split between threads (callid search and call packet processing), reduce locking [VS-1651]
- increase RTP processing by thread optimisations:
- optimization of packetbuffer output threads, decomposition of detach2 thread into main thread and subthreads [VS-1652]
- decomposition of defrag thread into main thread and subthreads [VS-1652]
- optimise distribution of t2 threads to subthreads
- fix potential crash in adjustSipResponse if set cdr_sip_response_number_max_length [VS-1655]
- fix issue with parse spd if media record contains zero port [VS-1648]
- automatic change of row_format parameter to dynamic if alter table fails with error ER_TOO_BIG_ROWSIZE (1118) [VG-2827]
- rcc fraud alert - 'time period rules' table - apply new gui checkbox to specify whether to convert time zone to gui time [VG-2898]
- add support for Cisco FabricPath [VS-1650]
- add CDR filtering by TCP/UDP/both protocol [VS-1609]
- fix creating sipcallerip_encaps column when creating new db [VS-1653]
- add parameter server_cp_store_simple_connect_response = yes/NO for enforce compatibility in client/server mode between the new server and the extremely old client [VG-2908]
- application of the cdr_force_primary_index_in_all_tables parameter to the cdr_stat_values and cdr_stat_sources tables [VS-1656]
- fix potential crashses when voipmonitor terminates
- extension of TcpReassembly::cleanup_simple to clean up infinite streams (applied when new option sip_tcp_reassembly_stream_max_length is set) [VS-1662]
2024.10.2 22.10.2024
====================
- better detection of rtp/audiograf using CDR.flags
- add multithread support without locks for fftw - can be enabled with audiograph_fftw_multithread_mode = yes
- dpdk: fix undefined reference to `rte_vdev_init'
- add option to allow write empty header's value if header is missing in first packet and is present in next packets [VG-2175]
- fix data availability detection in chunkbuffer if internal compression is enabled (tar_internalcompress_...) [VS-1642]
- add parameter dpdk_nb_mbufs_strictly=yes/NO to suppress the increase of the specified number of mbufs by a multiple of 1024
- fix potential crash in restart sensor in client mode
- allow to use %_ wildcards in conditions for numbers in fraud alerts [VG-1724]
- rcc fraud alert - time period rules table - apply new gui checkbox to specify whether to convert time zone to gui time [VG-2898]
2024.10.1 02.10.2024
====================
- fix crash when there are multiple c threads spawn (broken since 2024.08
- fix crashes in fftw library [VS-1639]
- fix compatibility with wireshark >= 4.2.3
- dpdk: detection of binding of interfaces and numa nodes, automatic creation of necessary hugepages, automatic assignment of rte threads to cpu cores
- add manager command for modify ssl_ipport - lock optimisations [VG-2866]
- adding values for displaying mos/jitter/loss items to active calls in gui [VG-2871]
- add manager command for modify ssl_ipport list,set,add,del which allows to change ssl_ipport without sniffer restart [VG-2866]
2024.09.4 20.9.2024
===================
- set usleep_minimal to 50us when vmware is detected (lowers CPU usage signifficantly)
- change default values for dpdk_read_thread and dpdk_worker_thread parameters from 'std' to 'rte'
- fix crashes in fftw library (initialization for multithreads use)
2024.09.3 18.9.2024
===================
- implement separate audio graphs files to spool/.../AUDIOGRAPH/ (spectrogram + wave) which allows to show it in GUI without needs to store RTP packets. New opeionts save_audiograph, audiograph*, maxpoolaudiographsize, maxpoolaudiographdays [VG-2874]
- fix race in transcribe calls
- fix potential stack overflow in sRtcpXrStreams::findAB
- adding buffer overflow protection for hep data [VG-2882]
2024.09.2 10.9.2024
===================
- fix 2024.09.1 crashing when SIP REGISTER stora to pcap is enabled
2024.09.1 04.9.2024
===================
- add support for call information / sip history in active calls
- fixed-jitterbuffer modification - add skew tracking to evaluate whether to drop or resync in resync_jb function [VS-1627]
- use rtpc_xr even when there are no rtp streams [VS-552]
- use rtpc sr / rr even if there are no rtp streams [VS-1608]
- process the custom headers before send call info processes first invite [VG-2108]
- allow specifying a replace pattern as part of a regular expression in the custom header definition [VS-1623]
- add user agent into send call info [VS-1476]
- allow nodb value in sip-register option [VS-1289]
- add missing sip_msg custom header refresh when processing manager command custom_headers_refresh [VG-2859]
- fix saving time in custom header tables for option/notify/subscribe if saving times in ms is enabled (fix detecting presence of column for ms) [VG-2859]
- fix sip dst ip detection if there are reverse in-dialog invites with port change
- add nat alias to capture rules [VS-1624]
- add support for ./configure --exec_prefix [VS-1628]
- use sip reason if missing cause [VS-1630]
- optimization of the decision whether to use receiver or sender id in mirror modes [VS-1632]
- automatic enable of opt_sip_msg_save_ua if not present in the configuration and if cdr_ua_normalisation is enabled [VS-1631]
2024.08.1 06.8.2024
===================
- dpdk: fix support for multiple dpdk interfaces, support for virtual interfaces (example settings: dpdk_vdev=net_pcap_1:iface=eth0;net_pcap_2:iface=eth1; interface=net_pcap_1,net_pcap_2)
- rework the activation of the cleandatabase process so that it can be used for database_backup. If cleandatabase is to be used for database_backup, database_backup_cleandatabase = yes [VS-1619]
- fix the same number of columns when storing multiple records in the cdr_next_branches table [VS-1621]
- support for groups of numbers in the registration filter [VG-1124]
- enhance watchdog
- store statistics from PUBLISH even if we don't have rtp [VS-552]
- ssl keylogger - use exit instead of abort if initialization fails [VS-1622]
2024.07.1 16.7.2024
===================
- new query_cache_max_mb_utf parameter to limit the length of utf characters [VS-1602]
- new configuration option mysql_security_invoker_routines = YES/no to allow creation of functions and procedures without dependency on the definer
- tls: add support for session resumption in keylogger decryption mode [VS-1600]
- better monitoring of fraud-seq alert intervals [VG-2835]
- remove watchog script file after it has been run [VG-2824]
- application of the usleep_minimal parameter also in the usleep function without progressive usleep increase
- extend sip flood alert - sip packet type option, condition for destination ip addres [VG-1184]
- ensure that in quick_save_cdr=quick mode call cleanup_calls is not triggered more often than once every 100ms
- fix table list in SqlDb_mysql::getSourceTables (table cdr_audio_transcribe is not 'child') [VS-1616]
- fix crash if dpdk is enabled in configuration but not supported in build
2024.06.2 19.06.2024
=====================
- fix illegal instruction introduced in 2024.06.1
2024.06.1 18.06.2024
=====================
- Add support for audio transcription using OpenAI Whisper https://openai.com/index/whisper/ [VS-1603]
- Add support to change country assignment for existing CDR [VS-1130]
- Add configuration parameter srtp_rtp_dtmf to decrypt only RTP-DTMF [VG-2820]
- Add TOP countries charts in chart templates [VG-2808]
- Add definition of ignored errors for creating partitions for tables cdr_next_N
- tar_move: Enable using the destination path on a remote sensor to get PCAP/graph from GUI. Enable spool cleanup in the destination path (if spooldir_2 is set to the same path as tar_move_destination_path and if maxpoolsize_2 is set)
- Fix rtp->avg_ptime calculation [VS-1598]
- Fix detection if mysqlstore_max_threads_cdr is set
- Reduce the limit for starting the next saving (to MySQL) thread from 1000 to 100
- cleanspool: Fix printspool manager command for when there is only one hour of data in the spool
- Compilation fix if libgcrypt is missing [VS-1312]
- Fix possible crash when using reverse_iterator in CleanSpool::cSpoolData::removeLastDateHours
- Add 'refresh' sub-parameter to printspool manager command
- New disable_rtp_seq_check parameter which ignores rtp.seq duplication check [VS-1604]
- Fix false seq rotation credit if disable_rtp_seq_probation is enabled
- Fix writing MOS charts if jitterbuffer configuration options are set to 'null'
- Anonymization fix (TCP/UDP protocol detection was inconsistent) [VG-2816]
- fix saving values for rrd graph 'sql cache files' in server/client mode on client sid
- add custom headers into send call information [VG-2108]
2024.05.2 04.05.2024
=====================
- fix crash in manager command listcalls (if parameters contain ip_map:yes without set limit)
2024.05.1 02.05.2024
=====================
- ptime implementation - parsed from SDP and analysed from RTP (store ptime for both caller/called) - database alter is required (GUI -> tools -> check mysql schema) [VG-1091]
- new fast deduplication algorithm - murmur
- added to active calls: number of calls by rtp ip src / dst, number of calls by caller / called numbers [VG-2129]
- delay between INVITE and TRYING was measured from the first INVITE - this is now changed to the corresponding INVITE and not the first INVITE. The old behaviour can be changed by new option response_time_from_first_invite [VG-2798]
- add support for cleandatabase by size [VS-1586]
- create RTCP payload from HEP3. Fix IP defrag in hep client emulation [VS-1594]
- number of required connections between gui and sniffer was optimised
- HEP3: accept protocol_id ESP, enable all TCP ports in client emaulation [VS-1597]
- ssl keylogger - add define option BOTH_METHODS to allow simultaneous use of SSL_CTX_set_keylog_callback and SSL function hooking [VS-1588]
- suppress load query cache files if set query_cache=no [VS-1585]
- backup/migration - skip non-existing tables in the source, adding a parameter database_backup_slave_record_safe_gap to allow specifying (or disabling) safe gaps for slave records
- fix problem with the availability of the last pcap in the zstd archive before it is closed
- fix typo in constraint creating in sip_msg table (case no db partition) [VS-1587]
- fix tcp reassemble for some corner cases
- fix crash in hep3/ipfix client emulation
2024.04.1 02.04.2024
=====================
- for each sniffing interface do not use ethtool but kernel api instead. Number of interrupt queues are lowered to 8 automatically (or less depending on cpu cores). New parameter eth_max_channels controls it.
- adding the ability to join reference crd tables when backing up (or migrating) the database (database_backup_merge_reference_tables = yes/NO)
- fix keyloger compilation (add dl lib) [VS-1574]
- using kernel api instead of ethtool and automatically set channels to 8 if set more
- checking every minute whether cleaning should occur due to autoclean parameters [VS-1576]
- fix problem with manager encryption if opt_nocdr=yes is enabled
- added support for column ordering in active calls [VG-2782]
- sensor_id in cdr is assigned by receiver sensor id and not sender (fixes pcap downloads) [VG-2784]
- added new cdr flag when RTP duplication is detected (so it can be searched in DB / GUI) [VS-1582]
- normalize text in sip responses, s850 reason and user agents (removes unique strings) - helps to maintain database smaller. This can be controlled by new options cdr_sip_response_normalisation, cdr_reason_normalisation, cdr_ua_normalisation - if you want to enable it - set them to yes
2024.03.1 10.03.2024
=====================
- allow registrations in live sniffer even if sip-register=no, disable query_cache for live sniffer [VG-2771]
- fix deadlock on some qemu virtualisations
2024.02.6 29.02.2024
=====================
- fix slow communication on TCP manager between sniffers (1 second delay per 1 MB)
- fix ssl keylogger compilation
- do not call dns_lookup_common_hostnames when reading file with -r
2024.02.5 26.02.2024
=====================
- reset errno before call recv on tcp manager socket - fixes stuck in manager or 100% cpu usage
2024.02.4 26.02.2024
=====================
- fix issue with nocdr vs mirror sender
- set the manager command 'totalcalls' as a command for which encryption is not necessary
2024.02.3 23.02.2024
=====================
- fix upgrading / enabling encryption on tcp manager socket - in some situations the socket hangs with 100% CPU
- encryption is disabled when old mirroring sender is used - please use the newer client/server for packet mirroring
- auto enable t2_boost_direct_rtp_delay_ms=2000 if t2_boost=high_traffic is enabled
2024.02.2 20.02.2024
=====================
- Adding encryption support for communication between php and sniffer manager which is now by default (port 5029). New GUI is required for activate it. [VG-2751]
- Update systemd service file.
- fix crash in read rtp without sip (with use --rtp-nosig) [VS-1560]
- fix ssl keylog compilation, fix for wolfssl
- fix crash in decompress tar to file (which is used when upgrading to the develop version)
- -flto is now disabled by default in configure
- fix SSL/TLS detection for Mysql 8.x [VS-1562]
- limit log ether_type 0xFFFF only if this condition occurs more than 100 times per minute [VS-1563]
- create separate sql queue for sip_msg (options/subscribe/notify)
- set 3 threads by default to store cdr, messages, sip_msg and registrations; the next threads only start when 1000 requests are not completed
- modify rrd to show the sip_msg queue graph (creating an alter to add a data source)
- change sip-subscribe=no and sip-notify=no as default option (it needs to be enabled in voipmonitor.conf to store them)
- read configuration from db only if --config-file is specified
- fix crash in decompress tar to file
2024.02.1 02.02.2024
=====================
- fix killing old watchdog scripts after running sniffer after crash/abort
2024.01.6 31.01.2024
=====================
- fix no traffic passing through when max_buffer_mem is set to low values [VS-1552]
2024.01.5 30.01.2024
=====================
- since 31.9 deduplication was enabled by default with fast CRC32 but there exist collisions which skips some SIP messages leading to ignore some calls. Deduplication is now disabled by default again and md5 hash is used instead of crc if deduplication is enabled. Faster hashes will be added in the future.
- fix memory leak for all > 31.9 versions when short / non RTP packet arrives to the IP/port combination of some call [VS-1551]
- fix ipfix and hep client emulation if pcap contains ipv6 [VS-1550]
2024.01.4 29.01.2024
=====================
- TCP manager security fix (if you can not control access to the voipmonitor manager TCP port 5029 - upgrade is strongly advised)
- change default value for option detect_alone_bye to no. This option can cause excessive load to the database - more details was documented in the voipmonitor.conf [VS-1547]
- add 'force' option for 'enable_semicolon_in_number' - enable semicolon in a number even if it is not followed by [0-9] [VS-1538]
- fix threading_expanded = high_traffic mode (some early RTP pakcets were missing due to packet reorder/race in queue) - high_traffic option is not enabled by default [VS-1545]
- fix HEAP_HASHTABLE on 32bit sniffer
2024.01.3 24.01.2024
=====================
- discard defective packets for which a negative datalength is calculated (might cause crash)
- adding an unlimited number of attempts to connect client to server [VS-1542]
2024.01.2 23.01.2024
=====================
- add support for option cdr_check_exists_callid in cloud mode [VS-1534]
- fix spool dir check if additional spool directories are defined [VG-2743]
- fix popen deadlock in findMysqlProcess on some configurations [VG-2743]
- correct proxy detection if source ip is same as source ip proxy but with different source port [VS-1539]
- added gzip to pcap_dump_zip_sip [VS-1541]
- added length condition len <= 0xFFFFF to deduplicate
- add packet lenght sanitization in packet deduplication [VS-1540]
2024.01.1 05.01.2024
=====================
- modify proxy and dst ip detection - use via.branch and confirmed invite matches [VS-1536]
2024.01 04.01.2024
===================
- fix potential race condition / crash in tar if data entry is extremely delayed
- added support for upgrading sniffer from develop branch
- fixed minor issues detected by cppcheck
- if pcap limit is set store it to the cdr.flag [VS-1514]
2023.12.3 20.12.2023
=====================
- fix tls decode for some cases and cypher suites (messages were shortened) broken since 2012.11.0
2023.12.2 15.12.2023
=====================
- force connection close on server in client/server which shortnes socket timeout which fixes too many mysql connections issue (all sniffer versions)
2023.12.1 11.12.2023
=====================
- fix crc sse invalid instruction some servers
- better filter for server/client traffic in packtebuffer_sender mode [VS-1524]
- fix -flto warning
- reducing the minimum required version of zstd to 1.4.4
- dequeu queue modification on packetbuffer output add 20% heap limit for queue, add 'deq[N1/N2]' statement to log, N1 is the number of percent of the heap the dequeu queue occupies, N2 is the current amount of time contained in the queue [VS-1521]
2023.12.0 06.12.2023
=====================
- force heap cleanup if the size is greater than 20%
- fix potential crash in setSchedPolPriority
- suppress call createMysqlPartitionsBillingAgregation if is_client() is true [VS-1514]
- add SRTP ROC find, fixes sip oneway issue [VS-1518]
- log to syslog if ether_type is 0xFFFF (happens on old vmware nic drivers) and add testing command: voipmonitor --check_bad_ether_type eth0
2023.11.8 30.11.2023
=====================
- change gcc options for static builds to -march=x86-64 -mtune=generic which fixes support for all 64bit architectures. Optimised versions with SSE3 and SSE4 will come later.
2023.11.7 30.11.2023
=====================
- change DNS resolver to c-ares in static builds which fixes compatibility issue on old sysmtes preventing auto upgrade (download.voipmonitor.org resolve fails)
2023.11.6 28.11.2023
=====================
- fix crash in illegal instruction in crc32 when server does not have SSE 4.2 and sniffer is in client mode forced to crc32 by the sniffer server
2023.11.5 28.11.2023
=====================
- fix crash in destroySession if SslDsslSession does not contain a valid session
- change zstd default level compression for sip and graph from 3 to 1 which lowers memory foot print by half with almost same compression ratio
- remove options tar_sip_level, tar_rtp_level, tar_graph_level and replace them with *_gzip, *_lzma, *_zstd variants
2023.11.4 25.11.2023
=====================
- fix illegal instruction in libcurl 2023.11.X on < haswell when sniffer upgrades itself. Manual upgrade is needed when on version >= 2023.11.1 and <= 2023.11.3 on < haswell CPU
2023.11.3 24.11.2023
=====================
- fix illegal instruction in zstd 2023.11.X on < haswell
2023.11.2 24.11.2023
=====================
- fix illegal instruction in snappy 2023.11.1
2023.11.1 24.11.2023
=====================
- static builds uses gcc12 with the latest libc. Minimum kernel version is now >= 3.2.0
2023.11.0 21.11.2023
======================
- voipmonitor.conf overhaul
- speed optimisations in threading processing (reduce locks and contentions, automatic add/remove threads in t2 processes)
- static builds is now compiled with -O3 and -flto (increases memory throughput)
- t2_boost renamed to threading_expanded with new option high_traffic (high traffic will be default in near future)
- max_buffer_mem is et to 2000MB if the max_buffer_mem parameter is not present in the configuration
- new scheduler thread prioroity - sched_* options in voipmonitor.conf. By default sniffer sets NICE -20 to all important threads.
- automatically enable hashtable_heap_size=64 (64MB) if max_buffer_mem is at least 1000MB
- replace gzip with zstd compression which has the same compression ratio but is 5x faster (the latest GUI version is REQUIRED!) [VS-1496]
- add support for LZ4 compression for pcap compression (slightly faster than lzo but worse compression ratio)
- replace packet deduplication md5 with crc32 (including hw support on supported intel xeons) and enable deduplication by default - on high traffic 1-3 cpu cores are spared [VS-1497]
- ./configure script now compiles with -O3 and supports static linking with the latest mariadb
- fix ss7 configure script
- support CFLAGS and CXXFLAGS for ./configure params
- limit maximum number of possible INVITE packets within one call to prevent sniffer CPU overload [VS-1488]
- fix issue with audio creation if stream contains 0 received packets (due to probation test). New option disable_rtp_seq_probation = yes/NO [VS-1494]
- fix storing loss to rtp_stat [VG-2683]
- ignore_rtp_after_bye_confirmed is now yes by default
- detect_alone_bye is now yes by default
- query_cache is now yes by default
- mysql_queue_limit = 1000000 is now default
- dscp is now yes by default
- fix early destroy_call_at for multibranch calls [VS-1504]
- fix realtime concurrent call alert if the call changes between local and international states during processing [VS-1506]
- fix problem with seq synchronization in tls 1.3 after restoring session from ssl_sesions table [VS-1505]
- limit the number of 'to much INVITEs' messages in the syslog [VS-1507]
- fix crash in sll to en10 conversion [VS-1508]
- fix custom headers reload [VS-1509]?
31.9 05.09.2023
================
- new threads were spawned too late on high traffic servers - thread CPU usage is now performed in shorter intervals (was 10seconds) [VG-2672]
- lower memory usage for cdr trends
- fix dst SIP ip for some cases (broken in 31.8) [VS-1492]
- fix audio decode for some cases (enable the use of a stream with zero received packets in the ab stream selection) [VS-1494]
31.8 24.08.2023
================
- added Session Establishment Effectiveness Ratio (SEER) metric (https://www.rfc-editor.org/rfc/rfc6076#page-19) [VG-2659]
- add register last sip response code 699 as failed state [VS-1459]
- apply new option 'only one' after skip/trim prefixes in country rules [VS-2658]
- add support for voipmonitor / wireshark mode switcher in rtp analyzer [VS-1474]
- diameter - add option diameter_ignore_prefix = yes/NO, add relation between public_identity and sip_from [VS-1420]
- set MYSQL_OPT_RECONNECT so the mysql connection is reconnected automatically within the mysql library
- fix livesniffer for long uid [VS-1455]
- fix time overflow when packets are out of order [VS-1461]
- correctly parse header even if it is delimited only by '\r' [VS-1460]
- fix some low MOS rare cases [VS-1465]
- fix issue with detection of registration expiration with multiple contact information [VS-1462]
- fix issue with client restart in cloud or client mode (force stop client service) [VS-1463]
- fix write to tar file when there is no disk space and cleanup is performed [VS-1440]
- accept cleanup_calls_period parameter even if quick_save_cdr is enabled [VS-1471]
- better proxy detection (fixes some cases not detected as proxy) [VS-1475]
- revert default config/voipmonitor.conf to rtp tar setting: lzo/no-gzip
- fix partition deletion for cdr_stat - force to keep active partition (for case of low cleandatabase_cdr_stat parameter) [VS-1477]
- fix problem with concurrent creation of partitions from multiple sensors [VS-1477]
- automatically enable mysql_enable_new_store=per_query (if 'no') if mysql_enable_set_id is enabled and if there are no conflicts in the configuration
- fix value limitation in a/b_rtcp_loss columns, fix parsing a/b_rtcp_loss from rtcp. Fixes 'Out of range value for column 'b_rtcp_loss' at row' [VS-1480]
- realtime concurrent calls fraud fixes - faster detach of calls from fraud logs in cleanup_calls [VS-1482]
- fix automatic cleaning when disk space is low
31.7.5 22.06.2023
==================
- fix race in handle_dtmf leading to crash [VS-1456]
31.7.4 22.06.2023
==================
- fix some cleaning ssl issues [VS-1452]
- fix live sniffer saving for older databases [VS-1454]
- fix issue when there are same call-id INVITEs without any responses [VS-1440]
31.7.3 09.06.2023
==================
- cdr trends (special aggregation table) now stores src/dst MOS score with respect of the direction. MOS will now represents sender or receiver only and not MIN(src/dst)
31.7.2 08.06.2023
=================
- fix caching_sha2_password issue
31.7.1 07.06.2023
=================
- fix 31.7
- modify the assignment of the rtp stream to the rtcp packet [VS-1451]
31.7 06.06.2023
================
- limit autocleanpool logs to the sensor log once per hour to prevent spamming of the sensor log [VS-1392]
- always use the persistent mode for the ssl store sessions in the [VS-1107]
- mark high TLB in log file [VS-1056]
- use base64 format to store packets in live sniffer for all types of configurations [VS-1443]
- do not count some 4XX to NER
- add 3XX,4XX,5XX,6XX counters to the stats
- new parameter ignore_mos_degradation_in_rtp_pause_without_seq_gap with default value 1000ms prevents low MOS score when RTP stream has GAP with valid RTP timestamp continuation but without SEQ gap. This was previously marked as packet loss due to some older asterisk behaviour. Now those calls will not lower MOS score if the gap is >= 1 second.
- fix proxy detection for some cases [VS-1450]
- fix broken RTP reading when 401 was received (broken since new multibranch) [VS-1446]
- fix GRE header length detection [VS-1438]
- fix one way audio wav generation for some case [VG-2612]
31.6 20.04.2023
================
- new option interface_ip_filter_quick - default enabled [VS-1428]
- force termination of read thread if it does not respond during a sniffer termination/restart
- diameter - fix potential overflow in payload length detection [VS-1420]
- diameter - diameter_time_overlap, diameter_ignore_domain [VS-142]
- fix saving cdr flags of sdp media data type [VG-2607]
- fix free spool space detection - use f_bavail instead of f_bfree [VG-2598]
- fix mos intervals for rare cases [VS-1187]
31.5 21.03.2023
================
- implemented fast b-tree ip filter for the interface_ip_filter configuration option [VS-1428]
- simplification of entering regular expressions for custom headers - a simple expression without parentheses (subresult) serves as a simple match [VS-1427]
- add support for erspan type III
- add support for wolfssl keylogger [VS-1426]
- add redirect queue limit if set mysql_redirect_cdr_queue=yes
- fix crash in mgcp [VS-1429]
31.4 15.03.2023
================
- add new cdr flag for safe spool directory [VG-1804]
- add parameter load-rtp-pcap for debugging rtp/srtp packet
- support for diameter protocol storing into pcap [VS-1420]
- fix race condition in mirror/server mode if packetbuffer disk cache is enabled [VS-1422]
- speed optimization for the interface_ip_filter parameter
31.3 20.02.2023
================
- fix issue with hep/ipfix with interface=any [VS-1401]
- add workaround for wrong protocol set by kamailio (default yes) [VS-1414]
- add support for saving cdr trends by destination ip [VG-2570]
- add configuration parameter dpdk_timer_reset_interval for set interval for reset dpdk timer (default is 60s) [VS-1416]
31.2.3 07.02.2023
==================
- fix MOS score is 0 in case there is only one RTP stream (broken since 31.2) - fix DB: update cdr set mos_min_mult10 = b_mos_min_mult10 where a_mos_min_mult10 is null and b_mos_min_mult10 is not null and mos_min_mult10 = 0 and calldate >= date(now()); truncate chart_cache;
31.2.2 07.02.2023
==================
- change default value for ignore_mos_degradation_for_contiguous_packet_loss_greater_than back to 1024 (there are still many calls which get low MOS score due to transfered RTP eselwhere which is treated as packet loss)
31.2.1 01.02.2023
==================
- fix crash in srtp [VS-1415]
31.2 31.01.2023
===============
- better CPU load debug log in syslog [VS-1409] [VS-1410] [VS-1411]
- proper column limit in cdr rtcp (preventing INSERT when STRICT is enabled) [VS-1408]
- add 'ip_only' option for deduplicate_ipheader configuration value; if enabled, only ip addresses from the ip header are counted in md5 [VS-1391]
- add useragent in change cdr country and change register country alerts [VG-2569]
- keep packet flags in defragmentation (fixes audiocodes mirroring) [VS-1403]
- fix average mos interval calculations when packet loss is sonsecutive over 10 seconds intervals [VS-1412]
31.1 17.01.2023
===============
- fix proper source/destination main RTP stream selection for some corner cases - (broken since 2022-05-01)
- do not ignore RTCP if the report block contains NULL SSRC [VS-1405]
- set ssl_ignore_error_invalid_mac to yes (decryption will work if mac does not fit) [VS-1398]
- new parameters max_sip_packets_in_call (default is 20000) and max_invite_packets_in_call (default is 10000) which limits the number of packets in a call to prevent OOM [VS-1322]
- new parameter check_diff_ssrc_on_same_ip_port (default yes) [VS-1403]
31.0.2 04.01.2023
=================
- optimization of condition in PreProcessPacket::process_SIP_EXTEND
31.0.1 04.01.2022
=================
- fix crash in ssl
31.0 03.01.2022
===============
- performance optimizations in t2-s thread
- add tls 1.0 and 1.1 decryption support (only with keys from kyelogger) [VS-1326]
- enable netmask in ssl_ipport parameter, enable multiple keys in ssl_ipport parameter (comma separator), enable reverse ip:port detection for ssl_ipport (if set parameter ssl_ipport_reverse_enable = yes)
- add port columns to the register_state/register_failed tables. Support for filtering register port [VS-1232]
- fix issue with combination of parameters savertp, saveudptl [VS-1381]
- added support for HP_ERM encapsulation [VS-1192]
- run updateSpoolDataDir function only in specified time interval or if insufficient free disk space is evaluated [VS-1385]
- add 'Only if IP changed' field to 'change cdr/register country' alerts [VS-1386]
- fix GRE IPV6 [VS-1389]
- UDP defrag fixes: with negative traillen value, add option to ignore udp checksum (deduplicate_udpheader_ignore_checksum - enabled by default) [VS-1391]
- DPDK changes/fixes: -fix indication of current traffic speed, variable initialization bug, check cpu core assignment for dpdk threads [VS-1388]
- disable save-energylevels option when mysql < 5.6.1 (missing function from_base64) [VS-1393]
- store digest_username from proxy authorization to cdr [VS-1054]
- speed up billing recalculation
- vmcodecs can be now used in server/client and cloud mode [VS-1395]
- add rules to set country code using ip dst/src address filters [VS-876]
- fix creating new database (cb_group* tables have to be created before other tables) [VS-1400]
- add IP Groups into register filtering [VG-2457]
- hep - adding json payload parsing for hep/sip, adding hep-client-emulation parameter for hep testing [VS-1401]
30.8.3 11.11.2022
=================
- change a way how sniffer detects if database is missing with each new connection (fixes connection lags on large databases)
- disable load data from table sensor_config in cConfig::getJson if mysqlloadconfig=no
- Document cdr_reason_reg_remove option plus fix a typo
- Fix documetation typo and remove duplicit description of cdr_ua_reg_remove option
30.8.2 04.11.2022
=================
- fix register_failed.flags check
- fix issue with defragmentation vxlan packets - add set length of encapsulation udp header [VS-1378]
30.8.1 01.11.2022
=================
- fix SRTP decryption if media type in sdp does not indicate that it is srtp [VS-1377]
- fix alter for register_state/failed (missing AUTO_INCREMENT) if id is 32-bit
- change permissions for pid file from 0666 to 0600 [VS-1357]
30.8 29.10.2022
===============
- added EVS codec support
30.7 27.10.2022
===============
- fix gitUpgrade configure [VG-2512]
- fix tls decoding client_random keys [VS-1376]
- stop processing RTP/RTCP if bye_timeout <= 10 [VS-1373]
- new option audiocodes_sip_ports [VS-1349]
30.6 17.10.2022
===============
- new options cdr_reason_string_enable, cdr_reason_reg_remove [VS-137]
- fix tcp reassembly crashes for long packets [VS-1173]
30.5 05.10.2022
===============
- adding parameter 'all_unlink_log' (NO/yes) for monitor all delete operations in spool [VS-1363]
- create rtcp charts instead of tshark [VG-2536]
- fix rtcp data - maxjitter cant be lower than avgjitter
- adding cseq resolution to retransmission detection [VS-1367]
- fix problem in SIP MESSAGE lastSipResponse if a 401 response is followed by a 200 response [VS-1360]
- add parameter rtp_count_all_sequencegap_as_loss (NO/yes) [VG-2522]
- fix audio sync if a stream that is embedded in a longer one contains significantly more packet loss [VS-1365]
- add support for multiple tags in one custom header
- let sniffer start even if it cannot change mysql query set innodb_compression_algorithm [VS-1371]
- fix redirect responses causes calls to hung in active calls for minutes - added new option redirect_response_300_timeout with 300s default [VS-1370]
- new config options audiocodes_rtp and audiocodes_rtcp [VS-1349]
30.4 13.09.2022
===============
- TCP reassembly optimization - excluding tcp fragments that start a stream and contain a sequence \r, \n and \0 characters [VS-1352]
- exclude tcp links from processing unless they contain at least one packet whose beginning looks like a sip
- fix RTP sequence overlap in analyzer
- dtls/srtp fixes
- fix condition comparing minimum length of rtcp data block
- fix problem with starting daemon mode without specifying a configuration file
- new parameter rtp_count_all_sequencegap_as_loss (NO/yes)
- fix audio decode desync when there is DTMF (broken since 2019) [VS-1359]
- modify capture rules by telnum - specific prefixes has now priority over generic prefixes [VS-1310]
- change capture rules by ip - larger networks are processed first now
30.3 05.08.2022
===============
- fix situation when dtls "server hello" overtakes "client hello"
- dtls fixes
- always use only first BYE-OK or CANCEL-OK sequence for call duration [VS-1351]
30.2 14.7.2022
==============
- add support savertp=header for audiocodes [VS-1346]
- fix result type in functions duration_active_us and connect_duration_active_us (from unsigned 32bit to unsigned 64bit) [VG-2496]
- fix convert from wav to ogg for mono [VG-2499]
- ignore in-dialog invite (if is it reverse via ip) for detect ip and proxy
- fix memory leak in packetbuffer if dtls packets are assign to rtcp packet
- adding ssl_dtls_queue_max_packets (default is 20) parameter to limit the number of packets per connection
- fix RTP codec if codec was not in first invite
- search for both sdp ip types (v4 and v6) if ipv6 is enabled [VG-2498]
- tcpreassembly - better distribution between threads
- suppress warning 'limiting configuration value sip_tcp_reassembly_stream_max_attempts...'
- add option sip-message (YES/no) (SIP MESSAGE request can be now disabled)
- fix keylogger compilation [VS-1345]
30.1 21.6.2022
==============
- added support for HEP encapsulation
- fix manager command set_json_config & hot_restart in client/server mode (force stop sniffer service in server)
- fix apply destination_number_mode=2 for multibranch call [VS-1330]
- fix issue with bad packet order when tls leg is waiting for a key [VS-1327]
- add port resolution to invite and proxies list
- fix problem with silencedetect and clippingdetect and multiple rtp streams in the same direction [VS-1328]
- fix issue with livesniffer when multiple sensors are selected in client/server mode and using packetbuffer_sender mode [VG-2484]
- fix sql condition for manager command 'get_sensor_information configuration_db' [VG-2464]
- fix long pcap extraction from tar when tar_compress_rtp = yes [VS-1329]
- fix ss7/isdn when t2_boost is enabled [VS-1334]
- adding direction (request/response) resolution to cdr and message custom headers
- fix inconsistency in 'do not add colon' option in custom headers
- fix apply explode-separators in multiple-string configuration item
- accept in call processing response 481 in cseq method prack
- add expert tls options ssl_aead_try_seq_backward / ssl_aead_try_seq_forward [VS-1319]
- do not overwrite called number when using the update_dstnum_onanswer=yes option if called is same as caller [VS-1336]
- add option disable_cdr_fields_rtp (NO/yes) which excludes storing RTP metric columns
- TCP reassemble fixes - skip multiple CR/LF after sip data in checkOkSipData [VS-1339]
- adding a registration port update in the registration table if subsequent registrations in the same group have different ports
- fix initialization of fraud threads [VS-1341]
- change default options for ssl_tls_12_sessionkey_mode = ws, ssl_dtls_queue = yes [VS-1338]
- fix heap-buffer-overflow and potential crash if next ip-header is incorrect
- redirecting data from ssl stream to sip processing if the data contains unencrypted valid sip content [VS-1331]
- do server-side dtls-only comparison when searching for a dtls link [VS-1319]
- fix find ipv6 ext header (if exists multiple ext headers)
- fix potential packet buffer leak with very low traffic (and small packet buffer) if ssl=yes is set and if there are dtls packets
- limiting packet storage to dtls queue to 'handshake' type only
- limiting the use of dtls queue only if ssl_client_random is enabled
- allow to disable live sniffer timeout warning [VG-2483]
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