⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sipb_bnfrules_forparse.txt

📁 sip torture test tools
💻 TXT
📖 第 1 页 / 共 2 页
字号:
      alphanum  =  ALPHA / DIGIT      reserved    =  ";" / "/" / "?" / ":" / "@" / "&" / "=" / "+"                     / "$" / ","      unreserved  =  alphanum / mark      mark        =  "-" / "_" / "." / "!" / "~" / "*" / "'"                     / "(" / ")"      escaped     =  "%" HEXDIG HEXDIG;!!! We change this rule;- - - - - - - - - - - - - - - - - - - - - -        LWS  =  ( *WSP CRLF 1*WSP ) / ( 1*WSP ) ; linear whitespace;- - - - - - - - - - - - - - - - - - - - - -       SWS  =  [LWS] ; sep whitespace      HCOLON  =  *( SP / HTAB ) ":" SWS      TEXT-UTF8-TRIM  =  1*TEXT-UTF8char *(*LWS TEXT-UTF8char)      TEXT-UTF8char   =  %x21-7E / UTF8-NONASCII      UTF8-NONASCII   =  %xC0-DF 1UTF8-CONT                      /  %xE0-EF 2UTF8-CONT                      /  %xF0-F7 3UTF8-CONT                      /  %xF8-Fb 4UTF8-CONT                      /  %xFC-FD 5UTF8-CONT      UTF8-CONT       =  %x80-BF      LHEX  =  DIGIT / %x61-66 ;lowercase a-f      token       =  1*(alphanum / "-" / "." / "!" / "%" / "*"                     / "_" / "+" / "`" / "'" / "~" )      separators  =  "(" / ")" / "<" / ">" / "@" /                     "," / ";" / ":" / "\" / DQUOTE /                     "/" / "[" / "]" / "?" / "=" /                     "{" / "}" / SP / HTAB      word        =  1*(alphanum / "-" / "." / "!" / "%" / "*" /                     "_" / "+" / "`" / "'" / "~" /                     "(" / ")" / "<" / ">" /                     ":" / "\" / DQUOTE /                     "/" / "[" / "]" / "?" /                     "{" / "}" )      STAR    =  SWS "*" SWS ; asterisk      SLASH   =  SWS "/" SWS ; slash      EQUAL   =  SWS "=" SWS ; equal      LPAREN  =  SWS "(" SWS ; left parenthesis      RPAREN  =  SWS ")" SWS ; right parenthesis      RAQUOT  =  ">" SWS ; right angle quote      LAQUOT  =  SWS "<"; left angle quote      COMMA   =  SWS "," SWS ; comma      SEMI    =  SWS ";" SWS ; semicolon      COLON   =  SWS ":" SWS ; colon      LDQUOT  =  SWS DQUOTE; open double quotation mark      RDQUOT  =  DQUOTE SWS ; close double quotation mark         ;We change this rule!!!   ;- - - - - - - - - - - - - - - - - - - - - - - - - -         comment  =  LPAREN *(ctext / quoted-pair / comment1) RPAREN      comment1  = LPAREN *(ctext / quoted-pair / comment2) RPAREN      comment2  = LPAREN *(ctext / quoted-pair / comment3) RPAREN      comment3  = LPAREN *(ctext / quoted-pair) RPAREN   ;- - - - - - - - - - - - - - - - - - - - - - - - - -                  ctext    =  %x21-27 / %x2A-5B / %x5D-7E / UTF8-NONASCII                  / LWS;We change this rule;- - - - - - - - - - - - - - - - - - - - - - - - - -         quoted-string  =  SWS DQUOTE quoted-string-data DQUOTE      quoted-string-data=*(qdtext / quoted-pair );- - - - - - - - - - - - - - - - - - - - - - - - - -         qdtext         =  LWS / %x21 / %x23-5B / %x5D-7E                        / UTF8-NONASCIIquoted-pair  =  "\" (%x00-09 / %x0B-0C                / %x0E-7F)SIP-URI          =  "sip:" [ userinfo ] hostport                    uri-parameters [ headers ]SIPS-URI         =  "sips:" [ userinfo ] hostport                    uri-parameters [ headers ]		    ;!!!! we delete telephone-subscriber ;- - - - - - - - - - - - - - - - - - -userinfo         =   user  [ ":" password ] "@";- - - - - - - - - - - - - - - - - - -user             =  1*( unreserved / escaped / user-unreserved )user-unreserved  =  "&" / "=" / "+" / "$" / "," / ";" / "?" / "/"password         =  *( unreserved / escaped /                    "&" / "=" / "+" / "$" / "," )hostport         =  host [ ":" port ]; !!! we swap hostname <-> IPv4address;- - - - - - - - - - - - - - - - - - -host             =  IPv4address / hostname / IPv6reference;- - - - - - - - - - - - - - - - - - -   ; !! we swap rules   ; We change it;- - - - - - - - - - - - - - - - - - - - - - -  hostname         =  domainlabel [ "." ] *( domainlabel "." ) [ domainlabel ];- - - - - - - - - - - - - - - - - - - - - - -  domainlabel      =   alphanum *(  *("-") alphanum )IPv4address    =  1*3DIGIT "." 1*3DIGIT "." 1*3DIGIT "." 1*3DIGITIPv6reference  =  "[" IPv6address "]";TODO: make it currect; We change this IPv6addres rule;- - - - - - - - - - - - - - - - - - - - - - -  IPv6address    =  hexparthexpart        =  hexseq / ( hexseq "::" [ hexseq ] [ ":" IPv4address] )                   / "::" [ hexseq ] [ ":" IPv4address ]hexseq         =  hex4 *( ":" ( hex4 / IPv4address )); We move IPv4address from IPv6address to hexseq;- - - - - - - - - - - - - - - - - - - - - - -  hex4           =  1*4HEXDIGport           =  1*DIGITuri-parameters    =  *( ";" uri-parameter);!!!! WE comment other-param;- - - - - - - - - - - - - - - - - - - - - - -  uri-parameter     =  transport-param / user-param / method-param                     / ttl-param / maddr-param / lr-param    ; / other-param;- - - - - - - - - - - - - - - - - - - - - - -  ;We change this rule!!!!;- - - - - - - - - - - - - - - - - - transport-param   =  "transport=" transport-param-transtransport-param-trans=( "udp" / "tcp" / "sctp" / "tls"                       / other-transport);- - - - - - - - - - - - - - - - - - other-transport   =  token;We change this rule!!!;- - - - - - - - - - -user-param        =  "user=" user-param-param user-param-param  = ( "phone" / "ip" / other-user);- - - - - - - - - - - other-user        =  tokenmethod-param      =  "method=" Methodttl-param         =  "ttl=" ttl;We change this rule!!!;- - - - - - - - - - - - - - - - - maddr-param       =  "maddr=" maddr-param-hostmaddr-param-host  = host;- - - - - - - - - - - - - - - - -lr-param          =  "lr"other-param       =  pname [ "=" pvalue ]pname             =  1*paramcharpvalue            =  1*paramcharparamchar         =  param-unreserved / unreserved / escapedparam-unreserved  =  "[" / "]" / "/" / ":" / "&" / "+" / "$"headers         =  "?" header *( "&" header )header          =  hname "=" hvaluehname           =  1*( hnv-unreserved / unreserved / escaped )hvalue          =  *( hnv-unreserved / unreserved / escaped )hnv-unreserved  =  "[" / "]" / "/" / "?" / ":" / "+" / "$"SIP-message    =  Request / ResponseRequest        =  Request-Line                  *( message-header )                  CRLF                  [ message-body ]Request-Line   =  Method SP Request-URI SP SIP-Version CRLFRequest-URI    =  SIP-URI / SIPS-URI / absoluteURIabsoluteURI    =  scheme ":" ( hier-part / opaque-part )hier-part      =  ( net-path / abs-path ) [ "?" query ]net-path       =  "//" authority [ abs-path ]abs-path       =  "/" path-segmentsopaque-part    =  uric-no-slash *uricuric           =  reserved / unreserved / escapeduric-no-slash  =  unreserved / escaped /";"    / "?" / ":" / "@" / "&" / "=" / "+" / "$" / ","path-segments  =  segment *( "/" segment )segment        =  *pchar *( ";" param )param          =  *pcharpchar          =  unreserved / escaped /                  ":" / "@" / "&" / "=" / "+" / "$" / ","scheme         =  ALPHA *( ALPHA / DIGIT / "+" / "-" / "." )authority      =  srvr / reg-namesrvr           =  [ [ userinfo "@" ] hostport ]reg-name       =  1*( unreserved / escaped / "$" / ","                  / ";" / ":" / "@" / "&" / "=" / "+" )query          =  *uricSIP-Version    =  "SIP" "/" 1*DIGIT "." 1*DIGITmessage-header  =  (Accept                /  Accept-Encoding                /  Accept-Language                /  Alert-Info                /  Allow                /  Authentication-Info                /  Authorization                /  Call-ID                /  Call-Info                /  Contact                /  Content-Disposition                /  Content-Encoding                /  Content-Language                /  Content-Length                /  Content-Type                /  CSeq                /  Date                /  Error-Info                /  Expires                /  From                /  In-Reply-To                /  Max-Forwards                /  MIME-Version                /  Min-Expires                /  Organization                /  Priority                /  Proxy-Authenticate                /  Proxy-Authorization                /  Proxy-Require                /  Record-Route                /  Reply-To                /  Require                /  Retry-After                /  Route                /  Server                /  Subject                /  Supported                /  Timestamp                /  To                /  Unsupported                /  User-Agent                /  Via                /  Warning                /  WWW-Authenticate                /  extension-header) CRLFINVITEm           =  %x49.4E.56.49.54.45 ; INVITE in capsACKm              =  %x41.43.4B ; ACK in capsOPTIONSm          =  %x4F.50.54.49.4F.4E.53 ; OPTIONS in capsBYEm              =  %x42.59.45 ; BYE in capsCANCELm           =  %x43.41.4E.43.45.4C ; CANCEL in capsREGISTERm         =  %x52.45.47.49.53.54.45.52 ; REGISTER in capsMethod            =  INVITEm / ACKm / OPTIONSm / BYEm                     / CANCELm / REGISTERm                     / extension-methodextension-method  =  tokenResponse          =  Status-Line                     *( message-header )                     CRLF                     [ message-body ]Status-Line     =  SIP-Version SP Status-Code SP Reason-Phrase CRLFStatus-Code     =  Informational               /   Redirection               /   Success               /   Client-Error               /   Server-Error               /   Global-Failure               /   extension-codeextension-code  =  3DIGITReason-Phrase   =  *(reserved / unreserved / escaped                   / UTF8-NONASCII / UTF8-CONT / SP / HTAB)Informational  =  "100"  ;  Trying              /   "180"  ;  Ringing              /   "181"  ;  Call Is Being Forwarded              /   "182"  ;  Queued              /   "183"  ;  Session ProgressSuccess  =  "200"  ;  OKRedirection  =  "300"  ;  Multiple Choices            /   "301"  ;  Moved Permanently            /   "302"  ;  Moved Temporarily            /   "305"  ;  Use Proxy            /   "380"  ;  Alternative ServiceClient-Error  =  "400"  ;  Bad Request             /   "401"  ;  Unauthorized             /   "402"  ;  Payment Required             /   "403"  ;  Forbidden             /   "404"  ;  Not Found             /   "405"  ;  Method Not Allowed             /   "406"  ;  Not Acceptable             /   "407"  ;  Proxy Authentication Required             /   "408"  ;  Request Timeout             /   "410"  ;  Gone             /   "413"  ;  Request Entity Too Large             /   "414"  ;  Request-URI Too Large             /   "415"  ;  Unsupported Media Type             /   "416"  ;  Unsupported URI Scheme             /   "420"  ;  Bad Extension             /   "421"  ;  Extension Required             /   "423"  ;  Interval Too Brief             /   "480"  ;  Temporarily not available             /   "481"  ;  Call Leg/Transaction Does Not Exist             /   "482"  ;  Loop Detected             /   "483"  ;  Too Many Hops             /   "484"  ;  Address Incomplete             /   "485"  ;  Ambiguous             /   "486"  ;  Busy Here             /   "487"  ;  Request Terminated             /   "488"  ;  Not Acceptable Here             /   "491"  ;  Request Pending             /   "493"  ;  UndecipherableServer-Error  =  "500"  ;  Internal Server Error             /   "501"  ;  Not Implemented             /   "502"  ;  Bad Gateway             /   "503"  ;  Service Unavailable             /   "504"  ;  Server Time-out             /   "505"  ;  SIP Version not supported             /   "513"  ;  Message Too LargeGlobal-Failure  =  "600"  ;  Busy Everywhere               /   "603"  ;  Decline               /   "604"  ;  Does not exist anywhere               /   "606"  ;  Not AcceptableAccept         =  "Accept" HCOLON                   [ accept-range *(COMMA accept-range) ]accept-range   =  media-range *(SEMI accept-param)media-range    =  ( "*/*"                  / ( m-type SLASH "*" )                  / ( m-type SLASH m-subtype )                  ) *( SEMI m-parameter )accept-param   =  ("q" EQUAL qvalue) / generic-paramqvalue         =  ( "0" [ "." 0*3DIGIT ] )                  / ( "1" [ "." 0*3("0") ] )generic-param  =  token [ EQUAL gen-value ]gen-value      =  token / host / quoted-stringAccept-Encoding  =  "Accept-Encoding" HCOLON                     [ encoding *(COMMA encoding) ]encoding         =  codings *(SEMI accept-param)codings          =  content-coding / "*"content-coding   =  tokenAccept-Language  =  "Accept-Language" HCOLON

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -