Save space by using bitfields in struct cookie
Hrvoje Niksic <[email protected]> Wed, 22 Jun 2005 03:44:51 +0200
| Newsgroups | gmane.comp.web.wget.patches |
|---|---|
| Message-ID | <[email protected]> |
struct cookie defines several booleans that can be converted to bitfields, saving some space, without changing any other code. 2005-06-22 Hrvoje Niksic <[email protected]> * cookies.c (struct cookie): Use 1-bit bitfields for booleans which makes the structure takes less space at no cost in complexity. Index: src/cookies.c =================================================================== --- src/cookies.c (revision 1738) +++ src/cookies.c (working copy) @@ -98,21 +98,21 @@ int port; /* port number */ char *path; /* path prefix of the cookie */ - int secure; /* whether cookie should be + unsigned discard_requested :1; /* whether cookie was created to + request discarding another + cookie. */ + + unsigned secure :1; /* whether cookie should be transmitted over non-https connections. */ - int domain_exact; /* whether DOMAIN must match as a + unsigned domain_exact :1; /* whether DOMAIN must match as a whole. */ - int permanent; /* whether the cookie should outlive + int permanent :1; /* whether the cookie should outlive the session. */ time_t expiry_time; /* time when the cookie expires, 0 means undetermined. */ - int discard_requested; /* whether cookie was created to - request discarding another - cookie. */ - char *attr; /* cookie attribute name */ char *value; /* cookie attribute value */