Richard Fuchs
feeeee2fab
must extract needed tags for xmlrpc call teardown prior to destroying the calls
13 years ago
Richard Fuchs
973d92d9c7
moving call teardown due to timeout to a separate thread
13 years ago
Richard Fuchs
2dd6cfe68c
keeping the lock hold time to a minimum in lengthy calls_status operation
13 years ago
Richard Fuchs
8c2c69f5e6
make the stats collection thread-safe
13 years ago
Richard Fuchs
d9e09f33bc
lets try with a lot of large, nested, naive locks
13 years ago
Richard Fuchs
ae5a36f5ce
getting rid of call->log_info and introducing call->lock
13 years ago
Richard Fuchs
900f76a17e
make the callmaster struct private - also requires update to redis module
13 years ago
Richard Fuchs
aeb5398b0d
granular lock for "ports used" bit field
13 years ago
Richard Fuchs
a8680cc2d9
TOS for ipv6 needs an int to work
13 years ago
Richard Fuchs
0b0b41e67f
gonna need more than one lock in callmaster, so rename the one we have
13 years ago
Richard Fuchs
4588e13a76
getting rid of more global variables
13 years ago
Richard Fuchs
e033d1da1c
EINTR requires special handling
13 years ago
Richard Fuchs
db15692f21
using thread-local-storage for eliminating constant calls to time()
13 years ago
Richard Fuchs
5f5e158d76
private structs make for safer threading
13 years ago
Richard Fuchs
ebd2893e96
missing a streambuf lock here
13 years ago
Richard Fuchs
7dc00bd258
making timers thread-safe
13 years ago
Richard Fuchs
de33b8da40
add basic locking to callmaster struct
13 years ago
Richard Fuchs
8e5ad59558
make the obj_ primitives more liberal to make for easier calling
13 years ago
Richard Fuchs
145bbd1f7c
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.
13 years ago
Richard Fuchs
2594da3b45
dont poll kernel list when table couldnt be opened
13 years ago
Richard Fuchs
8d50923508
good bye poll(), hello epoll_*()
13 years ago
Richard Fuchs
2a8c07df0e
take rtcp ports into account when checking for timeouts
13 years ago
Richard Fuchs
70ac6a274c
take 0-byte packets into consideration when updating peer info for NAT'd streams
13 years ago
Richard Fuchs
24cf5a0ca0
dump packet stats upon call teardown
13 years ago
Richard Fuchs
b6650a9d78
increase max udp packet len to 8192 and add warning message if the limit is hit
13 years ago
Richard Fuchs
e4575cf31f
who knew that zero-length udp packets are valid?
13 years ago
Richard Fuchs
33b7872115
be a bit more clear in the read error message
13 years ago
Richard Fuchs
35404af428
log error code upon RTP socket error
13 years ago
Richard Fuchs
dc7517121d
remove uuid helper code
13 years ago