ObjFW  Diff

Differences From Artifact [45d455ab28]:

To Artifact [dd9d50afa9]:


24
25
26
27
28
29
30
31

32
33
34

35
36
37
38
39

40
41
42
43

44
45

46
47
48
49
50
51

52
53

54
55
56
57
58
59
60
24
25
26
27
28
29
30

31
32
33

34
35
36
37
38

39
40
41
42

43
44

45
46
47
48
49
50

51
52

53
54
55
56
57
58
59
60







-
+


-
+




-
+



-
+

-
+





-
+

-
+







#import "OFURL.h"

#import "OFInvalidFormatException.h"

static void
handleAttribute(OFHTTPCookie *cookie, OFString *name, OFString *value)
{
	OFString *lowerName = [name lowercaseString];
	OFString *lowercaseName = [name lowercaseString];

	if (value != nil) {
		if ([lowerName isEqual: @"expires"]) {
		if ([lowercaseName isEqual: @"expires"]) {
			OFDate *date = [OFDate
			    dateWithDateString: value
					format: @"%a, %d %b %Y %H:%M:%S %z"];
			[cookie setExpires: date];
		} else if ([lowerName isEqual: @"max-age"]) {
		} else if ([lowercaseName isEqual: @"max-age"]) {
			OFDate *date = [OFDate dateWithTimeIntervalSinceNow:
			    [value decimalValue]];
			[cookie setExpires: date];
		} else if ([lowerName isEqual: @"domain"])
		} else if ([lowercaseName isEqual: @"domain"])
			[cookie setDomain: value];
		else if ([lowerName isEqual: @"path"])
		else if ([lowercaseName isEqual: @"path"])
			[cookie setPath: value];
		else
			[[cookie extensions] addObject:
			    [OFString stringWithFormat: @"%@=%@", name, value]];
	} else {
		if ([lowerName isEqual: @"secure"])
		if ([lowercaseName isEqual: @"secure"])
			[cookie setSecure: true];
		else if ([lowerName isEqual: @"httponly"])
		else if ([lowercaseName isEqual: @"httponly"])
			[cookie setHTTPOnly: true];
		else if ([name length] > 0)
			[[cookie extensions] addObject: name];
	}
}

@implementation OFHTTPCookie