21117 Commits

Author SHA1 Message Date
Anthony Minessale
9d7e9e6742 FS-3731 --resolve 2011-12-01 07:41:18 -06:00
James Zhang
7b83dd4c96 Fixed the exception condition - trigger reset
used to clear ckt_flags, this was wrong.
	if ctk_flags are blindly cleard a PAUSE might be cleared.
	changed the code to clear only TX RESET and try to reset again.

Release Collision
	If we get out of sync with other side we must
	reset the circuit.
    This condition occoured at 1+3 test box

Local Management Block
    Its possible for stack to send us a BLO indicating to us
    that we are local blocked.  This case never worked and
    we would get stuck there forever.
    If we never manaully sent a LOCAL block, the BLO from
    the stack will be acked and then unblocked.
    This condition occoured at 1+3 test box
2011-12-01 03:16:59 -05:00
James Zhang
997c127a94 Fixed following two secnarios
From previous commit, failed to clear the done flag _DN
which cause SUSPEND to think that there was a block
pending, causing state to remain in RESTART

S UP -> relay down -> Tx AIS -> relay up -> Tx AIS off
  -> confirm all back up
  -> In this condition BLO will not go out due to PAUSE

S UP -> Tx AIS -> relay down -> Tx AIS off -> relay up
  -> confirm all back up
  -> In this condition UBL will not go out due to PAUSE
2011-11-30 20:02:25 -05:00
Jeff Lenk
eae86e0a13 vs2010 reswig 2011-11-30 18:14:24 -06:00
James Zhang
fa64d3954d Sigificant changes to the core state machine :)
Visually status of channels will only be DOWN once all resets/blocks are cleared.
Therefore if any reset/block is active on a channel, the channel state will be in RESTART not DOWN.

Logic Change

SUSPENDED
   -> Originally used as intermediate state. Purpose is to handle a condition
      from any state and go back to the previous state.
      Conditions: such as  block/ucic.
   -> Updated logic is that SUSPEND will be smart enough not to
      go back to just any state.  SUSPEND will only go back to
      UP - if call is still up
      RESTART - if for any reason singaling is not up due to
                blocks/resets/etc...
      DOWN - if signaling is UP - no resets/blocks
      In this case we avoid infinite loops due to state jumping
      from STATE->SUSPEND->STATE->SUSPEND
HANGUP_COMPLETE
   -> If call is in use and a RESET comes on a call
      the RESTART state will first try the HANGUP_COMPLETE state.
      HANGUP_COMPLETE will Tx RSC and wait for it.
      Reset Response handle was updated if current state HANGUP/HANGUP_COMPLETE
      go back to RESTART state.  Which will call HANGUP COMPLETE due to
      channel in usage and HANDLE_COMPLETE will clear RESET condition and go back to DOWN
TERMINATING
   -> This state is used to hangup a call. Sends a signal to FS.
   -> Usually TERMINATING state stays in TERMINATING until FS comes back.
   -> I added a condition in case of RESET on the line though TERMINATING
      will go back to RESTART.
      This allows us to process RESET commands even though we are
      in the middle of hanging up.
Block Handler
   If BLO is received on circuit is already blocked,
   we failed to trasmit BLA.  We should always ack the BLO
   even though it was alrady in blocked state.

Fixed & Tested

S UP --> place call --> relay down --> hangup --> relay up-->
   Confirm that call is hungup properly.
   In this condition, on relay up the circuit  is put into RESET.
   Since circuit is still in use, it will HANGUP first, then RESET
   then clear pending BLOCK.

S UP --> place call -> Tx RSC on call.
   Used to cause infitie loop
   Confirm call is cleard properly

Re-Tested

S UP --> place call -> Rx RSC on call
   Confirm call is cleard properly

S UP --> place call -> Rx BLO -> hangup -> place call
   Confirm call cannot be placed
   Tx UBL
   Confirm call can be placed

