亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? stun_msg.h

?? 一個開源的sip源代碼
?? H
?? 第 1 頁 / 共 4 頁
字號:
     * The transaction ID is a 96 bit identifier.  STUN transactions are
     * identified by their unique 96-bit transaction ID.  For request/
     * response transactions, the transaction ID is chosen by the STUN
     * client and MUST be unique for each new STUN transaction generated by
     * that STUN client.  The transaction ID MUST be uniformly and randomly
     * distributed between 0 and 2**96 - 1. 
     */
    pj_uint8_t		tsx_id[12];

} pj_stun_msg_hdr;


/**
 * This structre describes STUN attribute header. Each attribute is
 * TLV encoded, with a 16 bit type, 16 bit length, and variable value.
 * Each STUN attribute ends on a 32 bit boundary:
 *
 * \verbatim

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Type                  |            Length             |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   \endverbatim
 */
typedef struct pj_stun_attr_hdr
{
    /**
     * STUN attribute type.
     */
    pj_uint16_t		type;

    /**
     * The Length refers to the length of the actual useful content of the
     * Value portion of the attribute, measured in bytes. The value
     * in the Length field refers to the length of the Value part of the
     * attribute prior to padding - i.e., the useful content.
     */
    pj_uint16_t		length;

} pj_stun_attr_hdr;


/**
 * This structure describes STUN generic IP address attribute, used for
 * example to represent STUN MAPPED-ADDRESS attribute.
 *
 * The generic IP address attribute indicates the transport address.
 * It consists of an eight bit address family, and a sixteen bit port,
 * followed by a fixed length value representing the IP address.  If the
 * address family is IPv4, the address is 32 bits, in network byte
 * order.  If the address family is IPv6, the address is 128 bits in
 * network byte order.
 *
 * The format of the generic IP address attribute is:
 *
 * \verbatim

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |x x x x x x x x|    Family     |           Port                |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                   Address  (variable)
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   \endverbatim
 */
typedef struct pj_stun_sockaddr_attr
{
    /**
     * Standard STUN attribute header.
     */
    pj_stun_attr_hdr	hdr;

    /**
     * Flag to indicate whether this attribute should be sent in XOR-ed
     * format, or has been received in XOR-ed format.
     */
    pj_bool_t		xor_ed;

    /**
     * The socket address
     */
    pj_sockaddr		sockaddr;

} pj_stun_sockaddr_attr;


/**
 * This structure represents a generic STUN attributes with no payload,
 * and it is used for example by ICE USE-CANDIDATE attribute.
 */
typedef struct pj_stun_empty_attr
{
    /**
     * Standard STUN attribute header.
     */
    pj_stun_attr_hdr	hdr;

} pj_stun_empty_attr;


/**
 * This structure represents generic STUN string attributes, such as STUN
 * USERNAME, PASSWORD, SERVER, REALM, and NONCE attributes. Note that for REALM and
 * NONCE attributes, the text MUST be quoted with.
 */
typedef struct pj_stun_string_attr
{
    /**
     * Standard STUN attribute header.
     */
    pj_stun_attr_hdr	hdr;

    /**
     * The string value.
     */
    pj_str_t		value;

} pj_stun_string_attr;


/**
 * This structure represents a generic STUN attributes with 32bit (unsigned)
 * integer value, such as STUN FINGERPRINT and REFRESH-INTERVAL attributes.
 */
typedef struct pj_stun_uint_attr
{
    /**
     * Standard STUN attribute header.
     */
    pj_stun_attr_hdr	hdr;
    
    /**
     * The 32bit value, in host byte order.
     */
    pj_uint32_t		value;

} pj_stun_uint_attr;


/**
 * This structure represents a generic STUN attributes with 64bit (unsigned)
 * integer value, such as ICE-CONTROLLED and ICE-CONTROLLING attributes.
 */
typedef struct pj_stun_uint64_attr
{
    /**
     * Standard STUN attribute header.
     */
    pj_stun_attr_hdr	hdr;
    
    /**
     * The 64bit value, in host byte order, represented with pj_timestamp.
     */
    pj_timestamp	value;

} pj_stun_uint64_attr;


/**
 * This structure represents generic STUN attributes to hold a raw binary
 * data.
 */
typedef struct pj_stun_binary_attr
{
    /**
     * Standard STUN attribute header.
     */
    pj_stun_attr_hdr	hdr;
    
    /**
     * Length of the data.
     */
    unsigned		length;

    /**
     * The raw data.
     */
    pj_uint8_t	       *data;

} pj_stun_binary_attr;


