stun 1.12.11devel
Loading...
Searching...
No Matches
stun_tag.h
Go to the documentation of this file.
1/*
2 * This file is part of the Sofia-SIP package
3 *
4 * Copyright (C) 2005-2006 Nokia Corporation.
5 *
6 * Contact: Pekka Pessi <pekka.pessi@nokia-email.address.hidden>
7 *
8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Lesser General Public License
10 * as published by the Free Software Foundation; either version 2.1 of
11 * the License, or (at your option) any later version.
12 *
13 * This library is distributed in the hope that it will be useful, but
14 * WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * Lesser General Public License for more details.
17 *
18 * You should have received a copy of the GNU Lesser General Public
19 * License along with this library; if not, write to the Free Software
20 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
21 * 02110-1301 USA
22 *
23 */
24
25#ifndef STUN_TAG_H
26#define STUN_TAG_H
36#ifndef SU_TAG_H
37#include <sofia-sip/su_tag.h>
38#endif
39#ifndef SU_TAG_IO_H
40#include <sofia-sip/su_tag_io.h>
41#endif
42
43SOFIA_BEGIN_DECLS
44
45/*****************************************
46 * Note: see documentation in stun_tag.c *
47 *****************************************/
48
49#define STUNTAG_ANY() stuntag_any, ((tag_value_t)0)
50SOFIAPUBVAR tag_typedef_t stuntag_any;
51
52#define STUNTAG_DOMAIN(x) stuntag_domain, tag_str_v(x)
53SOFIAPUBVAR tag_typedef_t stuntag_domain;
54#define STUNTAG_DOMAIN_REF(x) stuntag_domain_ref, tag_str_vr(&(x))
55SOFIAPUBVAR tag_typedef_t stuntag_domain_ref;
56
57#define STUNTAG_SERVER(x) stuntag_server, tag_str_v(x)
58SOFIAPUBVAR tag_typedef_t stuntag_server;
59#define STUNTAG_SERVER_REF(x) stuntag_server_ref, tag_str_vr(&(x))
60SOFIAPUBVAR tag_typedef_t stuntag_server_ref;
61
62#define STUNTAG_REQUIRE_INTEGRITY(x) stuntag_require_integrity, tag_int_v(x)
63SOFIAPUBVAR tag_typedef_t stuntag_require_integrity;
64#define STUNTAG_REQUIRE_INTEGRITY_REF(x) stuntag_require_integrity_ref, tag_int_vr(&(x))
65SOFIAPUBVAR tag_typedef_t stuntag_require_integrity_ref;
66
67#define STUNTAG_INTEGRITY(x) stuntag_integrity, tag_int_v(x)
68SOFIAPUBVAR tag_typedef_t stuntag_integrity;
69#define STUNTAG_INTEGRITY_REF(x) stuntag_integrity_ref, tag_int_vr(&(x))
70SOFIAPUBVAR tag_typedef_t stuntag_integrity_ref;
71
72#define STUNTAG_SOCKET(x) stuntag_socket, tag_socket_v(x)
73SOFIAPUBVAR tag_typedef_t stuntag_socket;
74#define STUNTAG_SOCKET_REF(x) stuntag_socket_ref, tag_socket_vr(&(x))
75SOFIAPUBVAR tag_typedef_t stuntag_socket_ref;
76
77#define STUNTAG_REGISTER_EVENTS(x) stuntag_register_events, tag_int_v(x)
78SOFIAPUBVAR tag_typedef_t stuntag_register_events;
79#define STUNTAG_REGISTER_EVENTS_REF(x) stuntag_register_events_ref, tag_int_vr(&(x))
80SOFIAPUBVAR tag_typedef_t stuntag_register_events_ref;
81
82#define STUNTAG_ACTION(x) stuntag_action, tag_int_v(x)
83SOFIAPUBVAR tag_typedef_t stuntag_action;
84#define STUNTAG_ACTION_REF(x) stuntag_action_ref, tag_int_vr(&(x))
85SOFIAPUBVAR tag_typedef_t stuntag_action_ref;
86
87#define STUNTAG_CHANGE_IP(x) stuntag_change_ip, tag_bool_v(x)
88SOFIAPUBVAR tag_typedef_t stuntag_change_ip;
89#define STUNTAG_CHANGE_IP_REF(x) stuntag_change_ip_ref, tag_bool_vr(&(x))
90SOFIAPUBVAR tag_typedef_t stuntag_change_ip_ref;
91
92#define STUNTAG_CHANGE_PORT(x) stuntag_change_port, tag_bool_v(x)
93SOFIAPUBVAR tag_typedef_t stuntag_change_port;
94#define STUNTAG_CHANGE_PORT_REF(x) stuntag_change_port_ref, tag_bool_vr(&(x))
95SOFIAPUBVAR tag_typedef_t stuntag_change_port_ref;
96
97#define STUNTAG_TIMEOUT(x) stuntag_timeout, tag_uint_v((x))
98SOFIAPUBVAR tag_typedef_t stuntag_timeout;
99#define STUNTAG_TIMEOUT_REF(x) stuntag_timeout_ref, tag_uint_vr(&(x))
100SOFIAPUBVAR tag_typedef_t stuntag_timeout_ref;
101
102
103SOFIA_END_DECLS
104
105#endif /* STUN_TAG_H */
#define SOFIAPUBVAR
struct tag_type_s const tag_typedef_t[1]

Sofia-SIP 1.12.11devel - Copyright (C) 2006 Nokia Corporation. All rights reserved. Licensed under the terms of the GNU Lesser General Public License.