S UP --> place call -> Rx BLO -> Tx BLO -> hangup -> place call
   Confirm call cannot be placed
   Tx UBL
   Confirm call cannot be placed
   Rx UBL
   Confirm call can be placed

S UP --> place call -> relay down --> Rx BLO on channel from telco
     --> relay up
   Confirm that relay detects the BLO channels even though relay was down

Tx AIS -> S Start -> Confirm HW block -> Tx AIS off
   -> Confirm hw block clear and UP

S UP -> Tx AIS -> Confirm HW block -> Tx AIS off
   -> confirm hw block clear and UP

S UP -> relay down -> Tx AIS -> relay up -> Tx AIS off
   -> confirm all back up
   -> In this condition BLO will not go out due to PAUSE

S UP -> Tx AIS -> relay down -> Tx AIS off -> relay up
   -> confirm all back up
   -> In this condition UBL will not go out due to PAUSE
2011-11-30 19:11:33 -05:00
Michael Jerris
cdfea085d2 add some missing indexes 2011-11-30 14:07:00 -05:00
Anthony Minessale
1ee867444d FS-2936 remove unused functions 2011-11-30 09:26:16 -06:00
Michael Jerris
64f04023a1 FS-2936: don't allow using system libcurl on systems that strip out Curl_setopt, we use it 2011-11-30 12:21:08 -05:00
Michael Jerris
36f0a5b870 FS-2936: don't allow using system libcurl on systems that strip out Curl_setopt, we use it 2011-11-30 12:03:53 -05:00
Michael Jerris
1ea5b3cf62 FS-2936: link curl on freeswitch binary as well to fix linker error on ubuntu 2011-11-30 11:33:37 -05:00
Jeff Lenk
f5abef2000 FS-3728 --resolve thanks 2011-11-30 08:57:11 -06:00
Di-Shi Sun
fafcc46a97 Merge branch 'master' of ssh://git.freeswitch.org:222/freeswitch 2011-11-30 15:19:34 +08:00
Di-Shi Sun
ca97a49e29 Fixed buffer overflow issue caused by max number of destinations. 2011-11-30 15:17:13 +08:00
Jeff Lenk
674619b395 FS-2936 changes for vs2010 build - vs2008 coming later 2011-11-29 22:28:50 -06:00
Anthony Minessale
13dc2f9e31 FS-2936 stage 5 handle varargs right 2011-11-29 18:17:42 -06:00
Anthony Minessale
d9089edf89 finishing touches for commit: b9e28f85cb35db7dd72b6760310fa3ad18e5aa2d 2011-11-29 16:23:49 -06:00
Anthony Minessale
a7238d0b9d FS-2936 stage 4 these too 2011-11-29 15:38:52 -06:00
Anthony Minessale
17e9c50ee5 FS-2936 stage 3 probably need this file 2011-11-29 15:37:36 -06:00
Anthony Minessale
e794a6db21 FS-2936 stage 2 please test ASAP 2011-11-29 15:35:36 -06:00
Michael Jerris
74ed2cef01 step 1 of curl linked in core 2011-11-29 14:35:28 -05:00
James Zhang
96068d901d Fixed case
S UP - Place Call - relay down - Hangup - relay up -
Confirm Call hangsup up properly and unblock is set.

