diff --git a/share/cpim_grammar b/share/cpim_grammar index b3f2a560f..066afb558 100644 Binary files a/share/cpim_grammar and b/share/cpim_grammar differ diff --git a/src/chat/cpim/parser/cpim-rules b/src/chat/cpim/parser/cpim-rules index d2837db2a..b11cccb9a 100644 --- a/src/chat/cpim/parser/cpim-rules +++ b/src/chat/cpim/parser/cpim-rules @@ -1,8 +1,11 @@ Message = Message-headers CRLF Content-headers CRLF -Message-headers = *( From-header / To-header / DateTime-header / cc-header / Subject-header / NS-header / Require-header / Header ) -Content-headers = *Header -Header = Header-name ":" Header-parameters SP Header-value CRLF +Message-headers = 1*( Message-header CRLF ) +Message-header = From-header / To-header / DateTime-header / cc-header / Subject-header / NS-header / Require-header / Header + +Content-headers = 1*( Header CRLF ) + +Header = Header-name ":" Header-parameters SP Header-value Header-name = [ Name-prefix "." ] Name Name-prefix = Name @@ -17,25 +20,25 @@ Param-value = Token / Number / String Header-value = *HEADERCHAR -From-header = %d70.114.111.109 ": " From-header-value CRLF +From-header = %d70.114.111.109 ": " From-header-value From-header-value = [ Formal-name ] "<" URI ">" -To-header = %d84.111 ": " To-header-value CRLF +To-header = %d84.111 ": " To-header-value To-header-value = [ Formal-name ] "<" URI ">" -DateTime-header = %d68.97.116.101.84.105.109.101 ": " DateTime-header-value CRLF +DateTime-header = %d68.97.116.101.84.105.109.101 ": " DateTime-header-value DateTime-header-value = date-time -cc-header = %d99.99 ": " cc-header-value CRLF +cc-header = %d99.99 ": " cc-header-value cc-header-value = [ Formal-name ] "<" URI ">" -Subject-header = %d83.117.98.106.101.99.116 ":" Subject-header-value CRLF +Subject-header = %d83.117.98.106.101.99.116 ":" Subject-header-value Subject-header-value = [ ";" Lang-param ] SP Header-value -NS-header = %d78.83 ": " NS-header-value CRLF +NS-header = %d78.83 ": " NS-header-value NS-header-value = [ Name-prefix SP ] "<" URI ">" -Require-header = %d82.101.113.117.105.114.101 ": " Require-header-value CRLF +Require-header = %d82.101.113.117.105.114.101 ": " Require-header-value Require-header-value = Header-name *( "," Header-name ) Name = 1*NAMECHAR