/**
 * This structure describes STUN MESSAGE-INTEGRITY attribute.
 * The MESSAGE-INTEGRITY attribute contains an HMAC-SHA1 [10] of the
 * STUN message.  The MESSAGE-INTEGRITY attribute can be present in any
 * STUN message type.  Since it uses the SHA1 hash, the HMAC will be 20
 * bytes.
 */
typedef struct pj_stun_msgint_attr
{
    /**
     * Standard STUN attribute header.
     */
    pj_stun_attr_hdr	hdr;

    /**
     * The 20 bytes hmac value.
     */
    pj_uint8_t		hmac[20];

} pj_stun_msgint_attr;


/**
 * This structure describes STUN FINGERPRINT attribute. The FINGERPRINT 
 * attribute can be present in all STUN messages.  It is computed as 
 * the CRC-32 of the STUN message up to (but excluding) the FINGERPRINT 
 * attribute itself, xor-d with the 32 bit value 0x5354554e
 */
typedef struct pj_stun_uint_attr pj_stun_fingerprint_attr;


/**
 * This structure represents STUN ERROR-CODE attribute. The ERROR-CODE 
 * attribute is present in the Binding Error Response and Shared Secret 
 * Error Response.  It is a numeric value in the range of 100 to 699 
 * plus a textual reason phrase encoded in UTF-8
 *
 * \verbatim

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                   0                     |Class|     Number    |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |      Reason Phrase (variable)                                ..
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

 \endverbatim
 */
typedef struct pj_stun_errcode_attr
{
    /**
     * Standard STUN attribute header.
     */
    pj_stun_attr_hdr	hdr;

    /**
     * STUN error code.
     */
    int			err_code;

    /**
     * The reason phrase.
     */
    pj_str_t		reason;

} pj_stun_errcode_attr;


/**
 * This describes STUN REALM attribute.
 * The REALM attribute is present in requests and responses.  It
 * contains text which meets the grammar for "realm" as described in RFC
 * 3261 [11], and will thus contain a quoted string (including the
 * quotes).
 */
typedef struct pj_stun_string_attr pj_stun_realm_attr;


/**
 * This describes STUN NONCE attribute. 
 * The NONCE attribute is present in requests and in error responses.
 * It contains a sequence of qdtext or quoted-pair, which are defined in
 * RFC 3261 [11].  See RFC 2617 [7] for guidance on selection of nonce
 * values in a server.
 */
typedef struct pj_stun_string_attr pj_stun_nonce_attr;


/**
 * This describes STUN UNKNOWN-ATTRIBUTES attribute.
 * The UNKNOWN-ATTRIBUTES attribute is present only in an error response
 * when the response code in the ERROR-CODE attribute is 420.
 * The attribute contains a list of 16 bit values, each of which
 * represents an attribute type that was not understood by the server.
 * If the number of unknown attributes is an odd number, one of the
 * attributes MUST be repeated in the list, so that the total length of
 * the list is a multiple of 4 bytes.
 */
typedef struct pj_stun_unknown_attr
{
    /**
     * Standard STUN attribute header.
     */
    pj_stun_attr_hdr	hdr;

    /**
     * Number of unknown attributes in the array.
     */
    unsigned		attr_count;

    /**
     * Array of unknown attribute IDs.
     */
    pj_uint16_t	        attrs[PJ_STUN_MAX_ATTR];

} pj_stun_unknown_attr;


/**
 * This structure describes STUN MAPPED-ADDRESS attribute.
 * The MAPPED-ADDRESS attribute indicates the mapped transport address.
 */
typedef struct pj_stun_sockaddr_attr pj_stun_mapped_addr_attr;


/**
 * This describes STUN XOR-MAPPED-ADDRESS attribute (which has the same
 * format as STUN MAPPED-ADDRESS attribute).
 * The XOR-MAPPED-ADDRESS attribute is present in responses.  It
 * provides the same information that would present in the MAPPED-
 * ADDRESS attribute but because the NAT's public IP address is
 * obfuscated through the XOR function, STUN messages are able to pass
 * through NATs which would otherwise interfere with STUN.
 */
typedef struct pj_stun_sockaddr_attr pj_stun_xor_mapped_addr_attr;


/**
 * This describes STUN SERVER attribute.
 * The server attribute contains a textual description of the software
 * being used by the server, including manufacturer and version number.
 * The attribute has no impact on operation of the protocol, and serves
 * only as a tool for diagnostic and debugging purposes.  The value of
 * SERVER is variable length.
 */
typedef struct pj_stun_string_attr pj_stun_server_attr;


