3 * Copyright (c) 2000-2012 Samsung Electronics Co., Ltd. All Rights Reserved.
5 * This file is part of msg-service.
7 * Contact: Jaeyun Jeong <jyjeong@samsung.com>
8 * Sangkoo Kim <sangkoo.kim@samsung.com>
9 * Seunghwan Lee <sh.cat.lee@samsung.com>
10 * SoonMin Jung <sm0415.jung@samsung.com>
11 * Jae-Young Lee <jy4710.lee@samsung.com>
12 * KeeBum Kim <keebum.kim@samsung.com>
14 * PROPRIETARY/CONFIDENTIAL
16 * This software is the confidential and proprietary information of
17 * SAMSUNG ELECTRONICS ("Confidential Information"). You shall not
18 * disclose such Confidential Information and shall use it only in
19 * accordance with the terms of the license agreement you entered
20 * into with SAMSUNG ELECTRONICS.
22 * SAMSUNG make no representations or warranties about the suitability
23 * of the software, either express or implied, including but not limited
24 * to the implied warranties of merchantability, fitness for a particular
25 * purpose, or non-infringement. SAMSUNG shall not be liable for any
26 * damages suffered by licensee as a result of using, modifying or
27 * distributing this software or its derivatives.
32 #include "MmsPluginMIME.h"
33 #include "MmsPluginMessage.h"
35 static char gszDebugStringBuf[50];
37 static char *MmsDebugPrintUnknownValue(int value)
39 printf(gszDebugStringBuf, "unknown value(%d)", value);
40 return gszDebugStringBuf;
44 const char *MmsDebugGetMimeType(MimeType mimeType)
47 case MIME_APPLICATION_XML:
48 return "MIME_APPLICATION_XML";
49 case MIME_APPLICATION_WML_XML:
50 return "MIME_APPLICATION_WML_XML";
51 case MIME_APPLICATION_XHTML_XML:
52 return "MIME_APPLICATION_XHTML_XML";
53 case MIME_APPLICATION_JAVA_VM:
54 return "MIME_APPLICATION_JAVA_VM";
55 case MIME_APPLICATION_SMIL:
56 return "MIME_APPLICATION_SMIL";
57 case MIME_APPLICATION_JAVA_ARCHIVE:
58 return "MIME_APPLICATION_JAVA_ARCHIVE";
59 case MIME_APPLICATION_JAVA:
60 return "MIME_APPLICATION_JAVA";
61 case MIME_APPLICATION_OCTET_STREAM:
62 return "MIME_APPLICATION_OCTET_STREAM";
63 case MIME_APPLICATION_STUDIOM:
64 return "MIME_APPLICATION_STUDIOM";
65 case MIME_APPLICATION_FUNMEDIA:
66 return "MIME_APPLICATION_FUNMEDIA";
67 case MIME_APPLICATION_MSWORD:
68 return "MIME_APPLICATION_MSWORD";
69 case MIME_APPLICATION_PDF:
70 return "MIME_APPLICATION_PDF";
71 case MIME_APPLICATION_ASTERIC:
72 return "MIME_APPLICATION_ASTERIC";
73 case MIME_APPLICATION_VND_WAP_XHTMLXML:
74 return "MIME_APPLICATION_VND_WAP_XHTMLXML";
75 case MIME_APPLICATION_VND_WAP_WMLC:
76 return "MIME_APPLICATION_VND_WAP_WMLC";
77 case MIME_APPLICATION_VND_WAP_WMLSCRIPTC:
78 return "MIME_APPLICATION_VND_WAP_WMLSCRIPTC";
79 case MIME_APPLICATION_VND_WAP_WTA_EVENTC:
80 return "MIME_APPLICATION_VND_WAP_WTA_EVENTC";
81 case MIME_APPLICATION_VND_WAP_UAPROF:
82 return "MIME_APPLICATION_VND_WAP_UAPROF";
83 case MIME_APPLICATION_VND_WAP_SIC:
84 return "MIME_APPLICATION_VND_WAP_SIC";
85 case MIME_APPLICATION_VND_WAP_SLC:
86 return "MIME_APPLICATION_VND_WAP_SLC";
87 case MIME_APPLICATION_VND_WAP_COC:
88 return "MIME_APPLICATION_VND_WAP_COC";
89 case MIME_APPLICATION_VND_WAP_SIA:
90 return "MIME_APPLICATION_VND_WAP_SIA";
91 case MIME_APPLICATION_VND_WAP_CONNECTIVITY_WBXML:
92 return "MIME_APPLICATION_VND_WAP_CONNECTIVITY_WBXML";
93 case MIME_APPLICATION_VND_WAP_MULTIPART_FORM_DATA:
94 return "MIME_APPLICATION_VND_WAP_MULTIPART_FORM_DATA";
95 case MIME_APPLICATION_VND_WAP_MULTIPART_BYTERANGES:
96 return "MIME_APPLICATION_VND_WAP_MULTIPART_BYTERANGES";
97 case MIME_APPLICATION_VND_WAP_MULTIPART_MIXED:
98 return "MIME_APPLICATION_VND_WAP_MULTIPART_MIXED";
99 case MIME_APPLICATION_VND_WAP_MULTIPART_RELATED:
100 return "MIME_APPLICATION_VND_WAP_MULTIPART_RELATED";
101 case MIME_APPLICATION_VND_WAP_MULTIPART_ALTERNATIVE:
102 return "MIME_APPLICATION_VND_WAP_MULTIPART_ALTERNATIVE";
103 case MIME_APPLICATION_VND_WAP_MULTIPART_ASTERIC:
104 return "MIME_APPLICATION_VND_WAP_MULTIPART_ASTERIC";
105 case MIME_APPLICATION_VND_OMA_DD_XML:
106 return "MIME_APPLICATION_VND_OMA_DD_XML";
107 case MIME_APPLICATION_VND_OMA_DRM_MESSAGE:
108 return "MIME_APPLICATION_VND_OMA_DRM_MESSAGE";
109 case MIME_APPLICATION_VND_OMA_DRM_CONTENT:
110 return "MIME_APPLICATION_VND_OMA_DRM_CONTENT";
111 case MIME_APPLICATION_VND_OMA_DRM_RIGHTS_XML:
112 return "MIME_APPLICATION_VND_OMA_DRM_RIGHTS_XML";
113 case MIME_APPLICATION_VND_OMA_DRM_RIGHTS_WBXML:
114 return "MIME_APPLICATION_VND_OMA_DRM_RIGHTS_WBXML";
115 case MIME_APPLICATION_VND_SMAF:
116 return "MIME_APPLICATION_VND_SMAF";
117 case MIME_APPLICATION_VND_RN_REALMEDIA:
118 return "MIME_APPLICATION_VND_RN_REALMEDIA";
119 case MIME_APPLICATION_VND_SUN_J2ME_JAVA_ARCHIVE:
120 return "MIME_APPLICATION_VND_SUN_J2ME_JAVA_ARCHIVE";
121 case MIME_APPLICATION_VND_EXCEL:
122 return "MIME_APPLICATION_VND_EXCEL";
123 case MIME_APPLICATION_X_HDMLC:
124 return "MIME_APPLICATION_X_HDMLC";
125 case MIME_APPLICATION_X_X968_USERCERT:
126 return "MIME_APPLICATION_X_X968_USERCERT";
127 case MIME_APPLICATION_X_WWW_FORM_URLENCODED:
128 return "MIME_APPLICATION_X_WWW_FORM_URLENCODED";
129 case MIME_APPLICATION_X_SMAF:
130 return "MIME_APPLICATION_X_SMAF";
131 case MIME_APPLICATION_X_FLASH:
132 return "MIME_APPLICATION_X_FLASH";
133 case MIME_APPLICATION_X_EXCEL:
134 return "MIME_APPLICATION_X_EXCEL";
135 case MIME_APPLICATION_X_POWERPOINT:
136 return "MIME_APPLICATION_X_POWERPOINT";
138 case MIME_AUDIO_BASIC:
139 return "MIME_AUDIO_BASIC";
140 case MIME_AUDIO_MPEG:
141 return "MIME_AUDIO_MPEG";
143 return "MIME_AUDIO_MP3";
144 case MIME_AUDIO_MPG3:
145 return "MIME_AUDIO_MPG3";
146 case MIME_AUDIO_MPEG3:
147 return "MIME_AUDIO_MPEG3";
149 return "MIME_AUDIO_MPG";
151 return "MIME_AUDIO_AAC";
153 return "MIME_AUDIO_G72";
155 return "MIME_AUDIO_AMR";
156 case MIME_AUDIO_AMR_WB:
157 return "MIME_AUDIO_AMR_WB";
159 return "MIME_AUDIO_MMF";
160 case MIME_AUDIO_SMAF:
161 return "MIME_AUDIO_SMAF";
162 case MIME_AUDIO_IMELODY:
163 return "MIME_AUDIO_IMELODY";
164 case MIME_AUDIO_MELODY:
165 return "MIME_AUDIO_MELODY";
167 return "MIME_AUDIO_MID";
168 case MIME_AUDIO_MIDI:
169 return "MIME_AUDIO_MIDI";
170 case MIME_AUDIO_X_MID:
171 return "MIME_AUDIO_X_MID";
172 case MIME_AUDIO_SP_MIDI:
173 return "MIME_AUDIO_SP_MIDI";
174 case MIME_AUDIO_WAVE:
175 return "MIME_AUDIO_WAVE";
176 case MIME_AUDIO_3GPP:
177 return "MIME_AUDIO_3GPP";
179 return "MIME_AUDIO_MP4";
180 case MIME_AUDIO_MP4A_LATM:
181 return "MIME_AUDIO_MP4A_LATM";
182 case MIME_AUDIO_VND_RN_REALAUDIO:
183 return "MIME_AUDIO_VND_RN_REALAUDIO";
184 case MIME_AUDIO_X_MPEG:
185 return "MIME_AUDIO_X_MPEG";
186 case MIME_AUDIO_X_MP3:
187 return "MIME_AUDIO_X_MP3";
188 case MIME_AUDIO_X_MPEG3:
189 return "MIME_AUDIO_X_MPEG3";
190 case MIME_AUDIO_X_MPG:
191 return "MIME_AUDIO_X_MPG";
192 case MIME_AUDIO_X_AMR:
193 return "MIME_AUDIO_X_AMR";
194 case MIME_AUDIO_X_MMF:
195 return "MIME_AUDIO_X_MMF";
196 case MIME_AUDIO_X_SMAF:
197 return "MIME_AUDIO_X_SMAF";
198 case MIME_AUDIO_X_IMELODY:
199 return "MIME_AUDIO_X_IMELODY";
200 case MIME_AUDIO_X_MIDI:
201 return "MIME_AUDIO_X_MIDI";
202 case MIME_AUDIO_X_MPEGAUDIO:
203 return "MIME_AUDIO_X_MPEGAUDIO";
204 case MIME_AUDIO_X_PN_REALAUDIO:
205 return "MIME_AUDIO_X_PN_REALAUDIO";
206 case MIME_AUDIO_X_PN_MULTIRATE_REALAUDIO:
207 return "MIME_AUDIO_X_PN_MULTIRATE_REALAUDIO";
208 case MIME_AUDIO_X_PN_MULTIRATE_REALAUDIO_LIVE:
209 return "MIME_AUDIO_X_PN_MULTIRATE_REALAUDIO_LIVE";
210 case MIME_AUDIO_X_WAV:
211 return "MIME_AUDIO_X_WAV";
214 return "MIME_IMAGE_GIF";
215 case MIME_IMAGE_JPEG:
216 return "MIME_IMAGE_JPEG";
218 return "MIME_IMAGE_JPG";
219 case MIME_IMAGE_TIFF:
220 return "MIME_IMAGE_TIFF";
222 return "MIME_IMAGE_TIF";
224 return "MIME_IMAGE_PNG";
225 case MIME_IMAGE_WBMP:
226 return "MIME_IMAGE_WBMP";
227 case MIME_IMAGE_PJPEG:
228 return "MIME_IMAGE_PJPEG";
230 return "MIME_IMAGE_BMP";
232 return "MIME_IMAGE_SVG";
233 case MIME_IMAGE_SVG1:
234 return "MIME_IMAGE_SVG1";
235 case MIME_IMAGE_VND_WAP_WBMP:
236 return "MIME_IMAGE_VND_WAP_WBMP";
238 case MIME_IMAGE_X_BMP:
239 return "MIME_IMAGE_X_BMP";
241 case MIME_MESSAGE_RFC822:
242 return "MIME_MESSAGE_RFC822";
244 case MIME_MULTIPART_MIXED:
245 return "MIME_MULTIPART_MIXED";
246 case MIME_MULTIPART_RELATED:
247 return "MIME_MULTIPART_RELATED";
248 case MIME_MULTIPART_ALTERNATIVE:
249 return "MIME_MULTIPART_ALTERNATIVE";
250 case MIME_MULTIPART_FORM_DATA:
251 return "MIME_MULTIPART_FORM_DATA";
252 case MIME_MULTIPART_BYTERANGE:
253 return "MIME_MULTIPART_BYTERANGE";
254 case MIME_MULTIPART_REPORT:
255 return "MIME_MULTIPART_REPORT";
258 return "MIME_TEXT_TXT";
260 return "MIME_TEXT_HTML";
261 case MIME_TEXT_PLAIN:
262 return "MIME_TEXT_PLAIN";
264 return "MIME_TEXT_CSS";
266 return "MIME_TEXT_XML";
267 case MIME_TEXT_IMELODY:
268 return "MIME_TEXT_IMELODY";
269 case MIME_TEXT_VND_WAP_WMLSCRIPT:
270 return "MIME_TEXT_VND_WAP_WMLSCRIPT";
271 case MIME_TEXT_VND_WAP_WML:
272 return "MIME_TEXT_VND_WAP_WML";
273 case MIME_TEXT_VND_WAP_WTA_EVENT:
274 return "MIME_TEXT_VND_WAP_WTA_EVENT";
275 case MIME_TEXT_VND_WAP_CONNECTIVITY_XML:
276 return "MIME_TEXT_VND_WAP_CONNECTIVITY_XML";
277 case MIME_TEXT_VND_WAP_SI:
278 return "MIME_TEXT_VND_WAP_SI";
279 case MIME_TEXT_VND_WAP_SL:
280 return "MIME_TEXT_VND_WAP_SL";
281 case MIME_TEXT_VND_WAP_CO:
282 return "MIME_TEXT_VND_WAP_CO";
283 case MIME_TEXT_VND_SUN_J2ME_APP_DESCRIPTOR:
284 return "MIME_TEXT_VND_SUN_J2ME_APP_DESCRIPTOR";
285 case MIME_TEXT_X_HDML:
286 return "MIME_TEXT_X_HDML";
287 case MIME_TEXT_X_VCALENDAR:
288 return "MIME_TEXT_X_VCALENDAR";
289 case MIME_TEXT_X_VCARD:
290 return "MIME_TEXT_X_VCARD";
291 case MIME_TEXT_X_IMELODY:
292 return "MIME_TEXT_X_IMELODY";
294 case MIME_VIDEO_MPEG4:
295 return "MIME_VIDEO_MPEG4";
297 return "MIME_VIDEO_MP4";
298 case MIME_VIDEO_H263:
299 return "MIME_VIDEO_H263";
300 case MIME_VIDEO_3GPP:
301 return "MIME_VIDEO_3GPP";
303 return "MIME_VIDEO_3GP";
305 return "MIME_VIDEO_AVI";
307 return "MIME_VIDEO_SDP";
308 case MIME_VIDEO_VND_RN_REALVIDEO:
309 return "MIME_VIDEO_VND_RN_REALVIDEO";
310 case MIME_VIDEO_X_MP4:
311 return "MIME_VIDEO_X_MP4";
312 case MIME_VIDEO_X_PV_MP4:
313 return "MIME_VIDEO_X_PV_MP4";
314 case MIME_VIDEO_X_PN_REALVIDEO:
315 return "MIME_VIDEO_X_PN_REALVIDEO";
316 case MIME_VIDEO_X_PN_MULTIRATE_REALVIDEO:
317 return "MIME_VIDEO_X_PN_MULTIRATE_REALVIDEO";
319 return MmsDebugPrintUnknownValue(mimeType);
325 const char *MmsDebugGetMmsReport(MmsReport report)
328 case MMS_REPORT_ERROR:
329 return "MMS_REPORT_ERROR";
331 return "MMS_REPORT_YES";
333 return "MMS_REPORT_NO";
336 return MmsDebugPrintUnknownValue(report);
340 const char *MmsDebugGetMmsReportAllowed(MmsReportAllowed reportAllowed)
342 switch (reportAllowed) {
343 case MMS_REPORTALLOWED_ERROR:
344 return "MMS_REPORTALLOWED_ERROR";
345 case MMS_REPORTALLOWED_YES:
346 return "MMS_REPORTALLOWED_YES";
347 case MMS_REPORTALLOWED_NO:
348 return "MMS_REPORTALLOWED_NO";
351 return MmsDebugPrintUnknownValue(reportAllowed);
355 const char *MmsDebugGetMmsReadStatus(MSG_READ_REPORT_STATUS_T readStatus)
357 _MSG_READ_REPORT_STATUS_E readReport = (_MSG_READ_REPORT_STATUS_E)readStatus;
359 switch (readReport) {
360 case MSG_READ_REPORT_NONE:
361 return "MMS_READSTATUS_NONE";
362 case MSG_READ_REPORT_IS_READ:
363 return "MMS_IS_READ";
364 case MSG_READ_REPORT_IS_DELETED:
365 return "MMS_IS_DELETED";
368 return MmsDebugPrintUnknownValue(readStatus);
371 const char *MmsDebugGetMsgType(MmsMsgType msgType)
374 case MMS_MSGTYPE_ERROR:
376 case MMS_MSGTYPE_SEND_REQ:
378 case MMS_MSGTYPE_SEND_CONF:
380 case MMS_MSGTYPE_NOTIFICATION_IND:
381 return "notification.ind";
382 case MMS_MSGTYPE_NOTIFYRESP_IND:
383 return "notifyResp.ind";
384 case MMS_MSGTYPE_RETRIEVE_CONF:
385 return "retrieve conf";
386 case MMS_MSGTYPE_ACKNOWLEDGE_IND:
387 return "acknowledge ind";
388 case MMS_MSGTYPE_DELIVERY_IND:
389 return "delivery ind";
390 case MMS_MSGTYPE_READREC_IND:
391 return "read rec ind";
392 case MMS_MSGTYPE_READORG_IND:
393 return "read org ind";
394 case MMS_MSGTYPE_FORWARD_REQ:
395 return "forward req";
396 case MMS_MSGTYPE_FORWARD_CONF:
397 return "forward conf";
398 case MMS_MSGTYPE_READ_REPLY:
401 return MmsDebugPrintUnknownValue(msgType);
405 const char *MmsDebugGetResponseStatus(MmsResponseStatus responseStatus)
407 switch (responseStatus) {
408 case MMS_RESPSTATUS_ERROR:
410 case MMS_RESPSTATUS_OK:
412 case MMS_RESPSTAUTS_ERROR_UNSPECIFIED:
413 return "unspecified";
414 case MMS_RESPSTAUTS_ERROR_SERVICEDENIED:
415 return "service denied";
416 case MMS_RESPSTAUTS_ERROR_MESSAGEFORMATCORRUPT:
417 return "message format corrupt";
418 case MMS_RESPSTAUTS_ERROR_SENDINGADDRESSUNRESOLVED:
419 return "sending address unresolved";
420 case MMS_RESPSTAUTS_ERROR_MESSAGENOTFOUND:
421 return "message not found";
422 case MMS_RESPSTAUTS_ERROR_NETWORKPROBLEM:
423 return "network problem";
424 case MMS_RESPSTAUTS_ERROR_CONTENTNOTACCEPTED:
425 return "content not accepted";
426 case MMS_RESPSTAUTS_ERROR_UNSUPPORTEDMESSAGE:
427 return "unsupported message";
428 case MMS_RESPSTAUTS_ERROR_TRANSIENT_FAILURE:
429 return "transient failure";
430 case MMS_RESPSTAUTS_ERROR_TRANSIENT_SENDING_ADDRESS_UNRESOLVED:
431 return "transient sending address unresolved";
432 case MMS_RESPSTAUTS_ERROR_TRANSIENT_MESSAGE_NOT_FOUND:
433 return "transient message not found";
434 case MMS_RESPSTAUTS_ERROR_TRANSIENT_NETWORK_PROBLEM:
435 return "transient network problem";
436 case MMS_RESPSTAUTS_ERROR_PERMANENT_FAILURE:
437 return "permanent failure";
438 case MMS_RESPSTAUTS_ERROR_PERMANENT_SERVICE_DENIED:
439 return "permanent service denied";
440 case MMS_RESPSTAUTS_ERROR_PERMANENT_MESSAGE_FORMAT_CORRUPT:
441 return "permanent message format corrupt";
442 case MMS_RESPSTAUTS_ERROR_PERMANENT_SENDING_ADDRESS_UNRESOLVED:
443 return "permanent sending address unresolved";
444 case MMS_RESPSTAUTS_ERROR_PERMANENT_MESSAGE_NOT_FOUND:
445 return "permanent message not found";
446 case MMS_RESPSTAUTS_ERROR_PERMANENT_CONTENT_NOT_ACCEPTED:
447 return "permanent content not accepted";
448 case MMS_RESPSTAUTS_ERROR_PERMANENT_REPLY_CHARGING_LIMITATIONS_NOT_MET:
449 return "permanent reply charging limitations not met";
450 case MMS_RESPSTAUTS_ERROR_PERMANENT_REPLY_CHARGING_REQUEST_NOT_ACCEPTED:
451 return "permanent reply charging request not accepted";
452 case MMS_RESPSTAUTS_ERROR_PERMANENT_REPLY_CHARGING_FORWARDING_DENIED:
453 return "permanent reply charging forwarding denied";
454 case MMS_RESPSTAUTS_ERROR_PERMANENT_REPLY_CHARGING_NOT_SUPPORTED:
455 return "permanent reply charging not supported";
458 return MmsDebugPrintUnknownValue(responseStatus);
462 const char *MmsDebugGetRetrieveStatus(MmsRetrieveStatus retrieveStatus)
464 switch (retrieveStatus) {
465 case MMS_RETRSTATUS_ERROR:
467 case MMS_RETRSTATUS_OK:
469 case MMS_RETRSTATUS_TRANSIENT_FAILURE:
470 return "transient failure";
471 case MMS_RETRSTATUS_TRANSIENT_MESSAGE_NOT_FOUND:
472 return "transient message not found";
473 case MMS_RETRSTATUS_TRANSIENT_NETWORK_PROBLEM:
474 return "transient network problem";
475 case MMS_RETRSTATUS_PERMANENT_FAILURE:
476 return "permanent failure";
477 case MMS_RETRSTATUS_PERMANENT_SERVICE_DENIED:
478 return "permanent service denied";
479 case MMS_RETRSTATUS_PERMANENT_MESSAGE_NOT_FOUND:
480 return "permanent message not found";
481 case MMS_RETRSTATUS_PERMANENT_CONTENT_UNSUPPORT:
482 return "permanent content unsupport";
485 return MmsDebugPrintUnknownValue(retrieveStatus);
489 const char *MmsDebugGetMsgStatus(MSG_DELIVERY_REPORT_STATUS_T msgStatus)
492 case MSG_DELIVERY_REPORT_ERROR:
494 case MSG_DELIVERY_REPORT_EXPIRED:
496 case MSG_DELIVERY_REPORT_SUCCESS:
498 case MSG_DELIVERY_REPORT_REJECTED:
500 case MSG_DELIVERY_REPORT_DEFERRED:
502 case MSG_DELIVERY_REPORT_UNRECOGNISED:
503 return "unrecognised";
504 case MSG_DELIVERY_REPORT_INDETERMINATE:
505 return "indeterminate";
506 case MSG_DELIVERY_REPORT_FORWARDED:
508 case MSG_DELIVERY_REPORT_UNREACHABLE:
509 return "unreachable";
512 return MmsDebugPrintUnknownValue(msgStatus);
516 const char *MmsDebugGetMsgClass(MmsMsgClass msgClass)
519 case MMS_MSGCLASS_ERROR:
521 case MMS_MSGCLASS_PERSONAL:
523 case MMS_MSGCLASS_ADVERTISEMENT:
524 return "advertisement";
525 case MMS_MSGCLASS_INFORMATIONAL:
526 return "information";
527 case MMS_MSGCLASS_AUTO:
531 return MmsDebugPrintUnknownValue(msgClass);
535 const char *MmsDebugGetDataType(MmsDataType dataType)
538 case MMS_DATATYPE_NONE:
539 return "MMS_DATATYPE_NONE";
540 case MMS_DATATYPE_READ:
541 return "MMS_DATATYPE_READ";
542 case MMS_DATATYPE_SENT:
543 return "MMS_DATATYPE_SENT";
544 case MMS_DATATYPE_NOTIFY:
545 return "MMS_DATATYPE_NOTIFY";
546 case MMS_DATATYPE_UNSENT:
547 return "MMS_DATATYPE_UNSENT";
548 case MMS_DATATYPE_DRAFT:
549 return "MMS_DATATYPE_DRAFT";
550 case MMS_DATATYPE_SENDING:
551 return "MMS_DATATYPE_SENDING";
552 case MMS_DATATYPE_DRM_RO_WAITING:
553 return "MMS_DATATYPE_DRM_RO_WAITING";
554 case MMS_DATATYPE_RETRIEVING:
555 return "MMS_DATATYPE_RETRIEVING";
556 case MMS_DATATYPE_UNRETV:
557 return "MMS_DATATYPE_UNRETV";
559 return MmsDebugPrintUnknownValue(dataType);
563 #ifdef MMS_PLUGIN_DEBUG_ENABLE
565 MmsDebugPrintMsgAttributes(char *pszFunc, MmsAttrib *pAttrib, bool bAll)
567 SysRequireEx(pAttrib != NULL, false);
570 SysDebug((MID_MMS|DBG_MMS_COMMON,"%s ========= \n", pszFunc));
572 SysDebug((MID_MMS|DBG_MMS_COMMON, "szSubject = %s \n", pAttrib->szSubject));
573 SysDebug((MID_MMS|DBG_MMS_COMMON, "contentType=%s \n", MmsDebugGetMimeType(pAttrib->contentType)));
574 SysDebug((MID_MMS|DBG_MMS_COMMON, "dataType=%s \n", MmsDebugGetDataType(pAttrib->dataType)));
576 if (pAttrib->specialMsgType != MMS_SPECIAL_MSG_TYPE_NONE)
577 SysDebug((MID_MMS|DBG_MMS_COMMON, "spcialMsgType = %lu \n", pAttrib->specialMsgType));
579 SysDebug((MID_MMS|DBG_MMS_COMMON, "date=%lu, msgSize=%lu, bRead=%lu\n", pAttrib->date, pAttrib->msgSize, pAttrib->bRead));
584 SysDebug((MID_MMS|DBG_MMS_COMMON, "msgClass=%s, priority=%lu \n", MmsDebugGetMsgClass(pAttrib->msgClass), pAttrib->priority ));
585 SysDebug((MID_MMS|DBG_MMS_COMMON, "deliveryTime.type = %lu, time = %lu\n", pAttrib->deliveryTime.type, pAttrib->deliveryTime.time));
586 SysDebug((MID_MMS|DBG_MMS_COMMON, "expiryTime.type = %lu, time = %lu\n", pAttrib->expiryTime.type, pAttrib->expiryTime.time));
588 if (pAttrib->szTo && pAttrib->szTo[0] != 0)
589 SysDebug((MID_MMS|DBG_MMS_COMMON, "szTo = %s \n", pAttrib->szTo));
590 if (pAttrib->szCc && pAttrib->szCc[0] != 0)
591 SysDebug((MID_MMS|DBG_MMS_COMMON, "szCc = %s \n", pAttrib->szCc));
592 if (pAttrib->szBcc && pAttrib->szBcc[0] != 0)
593 SysDebug((MID_MMS|DBG_MMS_COMMON, "szBcc = %s \n", pAttrib->szBcc));
595 #if defined(_MMS_SUPPORT_RECEIVING_OPTION_PROMPT)
596 SysDebug((MID_MMS|DBG_MMS_COMMON, "readReportAllowedType = %lu \n", pAttrib->readReportAllowedType));
598 SysDebug((MID_MMS|DBG_MMS_COMMON, "bAskDeliveryReport=%lu, bReportAllowed=%lu, bAskReadReply=%lu, bLeaveCopy=%lu \n",
599 pAttrib->bAskDeliveryReport, pAttrib->bReportAllowed, pAttrib->bAskReadReply, pAttrib->bLeaveCopy));
601 if (pAttrib->bHideAddress)
602 SysDebug((MID_MMS|DBG_MMS_COMMON, "bHideAddress=true\n"));
604 SysDebug((MID_MMS|DBG_MMS_COMMON, "msgStatus = %s \n", MmsDebugGetMsgStatus(pAttrib->msgStatus)));
605 SysDebug((MID_MMS|DBG_MMS_COMMON, "responseStatus = %s \n", MmsDebugGetResponseStatus(pAttrib->responseStatus)));
606 SysDebug((MID_MMS|DBG_MMS_COMMON, "retrieveStatus = %s \n", MmsDebugGetRetrieveStatus(pAttrib->retrieveStatus)));
608 if (pAttrib->szResponseText && pAttrib->szResponseText[0] != 0)
609 SysDebug((MID_MMS|DBG_MMS_COMMON, "szResponseText = %s \n", pAttrib->szResponseText));
611 if (pAttrib->szRetrieveText && pAttrib->szRetrieveText[0] != 0)
612 SysDebug((MID_MMS|DBG_MMS_COMMON, "szRetrieveText = %s \n", pAttrib->szRetrieveText));
617 char *MmsDebugGetMsgDrmType(MsgDrmType drmType)
620 case MSG_DRM_TYPE_NONE:
621 return "MSG_DRM_TYPE_NONE";
622 case MSG_DRM_TYPE_FL:
623 return "MSG_DRM_TYPE_FL";
624 case MSG_DRM_TYPE_CD:
625 return "MSG_DRM_TYPE_CD";
626 case MSG_DRM_TYPE_SD:
627 return "MSG_DRM_TYPE_SD";
628 case MSG_DRM_TYPE_SSD:
629 return "MSG_DRM_TYPE_SSD";
632 return MmsDebugPrintUnknownValue(drmType);
635 char *MmsDebugGetDrmDeliveryMode(DrmDeliveryMode deliveryMode)
637 switch (deliveryMode) {
638 case DRM_DELIVERYMODE_FORWARD_LOCK:
639 return "DRM_DELIVERYMODE_FORWARD_LOCK";
640 case DRM_DELIVERYMODE_COMBINED_DELIVERY:
641 return "DRM_DELIVERYMODE_COMBINED_DELIVERY";
642 case DRM_DELIVERYMODE_SEPARATE_DELIVERY:
643 return "DRM_DELIVERYMODE_SEPARATE_DELIVERY";
644 case DRM_DELIVERYMODE_SPECIAL_SEPARATE:
645 return "DRM_DELIVERYMODE_SPECIAL_SEPARATE";
648 return MmsDebugPrintUnknownValue(deliveryMode);
651 char *MmsDebugGetDrmRightState(DrmRightState rightState)
653 switch (rightState) {
654 case DRMRIGHT_STATE_NORIGHTS:
655 return "DRMRIGHT_STATE_NORIGHTS";
656 case DRMRIGHT_STATE_INVALID_RIGHTS:
657 return "DRMRIGHT_STATE_INVALID_RIGHTS";
658 case DRMRIGHT_STATE_VALID_RIGHTS:
659 return "DRMRIGHT_STATE_VALID_RIGHTS";
660 case DRMRIGHT_STATE_EXPIRED_RIGHTS:
661 return "DRMRIGHT_STATE_EXPIRED_RIGHTS";
664 return MmsDebugPrintUnknownValue(rightState);
668 bool MmsDebugPrintDrmRight(DrmRight *pDrmRight)
673 if (pDrmRight->rightStatus == DRMRIGHT_STATE_NORIGHTS) {
674 SysDebug((MID_MMS|DBG_MMS_COMMON, "rightStatus = %s \n", MmsDebugGetDrmRightState(pDrmRight->rightStatus)));
678 SysDebug((MID_MMS|DBG_MMS_COMMON, "iDeliveryType = %s \n", MmsDebugGetDrmDeliveryMode(pDrmRight->iDeliveryType)));
679 SysDebug((MID_MMS|DBG_MMS_COMMON, "bestConstraint = %s \n", MmsDebugGetDrmConsumeMode(pDrmRight->bestConstraint)));
680 SysDebug((MID_MMS|DBG_MMS_COMMON, "bFirstIntervalRender = %d \n", pDrmRight->bFirstIntervalRender));
681 SysDebug((MID_MMS|DBG_MMS_COMMON, "rightStatus = %s \n", MmsDebugGetDrmRightState(pDrmRight->rightStatus)));
683 SysDebug((MID_MMS|DBG_MMS_COMMON, "bValidIssuer = %d \n", pDrmRight->bValidIssuer));
688 char *MmsDebugPrintMsgDRMStatus(MsgDRMStatus status)
691 case MSG_DRM_STATUS_INVALID:
692 return "MSG_DRM_STATUS_INVALID";
693 case MSG_DRM_STATUS_VALID:
694 return "MSG_DRM_STATUS_VALID";
695 case MSG_DRM_STATUS_EXPIRED:
696 return "MSG_DRM_STATUS_EXPIRED";
699 return MmsDebugPrintUnknownValue(status);
703 bool MmsDebugPrintMulitpartEntry(MsgMultipart *pMultipart, int index)
705 SysDebug((MID_MMS|DBG_MMS_COMMON, "------------------------------\n"));
706 SysDebug((MID_MMS|DBG_MMS_COMMON, "%dth multipart info\n", index));
707 SysDebug((MID_MMS|DBG_MMS_COMMON, "header size=%d\n", pMultipart->type.size));
708 SysDebug((MID_MMS|DBG_MMS_COMMON, "body size=%d\n", pMultipart->type.contentSize));
709 SysDebug((MID_MMS|DBG_MMS_COMMON, "content type=%s\n", MmsDebugGetMimeType(pMultipart->type.type)));
710 SysDebug((MID_MMS|DBG_MMS_COMMON, "content ID=%s\n", pMultipart->type.szContentID));
711 SysDebug((MID_MMS|DBG_MMS_COMMON, "content location=%s\n", pMultipart->type.szContentLocation));
713 if (pMultipart->type.type == MIME_TEXT_PLAIN) {
714 SysDebug((MID_MMS|DBG_MMS_COMMON, "text info\n"));
715 SysDebug((MID_MMS|DBG_MMS_COMMON, "charset=%d\n", pMultipart->type.param.charset));
716 SysDebug((MID_MMS|DBG_MMS_COMMON, "text file name=%s\n", pMultipart->type.param.szName));
719 if (pMultipart->type.drmInfo.drmType != MSG_DRM_TYPE_NONE) {
720 SysDebug((MID_MMS|DBG_MMS_COMMON, "drm info\n"));
721 SysDebug((MID_MMS|DBG_MMS_COMMON, "drm type=%s\n", MmsDebugGetMsgDrmType(pMultipart->type.drmInfo.drmType)));
722 SysDebug((MID_MMS|DBG_MMS_COMMON, "drm content type=%s\n", MmsDebugGetMimeType(pMultipart->type.drmInfo.contentType)));
723 SysDebug((MID_MMS|DBG_MMS_COMMON, "drm content URI=%s\n", pMultipart->type.drmInfo.szContentURI));
725 SysDebug((MID_MMS|DBG_MMS_COMMON, "------------------------------\n"));
730 bool MmsDebugPrintCurrentEventHandler(char *pszFunc, MmsDebugEvType evType)
732 HEventHandler hMmsEH;
733 HEventHandler hSmsEH;
734 HEventHandler hEmailEH;
735 HEventHandler hCommonEH;
736 HEventHandler hCurrentEH;
738 hMmsEH = WmGetEventHandlerByName(EHN_MMS);
739 hSmsEH = WmGetEventHandlerByName(EHN_SMS);
740 hEmailEH = WmGetEventHandlerByName(EHN_EMAIL);
741 hCommonEH = WmGetEventHandlerByName(EHN_MESSENGER);
742 hCurrentEH = WmGetCurrentEventHandler();
745 case MMS_DEBUG_EV_MMS:
746 SysRequireExf(hCurrentEH == hMmsEH, false, ("%s, hMmsEH=%d, hSmsEH=%d, hEmailEH=%d, hCommonEH=%d, hCurrentEH=%d\n", \
747 pszFunc, hMmsEH, hSmsEH, hEmailEH, hCommonEH, hCurrentEH));
750 case MMS_DEBUG_EV_SMS:
751 SysRequireExf(hCurrentEH == hSmsEH, false, ("%s, hMmsEH=%d, hSmsEH=%d, hEmailEH=%d, hCommonEH=%d, hCurrentEH=%d\n", \
752 pszFunc, hMmsEH, hSmsEH, hEmailEH, hCommonEH, hCurrentEH));
755 case MMS_DEBUG_EV_COMMON:
756 SysRequireExf(hCurrentEH == hCommonEH, false, ("%s, hMmsEH=%d, hSmsEH=%d, hEmailEH=%d, hCommonEH=%d, hCurrentEH=%d\n", \
757 pszFunc, hMmsEH, hSmsEH, hEmailEH, hCommonEH, hCurrentEH));
760 case MMS_DEBUG_EV_EMAIL:
761 SysRequireExf(hCurrentEH == hEmailEH, false, ("%s, hMmsEH=%d, hSmsEH=%d, hEmailEH=%d, hCommonEH=%d, hCurrentEH=%d\n", \
762 pszFunc, hMmsEH, hSmsEH, hEmailEH, hCommonEH, hCurrentEH));
765 case MMS_DEBUG_EV_NONE:
767 SysDebug((MID_MMS,"%s, hMmsEH=%d, hSmsEH=%d, hEmailEH=%d, hCommonEH=%d, hCurrentEH=%d\n", \
768 pszFunc, hMmsEH, hSmsEH, hEmailEH, hCommonEH, hCurrentEH));
775 char *DebugPrintGetRmResultInd(MmsRmResultInd indType)
778 case RM_RESULTIND_NONE:
779 return "RM_RESULTIND_NONE";
781 case RM_RESULTIND_MANUAL_SEND:
782 return "RM_RESULTIND_MANUAL_SEND";
784 case RM_RESULTIND_AUTO_SEND:
785 return "RM_RESULTIND_AUTO_SEND";
787 case RM_RESULTIND_MANUAL_GET:
788 return "RM_RESULTIND_MANUAL_GET";
790 case RM_RESULTIND_AUTO_GET:
791 return "RM_RESULTIND_AUTO_GET";
793 case RM_RESULTIND_MANUAL_FORWARD:
794 return "RM_RESULTIND_MANUAL_FORWARD";
797 return MmsDebugPrintUnknownValue(indType);
801 char *DebugPrintHttpStatusCode(int status)
804 case HTTP_STATUS_100:
805 return "HTTP_STATUS_100";
806 case HTTP_STATUS_101:
807 return "HTTP_STATUS_101";
809 case HTTP_STATUS_200:
810 return "HTTP_STATUS_200";
811 case HTTP_STATUS_201:
812 return "HTTP_STATUS_201";
813 case HTTP_STATUS_202:
814 return "HTTP_STATUS_202";
815 case HTTP_STATUS_203:
816 return "HTTP_STATUS_203";
817 case HTTP_STATUS_204:
818 return "HTTP_STATUS_204";
819 case HTTP_STATUS_205:
820 return "HTTP_STATUS_205";
821 case HTTP_STATUS_206:
822 return "HTTP_STATUS_206";
824 case HTTP_STATUS_300:
825 return "HTTP_STATUS_300";
826 case HTTP_STATUS_301:
827 return "HTTP_STATUS_301";
828 case HTTP_STATUS_302:
829 return "HTTP_STATUS_302";
830 case HTTP_STATUS_303:
831 return "HTTP_STATUS_303";
832 case HTTP_STATUS_304:
833 return "HTTP_STATUS_304";
834 case HTTP_STATUS_305:
835 return "HTTP_STATUS_305";
837 case HTTP_STATUS_400:
838 return "HTTP_STATUS_400";
839 case HTTP_STATUS_401:
840 return "HTTP_STATUS_401";
841 case HTTP_STATUS_402:
842 return "HTTP_STATUS_402";
843 case HTTP_STATUS_403:
844 return "HTTP_STATUS_403";
845 case HTTP_STATUS_404:
846 return "HTTP_STATUS_404";
847 case HTTP_STATUS_405:
848 return "HTTP_STATUS_405";
849 case HTTP_STATUS_406:
850 return "HTTP_STATUS_406";
851 case HTTP_STATUS_407:
852 return "HTTP_STATUS_407";
853 case HTTP_STATUS_408:
854 return "HTTP_STATUS_408";
855 case HTTP_STATUS_409:
856 return "HTTP_STATUS_409";
857 case HTTP_STATUS_410:
858 return "HTTP_STATUS_410";
859 case HTTP_STATUS_411:
860 return "HTTP_STATUS_411";
861 case HTTP_STATUS_412:
862 return "HTTP_STATUS_412";
863 case HTTP_STATUS_413:
864 return "HTTP_STATUS_413";
865 case HTTP_STATUS_414:
866 return "HTTP_STATUS_414";
867 case HTTP_STATUS_415:
868 return "HTTP_STATUS_415";
870 case HTTP_STATUS_500:
871 return "HTTP_STATUS_500";
872 case HTTP_STATUS_501:
873 return "HTTP_STATUS_501";
874 case HTTP_STATUS_502:
875 return "HTTP_STATUS_502";
876 case HTTP_STATUS_503:
877 return "HTTP_STATUS_503";
878 case HTTP_STATUS_504:
879 return "HTTP_STATUS_504";
880 case HTTP_STATUS_505:
881 return "HTTP_STATUS_505";
883 case REASON_WTP_UNKNOWN:
884 return "REASON_WTP_UNKNOWN";
885 case REASON_WTP_PROTO_ERR:
886 return "REASON_WTP_PROTO_ERR";
887 case REASON_WTP_INVALID_TID:
888 return "REASON_WTP_INVALID_TID";
889 case REASON_WTP_NOT_IMPLEMENTED_CL2:
890 return "REASON_WTP_NOT_IMPLEMENTED_CL2";
891 case REASON_WTP_NOT_IMPLEMENTED_SAR:
892 return "REASON_WTP_NOT_IMPLEMENTED_SAR";
893 case REASON_WTP_NOT_IMPLEMENTEDU_ACK:
894 return "REASON_WTP_NOT_IMPLEMENTEDU_ACK";
895 case REASON_WTP_VERSIONONE:
896 return "REASON_WTP_VERSIONONE";
897 case REASON_WTP_CAPTEMP_EXCEED:
898 return "REASON_WTP_CAPTEMP_EXCEED";
899 case REASON_WTP_NO_RESPONSE:
900 return "REASON_WTP_NO_RESPONSE";
901 case REASON_WTP_MESSAGE_TOO_LARGE:
902 return "REASON_WTP_MESSAGE_TOO_LARGE";
904 case REASON_PROTOERR:
905 return "REASON_PROTOERR"; // = 0xE0
906 case REASON_DISCONNECT:
907 return "REASON_DISCONNECT";
909 return "REASON_SUSPEND";
911 return "REASON_RESUME";
912 case REASON_CONGESTION:
913 return "REASON_CONGESTION";
914 case REASON_CONNECTERR:
915 return "REASON_CONNECTERR";
916 case REASON_MRUEXCEEDED:
917 return "REASON_MRUEXCEEDED";
918 case REASON_MOREXCEEDED:
919 return "REASON_MOREXCEEDED";
921 return "REASON_PEERREQ";
923 return "REASON_NETERR";
925 return "REASON_USERREQ";
926 /* added for ver 1.2 */
928 return "REASON_USERRFS";
932 return "REASON_USERDCR";
934 return "REASON_USERDCU";
937 return MmsDebugPrintUnknownValue(status);
941 char *DebugPrintRmMethodType(MmsRmMethodType method)
945 return "RM_METHOD_NONE";
947 return "RM_METHOD_GET";
949 return "RM_METHOD_POST";
952 return MmsDebugPrintUnknownValue(method);
956 char *DebugPrintGetMmsRmNetState(MmsRmNetState state)
960 return "RM_PROTO_IDLE";
961 case RM_PROTO_STARTING:
962 return "RM_PROTO_STARTING";
963 case RM_PROTO_STARTED:
964 return "RM_PROTO_STARTED";
965 case RM_PROTO_STOPPING:
966 return "RM_PROTO_STOPPING";
968 case RM_PROTO_WAITING:
969 return "RM_PROTO_WAITING";
970 case RM_PROTO_DISCONNECTING_OTHER_APP:
971 return "RM_PROTO_DISCONNECTING_OTHER_APP";
972 case RM_PROTO_DISCONNECTED_BY_OTHER_APP:
973 return "RM_PROTO_DISCONNECTED_BY_OTHER_APP";
975 case RM_PROTO_FAILED:
976 return "RM_PROTO_FAILED";
979 return MmsDebugPrintUnknownValue(state);
983 char *DebugPrintGetMmsRmEntityState(MmsRmExEntityState stateEx)
987 return "RM_ENTITY_IDLE";
988 case RM_ENTITY_PROTO_STARTING:
989 return "RM_ENTITY_PROTO_STARTING";
991 case RM_ENTITY_CNXN_ESTABLISHING:
992 return "RM_ENTITY_CNXN_ESTABLISHING";
993 case RM_ENTITY_CNXN_ESTABLISHED:
994 return "RM_ENTITY_CNXN_ESTABLISHED";
996 case RM_ENTITY_SENDING_REQUEST:
997 return "RM_ENTITY_SENDING_REQUEST";
998 case RM_ENTITY_SENDING_REQ_N_NO_RESPONSE:
999 return "RM_ENTITY_SENDING_REQ_N_NO_RESPONSE";
1001 case RM_ENTITY_SENDING_REQ_COMPLETED:
1002 return "RM_ENTITY_SENDING_REQ_COMPLETED";
1004 case RM_ENTITY_SENDING_REQ_FAILED:
1005 return "RM_ENTITY_SENDING_REQ_FAILED";
1006 case RM_ENTITY_SENDING_REQ_CANCELLED_BY_USER_CONFIRMED:
1007 return "RM_ENTITY_SENDING_REQ_CANCELLED_BY_USER_CONFIRMED";
1010 return MmsDebugPrintUnknownValue(stateEx);
1014 char *MmsDebugPrintMmsRmResult(MmsRmResult result)
1017 case MMS_RM_RESULT_SUCCESSED:
1018 return "MMS_RM_RESULT_SUCCESSED";
1019 case MMS_RM_RESULT_FAIL:
1020 return "MMS_RM_RESULT_FAIL";
1021 case MMS_RM_RESULT_FAIL_N_RETRY:
1022 return "MMS_RM_RESULT_FAIL_N_RETRY";
1024 case MMS_RM_RESULT_PROTO_STARTING_FAILED:
1025 return "MMS_RM_RESULT_PROTO_STARTING_FAILED";
1027 case MMS_RM_RESULT_DISCONNECT_MMS:
1028 return "MMS_RM_RESULT_DISCONNECT_MMS";
1029 case MMS_RM_RESULT_CLOSING_OTHER_APP_FAILED:
1030 return "MMS_RM_RESULT_CLOSING_OTHER_APP_FAILED";
1032 case MMS_RM_RESULT_SENDING_REQ_FAILED:
1033 return "MMS_RM_RESULT_SENDING_REQ_FAILED";
1034 case MMS_RM_RESULT_CANCELED_BY_USER:
1035 return "MMS_RM_RESULT_CANCELED_BY_USER";
1036 case MMS_RM_RESULT_CANCELED_FROM_RETRY_POPUP:
1037 return "MMS_RM_RESULT_CANCELED_FROM_RETRY_POPUP";
1039 case MMS_RM_RESULT_PROTO_FAILED:
1040 return "MMS_RM_RESULT_PROTO_FAILED";
1041 case MMS_RM_RESULT_DISCONNECTED_BY_OTHER:
1042 return "MMS_RM_RESULT_DISCONNECTED_BY_OTHER";
1044 case MMS_RM_RESULT_MEMORY_FULL:
1045 return "MMS_RM_RESULT_MEMORY_FULL";
1048 return MmsDebugPrintUnknownValue(result);
1051 void MmsDebugPrintReqEntityInfo(MmsRmRequest *pEntity)
1053 SysDebug((MID_MMS," - proto state=%s\n", DebugPrintGetMmsRmNetState(_MmsRmNetGetState())));
1055 if (_MmsRmNetGetProtoType() == MMS_RM_WAP_CONNORIENTED || _MmsRmNetGetProtoType() == MMS_RM_WTLS) {
1056 SysDebug((MID_MMS," - wap cnxn state=%s\n", DebugPrintWspState(MmsRmWspGetCnxnState())));
1060 SysDebug((MID_EXCEPTION, "MmsDebugPrintReqEntityInfo : pEntity is NULL. \n"));
1064 SysDebug((MID_MMS," - entity state=%s\n", DebugPrintGetMmsRmEntityState(pEntity->stateEx)));
1066 if (pEntity->cb.result.bSend) {
1067 if (pEntity->pduType == MMS_RM_READ_REPORT_V10) {
1068 SysDebug((MID_MMS," - sending read report v10\n"));
1069 } else if (pEntity->pduType == MMS_RM_READ_REPORT_V11) {
1070 SysDebug((MID_MMS," - sending read report v11\n"));
1072 SysDebug((MID_MMS," - sending msg\n"));
1074 } else { // then receiving..
1075 if (pEntity->cb.result.bAutoRetrieving) {
1076 SysDebug((MID_MMS," - retrieving(auto)\n"));
1078 SysDebug((MID_MMS," - retrieving(manual)\n"));
1082 SysDebug((MID_MMS," - msgID=%d, trID=0x%x, pduType=%s\n", pEntity->msgID, pEntity->trId, MmsDebugPrintRmPduType(pEntity->pduType)));
1084 if (pEntity->protoActvCount > 1) {
1085 SysDebug((MID_MMS," - protoActvCount=%d\n", pEntity->protoActvCount));
1088 if (pEntity->reqCount > 1) {
1089 SysDebug((MID_MMS," - reqCount=%d\n", pEntity->reqCount));
1092 if (pEntity->fullRetryCount > 1) {
1093 SysDebug((MID_MMS," - fullRetryCount=%d\n", pEntity->fullRetryCount));
1097 char *MmsDebugPrintHttpErrorCode(int errCode)
1100 case HTTPERR_INVALID_PARAM:
1101 return "HTTPERR_INVALID_PARAM";
1102 case HTTPERR_UNKNOWN:
1103 return "HTTPERR_UNKNOWN";
1104 case HTTPERR_INVALID_PROXY:
1105 return "HTTPERR_INVALID_PROXY";
1106 case HTTPERR_OUT_OF_MEMORY:
1107 return "HTTPERR_OUT_OF_MEMORY";
1108 case HTTPERR_NO_RESPONSE:
1109 return "HTTPERR_NO_RESPONSE";
1111 return "HTTPERR_INIT";
1112 case HTTPERR_NETDOWN:
1113 return "HTTPERR_NETDOWN";
1114 case HTTPERR_TIMEOUT:
1115 return "HTTPERR_TIMEOUT";
1116 case HTTPERR_HOST_UNREACH:
1117 return "HTTPERR_HOST_UNREACH";
1118 case HTTPERR_CONN_RESET:
1119 return "HTTPERR_CONN_RESET";
1120 case HTTPERR_INTERNAL:
1121 return "HTTPERR_INTERNAL";
1122 case HTTPERR_CHUNKEDTR:
1123 return "HTTPERR_CHUNKEDTR";
1125 return "HTTPERR_USER";
1126 case HTTPERR_TOO_BIG:
1127 return "HTTPERR_TOO_BIG";
1128 case HTTPERR_NOT_SUPPORTED_SVC:
1129 return "HTTPERR_NOT_SUPPORTED_SVC";
1130 case HTTPERR_NO_CONTENT:
1131 return "HTTPERR_NO_CONTENT";
1132 case HTTPERR_WRITEFAIL:
1133 return "HTTPERR_WRITEFAIL";
1134 case HTTPERR_AUTHFAIL:
1135 return "HTTPERR_AUTHFAIL";
1137 case HTTPERR_DNSFAIL:
1138 return "HTTPERR_DNSFAIL";
1139 case HTTPERR_UAGENT_NOT_ALLOWED:
1140 return "HTTPERR_UAGENT_NOT_ALLOWED";
1143 return MmsDebugPrintUnknownValue(errCode);
1146 char *MmsDebugPrintProtoErrorCode(int errCode)
1149 case PROTO_ERROR_NONE:
1150 return "PROTO_ERROR_NONE";
1151 /* Wireless stack errors */
1152 case PROTO_ERROR_NO_SERVICE:
1153 return "PROTO_ERROR_NO_SERVICE";
1154 case PROTO_ERROR_INVALID_PARAM:
1155 return "PROTO_ERROR_INVALID_PARAM";
1156 case PROTO_ERROR_INVALID_APN:
1157 return "PROTO_ERROR_INVALID_APN";
1158 case PROTO_ERROR_INVALID_OP_MODE:
1159 return "PROTO_ERROR_INVALID_OP_MODE";
1160 case PROTO_ERROR_INVALID_PROTO_TYPE:
1161 return "PROTO_ERROR_INVALID_PROTO_TYPE";
1162 case PROTO_ERROR_INVALID_SERVICE_DOMAIN:
1163 return "PROTO_ERROR_INVALID_SERVICE_DOMAIN";
1164 case PROTO_ERROR_INVALID_PDP_DATA:
1165 return "PROTO_ERROR_INVALID_PDP_DATA";
1166 case PROTO_ERROR_INVALID_QOS:
1167 return "PROTO_ERROR_INVALID_QOS";
1168 case PROTO_ERROR_SESSION_DEACTIVATED:
1169 return "PROTO_ERROR_SESSION_DEACTIVATED";
1170 case PROTO_ERROR_AUTHENTICATION_FAILED:
1171 return "PROTO_ERROR_AUTHENTICATION_FAILED";
1172 case PROTO_ERROR_MOBILE_FAILURE:
1173 return "PROTO_ERROR_MOBILE_FAILURE";
1174 case PROTO_ERROR_NETWORK_FAILURE:
1175 return "PROTO_ERROR_NETWORK_FAILURE";
1176 case PROTO_ERROR_TIMEOUT:
1177 return "PROTO_ERROR_TIMEOUT";
1178 case PROTO_ERROR_NO_RESOURCE:
1179 return "PROTO_ERROR_NO_RESOURCE";
1180 case PROTO_ERROR_INVALID_CONTEXT_ID:
1181 return "PROTO_ERROR_INVALID_CONTEXT_ID";
1182 case PROTO_ERROR_MODEM_IN_USE:
1183 return "PROTO_ERROR_MODEM_IN_USE";
1184 case PROTO_ERROR_INVALID_SIM_STATE:
1185 return "PROTO_ERROR_INVALID_SIM_STATE:";
1186 case PROTO_ERROR_SERVICE_NOT_SUBSCRIBED:
1187 return "PROTO_ERROR_SERVICE_NOT_SUBSCRIBED";
1188 case PROTO_ERROR_SERVICE_NOT_IMPLEMENTED:
1189 return "PROTO_ERROR_SERVICE_NOT_IMPLEMENTED";
1190 case PROTO_ERROR_FDN_NOT_ALLOWED:
1191 return "PROTO_ERROR_FDN_NOT_ALLOWED";
1192 case PROTO_ERROR_CALL_INCOME:
1193 return "PROTO_ERROR_CALL_INCOME";
1194 case PROTO_ERROR_NOT_SUPPORT_3GCSD:
1195 return "PROTO_ERROR_NOT_SUPPORT_3GCSD";
1196 case PROTO_ERROR_UNKNOWN:
1197 return "PROTO_ERROR_UNKNOWN";
1198 case PROTO_ERROR_SI_OFFLINE:
1199 return "PROTO_ERROR_SI_OFFLINE";
1200 /* TCP/IP/PPP stack errors */
1201 case PROTO_ERROR_TCPIP_UP:
1202 return "PROTO_ERROR_TCPIP_UP";
1203 case PROTO_ERROR_TCPIP_DOWN:
1204 return "PROTO_ERROR_TCPIP_DOWN";
1205 case PROTO_ERROR_PPP_UP:
1206 return "PROTO_ERROR_PPP_UP";
1207 case PROTO_ERROR_PPP_DOWN:
1208 return "PROTO_ERROR_PPP_DOWN";
1209 case PROTO_ERROR_WDP_INIT:
1210 return "PROTO_ERROR_WDP_INIT";
1211 /* ProtoMgr API call errors */
1212 case PROTO_ERROR_ACTIVE_CONNECTIONS:
1213 return "PROTO_ERROR_ACTIVE_CONNECTIONS";
1214 case PROTO_ERROR_MAX_CONNECTIONS:
1215 return "PROTO_ERROR_MAX_CONNECTIONS";
1216 case PROTO_ERROR_INVALID_HANDLE:
1217 return "PROTO_ERROR_INVALID_HANDLE";
1218 case PROTO_ERROR_INVALID_CONTEXT:
1219 return "PROTO_ERROR_INVALID_CONTEXT";
1220 case PROTO_ERROR_INVALID_CALLBACK:
1221 return "PROTO_ERROR_INVALID_CALLBACK";
1222 case PROTO_ERROR_INVALID_EHN:
1223 return "PROTO_ERROR_INVALID_EHN";
1224 case PROTO_ERROR_INVALID_EVENTCLASS:
1225 return "PROTO_ERROR_INVALID_EVENTCLASS";
1226 case PROTO_ERROR_INVALID_REFTYPE:
1227 return "PROTO_ERROR_INVALID_REFTYPE";
1228 case PROTO_ERROR_INVALID_TIMEOUT:
1229 return "PROTO_ERROR_INVALID_TIMEOUT";
1230 case PROTO_ERROR_MAX_CLIENT:
1231 return "PROTO_ERROR_MAX_CLIENT";
1232 case PROTO_ERROR_MAX_ACCOUNT:
1233 return "PROTO_ERROR_MAX_ACCOUNT";
1234 case PROTO_ERROR_ACCESS_DENIED:
1235 return "PROTO_ERROR_ACCESS_DENIED";
1236 case PROTO_ERROR_REGISTRY_LOAD:
1237 return "PROTO_ERROR_REGISTRY_LOAD";
1239 case PROTO_ERROR_PCBROWSING_ON:
1240 return "PROTO_ERROR_PCBROWSING_ON";
1241 case PROTO_ERROR_REACTIVATION_REQ:
1242 return "PROTO_ERROR_REACTIVATION_REQ";
1243 case PROTO_ERROR_NO_PDP_ACTIVATED:
1244 return "PROTO_ERROR_NO_PDP_ACTIVATED";
1246 case PROTO_ERROR_MAX:
1247 return "PROTO_ERROR_MAX";
1251 return MmsDebugPrintUnknownValue(errCode);
1255 char *DebugPrintWspResult(WspResult wspResult)
1257 switch (wspResult) {
1258 case WSP_RESULT_NO_ERROR:
1259 return "WSP_RESULT_NO_ERROR";
1260 case WSP_RESULT_NO_SESSION:
1261 return "WSP_RESULT_NO_SESSION";
1262 case WSP_RESULT_NOT_SUITABLE:
1263 return "WSP_RESULT_NOT_SUITABLE";
1265 case WSP_RESULT_NOT_RESPONDING:
1266 return "WSP_RESULT_NOT_RESPONDING";
1267 case WSP_RESULT_MOP_EXCEED:
1268 return "WSP_RESULT_MOP_EXCEED";
1269 case WSP_RESULT_MOM_EXCEED:
1270 return "WSP_RESULT_MOM_EXCEED";
1272 case WSP_RESULT_UNABLE:
1273 return "WSP_RESULT_UNABLE";
1274 case WSP_RESULT_UNKNOWN:
1275 return "WSP_RESULT_UNKNOWN";
1276 case WSP_RESULT_WRONG_PARAM:
1277 return "WSP_RESULT_WRONG_PARAM";
1279 case WSP_RESULT_NO_MEMORY:
1280 return "WSP_RESULT_NO_MEMORY";
1281 case WSP_RESULT_NO_HANDLE:
1282 return "WSP_RESULT_NO_HANDLE";
1284 case WSP_RESULT_CAPABILITY_UNABLE:
1285 return "WSP_RESULT_CAPABILITY_UNABLE";
1286 case WSP_RESULT_UAGENT_NOT_ALLOWED:
1287 return "WSP_RESULT_UAGENT_NOT_ALLOWED";
1290 return MmsDebugPrintUnknownValue(wspResult);
1294 char *DebugPrintWspState(MmsRmWapState wspState)
1296 switch (wspState) { //gMmsRmWapState
1298 return "RM_WAP_IDLE";
1299 case RM_WAP_CONNECTING:
1300 return "RM_WAP_CONNECTING";
1301 case RM_WAP_CONNECTED:
1302 return "RM_WAP_CONNECTED";
1303 case RM_WAP_DISCONNECTING:
1304 return "RM_WAP_DISCONNECTING";
1305 case RM_WAP_SECURE_REDIRECT:
1306 return "RM_WAP_SECURE_REDIRECT";
1308 return "RM_WAP_FAILED";
1309 case RM_WAP_WTLS_HANDSHAKING:
1310 return "RM_WAP_WTLS_HANDSHAKING";
1311 case RM_WAP_WTLS_HANDSHAKE_COMPLETED:
1312 return "RM_WAP_WTLS_HANDSHAKE_COMPLETED";
1315 return MmsDebugPrintUnknownValue(wspState);
1319 char *MmsDebugPrintRmPduType(MmsRmPduType pduType)
1322 case MMS_RM_PDU_TYPE:
1323 return "MMS_RM_PDU_TYPE";
1325 case MMS_RM_SEND_REQ:
1326 return "MMS_RM_SEND_REQ";
1327 case MMS_RM_GET_REQ_AUTO:
1328 return "MMS_RM_GET_REQ_AUTO";
1329 case MMS_RM_GET_REQ_MANUAL:
1330 return "MMS_RM_GET_REQ_MANUAL";
1331 case MMS_RM_NOTIFY_RESP_IND:
1332 return "MMS_RM_NOTIFY_RESP_IND";
1333 case MMS_RM_ACK_IND:
1334 return "MMS_RM_ACK_IND";
1336 case MMS_RM_NOTI_IND:
1337 return "MMS_RM_NOTI_IND";
1338 case MMS_RM_RETRIEVE_CONF:
1339 return "MMS_RM_RETRIEVE_CONF";
1341 case MMS_RM_READ_REPORT_V10:
1342 return "MMS_RM_READ_REPORT_V10";
1343 case MMS_RM_READ_REPORT_V11:
1344 return "MMS_RM_READ_REPORT_V11";
1347 return MmsDebugPrintUnknownValue(pduType);
1351 char *MmsDebugPrintMailboxType(MsgMailboxType mailboxType)
1353 switch (mailboxType) {
1354 case MSG_MAILBOX_WRITE:
1355 return "MSG_MAILBOX_WRITE";
1356 case MSG_MAILBOX_INBOX:
1357 return "MSG_MAILBOX_INBOX";
1358 case MSG_MAILBOX_DRAFT:
1359 return "MSG_MAILBOX_DRAFT";
1360 case MSG_MAILBOX_SENT:
1361 return "MSG_MAILBOX_SENT";
1362 case MSG_MAILBOX_MAILBOX:
1363 return "MSG_MAILBOX_MAILBOX";
1364 case MSG_MAILBOX_OUTBOX:
1365 return "MSG_MAILBOX_OUTBOX";
1366 case MSG_MAILBOX_TEMPLATE:
1367 return "MSG_MAILBOX_TEMPLATE";
1368 case MSG_MAILBOX_MYFOLDER:
1369 return "MSG_MAILBOX_MYFOLDER";
1370 case MSG_MAILBOX_MYFOLDER_LIST:
1371 return "MSG_MAILBOX_MYFOLDER_LIST";
1372 case MSG_MAILBOX_PRESET:
1373 return "MSG_MAILBOX_PRESET";
1376 return MmsDebugPrintUnknownValue(mailboxType);