Richard Fuchs
24a6815e87
preliminary attempt to make the udp controller thread-safe
14 years ago
Richard Fuchs
161b2eec6a
private structs make for safer threading
14 years ago
Richard Fuchs
c24514404e
missing a streambuf lock here
14 years ago
Richard Fuchs
984899d913
and the tcp controller becomes thread-safe
14 years ago
Richard Fuchs
86a4cc8876
add appropriate threading compile flags
14 years ago
Richard Fuchs
0a18880d36
make use of "make debug" target
14 years ago
Richard Fuchs
2905c333f7
making timers thread-safe
14 years ago
Richard Fuchs
229cb3c3ce
use obj_* to catch double-free errors
14 years ago
Richard Fuchs
aa261d2a66
add mutex_trylock primitives
14 years ago
Richard Fuchs
e01692c297
add basic locking to callmaster struct
14 years ago
Richard Fuchs
f6760ecc84
disable object debugging, seems to work fine
14 years ago
Richard Fuchs
0857b32eda
add rwlock type and primitives
14 years ago
Richard Fuchs
8a6f735ed9
object size isnt really a useful piece of information
14 years ago
Richard Fuchs
856c0b9cce
make the obj_ primitives more liberal to make for easier calling
14 years ago
Richard Fuchs
540d847d08
catch the inevitable disaster early and define our own mutex types. sigh. and there i was, thinking that using the glib types would make things easier.
14 years ago
Richard Fuchs
e11d55b3fb
glib < 2.32 requires use of distinct static mutex type
14 years ago
Richard Fuchs
2b63e794df
Prepare for multi-threaded operation
Introduce generic "objects" with reference counting primitives and automatic
resource deallocation when no refs are left ("garbage collection"). Overhaul
poller framework to make extensive use of these objects to allow for future
thread-concurrent operation.
No locking added anywhere yet except in poller. Poller is still not 100%
thread safe, but close.
Valgrind reports no errors or memleaks.
14 years ago
Richard Fuchs
135aa3decf
remove obsolete targets from makefile
14 years ago
Richard Fuchs
4a3e36bf04
mybsearch function is also obsolete
14 years ago
Richard Fuchs
1ee9782b98
dont poll kernel list when table couldnt be opened
14 years ago
Richard Fuchs
8b320e76d9
lets be more strict with timer removal
14 years ago
Richard Fuchs
52ef56d106
it's inefficient to walk the entire list of poller items every second just to look for times which we don't really use. so instead, use the linked timers list for this purpose. this is also inefficient for timer remove, but since we don't use those times anyway, we don't care.
14 years ago
Richard Fuchs
ee30ea647a
BSEARCH macro is obsoleted
14 years ago
Richard Fuchs
69e5a2840a
use glib slice allocator in poller
14 years ago
Richard Fuchs
48f0a61277
good bye poll(), hello epoll_*()
14 years ago
Richard Fuchs
89fb0c42c4
update .so name to match .deb
14 years ago
Richard Fuchs
f3a5ea2eb8
take rtcp ports into account when checking for timeouts
14 years ago
Richard Fuchs
f28fea205b
take 0-byte packets into consideration when updating peer info for NAT'd streams
14 years ago
Richard Fuchs
6c6332ed91
dump packet stats upon call teardown
14 years ago
Richard Fuchs
376dd662ba
increase max udp packet len to 8192 and add warning message if the limit is hit
14 years ago
Richard Fuchs
8f94668a72
log version upon startup
14 years ago
Richard Fuchs
44db4d4548
who knew that zero-length udp packets are valid?
14 years ago
Richard Fuchs
5dfb33aa9d
be a bit more clear in the read error message
14 years ago
Richard Fuchs
e9f0681d45
log error code upon RTP socket error
14 years ago
Richard Fuchs
e62a58eb31
remove uuid helper code
14 years ago
Richard Fuchs
f775df551c
separate redis code from main code - modularize!(tm)
14 years ago
Richard Fuchs
4090cb4a93
add alarm timeout for xmlrpc calls
14 years ago
Richard Fuchs
3fc55e0eae
we need to use the to-tag for sems
14 years ago
Richard Fuchs
c054124217
pipelined redis commands may also fail, handle it
14 years ago
Richard Fuchs
af0d2e9e45
make RPC call to SBC upon RTP timeout for call teardown
14 years ago
Richard Fuchs
e47f8265a5
link against xmlrpc-c libs
14 years ago
Richard Fuchs
7b6c8db4f5
add --b2b-url CLI parameter
14 years ago
Richard Fuchs
29f66f8f0d
create a cli flag to disable automatic fallback to userspace if desired
14 years ago
Richard Fuchs
a23fe2f7b6
Fall back to userspace forwarding if kernel module is unavailable
14 years ago
Richard Fuchs
e781f53243
always store ip addresses in ipv6 format from now on
14 years ago
Richard Fuchs
cefa4d764d
correctly restore ipv4 addresses from redis
14 years ago
Richard Fuchs
332e5d59b5
adding some redis debug messages
14 years ago
Richard Fuchs
a0c696e9c4
DEL multiple redis keys with one statement when possible
14 years ago
Richard Fuchs
241d479de2
Push viabranch info into redis and restore it as well
14 years ago
Richard Fuchs
e6a56fc3e4
Don't try to remember viabranch if viabranch is NULL (only applies to TCP protocol)
14 years ago