📄 sip.h
字号:
* @brief Structure for @Replaces header. */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; /**< @CallID of dialog to replace */ msg_param_t const *rp_params; /**< List of parameters */ char const *rp_to_tag; /**< Value of "to-tag" parameter */ char const *rp_from_tag; /**< Value of "from-tag" parameter */ unsigned rp_early_only; /**< early-only parameter */};/**@ingroup sip_retry_after * @brief Structure for @RetryAfter 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; /**< Value of "duration" parameter */};/**@ingroup sip_request_disposition * @brief Structure for @RequestDisposition header. */struct sip_request_disposition_s{ sip_common_t rd_common[1]; /**< Common fragment info */ sip_error_t *rd_next; /**< Link to next (dummy) */ msg_param_t *rd_items; /**< List of directives */};/**@ingroup sip_caller_preferences * @brief Structure for @AcceptContact and @RejectContact header fields. */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; /**< List of parameters */ char const *cp_q; /**< @Priority */ unsigned cp_require :1; /**< Value of "require" parameter */ unsigned cp_explicit :1; /**< Value of "explicit" parameter */};/**@ingroup sip_reason * @brief Structure for @Reason header field. */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; /**< Value of cause parameter */ char const *re_text; /**< Value of text parameter */};/**@ingroup sip_route * @brief Structure for @Route and @RecordRoute header fields. */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 @RSeq header. */struct sip_rseq_s{ sip_common_t rs_common[1]; /**< Common fragment info */ sip_error_t *rs_next; /**< Dummy link to next */ unsigned long rs_response; /**< Sequence number of response */};/**@ingroup sip_session_expires * @brief Structure for @SessionExpires header. */struct sip_session_expires_s{ sip_common_t x_common[1]; /**< Common fragment info */ sip_error_t *x_next; /**< Dummy link to next */ unsigned long x_delta; /**< Delta-seconds */ msg_param_t const *x_params; /**< List of parameters */ char const *x_refresher; /**< Value of "refresher" * parameter: UAS or UAC */};/**@ingroup sip_min_se * @brief Structure for @MinSE header. */struct sip_min_se_s{ sip_common_t min_common[1]; /**< Common fragment info */ sip_error_t *min_next; /**< Dummy link to next */ unsigned long min_delta; /**< Delta-seconds */ msg_param_t const *min_params; /**< List of extension parameters */};/**@ingroup sip_subscription_state * @brief Structure for @SubscriptionState header. */struct sip_subscription_state_s{ sip_common_t ss_common[1]; /**< Common fragment info */ sip_error_t *ss_next; /**< Dummy link to 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 @Timestamp header. */struct sip_timestamp_s { sip_common_t ts_common[1]; /**< Common fragment info */ sip_error_t *ts_next; /**< Dummy link to next */ char const *ts_stamp; /**< Original timestamp */ char const *ts_delay; /**< Delay at UAS */};/**@ingroup sip_via * @brief Structure for @Via header field. */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 @SecurityClient, @SecurityServer, and * @SecurityVerify 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 @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 + -