Richard Fuchs
d44df2f272
need to lock the call a bit earlier
14 years ago
Richard Fuchs
fea8005331
add option for redis testing
14 years ago
Richard Fuchs
826b44153c
split callstream_init into callstream_new for redis module
14 years ago
Richard Fuchs
0f3ea0ba53
echo core >> .gitignore
14 years ago
Richard Fuchs
f5f9f70ea5
fix warning for broken calls
14 years ago
Richard Fuchs
ac5fc5f99b
fix logging inconsistency
14 years ago
Richard Fuchs
7fa39e50d9
be a lazy developer and try to load the .so locally
14 years ago
Richard Fuchs
2003ab1825
catch erroneous no-op makefile
14 years ago
Richard Fuchs
cdad0babce
adding .gitignore files
14 years ago
Richard Fuchs
86eb9c8e74
adding ipv6 support to test script
14 years ago
Richard Fuchs
ca55d5d296
advancing the call simulator test script
14 years ago
Richard Fuchs
4da3a8050d
its always nice to call openlog()
14 years ago
Richard Fuchs
f20f72c27a
reorder calls to redis for proper locking
14 years ago
Richard Fuchs
22083298b9
a more robust thread shutdown procedure
14 years ago
Richard Fuchs
2832dadc00
since xmlrpc is still segfaulting even in its own process, disable core dumps in the child and retry the xmlrpc call up to 3 times if the child terminates abnormally. jumping through hoops ftw!
14 years ago
Richard Fuchs
5e63928da4
xmlrpc still segfaulting. leaves no choice but to fork out a new process, ugh.
14 years ago
Richard Fuchs
41da40f2f7
xmlrpc calls still causing segfaults, lets try with a dedicated client object per call... i'm starting to dislike this library
14 years ago
Richard Fuchs
27acaf75fd
enough with the glib threading nonsense, it's only causing problems. revert to good old pthread stuff
14 years ago
Richard Fuchs
71b38dd1f5
the curl xmlrpc transport isnt playing nicely - revert to default
14 years ago
Richard Fuchs
a131fd6803
cant decref null references
14 years ago
Michael Prokop
8dc3310924
wrap and sort items in Debian packaging files
This makes reviews and diffs easier and helps in avoiding duplicate entries.
devscripts's wrap-and-sort ftw.
Closes: https://bugtracker.sipwise.com/view.php?id=1845
From: Michael Prokop <mprokop@sipwise.com>
14 years ago
Richard Fuchs
c5693b65a4
dont block fatal core-dumping signals
14 years ago
Richard Fuchs
c3d87f3cfb
make the simulator delete all calls at the end
14 years ago
Richard Fuchs
e4f6ed562f
udp can be unreliable even over localhost
14 years ago
Richard Fuchs
8a2923a35e
new call simulator script for testing against udp protocol
14 years ago
Richard Fuchs
49c77f6be4
the status command gets really slow under valgrind, so put it into background
14 years ago
Richard Fuchs
c11d0e2882
add proper locking to callstream setup procedure
14 years ago
Richard Fuchs
5f40e7d173
actually the call struct needs neither linked flag nor shutdown flag due to the sequence of events and locking
14 years ago
Richard Fuchs
81562e0a50
need to lock the callstream a bit earlier
14 years ago
Richard Fuchs
19f4bc3121
fix a silly, threading-unrelated, statistics-skewing bug
14 years ago
Richard Fuchs
5ea20be0ae
turns out you actually have to free/destroy mutexes. who woulda thunk?
14 years ago
Richard Fuchs
7b20eb4b84
om nom nom memory leak... well, reference count leak
14 years ago
Richard Fuchs
cb9967260e
analoguous to the last race, call_destroy() must not assume that it's getting the last reference to the call
14 years ago
Richard Fuchs
ad308c149e
here we go with the subtle race conditions
14 years ago
Richard Fuchs
0050f57de6
dont abort polling on EINTR
14 years ago
Richard Fuchs
de7ef884fa
and for the interesting part: multiple poller threads
14 years ago
Richard Fuchs
c44673113d
move poller timers and polling into a separate thread
14 years ago
Richard Fuchs
0eb3694422
making main() pretty by moving stuff out of the way
14 years ago
Richard Fuchs
e5aa11aa6b
global xmlrpc init must be done prior to any threading
14 years ago
Richard Fuchs
22043b686f
alarms arent usable in a threaded environment, so use curl internal timeout instead
14 years ago
Richard Fuchs
4304bf48c2
must extract needed tags for xmlrpc call teardown prior to destroying the calls
14 years ago
Richard Fuchs
358a194dcc
moving call teardown due to timeout to a separate thread
14 years ago
Richard Fuchs
c8c2928cef
it makes no sense to return a value from an effectively detached thread
14 years ago
Richard Fuchs
c5aa1e33f4
detached threads considered harmful, so simulate them by keeping a threads-to-join list
14 years ago
Richard Fuchs
61ffa69282
use sigtimedwait for proper sighandler thread shutdown
14 years ago
Richard Fuchs
5cecf39605
lets get some threads going then, starting with a signal handler
14 years ago
Richard Fuchs
bfcfc7b471
keeping the lock hold time to a minimum in lengthy calls_status operation
14 years ago
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