/**
 * This describes STUN ALTERNATE-SERVER attribute.
 * The alternate server represents an alternate transport address for a
 * different STUN server to try.  It is encoded in the same way as
 * MAPPED-ADDRESS.
 */
typedef struct pj_stun_sockaddr_attr pj_stun_alt_server_attr;


/**
 * This describes STUN REFRESH-INTERVAL attribute.
 * The REFRESH-INTERVAL indicates the number of milliseconds that the
 * server suggests the client should use between refreshes of the NAT
 * bindings between the client and server.
 */
typedef struct pj_stun_uint_attr pj_stun_refresh_interval_attr;


/**
 * This structure describes STUN RESPONSE-ADDRESS attribute.
 * The RESPONSE-ADDRESS attribute indicates where the response to a
 * Binding Request should be sent.  Its syntax is identical to MAPPED-
 * ADDRESS.
 *
 * Note that the usage of this attribute has been deprecated by the 
 * RFC 3489-bis standard.
 */
typedef struct pj_stun_sockaddr_attr pj_stun_response_addr_attr;


/**
 * This structure describes STUN CHANGED-ADDRESS attribute.
 * The CHANGED-ADDRESS attribute indicates the IP address and port where
 * responses would have been sent from if the "change IP" and "change
 * port" flags had been set in the CHANGE-REQUEST attribute of the
 * Binding Request.  The attribute is always present in a Binding
 * Response, independent of the value of the flags.  Its syntax is
 * identical to MAPPED-ADDRESS.
 *
 * Note that the usage of this attribute has been deprecated by the 
 * RFC 3489-bis standard.
 */
typedef struct pj_stun_sockaddr_attr pj_stun_changed_addr_attr;


/**
 * This structure describes STUN CHANGE-REQUEST attribute.
 * The CHANGE-REQUEST attribute is used by the client to request that
 * the server use a different address and/or port when sending the
 * response. 
 *
 * Bit 29 of the value is the "change IP" flag.  If true, it requests 
 * the server to send the Binding Response with a different IP address 
 * than the one the Binding Request was received on.
 *
 * Bit 30 of the value is the "change port" flag.  If true, it requests 
 * the server to send the Binding Response with a different port than 
 * the one the Binding Request was received on.
 *
 * Note that the usage of this attribute has been deprecated by the 
 * RFC 3489-bis standard.
 */
typedef struct pj_stun_uint_attr pj_stun_change_request_attr;

