Go to the documentation of this file.00001 #ifndef footxtlisthfoo
00002 #define footxtlisthfoo
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00027 #include <sys/types.h>
00028 #include <inttypes.h>
00029 #include <stdarg.h>
00030
00031 #include <avahi-common/cdecl.h>
00032 #include <avahi-common/gccmacro.h>
00033
00034 AVAHI_C_DECL_BEGIN
00035
00042 typedef struct AvahiStringList {
00043 struct AvahiStringList *next;
00044 size_t size;
00045 uint8_t text[1];
00046 } AvahiStringList;
00047
00053 AvahiStringList *avahi_string_list_new(const char *txt, ...) AVAHI_GCC_SENTINEL;
00054
00057 AvahiStringList *avahi_string_list_new_va(va_list va);
00063 AvahiStringList *avahi_string_list_new_from_array(const char **array, int length);
00064
00066 void avahi_string_list_free(AvahiStringList *l);
00067
00075 AvahiStringList *avahi_string_list_add(AvahiStringList *l, const char *text);
00076
00078 AvahiStringList *avahi_string_list_add_printf(AvahiStringList *l, const char *format, ...) AVAHI_GCC_PRINTF_ATTR23;
00079
00082 AvahiStringList *avahi_string_list_add_vprintf(AvahiStringList *l, const char *format, va_list va);
00087 AvahiStringList *avahi_string_list_add_arbitrary(AvahiStringList *l, const uint8_t *text, size_t size);
00088
00094 AvahiStringList*avahi_string_list_add_anonymous(AvahiStringList *l, size_t size);
00095
00099 AvahiStringList *avahi_string_list_add_many(AvahiStringList *r, ...) AVAHI_GCC_SENTINEL;
00100
00104 AvahiStringList *avahi_string_list_add_many_va(AvahiStringList *r, va_list va);
00114 char* avahi_string_list_to_string(AvahiStringList *l);
00115
00119 size_t avahi_string_list_serialize(AvahiStringList *l, void * data, size_t size);
00120
00122 int avahi_string_list_parse(const void *data, size_t size, AvahiStringList **ret);
00126 int avahi_string_list_equal(const AvahiStringList *a, const AvahiStringList *b);
00127
00129 AvahiStringList *avahi_string_list_copy(const AvahiStringList *l);
00130
00132 AvahiStringList* avahi_string_list_reverse(AvahiStringList *l);
00133
00135 unsigned avahi_string_list_length(const AvahiStringList *l);
00136
00142 AvahiStringList *avahi_string_list_get_next(AvahiStringList *l);
00143
00145 uint8_t *avahi_string_list_get_text(AvahiStringList *l);
00146
00148 size_t avahi_string_list_get_size(AvahiStringList *l);
00149
00155 AvahiStringList *avahi_string_list_find(AvahiStringList *l, const char *key);
00156
00162 int avahi_string_list_get_pair(AvahiStringList *l, char **key, char **value, size_t *size);
00163
00166 AvahiStringList *avahi_string_list_add_pair(AvahiStringList *l, const char *key, const char *value);
00167
00169 AvahiStringList *avahi_string_list_add_pair_arbitrary(AvahiStringList *l, const char *key, const uint8_t *value, size_t size);
00170
00176 uint32_t avahi_string_list_get_service_cookie(AvahiStringList *l);
00179 AVAHI_C_DECL_END
00180
00181 #endif
00182