Skip to main content

Crate sip_header

Crate sip_header 

Source
Expand description

SIP header field parsers for standard RFC types.

This crate provides parsers for SIP header values as defined in RFC 3261 and extensions. It sits between URI parsing (sip_uri) and full SIP stacks, handling the header-level grammar: display names, header parameters, and structured header values.

§Modules

  • header_addr — RFC 3261 name-addr with header-level parameters
  • header — SIP header name catalog and SipHeaderLookup trait
  • message — Extract headers and Request-URI from raw SIP message text (feature: message)
  • via — RFC 3261 Via header parser
  • warning — RFC 3261 Warning header parser
  • auth — SIP authentication value parser (Authorization, WWW-Authenticate, etc.)
  • contact — RFC 3261 Contact header parser
  • accept — RFC 3261 Accept header parser
  • accept_encoding — RFC 3261 Accept-Encoding header parser
  • accept_language — RFC 3261 Accept-Language header parser
  • security — RFC 3329 Security mechanism parser
  • uri_info<absoluteURI> *(SEMI generic-param) parser (Call-Info, Alert-Info, Error-Info)
  • history_info — RFC 7044 History-Info header parser
  • geolocation — RFC 6442 Geolocation header parser
  • conference_info — RFC 4575 conference event package (feature: conference-info)

Re-exports§

pub use accept::SipAccept;
pub use accept::SipAcceptEntry;
pub use accept::SipAcceptError;
pub use accept_encoding::SipAcceptEncoding;
pub use accept_encoding::SipAcceptEncodingEntry;
pub use accept_encoding::SipAcceptEncodingError;
pub use accept_language::SipAcceptLanguage;
pub use accept_language::SipAcceptLanguageEntry;
pub use accept_language::SipAcceptLanguageError;
pub use auth::SipAuthError;
pub use auth::SipAuthValue;
pub use contact::ContactValue;
pub use geolocation::SipGeolocation;
pub use geolocation::SipGeolocationRef;
pub use header::ParseSipHeaderError;
pub use header::SipHeader;
pub use header::SipHeaderLookup;
pub use header_addr::ParseSipHeaderAddrError;
pub use header_addr::SipHeaderAddr;
pub use history_info::HistoryInfo;
pub use history_info::HistoryInfoEntry;
pub use history_info::HistoryInfoError;
pub use history_info::HistoryInfoReason;
pub use message::extract_header;
pub use message::extract_request_uri;
pub use security::SipSecurity;
pub use security::SipSecurityError;
pub use security::SipSecurityMechanism;
pub use uri_info::UriInfo;
pub use uri_info::UriInfoEntry;
pub use uri_info::UriInfoError;
pub use via::SipVia;
pub use via::SipViaEntry;
pub use via::SipViaError;
pub use warning::SipWarning;
pub use warning::SipWarningEntry;
pub use warning::SipWarningError;
pub use sip_uri;

Modules§

accept
SIP Accept header parser (RFC 3261 §20.1).
accept_encoding
SIP Accept-Encoding header parser (RFC 3261 §20.2).
accept_language
SIP Accept-Language header parser (RFC 3261 §20.3).
auth
SIP authentication value parser (RFC 3261 §20.7, §20.27, §20.28, §20.44).
contact
SIP Contact header value parser (RFC 3261 §20.10).
geolocation
SIP Geolocation header types (RFC 6442).
header
Standard SIP header names and typed lookup trait (RFC 3261 and extensions).
header_addr
RFC 3261 name-addr parser with header-level parameter support.
history_info
SIP History-Info header parser (RFC 7044) with embedded RFC 3326 Reason.
message
SIP message text extraction utilities.
security
SIP Security mechanism parser (RFC 3329).
uri_info
Parser for SIP headers using <absoluteURI> *(SEMI generic-param) syntax.
via
SIP Via header parser (RFC 3261 §20.42).
warning
SIP Warning header parser (RFC 3261 §20.43).

Macros§

define_header_enum
Generates a non-exhaustive enum mapping Rust variants to canonical protocol strings.

Functions§

split_comma_entries
Split comma-separated header entries respecting angle-bracket nesting and double-quoted strings.