nth
1.13.18
Toggle main menu visibility
Loading...
Searching...
No Matches
nth_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 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 NTH_TAG_H
27
#define NTH_TAG_H
28
36
37
#ifndef SU_TAG_H
38
#include <
sofia-sip/su_tag.h
>
39
#endif
40
41
#ifndef URL_TAG_H
42
#include <sofia-sip/url_tag.h>
43
#endif
44
45
#ifndef HTTP_TAG_H
46
#include <
sofia-sip/http_tag.h
>
47
#endif
48
49
SOFIA_BEGIN_DECLS
50
52
NTH_DLL
extern
tagi_t
nth_client_tags
[];
53
55
#define NTHTAG_ANY() nthtag_any, ((tag_value_t)0)
56
NTH_DLL
extern
tag_typedef_t
nthtag_any;
57
58
/* Common tags */
59
60
NTH_DLL
extern
tag_typedef_t
nthtag_mclass;
62
#define NTHTAG_MCLASS(x) nthtag_mclass, tag_cptr_v((x))
63
64
NTH_DLL
extern
tag_typedef_t
nthtag_mclass_ref;
65
#define NTHTAG_MCLASS_REF(x) nthtag_mclass_ref, tag_cptr_vr(&(x), (x))
66
67
NTH_DLL
extern
tag_typedef_t
nthtag_mflags;
69
#define NTHTAG_MFLAGS(x) nthtag_mflags, tag_int_v((x))
70
71
NTH_DLL
extern
tag_typedef_t
nthtag_mflags_ref;
72
#define NTHTAG_MFLAGS_REF(x) nthtag_mflags_ref, tag_int_vr(&(x))
73
74
NTH_DLL
extern
tag_typedef_t
nthtag_streaming;
76
#define NTHTAG_STREAMING(x) nthtag_streaming, tag_bool_v((x))
77
78
NTH_DLL
extern
tag_typedef_t
nthtag_streaming_ref;
79
#define NTHTAG_STREAMING_REF(x) nthtag_streaming_ref, tag_bool_vr(&(x))
80
81
/* Client-only tags */
82
83
NTH_DLL
extern
tag_typedef_t
nthtag_proxy;
85
#define NTHTAG_PROXY(x) nthtag_proxy, urltag_url_v((x))
86
87
NTH_DLL
extern
tag_typedef_t
nthtag_proxy_ref;
88
#define NTHTAG_PROXY_REF(x) nthtag_proxy_ref, urltag_url_vr(&(x))
89
90
NTH_DLL
extern
tag_typedef_t
nthtag_expires;
92
#define NTHTAG_EXPIRES(x) nthtag_expires, tag_uint_v((x))
93
94
NTH_DLL
extern
tag_typedef_t
nthtag_expires_ref;
95
#define NTHTAG_EXPIRES_REF(x) nthtag_expires_ref, tag_uint_vr(&(x))
96
97
NTH_DLL
extern
tag_typedef_t
nthtag_error_msg;
99
#define NTHTAG_ERROR_MSG(x) nthtag_error_msg, tag_bool_v((x))
100
101
NTH_DLL
extern
tag_typedef_t
nthtag_error_msg_ref;
102
#define NTHTAG_ERROR_MSG_REF(x) nthtag_error_msg_ref, tag_bool_vr(&(x))
103
104
#if SU_INLINE_TAG_CAST
105
struct
nth_client_s;
106
su_inline
tag_value_t
nthtag_template_v(
struct
nth_client_s
const
*v)
107
{
return
(
tag_value_t
)v; }
108
su_inline
tag_value_t
nthtag_template_vr(
struct
nth_client_s
const
**vp)
109
{
return
(
tag_value_t
)vp;}
110
#else
111
#define nthtag_template_v(v) ((tag_value_t)(v))
112
#define nthtag_template_vr(vp) ((tag_value_t)(vp))
113
#endif
114
115
NTH_DLL
extern
tag_typedef_t
nthtag_template;
117
#define NTHTAG_TEMPLATE(x) nthtag_template, nthtag_template_v((x))
118
119
NTH_DLL
extern
tag_typedef_t
nthtag_template_ref;
120
#define NTHTAG_TEMPLATE_REF(x) nthtag_template_ref, nthtag_template_vr(&(x))
121
122
#if SU_INLINE_TAG_CAST
123
su_inline
tag_value_t
nthtag_message_v(
struct
msg_s
*v)
124
{
return
(
tag_value_t
)v; }
125
su_inline
tag_value_t
nthtag_message_vr(
struct
msg_s
**vp)
126
{
return
(
tag_value_t
)vp; }
127
#else
128
#define nthtag_message_v(v) ((tag_value_t)(v))
129
#define nthtag_message_vr(vp) ((tag_value_t)(vp))
130
#endif
131
132
NTH_DLL
extern
tag_typedef_t
nthtag_message;
134
#define NTHTAG_MESSAGE(x) nthtag_message, nthtag_message_v((x))
135
136
NTH_DLL
extern
tag_typedef_t
nthtag_message_ref;
137
#define NTHTAG_MESSAGE_REF(x) nthtag_message_ref, nthtag_message_vr(&(x))
138
139
#if SU_HAVE_INLINE
140
struct
auth_client_s;
141
su_inline
tag_value_t
nthtag_authentication_v(
struct
auth_client_s **v) {
return
(
tag_value_t
)v; }
142
su_inline
tag_value_t
nthtag_authentication_vr(
struct
auth_client_s ***vp) {
return
(
tag_value_t
)vp;}
143
#else
144
#define nthtag_authentication_v(v) ((tag_value_t)(v))
145
#define nthtag_authentication_vr(vp) ((tag_value_t)(vp))
146
#endif
147
148
NTH_DLL
extern
tag_typedef_t
nthtag_authentication;
150
#define NTHTAG_AUTHENTICATION(x) \
151
nthtag_authentication, nthtag_authentication_v((x))
152
153
NTH_DLL
extern
tag_typedef_t
nthtag_authentication_ref;
154
#define NTHTAG_AUTHENTICATION_REF(x) \
155
nthtag_authentication_ref, nthtag_authentication_vr(&(x))
156
157
NTH_DLL
extern
tag_typedef_t
nthtag_max_retry_after;
159
#define NTHTAG_MAX_RETRY_AFTER(x) nthtag_max_retry_after, tag_int_v((x))
160
161
NTH_DLL
extern
tag_typedef_t
nthtag_max_retry_after_ref;
162
#define NTHTAG_MAX_RETRY_AFTER_REF(x) \
163
nthtag_max_retry_after_ref, tag_int_vr(&(x))
164
165
/* Server-side tags */
166
167
NTH_DLL
extern
tag_typedef_t
nthtag_root;
169
#define NTHTAG_ROOT(x) nthtag_root, tag_ptr_v((x))
170
171
NTH_DLL
extern
tag_typedef_t
nthtag_root_ref;
172
#define NTHTAG_ROOT_REF(x) nthtag_root_ref, tag_ptr_vr(&(x), (x))
173
174
NTH_DLL
extern
tag_typedef_t
nthtag_strict_host;
176
#define NTHTAG_STRICT_HOST(x) nthtag_strict_host, tag_bool_v((x))
177
178
NTH_DLL
extern
tag_typedef_t
nthtag_strict_host_ref;
179
#define NTHTAG_STRICT_HOST_REF(x) nthtag_strict_host_ref, tag_bool_vr(&(x))
180
181
NTH_DLL
extern
tag_typedef_t
nthtag_auth_module;
183
#define NTHTAG_AUTH_MODULE(x) nthtag_auth_module, tag_ptr_v((x))
184
185
NTH_DLL
extern
tag_typedef_t
nthtag_auth_module_ref;
186
#define NTHTAG_AUTH_MODULE_REF(x) nthtag_auth_module_ref, tag_ptr_vr(&(x), (x))
187
188
SOFIA_END_DECLS
189
190
#endif
/* !defined NTH_TAG_H */
http_tag.h
nth_client_tags
tagi_t nth_client_tags[]
List of all nth tags.
Definition
nth_client.c:213
msg_s
tagi_t
su_inline
#define su_inline
su_tag.h
tag_typedef_t
struct tag_type_s const tag_typedef_t[1]
tag_value_t
intptr_t tag_value_t
Sofia-SIP 1.13.18 - Copyright (C) 2006 Nokia Corporation. All rights reserved. Licensed under the terms of the GNU Lesser General Public License.