doc fixups
[platform/upstream/libsoup.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 #define SOUP_COOKIE_MAX_AGE_ONE_HOUR (60 * 60)
24 #define SOUP_COOKIE_MAX_AGE_ONE_DAY  (SOUP_COOKIE_MAX_AGE_ONE_HOUR * 24)
25 #define SOUP_COOKIE_MAX_AGE_ONE_WEEK (SOUP_COOKIE_MAX_AGE_ONE_DAY * 7)
26 #define SOUP_COOKIE_MAX_AGE_ONE_YEAR (SOUP_COOKIE_MAX_AGE_ONE_DAY * 365.2422)
27
28 SoupCookie *soup_cookie_new                     (const char  *name,
29                                                  const char  *value,
30                                                  const char  *domain,
31                                                  const char  *path,
32                                                  int          max_age);
33 SoupCookie *soup_cookie_parse                   (const char  *header,
34                                                  SoupURI     *origin);
35
36 void        soup_cookie_set_name                (SoupCookie  *cookie,
37                                                  const char  *name);
38 void        soup_cookie_set_value               (SoupCookie  *cookie,
39                                                  const char  *value);
40 void        soup_cookie_set_domain              (SoupCookie  *cookie,
41                                                  const char  *domain);
42 void        soup_cookie_set_path                (SoupCookie  *cookie,
43                                                  const char  *path);
44 void        soup_cookie_set_max_age             (SoupCookie  *cookie,
45                                                  int          max_age);
46 void        soup_cookie_set_expires             (SoupCookie  *cookie,
47                                                  SoupDate    *expires);
48 void        soup_cookie_set_secure              (SoupCookie  *cookie,
49                                                  gboolean     secure);
50 void        soup_cookie_set_http_only           (SoupCookie  *cookie,
51                                                  gboolean     http_only);
52
53 char       *soup_cookie_to_set_cookie_header    (SoupCookie  *cookie);
54 char       *soup_cookie_to_cookie_header        (SoupCookie  *cookie);
55
56 void        soup_cookie_free                    (SoupCookie  *cookie);
57
58 GSList     *soup_cookies_from_response          (SoupMessage *msg);
59 GSList     *soup_cookies_from_request           (SoupMessage *msg);
60
61 void        soup_cookies_to_response            (GSList      *cookies,
62                                                  SoupMessage *msg);
63 void        soup_cookies_to_request             (GSList      *cookies,
64                                                  SoupMessage *msg);
65
66 void        soup_cookies_free                   (GSList      *cookies);
67
68 char       *soup_cookies_to_cookie_header       (GSList      *cookies);
69
70 gboolean    soup_cookie_applies_to_uri          (SoupCookie  *cookie,
71                                                  SoupURI     *uri);
72
73 G_END_DECLS
74
75 #endif /* SOUP_COOKIE_H */