Login | Register

About

About -> Available Versions -> 4.0.x Releases -> Release 4.0.0

This page has been visited 911 times.


1.  Migration from 3.6.x to 4.0.0


2.  What is new in 4.0.0

2.1  OpenSIPS Core

  • New $proxy_protocol variable provides access to the connection metadata delivered via the Proxy Protocol at the transport layer.
  • The socket core parameter can receive new flags indicating whether to accept or send Proxy Protocol information.
  • support for "bond" sockets (as a collection of regular sockets) intend not only to simplify, but also to make possible the proper selection of the outbound socket based on the last-minute discovered (DNS based) properties of the destination (like protocol or AF). Read more here on this blog post.
  • MI command names have been migrated to the new module:name format. Check the migration guide for more information. The legacy command names remain available for backward reference and compatibility.

2.2  [NEW] AUTH_WEB3 module

  • The new auth_web3 module to provide Web3-based authentication for OpenSIPS, enabling SIP authentication through blockchain technology and ENS (Ethereum Name Service) resolution.

2.3  [NEW] OPENTELEMETRY module

  • The new Opentelemetry module is providing a standardized, vendor-neutral framework (APIs, SDKs, tools) to collect, process, and export telemetry data (traces, metrics, logs) from distributed systems, enabling deep insights into application performance, faster debugging, and preventing vendor lock-in by routing data to multiple observability backends.

2.4  AAA_DIAMETER module

2.5  AAA_DIAMETER module

  • A new parameter, max_json_log_size can be used to increase the size of printed JSONs in case of errors.

2.6  B2B_LOGIC module

  • A new variable has been added $b2b_logic.peer that returns the peer of a given b2b_logic key, expressed as callid;from-tag;to-tag.
  • The b2b_bridge function can now take a new parameter, propagate-avps to instruct the module to copy AVPs across bridges.

2.7  CALLOPS module

  • The mi_call_hold and mi_call_unhold MI functions have been enhanced with two more parameters: leg that can specify which call to be put on hold, and headers that can be used to provide extra headers to the outgoing re-INVITE.

2.8  DIALOG module

  • The load_dialog_ctx() function has been enhanced with a new parameter that allows filtering only active dialogs - that is dialogs that are not deleted, their state is lower than 5.

2.9  JSON module

2.10  MI_DATAGRAM module

  • A new parameter has been added socket_buf_size that can be used to tune the datagram buffer size - this can be useful when dealing with Unix Datagram Sockets communication, where buffer size is not limited to UDP size.

2.11  MID_REGISTRAR module

  • New modparam: allow_dup_cseq for improving interoperability with SIP stacks which re-REGISTER with the same Call-ID and CSeq.

2.12  RATE_CACHER module

  • The module has now the ability to add multiple ratesheets to carriers while maintaining backward compatibility.

2.13  REGISTRAR module

  • New modparam: allow_dup_cseq for improving interoperability with SIP stacks which re-REGISTER with the same Call-ID and CSeq.

2.14  STIR_SHAKEN module

  • NEW default SSL cryptography library: WolfSSL, but support for OpenSSL is retained. To build with OpenSSL, either define the STIR_SHAKEN_OPENSSL=true Makefile variable, or just add DEFS += -DSTIR_SHAKEN_OPENSSL to Makefile.conf

2.15  TOPOLOGY_HIDING module

2.16  UAC_REGISTRANT module

  • The module is now able to deal with dynamic registants, meaning registrants may be added and removed during runtime via MI command, see the reg_upsert and reg_delete commands.
  • Several events are now exposed to inform on the registration & authentication changes of the registrant
  • reports are provided for each registrant, to store the history of events.

2.17  UUID module

  • The $uuid variable can take a parameter indicating the UUID version to be used to generate the value.

Page last modified on March 12, 2026, at 12:03 PM