Richard Fuchs
95d9de7bc4
make the stats collection thread-safe
14 years ago
Richard Fuchs
c19b99903c
lets try with a lot of large, nested, naive locks
14 years ago
Richard Fuchs
28ac7b996c
getting rid of call->log_info and introducing call->lock
14 years ago
Richard Fuchs
9fecc4d153
make the callmaster struct private - also requires update to redis module
14 years ago
Richard Fuchs
e02b5398ce
granular lock for "ports used" bit field
14 years ago
Richard Fuchs
dd48d554c9
TOS for ipv6 needs an int to work
14 years ago
Richard Fuchs
1b20dcaa44
gonna need more than one lock in callmaster, so rename the one we have
14 years ago
Richard Fuchs
0dac780f86
getting rid of more global variables
14 years ago
Richard Fuchs
c8021adadf
EINTR requires special handling
14 years ago
Richard Fuchs
8edc107f2d
using thread-local-storage for eliminating constant calls to time()
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
2905c333f7
making timers thread-safe
14 years ago
Richard Fuchs
e01692c297
add basic locking to callmaster struct
14 years ago
Richard Fuchs
856c0b9cce
make the obj_ primitives more liberal to make for easier calling
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
1ee9782b98
dont poll kernel list when table couldnt be opened
14 years ago
Richard Fuchs
48f0a61277
good bye poll(), hello epoll_*()
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
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
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
af0d2e9e45
make RPC call to SBC upon RTP timeout for call teardown
14 years ago
Richard Fuchs
a23fe2f7b6
Fall back to userspace forwarding if kernel module is unavailable
14 years ago
Richard Fuchs
cefa4d764d
correctly restore ipv4 addresses from redis
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
Richard Fuchs
b3d6729e10
Remove packaged libhiredis
14 years ago
Richard Fuchs
d9e6920daa
properly handle pcre_get_substring_list returning empty strings on non-matched substrings
14 years ago
Richard Fuchs
c2d34a9f1e
avoid coredump
14 years ago
Richard Fuchs
3d47cba839
check tags in delete message
14 years ago
Richard Fuchs
49be46b41c
let's try a different approach to via-branch handling, reverting most of andi's changes
14 years ago
Andreas Granig
11a77d9cc8
Fix lookup handling for viabranch.
14 years ago
Andreas Granig
24d22be867
Supress replacing call hash when deleting full call.
14 years ago
Andreas Granig
ca40d99f9a
Properly allocate callid mem when replacing hash entry.
14 years ago
Andreas Granig
39766afdf6
Update callhash on removal of first call in linked list.
14 years ago
Andreas Granig
93a822f271
More debug messages.
14 years ago
Andreas Granig
24e2a02f9f
Delete full call if only one branch is left.
14 years ago
Andreas Granig
542a171bb4
Use proper function to remove all branches on D command.
14 years ago
Andreas Granig
40b80e49fa
Remove callid hash-entry first, then free calls.
14 years ago
Andreas Granig
6c669c6f07
Print viabranch in syslog messages along the callid.
14 years ago
Andreas Granig
81f5926f58
More debugging.
14 years ago
Andreas Granig
26570a02ac
Another typo. Too much perl development lately :)
14 years ago
Andreas Granig
aab3ef7e8a
Fix typo.
14 years ago