]> code.delx.au - pulseaudio/blob - src/modules/rtp/headerlist.h
Add a small lib to interpret and produce headers as used in http style requests.
[pulseaudio] / src / modules / rtp / headerlist.h
1 #ifndef foopulseheaderlisthfoo
2 #define foopulseheaderlisthfoo
3
4 /* $Id$ */
5
6 /***
7 This file is part of PulseAudio.
8
9 Copyright 2008 Colin Guthrie
10 Copyright 2007 Lennart Poettering
11
12 PulseAudio is free software; you can redistribute it and/or modify
13 it under the terms of the GNU Lesser General Public License as
14 published by the Free Software Foundation; either version 2.1 of the
15 License, or (at your option) any later version.
16
17 PulseAudio is distributed in the hope that it will be useful, but
18 WITHOUT ANY WARRANTY; without even the implied warranty of
19 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20 Lesser General Public License for more details.
21
22 You should have received a copy of the GNU Lesser General Public
23 License along with PulseAudio; if not, write to the Free Software
24 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
25 USA.
26 ***/
27
28 #include <pulsecore/macro.h>
29
30 typedef struct pa_headerlist pa_headerlist;
31
32 pa_headerlist* pa_headerlist_new(void);
33 void pa_headerlist_free(pa_headerlist* p);
34
35 int pa_headerlist_puts(pa_headerlist *p, const char *key, const char *value);
36 int pa_headerlist_putsappend(pa_headerlist *p, const char *key, const char *value);
37
38 const char *pa_headerlist_gets(pa_headerlist *p, const char *key);
39
40 int pa_headerlist_remove(pa_headerlist *p, const char *key);
41
42 const char *pa_headerlist_iterate(pa_headerlist *p, void **state);
43
44 char *pa_headerlist_to_string(pa_headerlist *p);
45
46 int pa_headerlist_contains(pa_headerlist *p, const char *key);
47
48 #endif