Dependency Graph
View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0002609 | SOGo | ActiveSync | public | 2014-02-20 22:00 | 2014-03-05 14:08 |
Reporter | vinyard | Assigned To | ludovic | ||
Priority | normal | Severity | crash | Reproducibility | always |
Status | closed | Resolution | fixed | ||
Platform | Linux | OS | CentOS | OS Version | 6.5 |
Product Version | nightly v2 | ||||
Fixed in Version | 2.2.1 | ||||
Summary | 0002609: Exception when using ActiveSync with Android 4.4.2 (Email) | ||||
Description | Hi, I receive the following in sogo.log when attempting to sync email from and android device: I've attached a full backtrace. Let me know if I can provide more info. Thanks. | ||||
Steps To Reproduce | Try to sync email with activesync on android device. | ||||
Additional Information | sogo-2.2.0.20140220-1.centos6.x86_64 | ||||
Tags | No tags attached. | ||||
sogo.txt (14,774 bytes)
#0 -[NSException raise] (self=0x7ffff89432e8, _cmd=0x7ffff569fd60) at NSException.m:956 No locals. #1 0x00007ffff51beb82 in +[NSException raise:format:arguments:] (self=0x7ffff569f980, _cmd=0x7ffff569fd30, name=0x7ffff569f3a0, format=0x7ffff571ed20, argList=0x7fffffffcd80) at NSException.m:849 reason = 0x7ffff8943258 except = 0x7ffff89432e8 #2 0x00007ffff51beac9 in +[NSException raise:format:] (self=0x7ffff569f980, _cmd=0x7ffff571f190, name=0x7ffff569f3a0, format=0x7ffff571ed20) at NSException.m:835 args = {{gp_offset = 32, fp_offset = 48, overflow_arg_area = 0x7fffffffce70, reg_save_area = 0x7fffffffcda0}} #3 0x00007ffff52d7187 in gs_objc_msg_forward2 (receiver=0x7ffff885a2d8, sel=0x7fffe7aa0b40) at GSFFIInvocation.m:193 c = 0x7ffff68dc1e0 frame = 0x7ffff885a370 cframe = 0x0 cclosure = 0x7ffff7de4725 sig = 0x0 memory = 0x7ffff56815c0 types = 0x0 #4 0x00007ffff4b8e165 in __objc_get_forward_imp (rcv=<value optimized out>, sel=0x7fffe7aa0b40) at /usr/src/debug/gcc-4.4.7-20120601/libobjc/sendmsg.c:103 result = <value optimized out> #5 0x00007fffe7879460 in -[SOGoMailFolder davCollectionTagFromId:] (self=0x7ffff88740e8, _cmd=0x7fffe6740c30, theId=0x7ffff88def98) at SOGoMailFolder.m:1940 result = 0x7ffff880ef78 modseq = 0 uid = 384 tag = 0x7fffe7a9ecc0 #6 0x00007fffe652cb57 in -[SOGoActiveSyncDispatcher(Sync) processSyncCollection:inBuffer:changeDetected:] ( self=0x7ffff88232b8, _cmd=0x7fffe6740c70, theDocumentElement=0x7ffff87aed08, theBuffer=0x7ffff8785c28, changeDetected=0x7fffffffd0df "") at SOGoActiveSyncDispatcher+Sync.m:823 collectionId = 0x7ffff8840688 realCollectionId = 0x7ffff880edc8 syncKey = 0x7ffff8877078 davCollectionTag = 0x7ffff8877078 bodyPreferenceType = 0x7ffff8877b78 lastServerKey = 0x7ffff88def98 folderType = ActiveSyncMailFolder collection = 0x7ffff88740e8 value = 0x7ffff8877538 changeBuffer = 0x7ffff880f078 commandsBuffer = 0x7ffff880ef78 getChanges = 1 '\001' first_sync = 0 '\000' windowSize = 10 #7 0x00007fffe652d109 in -[SOGoActiveSyncDispatcher(Sync) processSync:inResponse:] (self=0x7ffff88232b8, _cmd=0x7ffff87ebf10, theDocumentElement=0x7ffff87f69c8, theResponse=0x7ffff87913f8) at SOGoActiveSyncDispatcher+Sync.m:995 defaults = 0x7ffff83f9958 aCollection = 0x7ffff87aed08 output = 0x7ffff8837128 s = 0x7ffff8785c28 allCollections = 0x7ffff880b6f8 d = 0x7ffff4b8d599 i = 0 j = 0 defaultInterval = 30 heartbeatInterval = 30 internalInterval = 10 changeDetected = 0 '\000' #8 0x00007ffff52113e9 in -[NSObject performSelector:withObject:withObject:] (self=0x7ffff88232b8, _cmd=0x7fffe673f250, aSelector=0x7ffff87ebf10, object1=0x7ffff87f69c8, object2=0x7ffff87913f8) at NSObject.m:2038 msg = 0x7fffe652cdfe <-[SOGoActiveSyncDispatcher(Sync) processSync:inResponse:]> #9 0x00007fffe6529fd9 in -[SOGoActiveSyncDispatcher dispatchRequest:inResponse:context:] (self=0x7ffff88232b8, _cmd=0x7fffe73f95e0, theRequest=0x7ffff87842d8, theResponse=0x7ffff87913f8, theContext=0x7ffff87bb4b8) at SOGoActiveSyncDispatcher.m:1560 documentElement = 0x7ffff87f69c8 builder = 0x7ffff87f9bf8 dom = 0x7ffff87b24d8 aSelector = 0x7ffff87ebf10 cmdName = 0x7ffff88371f8 deviceId = 0x7ffff87ede18 d = 0x7ffff87f99d8 #10 0x00007fffe71f29f2 in -[SOGoMicrosoftActiveSyncActions microsoftServerActiveSyncAction] (self=0x7ffff880a8b8, _cmd=0x7ffff87ebf50) at SOGoMicrosoftActiveSyncActions.m:55 response = 0x7ffff87913f8 request = 0x7ffff87842d8 bundle = 0x7ffff8533dc8 ex = 0x7fffffffd250 dispatcher = 0x7ffff88232b8 clazz = 0x7fffe673e8c0 #11 0x00007ffff5211186 in -[NSObject performSelector:] (self=0x7ffff880a8b8, _cmd=0x7ffff6d787e0, aSelector=0x7ffff87ebf50) at NSObject.m:1985 msg = 0x7fffe71f2874 <-[SOGoMicrosoftActiveSyncActions microsoftServerActiveSyncAction]> #12 0x00007ffff6a40c50 in -[WODirectAction performActionNamed:] (self=0x7ffff880a8b8, _cmd=0x7ffff6e025b0, _actionName=0x7ffff87f9ab8) at WODirectAction.m:97 actionSel = 0x7ffff87ebf50 rng = {location = 2147483647, length = 0} #13 0x00007ffff6ad006f in -[SoActionInvocation callOnObject:withPositionalParametersWhenNotNil:inContext:] ( self=0x7ffff880a048, _cmd=0x7ffff6e025e0, _client=0x7ffff837f528, _positionalArgs=0x0, _ctx=0x7ffff87bb4b8) at SoActionInvocation.m:300 method = 0x7ffff880a8b8 result = 0x0 #14 0x00007ffff6ad01b5 in -[SoActionInvocation callOnObject:inContext:] (self=0x7ffff880a048, _cmd=0x7ffff6dfead0, _client=0x7ffff837f528, _ctx=0x7ffff87bb4b8) at SoActionInvocation.m:316 No locals. #15 0x00007ffff6ac9fda in -[SoObjectMethodDispatcher dispatchInContext:] (self=0x7ffff8823298, _cmd=0x7ffff6e001d0, _ctx=0x7ffff87bb4b8) at SoObjectMethodDispatcher.m:191 pool = 0x7ffff877e938 rq = 0x7ffff87842d8 httpMethod = 0x7ffff6d9a8e0 clientObject = 0x7ffff837f528 methodObject = 0x7ffff880a048 resultObject = 0x7ffff87bb4b8 #16 0x00007ffff6acc763 in -[SoObjectRequestHandler handleRequest:inContext:session:application:] (self=0x7ffff8501ca8, _cmd=0x7ffff6d87c80, _rq=0x7ffff87842d8, _ctx=0x7ffff87bb4b8, _sn=0x0, app=0x7ffff837f528) at SoObjectRequestHandler.m:584 dispatcher = 0x7ffff8823298 r = 0x0 object = 0x7ffff880a048 authenticator = 0x7ffff87c8848 doDispatch = 1 '\001' #17 0x00007ffff6a53f88 in -[WORequestHandler handleRequest:] (self=0x7ffff8501ca8, _cmd=0x7ffff6d52b80, _request=0x7ffff87842d8) at WORequestHandler.m:237 startHandling = 0 app = 0x7ffff837f528 response = 0x0 context = 0x7ffff87bb4b8 thread = 0x7ffff82fcd68 sessionId = 0x0 session = 0x0 uri = 0x7ffff8810518 #18 0x00007ffff6a0f9dc in -[WOCoreApplication dispatchRequest:usingHandler:] (self=0x7ffff837f528, _cmd=0x7ffff6d52be0, _request=0x7ffff87842d8, handler=0x7ffff8501ca8) at WOCoreApplication.m:712 startDispatch = 0 response = 0x0 startDispatch = 0 #19 0x00007ffff6a0fd38 in -[WOCoreApplication dispatchRequest:] (self=0x7ffff837f528, _cmd=0x7ffff8201160, _request=0x7ffff87842d8) at WOCoreApplication.m:752 handler = 0x7ffff8501ca8 #20 0x00007ffff7ff98a9 in -[SOGo dispatchRequest:] (self=0x7ffff837f528, _cmd=0x7ffff6de90d0, _request=0x7ffff87842d8) at SOGo.m:453 runLoopModes = 0x7ffff882da38 debugOn = 0 '\000' resp = 0x7ffff87a8888 startDate = 0x7fffffffd770 timeDelta = 6.953349573345124e-310 objc_super = {self = 0x7ffff837f528, super_class = 0x7ffff6df8aa0} #21 0x00007ffff6ab9770 in -[WOHttpTransaction _run] (self=0x7ffff87edc58, _cmd=0x7ffff6de9100) at WOHttpTransaction.m:596 No locals. #22 0x00007ffff6ab9b42 in -[WOHttpTransaction run] (self=0x7ffff87edc58, _cmd=0x7ffff6de6d80) at WOHttpTransaction.m:649 ok = 1 '\001' #23 0x00007ffff6ab501f in -[WOHttpAdaptor runConnection:] (self=0x7ffff872e528, _cmd=0x7ffff6de6e20, _socket=0x7ffff87aefc8) at WOHttpAdaptor.m:367 tx = 0x7ffff87edc58 #24 0x00007ffff6ab5273 in -[WOHttpAdaptor _handleAcceptedConnection:] (self=0x7ffff872e528, _cmd=0x7ffff6de6e30, _connection=0x7ffff87aefc8) at WOHttpAdaptor.m:401 t = 6.9533467970025645e-310 #25 0x00007ffff6ab56d8 in -[WOHttpAdaptor _handleConnection:] (self=0x7ffff872e528, _cmd=0x7ffff6de6ee0, connection=0x7ffff87aefc8) at WOHttpAdaptor.m:460 No locals. #26 0x00007ffff6ab5bc8 in -[WOHttpAdaptor acceptConnection:] (self=0x7ffff872e528, _cmd=0x7ffff6de6d40, _notification=0x7ffff8837568) at WOHttpAdaptor.m:521 No locals. #27 0x00007ffff5202e2f in -[NSNotificationCenter _postAndRelease:] (self=0x7ffff8300ae8, _cmd=0x7ffff56bea50, notification=0x7ffff8837568) at NSNotificationCenter.m:1223 o = 0x7ffff8303910 count = 0 name = 0x7ffff60c74e0 object = 0x7ffff86bc429 n = 0x0 m = 0x7ffff86773f0 i = {{addr = 140737357297936, ext = 0x7ffff8303910}, {addr = 140737305969364, ext = 0x7ffff52102d4}, { addr = 140737310561968, ext = 0x7ffff56716b0}, {addr = 140737362752920, ext = 0x7ffff8837598}, { addr = 140737488345600, ext = 0x7fffffffda00}, {addr = 140737305097481, ext = 0x7ffff513b509}, {addr = 0, ext = 0x0}, {addr = 140737362753016, ext = 0x7ffff88375f8}, {addr = 140737310919728, ext = 0x7ffff56c8c30}, {addr = 140737362752920, ext = 0x7ffff8837598}, {addr = 140737362752920, ext = 0x7ffff8837598}, {addr = 4117690784, ext = 0xf56ef9a0}, {addr = 140737362752920, ext = 0x7ffff8837598}, {addr = 140737358305624, ext = 0x7ffff83f9958}, {addr = 140737362752360, ext = 0x7ffff8837368}, {addr = 140737362752360, ext = 0x7ffff8837368}, {addr = 140737488345664, ext = 0x7fffffffda40}, {addr = 140737358305624, ext = 0x7ffff83f9958}, {addr = 140737306457361, ext = 0x7ffff5287511}, {addr = 0, ext = 0x0}, {addr = 0, ext = 0x0}, {addr = 140737306685138, ext = 0x7ffff52beed2}, {addr = 140737362752352, ext = 0x7ffff8837360}, {addr = 140737311241856, ext = 0x7ffff5717680}, {addr = 140737488345696, ext = 0x7fffffffda60}, {addr = 140737306697344, ext = 0x7ffff52c1e80}, {addr = 140737362752352, ext = 0x7ffff8837360}, {addr = 140737311241856, ext = 0x7ffff5717680}, {addr = 140737488345760, ext = 0x7fffffffdaa0}, {addr = 140737305967575, ext = 0x7ffff520fbd7}, {addr = 140737488345744, ext = 0x7fffffffda90}, {addr = 140737362752360, ext = 0x7ffff8837368}, {addr = 38654705666, ext = 0x900000002}, {addr = 140737311241856, ext = 0x7ffff5717680}, {addr = 140737362752352, ext = 0x7ffff8837360}, {addr = 140737310493376, ext = 0x7ffff5660ac0}, {addr = 140737488345792, ext = 0x7fffffffdac0}, {addr = 140737305969364, ext = 0x7ffff52102d4}, {addr = 140737310494336, ext = 0x7ffff5660e80}, {addr = 4169364328, ext = 0xf8837368}, {addr = 140737488345840, ext = 0x7fffffffdaf0}, {addr = 4111472672, ext = 0xf5101820}, { addr = 140737362246920, ext = 0x7ffff87bbd08}, {addr = 140737362246920, ext = 0x7ffff87bbd08}, { addr = 140737488345888, ext = 0x7fffffffdb20}, {addr = 140737357286120, ext = 0x7ffff8300ae8}, {addr = 40, ext = 0x28}, {addr = 140737294233216, ext = 0x7ffff46dee80}, {addr = 140737306457361, ext = 0x7ffff5287511}, {addr = 0, ext = 0x0}, {addr = 0, ext = 0x0}, {addr = 140737291000209, ext = 0x7ffff43c9991}, {addr = 140737362752872, ext = 0x7ffff8837568}, {addr = 140737310877760, ext = 0x7ffff56be840}, {addr = 140737357286120, ext = 0x7ffff8300ae8}, {addr = 140737488345952, ext = 0x7fffffffdb60}, {addr = 140737358305624, ext = 0x7ffff83f9958}, {addr = 140737306793272, ext = 0x7ffff52d9538}, {addr = 140737357172832, ext = 0x7ffff82e5060}, {addr = 140737310877760, ext = 0x7ffff56be840}, {addr = 140737488346000, ext = 0x7fffffffdb90}, {addr = 140737305966538, ext = 0x7ffff520f7ca}, {addr = 140737362752872, ext = 0x7ffff8837568}, {addr = 140737310877760, ext = 0x7ffff56be840}} b = {ptr = 0x7fffffffd980, count = 1, cap = 64, old = 0, zone = 0x7ffff5717680} a = 0x7fffffffdb80 #28 0x00007ffff5203152 in -[NSNotificationCenter postNotificationName:object:userInfo:] (self=0x7ffff8300ae8, _cmd=0x7ffff56bea60, name=0x7ffff60c74e0, object=0x7ffff86bc428, info=0x0) at NSNotificationCenter.m:1282 notification = 0x7ffff8837568 #29 0x00007ffff5202fe1 in -[NSNotificationCenter postNotificationName:object:] (self=0x7ffff8300ae8, _cmd=0x7ffff60c76d0, name=0x7ffff60c74e0, object=0x7ffff86bc428) at NSNotificationCenter.m:1262 No locals. #30 0x00007ffff5e7cea2 in -[NSObject(FileObjectWatcher) receivedEvent:type:extra:forMode:] (self=0x7ffff86bc428, _cmd=0x7ffff57455d0, _fdData=0x7, _type=ET_RDESC, _extra=0x7, _mode=0x7ffff56e0fa0) at NSRunLoop+FileObjects.m:57 nc = 0x7ffff8300ae8 #31 0x00007ffff5320635 in -[GSRunLoopCtxt pollUntil:within:] (self=0x7ffff85648c8, _cmd=0x7ffff56e2160, milliseconds=8527, contexts=0x7ffff8578a68) at GSRunLoopCtxt.m:632 fd = 7 watcher = 0x7ffff85e9388 found = 0 '\000' threadInfo = 0x7ffff85ce008 poll_return = 1 fdEnd = 2 fdIndex = 1 fdFinish = 0 count = 4294967295 i = 4294967295 immediate = 0 '\000' __PRETTY_FUNCTION__ = "-[GSRunLoopCtxt pollUntil:within:]" #32 0x00007ffff525078a in -[NSRunLoop acceptInputForMode:beforeDate:] (self=0x7ffff84a6858, _cmd=0x7ffff56e21a0, mode=0x7ffff56e0fa0, limit_date=0x7ffff8780148) at NSRunLoop.m:1198 context = 0x7ffff85648c8 ti = 8.5275760293006897 timeout_ms = 8527 savedMode = 0x0 arp = 0x7ffff877e7c8 __PRETTY_FUNCTION__ = "-[NSRunLoop acceptInputForMode:beforeDate:]" #33 0x00007ffff5250b99 in -[NSRunLoop runMode:beforeDate:] (self=0x7ffff84a6858, _cmd=0x7ffff6d52a70, mode=0x7ffff56e0fa0, date=0x7ffff8564f28) at NSRunLoop.m:1266 arp = 0x7ffff85e93c8 d = 0x7ffff8564f28 #34 0x00007ffff6a0f170 in -[WOCoreApplication run] (self=0x7ffff837f528, _cmd=0x7ffff8200f80) at WOCoreApplication.m:584 loop = 0x7ffff84a6858 limitDate = 0x7ffff8564f28 pool = 0x7ffff85e9568 #35 0x00007ffff7ff8f1d in -[SOGo run] (self=0x7ffff837f528, _cmd=0x7ffff6d74000) at SOGo.m:277 objc_super = {self = 0x7ffff837f528, super_class = 0x7ffff6df8aa0} #36 0x00007ffff6a3cb3e in WOApplicationMain (_appClassName=0x7ffff81ff4c0, argc=13, argv=0x7fffffffe5d8) at WOApplicationMain.m:42 app = 0x7ffff837f528 pool = 0x7ffff8499918 #37 0x00007ffff6a6059d in WOWatchDogApplicationMain (appName=0x7ffff81ff4c0, argc=13, argv=0x7fffffffe5d8) at WOWatchDogApplicationMain.m:1048 pool = 0x7ffff83651c8 ud = 0x7ffff8363cf8 logFile = 0x7ffff83a3b98 nsPidFile = 0x7ffff83a42e8 rc = 0 i = 2 childPid = 0 processInfo = 0x7ffff825b3d8 WOAppClass = 0x7ffff8200be0 #38 0x00007ffff7ff80ed in main (argc=13, argv=0x7fffffffe5d8, env=0x7fffffffe648) at sogod.m:53 pool = 0x7ffff832eb68 sd = 0x7ffff83f9958 rc = 0 |
|
You've upgraded SOGo but not SOPE - that's your problem. |
|
I'm not so sure how much more up-to-date I can get: sogo-2.2.0.20140225-1.centos6 Above is what I've installed on my system currently, still get the same outcome. Am I missing something? |
|
Actually you are right - a commit was missing (and was just pushed). Expect updated packages soon. |
|
I can see that the missing method has been added a few minutes ago. https://github.com/inverse-inc/sope/commit/ab13ed37694d3dd18d4e8b69973b1d71ab00a5fd I'll test when a new build becomes available. Thanks. |
|
Beat me to it. :) |
|
android_exchange.txt (1,790 bytes)
02-26 11:24:29.978 I/ActivityManager(456): Start proc com.google.android.exchange for service com.google.android.exchange/com.android.exchange.service.EmailSyncAdapterService: pid=18081 uid=10038 gids={50038, 3003, 1028, 1015} 02-26 11:24:53.236 E/AndroidRuntime(18081): Process: com.google.android.exchange, PID: 18081 02-26 11:24:53.236 E/AndroidRuntime(18081): at com.android.exchange.adapter.EmailSyncParser.addData(EmailSyncParser.java:140) 02-26 11:24:53.236 E/AndroidRuntime(18081): at com.android.exchange.adapter.EmailSyncParser.addParser(EmailSyncParser.java:343) 02-26 11:24:53.236 E/AndroidRuntime(18081): at com.android.exchange.adapter.EmailSyncParser.commandsParser(EmailSyncParser.java:657) 02-26 11:24:53.236 E/AndroidRuntime(18081): at com.android.exchange.adapter.AbstractSyncParser.parse(AbstractSyncParser.java:177) 02-26 11:24:53.236 E/AndroidRuntime(18081): at com.android.exchange.adapter.EmailSyncParser.parse(EmailSyncParser.java:741) 02-26 11:24:53.236 E/AndroidRuntime(18081): at com.android.exchange.service.EasSyncHandler.parse(EasSyncHandler.java:302) 02-26 11:24:53.236 E/AndroidRuntime(18081): at com.android.exchange.service.EasSyncHandler.performOneSync(EasSyncHandler.java:363) 02-26 11:24:53.236 E/AndroidRuntime(18081): at com.android.exchange.service.EasSyncHandler.performSync(EasSyncHandler.java:428) 02-26 11:24:53.236 E/AndroidRuntime(18081): at com.android.exchange.service.EmailSyncAdapterService$SyncAdapterImpl.syncMailbox(EmailSyncAdapterService.java:866) 02-26 11:24:53.236 E/AndroidRuntime(18081): at com.android.exchange.service.EmailSyncAdapterService$SyncAdapterImpl.onPerformSync(EmailSyncAdapterService.java:781) 02-26 11:25:17.603 I/ActivityManager(456): Process com.google.android.exchange (pid 18081) has died. |
|
With today's update I no longer receive the exception but exchange services on android just crash so email fails to sync. This is on Android 4.4.2, I won't be able to test it on older versions until later tonight. I've attached exchange android log although it really doesn't seem to show much. |
|
If you look at the code on Android:
Is it possible you have a mail in your mailbox with no Date field? IIRC, the Date field is mandatory in the AS response, but we add it conditionally in our code: // DateReceived |
|
email-test.txt (2,012 bytes)
Return-Path: <username@gmail.com> Delivered-To: johndoe@domainname.net Received: from dc.vnet.internal (dc.vnet.internal [10.8.27.3]) by mx.vnet.internal (Postfix) with ESMTP id C7DB67D0 for <johndoe@domainname.net>; Wed, 26 Feb 2014 12:14:09 -0800 (PST) Received: from mail-ve0-f195.google.com (mail-ve0-f195.google.com [209.85.128.195]) by dc.vnet.internal (Postfix) with ESMTP id 9AAC8120258 for <johndoe@domainname.net>; Wed, 26 Feb 2014 12:14:08 -0800 (PST) Received: by mail-ve0-f195.google.com with SMTP id jy13so324633veb.10 for <johndoe@domainname.net>; Wed, 26 Feb 2014 12:14:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=H+LadAsoM5DzMh04GUJkdOnP1zggMqPzImD9+KwDR0s=; b=LuGm4BoTOIpyvMt+uptlaOF14f3m7vs/h7Ea3EKu1WJbkEiYafMIV7H1q6MNI82PGk rwueL+mpWwyIONcj7BzNhfGW5hDlvutnjChwkjj/44/TukpVaKyiq4GEthG+aqH283w7 Rs0Rc7oalCcrAQ+ZPxY1Efg5EV2QzUuXprWSP8Ippxu43xEoKyx5QI97mf4HOTe0i3tW +asbMMZEylIL5iKYahsXok5pNWo4cerM3Dkcs9ZA/Zuabk5hbNQP35W4wVnnnbKpuwv4 yNCQ090cEAdDggxu9Vg14xWqvt3Ku4WCbxKYTf6kI3Dw8ck8v35mkSrmFTinOLwkRu22 AZlA== MIME-Version: 1.0 X-Received: by 10.52.29.113 with SMTP id j17mr6189594vdh.22.1393445647891; Wed, 26 Feb 2014 12:14:07 -0800 (PST) Received: by 10.220.227.72 with HTTP; Wed, 26 Feb 2014 12:14:07 -0800 (PST) Date: Wed, 26 Feb 2014 12:14:07 -0800 Message-ID: <CAMYxiYxfY6Nq7eM4G_ZVzeKMfopKVNHCYyftzBJ1VS=PX0Da0w@mail.gmail.com> Subject: testing From: User Name <username@gmail.com> To: johndoe@domainname.net Content-Type: multipart/alternative; boundary=20cf3079bf14db437f04f354d885 --20cf3079bf14db437f04f354d885 Content-Type: text/plain; charset=ISO-8859-1 Testing this simple message. --20cf3079bf14db437f04f354d885 Content-Type: text/html; charset=ISO-8859-1 <div dir="ltr">Testing this simple message.</div> --20cf3079bf14db437f04f354d885-- |
|
I took a quick look at the mailbox and didn't find any emails without a date field. (I'll take a more thorough look in a bit) I did test an empty mailbox which went fine but as soon as I had a message in the mailbox exchange services on android crashed again. I've attached the single email I have in this test mailbox. |
|
For testing purposes, can you try with an other AS client? Like an iPhone/iPad. One more thing you could try is to replace, from SOGoMailObject+ActiveSync.m: value = [self date]; by: value = [self date]; This change WILL break other AS clients, but it might work for Android v4.4. |
|
I've tested ActiveSync with an iPad (iOS 7.0.6) and it was successful with some minor display issues; Displays <null> instead of email address when sender name is not present and receive date for all emails is sync time instead of the correct email received date. I'll create seperate bug reports for these later. It wasn't exactly straight forward building sope & sogo from git on CentOS but I was finally able to get both to build. Once I configure it and get it running I will test the above code. |
|
That's great, thanks! Fiddle with the code in SOGoMailObject+ActiveSync.m - activeSyncRepresentationInContext. You should have no problem enabling/disabling some properties until you find the culprit one. Don't forget to do a make/make install in SOGo/ActiveSync to deploy the bundle and restart sogod. Thanks! |
|
Guys, When Android sync of e-mails doesn't work, then it throws this into the Android's syslog: I/qtaguid ( 1707): Untagging socket 38 failed errno=-22 |
|
Thanks to casastorta, I took a closer look at the ReceivedDate format in the XML response. Using the change in SOGoMailObject+ActiveSync.m provided by Ludovic works except there is an extra Hyphen being added in [NSDate activeSyncRepresentationInContext:] in NSDate+ActiveSync.m This: (Notice the hyphen before T in the calendar format)
Should be changed to this:
I've made this change and compiled it and now I have android syncing email through activesync. Edit: attached small patch |
|
0001-Fix-date-format-returned-by-activeSyncRepresentation.patch (980 bytes)
From 144c2326ce0fbc6b0c9688b47b79fa2ac9853d43 Mon Sep 17 00:00:00 2001 From: David Rivera <vinyard@vnetgaming.net> Date: Tue, 4 Mar 2014 14:42:14 -0800 Subject: [PATCH] Fix date format returned by -activeSyncRepresentationInContext in NSDate+activeSync.m --- ActiveSync/NSDate+ActiveSync.m | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ActiveSync/NSDate+ActiveSync.m b/ActiveSync/NSDate+ActiveSync.m index ed3e98b..bd7035a 100644 --- a/ActiveSync/NSDate+ActiveSync.m +++ b/ActiveSync/NSDate+ActiveSync.m @@ -36,7 +36,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - (NSString *) activeSyncRepresentationInContext: (WOContext *) context { - return [self descriptionWithCalendarFormat: @"%Y-%m-%d-T%H:%M:%S.%FZ" timeZone: [NSTimeZone timeZoneWithName: @"GMT"] locale: nil]; + return [self descriptionWithCalendarFormat: @"%Y-%m-%dT%H:%M:%S.%FZ" timeZone: [NSTimeZone timeZoneWithName: @"GMT"] locale: nil]; } -- 1.7.12.4 |
|
Nice catch! https://github.com/inverse-inc/sogo/commit/158af711528027cd63a3c70708fab96eee41dd19 |
|
Date Modified | Username | Field | Change |
---|---|---|---|
2014-02-20 22:00 | vinyard | New Issue | |
2014-02-20 22:00 | vinyard | File Added: sogo.txt | |
2014-02-25 15:01 | Christian Mack | Relationship added | related to 0002589 |
2014-02-25 18:11 | ludovic | Note Added: 0006565 | |
2014-02-25 18:11 | ludovic | Status | new => closed |
2014-02-25 18:11 | ludovic | Assigned To | => ludovic |
2014-02-25 18:11 | ludovic | Resolution | open => won't fix |
2014-02-25 19:09 | vinyard | Note Added: 0006566 | |
2014-02-25 19:09 | vinyard | Status | closed => feedback |
2014-02-25 19:09 | vinyard | Resolution | won't fix => reopened |
2014-02-25 19:57 | ludovic | Note Added: 0006567 | |
2014-02-25 19:58 | vinyard | Note Added: 0006568 | |
2014-02-25 19:58 | vinyard | Status | feedback => assigned |
2014-02-25 20:00 | vinyard | Note Added: 0006569 | |
2014-02-25 20:00 | vinyard | Note Edited: 0006568 | |
2014-02-26 19:52 | vinyard | File Added: android_exchange.txt | |
2014-02-26 19:52 | vinyard | Note Added: 0006573 | |
2014-02-26 19:57 | ludovic | Note Added: 0006574 | |
2014-02-26 20:37 | vinyard | File Added: email-test.txt | |
2014-02-26 20:37 | vinyard | Note Added: 0006575 | |
2014-02-26 20:54 | ludovic | Note Added: 0006576 | |
2014-02-27 17:57 | vinyard | Note Added: 0006580 | |
2014-02-27 18:34 | ludovic | Note Added: 0006581 | |
2014-03-03 09:12 | casastorta | Note Added: 0006586 | |
2014-03-03 20:25 | vinyard | Note Added: 0006612 | |
2014-03-04 23:01 | vinyard | File Added: 0001-Fix-date-format-returned-by-activeSyncRepresentation.patch | |
2014-03-04 23:01 | vinyard | Note Edited: 0006612 | |
2014-03-05 14:08 | ludovic | Note Added: 0006634 | |
2014-03-05 14:08 | ludovic | Status | assigned => closed |
2014-03-05 14:08 | ludovic | Resolution | reopened => fixed |
2014-03-05 14:08 | ludovic | Fixed in Version | => 2.2.1 |