Main Page | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals

wsp_strings.def

Go to the documentation of this file.
00001 /* ==================================================================== 
00002  * The Kannel Software License, Version 1.0 
00003  * 
00004  * Copyright (c) 2001-2008 Kannel Group  
00005  * Copyright (c) 1998-2001 WapIT Ltd.   
00006  * All rights reserved. 
00007  * 
00008  * Redistribution and use in source and binary forms, with or without 
00009  * modification, are permitted provided that the following conditions 
00010  * are met: 
00011  * 
00012  * 1. Redistributions of source code must retain the above copyright 
00013  *    notice, this list of conditions and the following disclaimer. 
00014  * 
00015  * 2. Redistributions in binary form must reproduce the above copyright 
00016  *    notice, this list of conditions and the following disclaimer in 
00017  *    the documentation and/or other materials provided with the 
00018  *    distribution. 
00019  * 
00020  * 3. The end-user documentation included with the redistribution, 
00021  *    if any, must include the following acknowledgment: 
00022  *       "This product includes software developed by the 
00023  *        Kannel Group (http://www.kannel.org/)." 
00024  *    Alternately, this acknowledgment may appear in the software itself, 
00025  *    if and wherever such third-party acknowledgments normally appear. 
00026  * 
00027  * 4. The names "Kannel" and "Kannel Group" must not be used to 
00028  *    endorse or promote products derived from this software without 
00029  *    prior written permission. For written permission, please  
00030  *    contact org@kannel.org. 
00031  * 
00032  * 5. Products derived from this software may not be called "Kannel", 
00033  *    nor may "Kannel" appear in their name, without prior written 
00034  *    permission of the Kannel Group. 
00035  * 
00036  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED 
00037  * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 
00038  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 
00039  * DISCLAIMED.  IN NO EVENT SHALL THE KANNEL GROUP OR ITS CONTRIBUTORS 
00040  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,  
00041  * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT  
00042  * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR  
00043  * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,  
00044  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE  
00045  * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,  
00046  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
00047  * ==================================================================== 
00048  * 
00049  * This software consists of voluntary contributions made by many 
00050  * individuals on behalf of the Kannel Group.  For more information on  
00051  * the Kannel Group, please see <http://www.kannel.org/>. 
00052  * 
00053  * Portions of this software are based upon software originally written at  
00054  * WapIT Ltd., Helsinki, Finland for the Kannel project.  
00055  */ 
00056 
00057 /****  Preprocessor magic ****/
00058 
00059 /* String table with entries starting at 0 and numbered upwards. */
00060 #if !defined(LINEAR)
00061 #error "Required macro LINEAR is missing."
00062 #endif
00063 
00064 /* Entry in a LINEAR table.  Default is to do nothing for it. */
00065 #if !defined(STRING)
00066 #define STRING
00067 #endif
00068 
00069 /* String table where entries have assigned numbers.  Multiple
00070  * entries can have the same number (the first listed entry is used
00071  * when looking up by number). */
00072 #if !defined(NUMBERED)
00073 #define NUMBERED LINEAR
00074 #endif
00075 
00076 /* Entry in a NUMBERED table */
00077 #if !defined(ASSIGN)
00078 #define ASSIGN(string, number) STRING(string)
00079 #endif
00080 
00081 /* Entry in a versioned NUMBERED table */
00082 #if !defined(VASSIGN)
00083 #define VASSIGN(version, string, number) VSTRING(version, string)
00084 #endif
00085 
00086 /* Just like LINEAR, but an enumerated type name##_enum is defined for
00087  * the entries. */
00088 #if !defined(NAMED)
00089 #define NAMED LINEAR
00090 #endif
00091 
00092 /* Entry in a NAMED table */
00093 #if !defined(NSTRING)
00094 #define NSTRING(string, name) STRING(string)
00095 #endif
00096 
00097 /* Entry in a versioned NAMED table */
00098 #if !defined(VNSTRING)
00099 #define VNSTRING(version, string, name) VSTRING(version, string)
00100 #endif
00101 
00102 /**** End of preprocessor magic.  Tables start here. ****/
00103 
00104 /* Table 39. Header Field Name Assignments. Note that headers Accept-Charset, Accept-Encoding,
00105  * Cache-Control and Content-Range are defined twice. First ones should be used only for com-
00106  * pability reasons. */
00107 NAMED(header,
00108 VNSTRING(WSP_1_1, "Accept", WSP_HEADER_ACCEPT)
00109 VNSTRING(WSP_1_1, "Accept-Charset", WSP_HEADER_ACCEPT_CHARSET)
00110 VNSTRING(WSP_1_1, "Accept-Encoding", WSP_HEADER_ACCEPT_ENCODING)
00111 VNSTRING(WSP_1_1, "Accept-Language", WSP_HEADER_ACCEPT_LANGUAGE)
00112 VNSTRING(WSP_1_1, "Accept-Ranges", WSP_HEADER_ACCEPT_RANGES)
00113 VNSTRING(WSP_1_1, "Age", WSP_HEADER_AGE)
00114 VNSTRING(WSP_1_1, "Allow", WSP_HEADER_ALLOW)
00115 VNSTRING(WSP_1_1, "Authorization", WSP_HEADER_AUTHORIZATION)
00116 VNSTRING(WSP_1_1, "Cache-Control", WSP_HEADER_CACHE_CONTROL)
00117 VNSTRING(WSP_1_1, "Connection", WSP_HEADER_CONNECTION)
00118 VNSTRING(WSP_1_1, "Content-Base", WSP_HEADER_CONTENT_BASE)
00119 VNSTRING(WSP_1_1, "Content-Encoding", WSP_HEADER_CONTENT_ENCODING)
00120 VNSTRING(WSP_1_1, "Content-Language", WSP_HEADER_CONTENT_LANGUAGE)
00121 VNSTRING(WSP_1_1, "Content-Length", WSP_HEADER_CONTENT_LENGTH)
00122 VNSTRING(WSP_1_1, "Content-Location", WSP_HEADER_CONTENT_LOCATION)
00123 VNSTRING(WSP_1_1, "Content-MD5", WSP_HEADER_CONTENT_MD5)
00124 VNSTRING(WSP_1_1, "Content-Range", WSP_HEADER_CONTENT_RANGE)
00125 VNSTRING(WSP_1_1, "Content-Type", WSP_HEADER_CONTENT_TYPE)
00126 VNSTRING(WSP_1_1, "Date", WSP_HEADER_DATE)
00127 VNSTRING(WSP_1_1, "Etag", WSP_HEADER_ETAG)
00128 VNSTRING(WSP_1_1, "Expires", WSP_HEADER_EXPIRES)
00129 VNSTRING(WSP_1_1, "From", WSP_HEADER_FROM)
00130 VNSTRING(WSP_1_1, "Host", WSP_HEADER_HOST)
00131 VNSTRING(WSP_1_1, "If-Modified-Since", WSP_HEADER_IF_MODIFIED_SINCE)
00132 VNSTRING(WSP_1_1, "If-Match", WSP_HEADER_IF_MATCH)
00133 VNSTRING(WSP_1_1, "If-None-Match", WSP_HEADER_IF_NONE_MATCH)
00134 VNSTRING(WSP_1_1, "If-Range", WSP_HEADER_IF_RANGE)
00135 VNSTRING(WSP_1_1, "If-Unmodified-Since", WSP_HEADER_IF_UNMODIFIED_SINCE)
00136 VNSTRING(WSP_1_1, "Location", WSP_HEADER_LOCATION)
00137 VNSTRING(WSP_1_1, "Last-Modified", WSP_HEADER_LAST_MODIFIED)
00138 VNSTRING(WSP_1_1, "Max-Forwards", WSP_HEADER_MAX_FORWARDS)
00139 VNSTRING(WSP_1_1, "Pragma", WSP_HEADER_PRAGMA)
00140 VNSTRING(WSP_1_1, "Proxy-Authenticate", WSP_HEADER_PROXY_AUTHENTICATE)
00141 VNSTRING(WSP_1_1, "Proxy-Authorization", WSP_HEADER_PROXY_AUTHORIZATION)
00142 VNSTRING(WSP_1_1, "Public", WSP_HEADER_PUBLIC)
00143 VNSTRING(WSP_1_1, "Range", WSP_HEADER_RANGE)
00144 VNSTRING(WSP_1_1, "Referer", WSP_HEADER_REFERER)
00145 VNSTRING(WSP_1_1, "Retry-After", WSP_HEADER_RETRY_AFTER)
00146 VNSTRING(WSP_1_1, "Server", WSP_HEADER_SERVER)
00147 VNSTRING(WSP_1_1, "Transfer-Encoding", WSP_HEADER_TRANSFER_ENCODING)
00148 VNSTRING(WSP_1_1, "Upgrade", WSP_HEADER_UPGRADE)
00149 VNSTRING(WSP_1_1, "User-Agent", WSP_HEADER_USER_AGENT)
00150 VNSTRING(WSP_1_1, "Vary", WSP_HEADER_VARY)
00151 VNSTRING(WSP_1_1, "Via", WSP_HEADER_VIA)
00152 VNSTRING(WSP_1_1, "Warning", WSP_HEADER_WARNING)
00153 VNSTRING(WSP_1_1, "WWW-Authenticate", WSP_HEADER_WWW_AUTHENTICATE)
00154 VNSTRING(WSP_1_1, "Content-Disposition", WSP_HEADER_CONTENT_DISPOSITION)
00155 VNSTRING(WSP_1_2, "X-Wap-Application-Id", WSP_HEADER_X_WAP_APPLICATION_ID)
00156 VNSTRING(WSP_1_2, "X-Wap-Content-URI", WSP_HEADER_X_WAP_CONTENT_URI)
00157 VNSTRING(WSP_1_2, "X-Wap-Initiator-URI", WSP_HEADER_X_WAP_INITIATOR_URI)
00158 VNSTRING(WSP_1_2, "Accept-Application", WSP_HEADER_ACCEPT_APPLICATION)
00159 VNSTRING(WSP_1_2, "Bearer-Indication", WSP_HEADER_BEARER_INDICATION)
00160 VNSTRING(WSP_1_2, "Push-Flag", WSP_HEADER_PUSH_FLAG)
00161 VNSTRING(WSP_1_2, "Profile", WSP_HEADER_PROFILE)
00162 VNSTRING(WSP_1_2, "Profile-Diff", WSP_HEADER_PROFILE_DIFF)
00163 VNSTRING(WSP_1_2, "Profile-Warning", WSP_HEADER_PROFILE_WARNING)
00164 VNSTRING(WSP_1_3, "Expect", WSP_HEADER_EXPECT)
00165 VNSTRING(WSP_1_3, "TE", WSP_HEADER_TE)
00166 VNSTRING(WSP_1_3, "Trailer", WSP_HEADER_TRAILER)
00167 VNSTRING(WSP_1_3, "Accept-Charset", WSP_HEADER_ACCEPT_CHARSET_V13)
00168 VNSTRING(WSP_1_3, "Accept-Encoding", WSP_HEADER_ACCEPT_ENCODING_V13)
00169 VNSTRING(WSP_1_3, "Cache-Control", WSP_HEADER_CACHE_CONTROL_V13)
00170 VNSTRING(WSP_1_3, "Content-Range", WSP_HEADER_CONTENT_RANGE_V13)
00171 VNSTRING(WSP_1_3, "X-WAP-Tod", WSP_HEADER_X_WAP_TOD)
00172 VNSTRING(WSP_1_3, "Content-ID", WSP_HEADER_CONTENT_ID)
00173 VNSTRING(WSP_1_3, "Set-Cookie", WSP_HEADER_SET_COOKIE)
00174 VNSTRING(WSP_1_3, "Cookie", WSP_HEADER_COOKIE)
00175 VNSTRING(WSP_1_3, "Encoding-Version", WSP_HEADER_ENCODING_VERSION)
00176 VNSTRING(WSP_1_4, "Profile-Warning", WSP_HEADER_PROFILE_WARNING_V14)
00177 VNSTRING(WSP_1_4, "Content-Disposition", WSP_HEADER_CONTENT_DISPOSITION_V14)
00178 VNSTRING(WSP_1_4, "X-WAP-Security", WSP_HEADER_X_WAP_SECURITY)
00179 VNSTRING(WSP_1_4, "Cache-Control", WSP_HEADER_CACHE_CONTROL_V14)
00180 VNSTRING(WSP_1_5, "X-Wap-Loc-Invocation", WSP_HEADER_X_WAP_LOC_INVOCATION)
00181 VNSTRING(WSP_1_5, "X-Wap-Loc-Delivery", WSP_HEADER_X_WAP_LOC_DELIVERY)
00182 )
00183 
00184 /* Table 40. Well Known WSP Content Type Codes Assignments. 
00185  * These have been defined by WINA, 
00186  * see http://www.wapforum.org/wina/wsp-content-type.htm
00187  * Now they are maintained by OMNA, see URL
00188  * 
00189  * http://www.openmobilealliance.org/tech/omna/index.htm (depricated)
00190  * http://www.openmobilealliance.org/Technical/omna/omna-wsp-content-type.aspx
00191  */
00192 LINEAR(content_type,
00193 VSTRING(WSP_1_1, "*/*")
00194 VSTRING(WSP_1_1, "text/*")
00195 VSTRING(WSP_1_1, "text/html")
00196 VSTRING(WSP_1_1, "text/plain")
00197 VSTRING(WSP_1_1, "text/x-hdml")
00198 VSTRING(WSP_1_1, "text/x-ttml")
00199 VSTRING(WSP_1_1, "text/x-vCalendar")
00200 VSTRING(WSP_1_1, "text/x-vCard")
00201 VSTRING(WSP_1_1, "text/vnd.wap.wml")
00202 VSTRING(WSP_1_1, "text/vnd.wap.wmlscript")
00203 VSTRING(WSP_1_1, "application/vnd.wap.catc")
00204 VSTRING(WSP_1_1, "multipart/*")
00205 VSTRING(WSP_1_1, "multipart/mixed")
00206 VSTRING(WSP_1_1, "multipart/form-data")
00207 VSTRING(WSP_1_1, "multipart/byteranges")
00208 VSTRING(WSP_1_1, "multipart/alternative")
00209 VSTRING(WSP_1_1, "application/*")
00210 VSTRING(WSP_1_1, "application/java-vm")
00211 VSTRING(WSP_1_1, "application/x-www-form-urlencoded")
00212 VSTRING(WSP_1_1, "application/x-hdmlc")
00213 VSTRING(WSP_1_1, "application/vnd.wap.wmlc")
00214 VSTRING(WSP_1_1, "application/vnd.wap.wmlscriptc")
00215 VSTRING(WSP_1_1, "application/vnd.wap.wsic")
00216 VSTRING(WSP_1_1, "application/vnd.wap.uaprof")
00217 VSTRING(WSP_1_1, "application/vnd.wap.wtls-ca-certificate")
00218 VSTRING(WSP_1_1, "application/vnd.wap.wtls-user-certificate")
00219 VSTRING(WSP_1_1, "application/x-x509-ca-cert")
00220 VSTRING(WSP_1_1, "application/x-x509-user-cert")
00221 VSTRING(WSP_1_1, "image/*")
00222 VSTRING(WSP_1_1, "image/gif")
00223 VSTRING(WSP_1_1, "image/jpeg")
00224 VSTRING(WSP_1_1, "image/tiff")
00225 VSTRING(WSP_1_1, "image/png")
00226 VSTRING(WSP_1_1, "image/vnd.wap.wbmp")
00227 VSTRING(WSP_1_1, "application/vnd.wap.multipart.*")
00228 VSTRING(WSP_1_1, "application/vnd.wap.multipart.mixed")
00229 VSTRING(WSP_1_1, "application/vnd.wap.multipart.form-data")
00230 VSTRING(WSP_1_1, "application/vnd.wap.multipart.byteranges")
00231 VSTRING(WSP_1_1, "application/vnd.wap.multipart.alternative")
00232 VSTRING(WSP_1_1, "application/xml")
00233 VSTRING(WSP_1_1, "text/xml")
00234 VSTRING(WSP_1_1, "application/vnd.wap.wbxml")
00235 VSTRING(WSP_1_1, "application/x-x968-cross-cert")
00236 VSTRING(WSP_1_1, "application/x-x968-ca-cert")
00237 VSTRING(WSP_1_1, "application/x-x968-user-cert")
00238 VSTRING(WSP_1_1, "text/vnd.wap.si")
00239 VSTRING(WSP_1_2, "application/vnd.wap.sic")
00240 VSTRING(WSP_1_2, "text/vnd.wap.sl")
00241 VSTRING(WSP_1_2, "application/vnd.wap.slc")
00242 VSTRING(WSP_1_2, "text/vnd.wap.co")
00243 VSTRING(WSP_1_2, "application/vnd.wap.coc")
00244 VSTRING(WSP_1_2, "application/vnd.wap.multipart.related")
00245 VSTRING(WSP_1_2, "application/vnd.wap.sia")
00246 VSTRING(WSP_1_3, "text/vnd.wap.connectivity-xml")
00247 VSTRING(WSP_1_3, "application/vnd.wap.connectivity-wbxml")
00248 VSTRING(WSP_1_4, "application/pkcs7-mime")
00249 VSTRING(WSP_1_4, "application/vnd.wap.hashed-certificate")
00250 VSTRING(WSP_1_4, "application/vnd.wap.signed-certificate")
00251 VSTRING(WSP_1_4, "application/vnd.wap.cert-response")
00252 VSTRING(WSP_1_4, "application/xhtml+xml")
00253 VSTRING(WSP_1_4, "application/wml+xml")
00254 VSTRING(WSP_1_4, "text/css")
00255 VSTRING(WSP_1_4, "application/vnd.wap.mms-message")
00256 VSTRING(WSP_1_4, "application/vnd.wap.rollover-certificate")
00257 VSTRING(WSP_1_5, "application/vnd.wap.locc+wbxml") 
00258 VSTRING(WSP_1_5, "application/vnd.wap.loc+xml")
00259 VSTRING(WSP_1_5, "application/vnd.syncml.dm+wbxml") 
00260 VSTRING(WSP_1_5, "application/vnd.syncml.dm+xml") 
00261 VSTRING(WSP_1_5, "application/vnd.syncml.notification") 
00262 VSTRING(WSP_1_5, "application/vnd.wap.xhtml+xml") 
00263 VSTRING(WSP_1_5, "application/vnd.wv.csp.cir") 
00264 VSTRING(WSP_1_5, "application/vnd.oma.dd+xml") 
00265 VSTRING(WSP_1_5, "application/vnd.oma.drm.message") 
00266 VSTRING(WSP_1_5, "application/vnd.oma.drm.content")
00267 VSTRING(WSP_1_5, "application/vnd.oma.drm.rights+xml") 
00268 VSTRING(WSP_1_5, "application/vnd.oma.drm.rights+wbxml")
00269 VSTRING(WSP_1_5, "application/vnd.wv.csp+xml")
00270 VSTRING(WSP_1_5, "application/vnd.wv.csp+wbxml")
00271 VSTRING(WSP_1_5, "application/vnd.syncml.ds.notification")
00272 VSTRING(WSP_1_6, "audio/*")
00273 VSTRING(WSP_1_6, "video/*") 
00274 VSTRING(WSP_1_6, "application/vnd.oma.dd2+xml")
00275 VSTRING(WSP_1_6, "application/mikey") 
00276 )
00277 
00278 /* Registered WSP Content Type Codes Assignments. 
00279  * Now they are maintained by OMNA, see URL
00280  * 
00281  * http://www.openmobilealliance.org/tech/omna/index.htm (depricated)
00282  * http://www.openmobilealliance.org/Technical/omna/omna-wsp-content-type.aspx
00283  */
00284 NUMBERED(content_type_registered,
00285 ASSIGN("application/vnd.uplanet.cacheop-wbxml", 0x0201)
00286 ASSIGN("application/vnd.uplanet.signal", 0x0202)
00287 ASSIGN("application/vnd.uplanet.alert-wbxml", 0x0203)
00288 ASSIGN("application/vnd.uplanet.list-wbxml", 0x0204)
00289 ASSIGN("application/vnd.uplanet.listcmd-wbxml", 0x0205)
00290 ASSIGN("application/vnd.uplanet.channel-wbxml", 0x0206)
00291 ASSIGN("application/vnd.uplanet.provisioning-status-uri", 0x0207)
00292 ASSIGN("x-wap.multipart/vnd.uplanet.header-set", 0x0208)
00293 ASSIGN("application/vnd.uplanet.bearer-choice-wbxml", 0x0209)
00294 ASSIGN("application/vnd.phonecom.mmc-wbxml", 0x020A)
00295 ASSIGN("application/vnd.nokia.syncset+wbxml", 0x020B)
00296 ASSIGN("image/x-up-wpng", 0x020C)
00297 ASSIGN("application/iota.mmc-wbxml", 0x0300)
00298 ASSIGN("application/iota.mmc-xml", 0x0301)
00299 ASSIGN("application/vnd.syncml+xml", 0x0302)
00300 ASSIGN("application/vnd.syncml+wbxml", 0x0303)
00301 ASSIGN("text/vnd.wap.emn+xml", 0x0304)
00302 ASSIGN("text/calendar", 0x0305)
00303 ASSIGN("application/vnd.omads-email+xml", 0x0306)
00304 ASSIGN("application/vnd.omads-file+xml", 0x0307)
00305 ASSIGN("application/vnd.omads-folder+xml", 0x0308)
00306 ASSIGN("text/directory;profile=vCard", 0x0309)
00307 ASSIGN("application/vnd.wap.emn+wbxml", 0x030A)
00308 ASSIGN("application/vnd.nokia.ipdc-purchase-response", 0x030B)
00309 ASSIGN("application/vnd.motorola.screen3+xml", 0x030C)
00310 ASSIGN("application/vnd.motorola.screen3+gzip", 0x030D)
00311 ASSIGN("application/vnd.cmcc.setting+wbxml", 0x030E)
00312 ASSIGN("application/vnd.cmcc.bombing+wbxml", 0x030F)
00313 ASSIGN("application/vnd.docomo.pf", 0x0310)
00314 ASSIGN("application/vnd.docomo.ub", 0x0311)
00315 ASSIGN("application/vnd.omaloc-supl-init", 0x0312)
00316 ASSIGN("application/vnd.oma.group-usage-list+xml", 0x0313)
00317 ASSIGN("application/oma-directory+xml", 0x0314)
00318 ASSIGN("application/vnd.docomo.pf2", 0x0315)
00319 )
00320 
00321 /* Table 42, Character Set Assignment (partial) */
00322 /* The full list is at
00323  *   ftp://ftp.isi.edu/in-notes/iana/assignments/character-sets
00324  * but the WSP standard lists these values explicitly.
00325  */
00326 NUMBERED(charset,
00327 ASSIGN("big5", 2026)
00328 ASSIGN("iso-10646-ucs-2", 1000)
00329 ASSIGN("iso-8859-1", 4)
00330 ASSIGN("iso-8859-2", 5)
00331 ASSIGN("iso-8859-3", 6)
00332 ASSIGN("iso-8859-4", 7)
00333 ASSIGN("iso-8859-5", 8)
00334 ASSIGN("iso-8859-6", 9)
00335 ASSIGN("iso-8859-7", 10)
00336 ASSIGN("iso-8859-8", 11)
00337 ASSIGN("iso-8859-9", 12)
00338 ASSIGN("shift_JIS", 17)
00339 ASSIGN("us-ascii", 3)
00340 ASSIGN("utf-8", 106)
00341 ASSIGN("utf-16", 1015)
00342 )
00343 
00344 /* Table 38, Well-Known Parameter Assignments 
00345  * Now defined by OMNA, see
00346  * http://www.openmobilealliance.org/tech/omna/omna-wsp-header-param.htm
00347  */
00348 NUMBERED(parameter,
00349 VASSIGN(WSP_1_1, "q", 0)
00350 VASSIGN(WSP_1_1, "charset", 1)
00351 VASSIGN(WSP_1_1, "level", 2)
00352 VASSIGN(WSP_1_1, "type", 3)
00353 VASSIGN(WSP_1_1, "uaprof", 4)
00354 VASSIGN(WSP_1_1, "name", 5)
00355 VASSIGN(WSP_1_1, "filename", 6)
00356 VASSIGN(WSP_1_1, "differences", 7)
00357 VASSIGN(WSP_1_1, "padding", 8)
00358 VASSIGN(WSP_1_2, "type", 9)
00359 VASSIGN(WSP_1_2, "start", 10)
00360 VASSIGN(WSP_1_2, "start-info", 11)
00361 VASSIGN(WSP_1_3, "comment", 12)
00362 VASSIGN(WSP_1_3, "domain", 13)
00363 VASSIGN(WSP_1_3, "max-age", 14)
00364 VASSIGN(WSP_1_3, "path", 15)
00365 VASSIGN(WSP_1_3, "secure", 16)
00366 VASSIGN(WSP_1_4, "sec", 17)
00367 VASSIGN(WSP_1_4, "mac", 18)
00368 VASSIGN(WSP_1_4, "creation-date", 19)
00369 VASSIGN(WSP_1_4, "modification-date", 20)
00370 VASSIGN(WSP_1_4, "read-date", 21)
00371 VASSIGN(WSP_1_4, "size", 22)
00372 VASSIGN(WSP_1_4, "name", 23)
00373 VASSIGN(WSP_1_4, "filename", 24)
00374 VASSIGN(WSP_1_4, "start", 25)
00375 VASSIGN(WSP_1_4, "start-info", 26)
00376 VASSIGN(WSP_1_4, "comment", 27)
00377 VASSIGN(WSP_1_4, "domain", 28)
00378 VASSIGN(WSP_1_4, "path", 29)
00379 )
00380 
00381 /* 8.4.2.18, Content encoding field */
00382 LINEAR(encoding,
00383 STRING("gzip")
00384 STRING("compress")
00385 STRING("deflate")
00386 )
00387 
00388 /* 8.4.2.11, Accept ranges field */
00389 LINEAR(ranges,
00390 STRING("none")
00391 STRING("bytes")
00392 )
00393 
00394 /* 8.4.2.15, Cache-control field */
00395 NAMED(cache_control,
00396 NSTRING("no-cache", WSP_CACHE_CONTROL_NO_CACHE)
00397 NSTRING("no-store", WSP_CACHE_CONTROL_NO_STORE)
00398 NSTRING("max-age", WSP_CACHE_CONTROL_MAX_AGE)
00399 NSTRING("max-stale", WSP_CACHE_CONTROL_MAX_STALE)
00400 NSTRING("min-fresh", WSP_CACHE_CONTROL_MIN_FRESH)
00401 NSTRING("only-if-cached", WSP_CACHE_CONTROL_ONLY_IF_CACHED)
00402 NSTRING("public", WSP_CACHE_CONTROL_PUBLIC)
00403 NSTRING("private", WSP_CACHE_CONTROL_PRIVATE)
00404 NSTRING("no-transform", WSP_CACHE_CONTROL_NO_TRANSFORM)
00405 NSTRING("must-revalidate", WSP_CACHE_CONTROL_MUST_REVALIDATE)
00406 NSTRING("proxy-revalidate", WSP_CACHE_CONTROL_PROXY_REVALIDATE)
00407 NSTRING("s-maxage", WSP_CACHE_CONTROL_S_MAXAGE)
00408 )
00409 
00410 /* 8.4.2.53, Content-disposition field */
00411 LINEAR(disposition,
00412 STRING("form-data")
00413 STRING("attachment")
00414 STRING("inline")
00415 )
00416 
00417 /* Table 41, ISO 639 Language Assignments */
00418 /* For some reason this table was incomplete in the spec.  The languages
00419  * were listed, but not their abbreviations. */
00420 NUMBERED(language,
00421 ASSIGN("*", 0) /* Special any-language value */
00422 ASSIGN("aa", 0x01)  /* Afar */
00423 ASSIGN("ab", 0x02)  /* Abkhazian */
00424 ASSIGN("af", 0x03)  /* Afrikaans */
00425 ASSIGN("am", 0x04)  /* Amharic */
00426 ASSIGN("ar", 0x05)  /* Arabic */
00427 ASSIGN("as", 0x06)  /* Assamese */
00428 ASSIGN("ay", 0x07)  /* Aymara */
00429 ASSIGN("az", 0x08)  /* Azerbaijani */
00430 ASSIGN("ba", 0x09)  /* Bashkir */
00431 ASSIGN("be", 0x0a)  /* Byelorussian */
00432 ASSIGN("bg", 0x0b)  /* Bulgarian */
00433 ASSIGN("bh", 0x0c)  /* Bihari */
00434 ASSIGN("bi", 0x0d)  /* Bislama */
00435 ASSIGN("bn", 0x0e)  /* Bengali; Bangla */
00436 ASSIGN("bo", 0x0f)  /* Tibetan */
00437 ASSIGN("br", 0x10)  /* Breton */
00438 ASSIGN("ca", 0x11)  /* Catalan */
00439 ASSIGN("co", 0x12)  /* Corsican */
00440 ASSIGN("cs", 0x13)  /* Czech */
00441 ASSIGN("cy", 0x14)  /* Welsh */
00442 ASSIGN("da", 0x15)  /* Danish */
00443 ASSIGN("de", 0x16)  /* German */
00444 ASSIGN("dz", 0x17)  /* Bhutani */
00445 ASSIGN("el", 0x18)  /* Greek */
00446 ASSIGN("en", 0x19)  /* English */
00447 ASSIGN("eo", 0x1a)  /* Esperanto */
00448 ASSIGN("es", 0x1b)  /* Spanish */
00449 ASSIGN("et", 0x1c)  /* Estonian */
00450 ASSIGN("eu", 0x1d)  /* Basque */
00451 ASSIGN("fa", 0x1e)  /* Persian */
00452 ASSIGN("fi", 0x1f)  /* Finnish */
00453 ASSIGN("fj", 0x20)  /* Fiji */
00454 ASSIGN("fo", 0x82)  /* Faroese */
00455 ASSIGN("fr", 0x22)  /* French */
00456 ASSIGN("fy", 0x83)  /* Frisian */
00457 ASSIGN("ga", 0x24)  /* Irish */
00458 ASSIGN("gd", 0x25)  /* Scots Gaelic */
00459 ASSIGN("gl", 0x26)  /* Galician */
00460 ASSIGN("gn", 0x27)  /* Guarani */
00461 ASSIGN("gu", 0x28)  /* Gujarati */
00462 ASSIGN("ha", 0x29)  /* Hausa */
00463 ASSIGN("he", 0x2a)  /* Hebrew (formerly iw) */
00464 ASSIGN("hi", 0x2b)  /* Hindi */
00465 ASSIGN("hr", 0x2c)  /* Croatian */
00466 ASSIGN("hu", 0x2d)  /* Hungarian */
00467 ASSIGN("hy", 0x2e)  /* Armenian */
00468 ASSIGN("ia", 0x84)  /* Interlingua */
00469 ASSIGN("id", 0x30)  /* Indonesian (formerly in) */
00470 ASSIGN("ie", 0x86)  /* Interlingue */
00471 ASSIGN("ik", 0x87)  /* Inupiak */
00472 ASSIGN("is", 0x33)  /* Icelandic */
00473 ASSIGN("it", 0x34)  /* Italian */
00474 ASSIGN("iu", 0x89)  /* Inuktitut */
00475 ASSIGN("ja", 0x36)  /* Japanese */
00476 ASSIGN("jw", 0x37)  /* Javanese */
00477 ASSIGN("ka", 0x38)  /* Georgian */
00478 ASSIGN("kk", 0x39)  /* Kazakh */
00479 ASSIGN("kl", 0x8a)  /* Greenlandic */
00480 ASSIGN("km", 0x3b)  /* Cambodian */
00481 ASSIGN("kn", 0x3c)  /* Kannada */
00482 ASSIGN("ko", 0x3d)  /* Korean */
00483 ASSIGN("ks", 0x3e)  /* Kashmiri */
00484 ASSIGN("ku", 0x3f)  /* Kurdish */
00485 ASSIGN("ky", 0x40)  /* Kirghiz */
00486 ASSIGN("la", 0x8b)  /* Latin */
00487 ASSIGN("ln", 0x42)  /* Lingala */
00488 ASSIGN("lo", 0x43)  /* Laothian */
00489 ASSIGN("lt", 0x44)  /* Lithuanian */
00490 ASSIGN("lv", 0x45)  /* Latvian, Lettish */
00491 ASSIGN("mg", 0x46)  /* Malagasy */
00492 ASSIGN("mi", 0x47)  /* Maori */
00493 ASSIGN("mk", 0x48)  /* Macedonian */
00494 ASSIGN("ml", 0x49)  /* Malayalam */
00495 ASSIGN("mn", 0x4a)  /* Mongolian */
00496 ASSIGN("mo", 0x4b)  /* Moldavian */
00497 ASSIGN("mr", 0x4c)  /* Marathi */
00498 ASSIGN("ms", 0x4d)  /* Malay */
00499 ASSIGN("mt", 0x4e)  /* Maltese */
00500 ASSIGN("my", 0x4f)  /* Burmese */
00501 ASSIGN("na", 0x81)  /* Nauru */
00502 ASSIGN("ne", 0x51)  /* Nepali */
00503 ASSIGN("nl", 0x52)  /* Dutch */
00504 ASSIGN("no", 0x53)  /* Norwegian */
00505 ASSIGN("oc", 0x54)  /* Occitan */
00506 ASSIGN("om", 0x55)  /* (Afan) Oromo */
00507 ASSIGN("or", 0x56)  /* Oriya */
00508 ASSIGN("pa", 0x57)  /* Punjabi */
00509 ASSIGN("pl", 0x58)  /* Polish */
00510 ASSIGN("ps", 0x59)  /* Pashto, Pushto */
00511 ASSIGN("pt", 0x5a)  /* Portuguese */
00512 ASSIGN("qu", 0x5b)  /* Quechua */
00513 ASSIGN("rm", 0x8c)  /* Rhaeto-Romance */
00514 ASSIGN("rn", 0x5d)  /* Kirundi */
00515 ASSIGN("ro", 0x5e)  /* Romanian */
00516 ASSIGN("ru", 0x5f)  /* Russian */
00517 ASSIGN("rw", 0x60)  /* Kinyarwanda */
00518 ASSIGN("sa", 0x61)  /* Sanskrit */
00519 ASSIGN("sd", 0x62)  /* Sindhi */
00520 ASSIGN("sg", 0x63)  /* Sangro (Sangho) */
00521 ASSIGN("sh", 0x64)  /* Serbo-Croatian */
00522 ASSIGN("si", 0x65)  /* Sinhalese */
00523 ASSIGN("sk", 0x66)  /* Slovak */
00524 ASSIGN("sl", 0x67)  /* Slovenian */
00525 ASSIGN("sm", 0x68)  /* Samoan */
00526 ASSIGN("sn", 0x69)  /* Shona */
00527 ASSIGN("so", 0x6a)  /* Somali */
00528 ASSIGN("sq", 0x6b)  /* Albanian */
00529 ASSIGN("sr", 0x6c)  /* Serbian */
00530 ASSIGN("ss", 0x6d)  /* Siswati */
00531 ASSIGN("st", 0x6e)  /* Sesotho */
00532 ASSIGN("su", 0x6f)  /* Sundanese */
00533 ASSIGN("sv", 0x70)  /* Swedish */
00534 ASSIGN("sw", 0x71)  /* Swahili */
00535 ASSIGN("ta", 0x72)  /* Tamil */
00536 ASSIGN("te", 0x73)  /* Telugu */
00537 ASSIGN("tg", 0x74)  /* Tajik */
00538 ASSIGN("th", 0x75)  /* Thai */
00539 ASSIGN("ti", 0x76)  /* Tigrinya */
00540 ASSIGN("tk", 0x77)  /* Turkmen */
00541 ASSIGN("tl", 0x78)  /* Tagalog */
00542 ASSIGN("tn", 0x79)  /* Setswana */
00543 ASSIGN("to", 0x7a)  /* Tonga */
00544 ASSIGN("tr", 0x7b)  /* Turkish */
00545 ASSIGN("ts", 0x7c)  /* Tsonga */
00546 ASSIGN("tt", 0x7d)  /* Tatar */
00547 ASSIGN("tw", 0x7e)  /* Twi */
00548 ASSIGN("ug", 0x7f)  /* Uighur */
00549 ASSIGN("uk", 0x50)  /* Ukrainian */
00550 ASSIGN("ur", 0x21)  /* Urdu */
00551 ASSIGN("uz", 0x23)  /* Uzbek */
00552 ASSIGN("vi", 0x2f)  /* Vietnamese */
00553 ASSIGN("vo", 0x85)  /* Volapuk */
00554 ASSIGN("wo", 0x31)  /* Wolof */
00555 ASSIGN("xh", 0x32)  /* Xhosa */
00556 ASSIGN("yi", 0x88)  /* Yiddish (formerly ji) */
00557 ASSIGN("yo", 0x35)  /* Yoruba */
00558 ASSIGN("za", 0x3a)  /* Zhuang */
00559 ASSIGN("zh", 0x41)  /* Chinese */
00560 ASSIGN("zu", 0x5c)  /* Zulu */
00561 )
00562 
00563 /* Well known methods, from table 34. */
00564 NUMBERED(method,
00565 ASSIGN("GET", 0x40)
00566 ASSIGN("OPTIONS", 0x41)
00567 ASSIGN("HEAD", 0x42)
00568 ASSIGN("DELETE", 0x43)
00569 ASSIGN("TRACE", 0x44)
00570 ASSIGN("POST", 0x60)
00571 ASSIGN("PUT", 0x61)
00572 ASSIGN("DATA", 0x80)
00573 )
00574 
00575 /* Connection-value tokens, from section 8.4.2.16 */
00576 LINEAR(connection,
00577 STRING("close")
00578 )
00579 
00580 /* Transfer-encoding values, from section 8.4.2.46 */
00581 LINEAR(transfer_encoding,
00582 STRING("chunked")
00583 )
00584 
00585 /* Well-known bearer type codes, from WDP Appendix C */
00586 LINEAR(bearer_indication,
00587 STRING("any_ipv4")
00588 STRING("any_ipv6")
00589 STRING("gsm_usd_any")
00590 STRING("gsm_sms_gsmmsisdn")
00591 STRING("ansi-136_guts/r-data_ansi_136_msisdn")
00592 STRING("is-95_cdma_sms_is_637_msisdn")
00593 STRING("is-95_cdma_csd_ipv4")
00594 STRING("is-95_packet_data_ipv4")
00595 STRING("ansi-136_csd_ipv4")
00596 STRING("ansi-136_packet_data_ipv4")
00597 STRING("gsm_csd_ipv4")
00598 STRING("gsm_gprs_ipv4")
00599 STRING("gsm_ussd_ipv4")
00600 STRING("amps_cdpd_ipv4")
00601 STRING("pdc_csd_ipv4")
00602 STRING("pdc_packet_data_ipv4")
00603 STRING("iden_sms_iden_msisdn")
00604 STRING("iden_csd_ipv4")
00605 STRING("iden_packet_data_ipv4")
00606 STRING("paging_network_flex_flex_msisdn")
00607 STRING("phs_sms_phs_msisdn")
00608 STRING("phs_csd_ipv4")
00609 STRING("gsm_ussd_gsm_service_code")
00610 STRING("tetra_sds_tetra_itsi")
00611 STRING("tetra_sds_tetra_msisdn")
00612 STRING("tetra_packet_data_ipv4")
00613 STRING("paging_network_reflex_reflex_isdn")
00614 STRING("gsm_ussd_gsm_msisdn")
00615 STRING("mobitex_mpak_man")
00616 STRING("ansi-136_ghost/r_data_gsm_isdn")
00617 )
00618 
00619 /*
00620  * Well known and registered push application ids, see URL
00621  * 
00622  * http://www.openmobilealliance.org/tech/omna/omna-push-app-id.htm (depricated)
00623  * http://www.openmobilealliance.org/Technical/omna/omna-push-app-id.aspx
00624  * 
00625  * Note that generic id strings do not contain the "x-wap-application" prefix,
00626  * it's the default, otherwise an alternate is given.
00627  */
00628 NUMBERED(application_id,
00629 ASSIGN("*", 0x00)
00630 ASSIGN("push.sia", 0x01)
00631 ASSIGN("wml.ua", 0x02)
00632 ASSIGN("wta.ua", 0x03) 
00633 ASSIGN("mms.ua", 0x04) 
00634 ASSIGN("push.syncml", 0x05) 
00635 ASSIGN("loc.ua", 0x06) 
00636 ASSIGN("syncml.dm", 0x07)
00637 ASSIGN("drm.ua", 0x08)
00638 ASSIGN("emn.ua", 0x09)
00639 ASSIGN("wv.ua", 0x0A)
00640 ASSIGN("x-oma-application:ulp.ua", 0x10)
00641 ASSIGN("x-oma-application:dlota.ua", 0x11)
00642 ASSIGN("x-oma-application:java-ams", 0x12)
00643 ASSIGN("x-oma-application:bcast.ua", 0x13)
00644 ASSIGN("x-wap-microsoft:localcontent.ua", 0x8000)
00645 ASSIGN("x-wap-microsoft:IMclient.ua", 0x8001)
00646 ASSIGN("x-wap-docomo:imode.mail.ua", 0x8002)
00647 ASSIGN("x-wap-docomo:imode.mr.ua", 0x8003)
00648 ASSIGN("x-wap-docomo:imode.mf.ua", 0x8004)
00649 ASSIGN("x-motorola:location.ua", 0x8005)
00650 ASSIGN("x-motorola:now.ua", 0x8006)
00651 ASSIGN("x-motorola:otaprov.ua", 0x8007)
00652 ASSIGN("x-motorola:browser.ua", 0x8008)
00653 ASSIGN("x-motorola:splash.ua", 0x8009)
00654 ASSIGN("x-wap-nai:mvsw.command", 0x800B)
00655 ASSIGN("x-wap-openvawe:iota.ua", 0x8010)
00656 ASSIGN("x-wap-docomo:imode.mail2.ua", 0x9000)
00657 ASSIGN("x-oma-nec:otaprov.ua", 0x9001)
00658 ASSIGN("x-oma-nokia:call.ua", 0x9002)
00659 ASSIGN("x-oma-coremobility:sqa.ua", 0x9003)
00660 ASSIGN("x-oma-docomo:doja.jam.ua", 0x9004)
00661 ASSIGN("x-oma-nokia:sip.ua", 0x9010)
00662 ASSIGN("x-oma-vodafone:otaprov.ua", 0x9011)
00663 ASSIGN("x-hutchison:ad.ua", 0x9012)
00664 ASSIGN("x-oma-nokia:voip.ua", 0x9013)
00665 ASSIGN("x-oma-docomo:voice.ua", 0x9014)
00666 ASSIGN("x-oma-docomo:browser.ctl", 0x9015)
00667 ASSIGN("x-oma-docomo:dan.ua", 0x9016)
00668 ASSIGN("x-oma-nokia:vs.ua", 0x9017)
00669 ASSIGN("x-oma-nokia:voip.ext1.ua", 0x9018)
00670 ASSIGN("x-wap-vodafone:casting.ua", 0x9019)
00671 ASSIGN("x-oma-docomo:imode.data.ua", 0x901A)
00672 ASSIGN("x-oma-snapin:otaprov.ctl", 0x901B)
00673 ASSIGN("x-oma-nokia:vrs.ua", 0x901C)
00674 ASSIGN("x-oma-nokia:vrpg.ua", 0x901D)
00675 ASSIGN("x-oma-motorola:screen3.ua", 0x901E)
00676 ASSIGN("x-oma-docomo:device.ctl", 0x901F)
00677 ASSIGN("x-oma-nokia:msc.ua", 0x9020)
00678 ASSIGN("x-3gpp2:lcs.ua", 0x9021)
00679 ASSIGN("x-wap-vodafone:dcd.ua", 0x9022)
00680 ASSIGN("x-3gpp:mbms.service.announcement.ua", 0x9023)
00681 ASSIGN("x-oma-vodafone:dltmtbl.ua", 0x9024)
00682 ASSIGN("x-oma-vodafone:dvcctl.ua", 0x9025)
00683 ASSIGN("x-oma-cmcc:mail.ua", 0x9026)
00684 ASSIGN("x-oma-nokia:vmb.ua", 0x9027)
00685 ASSIGN("x-oma-nokia:ldapss.ua", 0x9028)
00686 ASSIGN("x-hutchison:al.ua", 0x9029)
00687 ASSIGN("x-oma-nokia:uma.ua", 0x902A)
00688 ASSIGN("x-oma-nokia:news.ua", 0x902B)
00689 ASSIGN("x-oma-docomo:pf", 0x902C)
00690 ASSIGN("x-oma-docomo:ub", 0x902D)
00691 ASSIGN("x-oma-nokia:nat.traversal.ua", 0x902E)
00692 ASSIGN("x-oma-intromobile:intropad.ua", 0x902F)
00693 ASSIGN("x-oma-docomo:uin.ua", 0x9030)
00694 ASSIGN("x-oma-nokia:iptv.ua", 0x9031)
00695 ASSIGN("x-hutchison:il.ua", 0x9032)
00696 ASSIGN("x-oma-nokia:voip.general.ua", 0x9033)
00697 ASSIGN("x-microsoft:drm.meter", 0x9034)
00698 ASSIGN("x-microsoft:drm.license", 0x9035)
00699 ASSIGN("x-oma-docomo:ic.ctl", 0x9036)
00700 ASSIGN("x-oma-slingmedia:SPM.ua", 0x9037)
00701 ASSIGN("x-cibenix:odp.ua", 0x9038)
00702 ASSIGN("x-oma-motorola:voip.ua", 0x9039)
00703 ASSIGN("x-oma-motorola:ims", 0x903A)
00704 ASSIGN("x-oma-docomo:imode.remote.ctl", 0x903B)
00705 ASSIGN("x-oma-docomo:device.ctl.um", 0x903C)
00706 ASSIGN("x-microsoft:playready.drm.initiator", 0x903D)
00707 ASSIGN("x-microsoft:playready.drm", 0x903E)
00708 ASSIGN("x-oma-sbm:ms.mexa.ua", 0x903F)
00709 ASSIGN("urn:oma:drms:org-LGE:L650V", 0x9040)
00710 ASSIGN("x-oma-docomo:um", 0x9041)
00711 ASSIGN("x-oma-docomo:uin.um", 0x9042)
00712 ASSIGN("urn:oma:drms:org-LGE:KU450", 0x9043)
00713 ASSIGN("x-wap-microsoft:cfgmgr.ua", 0x9044)
00714 ASSIGN("x-3gpp:mbms.download.delivery.ua", 0x9045)
00715 ASSIGN("x-oma-docomo:star.ctl", 0x9046)
00716 ASSIGN("urn:oma:drms:org-LGE:KU380", 0x9047)
00717 ASSIGN("x-oma-docomo:pf2", 0x9048)
00718 ASSIGN("x-oma-motorola:blogcentral.ua", 0x9049)
00719 ASSIGN("x-oma-docomo:imode.agent.ua", 0x904A)
00720 ASSIGN("x-wap-application:push.sia", 0x904B)
00721 ASSIGN("x-oma-nokia:destination.network.ua", 0x904C)
00722 ASSIGN("x-oma-sbm:mid2.ua", 0x904D)
00723 )
00724 
00725 /**** More preprocessor magic ****/
00726 
00727 #undef LINEAR
00728 #undef STRING
00729 #undef VSTRING
00730 #undef NUMBERED
00731 #undef ASSIGN
00732 #undef VASSIGN
00733 #undef NAMED
00734 #undef NSTRING
00735 #undef VNSTRING
00736 
See file LICENSE for details about the license agreement for using, modifying, copying or deriving work from this software.