/**

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精品v日韩精品v韩国精品v| 久久国产尿小便嘘嘘尿| 国产喂奶挤奶一区二区三区| 日韩午夜电影在线观看| 91精品国产综合久久香蕉麻豆| 色哟哟国产精品| 91麻豆成人久久精品二区三区| 成人免费观看视频| 94-欧美-setu| 欧美三级日韩三级| 欧美理论电影在线| 精品国产免费视频| 久久久蜜桃精品| 国产人妖乱国产精品人妖| 久久久99精品久久| 中文字幕亚洲在| 亚洲一区二区视频| **欧美大码日韩| 婷婷丁香久久五月婷婷| 另类人妖一区二区av| 国产精品一级在线| 97久久久精品综合88久久| 色综合天天综合狠狠| 欧美亚洲一区二区在线观看| 欧美日韩国产综合久久 | 久久综合九色综合欧美98| 久久综合色综合88| 中文字幕av一区二区三区免费看| 国产精品欧美极品| 亚洲福利视频一区| 精品午夜久久福利影院| 处破女av一区二区| 欧美日韩一区二区电影| 2017欧美狠狠色| 亚洲午夜精品17c| 国产麻豆成人精品| 欧美日韩精品久久久| 国产亚洲视频系列| 亚洲mv大片欧洲mv大片精品| 国产精品一区二区免费不卡 | 欧美成人精品二区三区99精品| 久久精品一区四区| 天涯成人国产亚洲精品一区av| 激情综合色播五月| 欧美午夜精品久久久久久孕妇| 欧美sm极限捆绑bd| 亚洲国产精品欧美一二99| 极品美女销魂一区二区三区免费| 91丨porny丨蝌蚪视频| 精品免费一区二区三区| 亚洲成人免费影院| 成人动漫在线一区| 精品黑人一区二区三区久久| 亚洲综合区在线| www.在线成人| 久久夜色精品一区| 欧美a级理论片| 在线区一区二视频| 亚洲欧美怡红院| 国产成人高清视频| 精品国产成人在线影院 | 欧美日韩精品欧美日韩精品| 国产精品久久久久久久裸模| 久久99国产精品久久99| 欧美精品少妇一区二区三区| 亚洲精品美国一| 国产精品2024| 久久久www免费人成精品| 青青草91视频| 欧美日本一区二区三区| 一二三四社区欧美黄| 99精品欧美一区二区蜜桃免费| 国产蜜臀97一区二区三区| 国产一区激情在线| 久久久久免费观看| 韩国三级中文字幕hd久久精品| 欧美一级夜夜爽| 免费视频最近日韩| 日韩欧美国产午夜精品| 日韩av不卡一区二区| 欧美日韩国产综合一区二区| 亚洲成在人线免费| 在线播放国产精品二区一二区四区| 一区二区三区日韩欧美| 欧美日韩一区二区欧美激情| 三级影片在线观看欧美日韩一区二区 | 精品一区二区在线免费观看| 欧美精品一区二区久久婷婷| 国产精品亚洲午夜一区二区三区 | 一区二区三区在线观看动漫| 色av一区二区| 视频一区国产视频| 日韩欧美专区在线| 大胆亚洲人体视频| 亚洲最大色网站| 国产美女av一区二区三区| 欧美激情一区在线观看| 播五月开心婷婷综合| 尤物视频一区二区| 欧美一区国产二区| 成人午夜视频在线观看| 亚洲精品免费播放| 日韩欧美亚洲另类制服综合在线| 国产精品一区二区不卡| 亚洲乱码国产乱码精品精可以看| 91久久精品午夜一区二区| 秋霞av亚洲一区二区三| 精品动漫一区二区三区在线观看| jiyouzz国产精品久久| 肉丝袜脚交视频一区二区| 国产日产精品1区| 色呦呦日韩精品| 久久97超碰国产精品超碰| 色婷婷激情综合| 国产在线观看一区二区| 亚洲一区二区在线免费观看视频| 日韩精品在线一区二区| 93久久精品日日躁夜夜躁欧美| 石原莉奈在线亚洲三区| 日韩一区在线免费观看| 欧美成人一区二区三区片免费 | 欧美精品视频www在线观看 | 亚洲激情六月丁香| 久久婷婷一区二区三区| 欧美色视频在线| gogo大胆日本视频一区| 国产一区二区在线免费观看| 亚洲精品久久嫩草网站秘色| 26uuu色噜噜精品一区二区| 欧美亚洲一区三区| 本田岬高潮一区二区三区| 美女mm1313爽爽久久久蜜臀| 一区二区激情小说| 国产精品美女一区二区在线观看| 日韩视频免费直播| 欧美日韩精品二区第二页| 91九色最新地址| 99久久亚洲一区二区三区青草| 国产又粗又猛又爽又黄91精品| 午夜精品成人在线视频| 久久久久亚洲蜜桃| 国产午夜精品一区二区三区视频 | 国内精品国产三级国产a久久| 亚洲另类色综合网站| 国产偷国产偷亚洲高清人白洁| 26uuu亚洲综合色欧美| 欧美成人免费网站| 欧美久久久久久久久中文字幕| 欧洲国内综合视频| 欧美日韩视频在线一区二区 | 激情文学综合丁香| 韩国在线一区二区| 国产主播一区二区| 久久99国产精品尤物| 国产精品亚洲一区二区三区在线 | 日韩欧美中文字幕精品| 欧美一区二区播放| 欧美高清在线视频| 国产无一区二区| 国产精品激情偷乱一区二区∴| 欧美激情综合网| 日韩一区日韩二区| 亚洲综合免费观看高清完整版 | 亚洲日本va午夜在线影院| 中文字幕在线免费不卡| 国产精品久久二区二区| 亚洲国产va精品久久久不卡综合| 午夜一区二区三区在线观看| 蜜芽一区二区三区| 国产精品夜夜爽| 91国偷自产一区二区三区观看| 欧美午夜精品久久久久久超碰| 日韩一区二区三区视频| 久久精品视频一区二区三区| 17c精品麻豆一区二区免费| 一区二区三区加勒比av| 美女视频黄a大片欧美| 国产精品2024| 欧美视频日韩视频| 欧美精品三级在线观看| 久久一留热品黄| 一区二区不卡在线播放| 久久精品国产免费看久久精品| 国产酒店精品激情| 在线一区二区视频| 日韩欧美另类在线| 国产精品天天摸av网| 婷婷激情综合网| 成人性视频免费网站| 欧美三级电影一区| 亚洲国产精品精华液2区45| 亚洲一区二区三区三| 国产一区二区视频在线| 在线影视一区二区三区| 欧美激情综合五月色丁香小说| 亚洲一区二区在线观看视频| 日韩制服丝袜先锋影音| 色婷婷精品大在线视频| 久久久不卡网国产精品二区| 免费久久精品视频|