http 1.12.11devel
Loading...
Searching...
No Matches
http_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 HTTP_TAG_H
27#define HTTP_TAG_H
28
38#ifndef SU_TAG_H
39#include <sofia-sip/su_tag.h>
40#endif
41#ifndef SU_TAG_CLASS_H
43#endif
44#ifndef SU_TAG_CLASS_H
46#endif
47
48#ifndef HTTP_H
49#include <sofia-sip/http.h>
50#endif
51
52SOFIA_BEGIN_DECLS
53
54#define HTTPTAG(c, x) httptag_##c, httptag_##c##_v(x)
55#define HTTPTAG_REF(c, x) httptag_##c##_ref, httptag_##c##_vr(&(x))
56#define HTTPTAG_STR(c, s) httptag_##c##_str, tag_str_v(s)
57#define HTTPTAG_STR_REF(c, s) httptag_##c##_str_ref, tag_str_vr(&(s))
58
60#define HTTPTAG_P(tt) ((tt)->tt_class == httphdrtag_class)
62#define HTTPTAG_STR_P(tt) ((tt)->tt_class == httpstrtag_class)
64#define HTTPTAG_HTTP_P(tt) ((tt)->tt_class == httpmsgtag_class)
65
67#define HTTPTAGI_P(t) (HTTPTAG_P((t)->t_tag))
69#define HTTPTAGI_STR_P(t) (HTTPTAG_STR_P((t)->t_tag))
71#define HTTPTAGI_HTTP_P(t) (HTTPTAG_HTTP_P((t)->t_tag))
72
73SOFIAPUBVAR tag_class_t httphdrtag_class[1];
74SOFIAPUBVAR tag_class_t httpstrtag_class[1];
75SOFIAPUBVAR tag_class_t httpmsgtag_class[1];
76
78#define HTTPTAG_ANY() httptag_any, ((tag_value_t)0)
79SOFIAPUBVAR tag_typedef_t httptag_any;
80
90#define HTTPTAG_HTTP(x) httptag_http, httptag_http_v((x))
91
94
95#define HTTPTAG_HTTP_REF(x) httptag_http_ref, httptag_http_vr(&(x))
96SOFIAPUBVAR tag_typedef_t httptag_http_ref;
97
98#if SU_INLINE_TAG_CAST
100tag_value_t httptag_http_v(http_t const *v) { return (tag_value_t)v; }
102tag_value_t httptag_http_vr(http_t const **vp) { return (tag_value_t)vp; }
103#else
104#define httptag_http_v(v) (tag_value_t)(v)
105#define httptag_http_vr(vp) (tag_value_t)(vp)
106#endif
107
115#define HTTPTAG_VERSION(x) httptag_http, (tag_value_t)x
116
117extern tag_typedef_t httptag_version;
118
120#define HTTPTAG_VERSION_REF(x) httptag_http_ref, (tag_value_t)&(x)
121
122extern tag_typedef_t httptag_version_ref;
123
138#define HTTPTAG_HEADER(x) httptag_header, httptag_header_v((x))
139
142
143#define HTTPTAG_HEADER_REF(x) httptag_header_ref, httptag_header_vr(&(x))
144SOFIAPUBVAR tag_typedef_t httptag_header_ref;
145
146#if SU_INLINE_TAG_CAST
148httptag_header_v(http_header_t const *v)
149{ return (tag_value_t)v; }
151httptag_header_vr(http_header_t const **vp)
152{ return (tag_value_t)vp; }
153#else
154#define httptag_header_v(v) (tag_value_t)(v)
155#define httptag_header_vr(vp) (tag_value_t)(vp)
156#endif
157
167#define HTTPTAG_HEADER_STR(x) httptag_header_str, tag_str_v((x))
168
171
172#define HTTPTAG_HEADER_STR_REF(x) httptag_header_str_ref, tag_str_vr(&(x))
173SOFIAPUBVAR tag_typedef_t httptag_header_str_ref;
174
175
187#define HTTPTAG_REQUEST(x) HTTPTAG(request, x)
188
189SOFIAPUBVAR tag_typedef_t httptag_request;
190
206#define HTTPTAG_REQUEST_STR(s) HTTPTAG_STR(request, s)
207
208SOFIAPUBVAR tag_typedef_t httptag_request_str;
209
210#define HTTPTAG_REQUEST_REF(x) HTTPTAG_REF(request, x)
211SOFIAPUBVAR tag_typedef_t httptag_request_ref;
212
213#define HTTPTAG_REQUEST_STR_REF(x) HTTPTAG_STR_REF(request, x)
214SOFIAPUBVAR tag_typedef_t httptag_request_str_ref;
215
216#if SU_INLINE_TAG_CAST
218httptag_request_v(http_request_t const *v)
219{ return (tag_value_t)v; }
221httptag_request_vr(http_request_t const **vp)
222{ return (tag_value_t)vp; }
223#else
224#define httptag_request_v(v) (tag_value_t)(v)
225#define httptag_request_vr(vp) (tag_value_t)(vp)
226#endif
227
239#define HTTPTAG_STATUS(x) HTTPTAG(status, x)
240
241SOFIAPUBVAR tag_typedef_t httptag_status;
242
258#define HTTPTAG_STATUS_STR(s) HTTPTAG_STR(status, s)
259
260SOFIAPUBVAR tag_typedef_t httptag_status_str;
261
262#define HTTPTAG_STATUS_REF(x) HTTPTAG_REF(status, x)
263SOFIAPUBVAR tag_typedef_t httptag_status_ref;
264
265#define HTTPTAG_STATUS_STR_REF(x) HTTPTAG_STR_REF(status, x)
266SOFIAPUBVAR tag_typedef_t httptag_status_str_ref;
267
268#if SU_INLINE_TAG_CAST
270httptag_status_v(http_status_t const *v)
271{ return (tag_value_t)v; }
273httptag_status_vr(http_status_t const **vp)
274{ return (tag_value_t)vp; }
275#else
276#define httptag_status_v(v) (tag_value_t)(v)
277#define httptag_status_vr(vp) (tag_value_t)(vp)
278#endif
279
291#define HTTPTAG_ACCEPT(x) HTTPTAG(accept, x)
292
293SOFIAPUBVAR tag_typedef_t httptag_accept;
294
310#define HTTPTAG_ACCEPT_STR(s) HTTPTAG_STR(accept, s)
311
312SOFIAPUBVAR tag_typedef_t httptag_accept_str;
313
314#define HTTPTAG_ACCEPT_REF(x) HTTPTAG_REF(accept, x)
315SOFIAPUBVAR tag_typedef_t httptag_accept_ref;
316
317#define HTTPTAG_ACCEPT_STR_REF(x) HTTPTAG_STR_REF(accept, x)
318SOFIAPUBVAR tag_typedef_t httptag_accept_str_ref;
319
320#if SU_INLINE_TAG_CAST
322httptag_accept_v(http_accept_t const *v)
323{ return (tag_value_t)v; }
325httptag_accept_vr(http_accept_t const **vp)
326{ return (tag_value_t)vp; }
327#else
328#define httptag_accept_v(v) (tag_value_t)(v)
329#define httptag_accept_vr(vp) (tag_value_t)(vp)
330#endif
331
343#define HTTPTAG_ACCEPT_CHARSET(x) HTTPTAG(accept_charset, x)
344
345SOFIAPUBVAR tag_typedef_t httptag_accept_charset;
346
362#define HTTPTAG_ACCEPT_CHARSET_STR(s) HTTPTAG_STR(accept_charset, s)
363
364SOFIAPUBVAR tag_typedef_t httptag_accept_charset_str;
365
366#define HTTPTAG_ACCEPT_CHARSET_REF(x) HTTPTAG_REF(accept_charset, x)
367SOFIAPUBVAR tag_typedef_t httptag_accept_charset_ref;
368
369#define HTTPTAG_ACCEPT_CHARSET_STR_REF(x) HTTPTAG_STR_REF(accept_charset, x)
370SOFIAPUBVAR tag_typedef_t httptag_accept_charset_str_ref;
371
372#if SU_INLINE_TAG_CAST
374httptag_accept_charset_v(http_accept_charset_t const *v)
375{ return (tag_value_t)v; }
377httptag_accept_charset_vr(http_accept_charset_t const **vp)
378{ return (tag_value_t)vp; }
379#else
380#define httptag_accept_charset_v(v) (tag_value_t)(v)
381#define httptag_accept_charset_vr(vp) (tag_value_t)(vp)
382#endif
383
395#define HTTPTAG_ACCEPT_ENCODING(x) HTTPTAG(accept_encoding, x)
396
397SOFIAPUBVAR tag_typedef_t httptag_accept_encoding;
398
414#define HTTPTAG_ACCEPT_ENCODING_STR(s) HTTPTAG_STR(accept_encoding, s)
415
416SOFIAPUBVAR tag_typedef_t httptag_accept_encoding_str;
417
418#define HTTPTAG_ACCEPT_ENCODING_REF(x) HTTPTAG_REF(accept_encoding, x)
419SOFIAPUBVAR tag_typedef_t httptag_accept_encoding_ref;
420
421#define HTTPTAG_ACCEPT_ENCODING_STR_REF(x) HTTPTAG_STR_REF(accept_encoding, x)
422SOFIAPUBVAR tag_typedef_t httptag_accept_encoding_str_ref;
423
424#if SU_INLINE_TAG_CAST
426httptag_accept_encoding_v(http_accept_encoding_t const *v)
427{ return (tag_value_t)v; }
429httptag_accept_encoding_vr(http_accept_encoding_t const **vp)
430{ return (tag_value_t)vp; }
431#else
432#define httptag_accept_encoding_v(v) (tag_value_t)(v)
433#define httptag_accept_encoding_vr(vp) (tag_value_t)(vp)
434#endif
435
447#define HTTPTAG_ACCEPT_LANGUAGE(x) HTTPTAG(accept_language, x)
448
449SOFIAPUBVAR tag_typedef_t httptag_accept_language;
450
466#define HTTPTAG_ACCEPT_LANGUAGE_STR(s) HTTPTAG_STR(accept_language, s)
467
468SOFIAPUBVAR tag_typedef_t httptag_accept_language_str;
469
470#define HTTPTAG_ACCEPT_LANGUAGE_REF(x) HTTPTAG_REF(accept_language, x)
471SOFIAPUBVAR tag_typedef_t httptag_accept_language_ref;
472
473#define HTTPTAG_ACCEPT_LANGUAGE_STR_REF(x) HTTPTAG_STR_REF(accept_language, x)
474SOFIAPUBVAR tag_typedef_t httptag_accept_language_str_ref;
475
476#if SU_INLINE_TAG_CAST
478httptag_accept_language_v(http_accept_language_t const *v)
479{ return (tag_value_t)v; }
481httptag_accept_language_vr(http_accept_language_t const **vp)
482{ return (tag_value_t)vp; }
483#else
484#define httptag_accept_language_v(v) (tag_value_t)(v)
485#define httptag_accept_language_vr(vp) (tag_value_t)(vp)
486#endif
487
499#define HTTPTAG_ACCEPT_RANGES(x) HTTPTAG(accept_ranges, x)
500
501SOFIAPUBVAR tag_typedef_t httptag_accept_ranges;
502
518#define HTTPTAG_ACCEPT_RANGES_STR(s) HTTPTAG_STR(accept_ranges, s)
519
520SOFIAPUBVAR tag_typedef_t httptag_accept_ranges_str;
521
522#define HTTPTAG_ACCEPT_RANGES_REF(x) HTTPTAG_REF(accept_ranges, x)
523SOFIAPUBVAR tag_typedef_t httptag_accept_ranges_ref;
524
525#define HTTPTAG_ACCEPT_RANGES_STR_REF(x) HTTPTAG_STR_REF(accept_ranges, x)
526SOFIAPUBVAR tag_typedef_t httptag_accept_ranges_str_ref;
527
528#if SU_INLINE_TAG_CAST
530httptag_accept_ranges_v(http_accept_ranges_t const *v)
531{ return (tag_value_t)v; }
533httptag_accept_ranges_vr(http_accept_ranges_t const **vp)
534{ return (tag_value_t)vp; }
535#else
536#define httptag_accept_ranges_v(v) (tag_value_t)(v)
537#define httptag_accept_ranges_vr(vp) (tag_value_t)(vp)
538#endif
539
551#define HTTPTAG_ALLOW(x) HTTPTAG(allow, x)
552
553SOFIAPUBVAR tag_typedef_t httptag_allow;
554
570#define HTTPTAG_ALLOW_STR(s) HTTPTAG_STR(allow, s)
571
572SOFIAPUBVAR tag_typedef_t httptag_allow_str;
573
574#define HTTPTAG_ALLOW_REF(x) HTTPTAG_REF(allow, x)
575SOFIAPUBVAR tag_typedef_t httptag_allow_ref;
576
577#define HTTPTAG_ALLOW_STR_REF(x) HTTPTAG_STR_REF(allow, x)
578SOFIAPUBVAR tag_typedef_t httptag_allow_str_ref;
579
580#if SU_INLINE_TAG_CAST
582httptag_allow_v(http_allow_t const *v)
583{ return (tag_value_t)v; }
585httptag_allow_vr(http_allow_t const **vp)
586{ return (tag_value_t)vp; }
587#else
588#define httptag_allow_v(v) (tag_value_t)(v)
589#define httptag_allow_vr(vp) (tag_value_t)(vp)
590#endif
591
603#define HTTPTAG_AUTHENTICATION_INFO(x) HTTPTAG(authentication_info, x)
604
605SOFIAPUBVAR tag_typedef_t httptag_authentication_info;
606
622#define HTTPTAG_AUTHENTICATION_INFO_STR(s) HTTPTAG_STR(authentication_info, s)
623
624SOFIAPUBVAR tag_typedef_t httptag_authentication_info_str;
625
626#define HTTPTAG_AUTHENTICATION_INFO_REF(x) HTTPTAG_REF(authentication_info, x)
627SOFIAPUBVAR tag_typedef_t httptag_authentication_info_ref;
628
629#define HTTPTAG_AUTHENTICATION_INFO_STR_REF(x) HTTPTAG_STR_REF(authentication_info, x)
630SOFIAPUBVAR tag_typedef_t httptag_authentication_info_str_ref;
631
632#if SU_INLINE_TAG_CAST
634httptag_authentication_info_v(http_authentication_info_t const *v)
635{ return (tag_value_t)v; }
637httptag_authentication_info_vr(http_authentication_info_t const **vp)
638{ return (tag_value_t)vp; }
639#else
640#define httptag_authentication_info_v(v) (tag_value_t)(v)
641#define httptag_authentication_info_vr(vp) (tag_value_t)(vp)
642#endif
643
655#define HTTPTAG_AUTHORIZATION(x) HTTPTAG(authorization, x)
656
657SOFIAPUBVAR tag_typedef_t httptag_authorization;
658
674#define HTTPTAG_AUTHORIZATION_STR(s) HTTPTAG_STR(authorization, s)
675
676SOFIAPUBVAR tag_typedef_t httptag_authorization_str;
677
678#define HTTPTAG_AUTHORIZATION_REF(x) HTTPTAG_REF(authorization, x)
679SOFIAPUBVAR tag_typedef_t httptag_authorization_ref;
680
681#define HTTPTAG_AUTHORIZATION_STR_REF(x) HTTPTAG_STR_REF(authorization, x)
682SOFIAPUBVAR tag_typedef_t httptag_authorization_str_ref;
683
684#if SU_INLINE_TAG_CAST
686httptag_authorization_v(http_authorization_t const *v)
687{ return (tag_value_t)v; }
689httptag_authorization_vr(http_authorization_t const **vp)
690{ return (tag_value_t)vp; }
691#else
692#define httptag_authorization_v(v) (tag_value_t)(v)
693#define httptag_authorization_vr(vp) (tag_value_t)(vp)
694#endif
695
707#define HTTPTAG_AGE(x) HTTPTAG(age, x)
708
709SOFIAPUBVAR tag_typedef_t httptag_age;
710
726#define HTTPTAG_AGE_STR(s) HTTPTAG_STR(age, s)
727
728SOFIAPUBVAR tag_typedef_t httptag_age_str;
729
730#define HTTPTAG_AGE_REF(x) HTTPTAG_REF(age, x)
731SOFIAPUBVAR tag_typedef_t httptag_age_ref;
732
733#define HTTPTAG_AGE_STR_REF(x) HTTPTAG_STR_REF(age, x)
734SOFIAPUBVAR tag_typedef_t httptag_age_str_ref;
735
736#if SU_INLINE_TAG_CAST
738httptag_age_v(http_age_t const *v)
739{ return (tag_value_t)v; }
741httptag_age_vr(http_age_t const **vp)
742{ return (tag_value_t)vp; }
743#else
744#define httptag_age_v(v) (tag_value_t)(v)
745#define httptag_age_vr(vp) (tag_value_t)(vp)
746#endif
747
759#define HTTPTAG_CACHE_CONTROL(x) HTTPTAG(cache_control, x)
760
761SOFIAPUBVAR tag_typedef_t httptag_cache_control;
762
778#define HTTPTAG_CACHE_CONTROL_STR(s) HTTPTAG_STR(cache_control, s)
779
780SOFIAPUBVAR tag_typedef_t httptag_cache_control_str;
781
782#define HTTPTAG_CACHE_CONTROL_REF(x) HTTPTAG_REF(cache_control, x)
783SOFIAPUBVAR tag_typedef_t httptag_cache_control_ref;
784
785#define HTTPTAG_CACHE_CONTROL_STR_REF(x) HTTPTAG_STR_REF(cache_control, x)
786SOFIAPUBVAR tag_typedef_t httptag_cache_control_str_ref;
787
788#if SU_INLINE_TAG_CAST
790httptag_cache_control_v(http_cache_control_t const *v)
791{ return (tag_value_t)v; }
793httptag_cache_control_vr(http_cache_control_t const **vp)
794{ return (tag_value_t)vp; }
795#else
796#define httptag_cache_control_v(v) (tag_value_t)(v)
797#define httptag_cache_control_vr(vp) (tag_value_t)(vp)
798#endif
799
811#define HTTPTAG_CONNECTION(x) HTTPTAG(connection, x)
812
813SOFIAPUBVAR tag_typedef_t httptag_connection;
814
830#define HTTPTAG_CONNECTION_STR(s) HTTPTAG_STR(connection, s)
831
832SOFIAPUBVAR tag_typedef_t httptag_connection_str;
833
834#define HTTPTAG_CONNECTION_REF(x) HTTPTAG_REF(connection, x)
835SOFIAPUBVAR tag_typedef_t httptag_connection_ref;
836
837#define HTTPTAG_CONNECTION_STR_REF(x) HTTPTAG_STR_REF(connection, x)
838SOFIAPUBVAR tag_typedef_t httptag_connection_str_ref;
839
840#if SU_INLINE_TAG_CAST
842httptag_connection_v(http_connection_t const *v)
843{ return (tag_value_t)v; }
845httptag_connection_vr(http_connection_t const **vp)
846{ return (tag_value_t)vp; }
847#else
848#define httptag_connection_v(v) (tag_value_t)(v)
849#define httptag_connection_vr(vp) (tag_value_t)(vp)
850#endif
851
863#define HTTPTAG_DATE(x) HTTPTAG(date, x)
864
865SOFIAPUBVAR tag_typedef_t httptag_date;
866
882#define HTTPTAG_DATE_STR(s) HTTPTAG_STR(date, s)
883
884SOFIAPUBVAR tag_typedef_t httptag_date_str;
885
886#define HTTPTAG_DATE_REF(x) HTTPTAG_REF(date, x)
887SOFIAPUBVAR tag_typedef_t httptag_date_ref;
888
889#define HTTPTAG_DATE_STR_REF(x) HTTPTAG_STR_REF(date, x)
890SOFIAPUBVAR tag_typedef_t httptag_date_str_ref;
891
892#if SU_INLINE_TAG_CAST
894httptag_date_v(http_date_t const *v)
895{ return (tag_value_t)v; }
897httptag_date_vr(http_date_t const **vp)
898{ return (tag_value_t)vp; }
899#else
900#define httptag_date_v(v) (tag_value_t)(v)
901#define httptag_date_vr(vp) (tag_value_t)(vp)
902#endif
903
915#define HTTPTAG_ETAG(x) HTTPTAG(etag, x)
916
917SOFIAPUBVAR tag_typedef_t httptag_etag;
918
934#define HTTPTAG_ETAG_STR(s) HTTPTAG_STR(etag, s)
935
936SOFIAPUBVAR tag_typedef_t httptag_etag_str;
937
938#define HTTPTAG_ETAG_REF(x) HTTPTAG_REF(etag, x)
939SOFIAPUBVAR tag_typedef_t httptag_etag_ref;
940
941#define HTTPTAG_ETAG_STR_REF(x) HTTPTAG_STR_REF(etag, x)
942SOFIAPUBVAR tag_typedef_t httptag_etag_str_ref;
943
944#if SU_INLINE_TAG_CAST
946httptag_etag_v(http_etag_t const *v)
947{ return (tag_value_t)v; }
949httptag_etag_vr(http_etag_t const **vp)
950{ return (tag_value_t)vp; }
951#else
952#define httptag_etag_v(v) (tag_value_t)(v)
953#define httptag_etag_vr(vp) (tag_value_t)(vp)
954#endif
955
967#define HTTPTAG_EXPECT(x) HTTPTAG(expect, x)
968
969SOFIAPUBVAR tag_typedef_t httptag_expect;
970
986#define HTTPTAG_EXPECT_STR(s) HTTPTAG_STR(expect, s)
987
988SOFIAPUBVAR tag_typedef_t httptag_expect_str;
989
990#define HTTPTAG_EXPECT_REF(x) HTTPTAG_REF(expect, x)
991SOFIAPUBVAR tag_typedef_t httptag_expect_ref;
992
993#define HTTPTAG_EXPECT_STR_REF(x) HTTPTAG_STR_REF(expect, x)
994SOFIAPUBVAR tag_typedef_t httptag_expect_str_ref;
995
996#if SU_INLINE_TAG_CAST
998httptag_expect_v(http_expect_t const *v)
999{ return (tag_value_t)v; }
1001httptag_expect_vr(http_expect_t const **vp)
1002{ return (tag_value_t)vp; }
1003#else
1004#define httptag_expect_v(v) (tag_value_t)(v)
1005#define httptag_expect_vr(vp) (tag_value_t)(vp)
1006#endif
1007
1019#define HTTPTAG_EXPIRES(x) HTTPTAG(expires, x)
1020
1021SOFIAPUBVAR tag_typedef_t httptag_expires;
1022
1038#define HTTPTAG_EXPIRES_STR(s) HTTPTAG_STR(expires, s)
1039
1040SOFIAPUBVAR tag_typedef_t httptag_expires_str;
1041
1042#define HTTPTAG_EXPIRES_REF(x) HTTPTAG_REF(expires, x)
1043SOFIAPUBVAR tag_typedef_t httptag_expires_ref;
1044
1045#define HTTPTAG_EXPIRES_STR_REF(x) HTTPTAG_STR_REF(expires, x)
1046SOFIAPUBVAR tag_typedef_t httptag_expires_str_ref;
1047
1048#if SU_INLINE_TAG_CAST
1050httptag_expires_v(http_expires_t const *v)
1051{ return (tag_value_t)v; }
1053httptag_expires_vr(http_expires_t const **vp)
1054{ return (tag_value_t)vp; }
1055#else
1056#define httptag_expires_v(v) (tag_value_t)(v)
1057#define httptag_expires_vr(vp) (tag_value_t)(vp)
1058#endif
1059
1071#define HTTPTAG_FROM(x) HTTPTAG(from, x)
1072
1073SOFIAPUBVAR tag_typedef_t httptag_from;
1074
1090#define HTTPTAG_FROM_STR(s) HTTPTAG_STR(from, s)
1091
1092SOFIAPUBVAR tag_typedef_t httptag_from_str;
1093
1094#define HTTPTAG_FROM_REF(x) HTTPTAG_REF(from, x)
1095SOFIAPUBVAR tag_typedef_t httptag_from_ref;
1096
1097#define HTTPTAG_FROM_STR_REF(x) HTTPTAG_STR_REF(from, x)
1098SOFIAPUBVAR tag_typedef_t httptag_from_str_ref;
1099
1100#if SU_INLINE_TAG_CAST
1102httptag_from_v(http_from_t const *v)
1103{ return (tag_value_t)v; }
1105httptag_from_vr(http_from_t const **vp)
1106{ return (tag_value_t)vp; }
1107#else
1108#define httptag_from_v(v) (tag_value_t)(v)
1109#define httptag_from_vr(vp) (tag_value_t)(vp)
1110#endif
1111
1123#define HTTPTAG_HOST(x) HTTPTAG(host, x)
1124
1125SOFIAPUBVAR tag_typedef_t httptag_host;
1126
1142#define HTTPTAG_HOST_STR(s) HTTPTAG_STR(host, s)
1143
1144SOFIAPUBVAR tag_typedef_t httptag_host_str;
1145
1146#define HTTPTAG_HOST_REF(x) HTTPTAG_REF(host, x)
1147SOFIAPUBVAR tag_typedef_t httptag_host_ref;
1148
1149#define HTTPTAG_HOST_STR_REF(x) HTTPTAG_STR_REF(host, x)
1150SOFIAPUBVAR tag_typedef_t httptag_host_str_ref;
1151
1152#if SU_INLINE_TAG_CAST
1154httptag_host_v(http_host_t const *v)
1155{ return (tag_value_t)v; }
1157httptag_host_vr(http_host_t const **vp)
1158{ return (tag_value_t)vp; }
1159#else
1160#define httptag_host_v(v) (tag_value_t)(v)
1161#define httptag_host_vr(vp) (tag_value_t)(vp)
1162#endif
1163
1175#define HTTPTAG_IF_MATCH(x) HTTPTAG(if_match, x)
1176
1177SOFIAPUBVAR tag_typedef_t httptag_if_match;
1178
1194#define HTTPTAG_IF_MATCH_STR(s) HTTPTAG_STR(if_match, s)
1195
1196SOFIAPUBVAR tag_typedef_t httptag_if_match_str;
1197
1198#define HTTPTAG_IF_MATCH_REF(x) HTTPTAG_REF(if_match, x)
1199SOFIAPUBVAR tag_typedef_t httptag_if_match_ref;
1200
1201#define HTTPTAG_IF_MATCH_STR_REF(x) HTTPTAG_STR_REF(if_match, x)
1202SOFIAPUBVAR tag_typedef_t httptag_if_match_str_ref;
1203
1204#if SU_INLINE_TAG_CAST
1206httptag_if_match_v(http_if_match_t const *v)
1207{ return (tag_value_t)v; }
1209httptag_if_match_vr(http_if_match_t const **vp)
1210{ return (tag_value_t)vp; }
1211#else
1212#define httptag_if_match_v(v) (tag_value_t)(v)
1213#define httptag_if_match_vr(vp) (tag_value_t)(vp)
1214#endif
1215
1227#define HTTPTAG_IF_MODIFIED_SINCE(x) HTTPTAG(if_modified_since, x)
1228
1229SOFIAPUBVAR tag_typedef_t httptag_if_modified_since;
1230
1246#define HTTPTAG_IF_MODIFIED_SINCE_STR(s) HTTPTAG_STR(if_modified_since, s)
1247
1248SOFIAPUBVAR tag_typedef_t httptag_if_modified_since_str;
1249
1250#define HTTPTAG_IF_MODIFIED_SINCE_REF(x) HTTPTAG_REF(if_modified_since, x)
1251SOFIAPUBVAR tag_typedef_t httptag_if_modified_since_ref;
1252
1253#define HTTPTAG_IF_MODIFIED_SINCE_STR_REF(x) HTTPTAG_STR_REF(if_modified_since, x)
1254SOFIAPUBVAR tag_typedef_t httptag_if_modified_since_str_ref;
1255
1256#if SU_INLINE_TAG_CAST
1258httptag_if_modified_since_v(http_if_modified_since_t const *v)
1259{ return (tag_value_t)v; }
1261httptag_if_modified_since_vr(http_if_modified_since_t const **vp)
1262{ return (tag_value_t)vp; }
1263#else
1264#define httptag_if_modified_since_v(v) (tag_value_t)(v)
1265#define httptag_if_modified_since_vr(vp) (tag_value_t)(vp)
1266#endif
1267
1279#define HTTPTAG_IF_NONE_MATCH(x) HTTPTAG(if_none_match, x)
1280
1281SOFIAPUBVAR tag_typedef_t httptag_if_none_match;
1282
1298#define HTTPTAG_IF_NONE_MATCH_STR(s) HTTPTAG_STR(if_none_match, s)
1299
1300SOFIAPUBVAR tag_typedef_t httptag_if_none_match_str;
1301
1302#define HTTPTAG_IF_NONE_MATCH_REF(x) HTTPTAG_REF(if_none_match, x)
1303SOFIAPUBVAR tag_typedef_t httptag_if_none_match_ref;
1304
1305#define HTTPTAG_IF_NONE_MATCH_STR_REF(x) HTTPTAG_STR_REF(if_none_match, x)
1306SOFIAPUBVAR tag_typedef_t httptag_if_none_match_str_ref;
1307
1308#if SU_INLINE_TAG_CAST
1310httptag_if_none_match_v(http_if_none_match_t const *v)
1311{ return (tag_value_t)v; }
1313httptag_if_none_match_vr(http_if_none_match_t const **vp)
1314{ return (tag_value_t)vp; }
1315#else
1316#define httptag_if_none_match_v(v) (tag_value_t)(v)
1317#define httptag_if_none_match_vr(vp) (tag_value_t)(vp)
1318#endif
1319
1331#define HTTPTAG_IF_RANGE(x) HTTPTAG(if_range, x)
1332
1333SOFIAPUBVAR tag_typedef_t httptag_if_range;
1334
1350#define HTTPTAG_IF_RANGE_STR(s) HTTPTAG_STR(if_range, s)
1351
1352SOFIAPUBVAR tag_typedef_t httptag_if_range_str;
1353
1354#define HTTPTAG_IF_RANGE_REF(x) HTTPTAG_REF(if_range, x)
1355SOFIAPUBVAR tag_typedef_t httptag_if_range_ref;
1356
1357#define HTTPTAG_IF_RANGE_STR_REF(x) HTTPTAG_STR_REF(if_range, x)
1358SOFIAPUBVAR tag_typedef_t httptag_if_range_str_ref;
1359
1360#if SU_INLINE_TAG_CAST
1362httptag_if_range_v(http_if_range_t const *v)
1363{ return (tag_value_t)v; }
1365httptag_if_range_vr(http_if_range_t const **vp)
1366{ return (tag_value_t)vp; }
1367#else
1368#define httptag_if_range_v(v) (tag_value_t)(v)
1369#define httptag_if_range_vr(vp) (tag_value_t)(vp)
1370#endif
1371
1383#define HTTPTAG_IF_UNMODIFIED_SINCE(x) HTTPTAG(if_unmodified_since, x)
1384
1385SOFIAPUBVAR tag_typedef_t httptag_if_unmodified_since;
1386
1402#define HTTPTAG_IF_UNMODIFIED_SINCE_STR(s) HTTPTAG_STR(if_unmodified_since, s)
1403
1404SOFIAPUBVAR tag_typedef_t httptag_if_unmodified_since_str;
1405
1406#define HTTPTAG_IF_UNMODIFIED_SINCE_REF(x) HTTPTAG_REF(if_unmodified_since, x)
1407SOFIAPUBVAR tag_typedef_t httptag_if_unmodified_since_ref;
1408
1409#define HTTPTAG_IF_UNMODIFIED_SINCE_STR_REF(x) HTTPTAG_STR_REF(if_unmodified_since, x)
1410SOFIAPUBVAR tag_typedef_t httptag_if_unmodified_since_str_ref;
1411
1412#if SU_INLINE_TAG_CAST
1414httptag_if_unmodified_since_v(http_if_unmodified_since_t const *v)
1415{ return (tag_value_t)v; }
1417httptag_if_unmodified_since_vr(http_if_unmodified_since_t const **vp)
1418{ return (tag_value_t)vp; }
1419#else
1420#define httptag_if_unmodified_since_v(v) (tag_value_t)(v)
1421#define httptag_if_unmodified_since_vr(vp) (tag_value_t)(vp)
1422#endif
1423
1435#define HTTPTAG_LAST_MODIFIED(x) HTTPTAG(last_modified, x)
1436
1437SOFIAPUBVAR tag_typedef_t httptag_last_modified;
1438
1454#define HTTPTAG_LAST_MODIFIED_STR(s) HTTPTAG_STR(last_modified, s)
1455
1456SOFIAPUBVAR tag_typedef_t httptag_last_modified_str;
1457
1458#define HTTPTAG_LAST_MODIFIED_REF(x) HTTPTAG_REF(last_modified, x)
1459SOFIAPUBVAR tag_typedef_t httptag_last_modified_ref;
1460
1461#define HTTPTAG_LAST_MODIFIED_STR_REF(x) HTTPTAG_STR_REF(last_modified, x)
1462SOFIAPUBVAR tag_typedef_t httptag_last_modified_str_ref;
1463
1464#if SU_INLINE_TAG_CAST
1466httptag_last_modified_v(http_last_modified_t const *v)
1467{ return (tag_value_t)v; }
1469httptag_last_modified_vr(http_last_modified_t const **vp)
1470{ return (tag_value_t)vp; }
1471#else
1472#define httptag_last_modified_v(v) (tag_value_t)(v)
1473#define httptag_last_modified_vr(vp) (tag_value_t)(vp)
1474#endif
1475
1487#define HTTPTAG_LOCATION(x) HTTPTAG(location, x)
1488
1489SOFIAPUBVAR tag_typedef_t httptag_location;
1490
1506#define HTTPTAG_LOCATION_STR(s) HTTPTAG_STR(location, s)
1507
1508SOFIAPUBVAR tag_typedef_t httptag_location_str;
1509
1510#define HTTPTAG_LOCATION_REF(x) HTTPTAG_REF(location, x)
1511SOFIAPUBVAR tag_typedef_t httptag_location_ref;
1512
1513#define HTTPTAG_LOCATION_STR_REF(x) HTTPTAG_STR_REF(location, x)
1514SOFIAPUBVAR tag_typedef_t httptag_location_str_ref;
1515
1516#if SU_INLINE_TAG_CAST
1518httptag_location_v(http_location_t const *v)
1519{ return (tag_value_t)v; }
1521httptag_location_vr(http_location_t const **vp)
1522{ return (tag_value_t)vp; }
1523#else
1524#define httptag_location_v(v) (tag_value_t)(v)
1525#define httptag_location_vr(vp) (tag_value_t)(vp)
1526#endif
1527
1539#define HTTPTAG_MAX_FORWARDS(x) HTTPTAG(max_forwards, x)
1540
1541SOFIAPUBVAR tag_typedef_t httptag_max_forwards;
1542
1558#define HTTPTAG_MAX_FORWARDS_STR(s) HTTPTAG_STR(max_forwards, s)
1559
1560SOFIAPUBVAR tag_typedef_t httptag_max_forwards_str;
1561
1562#define HTTPTAG_MAX_FORWARDS_REF(x) HTTPTAG_REF(max_forwards, x)
1563SOFIAPUBVAR tag_typedef_t httptag_max_forwards_ref;
1564
1565#define HTTPTAG_MAX_FORWARDS_STR_REF(x) HTTPTAG_STR_REF(max_forwards, x)
1566SOFIAPUBVAR tag_typedef_t httptag_max_forwards_str_ref;
1567
1568#if SU_INLINE_TAG_CAST
1570httptag_max_forwards_v(http_max_forwards_t const *v)
1571{ return (tag_value_t)v; }
1573httptag_max_forwards_vr(http_max_forwards_t const **vp)
1574{ return (tag_value_t)vp; }
1575#else
1576#define httptag_max_forwards_v(v) (tag_value_t)(v)
1577#define httptag_max_forwards_vr(vp) (tag_value_t)(vp)
1578#endif
1579
1591#define HTTPTAG_PRAGMA(x) HTTPTAG(pragma, x)
1592
1593SOFIAPUBVAR tag_typedef_t httptag_pragma;
1594
1610#define HTTPTAG_PRAGMA_STR(s) HTTPTAG_STR(pragma, s)
1611
1612SOFIAPUBVAR tag_typedef_t httptag_pragma_str;
1613
1614#define HTTPTAG_PRAGMA_REF(x) HTTPTAG_REF(pragma, x)
1615SOFIAPUBVAR tag_typedef_t httptag_pragma_ref;
1616
1617#define HTTPTAG_PRAGMA_STR_REF(x) HTTPTAG_STR_REF(pragma, x)
1618SOFIAPUBVAR tag_typedef_t httptag_pragma_str_ref;
1619
1620#if SU_INLINE_TAG_CAST
1622httptag_pragma_v(http_pragma_t const *v)
1623{ return (tag_value_t)v; }
1625httptag_pragma_vr(http_pragma_t const **vp)
1626{ return (tag_value_t)vp; }
1627#else
1628#define httptag_pragma_v(v) (tag_value_t)(v)
1629#define httptag_pragma_vr(vp) (tag_value_t)(vp)
1630#endif
1631
1643#define HTTPTAG_PROXY_AUTHENTICATE(x) HTTPTAG(proxy_authenticate, x)
1644
1645SOFIAPUBVAR tag_typedef_t httptag_proxy_authenticate;
1646
1662#define HTTPTAG_PROXY_AUTHENTICATE_STR(s) HTTPTAG_STR(proxy_authenticate, s)
1663
1664SOFIAPUBVAR tag_typedef_t httptag_proxy_authenticate_str;
1665
1666#define HTTPTAG_PROXY_AUTHENTICATE_REF(x) HTTPTAG_REF(proxy_authenticate, x)
1667SOFIAPUBVAR tag_typedef_t httptag_proxy_authenticate_ref;
1668
1669#define HTTPTAG_PROXY_AUTHENTICATE_STR_REF(x) HTTPTAG_STR_REF(proxy_authenticate, x)
1670SOFIAPUBVAR tag_typedef_t httptag_proxy_authenticate_str_ref;
1671
1672#if SU_INLINE_TAG_CAST
1674httptag_proxy_authenticate_v(http_proxy_authenticate_t const *v)
1675{ return (tag_value_t)v; }
1677httptag_proxy_authenticate_vr(http_proxy_authenticate_t const **vp)
1678{ return (tag_value_t)vp; }
1679#else
1680#define httptag_proxy_authenticate_v(v) (tag_value_t)(v)
1681#define httptag_proxy_authenticate_vr(vp) (tag_value_t)(vp)
1682#endif
1683
1695#define HTTPTAG_PROXY_AUTHORIZATION(x) HTTPTAG(proxy_authorization, x)
1696
1697SOFIAPUBVAR tag_typedef_t httptag_proxy_authorization;
1698
1714#define HTTPTAG_PROXY_AUTHORIZATION_STR(s) HTTPTAG_STR(proxy_authorization, s)
1715
1716SOFIAPUBVAR tag_typedef_t httptag_proxy_authorization_str;
1717
1718#define HTTPTAG_PROXY_AUTHORIZATION_REF(x) HTTPTAG_REF(proxy_authorization, x)
1719SOFIAPUBVAR tag_typedef_t httptag_proxy_authorization_ref;
1720
1721#define HTTPTAG_PROXY_AUTHORIZATION_STR_REF(x) HTTPTAG_STR_REF(proxy_authorization, x)
1722SOFIAPUBVAR tag_typedef_t httptag_proxy_authorization_str_ref;
1723
1724#if SU_INLINE_TAG_CAST
1726httptag_proxy_authorization_v(http_proxy_authorization_t const *v)
1727{ return (tag_value_t)v; }
1729httptag_proxy_authorization_vr(http_proxy_authorization_t const **vp)
1730{ return (tag_value_t)vp; }
1731#else
1732#define httptag_proxy_authorization_v(v) (tag_value_t)(v)
1733#define httptag_proxy_authorization_vr(vp) (tag_value_t)(vp)
1734#endif
1735
1747#define HTTPTAG_RANGE(x) HTTPTAG(range, x)
1748
1749SOFIAPUBVAR tag_typedef_t httptag_range;
1750
1766#define HTTPTAG_RANGE_STR(s) HTTPTAG_STR(range, s)
1767
1768SOFIAPUBVAR tag_typedef_t httptag_range_str;
1769
1770#define HTTPTAG_RANGE_REF(x) HTTPTAG_REF(range, x)
1771SOFIAPUBVAR tag_typedef_t httptag_range_ref;
1772
1773#define HTTPTAG_RANGE_STR_REF(x) HTTPTAG_STR_REF(range, x)
1774SOFIAPUBVAR tag_typedef_t httptag_range_str_ref;
1775
1776#if SU_INLINE_TAG_CAST
1778httptag_range_v(http_range_t const *v)
1779{ return (tag_value_t)v; }
1781httptag_range_vr(http_range_t const **vp)
1782{ return (tag_value_t)vp; }
1783#else
1784#define httptag_range_v(v) (tag_value_t)(v)
1785#define httptag_range_vr(vp) (tag_value_t)(vp)
1786#endif
1787
1799#define HTTPTAG_REFERER(x) HTTPTAG(referer, x)
1800
1801SOFIAPUBVAR tag_typedef_t httptag_referer;
1802
1818#define HTTPTAG_REFERER_STR(s) HTTPTAG_STR(referer, s)
1819
1820SOFIAPUBVAR tag_typedef_t httptag_referer_str;
1821
1822#define HTTPTAG_REFERER_REF(x) HTTPTAG_REF(referer, x)
1823SOFIAPUBVAR tag_typedef_t httptag_referer_ref;
1824
1825#define HTTPTAG_REFERER_STR_REF(x) HTTPTAG_STR_REF(referer, x)
1826SOFIAPUBVAR tag_typedef_t httptag_referer_str_ref;
1827
1828#if SU_INLINE_TAG_CAST
1830httptag_referer_v(http_referer_t const *v)
1831{ return (tag_value_t)v; }
1833httptag_referer_vr(http_referer_t const **vp)
1834{ return (tag_value_t)vp; }
1835#else
1836#define httptag_referer_v(v) (tag_value_t)(v)
1837#define httptag_referer_vr(vp) (tag_value_t)(vp)
1838#endif
1839
1851#define HTTPTAG_RETRY_AFTER(x) HTTPTAG(retry_after, x)
1852
1853SOFIAPUBVAR tag_typedef_t httptag_retry_after;
1854
1870#define HTTPTAG_RETRY_AFTER_STR(s) HTTPTAG_STR(retry_after, s)
1871
1872SOFIAPUBVAR tag_typedef_t httptag_retry_after_str;
1873
1874#define HTTPTAG_RETRY_AFTER_REF(x) HTTPTAG_REF(retry_after, x)
1875SOFIAPUBVAR tag_typedef_t httptag_retry_after_ref;
1876
1877#define HTTPTAG_RETRY_AFTER_STR_REF(x) HTTPTAG_STR_REF(retry_after, x)
1878SOFIAPUBVAR tag_typedef_t httptag_retry_after_str_ref;
1879
1880#if SU_INLINE_TAG_CAST
1882httptag_retry_after_v(http_retry_after_t const *v)
1883{ return (tag_value_t)v; }
1885httptag_retry_after_vr(http_retry_after_t const **vp)
1886{ return (tag_value_t)vp; }
1887#else
1888#define httptag_retry_after_v(v) (tag_value_t)(v)
1889#define httptag_retry_after_vr(vp) (tag_value_t)(vp)
1890#endif
1891
1903#define HTTPTAG_SERVER(x) HTTPTAG(server, x)
1904
1905SOFIAPUBVAR tag_typedef_t httptag_server;
1906
1922#define HTTPTAG_SERVER_STR(s) HTTPTAG_STR(server, s)
1923
1924SOFIAPUBVAR tag_typedef_t httptag_server_str;
1925
1926#define HTTPTAG_SERVER_REF(x) HTTPTAG_REF(server, x)
1927SOFIAPUBVAR tag_typedef_t httptag_server_ref;
1928
1929#define HTTPTAG_SERVER_STR_REF(x) HTTPTAG_STR_REF(server, x)
1930SOFIAPUBVAR tag_typedef_t httptag_server_str_ref;
1931
1932#if SU_INLINE_TAG_CAST
1934httptag_server_v(http_server_t const *v)
1935{ return (tag_value_t)v; }
1937httptag_server_vr(http_server_t const **vp)
1938{ return (tag_value_t)vp; }
1939#else
1940#define httptag_server_v(v) (tag_value_t)(v)
1941#define httptag_server_vr(vp) (tag_value_t)(vp)
1942#endif
1943
1955#define HTTPTAG_TE(x) HTTPTAG(te, x)
1956
1957SOFIAPUBVAR tag_typedef_t httptag_te;
1958
1974#define HTTPTAG_TE_STR(s) HTTPTAG_STR(te, s)
1975
1976SOFIAPUBVAR tag_typedef_t httptag_te_str;
1977
1978#define HTTPTAG_TE_REF(x) HTTPTAG_REF(te, x)
1979SOFIAPUBVAR tag_typedef_t httptag_te_ref;
1980
1981#define HTTPTAG_TE_STR_REF(x) HTTPTAG_STR_REF(te, x)
1982SOFIAPUBVAR tag_typedef_t httptag_te_str_ref;
1983
1984#if SU_INLINE_TAG_CAST
1986httptag_te_v(http_te_t const *v)
1987{ return (tag_value_t)v; }
1989httptag_te_vr(http_te_t const **vp)
1990{ return (tag_value_t)vp; }
1991#else
1992#define httptag_te_v(v) (tag_value_t)(v)
1993#define httptag_te_vr(vp) (tag_value_t)(vp)
1994#endif
1995
2007#define HTTPTAG_TRAILER(x) HTTPTAG(trailer, x)
2008
2009SOFIAPUBVAR tag_typedef_t httptag_trailer;
2010
2026#define HTTPTAG_TRAILER_STR(s) HTTPTAG_STR(trailer, s)
2027
2028SOFIAPUBVAR tag_typedef_t httptag_trailer_str;
2029
2030#define HTTPTAG_TRAILER_REF(x) HTTPTAG_REF(trailer, x)
2031SOFIAPUBVAR tag_typedef_t httptag_trailer_ref;
2032
2033#define HTTPTAG_TRAILER_STR_REF(x) HTTPTAG_STR_REF(trailer, x)
2034SOFIAPUBVAR tag_typedef_t httptag_trailer_str_ref;
2035
2036#if SU_INLINE_TAG_CAST
2038httptag_trailer_v(http_trailer_t const *v)
2039{ return (tag_value_t)v; }
2041httptag_trailer_vr(http_trailer_t const **vp)
2042{ return (tag_value_t)vp; }
2043#else
2044#define httptag_trailer_v(v) (tag_value_t)(v)
2045#define httptag_trailer_vr(vp) (tag_value_t)(vp)
2046#endif
2047
2059#define HTTPTAG_TRANSFER_ENCODING(x) HTTPTAG(transfer_encoding, x)
2060
2061SOFIAPUBVAR tag_typedef_t httptag_transfer_encoding;
2062
2078#define HTTPTAG_TRANSFER_ENCODING_STR(s) HTTPTAG_STR(transfer_encoding, s)
2079
2080SOFIAPUBVAR tag_typedef_t httptag_transfer_encoding_str;
2081
2082#define HTTPTAG_TRANSFER_ENCODING_REF(x) HTTPTAG_REF(transfer_encoding, x)
2083SOFIAPUBVAR tag_typedef_t httptag_transfer_encoding_ref;
2084
2085#define HTTPTAG_TRANSFER_ENCODING_STR_REF(x) HTTPTAG_STR_REF(transfer_encoding, x)
2086SOFIAPUBVAR tag_typedef_t httptag_transfer_encoding_str_ref;
2087
2088#if SU_INLINE_TAG_CAST
2090httptag_transfer_encoding_v(http_transfer_encoding_t const *v)
2091{ return (tag_value_t)v; }
2093httptag_transfer_encoding_vr(http_transfer_encoding_t const **vp)
2094{ return (tag_value_t)vp; }
2095#else
2096#define httptag_transfer_encoding_v(v) (tag_value_t)(v)
2097#define httptag_transfer_encoding_vr(vp) (tag_value_t)(vp)
2098#endif
2099
2111#define HTTPTAG_UPGRADE(x) HTTPTAG(upgrade, x)
2112
2113SOFIAPUBVAR tag_typedef_t httptag_upgrade;
2114
2130#define HTTPTAG_UPGRADE_STR(s) HTTPTAG_STR(upgrade, s)
2131
2132SOFIAPUBVAR tag_typedef_t httptag_upgrade_str;
2133
2134#define HTTPTAG_UPGRADE_REF(x) HTTPTAG_REF(upgrade, x)
2135SOFIAPUBVAR tag_typedef_t httptag_upgrade_ref;
2136
2137#define HTTPTAG_UPGRADE_STR_REF(x) HTTPTAG_STR_REF(upgrade, x)
2138SOFIAPUBVAR tag_typedef_t httptag_upgrade_str_ref;
2139
2140#if SU_INLINE_TAG_CAST
2142httptag_upgrade_v(http_upgrade_t const *v)
2143{ return (tag_value_t)v; }
2145httptag_upgrade_vr(http_upgrade_t const **vp)
2146{ return (tag_value_t)vp; }
2147#else
2148#define httptag_upgrade_v(v) (tag_value_t)(v)
2149#define httptag_upgrade_vr(vp) (tag_value_t)(vp)
2150#endif
2151
2163#define HTTPTAG_USER_AGENT(x) HTTPTAG(user_agent, x)
2164
2165SOFIAPUBVAR tag_typedef_t httptag_user_agent;
2166
2182#define HTTPTAG_USER_AGENT_STR(s) HTTPTAG_STR(user_agent, s)
2183
2184SOFIAPUBVAR tag_typedef_t httptag_user_agent_str;
2185
2186#define HTTPTAG_USER_AGENT_REF(x) HTTPTAG_REF(user_agent, x)
2187SOFIAPUBVAR tag_typedef_t httptag_user_agent_ref;
2188
2189#define HTTPTAG_USER_AGENT_STR_REF(x) HTTPTAG_STR_REF(user_agent, x)
2190SOFIAPUBVAR tag_typedef_t httptag_user_agent_str_ref;
2191
2192#if SU_INLINE_TAG_CAST
2194httptag_user_agent_v(http_user_agent_t const *v)
2195{ return (tag_value_t)v; }
2197httptag_user_agent_vr(http_user_agent_t const **vp)
2198{ return (tag_value_t)vp; }
2199#else
2200#define httptag_user_agent_v(v) (tag_value_t)(v)
2201#define httptag_user_agent_vr(vp) (tag_value_t)(vp)
2202#endif
2203
2215#define HTTPTAG_VARY(x) HTTPTAG(vary, x)
2216
2217SOFIAPUBVAR tag_typedef_t httptag_vary;
2218
2234#define HTTPTAG_VARY_STR(s) HTTPTAG_STR(vary, s)
2235
2236SOFIAPUBVAR tag_typedef_t httptag_vary_str;
2237
2238#define HTTPTAG_VARY_REF(x) HTTPTAG_REF(vary, x)
2239SOFIAPUBVAR tag_typedef_t httptag_vary_ref;
2240
2241#define HTTPTAG_VARY_STR_REF(x) HTTPTAG_STR_REF(vary, x)
2242SOFIAPUBVAR tag_typedef_t httptag_vary_str_ref;
2243
2244#if SU_INLINE_TAG_CAST
2246httptag_vary_v(http_vary_t const *v)
2247{ return (tag_value_t)v; }
2249httptag_vary_vr(http_vary_t const **vp)
2250{ return (tag_value_t)vp; }
2251#else
2252#define httptag_vary_v(v) (tag_value_t)(v)
2253#define httptag_vary_vr(vp) (tag_value_t)(vp)
2254#endif
2255
2267#define HTTPTAG_VIA(x) HTTPTAG(via, x)
2268
2269SOFIAPUBVAR tag_typedef_t httptag_via;
2270
2286#define HTTPTAG_VIA_STR(s) HTTPTAG_STR(via, s)
2287
2288SOFIAPUBVAR tag_typedef_t httptag_via_str;
2289
2290#define HTTPTAG_VIA_REF(x) HTTPTAG_REF(via, x)
2291SOFIAPUBVAR tag_typedef_t httptag_via_ref;
2292
2293#define HTTPTAG_VIA_STR_REF(x) HTTPTAG_STR_REF(via, x)
2294SOFIAPUBVAR tag_typedef_t httptag_via_str_ref;
2295
2296#if SU_INLINE_TAG_CAST
2298httptag_via_v(http_via_t const *v)
2299{ return (tag_value_t)v; }
2301httptag_via_vr(http_via_t const **vp)
2302{ return (tag_value_t)vp; }
2303#else
2304#define httptag_via_v(v) (tag_value_t)(v)
2305#define httptag_via_vr(vp) (tag_value_t)(vp)
2306#endif
2307
2319#define HTTPTAG_WARNING(x) HTTPTAG(warning, x)
2320
2321SOFIAPUBVAR tag_typedef_t httptag_warning;
2322
2338#define HTTPTAG_WARNING_STR(s) HTTPTAG_STR(warning, s)
2339
2340SOFIAPUBVAR tag_typedef_t httptag_warning_str;
2341
2342#define HTTPTAG_WARNING_REF(x) HTTPTAG_REF(warning, x)
2343SOFIAPUBVAR tag_typedef_t httptag_warning_ref;
2344
2345#define HTTPTAG_WARNING_STR_REF(x) HTTPTAG_STR_REF(warning, x)
2346SOFIAPUBVAR tag_typedef_t httptag_warning_str_ref;
2347
2348#if SU_INLINE_TAG_CAST
2350httptag_warning_v(http_warning_t const *v)
2351{ return (tag_value_t)v; }
2353httptag_warning_vr(http_warning_t const **vp)
2354{ return (tag_value_t)vp; }
2355#else
2356#define httptag_warning_v(v) (tag_value_t)(v)
2357#define httptag_warning_vr(vp) (tag_value_t)(vp)
2358#endif
2359
2371#define HTTPTAG_WWW_AUTHENTICATE(x) HTTPTAG(www_authenticate, x)
2372
2373SOFIAPUBVAR tag_typedef_t httptag_www_authenticate;
2374
2390#define HTTPTAG_WWW_AUTHENTICATE_STR(s) HTTPTAG_STR(www_authenticate, s)
2391
2392SOFIAPUBVAR tag_typedef_t httptag_www_authenticate_str;
2393
2394#define HTTPTAG_WWW_AUTHENTICATE_REF(x) HTTPTAG_REF(www_authenticate, x)
2395SOFIAPUBVAR tag_typedef_t httptag_www_authenticate_ref;
2396
2397#define HTTPTAG_WWW_AUTHENTICATE_STR_REF(x) HTTPTAG_STR_REF(www_authenticate, x)
2398SOFIAPUBVAR tag_typedef_t httptag_www_authenticate_str_ref;
2399
2400#if SU_INLINE_TAG_CAST
2402httptag_www_authenticate_v(http_www_authenticate_t const *v)
2403{ return (tag_value_t)v; }
2405httptag_www_authenticate_vr(http_www_authenticate_t const **vp)
2406{ return (tag_value_t)vp; }
2407#else
2408#define httptag_www_authenticate_v(v) (tag_value_t)(v)
2409#define httptag_www_authenticate_vr(vp) (tag_value_t)(vp)
2410#endif
2411
2423#define HTTPTAG_PROXY_CONNECTION(x) HTTPTAG(proxy_connection, x)
2424
2425SOFIAPUBVAR tag_typedef_t httptag_proxy_connection;
2426
2442#define HTTPTAG_PROXY_CONNECTION_STR(s) HTTPTAG_STR(proxy_connection, s)
2443
2444SOFIAPUBVAR tag_typedef_t httptag_proxy_connection_str;
2445
2446#define HTTPTAG_PROXY_CONNECTION_REF(x) HTTPTAG_REF(proxy_connection, x)
2447SOFIAPUBVAR tag_typedef_t httptag_proxy_connection_ref;
2448
2449#define HTTPTAG_PROXY_CONNECTION_STR_REF(x) HTTPTAG_STR_REF(proxy_connection, x)
2450SOFIAPUBVAR tag_typedef_t httptag_proxy_connection_str_ref;
2451
2452#if SU_INLINE_TAG_CAST
2454httptag_proxy_connection_v(http_proxy_connection_t const *v)
2455{ return (tag_value_t)v; }
2457httptag_proxy_connection_vr(http_proxy_connection_t const **vp)
2458{ return (tag_value_t)vp; }
2459#else
2460#define httptag_proxy_connection_v(v) (tag_value_t)(v)
2461#define httptag_proxy_connection_vr(vp) (tag_value_t)(vp)
2462#endif
2463
2475#define HTTPTAG_SET_COOKIE(x) HTTPTAG(set_cookie, x)
2476
2477SOFIAPUBVAR tag_typedef_t httptag_set_cookie;
2478
2494#define HTTPTAG_SET_COOKIE_STR(s) HTTPTAG_STR(set_cookie, s)
2495
2496SOFIAPUBVAR tag_typedef_t httptag_set_cookie_str;
2497
2498#define HTTPTAG_SET_COOKIE_REF(x) HTTPTAG_REF(set_cookie, x)
2499SOFIAPUBVAR tag_typedef_t httptag_set_cookie_ref;
2500
2501#define HTTPTAG_SET_COOKIE_STR_REF(x) HTTPTAG_STR_REF(set_cookie, x)
2502SOFIAPUBVAR tag_typedef_t httptag_set_cookie_str_ref;
2503
2504#if SU_INLINE_TAG_CAST
2506httptag_set_cookie_v(http_set_cookie_t const *v)
2507{ return (tag_value_t)v; }
2509httptag_set_cookie_vr(http_set_cookie_t const **vp)
2510{ return (tag_value_t)vp; }
2511#else
2512#define httptag_set_cookie_v(v) (tag_value_t)(v)
2513#define httptag_set_cookie_vr(vp) (tag_value_t)(vp)
2514#endif
2515
2527#define HTTPTAG_COOKIE(x) HTTPTAG(cookie, x)
2528
2529SOFIAPUBVAR tag_typedef_t httptag_cookie;
2530
2546#define HTTPTAG_COOKIE_STR(s) HTTPTAG_STR(cookie, s)
2547
2548SOFIAPUBVAR tag_typedef_t httptag_cookie_str;
2549
2550#define HTTPTAG_COOKIE_REF(x) HTTPTAG_REF(cookie, x)
2551SOFIAPUBVAR tag_typedef_t httptag_cookie_ref;
2552
2553#define HTTPTAG_COOKIE_STR_REF(x) HTTPTAG_STR_REF(cookie, x)
2554SOFIAPUBVAR tag_typedef_t httptag_cookie_str_ref;
2555
2556#if SU_INLINE_TAG_CAST
2558httptag_cookie_v(http_cookie_t const *v)
2559{ return (tag_value_t)v; }
2561httptag_cookie_vr(http_cookie_t const **vp)
2562{ return (tag_value_t)vp; }
2563#else
2564#define httptag_cookie_v(v) (tag_value_t)(v)
2565#define httptag_cookie_vr(vp) (tag_value_t)(vp)
2566#endif
2567
2579#define HTTPTAG_MIME_VERSION(x) HTTPTAG(mime_version, x)
2580
2581SOFIAPUBVAR tag_typedef_t httptag_mime_version;
2582
2598#define HTTPTAG_MIME_VERSION_STR(s) HTTPTAG_STR(mime_version, s)
2599
2600SOFIAPUBVAR tag_typedef_t httptag_mime_version_str;
2601
2602#define HTTPTAG_MIME_VERSION_REF(x) HTTPTAG_REF(mime_version, x)
2603SOFIAPUBVAR tag_typedef_t httptag_mime_version_ref;
2604
2605#define HTTPTAG_MIME_VERSION_STR_REF(x) HTTPTAG_STR_REF(mime_version, x)
2606SOFIAPUBVAR tag_typedef_t httptag_mime_version_str_ref;
2607
2608#if SU_INLINE_TAG_CAST
2610httptag_mime_version_v(http_mime_version_t const *v)
2611{ return (tag_value_t)v; }
2613httptag_mime_version_vr(http_mime_version_t const **vp)
2614{ return (tag_value_t)vp; }
2615#else
2616#define httptag_mime_version_v(v) (tag_value_t)(v)
2617#define httptag_mime_version_vr(vp) (tag_value_t)(vp)
2618#endif
2619
2631#define HTTPTAG_CONTENT_ENCODING(x) HTTPTAG(content_encoding, x)
2632
2633SOFIAPUBVAR tag_typedef_t httptag_content_encoding;
2634
2650#define HTTPTAG_CONTENT_ENCODING_STR(s) HTTPTAG_STR(content_encoding, s)
2651
2652SOFIAPUBVAR tag_typedef_t httptag_content_encoding_str;
2653
2654#define HTTPTAG_CONTENT_ENCODING_REF(x) HTTPTAG_REF(content_encoding, x)
2655SOFIAPUBVAR tag_typedef_t httptag_content_encoding_ref;
2656
2657#define HTTPTAG_CONTENT_ENCODING_STR_REF(x) HTTPTAG_STR_REF(content_encoding, x)
2658SOFIAPUBVAR tag_typedef_t httptag_content_encoding_str_ref;
2659
2660#if SU_INLINE_TAG_CAST
2662httptag_content_encoding_v(http_content_encoding_t const *v)
2663{ return (tag_value_t)v; }
2665httptag_content_encoding_vr(http_content_encoding_t const **vp)
2666{ return (tag_value_t)vp; }
2667#else
2668#define httptag_content_encoding_v(v) (tag_value_t)(v)
2669#define httptag_content_encoding_vr(vp) (tag_value_t)(vp)
2670#endif
2671
2683#define HTTPTAG_CONTENT_LANGUAGE(x) HTTPTAG(content_language, x)
2684
2685SOFIAPUBVAR tag_typedef_t httptag_content_language;
2686
2702#define HTTPTAG_CONTENT_LANGUAGE_STR(s) HTTPTAG_STR(content_language, s)
2703
2704SOFIAPUBVAR tag_typedef_t httptag_content_language_str;
2705
2706#define HTTPTAG_CONTENT_LANGUAGE_REF(x) HTTPTAG_REF(content_language, x)
2707SOFIAPUBVAR tag_typedef_t httptag_content_language_ref;
2708
2709#define HTTPTAG_CONTENT_LANGUAGE_STR_REF(x) HTTPTAG_STR_REF(content_language, x)
2710SOFIAPUBVAR tag_typedef_t httptag_content_language_str_ref;
2711
2712#if SU_INLINE_TAG_CAST
2714httptag_content_language_v(http_content_language_t const *v)
2715{ return (tag_value_t)v; }
2717httptag_content_language_vr(http_content_language_t const **vp)
2718{ return (tag_value_t)vp; }
2719#else
2720#define httptag_content_language_v(v) (tag_value_t)(v)
2721#define httptag_content_language_vr(vp) (tag_value_t)(vp)
2722#endif
2723
2735#define HTTPTAG_CONTENT_LENGTH(x) HTTPTAG(content_length, x)
2736
2737SOFIAPUBVAR tag_typedef_t httptag_content_length;
2738
2754#define HTTPTAG_CONTENT_LENGTH_STR(s) HTTPTAG_STR(content_length, s)
2755
2756SOFIAPUBVAR tag_typedef_t httptag_content_length_str;
2757
2758#define HTTPTAG_CONTENT_LENGTH_REF(x) HTTPTAG_REF(content_length, x)
2759SOFIAPUBVAR tag_typedef_t httptag_content_length_ref;
2760
2761#define HTTPTAG_CONTENT_LENGTH_STR_REF(x) HTTPTAG_STR_REF(content_length, x)
2762SOFIAPUBVAR tag_typedef_t httptag_content_length_str_ref;
2763
2764#if SU_INLINE_TAG_CAST
2766httptag_content_length_v(http_content_length_t const *v)
2767{ return (tag_value_t)v; }
2769httptag_content_length_vr(http_content_length_t const **vp)
2770{ return (tag_value_t)vp; }
2771#else
2772#define httptag_content_length_v(v) (tag_value_t)(v)
2773#define httptag_content_length_vr(vp) (tag_value_t)(vp)
2774#endif
2775
2787#define HTTPTAG_CONTENT_LOCATION(x) HTTPTAG(content_location, x)
2788
2789SOFIAPUBVAR tag_typedef_t httptag_content_location;
2790
2806#define HTTPTAG_CONTENT_LOCATION_STR(s) HTTPTAG_STR(content_location, s)
2807
2808SOFIAPUBVAR tag_typedef_t httptag_content_location_str;
2809
2810#define HTTPTAG_CONTENT_LOCATION_REF(x) HTTPTAG_REF(content_location, x)
2811SOFIAPUBVAR tag_typedef_t httptag_content_location_ref;
2812
2813#define HTTPTAG_CONTENT_LOCATION_STR_REF(x) HTTPTAG_STR_REF(content_location, x)
2814SOFIAPUBVAR tag_typedef_t httptag_content_location_str_ref;
2815
2816#if SU_INLINE_TAG_CAST
2818httptag_content_location_v(http_content_location_t const *v)
2819{ return (tag_value_t)v; }
2821httptag_content_location_vr(http_content_location_t const **vp)
2822{ return (tag_value_t)vp; }
2823#else
2824#define httptag_content_location_v(v) (tag_value_t)(v)
2825#define httptag_content_location_vr(vp) (tag_value_t)(vp)
2826#endif
2827
2839#define HTTPTAG_CONTENT_MD5(x) HTTPTAG(content_md5, x)
2840
2841SOFIAPUBVAR tag_typedef_t httptag_content_md5;
2842
2858#define HTTPTAG_CONTENT_MD5_STR(s) HTTPTAG_STR(content_md5, s)
2859
2860SOFIAPUBVAR tag_typedef_t httptag_content_md5_str;
2861
2862#define HTTPTAG_CONTENT_MD5_REF(x) HTTPTAG_REF(content_md5, x)
2863SOFIAPUBVAR tag_typedef_t httptag_content_md5_ref;
2864
2865#define HTTPTAG_CONTENT_MD5_STR_REF(x) HTTPTAG_STR_REF(content_md5, x)
2866SOFIAPUBVAR tag_typedef_t httptag_content_md5_str_ref;
2867
2868#if SU_INLINE_TAG_CAST
2870httptag_content_md5_v(http_content_md5_t const *v)
2871{ return (tag_value_t)v; }
2873httptag_content_md5_vr(http_content_md5_t const **vp)
2874{ return (tag_value_t)vp; }
2875#else
2876#define httptag_content_md5_v(v) (tag_value_t)(v)
2877#define httptag_content_md5_vr(vp) (tag_value_t)(vp)
2878#endif
2879
2891#define HTTPTAG_CONTENT_RANGE(x) HTTPTAG(content_range, x)
2892
2893SOFIAPUBVAR tag_typedef_t httptag_content_range;
2894
2910#define HTTPTAG_CONTENT_RANGE_STR(s) HTTPTAG_STR(content_range, s)
2911
2912SOFIAPUBVAR tag_typedef_t httptag_content_range_str;
2913
2914#define HTTPTAG_CONTENT_RANGE_REF(x) HTTPTAG_REF(content_range, x)
2915SOFIAPUBVAR tag_typedef_t httptag_content_range_ref;
2916
2917#define HTTPTAG_CONTENT_RANGE_STR_REF(x) HTTPTAG_STR_REF(content_range, x)
2918SOFIAPUBVAR tag_typedef_t httptag_content_range_str_ref;
2919
2920#if SU_INLINE_TAG_CAST
2922httptag_content_range_v(http_content_range_t const *v)
2923{ return (tag_value_t)v; }
2925httptag_content_range_vr(http_content_range_t const **vp)
2926{ return (tag_value_t)vp; }
2927#else
2928#define httptag_content_range_v(v) (tag_value_t)(v)
2929#define httptag_content_range_vr(vp) (tag_value_t)(vp)
2930#endif
2931
2943#define HTTPTAG_CONTENT_TYPE(x) HTTPTAG(content_type, x)
2944
2945SOFIAPUBVAR tag_typedef_t httptag_content_type;
2946
2962#define HTTPTAG_CONTENT_TYPE_STR(s) HTTPTAG_STR(content_type, s)
2963
2964SOFIAPUBVAR tag_typedef_t httptag_content_type_str;
2965
2966#define HTTPTAG_CONTENT_TYPE_REF(x) HTTPTAG_REF(content_type, x)
2967SOFIAPUBVAR tag_typedef_t httptag_content_type_ref;
2968
2969#define HTTPTAG_CONTENT_TYPE_STR_REF(x) HTTPTAG_STR_REF(content_type, x)
2970SOFIAPUBVAR tag_typedef_t httptag_content_type_str_ref;
2971
2972#if SU_INLINE_TAG_CAST
2974httptag_content_type_v(http_content_type_t const *v)
2975{ return (tag_value_t)v; }
2977httptag_content_type_vr(http_content_type_t const **vp)
2978{ return (tag_value_t)vp; }
2979#else
2980#define httptag_content_type_v(v) (tag_value_t)(v)
2981#define httptag_content_type_vr(vp) (tag_value_t)(vp)
2982#endif
2983
2995#define HTTPTAG_UNKNOWN(x) HTTPTAG(unknown, x)
2996
2997SOFIAPUBVAR tag_typedef_t httptag_unknown;
2998
3014#define HTTPTAG_UNKNOWN_STR(s) HTTPTAG_STR(unknown, s)
3015
3016SOFIAPUBVAR tag_typedef_t httptag_unknown_str;
3017
3018#define HTTPTAG_UNKNOWN_REF(x) HTTPTAG_REF(unknown, x)
3019SOFIAPUBVAR tag_typedef_t httptag_unknown_ref;
3020
3021#define HTTPTAG_UNKNOWN_STR_REF(x) HTTPTAG_STR_REF(unknown, x)
3022SOFIAPUBVAR tag_typedef_t httptag_unknown_str_ref;
3023
3024#if SU_INLINE_TAG_CAST
3026httptag_unknown_v(http_unknown_t const *v)
3027{ return (tag_value_t)v; }
3029httptag_unknown_vr(http_unknown_t const **vp)
3030{ return (tag_value_t)vp; }
3031#else
3032#define httptag_unknown_v(v) (tag_value_t)(v)
3033#define httptag_unknown_vr(vp) (tag_value_t)(vp)
3034#endif
3035
3047#define HTTPTAG_ERROR(x) HTTPTAG(error, x)
3048
3049SOFIAPUBVAR tag_typedef_t httptag_error;
3050
3066#define HTTPTAG_ERROR_STR(s) HTTPTAG_STR(error, s)
3067
3068SOFIAPUBVAR tag_typedef_t httptag_error_str;
3069
3070#define HTTPTAG_ERROR_REF(x) HTTPTAG_REF(error, x)
3071SOFIAPUBVAR tag_typedef_t httptag_error_ref;
3072
3073#define HTTPTAG_ERROR_STR_REF(x) HTTPTAG_STR_REF(error, x)
3074SOFIAPUBVAR tag_typedef_t httptag_error_str_ref;
3075
3076#if SU_INLINE_TAG_CAST
3078httptag_error_v(http_error_t const *v)
3079{ return (tag_value_t)v; }
3081httptag_error_vr(http_error_t const **vp)
3082{ return (tag_value_t)vp; }
3083#else
3084#define httptag_error_v(v) (tag_value_t)(v)
3085#define httptag_error_vr(vp) (tag_value_t)(vp)
3086#endif
3087
3099#define HTTPTAG_SEPARATOR(x) HTTPTAG(separator, x)
3100
3101SOFIAPUBVAR tag_typedef_t httptag_separator;
3102
3118#define HTTPTAG_SEPARATOR_STR(s) HTTPTAG_STR(separator, s)
3119
3120SOFIAPUBVAR tag_typedef_t httptag_separator_str;
3121
3122#define HTTPTAG_SEPARATOR_REF(x) HTTPTAG_REF(separator, x)
3123SOFIAPUBVAR tag_typedef_t httptag_separator_ref;
3124
3125#define HTTPTAG_SEPARATOR_STR_REF(x) HTTPTAG_STR_REF(separator, x)
3126SOFIAPUBVAR tag_typedef_t httptag_separator_str_ref;
3127
3128#if SU_INLINE_TAG_CAST
3130httptag_separator_v(http_separator_t const *v)
3131{ return (tag_value_t)v; }
3133httptag_separator_vr(http_separator_t const **vp)
3134{ return (tag_value_t)vp; }
3135#else
3136#define httptag_separator_v(v) (tag_value_t)(v)
3137#define httptag_separator_vr(vp) (tag_value_t)(vp)
3138#endif
3139
3151#define HTTPTAG_PAYLOAD(x) HTTPTAG(payload, x)
3152
3153SOFIAPUBVAR tag_typedef_t httptag_payload;
3154
3170#define HTTPTAG_PAYLOAD_STR(s) HTTPTAG_STR(payload, s)
3171
3172SOFIAPUBVAR tag_typedef_t httptag_payload_str;
3173
3174#define HTTPTAG_PAYLOAD_REF(x) HTTPTAG_REF(payload, x)
3175SOFIAPUBVAR tag_typedef_t httptag_payload_ref;
3176
3177#define HTTPTAG_PAYLOAD_STR_REF(x) HTTPTAG_STR_REF(payload, x)
3178SOFIAPUBVAR tag_typedef_t httptag_payload_str_ref;
3179
3180#if SU_INLINE_TAG_CAST
3182httptag_payload_v(http_payload_t const *v)
3183{ return (tag_value_t)v; }
3185httptag_payload_vr(http_payload_t const **vp)
3186{ return (tag_value_t)vp; }
3187#else
3188#define httptag_payload_v(v) (tag_value_t)(v)
3189#define httptag_payload_vr(vp) (tag_value_t)(vp)
3190#endif
3191
3192SOFIA_END_DECLS
3193#endif /* !defined(HTTP_TAG_H) */
HTTP message, methods, headers.
msg_error_t http_error_t
Erroneous header.
Definition http.h:161
msg_generic_t http_unknown_t
Unknown header.
Definition http.h:163
msg_payload_t http_payload_t
Entity-body.
Definition http.h:167
msg_separator_t http_separator_t
Separator line between headers and message contents.
Definition http.h:165
tag_typedef_t httptag_http
Tag for http_t.
Definition http_tag.c:51
tag_typedef_t httptag_header
Tag for header string.
Definition http_tag.c:53
tag_typedef_t httptag_header_str
Tag for header string.
Definition http_tag.c:55
Content-Range.
Definition http.h:210
Date, Expires, If-Modified-Since, If-Unmodified-Since, Last-Modified.
Definition http.h:219
Host.
Definition http.h:226
If-Range.
Definition http.h:234
Location, Referer.
Definition http.h:242
Max-Forwards.
Definition http.h:249
Range.
Definition http.h:257
HTTP request line.
Definition http.h:179
Retry-After.
Definition http.h:265
HTTP message object.
Definition http.h:323
HTTP status line.
Definition http.h:189
TE.
Definition http.h:273
Via.
Definition http.h:282
#define SOFIAPUBVAR
#define su_inline
struct tag_type_s const tag_typedef_t[1]
intptr_t tag_value_t
struct tag_class_s const tag_class_t
Union representing any HTTP header.
Definition http.h:403

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