{ "id": "82186", "key": "TIMOB-5933", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false }, "project": { "id": "10153", "key": "TIMOB", "name": "Titanium SDK/CLI", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2017-07-10T22:38:19.000+0000", "created": "2011-11-01T09:49:03.000+0000", "priority": { "name": "Low", "id": "4" }, "labels": [ "api", "tbs-1.9.0" ], "versions": [ { "id": "11971", "description": "iOS5 and select Android fixes", "name": "Release 1.7.3", "archived": true, "released": true, "releaseDate": "2011-10-18" }, { "id": "12570", "name": "Release 1.7.5", "archived": true, "released": true, "releaseDate": "2011-11-02" }, { "id": "11331", "description": "", "name": "Release 1.8.0", "archived": true, "released": true, "releaseDate": "2011-10-31" } ], "issuelinks": [ { "id": "13983", "type": { "id": "10020", "name": "Depends", "inward": "is dependent of", "outward": "depends on" }, "inwardIssue": { "id": "83099", "key": "TIMOB-6311", "fields": { "summary": "iOS: Support TLS versioning on XHR client", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "priority": { "name": "High", "id": "2" }, "issuetype": { "id": "2", "description": "A new feature of the product, which has yet to be developed.", "name": "New Feature", "subtask": false } } } }, { "id": "13724", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "outwardIssue": { "id": "81118", "key": "TIMOB-5435", "fields": { "summary": "HTTPClient: add properties username, password and domain", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "priority": { "name": "High", "id": "2" }, "issuetype": { "id": "2", "description": "A new feature of the product, which has yet to be developed.", "name": "New Feature", "subtask": false } } } }, { "id": "13739", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "outwardIssue": { "id": "82271", "key": "TIMOB-5973", "fields": { "summary": "ASIHTTP no longer under active development; need to investigate replacement", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "priority": { "name": "Medium", "id": "3" }, "issuetype": { "id": "2", "description": "A new feature of the product, which has yet to be developed.", "name": "New Feature", "subtask": false } } } } ], "assignee": { "name": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2017-07-10T22:38:19.000+0000", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "components": [ { "id": "10206", "name": "iOS", "description": "iOS Platform" } ], "description": "h3. Problem\r\n \r\nError of authentication using TiNetworkHTTPClientProxy.m in http client under iOS 5\r\n \r\nh3. Reproducible steps:\r\n \r\n1. Locate the TiNetworkHTTPClientProxy.m file in the next path: \r\n\r\n/ Users/your_username/Library/Application Support/Titanium/mobilesdk/osx/ 1.8.0.v20111028154620/iphone/Classes/\r\n\r\n2. Locate, and update the code of the file.\r\n-(void)open:(id)args method implementation and add right after request initialization string (1) authorization strings (2 and 3), see below: 
 \r\n \r\nrequest = [[ASIFormDataRequest requestWithURL:url] retain]; (1)\r\n[request setUsername:@\"xxxxxx\"]; (2)\r\n[request setPassword:@\"xxxxxx\"]; (3)\r\n\r\nPlease go to the ticket(APP-915216) to see the setUsername, and setPassword. \r\n\r\n3. Run the code below.\r\n \r\nh3. Expected behavior:\r\nCustomer wants to keep the same behavior of iOS 4.3 in the 5 iOS SDK version.\r\nh3. Sample code:\r\n \r\n{code}\r\nvar miwin = Ti.UI.createWindow({\r\n backgroundColor : 'white'\r\n});\r\n \r\nvar xhr = Titanium.Network.createHTTPClient()\r\nxhr.timeout = 30000;\r\nxhr.open('GET', 'https://ios.plainscapital.com/_vti_bin/listdata.svc/Locations?$select=Id,Title,Latitude,Longitude,City,StateProvince');\r\nxhr.onload = function() {\r\n alert('succeed');\r\n};\r\nxhr.onerror = function(e) {\r\n alert(e.error);\r\n};\r\nxhr.tlsVersion = Ti.Network.TLS_VERSION_1_0;\r\nxhr.send();\r\n \r\nmiwin.open();\r\n\r\n{code}\r\n\r\nh3.Additional info:\r\nThe application does not create any logs in the next path:\r\nLibrary/Logs/CrashReporter/\r\nh3. Associated HD Ticket:\r\nAPP-915216", "attachment": [ { "id": "23978", "filename": "1.8.0.v20111028154620 with iOS 4.3 SDK.png", "author": { "name": "framirez", "key": "framirez", "displayName": "Francisco Antonio Duran Ramirez", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-11-01T09:51:58.000+0000", "size": 209220, "mimeType": "image/png" }, { "id": "23977", "filename": "1.8.0.v20111028154620 with iOS 5 SDK.png", "author": { "name": "framirez", "key": "framirez", "displayName": "Francisco Antonio Duran Ramirez", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-11-01T09:51:58.000+0000", "size": 215782, "mimeType": "image/png" } ], "flagged": false, "summary": "iOS: Error of authentication using TiNetworkHTTPClientProxy.m in http client under iOS 5", "creator": { "name": "framirez", "key": "framirez", "displayName": "Francisco Antonio Duran Ramirez", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "framirez", "key": "framirez", "displayName": "Francisco Antonio Duran Ramirez", "active": true, "timeZone": "America/Los_Angeles" }, "environment": "iPad 2 Version : 5.0\r\nTitanium Studio, build: 1.0.6.201110251616\r\nTitanium SDK: 1.7.3, 1.7.5.v20111031161854 & 1.8.0.v20111028154620", "comment": { "comments": [ { "id": "171093", "author": { "name": "stephentramer", "key": "stephentramer", "displayName": "Stephen Tramer", "active": true, "timeZone": "America/Los_Angeles" }, "body": "This is effectively the iOS-specific version of TIMOB-5435 (and may require an update to the ASI library as well). We need to provide API access to username/password (and domain) properties of ASI. This should provide the requested functionality.", "updateAuthor": { "name": "stephentramer", "key": "stephentramer", "displayName": "Stephen Tramer", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-11-01T14:20:20.000+0000", "updated": "2011-11-01T14:23:17.000+0000" }, { "id": "171109", "author": { "name": "stephentramer", "key": "stephentramer", "displayName": "Stephen Tramer", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Quick note; this bug appears to be due to the fact that iOS 5 no longer fires (kCFStreamEventEndEncountered) events to the read callback after an error occurs, as it previously did. This prevents the system from picking up the (401) error result and responding to the challenge appropriately. It could be a behavior change based on unrecognized certificate rejection.", "updateAuthor": { "name": "stephentramer", "key": "stephentramer", "displayName": "Stephen Tramer", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-11-01T15:33:59.000+0000", "updated": "2011-11-01T15:47:22.000+0000" }, { "id": "171211", "author": { "name": "stephentramer", "key": "stephentramer", "displayName": "Stephen Tramer", "active": true, "timeZone": "America/Los_Angeles" }, "body": "It turns out that this is an error with the 3rd party library we're using, which currently has a bug report revolving around this issue:\r\n\r\nhttps://github.com/pokeb/asi-http-request/issues/273\r\n\r\nUnfortunately, we are blocked on them being able to resolve this problem. Information about, and verification of, the relevant system serving the certificate may be necessary to provide further information to the 3rd party so that they can solve the issue faster. It could also be the case that there is a configuration error with the SSL certificate or serving process which is preventing the handshake from occurring correctly. We cannot resolve any configuration issues ourselves - only pass on information to assist in the resolution of bugs where possible.\r\n\r\n----\r\n\r\nWe will still be able to offer new API points for username/password/domain as per TIMOB-5435, removing the need for custom modifications, but are waiting on internal testing infrastructure to verify the changes.", "updateAuthor": { "name": "stephentramer", "key": "stephentramer", "displayName": "Stephen Tramer", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-11-02T12:11:40.000+0000", "updated": "2011-11-02T12:21:44.000+0000" }, { "id": "171317", "author": { "name": "stephentramer", "key": "stephentramer", "displayName": "Stephen Tramer", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Ticket TIMOB-5973 indicates ASI is no longer under active development, meaning it needs to be replaced and we should not expect any fixes to come through that pipeline. We will be required to implement them ourselves.", "updateAuthor": { "name": "stephentramer", "key": "stephentramer", "displayName": "Stephen Tramer", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-11-03T07:48:38.000+0000", "updated": "2011-11-03T07:48:38.000+0000" }, { "id": "174035", "author": { "name": "stephentramer", "key": "stephentramer", "displayName": "Stephen Tramer", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Please see this technical note; this is likely a server configuration problem.\r\n\r\nhttp://developer.apple.com/library/ios/#technotes/tn2287/_index.html#//apple_ref/doc/uid/DTS40011309", "updateAuthor": { "name": "stephentramer", "key": "stephentramer", "displayName": "Stephen Tramer", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-11-28T10:02:44.000+0000", "updated": "2011-11-28T10:02:44.000+0000" }, { "id": "174039", "author": { "name": "stephentramer", "key": "stephentramer", "displayName": "Stephen Tramer", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Probably SSL versioning support as above.", "updateAuthor": { "name": "stephentramer", "key": "stephentramer", "displayName": "Stephen Tramer", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-11-28T10:19:31.000+0000", "updated": "2011-11-28T10:19:31.000+0000" }, { "id": "193789", "author": { "name": "stephentramer", "key": "stephentramer", "displayName": "Stephen Tramer", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Requires a retest with sslVersion set.", "updateAuthor": { "name": "stephentramer", "key": "stephentramer", "displayName": "Stephen Tramer", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-05-04T13:50:14.000+0000", "updated": "2012-05-04T13:50:14.000+0000" } ], "maxResults": 15, "total": 15, "startAt": 0 } } }