62 TRACE_FLAGS_DEFAULT, |
63 TRACE_FLAGS_DEFAULT, |
63 (EAPL("CEapServerProcessHandler::~CEapServerProcessHandler(): this=0x%08x\n"), |
64 (EAPL("CEapServerProcessHandler::~CEapServerProcessHandler(): this=0x%08x\n"), |
64 this)); |
65 this)); |
65 EAP_TRACE_RETURN_STRING(iTools, "returns: CEapServerProcessHandler::~CEapServerProcessHandler()"); |
66 EAP_TRACE_RETURN_STRING(iTools, "returns: CEapServerProcessHandler::~CEapServerProcessHandler()"); |
66 |
67 |
|
68 if (iClient) |
|
69 { |
|
70 TInt error = iClient->CancelReadyHandler(this); |
|
71 if (error != KErrNone) |
|
72 { |
|
73 EAP_TRACE_DEBUG( |
|
74 iTools, |
|
75 TRACE_FLAGS_DEFAULT, |
|
76 (EAPL("ERROR: CEapServerProcessHandler::~CEapServerProcessHandler(): iClient->CancelReadyHandler() failed, error=%d\n"), |
|
77 error)); |
|
78 } |
|
79 } |
|
80 delete iEapCore; |
|
81 iEapCore = 0; |
|
82 |
|
83 delete iEapPlugin; |
|
84 iEapPlugin = 0; |
|
85 |
|
86 delete iEapSettings; |
|
87 iEapSettings = 0; |
|
88 |
|
89 delete iWapiCore; |
|
90 iWapiCore = 0; |
|
91 |
|
92 delete iWapiSettings; |
|
93 iWapiSettings = 0; |
|
94 |
|
95 #if defined(USE_FAST_EAP_TYPE) |
|
96 delete iPacStore; |
|
97 iPacStore = 0; |
|
98 #endif //#if defined(USE_FAST_EAP_TYPE) |
|
99 |
|
100 delete iEapSendMessageQueue; |
|
101 iEapSendMessageQueue = 0; |
|
102 |
|
103 delete iEapProcessMessageQueue; |
|
104 iEapProcessMessageQueue = 0; |
|
105 |
67 if(IsActive()) |
106 if(IsActive()) |
68 { |
107 { |
69 Cancel(); |
108 Cancel(); |
70 } |
109 } |
71 |
|
72 delete iEapCore; |
|
73 iEapCore = 0; |
|
74 |
|
75 delete iEapPlugin; |
|
76 iEapPlugin = 0; |
|
77 |
|
78 delete iEapSettings; |
|
79 iEapSettings = 0; |
|
80 |
|
81 #if defined (USE_WAPI_CORE) |
|
82 delete iWapiCore; |
|
83 iWapiCore = 0; |
|
84 |
|
85 delete iWapiSettings; |
|
86 iWapiSettings = 0; |
|
87 #endif |
|
88 |
|
89 #if defined(USE_FAST_EAP_TYPE) |
|
90 delete iPacStore; |
|
91 iPacStore = 0; |
|
92 #endif //#if defined(USE_FAST_EAP_TYPE) |
|
93 |
|
94 delete iEapMessageQueue; |
|
95 iEapMessageQueue = 0; |
|
96 } |
110 } |
97 |
111 |
98 //---------------------------------------------------------------------------- |
112 //---------------------------------------------------------------------------- |
99 |
113 |
100 CEapServerProcessHandler* CEapServerProcessHandler::NewL() |
114 CEapServerProcessHandler* CEapServerProcessHandler::NewL() |
112 (EAPL("CEapServerProcessHandler::ConstructL(): this=0x%08x\n"), |
126 (EAPL("CEapServerProcessHandler::ConstructL(): this=0x%08x\n"), |
113 this)); |
127 this)); |
114 EAP_TRACE_RETURN_STRING(tools, "returns: CEapServerProcessHandler::ConstructL()"); |
128 EAP_TRACE_RETURN_STRING(tools, "returns: CEapServerProcessHandler::ConstructL()"); |
115 |
129 |
116 iClient = client; |
130 iClient = client; |
|
131 |
117 iTools = tools; |
132 iTools = tools; |
118 |
133 |
119 iEapMessageQueue = new(ELeave) EapMessageQueue(iTools); |
134 iEapSendMessageQueue = new(ELeave) EapMessageQueue(iTools); |
|
135 |
|
136 iEapProcessMessageQueue = new(ELeave) EapMessageQueue(iTools); |
120 } |
137 } |
121 |
138 |
122 //---------------------------------------------------------------------------- |
139 //---------------------------------------------------------------------------- |
123 |
140 |
124 eap_status_e CEapServerProcessHandler::SendData(const void * const data, const u32_t length, TEapRequests message) |
141 eap_status_e CEapServerProcessHandler::SendData(const void * const data, const u32_t length, TEapRequests message) |
125 { |
142 { |
126 EAP_TRACE_DEBUG( |
143 |
127 iTools, |
144 EAP_TRACE_DEBUG( |
128 TRACE_FLAGS_DEFAULT, |
145 iTools, |
129 (EAPL("CEapServerProcessHandler::SendData(): this=0x%08x\n"), |
146 TRACE_FLAGS_DEFAULT, |
130 this)); |
147 (EAPL("CEapServerProcessHandler::SendData(): this=0x%08x, iProcessMessage=0x%08x, send message=%d=%s\n"), |
|
148 this, |
|
149 iProcessMessage, |
|
150 message, |
|
151 EapServerStrings::GetEapRequestsString(message))); |
|
152 |
131 EAP_TRACE_RETURN_STRING(iTools, "returns: CEapServerProcessHandler::SendData()"); |
153 EAP_TRACE_RETURN_STRING(iTools, "returns: CEapServerProcessHandler::SendData()"); |
132 |
154 |
133 eap_status_e status(eap_status_ok); |
155 eap_status_e status(eap_status_ok); |
|
156 |
|
157 // First message handled, remove the message. |
|
158 iEapProcessMessageQueue->DeleteFirstMessage(iProcessMessage); |
|
159 iProcessMessage = 0; |
134 |
160 |
135 SaveMessage(message, data, length); |
161 SaveMessage(message, data, length); |
136 |
162 |
137 return status; |
163 return status; |
138 } |
164 } |
155 EAP_TRACE_FLAGS_NEVER, |
181 EAP_TRACE_FLAGS_NEVER, |
156 (EAPL("CEapServerProcessHandler::SaveMessage()"), |
182 (EAPL("CEapServerProcessHandler::SaveMessage()"), |
157 data, |
183 data, |
158 length)); |
184 length)); |
159 |
185 |
160 EAP_TRACE_DEBUG( |
186 if (message == EEapCoreSendData || message == EEapPluginSendData || message == EEapSettingsSendData || message == EEapPacStoreSendData || message == EWapiCoreSendData) |
161 iTools, |
|
162 TRACE_FLAGS_DEFAULT, |
|
163 (EAPL("CEapServerProcessHandler::SaveMessage(): calls iEapMessageQueue->AddMessage()\n"))); |
|
164 |
|
165 TInt error = iEapMessageQueue->AddMessage(message, data, length); |
|
166 |
|
167 if (error != KErrNone) |
|
168 { |
187 { |
169 EAP_TRACE_DEBUG( |
188 TInt error = iEapSendMessageQueue->AddMessage(message, data, length); |
170 iTools, |
189 |
171 TRACE_FLAGS_DEFAULT, |
190 if (error != KErrNone) |
172 (EAPL("ERROR: CEapServerProcessHandler::SaveMessage(): failed = %d\n"), |
191 { |
173 error)); |
192 EAP_TRACE_DEBUG( |
174 return; |
193 iTools, |
|
194 TRACE_FLAGS_DEFAULT, |
|
195 (EAPL("ERROR: CEapServerProcessHandler::SaveMessage(): failed = %d\n"), |
|
196 error)); |
|
197 return; |
|
198 } |
|
199 |
|
200 Activate(EapServerProcessHandlerState_Send); |
175 } |
201 } |
176 |
202 else |
177 Activate(); |
203 { |
|
204 TInt error = iEapProcessMessageQueue->AddMessage(message, data, length); |
|
205 |
|
206 if (error != KErrNone) |
|
207 { |
|
208 EAP_TRACE_DEBUG( |
|
209 iTools, |
|
210 TRACE_FLAGS_DEFAULT, |
|
211 (EAPL("ERROR: CEapServerProcessHandler::SaveMessage(): failed = %d\n"), |
|
212 error)); |
|
213 return; |
|
214 } |
|
215 |
|
216 error = iClient->AddReadyHandler(this); |
|
217 if (error != KErrNone) |
|
218 { |
|
219 EAP_TRACE_DEBUG( |
|
220 iTools, |
|
221 TRACE_FLAGS_DEFAULT, |
|
222 (EAPL("ERROR: CEapServerProcessHandler::SaveMessage(): iClient->AddReadyHandler(this) failed = %d\n"), |
|
223 error)); |
|
224 return; |
|
225 } |
|
226 } |
178 |
227 |
179 EAP_TRACE_DEBUG( |
228 EAP_TRACE_DEBUG( |
180 iTools, |
229 iTools, |
181 TRACE_FLAGS_DEFAULT, |
230 TRACE_FLAGS_DEFAULT, |
182 (EAPL("CEapServerProcessHandler::SaveMessage(): returns this=0x%08x, message=%d=%s\n"), |
231 (EAPL("CEapServerProcessHandler::SaveMessage(): returns this=0x%08x, message=%d=%s\n"), |
185 EapServerStrings::GetEapRequestsString(message))); |
234 EapServerStrings::GetEapRequestsString(message))); |
186 } |
235 } |
187 |
236 |
188 //---------------------------------------------------------------------------- |
237 //---------------------------------------------------------------------------- |
189 |
238 |
190 void CEapServerProcessHandler::Activate() |
239 void CEapServerProcessHandler::Activate(const CEapServerProcessHandlerState aState) |
191 { |
240 { |
192 EAP_TRACE_DEBUG( |
241 EAP_TRACE_DEBUG( |
193 iTools, |
242 iTools, |
194 TRACE_FLAGS_DEFAULT, |
243 TRACE_FLAGS_DEFAULT, |
195 (EAPL("CEapServerProcessHandler::Activate(): this=0x%08x\n"), |
244 (EAPL("CEapServerProcessHandler::Activate(): this=0x%08x, iHandlerState=%d, aState=%d\n"), |
196 this)); |
245 this, |
|
246 iHandlerState, |
|
247 aState)); |
197 EAP_TRACE_RETURN_STRING(iTools, "returns: CEapServerProcessHandler::Activate()"); |
248 EAP_TRACE_RETURN_STRING(iTools, "returns: CEapServerProcessHandler::Activate()"); |
198 |
249 |
199 if(!IsActive()) |
250 if(!IsActive()) |
200 { |
251 { |
201 EAP_TRACE_DEBUG( |
252 EAP_TRACE_DEBUG( |
202 iTools, |
253 iTools, |
203 TRACE_FLAGS_DEFAULT, |
254 TRACE_FLAGS_DEFAULT, |
204 (EAPL("CEapServerProcessHandler::Activate(): calls User::RequestComplete()\n"))); |
255 (EAPL("CEapServerProcessHandler::Activate(): calls User::RequestComplete()\n"))); |
|
256 |
|
257 iHandlerState = aState; |
205 |
258 |
206 TRequestStatus* status = &iStatus; |
259 TRequestStatus* status = &iStatus; |
207 User::RequestComplete(status, KErrNone); |
260 User::RequestComplete(status, KErrNone); |
208 |
261 |
209 EAP_TRACE_DEBUG( |
262 EAP_TRACE_DEBUG( |
234 EAP_TRACE_RETURN_STRING(iTools, "returns: CEapServerProcessHandler::RunL()"); |
287 EAP_TRACE_RETURN_STRING(iTools, "returns: CEapServerProcessHandler::RunL()"); |
235 |
288 |
236 EAP_TRACE_DEBUG( |
289 EAP_TRACE_DEBUG( |
237 iTools, |
290 iTools, |
238 TRACE_FLAGS_DEFAULT, |
291 TRACE_FLAGS_DEFAULT, |
239 (EAPL("CEapServerProcessHandler::RunL(): this=0x%08x\n"), |
292 (EAPL("CEapServerProcessHandler::RunL(): this=0x%08x, iProcessMessage=0x%08x, iHandlerState=%d\n"), |
240 this)); |
293 this, |
241 |
294 iProcessMessage, |
242 EapMessageBuffer * const message = iEapMessageQueue->GetFirstMessage(); |
295 iHandlerState)); |
|
296 |
|
297 // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
|
298 |
|
299 const EapMessageBuffer * aSendMessage = 0; |
|
300 |
|
301 // The send-message queue have priority over the process-message queue. |
|
302 EapMessageBuffer * message = iEapSendMessageQueue->GetFirstMessage(); |
|
303 |
|
304 if (message != 0) |
|
305 { |
|
306 EAP_TRACE_DEBUG( |
|
307 iTools, |
|
308 TRACE_FLAGS_DEFAULT, |
|
309 (EAPL("CEapServerProcessHandler::RunL(): Send-message=0x%08x\n"), |
|
310 this, |
|
311 message)); |
|
312 |
|
313 aSendMessage = message; |
|
314 } |
|
315 |
|
316 // When send-operation is only allowed the process-message queue is NOT read. |
|
317 if (message == 0 |
|
318 && iHandlerState != EapServerProcessHandlerState_Send |
|
319 ) |
|
320 { |
|
321 message = iEapProcessMessageQueue->GetFirstMessage(); |
|
322 |
|
323 EAP_ASSERT_TOOLS(iTools, iProcessMessage == 0); |
|
324 |
|
325 iProcessMessage = message; |
|
326 |
|
327 EAP_TRACE_DEBUG( |
|
328 iTools, |
|
329 TRACE_FLAGS_DEFAULT, |
|
330 (EAPL("CEapServerProcessHandler::RunL(): Process-message=0x%08x\n"), |
|
331 this, |
|
332 message)); |
|
333 } |
|
334 |
|
335 // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
243 |
336 |
244 if (message != 0) |
337 if (message != 0) |
245 { |
338 { |
246 EAP_TRACE_DEBUG( |
339 EAP_TRACE_DEBUG( |
247 iTools, |
340 iTools, |
485 } |
580 } |
486 } |
581 } |
487 |
582 |
488 break; |
583 break; |
489 |
584 |
490 #if defined (USE_WAPI_CORE) |
585 case EWapiCoreIfNew: |
491 case EWapiCoreIfNew: |
586 { |
492 |
|
493 EAP_TRACE_DEBUG( |
587 EAP_TRACE_DEBUG( |
494 iTools, |
588 iTools, |
495 TRACE_FLAGS_DEFAULT, |
589 TRACE_FLAGS_DEFAULT, |
496 (EAPL("CEapServerProcessHandler::RunL() EWapiCoreIfNew\n"))); |
590 (EAPL("CEapServerProcessHandler::RunL() EWapiCoreIfNew\n"))); |
497 |
591 |
498 iWapiCore = CWapiCoreIf::NewL(iTools, this); |
592 TRAPD( err, iWapiCore = CWapiCoreIf::NewL(iTools, this)); |
499 |
593 |
500 EAP_TRACE_DEBUG( |
594 EAP_UNREFERENCED_PARAMETER(err); // Only trace uses this. |
501 iTools, |
595 |
502 TRACE_FLAGS_DEFAULT, |
596 EAP_TRACE_DEBUG( |
503 (EAPL("CEapServerProcessHandler::RunL() EWapiCoreIfNew - iWapiCore = 0x%08x.\n"), |
597 iTools, |
504 iWapiCore)); |
598 TRACE_FLAGS_DEFAULT, |
505 |
599 (EAPL("CEapServerProcessHandler::RunL() EWapiCoreIfNew - iWapiCore = 0x%08x, err=%i.\n"), |
|
600 iWapiCore, |
|
601 err)); |
506 |
602 |
507 break; |
603 break; |
508 |
604 } |
509 case EWapiSettingsNew: |
605 |
|
606 case EWapiSettingsNew: |
|
607 { |
510 |
608 |
511 EAP_TRACE_DEBUG( |
609 EAP_TRACE_DEBUG( |
512 iTools, |
610 iTools, |
513 TRACE_FLAGS_DEFAULT, |
611 TRACE_FLAGS_DEFAULT, |
514 (EAPL("CEapServerProcessHandler::RunL() EWapiSettingsNew\n"))); |
612 (EAPL("CEapServerProcessHandler::RunL() EWapiSettingsNew\n"))); |
515 |
613 |
516 iWapiSettings = CWapiSettingsIf::NewL(iTools, this); |
614 TRAPD( err, iWapiSettings = CWapiSettingsIf::NewL(iTools, this)); |
517 |
615 |
518 EAP_TRACE_DEBUG( |
616 EAP_UNREFERENCED_PARAMETER(err); // Only trace uses this. |
519 iTools, |
617 |
520 TRACE_FLAGS_DEFAULT, |
618 EAP_TRACE_DEBUG( |
521 (EAPL("CEapServerProcessHandler::RunL() EWapiSettingsNew - iWapiSettings = 0x%08x.\n"), |
619 iTools, |
522 iWapiSettings)); |
620 TRACE_FLAGS_DEFAULT, |
|
621 (EAPL("CEapServerProcessHandler::RunL() EWapiSettingsNew - iWapiSettings = 0x%08x, err=%i.\n"), |
|
622 iWapiSettings, |
|
623 err)); |
523 break; |
624 break; |
524 #endif |
625 } |
525 |
626 |
526 case EEapPacStoreNew: |
627 case EEapPacStoreNew: |
527 |
628 |
528 { |
629 { |
529 EAP_TRACE_DEBUG( |
630 EAP_TRACE_DEBUG( |
731 |
831 |
732 if (iWapiSettings !=0) |
832 if (iWapiSettings !=0) |
733 { |
833 { |
734 void* aData = reinterpret_cast<void *>(const_cast<TUint8 *>(message->GetData()->Ptr())); |
834 void* aData = reinterpret_cast<void *>(const_cast<TUint8 *>(message->GetData()->Ptr())); |
735 TInt aLength = message->GetData()->Size(); |
835 TInt aLength = message->GetData()->Size(); |
736 iWapiSettings->process_data(aData, aLength); |
836 status = iWapiSettings->process_data(aData, aLength); |
737 } |
837 } |
738 else |
838 else |
739 { |
839 { |
740 EAP_TRACE_DEBUG( |
840 EAP_TRACE_DEBUG( |
741 iTools, |
841 iTools, |
742 TRACE_FLAGS_DEFAULT, |
842 TRACE_FLAGS_DEFAULT, |
743 (EAPL("ERROR: CEapServerProcessHandler::RunL(): EWapiSettingsProcessData, iWapiSettings is NULL\n"))); |
843 (EAPL("ERROR: CEapServerProcessHandler::RunL(): EWapiSettingsProcessData, iWapiSettings is NULL\n"))); |
744 } |
844 } |
745 |
845 |
746 break; |
846 break; |
747 #endif |
|
748 |
847 |
749 case EEapCoreSendData: |
848 case EEapCoreSendData: |
750 case EEapPluginSendData: |
849 case EEapPluginSendData: |
751 case EEapSettingsSendData: |
850 case EEapSettingsSendData: |
752 case EEapPacStoreSendData: |
851 case EEapPacStoreSendData: |
753 #if defined (USE_WAPI_CORE) |
|
754 case EWapiCoreSendData: |
852 case EWapiCoreSendData: |
755 case EWapiSettingsSendData: |
853 case EWapiSettingsSendData: |
756 #endif |
|
757 if (message->GetRequestType() == EEapCoreSendData) |
854 if (message->GetRequestType() == EEapCoreSendData) |
758 { |
855 { |
759 EAP_TRACE_DEBUG( |
856 EAP_TRACE_DEBUG( |
760 iTools, |
857 iTools, |
761 TRACE_FLAGS_DEFAULT, |
858 TRACE_FLAGS_DEFAULT, |
840 EapServerStrings::GetEapRequestsString(message->GetRequestType()))); |
936 EapServerStrings::GetEapRequestsString(message->GetRequestType()))); |
841 break; |
937 break; |
842 |
938 |
843 } // switch() |
939 } // switch() |
844 |
940 |
845 if (status == eap_status_ok) |
941 // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
|
942 |
|
943 EAP_TRACE_DEBUG( |
|
944 iTools, |
|
945 TRACE_FLAGS_DEFAULT, |
|
946 (EAPL("CEapServerProcessHandler::RunL(): iProcessMessage=0x%08x, aSendMessage=0x%08x, status=%d=%s.\n"), |
|
947 iProcessMessage, |
|
948 aSendMessage, |
|
949 status, |
|
950 eap_status_string_c::get_status_string(status))); |
|
951 |
|
952 // First send-message handled, remove the message. |
|
953 // iClient->SendData() call may fail, then we do not remove the message. |
|
954 if (aSendMessage != 0 |
|
955 && status == eap_status_ok) |
846 { |
956 { |
847 // First one handled, remove message. |
957 iEapSendMessageQueue->DeleteFirstMessage(aSendMessage); |
848 // iClient->SendData() call may fail, then we do not remove the message. |
|
849 iEapMessageQueue->DeleteFirstMessage(); |
|
850 } |
958 } |
|
959 else if (aSendMessage == 0 |
|
960 && (status == eap_status_ok |
|
961 || status != eap_status_pending_request)) |
|
962 { |
|
963 // First process-message handled, remove the message. |
|
964 // Note the pending message will be removed after the operation has been completed in the SendData() function. |
|
965 iEapProcessMessageQueue->DeleteFirstMessage(iProcessMessage); |
|
966 iProcessMessage = 0; |
|
967 } |
|
968 |
|
969 // Send-message must be null after this step. The message is is still in the iEapSendMessageQueue if send-operation failed. |
|
970 aSendMessage = 0; |
851 |
971 |
852 } // if () |
972 } // if () |
853 |
973 |
854 if (iEapMessageQueue->GetFirstMessage() != 0) |
974 // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
|
975 |
|
976 EAP_TRACE_DEBUG( |
|
977 iTools, |
|
978 TRACE_FLAGS_DEFAULT, |
|
979 (EAPL("CEapServerProcessHandler::RunL(): iProcessMessage=0x%08x, aSendMessage=0x%08x\n"), |
|
980 iProcessMessage, |
|
981 aSendMessage)); |
|
982 |
|
983 EAP_TRACE_DEBUG( |
|
984 iTools, |
|
985 TRACE_FLAGS_DEFAULT, |
|
986 (EAPL("CEapServerProcessHandler::RunL(): iEapSendMessageQueue->GetFirstMessage()=0x%08x, iEapProcessMessageQueue->GetFirstMessage()=0x%08x\n"), |
|
987 iEapSendMessageQueue->GetFirstMessage(), |
|
988 iEapProcessMessageQueue->GetFirstMessage())); |
|
989 |
|
990 if (iEapSendMessageQueue->GetFirstMessage() != 0) |
|
991 { |
|
992 if (iClient != NULL) |
|
993 { |
|
994 if (iClient->GetReceiveActive()) |
|
995 { |
|
996 // Still send-messages waiting, activate handler. |
|
997 Activate(EapServerProcessHandlerState_Send); |
|
998 } |
|
999 else |
|
1000 { |
|
1001 EAP_TRACE_DEBUG( |
|
1002 iTools, |
|
1003 TRACE_FLAGS_DEFAULT, |
|
1004 (EAPL("WARNING: CEapServerProcessHandler::RunL(): cannot call User::RequestComplete() because no receive is active.\n"))); |
|
1005 } |
|
1006 } |
|
1007 } |
|
1008 else if (iProcessMessage == 0 |
|
1009 && iEapProcessMessageQueue->GetFirstMessage() != 0) |
855 { |
1010 { |
856 EAP_TRACE_DEBUG( |
1011 EAP_TRACE_DEBUG( |
857 iTools, |
1012 iTools, |
858 TRACE_FLAGS_DEFAULT, |
1013 TRACE_FLAGS_DEFAULT, |
859 (EAPL("CEapServerProcessHandler::RunL(): Still messages waiting.\n"))); |
1014 (EAPL("CEapServerProcessHandler::RunL(): Still messages waiting.\n"))); |
860 |
1015 |
861 if (iClient != NULL) |
1016 if (iClient != NULL) |
862 { |
1017 { |
863 if (iClient->GetReceiveActive()) |
1018 // Still process-messages waiting, activate handler. |
864 { |
1019 Activate(EapServerProcessHandlerState_All); |
865 Activate(); |
|
866 } |
|
867 else |
|
868 { |
|
869 EAP_TRACE_DEBUG( |
|
870 iTools, |
|
871 TRACE_FLAGS_DEFAULT, |
|
872 (EAPL("WARNING: CEapServerProcessHandler::RunL(): cannot call User::RequestComplete() because no receive is active.\n"))); |
|
873 } |
|
874 } |
1020 } |
875 } |
1021 } |
876 else |
1022 else if (iProcessMessage == 0) |
877 { |
1023 { |
878 EAP_TRACE_DEBUG( |
1024 EAP_TRACE_DEBUG( |
879 iTools, |
1025 iTools, |
880 TRACE_FLAGS_DEFAULT, |
1026 TRACE_FLAGS_DEFAULT, |
881 (EAPL("CEapServerProcessHandler::RunL(): No more messages to process.\n"))); |
1027 (EAPL("CEapServerProcessHandler::RunL(): No new messages to process. Current message iProcessMessage=0x%08x\n"), |
|
1028 iProcessMessage)); |
|
1029 |
|
1030 TInt error = iClient->CompleteReadyHandler(this); |
|
1031 if (error != KErrNone) |
|
1032 { |
|
1033 EAP_TRACE_DEBUG( |
|
1034 iTools, |
|
1035 TRACE_FLAGS_DEFAULT, |
|
1036 (EAPL("ERROR: CEapServerProcessHandler::RunL(): iClient->CompleteReadyHandler() failed, error=%d\n"), |
|
1037 error)); |
|
1038 } |
882 } |
1039 } |
883 |
1040 |
884 EAP_TRACE_DEBUG( |
1041 EAP_TRACE_DEBUG( |
885 iTools, |
1042 iTools, |
886 TRACE_FLAGS_DEFAULT, |
1043 TRACE_FLAGS_DEFAULT, |