summaryrefslogtreecommitdiffstats
path: root/src/voicecall.c
AgeCommit message (Collapse)AuthorFilesLines
2015-11-29voicecall: don't dereference a supplied null valueSimon Fels1-3/+12
When the voicecall atom is unregistered we remove all HFP support as well but were supplying a zero as value to the emulator status callbacks which caused the process to crash as we were dereferencing the supplied value always and not respecting a zero as indicator to reset.
2015-08-06voicecall: Don't accept USSD strings in Dial()Denis Kenzior1-0/+3
2014-10-20emulator: Improve SLC establishment logicDenis Kenzior1-0/+4
2013-09-12voicecall: Implement ofono_voicecall_mpty_hintDenis Kenzior1-0/+40
2012-11-28voicecall: Add extra debug infoDenis Kenzior1-0/+3
2012-11-28voicecall: Fix crashDenis Kenzior1-4/+7
2012-11-22voicecall: Handle RESETTING sim stateDenis Kenzior1-0/+1
2012-09-05voicecall: Accept long phone number format for STKPhilippe Nunes1-1/+1
2012-08-05voicecall: Implement ReleaseAndSwapDenis Kenzior1-0/+23
2012-07-15voicecall: Avoid shadowing of number variableMarcel Holtmann1-2/+2
2012-07-15voicecall: Remove shadowing modem variableMarcel Holtmann1-5/+1
2012-05-20Do not set signature and reply in GDBus tablesLucas De Marchi1-35/+29
Use GDBUS_* macros, so signature and reply fields are not set in each method/signal.
2012-05-20Convert GDBus methods to use macro helpersLucas De Marchi1-36/+53
With these macro helpers we can separate in/out arguments and use their own vector.
2012-05-20Constify GDBus signal tablesHenrique Dante de Almeida1-2/+2
Constify signal tables with the following command: find . -name '*.[ch]' -exec \ sed -i 's/\(GDBusSignalTable .* =\)/const \1/g' {} \;
2012-05-20Constify GDBus method tablesHenrique Dante de Almeida1-2/+2
Constify method tables with the following command: find . -name '*.[ch]' -exec \ sed -i 's/\(GDBusMethodTable .* =\)/const \1/g' {} \;
2012-03-20voicecall: Force callheld update after calls swapFrédéric Danis1-4/+72
In HFP spec, a callheld indicator update should be sent after swapping calls, even if it stays to 1 (AG has both active and held calls).
2012-03-13voicecall: Improve transitions checkFrédéric Danis1-12/+17
Indicators should not be updated if: - multiple separate calls are active at same time - a conf call and a call are active at same time - multiple separate calls are held at same time - a conf call and a call are held at same time - a conf call has call in active and held state
2012-03-07voicecall: Don't set indicators during transitionsDenis Kenzior1-0/+13
2012-02-09voicecall: Fix emulator AT+CHUP for HFPFrédéric Danis1-1/+2
AT+CHUP should be able to hang-up active or incoming calls
2012-01-18voicecall: Use __ofono_atom_findDenis Kenzior1-6/+3
2011-10-12voicecall: Make emulator use release_queueDenis Kenzior1-18/+11
2011-10-12voicecall: Fix HangupAll for HFPDenis Kenzior1-5/+38
HFP does not implement HangupAll natively and most AGs do not support releasing held calls by id. Work around this by using hangup active and then dropping all held calls if no waiting calls exist. Otherwise fall back to releasing calls by id.
2011-10-10core: Update copyright informationMarcel Holtmann1-1/+1
2011-08-18voicecall: Relax reqs for hangup of held callsDenis Kenzior1-1/+3
If we have a single held call, then it should be possible to hang it up with 'Hangup' even if active calls exist. Only if multiple held calls or a waiting call exists should we disallow the request due to possible side-effects.
2011-08-18voicecall: Move stuff aroundDenis Kenzior1-48/+48
2011-08-15emulator: fix indicator notificationFrédéric Danis1-11/+0
2011-07-25voicecall: Be more paranoid and null terminateDenis Kenzior1-1/+4
2011-07-25voicecall: Use defined constantsDenis Kenzior1-3/+3
2011-07-25voicecall: api for set/clear alpha and icon idJeevaka Badrappan1-0/+65
2011-07-21voicecall: remove usage of em_atd_numberFrédéric Danis1-10/+9
as emulator atom can only run with a 'ready' SIM, use saved number instead of em_atd_number
2011-07-19voicecall: Free settings when sim gets locked outDenis Kenzior1-1/+2
2011-07-19voicecall: close settings when SIM is removedFrédéric Danis1-0/+3
This also fixes the case where +BLDN uses an invalid number when the SIM is removed.
2011-07-19voicecall: fix callheld indicator for PTSFrédéric Danis1-0/+20
Fix PTS test TP/TWC/BV-03-I [Call Waiting- Hold Active/Retrieve Waiting Call or Held]. PTS test fails after receiving intermediate update of callheld indicator with value 0 (no held call) before it receives update to value 1 (active and held calls). This is due to the non-atomic update of calls status after call swap (moving first call to active state before moving second one to hold state). HFP 1.5 spec specifies that an update of callheld indicator to 1 should be sent after AT+CHLD=2 command. As oFono emulator sends +CIEV only if the indicator value changes, we need to use an intermediate state for callheld indicator (2, all calls on hold). So, in case of multiple active calls, or an active call with an active mutiparty call, force update of callheld indicator to 2.
2011-07-14voicecall: Minor style fixDenis Kenzior1-5/+5
2011-07-14voicecall: dial_request_user_cancel is not safeDenis Kenzior1-14/+8
It is not safe to call dial_request_user_cancel directly. This is because there might be a situation where the SIM requested the calls to be dropped first. If we're still executing the release_all_active request and someone calls hangup -> crash. Instead it is safer to throttle the hangup requests until the call is actually dialing. In similar fashion, we should not allow hanging up a specific call if a dial request is active, unless that call is part of the SIM dial request. Note that by default this is not known until the driver's dial implementation returns and the call is in the dialing (or alerting / connected) state.
2011-07-14voicecall: Send busy to DBus if emulator is pendingDenis Kenzior1-12/+12
2011-07-14voicecall: Don't send response to defunct emulatorDenis Kenzior1-12/+28
2011-07-14voicecall: Throttle emulatorsDenis Kenzior1-35/+45
Make sure that only a single request from (possibly multiple) emulators is ever sent to the voicecall driver. In the beginning it wasn't clear whether this will be necessary, however several command implementations already implemented basic throttling (+CHUP, ATD, CHLD=3, CHLD=2x) and it made sense to make this more formal. The other constraint is the abrupt removal of the emulator atom while an operation is pending. This case must be handled gracefully. See next commit.
2011-07-14voicecall: Minor style fixesDenis Kenzior1-4/+4
2011-07-14voicecall: manage multiparty list in AT+CHLD=2XFrédéric Dalleau1-2/+56
2011-07-14voicecall: manage multiparty list in AT+CHLD=3Frédéric Dalleau1-4/+51
2011-07-14voicecall: Minor style fixDenis Kenzior1-1/+1
2011-06-21voicecall: add ATD> support for HFP emulatorFrédéric Danis1-3/+28
2011-06-16voicecall: add +BLDN support for HFP emulatorFrédéric Danis1-0/+34
2011-06-16voicecall: add ATD support for HFP emulatorFrédéric Danis1-19/+146
2011-06-01voicecall: save last dialed numberFrédéric Danis1-0/+45
2011-06-01voicecall: create generic dial functionFrédéric Danis1-27/+55
split manager_dial between generic and dbus parts
2011-05-24voicecall: remove unnecessary local varFrédéric Dalleau1-5/+1
2011-05-22voicecall: add +VTS support for HFP emulatorFrédéric Dalleau1-0/+52
2011-05-16voicecall: fix CHLD support replyFrédéric Dalleau1-2/+2