- group PJNATH_CONFIG
Various compile time settings.
The log level for PJNATH error display.
Maximum number of attributes in the STUN packet (for the new STUN library).
The default initial STUN round-trip time estimation (the RTO value in RFC 3489-bis), in miliseconds. This value is used to control the STUN request retransmit time. The initial value of retransmission interval would be set to this value, and will be doubled after each retransmission.
The STUN transaction timeout value, in miliseconds. After the last retransmission is sent and if no response is received after this time, the STUN transaction will be considered to have failed.
The default value is 16x RTO (as per RFC 3489-bis).
Maximum number of STUN transmission count.
Default: 7 (as per RFC 3489-bis)
Duration to keep response in the cache, in msec.
Default: 10000 (as per RFC 3489-bis)
Maximum size of STUN message.
Default STUN port as defined by RFC 3489.
Padding character for string attributes.
Default: ASCII 0
Enable pre-RFC3489bis-07 style of STUN MESSAGE-INTEGRITY and FINGERPRINT calculation. By default this should be disabled since the calculation is not backward compatible with current STUN specification.
The packet buffer size for the STUN transport.
The duration of the STUN keep-alive period, in seconds.
Maximum DNS SRV entries to be processed in the DNS SRV response
Maximum TURN packet size to be supported.
The TURN permission lifetime setting. This value should be taken from the TURN protocol specification.
The TURN channel binding lifetime. This value should be taken from the TURN protocol specification.
Number of seconds to refresh the permission/channel binding before the permission/channel binding expires. This value should be greater than PJ_TURN_PERM_TIMEOUT setting.
The TURN session timer heart beat interval. When this timer occurs, the TURN session will scan all the permissions/channel bindings to see which need to be refreshed.
Maximum number of TCP data connection to peer(s) that a TURN client can open/accept for each TURN allocation (or TURN control connection).
Maximum number of ICE candidates.
Maximum number of candidates for each ICE stream transport component.
Maximum number of STUN transports for each ICE stream transport component. Valid values are 1 - 64.
Maximum number of TURN transports for each ICE stream transport component. Valid values are 1 - 64.
The number of bits to represent component IDs. This will affect the maximum number of components (PJ_ICE_MAX_COMP) value.
Maximum number of ICE components.
Use the priority value according to the ice-draft.
The number of bits to represent candidate type preference.
The number of bits to represent ICE candidate’s local preference. The local preference is used to specify preference among candidates with the same type, and ICE draft suggests 65535 as the default local preference, which means we need 16 bits to represent the value. But since we don’t have the facility to specify local preference, we’ll just disable this feature and let the preference sorted by the type only.
Maximum number of ICE checks.
Default timer interval (in miliseconds) for starting ICE periodic checks.
According to ICE Section 8.2. Updating States, if an In-Progress pair in the check list is for the same component as a nominated pair, the agent SHOULD cease retransmissions for its check if its pair priority is lower than the lowest priority nominated pair for that component.
If a higher priority check is In Progress, this rule would cause that check to be performed even when it most likely will fail.
The macro here controls if ICE session should cancel all In Progress checks for the same component regardless of its priority.
Default: 1 (yes, cancel all)
For a controlled agent, specify how long it wants to wait (in milliseconds) for the controlling agent to complete sending connectivity check with nominated flag set to true for all components after the controlled agent has found that all connectivity checks in its checklist have been completed and there is at least one successful (but not nominated) check for every component.
When selecting the value, bear in mind that the connectivity check from controlling agent may be delayed because of delay in receiving SDP answer from the controlled agent.
Application may set this value to -1 to disable this timer.
Default: 10000 (milliseconds)
For controlling agent if it uses regular nomination, specify the delay to perform nominated check (connectivity check with USE-CANDIDATE attribute) after all components have a valid pair.
Default: 4*PJ_STUN_RTO_VALUE (milliseconds)
Minimum interval value to be used for sending STUN keep-alive on the ICE session, in seconds. This minimum interval, plus a random value which maximum is PJ_ICE_SESS_KEEP_ALIVE_MAX_RAND, specify the actual interval of the STUN keep-alive.
Default: 15 seconds
To prevent STUN keep-alives to be sent simultaneously, application should add random interval to minimum interval (PJ_ICE_SESS_KEEP_ALIVE_MIN). This setting specifies the maximum random value to be added to the minimum interval, in seconds.
Default: 5 seconds
This constant specifies the length of random string generated for ICE ufrag.
Default: 8 (characters)
This constant specifies the length of random string generated for ICE password.
Default: 24 (characters)
This constant specifies whether ICE stream transport should allow TURN client session to automatically renew permission for all remote candidates.
For trickle ICE, this macro specifies the maximum time of waiting for end-of-candidates indication from remote once ICE connectivity checks is started, in seconds. When the timer expires, ICE will assume that end-of-candidates indication is received so any further remote candidate update will be ignored.
Note that without remote end-of-candidates indication, ICE will not be able to conclude that the ICE negotiation has failed when all pair checks are completed but there is no valid pair (on the other hand, the ICE negotiation may be completed as successful before the end-of-candidates indication is received when valid pairs are found very quickly).
Also note that the ICE connectivity checks should only be started after both agents have started trickling ICE candidates (e.g: both have sent their SDPs, either via normal SDP offer/answer or SIP INFO).
Default: 40 seconds.
ICE session pool initial size.
ICE session pool increment size
ICE stream transport pool initial size.
ICE stream transport pool increment size
NAT detect pool initial size
NAT detect pool increment size
STUN session pool initial size
STUN session pool increment size
STUN session transmit data pool initial size
STUN session transmit data pool increment size
TURN session initial pool size
TURN session pool increment size
TURN socket initial pool size
TURN socket pool increment size
PJNATH_MAKE_SW_NAME(a, b, c, d)
Default STUN software name Create STUN software name
PJNATH_MAKE_SW_NAME2(a, b, c, d)
Create STUN software name
Default STUN software name
Default duration for searching UPnP Internet Gateway Devices (in seconds). Default: 5 seconds