Fixed unexpeced reset condidtions.
2011-11-29 13:11:38 -05:00
Anthony Minessale
e58ed35d17 FS-2936 stage 1 2011-11-29 11:13:11 -06:00
Anthony Minessale
f41020a625 FS-3727 --resolve 2011-11-29 08:28:10 -06:00
Brian West
eef4bb03d3 swigall 2011-11-29 14:33:47 -06:00
Brian West
82807998d5 FS-3718 2011-11-29 14:32:11 -06:00
Anthony Minessale
12f2bdf66a FS-3724 2 ways to fix after updating to this version, 1) run set_zombie_exec in the dp; 2) use system_on_fax_success/system_on_fax_failure vars with explicit name of your command 2011-11-28 16:45:59 -06:00
Anthony Minessale
ead7c770bd FS-3664 please try this 2011-11-28 16:11:09 -06:00
Anthony Minessale
216c1786e8 fix dmachine parse issue 2011-11-28 18:13:23 -06:00
Anthony Minessale
4ce8f5e28e FS-3688 some more general changes during proxy media 2011-11-28 13:38:05 -06:00
Christopher Rienzo
12a1ac9432 fix mod_http_cache crash reported by hunmonk and mstockton 2011-11-28 19:22:09 +00:00
Anthony Minessale
f4320b58c8 swap rwlock and mutex 2011-11-28 08:27:46 -06:00
Tamas Cseke
196f890a08 change content-type and add encode-values param FSCORE-3721 2011-11-28 17:11:34 +01:00
Anthony Minessale
313b16481e FS-3688 d'oh missed one line of the patch.... This should be the keeper 2011-11-26 08:53:01 -06:00
James Zhang
5b8af78a89 Fixed 5 relay conditions
M UP  -> S UP
M Down -> S UP -> M UP
M UP -> S UP -> relay down -> relay up
M UP -> S UP -> Kill M -> M UP
M Up -> S UP -> relay down -> M link down -> relay up -> M link up
2011-11-25 21:05:39 -05:00
Tamas Cseke
100017e7e2 FS-3719 --resolve 2011-11-25 11:59:03 +01:00
Di-Shi Sun
db8a43ad79 Merge branch 'master' of ssh://git.freeswitch.org:222/freeswitch 2011-11-25 17:32:59 +08:00
Di-Shi Sun
1e48c84df6 Updated for OSP Toolkit 4.0.2. 2011-11-25 17:26:46 +08:00
Nenad Corbic
69c62f7b38 Fixed the out of sequence frame condition
Redmine Bug#1966
IAM ->
<-REL
<-ACM
<-ANM

ACM sets the reset flag
ANM sets the group reset flag
when both reset flags are set we got into infinite loop
2011-11-24 19:19:58 -05:00
Anthony Minessale
b9e28f85cb add send_info dp app and uuid_send_info FSAPI and execute_on_sip_extra_headers and api_on_sip_extra_headers handler variables 2011-11-23 15:38:59 -06:00
Jeff Lenk
35112f2269 FS-3586 --resolve 2011-11-23 13:25:24 -06:00
Anthony Minessale
4ab5fd14b3 fix regex parsing in dmachine 2011-11-23 11:00:00 -06:00
Anthony Minessale
4dbc9d7cbc FS-3688 I think 100'th time's the charm..... 2011-11-23 10:33:51 -06:00
Anthony Minessale
58c3c3a049 comment out optional Require header from re-invites for the sake of interop with testy t.38 terminals 2011-11-22 18:22:57 -06:00
Anthony Minessale
dc9bf68301 FS-3714 --resolve You are using the sip_from_host and sip_to_host which are calculated based on the response from the other end, this patch will pre-populate the variables with what it is suspeceted to be in these values but they are not guranteed to be right if there was forwarding etc and also it will not always be an ip if you send to foo@domain.com the sip_to_host will be domain.com until it replies. This is the best you will get.... 2011-11-22 17:59:14 -06:00
Michael S Collins
092c232814 Update ChangeLog through Oct 31; update phrase_en.xml 2011-11-22 15:48:29 -08:00
Rupa Schomaker
51fe96281c FS-3676 --resolve mod_lcr - convert assert to log and fix check condition 2011-11-22 16:10:21 -06:00
Anthony Minessale
5ffcb8acdf FS-3713 --resolve 2011-11-22 08:46:13 -06:00
Anthony Minessale
68627e86ac FS-3688 update and repeat tests (part 2) 2011-11-21 13:52:28 -06:00
Anthony Minessale
a160f30ee7 FS-3688 update and repeat tests 2011-11-21 13:39:21 -06:00
Anthony Minessale
513a9e1a9a FS-3710 --resolve 2011-11-21 15:37:07 -06:00