ObjFW  Check-in [db91b57393]

Overview
Comment:OFHTTPClient: Allow overriding Host header
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: db91b573930912c83ce206a1a3c07dd748320a8875f91d6c2e80bfc1c72ad5e8
User & Date: js on 2016-05-06 16:03:51
Other Links: manifest | tags
Context
2016-05-06
17:37
Add OFApplicationDelegate to TestsAppDelegate check-in: 77b6e1e439 user: js tags: trunk
16:03
OFHTTPClient: Allow overriding Host header check-in: db91b57393 user: js tags: trunk
14:09
OFZIPArchiveEntry: Add generalPurposeBitFlag check-in: 41e83e895c user: js tags: trunk
Changes

Modified src/OFHTTPClient.m from [c0960d74b1] to [d67222c86c].

378
379
380
381
382
383
384

385
386
387
388




389
390
391
392
393
394






395
396
397
398
399
400
401
378
379
380
381
382
383
384
385




386
387
388
389
390





391
392
393
394
395
396
397
398
399
400
401
402
403







+
-
-
-
-
+
+
+
+

-
-
-
-
-
+
+
+
+
+
+







		    of_http_request_method_to_string(method), [URL path],
		    [request protocolVersionString]];

	headers = [[[request headers] mutableCopy] autorelease];
	if (headers == nil)
		headers = [OFMutableDictionary dictionary];

	if ([headers objectForKey: @"Host"] == nil) {
	if (([scheme isEqual: @"http"] && [URL port] != 80) ||
	    ([scheme isEqual: @"https"] && [URL port] != 443)) {
		OFString *host = [OFString stringWithFormat:
		    @"%@:%d", [URL host], [URL port]];
		if (([scheme isEqual: @"http"] && [URL port] != 80) ||
		    ([scheme isEqual: @"https"] && [URL port] != 443)) {
			OFString *host = [OFString stringWithFormat:
			    @"%@:%d", [URL host], [URL port]];

		[headers setObject: host
			    forKey: @"Host"];
	} else
		[headers setObject: [URL host]
			    forKey: @"Host"];
			[headers setObject: host
				    forKey: @"Host"];
		} else
			[headers setObject: [URL host]
				    forKey: @"Host"];
	}

	user = [URL user];
	password = [URL password];

	if (([user length] > 0 || [password length] > 0) &&
	    [headers objectForKey: @"Authorization"] == nil) {
		OFDataArray *authorizationData = [OFDataArray dataArray];