Richard Fuchs
b956303748
MT#55283 support reporting per-interval metrics
...
Change-Id: Ia94594f5742dec4a47849a09cca71ab731e3a0e7
2 years ago
Richard Fuchs
dddaa60afb
MT#55283 simplify/clarify stats gathering
...
Perform accumulation of stats only once (i.e. increasing an actual
counter) and report stats based on differences to previous values,
instead of carrying multiple stats counters for each metric and
resetting each counter to zero whenever stats are reported.
`rtpe_stats` is the global master accumulator.
`_intv` variables are intermediate and local storage for values sampled
from `rtpe_stats` at regular intervals.
`_rate` and `_diff` variables hold stats calculated from `rtpe_stats`
and the respective `_intv` variable whenever the sampling and reporting
occurs.
`stats_counters_calc_diff` is used to calculate stats as differences
between `rtpe_stats` and the last sampled `_intv`
`stats_counters_calc_rate` does the same but calculates a per-second
rate, based on a microsecond duration.
Eliminate now-useless struct global_stats_ax
Change-Id: Ic4ca630161787025219b67e49b41995204d60573
2 years ago
Richard Fuchs
e7abe3b378
TT#44805 rename `stats` to `stats_in`
...
Change-Id: Ifaf9a97b41d2cba76bf252772ed76242a7ca48d2
3 years ago
Richard Fuchs
17bda4b1e8
TT#156900 fix master/slave race condition with early closed ports
...
When ports are closed early (while the call is still running), we must
first update a slave rtpengine with this new information (that these
ports are now closed) before actually releasing the ports ourselves. Not
doing so leads to a race condition where the master instance re-uses a
port that was just closed before the slave instance knows about the port
being closed.
We implement this using a thread-local list to keep track of ports that
were released while processing a control message, and process this list
to actually close the ports only after Redis has been updated.
Additional calls to the function to close the ports are placed in
strategic locations to make sure this is triggered in every code path.
closes #1495
Change-Id: I803f4594f30ca315da0b84c6e76893f54ca3a7c9
3 years ago
Richard Fuchs
6d1dfab77a
TT#14008 convert logging context to stack
...
This is useful for functions which are used both from a timer and from
other callers. These functions would reset the logging context at their
end to free the reference held by the logging context, which would
wrongly reset the logging context when the same function was called from
a different code path. Using a stack with push/pop semantics makes it
safe to use these functions from any code path.
Additionally introduce an explicit reset function that clears the entire
stack regardless of context. This reset function is called at the end of
every work iteration in every worker thread, just in case not everything
was popped from the stack.
Change-Id: I0e2c142b95806b26473c65a882737e39d161d24d
3 years ago
Richard Fuchs
3c1f4b1f1e
TT#14008 remember last used local socket for reporting purposes
...
Change-Id: I4d52df89c58bb1544dab5a6c5a87aec7975607aa
3 years ago
Richard Fuchs
e7edfc03b4
TT#136954 add explicit flag to en/disable DTMF detection
...
Change-Id: I0da522ec5b195d580b44e6c5d0cfc42b73a8ac4b
3 years ago
Richard Fuchs
a22c3a5a1f
TT#136952 add CLI command to set delay buffer
...
Change-Id: I469ce986dd0fc2d4300de5901d7e15a568267755
3 years ago
Richard Fuchs
12f23b311c
TT#157801 shift handling of v4/v6 addresses
...
Handling of dual stack v4/v6 was previously done by the individual
listener objects for INADDR_ANY listening addresses. If listening on
INADDR_ANY was requested, then each listener would create two instances,
one for IPv4 and one for IPv6. This works fine for INADDR_ANY but fails
for listening on host names that resolve to multiple addresses, such as
`localhost`.
Solve this by relieving the listener objects from handling this and
instead handle it in the code setting up the listeners. If a host name
resolves to multiple addresses, then set up multiple listeners (up to
two supported currently). This allows us to listen on `localhost` by
default and have both 127.0.0.1 and ::1 active. INADDR_ANY is handled
specially by also setting up :: in that case.
Change-Id: I2a1e1d7090d7d23863c7a9bb1e89b85ad2ea44f4
3 years ago
Richard Fuchs
ea7d04ae76
TT#136952 add CLI options to manipulate calls and tags
...
Change-Id: I9b6b24cbcaa7ed62a5dd786ae5d847ecee8cd46f
3 years ago
Richard Fuchs
ef141e6810
TT#136952 split up CLI tag info writer
...
Change-Id: I40f9e89d11edb3857ae7d1b6663b9afb0efc5c78
3 years ago
Richard Fuchs
31ad47af33
TT#136952 split up call info CLI writer
...
Change-Id: I8a2aaa08b2ad1a6d8a3b6a8753b0e6e0248f43d4
3 years ago
Richard Fuchs
b9eea8c579
TT#14008 fix 32-bit compiler warnings
...
Change-Id: Ibf2d631245e2ee67ee2023647ceac349e8c9b605
4 years ago
Sebastian Kemper
746dedb602
Add support for time64 libcs
...
libcs are implementing changes to fix the year 2038 issue on 32 bit
platforms (see [1]). musl libc already went ahead and implemented it,
starting with musl-1.2.0 (see [2]).
This commit adds a new definition to lib/loglib.h:
TIME_T_INT_FMT
If __USE_TIME_BITS64 is defined (by a time64 libc, see [1]), it's set to
the proper conversions for type int64_t, PRId64. If __USE_TIME_BITS64 is
not defined, the status quo remains unchanged ("%ld" is used).
The new definition is used in the different parts of rtpengine, where
appropriate.
Note: Richard confirmed that the "%u" format in daemon/cdr.c is not
needed, so this gets swept under the rug.
These changes get rid of the new warnings that appeared with musl-1.2.0.
Below an example warning:
In file included from ./log.h:6,
from ../include/obj.h:94,
from ../include/media_socket.h:9,
from ../include/call.h:26,
from ../include/redis.h:15,
from redis.c:1:
redis.c: In function 'redis_check_conn':
../lib/loglib.h:56:30: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'time_t' {aka 'long long int'} [-Wformat=]
56 | __ilog(prio, "[%s] " fmt, log_level_names[system], ##__VA_ARGS__); \
| ^~~~~~~
../lib/loglib.h:64:39: note: in expansion of macro 'ilogsn'
64 | #define ilogs(system, prio, fmt, ...) ilogsn(log_level_index_ ## system, prio, fmt, ##__VA_ARGS__)
| ^~~~~~
../lib/loglib.h:63:30: note: in expansion of macro 'ilogs'
63 | #define ilog(prio, fmt, ...) ilogs(core, prio, fmt, ##__VA_ARGS__)
| ^~~~~
redis.c:887:17: note: in expansion of macro 'ilog'
887 | ilog(LOG_WARNING, "Redis server %s is disabled. Don't try RE-Establishing for %ld more seconds",
| ^~~~
[1] https://sourceware.org/glibc/wiki/Y2038ProofnessDesign
[2] https://musl.libc.org/time64.html
Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
4 years ago
Richard Fuchs
24f607752c
TT#145450 add support for tracking multiple SSRCs per stream
...
Change-Id: I885fbf7973133af8d7c9184eb0e75f5401309c8e
4 years ago
Richard Fuchs
9a149a77fb
TT#14008 make CLI call iterators lock-free
...
Change-Id: Id479c66ddd8f8e150bcc30325a356c39e00bb44c
4 years ago
Richard Fuchs
c5dc3484ae
TT#131402 split up relay stats between kernel and userspace
...
Change-Id: I9e5a82e5817829d8a1b17e6828bb0594fbc8df08
4 years ago
Richard Fuchs
ad64f4fa00
TT#101150 introduce proper struct for "counter" style stats
...
Change-Id: Ifd06c54b25126426fe21723b8fb7a21d9bd03cba
4 years ago
Richard Fuchs
7dcc4473f5
TT#101150 split out "gauge" style stats
...
Change-Id: I52617a083bbbd41342b6413d8cacc5235cec51d9
4 years ago
Richard Fuchs
765b1e3bca
TT#89352 use bool type for foreign call functions
...
Change-Id: If8d5e28db534e6aeaaffb885e732e2bdd7338831
4 years ago
Richard Fuchs
94a5feea7d
TT#111150 fix coverity warnings
...
Change-Id: I330d5137d38017641bdda71e8bd014c358c432fb
4 years ago
Richard Fuchs
92fb330a46
TT#91151 implement one-to-many forwarding
...
Change-Id: I80fd35da680d4ad1f4d3d21f14f11363106b9917
4 years ago
Richard Fuchs
d5d0a3a994
TT#111150 convert str.len to size_t
...
This makes the type in line with string(3) functions and eliminates some
compiler warnings.
Also update the related bencode data type.
Change-Id: I7ef4024f4b5a0f737b3dbe03bcd078032395bce6
4 years ago
Richard Fuchs
a8d5076065
TT#119502 correctly restore calls from both Redis instances
...
Change-Id: I713d7e8ba0a7d14f5ef9016d33619df91ce6ec32
4 years ago
Richard Fuchs
05ef61c0d7
TT#108003 fix errors reported by coverity
...
Change-Id: I6641da426f1e05f0d0e3924887baf7fb948fb0c9
4 years ago
Richard Fuchs
a86d98f8d1
TT#118902 add support for per-call debugging
...
Change-Id: I9b0eab21ff4e5c241ff045049ccd37f6044d5707
4 years ago
Richard Fuchs
bf40d2a841
Merge branch 'master' of https://github.com/smititelu/rtpengine
...
Change-Id: I9e45a35e98ff55a0bd6c7d8a438f3e87d08b9773
4 years ago
Stefan Mititelu
482e2d0d2b
Add stats for ipv4/ipv6/mixed media calls
...
Also Send stats for ipv4/ipv6/mixed media calls to graphite
4 years ago
Huseyin Dikme
1d1558bcc1
added rtpengine-ctl set and list options for the delete-delay config parameter
4 years ago
Guillem Jover
1e62cbbb9a
TT#111150 Inline int_diff_print_sz() to avoid pointer handling
...
We simplify the function so that we do not need to meddle with pointers
and data sizes.
Change-Id: I3e653b44b28347053cc7a1053de8220c80250816
Warned-by: lgtm
4 years ago
Richard Fuchs
030f38ff16
TT#97301 add description to log levels
...
Change-Id: I223d69016b5e6328f1124a6a977c46d008b667dc
4 years ago
Richard Fuchs
c69415ba45
TT#97301 allow printing and setting of individual log levels
...
Change-Id: I3ac399a7041aa04847fd4a35a9c0f12a2a0a8ce3
4 years ago
Richard Fuchs
89d017ed73
TT#97301 update CLI online help
...
Change-Id: Ib5615f15cefa23ac093115318f84cf712f735322
4 years ago
Richard Fuchs
30733ec5cd
TT#97301 support granular log levels
...
Change-Id: Ife458bd2449f61113a3e6db1708821570d92dc23
4 years ago
Richard Fuchs
260a170524
TT#81212 add trigger to set all calls to own or foreign
...
Change-Id: I9ee69680bccd79bae19332189a8531eaa2f6950b
4 years ago
Richard Fuchs
4902b07ff9
Merge branch 'master' of https://github.com/smititelu/rtpengine into smititelu-master
...
Change-Id: I425a188c632e2a6ee3f9109380d9ae114409f62b
5 years ago
Richard Fuchs
cbf6ad7041
TT#88951 abstractise CLI handling and writing
...
Change-Id: I004cbc4a8690b11822ab54f34af01557b87c6a02
5 years ago
Stefan Mititelu
2ebf5a1526
Add redis async delete
5 years ago
Richard Fuchs
1589c29e28
TT#28300 add cleanup of poller related data
...
Change-Id: I64a38869ce3120d066fc818e3c76941a1c8186b7
5 years ago
Richard Fuchs
ac765d1b54
TT#82410 unify stats gathering functions
...
Change-Id: I5be2f728a40d69e76b7fcdd04b9d7cb62e34665e
5 years ago
attermann
da3c40e24a
Added "currentstatistics" to json stats.
5 years ago
Richard Fuchs
64e6bf440b
TT#82203 add detailed transcoding stats
...
Change-Id: Ib04767c38b00b17ef5844a9f6649e009270f8f82
5 years ago
Richard Fuchs
5f3f203fb8
TT#82203 add stats for transcoded sessions
...
Change-Id: Ie9bef31f62d489fccf52b02a8935f9c9dc2575b5
5 years ago
attermann
ccf1d4698a
Extended json control statistics
...
Added missing control statistics as well as aggregate counts for all
proxies.
5 years ago
attermann
032c6e473c
Added cli command for parseable stats.
...
Added support for "list jsonstats" CLI command that return the same
stats as "list totals" but in easily parseble json format.
5 years ago
Richard Fuchs
08cdb4cdb6
TT#74300 split intro for call-id CLI output
...
Change-Id: I4872ce173372b767b467afd4122bba809f4f0c3e
5 years ago
Richard Fuchs
c3f5282759
TT#74300 adapt CLI output to match log output for call stats
...
for #908
Change-Id: I68d0cd92f00b261d604074362cc658589d94543e
5 years ago
Richard Fuchs
5ac07564bd
TT#74300 run indent over cli_incoming_list_callid
...
Change-Id: Ife1e0f1ad8820807fd409fe422f40b4d483282eb
5 years ago
Richard Fuchs
8322a8b37f
TT#72350 add codec info to CLI output
...
closes #889
Change-Id: I7e717f58d5da8d505911f1df5bc6a99f0d9c97dc
5 years ago
Richard Fuchs
26b725d024
TT#45617 add new options to support log markers for sensitive data
...
Change-Id: I2ffa4da4be3a05f043e7991612bbb37d8102d91a
6 years ago
Richard Fuchs
35764c5c63
TT#44702 add CLI command for interface/port stats
...
Change-Id: I670b3779d748e81097995961d6411d21a279bd08
7 years ago
Richard Fuchs
e67b9c40da
TT#43556 support blocking of DTMF event packets
...
Change-Id: I7ef43ddb254b1583c2dc69b44a13b978eff15510
7 years ago
Richard Fuchs
be9c3146f4
fix missing header include
...
fixes #569
Change-Id: I795a96dbe224bc798317e47b11d758e56e26d1ae
7 years ago
Richard Fuchs
09fed75e7e
Merge branch 'master' of https://github.com/hdikme/rtpengine
...
Change-Id: I97bf1782e259c17a3313ec4e6d670dae8592f12c
7 years ago
Richard Fuchs
14ffd8feb0
TT#36303 support bandwidth usage resource limit
...
Also fixes logic for other resource limits
Change-Id: I263e097da5b5671826e0d92a28fb3a5c6f3ac193
7 years ago
Huseyin Dikme
ab58245096
-cli params diff command has been updated to serve only for the
...
possible modifiable configuration file parameters.
-Additionally, cli params revert command has been implemented.
7 years ago
Richard Fuchs
345836e90a
TT#35413 implement a CPU limit and a load limit
...
Change-Id: Ia0c605d17866c232353917f2980637fa7823dce4
7 years ago
Richard Fuchs
761ac6cb4f
errno must be set to 0 before calling strto*()
...
... when using errno to determine errors
fixes #532
Change-Id: Iba1d02a86026cc878595895e91abe164cfe4d9bd
7 years ago
Richard Fuchs
6fa712d0d8
implement offer-timeout option
...
closes #526
Change-Id: I819e1ad567c93f922461caf15482c2c55a0143d1
7 years ago
Claudiu Boriga
80abad18cf
Merge remote-tracking branch 'sipwise/master' into extend-rtpengine-ctl
7 years ago
Claudiu Boriga
ff2a278ad7
Make 'rtpengine-ctl' configurable via rtpengine-ctl
7 years ago
Claudiu Boriga
0f9151e9ea
Make 'redis-allowed-errors', 'redis-disable-time', 'redis-cmd-timeout'
...
and 'redis-connect-timeout' configurable via rtpengine-ctl
7 years ago
Claudiu Boriga
f2ce4d3a25
Add rtpengine-ctl 'get' commands as alias for 'list'
7 years ago
Claudiu Boriga
be5211e6bd
Introduce 'list silenttimeout' and 'list finaltimeout' to rtpengine-ctl
7 years ago
Huseyin Dikme
968446c730
cli params command has been created for initial, current parameters
...
and their difference
7 years ago
Richard Fuchs
078af3c407
Merge branch 'add-requests-ps-stats' of https://github.com/1and1/rtpengine
...
Change-Id: I8f67dec95cc07ca1df6823921c3af0457bf0783a
7 years ago
Claudiu Boriga
0ffb9e6718
Display correct average for requests statistics
7 years ago
Richard Fuchs
321fb5e1ca
fix double str_shift for 'list sessions CALLID'
...
fixes #448
Change-Id: I9262f61eeec257abe842e532ffc8e071da89a61d
7 years ago
Claudiu Boriga
00bdcef9a4
Fix statistics for average requests/sec sent to rtpengine-ctl
7 years ago
Claudiu Boriga
f7ece0452b
Merge remote-tracking branch 'sipwise/master' into add-requests-ps-stats
7 years ago
Claudiu Boriga
8cc4b7874e
Add statistics for requests per second
7 years ago
Richard Fuchs
46d853972b
move lib/ config options into struct
...
Change-Id: I563b38cd64daea5f9137debff2fc7881a3cdaa9d
7 years ago
Richard Fuchs
75056a8dd1
eliminate the callmaster struct
...
Change-Id: I9151dbe8f47b3bb9ab67d6fea2fc3783bdc558da
7 years ago
Richard Fuchs
f2b93f9ef8
move config options into global struct rtpengine_config
...
Change-Id: Ie566efb6a1b8bedbe33f768bc4cd979b2d2b46cc
7 years ago
Richard Fuchs
741140341f
move "totalstats" out of callmaster into global scope
...
Change-Id: Ia5b95e788c1d486a86b6f916dcff5b88022f5897
7 years ago
Richard Fuchs
c969ea1e57
move stats and statsps into global scope
...
Change-Id: I02d16e31f8980bd0ef3ff3a190b23dc61c087018
7 years ago
Richard Fuchs
790e596c58
move cngs out of callmaster into global scope
...
Change-Id: I138ca8756dfc576451bc7c3fca1db89d6616fb1e
7 years ago
Richard Fuchs
399e15b39a
make the callhash global
...
Change-Id: Ifa1fbb5d1b1f623dbc6a1bfac556342735b40161
7 years ago
Richard Fuchs
b7aeff9a1c
TT#24550 implement CLI get/set log level
...
Change-Id: Ifedc8561f08fe75af210346f5032e8d893f2e0d5
7 years ago
Richard Fuchs
e1ce74985f
TT#28354 consolidate CLI string handling
...
Change-Id: Icb0734f94d5910427a57c85e31e85782a62b22fe
7 years ago
Richard Fuchs
2eb01695bb
TT#26756 clean up CLI code using streambuf
...
Change-Id: I0e6c264d5cbd569fb35fab3ad2b0a4f6413949b0
7 years ago
Pawel Kuzak
8941c827d3
Fix control statistics headlines
...
StopRec was missing
8 years ago
Richard Fuchs
523228b981
Merge branch 'stop-recording' of https://github.com/1and1/rtpengine
8 years ago
Claudiu Boriga
cf15275f30
add stop recording comand to ng interface
8 years ago
Richard Fuchs
11dac7b28f
TT#12800 add MOS statistics to final log output
...
also converts call->created to a timeval
Change-Id: Idb71ada22a2d04637670b7515e54f2994f8d4c93
8 years ago
Claudiu Boriga
edac4f2cd7
make cli_incoming accept multiple connections
...
fixes #280
8 years ago
Richard Fuchs
6594b2b884
fixes for coverity
...
Change-Id: I92eebf9a44fed8d826e0c2a207c05cd02c5ade0c
8 years ago
Richard Fuchs
e85759a3b8
fix some errors caught by coverity
...
Change-Id: I3f5bfc2df00ab9b031eef5a1c71b6ff3ba25e60c
8 years ago
Frederic-Philippe Metz
d88587512a
Cleanup according to pull req #335
8 years ago
Richard Fuchs
984585a32c
TT#5003 implement kernel-side call recording
...
Squashed commit of the following:
commit 1af3efd464d9c86eb428aa29ca084ead67ba4cdc
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Mon Nov 7 11:10:22 2016 -0500
save and restore call recording status to/from redis
closes #254
Change-Id: If3cd34fcfd64fa8164521a86eb1d1aa0eb327f3b
commit 460053a2316ac77ebf2609af4e5bf73beac57643
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Fri Nov 4 14:09:08 2016 -0400
restore libcurl build dependency
Change-Id: Ia853f928caf9e443bb69c4015cbba805e6d24153
commit 5f5fd88fde67ffcd5a83f1a18e9134702f995686
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Fri Nov 4 11:22:27 2016 -0400
ensure we are always decrypting SRTP when recording
Change-Id: I2b75afefcadc55ebf1bf6a19a983134c87c41602
commit 69b4e9fa886c673bed6168c2092864fdff2619aa
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Fri Nov 4 09:56:47 2016 -0400
remove redundant ng result=ok logic
Change-Id: I84d7245f52dc12a4002b4dd2b736afea9ae733fa
commit 411213dd3d17c1e54eeb6813cb0473a706a10cee
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Nov 3 16:04:54 2016 -0400
support the `start recording` command message
Change-Id: I316e90fd3fe34f01b20826936ef620bcff785397
commit ae1910c68d90d0c1f913bd09f9ecdee5579f53f4
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Nov 3 15:01:57 2016 -0400
move logic for `record call` flag to where it belongs
Change-Id: I65a3b5d62f4360df4251faea1339b5a6355c0e6d
commit 217008d572d103ab4146cdcfb9c292610c869643
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Nov 3 12:49:48 2016 -0400
support combining streams into one pcap in reference scripts
Change-Id: Id82936ae7ef1b406acf3b4d3429ecc1cb6e2356e
commit 3fcafd92750d20e07b9c522cd15df0f1745bd412
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Nov 3 11:40:00 2016 -0400
output additional details to metafiles
Change-Id: I0539a0617aff51c9c499bbd9586d61c7e7ca7e7c
commit e81f413f3ba228f548931a234a1c18c13c62b135
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Nov 2 16:18:28 2016 -0400
globalize kernel access variables
Change-Id: Ie07e0ebb8705189c8b1e49f596080ff8bcaef64f
commit 5e74609c7c3e5237fbd9995b90b29b2c456d2c04
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Nov 2 12:20:55 2016 -0400
duplicate error messages to stderr when in foreground
Change-Id: Iaf9d8d1392946046846cb6f2c0fb928a96893911
commit 032077bed4a4b3610e88deab905f6a41616393e6
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Nov 2 11:38:22 2016 -0400
eliminate dummy virtual function
Change-Id: I7cc2596f31350bf0d39253b3bd7e9fe1cec2b92d
commit 9177effc4e56b0fc26f44da525fe88d8aa3a6f05
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Nov 2 11:30:58 2016 -0400
clean up recording code related to ng interface
Change-Id: I69c6d953f8467e5154f000979c94f2dc3a79918a
commit ac0ec6a5e7b4927af5294a6e86a129a8ffc90e7a
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Nov 2 10:57:15 2016 -0400
output before/after sdp to metafiles
Change-Id: I1d3177e40591d6b4c4789eb6e18132743a9eda45
commit 68b27fa964455eef4c4acaf9540d19013b3df3e7
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Tue Nov 1 15:40:20 2016 -0400
fix header length problems
Change-Id: I896453f72df3ba146251f5d82ca1d02dd0ad08e9
commit ebbd942ad00b3a4eb74fbfcd915e82a263243d02
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Tue Nov 1 14:14:08 2016 -0400
support writing pcap files in reference intercept script
Change-Id: I53502ba416426e9012a68c35cdf4b457d7c3eb69
commit fe82efa40a5b0fee4bed2601bab7c1afa09b0ce1
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Tue Nov 1 13:35:47 2016 -0400
ensure we never make any calls that might sleep when holding locks
Change-Id: I1ce6aeced1f61715374b80f6fb1fbeafc987ae7f
commit be5316e804368fad28c2a0012ac2d60cb476b740
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Tue Nov 1 13:08:19 2016 -0400
fix math in auto_array_find_free_index
Change-Id: I39c786b03dbafe59b88a1945ac27964c3852c9eb
commit 183d4939ca8e1fc0f39271713435b016c055bfff
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Tue Nov 1 11:41:47 2016 -0400
adding rudimentary lock debugging
Change-Id: Iff541c58e5ea4c3fc2ec16e93396148f935bc4f3
commit 51a75c5022f96a23b8fff6738b5fa4ad7095a746
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Mon Oct 31 14:35:17 2016 -0400
handle read errors in reference intercept script
Change-Id: I047d763dbd498026a0d8db24c5532155c75fd6e6
commit 69a460de08c6dfe163f9d90dee478c72ea56a2fc
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Mon Oct 31 14:34:54 2016 -0400
changed locking semantics to avoid proc_clear deadlock
Change-Id: I70dbc07aa8af7b9860beca86b4b82d8180d8a0ae
commit 62eae1459a8dc116a0f965d014dd2962d9f2ece2
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Mon Oct 31 12:50:26 2016 -0400
additional debugging
Change-Id: I81c93c2dd9007ed6a0d6e0b147de0deb44b7b023
commit fd367947404c25f7122479dc805ca895346e3568
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Fri Oct 28 12:07:25 2016 -0400
adding reference implementation using inotify
Change-Id: Ibec73bdc4c7a576e4beaf5e749567dd2508be4df
commit f8fde6cc7308faf9aea5016d1b325fe54ace4f73
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Oct 27 15:55:10 2016 -0400
add stream info to metadata files
Change-Id: I200df14a3e35c2c0077866444b96692de4303761
commit 5a8b4dd156d014756681c644549f481af941b294
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Oct 27 14:47:49 2016 -0400
pass intercepted packets to kernel and tie in kernel idx
Change-Id: I33ff297c4a66276b05d0e5d537b0281f27116243
commit 0c0b97ea3940a34843375c58255d40cf4280bd5c
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Oct 27 12:29:02 2016 -0400
abstractize fake packet header and support ipv6
Change-Id: I6c1ad1cccad306f3d306fb3387efcb033a3574b2
commit e1b648b9baea609cbe9836c81a5a2cd41ef464cb
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Oct 27 09:32:40 2016 -0400
support creating kernel intercept streams
Change-Id: I1f9bdda61af52814f07f765a8b558a7491cfc0b9
commit b6737ec9635d2d7a8d0245bab7c51a077cd814d2
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Oct 26 14:46:13 2016 -0400
get rid of call->record_call flag
Change-Id: I04dcba49b07fc669b0bb4bcea8ccc2b52cb76e02
commit 6ed362c120995d1e3fdff71f7e440e73737e7fcb
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Oct 26 12:53:04 2016 -0400
add recorded call to /proc
Change-Id: I1fe64b9fb8fe3604bb7d432899c43e3e37ea6a4f
commit 62d2508ecf69fbdf9ba1faf3e2433fa6f717740a
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Oct 26 10:10:05 2016 -0400
simplify some code
Change-Id: I2a27400e91f58aa8ea20d3e610a7509d2e9a0dfc
commit 0c811a8e91ded41487bf045e6df55fb31cce7671
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Tue Oct 25 16:12:59 2016 -0400
create separate ../tmp recording dir and clean up duplicate code
Change-Id: I94e0c19a1e8fed5a30212b79930987333f5e6786
commit 16592a92300b856084ebd5769ecae35788f0ad63
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Tue Oct 25 11:26:54 2016 -0400
remove explicit libcurl dependency
finally properly fixes #251
Change-Id: I3feafe2d0086f6dd789175e6ec0079c54edd487a
commit c78ac5bbb7e65609175753933f7e75d54ea21c30
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Tue Oct 25 10:48:50 2016 -0400
abstractize recording cleanup routine
Change-Id: Ib9fc46542f273bab53f611a1456f02d67edfc966
commit d8358c9a2c6cbd66e17d4bb08dba96a3b2e2d41a
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Tue Oct 25 10:07:44 2016 -0400
use shorthand for function pointers
Change-Id: Idf43949e20281a10317e22a5b68a6d133e398bd4
commit 9417437c1092770e36bde22b508f9d71078d4a1b
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Mon Oct 24 15:31:56 2016 -0400
abstractize individual recording functions
Change-Id: I0974696b6bb361fce39b24d6be91b5c052ee2b14
commit eb631cd876a0f941ed4fb6d47412a6892e019f1b
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Mon Oct 24 11:54:42 2016 -0400
abstractize call recording mechanism
Change-Id: If8672051227944544d9cf916d359c5db67235e3e
commit 70797ceb8f36c45593688652df98f19a5c1dd9f4
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Jul 14 11:25:05 2016 -0400
combine two mallocs into one for user-generated packets
Change-Id: I585d129f10d379a5cb853382773f91a7cec9a98d
commit f62f71cee404893b3f5076489d6a3eb1ad6f69c0
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Jul 13 14:22:18 2016 -0400
check for and avoid /proc file name collisions
Change-Id: Ie9eb9ceef8f32de8aba816f0121e768c57fa7402
commit ec6b3d22fcce8e7e2edd35704a559fe392406561
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Jul 13 11:02:04 2016 -0400
implement free list
Change-Id: I3e7dc2325c937923d19ce6000f2cf1c011e51037
commit bd75a1cf254c484878d07ecceca7220cdbf1ddb3
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Jul 13 09:30:36 2016 -0400
make number of packets retained per stream configurable
Change-Id: If1c87f80dd7367cbc274d13c15f94836ef9c8cb1
commit de259c3d646526bd200f619371668798ddae86b2
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Tue Jul 12 15:15:01 2016 -0400
facilitate passing packets from kernel module out to userspace
Change-Id: I2317a007084a1718e185ba04632c53a9ebe5f29d
commit 3aa88716fb86c62f96b6dfc7d0d9c9755fa1f389
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Mon Jul 11 10:45:10 2016 -0400
restructure calls and streams to global arrays
Change-Id: Icfca615b21f2e51b1abda4422c4eeb8f4ac70a9b
commit 6cf9980f3e61f1f1d44b5ce883298ca2726af1b2
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Fri Jul 8 11:53:32 2016 -0400
implement poll/select mechanism
Change-Id: Ic10c017250f0991f691a887b078e80f694bba853
commit d95829e07b2bf4d3352806c70b3393ae3a8609fb
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Fri Jul 8 10:44:38 2016 -0400
discard new/old packets as required
Change-Id: If73ce77dcbc24addb6ce0931b90de0f5efae9f51
commit be1d769e4454f1d98f0b75cc8301c128a40e980c
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Fri Jul 8 10:25:38 2016 -0400
implement EOF for stream readers
Change-Id: I858dc1fdd7df3b65283e1d96457d87e7452840f5
commit ed2d98d55a87ce428cdc66d9336035f3dc0cb5ae
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Jul 7 15:02:58 2016 -0400
blocking and nonblocking reads - incomplete
Change-Id: I7cbfb09507ad8726773d6a28ddb98d5981decd04
commit 246709c7f4741e669c4a78b48c382497bf57c6be
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Jul 7 13:55:41 2016 -0400
rudimentary packet reading/dequeuing
Change-Id: I1a924e5cb2ef4e4f16aeff1f1dd90d0746f91da5
commit 427749394995d2e6fb8ad7ddc23c876b1c8e11f1
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Jul 7 12:40:31 2016 -0400
use kzalloc where appropriate
Change-Id: Icd6a109a69ab4f6dc9f7d35fd9e8fc9127f8e7e0
commit 5b07819217dfb47201a373e941aab185789484a9
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Jul 7 09:07:54 2016 -0400
more module referencing
Change-Id: I2e34fe74f2edef9170a4558f6a24394240966d79
commit 1d8268f636c26ec21c3cfa2308bad91262e0768a
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Jul 6 14:56:42 2016 -0400
store delivered packets in queue
Change-Id: Id349b75e06f9dd77c884196b7726027ac5cab7ae
commit 23c6a53f94c46ead7093b5402486799fc631e432
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Jul 6 14:21:27 2016 -0400
implement call for packet delivery
Change-Id: Ibeb815bf2fedfdd644d324c65b58a24871d47d4a
commit c8fd855f325128b78f4e276bfb26b479ef189b11
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Jul 6 10:28:18 2016 -0400
automatic cleanup of objects upon free/delete
Change-Id: If244905e2d074f491229316f3305c9b0b1451792
commit 282ef603a83637c9a8e33ed31d09268fa45a6301
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Jul 6 09:47:29 2016 -0400
unify read/write functions
Change-Id: I78b0dd05cd730e16655034994c74cbe23be23fce
commit e74c62cc6f0dce85fea6534d8d72e2f51e0947d6
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Tue Jul 5 15:36:00 2016 -0400
rename _push to _put and _hold to _get
Change-Id: I9b0ff5038b541bd3cfb961657c15a26f26ccdfb2
commit d71ce17529d1938ce2439b122fb6017e29dd079b
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Tue Jul 5 15:33:07 2016 -0400
support creation and deletion of streams
Change-Id: I7df05d232b5971c54ca50adce8144b5f1646fba0
commit 8be4e2c7c49dd7b893335f14ca98776a1f3fb12f
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Tue Jul 5 11:54:39 2016 -0400
create functions for redundant code
Change-Id: Id3772f12294ee9891d22d833274e5935814cae0b
commit 47ce4ca8f5d694e50c98f73147ed2eb81f14ea8a
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Jun 30 12:12:19 2016 -0400
support creation and deletion of calls objects
Change-Id: Ie5f9aa978bac21fc30909f14d6a438494848dfd5
commit 8dab54209d3e52d41f78d8f54956a4ed3dc15da3
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Jun 29 14:20:23 2016 -0400
create /proc/.../calls directory
Change-Id: I682a4bf23edbb72772d64963e3ba2cab2a521ff4
commit 1401ae8db5f9e2a973c670f3bf72e9019c451276
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Jun 29 14:02:11 2016 -0400
rename kernel message enum
Change-Id: I45d7aeae43df1fe6ecd6b6965dbd6ba7e7b715d8
commit ce44ff0dbe67a6687d5fb1bea9d31e21c9464907
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Jun 29 14:00:32 2016 -0400
convert kernel message data to union
Change-Id: I7cfd9fe81623efae0a828ba457aa0a4b1380ff03
Change-Id: I4bb0b7f6d29c1c7a2144e4735ed59f3dc0e37094
9 years ago
Lucian Balaceanu
512cc24f9a
Print relay IP information
...
Add relay IP info in MDR, `rtpengine-ctl list sessions <Call-ID>`, call_destroy()
9 years ago
Pawel Kuzak
96cd5fcf01
Merge remote-tracking branch 'upstream/master'
9 years ago
Stefan Mititelu
bd7abe6409
Fix memory leak for notifications feature
...
Add log_info_clear() to cancel out log_info_call() from call_get*().
9 years ago
Richard Fuchs
a813ddfeae
fix compiler warnings due to conflicting int types
...
Change-Id: If61e59b8512357b3b3049387b2d37d67cdf5af3c
9 years ago
Stefan Mititelu
4fd69132a2
Merge remote-tracking branch 'upstream/master'
9 years ago
Richard Fuchs
0206f09b93
fix obj-debug stuff
...
required moving includes/headers around to avoid circular dependencies
Change-Id: Ia43e3254f252f94ec387be6b9c85fce4e727b251
9 years ago
Stefan Mititelu
ce3ae37a76
Fixes after second review
...
- read/write lock config_lock for keyspace operations
- read lock hashlock when iterating through the callhash
9 years ago
Stefan Mititelu
f392d9b768
Update notifications flag logic
...
-> is_backup_call becomes foreign_call (established via redis notifications)
-> remove active_foreign_call logic
Add only libevent-dev dependency.
9 years ago
Stefan Mititelu
1648757aa7
Fixes after first review
...
- don't alloc keyspaces integers
- refactor notifications event base logic
- add libevent_pthreads
9 years ago
Stefan Mititelu
9ec8ac6a47
Upgrade rtpengine-ctl tool
...
Add rtpengine-ctl terminate own/foreign.
Add rtpengine-ctl list sessions <callid>/all/own/foreign.
9 years ago