Richard Fuchs
9bac9bc683
MT#55283 include explicit cast in STR_INIT
Some source strings are `const char *` and we don't have an alternative
`str` type pointing to a const buffer. Strictly speaking some buffers
aren't even char buffers, yet we use the `str` type to manage them. This
eliminates the need to explicitly cast every usage.
Change-Id: Ifd3cdd3d400fc483e6c488a95e9381938e63cc7f
2 years ago
Richard Fuchs
49037aee91
MT#55283 use typed G* for codec-set/except/SDES
Change-Id: Ib64e36db7ccccda83a84d36f716d13906d098946
2 years ago
Richard Fuchs
404f264d73
MT#55283 introduce typed str_q
Change-Id: Ib3ad0c63d751cc795bff48e1b9fc81f88c7de9d0
2 years ago
Richard Fuchs
afbb76992c
MT#55283 use g_auto for str objects
Change-Id: Idf211e3e73593e0b8213d516446d33d95e866db1
2 years ago
Richard Fuchs
4b2dff1528
MT#55283 fix warnings for older/non-gcc compilers
... which don't know about __attribute__((access))
Change-Id: I30a31d03ab492e0e9cd2f7e59a292ad7ba9b184e
2 years ago
Richard Fuchs
309b69772d
MT#55283 annotate str functions
Change-Id: I896dc74ced7df96d4f5fd06061a20fae2ab98274
2 years ago
Richard Fuchs
d9e682b7db
MT#56374 add convenience macros for string creation
... and use them in a few places where it makes sense
Change-Id: I849f2841990808de6f697c92e2760645286dacca
2 years ago
Richard Fuchs
3e81cfa351
MT#55283 further compiler warning fixes
for #1690
Follow up to 37d7762f
Change-Id: Id58204db5a733b3d821cbef855fac72451484b41
2 years ago
Richard Fuchs
5838141e80
TT#89352 extend str_to_* to long long width
Change-Id: Ie4c94640f7b59fa6b6cbed1082a6be6c3a1490e5
4 years ago
Richard Fuchs
94a5feea7d
TT#111150 fix coverity warnings
Change-Id: I330d5137d38017641bdda71e8bd014c358c432fb
5 years ago
Richard Fuchs
fc0bbf1079
TT#91151 switch str_init_dup to g_malloc
This makes it possible to use buffers returned by GString
interchangably.
Change-Id: If15a5c0be2743dde7230b2f3d3ca6780d633622b
5 years ago
Richard Fuchs
1d387b98ef
TT#112700 rework codec offer/answer routine
Complete overhaul of the codec handling code:
*) obsolete flags `asymmetric codecs`, `symmetric codecs`, `reorder
codecs`
*) support proper codec offer/answer
*) split codec manipulation (strip/offer/accept/etc) into separate
functions for clarity and better code maintenance
*) fully update codec handlers in both directions after an answer
*) explicit allocation and handling of codecs and payload types in a
codec_store object
*) improve codec matchup logic during answer
*) more explicit handling of supplemental codecs (CN/DTMF)
*) remove now obsolete hacks for handling certain use cases
Change-Id: I996705ba8fe339524c2f70e6bb0fd854f9a1f4fb
5 years ago
Richard Fuchs
24079deb10
TT#14008 add explicit type to STR*INIT macros
This allows these macros to be used in regular assignments and not just
initialisers.
Change-Id: I66ed96192c16ef777959fd9e40302db2786b6545
5 years ago
Richard Fuchs
3778baee1b
TT#14008 use const char in str_init_dup
Change-Id: I57246916f472d4d2f61611c401e2324b97329bb6
5 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
5 years ago
Richard Fuchs
b9d68914e6
TT#111150 remove obsolete str_chunk_insert
This leads to unaligned memory access, so remove it.
Change-Id: I4d7c6d42a58f20a0d69fbb933cb925e3bcf0c695
5 years ago
Richard Fuchs
055b745c2f
TT#111150 don't pass null pointers to memchr or memcpy
If the length of the string is zero, the pointer to the buffer may be
null. ASAN flags these as invalid/undefined, so don't do that.
Change-Id: Ic55498465c53a78e1bd44c42d1a60f9bd3336473
5 years ago
Richard Fuchs
7cbea58090
fix str_init_dup_str
closes #1021
Change-Id: I0354e4b357c159893a91ef9c96560f99a12778d2
6 years ago
Richard Fuchs
3c3729f81c
TT#28300 fix missing strdup for multi homed interfaces
Change-Id: Ifaac7f85a5ab3515d95e72b6ee640c9e865cf219
6 years ago
Stefan Mititelu
831bb88e24
Fix Valgrind "still reachable" for if name and q
6 years ago
Richard Fuchs
a4849f7ae6
TT#28300 eliminate need for if_a_global
Change-Id: I4b1c23d9a08b68bd722e14d7077198ddbaefc2e0
6 years ago
Richard Fuchs
f6d134918a
TT#76711 fix str_sprintf va_args definition
Change-Id: I70d65bc519ca82fe4e464946beb154e0b5031c0d
6 years ago
Richard Fuchs
db507468de
TT#59100 support case insensitive codec names
closes #775
Change-Id: Id54309bf0920e731ad42fb09b078580090f6f82e
7 years ago
Richard Fuchs
26b725d024
TT#45617 add new options to support log markers for sensitive data
Change-Id: I2ffa4da4be3a05f043e7991612bbb37d8102d91a
7 years ago
Richard Fuchs
744d6a46ff
add codec-set option
Codecs that were implicitly accepted for transcoding had no option to
set their parameters (such as bitrate) for encoding. The codec-set
option adds this.
fixes #681
Change-Id: Ib238eb73a507af168c366579abc80da07250fe88
7 years ago
Richard Fuchs
01c5e5075d
TT#45472 use memmem() for str_str()
also fixes an off-by-one bug of the original str_str()
Change-Id: Ic781f963eea90e3d29ed856c8b00f150eedb139b
7 years ago
Richard Fuchs
895fa96054
TT#35456 implement RFC 4867
Fixes AMR transcoding. Some features yet unsupported.
Fixes #498
Change-Id: I1075a539a7a7dab9106df9ef49b8bda2484b97ec
8 years ago
Richard Fuchs
092f8da3c6
use str_token_sep for SDP token extraction
closes #472
Change-Id: I10dc4aa8baadfc4c3d5ef5514e47fecc4bf2f10e
8 years ago
Richard Fuchs
7986ca0860
TT#30900 support specifying codec parameters for transcoding
Change-Id: Ifac093cfba74a7cfdf1ba22209d608e04fed8c10
8 years ago
Richard Fuchs
1aa9944fe4
TT#27550 implement interface round-robin selection
Change-Id: Id5cf290cc9d044716b5f55cf416dc40b87f23f24
8 years ago
Richard Fuchs
61d828a48f
change str_chr_str() semantics
Change-Id: I0fb541215a1bb1a248693a6258e953827258b7ec
8 years ago
Richard Fuchs
5bcbf27fe1
fix metadata DB insert without trailing pipe character
fixes #374
Change-Id: Ibfe89b7804183ef04eba39d29e01b70160f7c264
8 years ago
Michael Prokop
6932f22c66
TT#22411 Fix spelling mistakes/typos
s/paramter/parameter/
s/fowarding/forwarding/
s/readabilty/readability/
s/recieving/receiving/
s/genrated/generated/
s/parametes/parameters/
s/existance/existence/
s/shouldnt/shouldn't/
s/seperate/separate/
s/neccessary/necessary/
s/occurence/occurrence/
s/timout/timeout/
s/ouput/output/
Change-Id: I4403eb54130f3c114d7881054abfdfc8223b5bf2
8 years ago
Richard Fuchs
e7d75bd275
TT#19350 add option to manage iptables rules directly
Change-Id: I8e2b47bf34206ed5cc369649bf8ef875ac271169
8 years ago
Richard Fuchs
d8cc8caf9c
combine two mallocs into one for redis restore
Change-Id: I6a5c26b6e0c856b1930273c37b35020dd48c6505
9 years ago
Richard Fuchs
f77726caa8
update redis one-key concept
Change-Id: Ifc164f5737decefef2463af57d75f717b97e169b
9 years ago
Richard Fuchs
d7fa0689f9
TT#5566 rudimentary wav file output
Change-Id: Icdc97a9dc849bba6ba6add12d0bdd17f8b7712cd
9 years ago
Richard Fuchs
984585a32c
TT#5003 implement kernel-side call recording
Squashed commit of the following:
commit 1af3efd464
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 460053a231
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Fri Nov 4 14:09:08 2016 -0400
restore libcurl build dependency
Change-Id: Ia853f928caf9e443bb69c4015cbba805e6d24153
commit 5f5fd88fde
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 69b4e9fa88
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 411213dd3d
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 ae1910c68d
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 217008d572
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 3fcafd9275
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Nov 3 11:40:00 2016 -0400
output additional details to metafiles
Change-Id: I0539a0617aff51c9c499bbd9586d61c7e7ca7e7c
commit e81f413f3b
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Nov 2 16:18:28 2016 -0400
globalize kernel access variables
Change-Id: Ie07e0ebb8705189c8b1e49f596080ff8bcaef64f
commit 5e74609c7c
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 032077bed4
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Nov 2 11:38:22 2016 -0400
eliminate dummy virtual function
Change-Id: I7cc2596f31350bf0d39253b3bd7e9fe1cec2b92d
commit 9177effc4e
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 ac0ec6a5e7
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 68b27fa964
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Tue Nov 1 15:40:20 2016 -0400
fix header length problems
Change-Id: I896453f72df3ba146251f5d82ca1d02dd0ad08e9
commit ebbd942ad0
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 fe82efa40a
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 be5316e804
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 183d4939ca
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Tue Nov 1 11:41:47 2016 -0400
adding rudimentary lock debugging
Change-Id: Iff541c58e5ea4c3fc2ec16e93396148f935bc4f3
commit 51a75c5022
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 69a460de08
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 62eae1459a
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Mon Oct 31 12:50:26 2016 -0400
additional debugging
Change-Id: I81c93c2dd9007ed6a0d6e0b147de0deb44b7b023
commit fd36794740
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Fri Oct 28 12:07:25 2016 -0400
adding reference implementation using inotify
Change-Id: Ibec73bdc4c7a576e4beaf5e749567dd2508be4df
commit f8fde6cc73
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 5a8b4dd156
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 0c0b97ea39
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 e1b648b9ba
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Oct 27 09:32:40 2016 -0400
support creating kernel intercept streams
Change-Id: I1f9bdda61af52814f07f765a8b558a7491cfc0b9
commit b6737ec963
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 6ed362c120
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Oct 26 12:53:04 2016 -0400
add recorded call to /proc
Change-Id: I1fe64b9fb8fe3604bb7d432899c43e3e37ea6a4f
commit 62d2508ecf
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Oct 26 10:10:05 2016 -0400
simplify some code
Change-Id: I2a27400e91f58aa8ea20d3e610a7509d2e9a0dfc
commit 0c811a8e91
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 16592a9230
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 c78ac5bbb7
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Tue Oct 25 10:48:50 2016 -0400
abstractize recording cleanup routine
Change-Id: Ib9fc46542f273bab53f611a1456f02d67edfc966
commit d8358c9a2c
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Tue Oct 25 10:07:44 2016 -0400
use shorthand for function pointers
Change-Id: Idf43949e20281a10317e22a5b68a6d133e398bd4
commit 9417437c10
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Mon Oct 24 15:31:56 2016 -0400
abstractize individual recording functions
Change-Id: I0974696b6bb361fce39b24d6be91b5c052ee2b14
commit eb631cd876
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Mon Oct 24 11:54:42 2016 -0400
abstractize call recording mechanism
Change-Id: If8672051227944544d9cf916d359c5db67235e3e
commit 70797ceb8f
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 f62f71cee4
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 ec6b3d22fc
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Jul 13 11:02:04 2016 -0400
implement free list
Change-Id: I3e7dc2325c937923d19ce6000f2cf1c011e51037
commit bd75a1cf25
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 de259c3d64
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 3aa88716fb
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 6cf9980f3e
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Fri Jul 8 11:53:32 2016 -0400
implement poll/select mechanism
Change-Id: Ic10c017250f0991f691a887b078e80f694bba853
commit d95829e07b
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 be1d769e44
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Fri Jul 8 10:25:38 2016 -0400
implement EOF for stream readers
Change-Id: I858dc1fdd7df3b65283e1d96457d87e7452840f5
commit ed2d98d55a
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Jul 7 15:02:58 2016 -0400
blocking and nonblocking reads - incomplete
Change-Id: I7cbfb09507ad8726773d6a28ddb98d5981decd04
commit 246709c7f4
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Jul 7 13:55:41 2016 -0400
rudimentary packet reading/dequeuing
Change-Id: I1a924e5cb2ef4e4f16aeff1f1dd90d0746f91da5
commit 4277493949
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Jul 7 12:40:31 2016 -0400
use kzalloc where appropriate
Change-Id: Icd6a109a69ab4f6dc9f7d35fd9e8fc9127f8e7e0
commit 5b07819217
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Jul 7 09:07:54 2016 -0400
more module referencing
Change-Id: I2e34fe74f2edef9170a4558f6a24394240966d79
commit 1d8268f636
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Jul 6 14:56:42 2016 -0400
store delivered packets in queue
Change-Id: Id349b75e06f9dd77c884196b7726027ac5cab7ae
commit 23c6a53f94
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Jul 6 14:21:27 2016 -0400
implement call for packet delivery
Change-Id: Ibeb815bf2fedfdd644d324c65b58a24871d47d4a
commit c8fd855f32
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 282ef603a8
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Jul 6 09:47:29 2016 -0400
unify read/write functions
Change-Id: I78b0dd05cd730e16655034994c74cbe23be23fce
commit e74c62cc6f
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 d71ce17529
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 8be4e2c7c4
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Tue Jul 5 11:54:39 2016 -0400
create functions for redundant code
Change-Id: Id3772f12294ee9891d22d833274e5935814cae0b
commit 47ce4ca8f5
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 8dab54209d
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Jun 29 14:20:23 2016 -0400
create /proc/.../calls directory
Change-Id: I682a4bf23edbb72772d64963e3ba2cab2a521ff4
commit 1401ae8db5
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Jun 29 14:02:11 2016 -0400
rename kernel message enum
Change-Id: I45d7aeae43df1fe6ecd6b6965dbd6ba7e7b715d8
commit ce44ff0dbe
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
Dylan Mikus
b3d6073447
Prefix recording metadata and pcap files with call id
We want to be able to associate call files with a call without the
presence of identifying metadata within the metadata file. To accomplish
this, we prepend the call-id to the start of the pcap recording files
and the call metadata files.
Even though call-id is supposed to be unique, because of paranoia we
keep some of the random affix hex string, but we reduced it down to an
8-byte random value.
Also, some minor argument ordering and name refactoring for random
string generation functions.
10 years ago
Dylan Mikus
7c53e9f95b
Moved file system management and random string code to appropriate files.
File system code is now in fs.{h|c}. This includes:
- spool directory setup
- metadata file management
- pcap file creation and writing
Random hex string generation is now in str.h.
10 years ago
Richard Fuchs
b5e36c223c
MT#18599 simplify RTCP parsing
Change-Id: Ide82c1c882589f99e10cce28646b835ae3d8831c
10 years ago
Richard Fuchs
6d3865b971
Mass update - manual merge of rfuchs/socket-rework branch
This brings master up to date with branch `rfuchs/socket-rework` at
commit `b1bcc096b7`. The branches have diverged too much for a proper
merge, so this is a manual (squashed) merge.
The old master before this merge can be found in branch
`old-master-before-socket-rework` (commit `82199216b2`).
This is a complete rewrite of all socket handling routines. The most
important functional change is that sockets aren't indiscriminately
bound to INADDR_ANY (or rather in6addr_any), but instead are always
bound to their respective local interface address and with the correct
address family.
Side effects of this are that in multi-homed environments, multiple
sockets must be opened (one per interface address and family) which must
be taken into account when considering RLIMIT_NOFILE values. As a
benefit, this change allows rtpengine to utilize the full UDP port space
per interface address, instead of just one port space per machine.
The socket abstraction also makes it possible to support RTP over TCP in
the future.
Change-Id: If6cf4f42136229490186d2d2482fb4fc140c2b53
10 years ago
smititelu
c969ab9f60
Change maxsessions feature behaviour
* 0 will allow 0 sessions (e.g. can be used for draining rtpengine)
* -1 will disable the feature and will be treated the same way as if
MAX_SESSIONS variable has not been set via configuration file
(or has been set to -1 in configuration file)
* < -1 will not be taken into consideration
* add check for minint range also
10 years ago
smititelu
00bb10bba7
Add 'rtpengine-ctl set maxsessions X' command
10 years ago
smititelu
4b92d14e1f
Allow more than 65536 open files
RTPengine starts with 1048575 (1<<20 - 1) maximum open files limit.
Make the maximum number of open files configurable using
"rtpengine-ctl set max-open-files 'open_files_num'" command.
Update utils script.
10 years ago
Richard Fuchs
d9d8f97db0
support delete-delay passed as a string
fixes #118
11 years ago
Richard Fuchs
eea325683b
MT#12691 implement via-branch handling
use via-branches to predict different destinations for branched SDP
offers without knowing the respective to-tag ahead of time.
Squashed commit of the following:
commit 0e81dc9828
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu May 21 11:06:15 2015 -0400
fix segfault due to missing reverse tagging
commit cd7a26314b
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu May 21 08:57:42 2015 -0400
support branched offer with previously unseen to-tag
commit 77da616dd2
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Apr 29 11:15:37 2015 -0400
implement via-branch handling
11 years ago
Richard Fuchs
4a97bb167a
attempt to work around trickle ice
11 years ago
Richard Fuchs
c2ff5c3fd3
MT#9935 understand, learn, remember and report RTP payload types (codecs)
Squashed commit of the following:
commit cca40e8e31
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Feb 12 10:17:51 2015 -0500
support per-payload-type stats in kernel module
commit dcc0dc0002
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Feb 11 12:14:44 2015 -0500
count unknown rtp type as error
commit 941bde0df5
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Feb 11 12:01:55 2015 -0500
use the list of rtp formats from the m= line
This avoids dynamically altering the rtpstats hash table and makes
keeping packet stats lock free.
commit 9150fed671
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Fri Feb 6 15:06:04 2015 -0500
fix and simplify rtpmap hash table
commit 1f73741cbf
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Fri Feb 6 13:56:07 2015 -0500
MT#9935 understand, learn, remember and report RTP payload types (codecs)
commit b0d690837c
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Nov 20 13:36:25 2014 -0500
parse a=rtpmap attribute
11 years ago
Richard Fuchs
f826d01c29
make "trust address" the default behaviour
adds CLI option --sip-source to restore old default, and adds
new flag "SIP source address" to achieve the same on a per-call
basis
11 years ago