Age | Commit message (Collapse) | Author |
|
header"
|
|
stdout"
|
|
This patch adds a new features to the endpoint identifier module,
'match_header'. When set, inbound requests are matched by a provided SIP
header: value pair. This option works in conjunction with the existing
'match' configuration option, such that if any 'match*' attribute
matches an inbound request, the request is associated with the specified
endpoint.
Since this module now identifies by more than just IP address,
appropriate renaming of the module and/or variables can be done in a
non-release branch.
ASTERISK-26863 #close
Change-Id: Icfc14835c962f92e35e67bbdb235cf0589de5453
(cherry picked from commit 30f52d79d7fc9ab0b628bef2b61ea515413795a2)
|
|
|
|
|
|
nonexistent item"
|
|
|
|
In some scenarios, such as when there may not be a terminal (such as
inside a Docker container), curl will apparently direct the progress bar
to stdout. This can cause extra data to be appended to a file curl'd
down to stdout, resulting in md5 verification failures.
This patch removes the progress bar, and tells curl to download the file
silently.
ASTERISK-26872 #close
Change-Id: Ie860b020f627d4372b3e7ce9453de5faafeebe6c
|
|
|
|
|
|
This patch updates the documenation in hep.conf.sample to better specify
how the various HEP modules interact.
ASTERISK-26717 #close
Change-Id: I337fb742a89e3ec5edc7fc7a7a0295218d841124
|
|
This patch demotes the ERROR message that is displayed when a
nonexistent item is removed from the Stasis cache. The genesis of this
demotion is due to chan_sip's realtime peers and their interaction with
Asterisk's core ast_endpoint code, but ostensibly it could happen from
other channel drivers as well.
Since Mark Michelson already did an excellent job of explaining on this
issue, it is quoted here for posterity:
"Internally, when a realtime peer is retrieved, Asterisk creates an
ast_endpoint structure. When that peer is destroyed, the ast_endpoint is
destroyed as well. Part of the destruction of the ast_endpoint involves
clearing the Stasis cache of all information about that endpoint. The
problem here is that the act of creating the ast_endpoint is not enough
to actually put any information in the Stasis cache. Instead, something
has to happen, such as a state change, in order for the Stasis cache to
have any information about that endpoint. When a device registers,
chan_sip creates an ast_endpoint structure, processes the REGISTER, and
then destroys the ast_endpoint. When the ast_endpoint is destroyed,
there is nothing to destroy in the Stasis cache, so an error message is
emitted. When you use rtcachefriends, ast_endpoint structures persist
for the lifetime of the module and so you do not see this error
message."
ASTERISK-25237 #close
Change-Id: I53cebc6b4a897a1ab9564182b75c177780feff70
|
|
Tabs > spaces. Always.
Change-Id: I899ff662361c7ab0327173bd7851a67b53dd65f1
|
|
When querying for PJSIP specific information using the dialplan
function CHANNEL() it is possible that the underlying session
will no longer have a channel associated with it. This is
most likely to occur when the RTCP HEP module attempts to get
the channel name. If this happens then a crash will occur.
This change just adds a check that the channel exists on the
session before querying it.
ASTERISK-26857
Change-Id: I113479cffff6ae64cf8ed089e9e1565223426f01
|
|
Bundled pjproject should now only rebuild if one of the menuselect
"Compiler Flags" options changes.
Change-Id: If114a2e16b9e77af371a600d6a5e197bbf28fe43
|
|
|
|
|
|
|
|
* cli_commands.c Fixed CLI output
ASTERISK-26822 #close
Change-Id: I3889ef6a8f6738fc312fab42db5efacd6e452b01
|
|
|
|
* res_musiconhold.c: Ensure the general section is not treated as
a moh class.
ASTERISK-26353 #close
Change-Id: Ia3dbd11ea2b43ab3e6c820a9827811dd24bea82d
|
|
Change-Id: Icc0dc6e61b2e68d5cdcb74b016b2726a388c7def
|
|
Set a variable on the channel that indicates which attempt number we
are currently performing to allow for attempt-specific behavior.
ASTERISK-26568 #close
Reported by: Roman Shubovich
Change-Id: Iacd7e8d43b0ed5b6cb021c62f41f1a1f5733dd89
|
|
This change adds a PJSIP patch (which has been contributed upstream)
to allow the registration of IPv6 transport types.
Using this the res_pjsip_transport_websocket module now registers
an IPv6 Websocket transport and uses it for the corresponding
traffic.
ASTERISK-26685
Change-Id: Id1f9126f995b31dc38db8fdb58afd289b4ad1647
|
|
* apps/app_voicemail.c fromstring field added to mailbox which will
override the global fromstring if set.
ASTERISK-24562 #close
Change-Id: I5e90e3a1ec2b2d5340b49a0db825e4bbb158b2fe
|
|
|
|
|
|
When doing some WebRTC testing, I found that the websocket would
disconnect whenever I attempted to place a call into Asterisk. After
looking into it, I pinpointed the problem to be due to the iostreams
change being merged in.
Under certain circumstances, a call to ast_iostream_read() can return a
negative value. However, in this circumstance, the websocket code was
treating this negative return as if it were a partial read from the
websocket. The expected length would get adjusted by this negative
value, resulting in the expected length being too large.
This patch simply adds an if check to be sure that we are only updating
the expected length of a read when the return from a read is positive.
ASTERISK-26842 #close
Reported by Mark Michelson
Change-Id: Ib4423239828a013d27d7bc477d317d2f02db61ab
|
|
When receiving a 422 response, the invitestate variable must be reset to
INV_CALLING.
ASTERISK-26841
Change-Id: Ia0502d6b02192664cefa4e75bafdd2645ce56099
|
|
* say.c Changed 'digits/and' to 'vm-and' for en_GB
ASTERISK-26598 #close
Change-Id: If1b713e5daea6f952b339f139178d292a6c4fcfe
|
|
Per the linked issue, we aren't checking the buffer filled by fgets()
to determine if it contains a newline, so we will fail to correctly
parse the trailing portion of a long line.
This patch increases the buffer size from 256 to 1024, and skips any
line that exceeds that length, logging a warning in the process.
ASTERISK-17067 #close
Reported by: Dave Olszewski
Change-Id: I51bcf270c1b4347ba05b43f18dc2094c76f5d7b0
|
|
* manager.c:manager_state_cb() Fix potential use of uninitialized hint[]
if a hint does not exist for the requested extension. Ran into this when
developing a testsuite test. The AMI event ExtensionStatus came out with
the hint header value containing garbage. The AMI event PresenceStatus
also had the same issue.
* manager.c:action_extensionstate() no need to completely initialize the
hint[]. Only initialize the first element.
* pbx.c:ast_add_hint() Remove unnecessary assignment.
* chan_sip.c: Eliminate an unneeded hint[] local variable. We only care
about the return value of ast_get_hint() there.
Change-Id: Ia9a8786f01f93f1f917200f0a50bead0319af97b
|
|
|
|
|
|
|
|
According to the RFC[1] WSS should only be used in the Via header
for secure Websockets.
* Use WSS in Via for secure transport.
* Only register one transport with the WS name because it would be
ambiguous. Outgoing requests may try to find the transport by name and
pjproject only finds the first one registered. This may mess up unsecure
websockets but the impact should be minimal. Firefox and Chrome do not
support anything other than secure websockets anymore.
* Added and updated some debug messages concerning websockets.
* security_events.c: Relax case restriction when determining security
transport type.
* The res_pjsip_nat module has been updated to not touch the transport
on Websocket originating messages.
[1] https://tools.ietf.org/html/rfc7118
ASTERISK-26796 #close
Change-Id: Ie3a0fb1a41101a4c1e49d875a8aa87b189e7ab12
|
|
* Removed the AST_CHAN_TP_MULTISTREAM tech property. We now rely
on read_stream being set to indicate a multi stream channel.
* Added ast_channel_is_multistream convenience function.
* Fixed issue where stream and default_stream weren't being set on
a frame retrieved from the queue.
* Now testing for NULL being returned from the driver's read or
read_stream callback.
* Fixed issue where the dropnondefault code was crashing on a
NULL f.
* Now enforcing that if either read_stream or write_stream are
set when ast_channel_tech_set is called that BOTH are set.
* Added the unit tests.
ASTERISK-26816
Change-Id: If7792b20d782e71e823dabd3124572cf0a4caab2
|
|
res_config_pgsql should match the behavior of other realtime backend
drivers so that queue_log can disable adaptive logging.
ASTERISK-25628 #close
Reported by: Dmitry Wagin
Change-Id: Ic1fb1600c7ce10fdfb1bcdc43c5576b7e0014372
|
|
This introduces and documents the various states in the state machine.
This also introduces API functions that induce state changes, and places
TODO comments telling what needs to be done in addition to what is
already there. Those TODOs will be replaced with real code in upcoming
changes.
Change-Id: I871c0eb480b4c84d83e91ac5628e7a673e8b89ed
|
|
|
|
|
|
|
|
|
|
|
|
|
|
In the event that a cache file is removed out from under us, we should
treat the cache entry as stale and force a refresh.
ASTERISK-26774 #close
Reported by: Igor Gamayunov
Change-Id: I3b1bd0c999d59d18664ef73a29823bc5b431dc52
|
|
|
|
|
|
The find_table() functions NULL or a locked table pointer. We are
not consistently calling release_table() in failure paths.
Change-Id: I6f665b455799c84b036e5b34904b82b05eab9544
|
|
Use the description of useragent from sip.conf here.
ASTERISK-26825 #close
Change-Id: I5b33a4aaa0ae1d793289d05e3bc09521affbf755
|