123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
- "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
- <section id="via_body" xmlns:xi="http://www.w3.org/2001/XInclude">
- <sectioninfo>
- <revhistory>
- <revision>
- <revnumber>$Revision$</revnumber>
- <date>$Date$</date>
- </revision>
- </revhistory>
- </sectioninfo>
-
- <title>Structure <structname>via_body</structname></title>
- <para>
- The structure represents parsed Via header field. See file
- <filename>parse_via.h</filename> under <filename>parser</filename>
- subdirectory for more details.
- </para>
- <programlisting>
- struct via_body {
- int error;
- str hdr; /* Contains "Via" or "v" */
- str name;
- str version;
- str transport;
- str host;
- int port;
- str port_str;
- str params;
- str comment;
- int bsize; /* body size, not including hdr */
- struct via_param* param_lst; /* list of parameters*/
- struct via_param* last_param; /*last via parameter, internal use*/
- /* shortcuts to "important" params*/
- struct via_param* branch;
- struct via_param* received;
- struct via_body* next; /* pointer to next via body string if
- compact via or null */
- };
- </programlisting>
- <para>
- <emphasis>Field Description:</emphasis>
- <itemizedlist>
- <listitem>
- <para>
- <structfield>error</structfield> - The field contains error
- code when the parser was unable to parse the header field.
- </para>
- </listitem>
- <listitem>
- <para>
- <structfield>hdr</structfield>- Header field name, it can
- be "Via" or "v" in this case.
- </para>
- </listitem>
- <listitem>
- <para>
- <structfield>name</structfield> - Protocol name ("SIP" in
- this case).
- </para>
- </listitem>
- <listitem>
- <para>
- <structfield>version</structfield> - Protocol version (for
- example "2.0").
- </para>
- </listitem>
- <listitem>
- <para>
- <structfield>transport</structfield> - Transport protocol
- name ("TCP", "UDP" and so on).
- </para>
- </listitem>
- <listitem>
- <para>
- <structfield>host</structfield> - Hostname or IP address
- contained in the Via header field.
- </para>
- </listitem>
- <listitem>
- <para>
- <structfield>port</structfield> - Port number as integer.
- </para>
- </listitem>
- <listitem>
- <para>
- <structfield>port_str</structfield> - Port number as string.
- </para>
- </listitem>
- <listitem>
- <para>
- <structfield>params</structfield> - Unparsed parameters (as
- one string containing all the parameters).
- </para>
- </listitem>
- <listitem>
- <para>
- <structfield>comment</structfield> - Comment.
- </para>
- </listitem>
- <listitem>
- <para>
- <structfield>bsize</structfield> - Size of the body (not including hdr).
- </para>
- </listitem>
- <listitem>
- <para>
- <structfield>param_lst</structfield> - Linked list of all parameters.
- </para>
- </listitem>
- <listitem>
- <para>
- <structfield>last_param</structfield> - Last parameter in the list.
- </para>
- </listitem>
- <listitem>
- <para>
- <structfield>branch</structfield> - Branch parameter.
- </para>
- </listitem>
- <listitem>
- <para>
- <structfield>received</structfield> - Received parameter.
- </para>
- </listitem>
- <listitem>
- <para>
- <structfield>next</structfield> - If the Via is in compact
- form (more Vias in the same header field), this field
- contains pointer to the next Via.
- </para>
- </listitem>
- </itemizedlist>
- </para>
- </section>
|