Hi Daniel, >-----Original Message----- >From: Daniel Wagner [mailto:[email protected]] >Sent: Tuesday, November 08, 2011 5:47 PM >To: Wang, Arron >Cc: [email protected]; Patrik Flykt >Subject: Re: [PATCH] session: Reset ecall_info when emergency call app exits >abnormally > >Hi Arron, > >On 08.11.2011 10:09, Wang, Arron wrote: >>> -----Original Message----- >>> From: [email protected] >>> [mailto:[email protected]] On Behalf Of Patrik Flykt >>> Sent: Tuesday, November 08, 2011 4:54 PM >>> To: [email protected]; Daniel Wagner >>> Subject: Re: [PATCH] session: Reset ecall_info when emergency call app >> exits >>> abnormally >>> >>> >>> Hi, >>> >>> On Tue, 2011-11-08 at 03:38 -0500, Yu A Wang wrote: >>>> Fixes BMC#23631 >>>> --- >>>> src/session.c | 3 +++ >>>> 1 files changed, 3 insertions(+), 0 deletions(-) >>>> >>>> diff --git a/src/session.c b/src/session.c >>>> index 83cdaf0..ae3614b 100644 >>>> --- a/src/session.c >>>> +++ b/src/session.c >>>> @@ -1407,6 +1407,9 @@ static void owner_disconnect(DBusConnection >>> *conn, void *user_data) >>>> >>>> DBG("session %p, %s died", session, session->owner); >>>> >>>> + if (ecall_info != NULL && ecall_info == session->info) >>>> + ecall_info = NULL; >>>> + >>>> session_disconnect(session); >>>> } >>> >>> The behavior on emergency call application exiting abnormally needs >>> input from wagi for defining the expected policy. I could guess the >>> emergency is still ongoing, and thus the emergency application probably >>> needs to be restarted by the system immediately. How the new instance of >>> the emergency app becomes the owner of the ecall is currently unknown >>> and unimplemented. >> >> When emergency call app runs it will set the EmergencyCall flag whether when >> it first run or restart, then I think it will be ok for us to reset it when >> it exits abnormally. Anyway we need our expert Wagi's advice :-) > >The current assumption is that the emergency application runs all the >time. In the case where it crashes it should be restarted immediately >(properly by systemd). The tricky part is when the emergency call >application crashes during an emergency call. In this case we really >should not reset the ecall bit. Instead we should just wait until the >emergency application is back and resumes work. The emergency call >application is really in charge in this case.
Yes, it will be better to wait emergency application back and resumes work. >First thing to note is that only one emergency call application is >allowed to run at the time. We also have to protect the access to the >EmergencyCall Setting through some means (the proposal is to use >PolicyKit rules for this). If the application dies through the emergency >call and then is restarted we can assign the owner ship to this session. When the application restart, it will still follow the normal process: run the app, create the session then connect it. We can reserve the session it created before, we only need change the session owner and notify watch for it, also according to the notify path or session path, we can also identify the emergencycall app correctly. Please correct me if I am wrong, I will write a new patch for it. Thanks Arron
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________ connman mailing list [email protected] http://lists.connman.net/listinfo/connman
