📄 sip.h
字号:
*/struct sip_replaces_s{ sip_common_t rp_common[1]; /**< Common fragment info */ sip_error_t *rp_next; /**< Link to next (dummy) */ char const *rp_call_id; /**< Call-ID */ msg_param_t const *rp_params; /**< List of parameters */ char const *rp_to_tag; /**< to-tag parameter */ char const *rp_from_tag; /**< from-tag parameter */ unsigned rp_early_only; /**< early-only parameter */};/**@ingroup sip_retry_after * @brief Structure for @b Retry-After header. */struct sip_retry_after_s { sip_common_t af_common[1]; /**< Common fragment info */ sip_error_t *af_next; /**< Link to next (dummy) */ sip_time_t af_delta; /**< Seconds to before retry */ char const *af_comment; /**< Comment string */ msg_param_t const *af_params; /**< List of parameters */ char const *af_duration; /**< Duration parameter */};/**@ingroup sip_request_disposition * @brief Structure for @b Request-Disposition header. */struct sip_request_disposition_s{ sip_common_t rd_common[1]; /**< Common fragment info */ sip_unknown_t *rd_next; /**< Link to next (dummy) */ char const **rd_items; /**< List of directives */};/**@ingroup sip_caller_preferences * @brief Structure for @b Accept-Contact and @b Reject-Contact headers. */struct sip_caller_prefs_s{ sip_common_t cp_common[1]; /**< Common fragment info */ sip_caller_prefs_t *cp_next; /**< Link to next (dummy) */ msg_param_t const *cp_params; char const *cp_q; /**< Priority */ unsigned cp_require : 1; unsigned cp_explicit : 1;};/**@ingroup sip_reason * @brief Structure for @b Reason header. */struct sip_reason_s{ sip_common_t re_common[1]; /**< Common fragment info */ sip_reason_t *re_next; /**< Link to next */ char const *re_protocol; /**< Protocol */ msg_param_t const *re_params; /**< List of reason parameters */ char const *re_cause; /**< Shortcut to cause parameter */ char const *re_text; /**< Shortcut to text parameter */};/**@ingroup sip_route * @brief Structure for @b Route and @b Record-Route headers. */struct sip_route_s{ sip_common_t r_common[1]; /**< Common fragment info */ sip_route_t *r_next; /**< Link to next */ char const *r_display; /**< Display name */ url_t r_url[1]; /**< Route URL */ msg_param_t const *r_params; /**< List of route parameters */};/**@ingroup sip_rseq * @brief Structure for @b RSeq header. */struct sip_rseq_s{ sip_common_t rs_common; sip_error_t *rs_next; unsigned long rs_response;};/**@ingroup sip_session_expires * @brief Structure for @b Session-Expires header. */struct sip_session_expires_s{ sip_common_t x_common[1]; sip_error_t *x_next; unsigned long x_delta; /**< Delta-seconds */ msg_param_t const *x_params; char const *x_refresher; /**< UAS or UAC */};/**@ingroup sip_min_se * @brief Structure for @b Min-SE header. */struct sip_min_se_s{ sip_common_t min_common[1]; sip_error_t *min_next; unsigned long min_delta; /**< Delta-seconds */ msg_param_t const *min_params; /**< List of extension parameters */};/**@ingroup sip_subscription_state * @brief Structure for @b Subscription-State header. */struct sip_subscription_state_s{ sip_common_t ss_common[1]; /**< Common fragment info */ sip_error_t *ss_next; /**< Subscription state: "pending", "active" or "terminated" */ char const *ss_substate; msg_param_t const *ss_params; /**< List of parameters */ char const *ss_reason; /**< Reason for termination */ char const *ss_expires; /**< Subscription lifetime */ char const *ss_retry_after; /**< Value of retry-after parameter */};/**@ingroup sip_timestamp * @brief Structure for @b Timestamp header. */struct sip_timestamp_s { sip_common_t ts_common[1]; /**< Common fragment info */ sip_error_t *ts_next; char const *ts_stamp; /**< Original timestamp */ char const *ts_delay; /**< Delay at UAS */};/**@ingroup sip_via * @brief Structure for @b Via header. */struct sip_via_s{ sip_common_t v_common[1]; /**< Common fragment info */ sip_via_t *v_next; /**< Link to next Via header */ char const *v_protocol; /**< Application and transport protocol */ char const *v_host; /**< Hostname */ char const *v_port; /**< Port number */ msg_param_t const *v_params; /**< List of via-params */ char const *v_comment; /**< Comment */ char const *v_ttl; /**< Value of "ttl" parameter */ char const *v_maddr; /**< Value of "maddr" parameter */ char const *v_received; /**< Value of "received" parameter*/ char const *v_branch; /**< Value of "branch" parameter */ char const *v_rport; /**< Value of "rport" parameter */ char const *v_comp; /**< Value of "comp" parameter */};/**@ingroup sip_security_client * @brief Structure for @b Security-Client, @b Security-Server, and * @b Security-Verify headers. */struct sip_security_agree_s{ sip_common_t sa_common[1];/**< Common fragment info */ struct sip_security_agree_s *sa_next; /**< Link to next mechanism */ char const *sa_mec; /**< Security mechanism */ msg_param_t const *sa_params; /**< List of mechanism parameters */ char const *sa_q; /**< Value of q (preference) parameter */ char const *sa_d_alg; /**< Value of d-alg parameter */ char const *sa_d_qop; /**< Value of d-qop parameter */ char const *sa_d_ver; /**< Value of d-ver parameter */};/**@ingroup sip_privacy * @brief Structure for @b Privacy header. */struct sip_privacy_s{ sip_common_t priv_common[1];/**< Common fragment info */ sip_error_t *priv_next; /**< Dummy link */ msg_param_t const *priv_values; /**< Privacy values */};/* union representing any SIP header * these are arrays of size 1 for easy casting */union sip_header_u{ sip_common_t sh_common[1]; struct { sip_common_t shn_common; sip_header_t *shn_next; } sh_header_next[1];#define sh_next sh_header_next->shn_next#define sh_class sh_common->h_class#define sh_succ sh_common->h_succ#define sh_prev sh_common->h_prev#define sh_data sh_common->h_data#define sh_len sh_common->h_len sip_addr_t sh_addr[1]; sip_auth_t sh_auth[1]; sip_generic_t sh_generic[1]; sip_request_t sh_request[1]; sip_status_t sh_status[1]; sip_error_t sh_error[1]; sip_via_t sh_via[1]; sip_route_t sh_route[1]; sip_record_route_t sh_record_route[1]; sip_max_forwards_t sh_max_forwards[1]; sip_from_t sh_from[1]; sip_to_t sh_to[1]; sip_contact_t sh_contact[1]; sip_call_id_t sh_call_id[1]; sip_cseq_t sh_cseq[1]; sip_rseq_t sh_rseq[1]; sip_rack_t sh_rack[1]; sip_subject_t sh_subject[1]; sip_priority_t sh_priority[1]; sip_date_t sh_date[1]; sip_retry_after_t sh_retry_after[1]; sip_timestamp_t sh_timestamp[1]; sip_expires_t sh_expires[1]; sip_min_expires_t sh_min_expires[1]; sip_call_info_t sh_call_info[1]; sip_organization_t sh_organization[1]; sip_server_t sh_server[1]; sip_user_agent_t sh_user_agent[1]; sip_in_reply_to_t sh_in_reply_to[1]; sip_accept_t sh_accept[1]; sip_accept_encoding_t sh_accept_encoding[1]; sip_accept_language_t sh_accept_language[1]; sip_allow_t sh_allow[1]; sip_require_t sh_require[1]; sip_proxy_require_t sh_proxy_require[1]; sip_supported_t sh_supported[1]; sip_unsupported_t sh_unsupported[1]; sip_event_t sh_event[1]; sip_allow_events_t sh_allow_events[1]; sip_subscription_state_t sh_subscription_state[1]; sip_proxy_authenticate_t sh_proxy_authenticate[1]; sip_proxy_authentication_info_t sh_proxy_authentication_info[1]; sip_proxy_authorization_t sh_proxy_authorization[1]; sip_authorization_t sh_authorization[1]; sip_www_authenticate_t sh_www_authenticate[1]; sip_authentication_info_t sh_authentication_info[1]; sip_error_info_t sh_error_info[1]; sip_warning_t sh_warning[1]; sip_refer_to_t sh_refer_to[1]; sip_referred_by_t sh_referred_by[1]; sip_replaces_t sh_replaces[1]; /* Caller-Preferences */ sip_caller_prefs_t sh_caller_prefs[1]; sip_request_disposition_t sh_request_disposition[1]; sip_accept_contact_t sh_accept_contact[1]; sip_reject_contact_t sh_reject_contact[1]; sip_session_expires_t sh_session_expires[1]; sip_min_se_t sh_min_se[1]; sip_path_t sh_path[1]; sip_service_route_t sh_service_route[1]; sip_reason_t sh_reason[1]; sip_security_client_t sh_security_client[1]; sip_security_server_t sh_security_server[1]; sip_security_verify_t sh_security_verify[1]; sip_privacy_t sh_privacy[1]; sip_etag_t sh_etag[1]; sip_if_match_t sh_if_match[1]; /* Entity headers */ sip_mime_version_t sh_mime_version[1]; sip_content_type_t sh_content_type[1]; sip_content_encoding_t sh_content_encoding[1]; sip_content_language_t sh_content_language[1]; sip_content_length_t sh_content_length[1]; sip_content_disposition_t sh_content_disposition[1]; sip_unknown_t sh_unknown[1]; sip_separator_t sh_separator[1]; sip_payload_t sh_payload[1];};SOFIA_END_DECLS#endif /* !defined(SIP_H) */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -