Reapplying patch to disable attempts to use gtk-doc
[profile/ivi/libsoup2.4.git] / libsoup / soup-cookie.h
1 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
2 /* 
3  * Copyright 2007, 2008 Red Hat, Inc.
4  */
5
6 #ifndef SOUP_COOKIE_H
7 #define SOUP_COOKIE_H 1
8
9 #include <libsoup/soup-types.h>
10
11 G_BEGIN_DECLS
12
13 struct _SoupCookie {
14         char     *name;
15         char     *value;
16         char     *domain;
17         char     *path;
18         SoupDate *expires;
19         gboolean  secure;
20         gboolean  http_only;
21 };
22
23 GType soup_cookie_get_type (void);
24 #define SOUP_TYPE_COOKIE (soup_cookie_get_type())
25
26 #define SOUP_COOKIE_MAX_AGE_ONE_HOUR (60 * 60)
27 #define SOUP_COOKIE_MAX_AGE_ONE_DAY  (SOUP_COOKIE_MAX_AGE_ONE_HOUR * 24)
28 #define SOUP_COOKIE_MAX_AGE_ONE_WEEK (SOUP_COOKIE_MAX_AGE_ONE_DAY * 7)
29 #define SOUP_COOKIE_MAX_AGE_ONE_YEAR (SOUP_COOKIE_MAX_AGE_ONE_DAY * 365.2422)
30
31 SoupCookie *soup_cookie_new                     (const char  *name,
32                                                  const char  *value,
33                                                  const char  *domain,
34                                                  const char  *path,
35                                                  int          max_age);
36 SoupCookie *soup_cookie_parse                   (const char  *header,
37                                                  SoupURI     *origin);
38 SoupCookie *soup_cookie_copy                    (SoupCookie  *cookie);
39
40 const char *soup_cookie_get_name                (SoupCookie  *cookie);
41 void        soup_cookie_set_name                (SoupCookie  *cookie,
42                                                  const char  *name);
43 const char *soup_cookie_get_value               (SoupCookie  *cookie);
44 void        soup_cookie_set_value               (SoupCookie  *cookie,
45                                                  const char  *value);
46 const char *soup_cookie_get_domain              (SoupCookie  *cookie);
47 void        soup_cookie_set_domain              (SoupCookie  *cookie,
48                                                  const char  *domain);
49 const char *soup_cookie_get_path                (SoupCookie  *cookie);
50 void        soup_cookie_set_path                (SoupCookie  *cookie,
51                                                  const char  *path);
52 void        soup_cookie_set_max_age             (SoupCookie  *cookie,
53                                                  int          max_age);
54 SoupDate   *soup_cookie_get_expires             (SoupCookie  *cookie);
55 void        soup_cookie_set_expires             (SoupCookie  *cookie,
56                                                  SoupDate    *expires);
57 gboolean    soup_cookie_get_secure              (SoupCookie  *cookie);
58 void        soup_cookie_set_secure              (SoupCookie  *cookie,
59                                                  gboolean     secure);
60 gboolean    soup_cookie_get_http_only           (SoupCookie  *cookie);
61 void        soup_cookie_set_http_only           (SoupCookie  *cookie,
62                                                  gboolean     http_only);
63
64 char       *soup_cookie_to_set_cookie_header    (SoupCookie  *cookie);
65 char       *soup_cookie_to_cookie_header        (SoupCookie  *cookie);
66
67 gboolean    soup_cookie_applies_to_uri          (SoupCookie  *cookie,
68                                                  SoupURI     *uri);
69 gboolean    soup_cookie_equal                   (SoupCookie  *cookie1,
70                                                  SoupCookie  *cookie2);
71
72 void        soup_cookie_free                    (SoupCookie  *cookie);
73
74 GSList     *soup_cookies_from_response          (SoupMessage *msg);
75 GSList     *soup_cookies_from_request           (SoupMessage *msg);
76
77 void        soup_cookies_to_response            (GSList      *cookies,
78                                                  SoupMessage *msg);
79 void        soup_cookies_to_request             (GSList      *cookies,
80                                                  SoupMessage *msg);
81
82 void        soup_cookies_free                   (GSList      *cookies);
83
84 char       *soup_cookies_to_cookie_header       (GSList      *cookies);
85
86 gboolean    soup_cookie_domain_matches          (SoupCookie  *cookie,
87                                                  const char  *host);
88
89 G_END_DECLS
90
91 #endif /* SOUP_COOKIE_H */