forked from aniani/vim
		
	
		
			
	
	
		
			339 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
		
		
			
		
	
	
			339 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
|   | " Vim syntax file | ||
|  | " Language:         ldap.conf(5) configuration file. | ||
|  | " Maintainer:       Nikolai Weibull <now@bitwi.se> | ||
|  | " Latest Revision:  2006-12-11 | ||
|  | 
 | ||
|  | if exists("b:current_syntax") | ||
|  |   finish | ||
|  | endif | ||
|  | 
 | ||
|  | let s:cpo_save = &cpo | ||
|  | set cpo&vim | ||
|  | 
 | ||
|  | syn keyword ldapconfTodo          contained TODO FIXME XXX NOTE | ||
|  | 
 | ||
|  | syn region  ldapconfComment       display oneline start='^\s*#' end='$' | ||
|  |       \                           contains=ldapconfTodo, | ||
|  |       \                                    @Spell | ||
|  | 
 | ||
|  | syn match   ldapconfBegin         display '^' | ||
|  |       \                           nextgroup=ldapconfOption, | ||
|  |       \                                     ldapconfDeprOption, | ||
|  |       \                                     ldapconfComment | ||
|  | 
 | ||
|  | syn case    ignore | ||
|  | 
 | ||
|  | syn keyword ldapconfOption        contained URI  | ||
|  |       \                           nextgroup=ldapconfURI | ||
|  |       \                           skipwhite | ||
|  | 
 | ||
|  | syn keyword ldapconfOption        contained | ||
|  |       \                           BASE | ||
|  |       \                           BINDDN | ||
|  |       \                           nextgroup=ldapconfDNAttrType | ||
|  |       \                           skipwhite | ||
|  | 
 | ||
|  | syn keyword ldapconfDeprOption    contained  | ||
|  |       \                           HOST | ||
|  |       \                           nextgroup=ldapconfHost | ||
|  |       \                           skipwhite | ||
|  | 
 | ||
|  | syn keyword ldapconfDeprOption    contained | ||
|  |       \                           PORT | ||
|  |       \                           nextgroup=ldapconfPort | ||
|  |       \                           skipwhite | ||
|  | 
 | ||
|  | syn keyword ldapconfOption        contained | ||
|  |       \                           REFERRALS | ||
|  |       \                           nextgroup=ldapconfBoolean | ||
|  |       \                           skipwhite | ||
|  | 
 | ||
|  | syn keyword ldapconfOption        contained | ||
|  |       \                           SIZELIMIT | ||
|  |       \                           TIMELIMIT | ||
|  |       \                           nextgroup=ldapconfInteger | ||
|  |       \                           skipwhite | ||
|  | 
 | ||
|  | syn keyword ldapconfOption        contained | ||
|  |       \                           DEREF | ||
|  |       \                           nextgroup=ldapconfDerefWhen | ||
|  |       \                           skipwhite | ||
|  | 
 | ||
|  | syn keyword ldapconfOption        contained | ||
|  |       \                           SASL_MECH | ||
|  |       \                           nextgroup=ldapconfSASLMechanism | ||
|  |       \                           skipwhite | ||
|  | 
 | ||
|  | syn keyword ldapconfOption        contained | ||
|  |       \                           SASL_REALM | ||
|  |       \                           nextgroup=ldapconfSASLRealm | ||
|  |       \                           skipwhite | ||
|  | 
 | ||
|  | syn keyword ldapconfOption        contained | ||
|  |       \                           SASL_AUTHCID | ||
|  |       \                           SASL_AUTHZID | ||
|  |       \                           nextgroup=ldapconfSASLAuthID | ||
|  |       \                           skipwhite | ||
|  | 
 | ||
|  | syn keyword ldapconfOption        contained | ||
|  |       \                           SASL_SECPROPS | ||
|  |       \                           nextgroup=ldapconfSASLSecProps | ||
|  |       \                           skipwhite | ||
|  | 
 | ||
|  | syn keyword ldapconfOption        contained | ||
|  |       \                           TLS_CACERT | ||
|  |       \                           TLS_CERT | ||
|  |       \                           TLS_KEY | ||
|  |       \                           TLS_RANDFILE | ||
|  |       \                           nextgroup=ldapconfFilename | ||
|  |       \                           skipwhite | ||
|  | 
 | ||
|  | syn keyword ldapconfOption        contained | ||
|  |       \                           TLS_CACERTDIR | ||
|  |       \                           nextgroup=ldapconfPath | ||
|  |       \                           skipwhite | ||
|  | 
 | ||
|  | syn keyword ldapconfOption        contained | ||
|  |       \                           TLS_CIPHER_SUITE | ||
|  |       \                           nextgroup=@ldapconfTLSCipher | ||
|  |       \                           skipwhite | ||
|  | 
 | ||
|  | syn keyword ldapconfOption        contained | ||
|  |       \                           TLS_REQCERT | ||
|  |       \                           nextgroup=ldapconfTLSCertCheck | ||
|  |       \                           skipwhite | ||
|  | 
 | ||
|  | syn keyword ldapconfOption        contained | ||
|  |       \                           TLS_CRLCHECK | ||
|  |       \                           nextgroup=ldapconfTLSCRLCheck | ||
|  |       \                           skipwhite | ||
|  | 
 | ||
|  | syn case    match | ||
|  | 
 | ||
|  | syn match   ldapconfURI           contained display | ||
|  |       \                           'ldaps\=://[^[:space:]:]\+\%(:\d\+\)\=' | ||
|  |       \                           nextgroup=ldapconfURI | ||
|  |       \                           skipwhite | ||
|  | 
 | ||
|  | " LDAP Distinguished Names are defined in Section 3 of RFC 2253: | ||
|  | " http://www.ietf.org/rfc/rfc2253.txt. | ||
|  | syn match   ldapconfDNAttrType    contained display | ||
|  |       \                           '\a[a-zA-Z0-9-]\+\|\d\+\%(\.\d\+\)*' | ||
|  |       \                           nextgroup=ldapconfDNAttrTypeEq | ||
|  | 
 | ||
|  | syn match   ldapconfDNAttrTypeEq  contained display | ||
|  |       \                           '=' | ||
|  |       \                           nextgroup=ldapconfDNAttrValue | ||
|  | 
 | ||
|  | syn match   ldapconfDNAttrValue   contained display | ||
|  |       \                           '\%([^,=+<>#;\\"]\|\\\%([,=+<>#;\\"]\|\x\x\)\)*\|#\%(\x\x\)\+\|"\%([^\\"]\|\\\%([,=+<>#;\\"]\|\x\x\)\)*"' | ||
|  |       \                           nextgroup=ldapconfDNSeparator | ||
|  | 
 | ||
|  | syn match   ldapconfDNSeparator   contained display | ||
|  |       \                           '[+,]' | ||
|  |       \                           nextgroup=ldapconfDNAttrType | ||
|  | 
 | ||
|  | syn match   ldapconfHost          contained display | ||
|  |       \                           '[^[:space:]:]\+\%(:\d\+\)\=' | ||
|  |       \                           nextgroup=ldapconfHost | ||
|  |       \                           skipwhite | ||
|  | 
 | ||
|  | syn match   ldapconfPort          contained display | ||
|  |       \                           '\d\+' | ||
|  | 
 | ||
|  | syn keyword ldapconfBoolean       contained | ||
|  |       \                           on | ||
|  |       \                           true | ||
|  |       \                           yes | ||
|  |       \                           off | ||
|  |       \                           false | ||
|  |       \                           no | ||
|  | 
 | ||
|  | syn match   ldapconfInteger       contained display | ||
|  |       \                           '\d\+' | ||
|  | 
 | ||
|  | syn keyword ldapconfDerefWhen     contained | ||
|  |       \                           never | ||
|  |       \                           searching | ||
|  |       \                           finding | ||
|  |       \                           always | ||
|  | 
 | ||
|  | " Taken from http://www.iana.org/assignments/sasl-mechanisms. | ||
|  | syn keyword ldapconfSASLMechanism contained | ||
|  |       \                           KERBEROS_V4 | ||
|  |       \                           GSSAPI | ||
|  |       \                           SKEY | ||
|  |       \                           EXTERNAL | ||
|  |       \                           ANONYMOUS | ||
|  |       \                           OTP | ||
|  |       \                           PLAIN | ||
|  |       \                           SECURID | ||
|  |       \                           NTLM | ||
|  |       \                           NMAS_LOGIN | ||
|  |       \                           NMAS_AUTHEN | ||
|  |       \                           KERBEROS_V5 | ||
|  | 
 | ||
|  | syn match   ldapconfSASLMechanism contained display | ||
|  |       \                           'CRAM-MD5\|GSS-SPNEGO\|DIGEST-MD5\|9798-[UM]-\%(RSA-SHA1-ENC\|\%(EC\)\=DSA-SHA1\)\|NMAS-SAMBA-AUTH' | ||
|  | 
 | ||
|  | " TODO: I have been unable to find a definition for a SASL realm, | ||
|  | " authentication identity, and proxy authorization identity. | ||
|  | syn match   ldapconfSASLRealm     contained display | ||
|  |       \                           '\S\+' | ||
|  | 
 | ||
|  | syn match   ldapconfSASLAuthID    contained display | ||
|  |       \                           '\S\+' | ||
|  | 
 | ||
|  | syn keyword ldapconfSASLSecProps  contained | ||
|  |       \                           none | ||
|  |       \                           noplain | ||
|  |       \                           noactive | ||
|  |       \                           nodict | ||
|  |       \                           noanonymous | ||
|  |       \                           forwardsec | ||
|  |       \                           passcred | ||
|  |       \                           nextgroup=ldapconfSASLSecPSep | ||
|  | 
 | ||
|  | syn keyword ldapconfSASLSecProps  contained | ||
|  |       \                           minssf | ||
|  |       \                           maxssf | ||
|  |       \                           maxbufsize | ||
|  |       \                           nextgroup=ldapconfSASLSecPEq | ||
|  | 
 | ||
|  | syn match   ldapconfSASLSecPEq    contained display | ||
|  |       \                           '=' | ||
|  |       \                           nextgroup=ldapconfSASLSecFactor | ||
|  | 
 | ||
|  | syn match   ldapconfSASLSecFactor contained display | ||
|  |       \                           '\d\+' | ||
|  |       \                           nextgroup=ldapconfSASLSecPSep | ||
|  | 
 | ||
|  | syn match   ldapconfSASLSecPSep   contained display | ||
|  |       \                           ',' | ||
|  |       \                           nextgroup=ldapconfSASLSecProps | ||
|  | 
 | ||
|  | syn match   ldapconfFilename      contained display | ||
|  |       \                           '.\+' | ||
|  | 
 | ||
|  | syn match   ldapconfPath          contained display | ||
|  |       \                           '.\+' | ||
|  | 
 | ||
|  | " Defined in openssl-ciphers(1). | ||
|  | " TODO: Should we include the stuff under CIPHER SUITE NAMES? | ||
|  | syn cluster ldapconfTLSCipher     contains=ldapconfTLSCipherOp, | ||
|  |       \                                    ldapconfTLSCipherName, | ||
|  |       \                                    ldapconfTLSCipherSort | ||
|  | 
 | ||
|  | syn match   ldapconfTLSCipherOp   contained display | ||
|  |       \                           '[+!-]' | ||
|  |       \                           nextgroup=ldapconfTLSCipherName | ||
|  | 
 | ||
|  | syn keyword ldapconfTLSCipherName contained | ||
|  |       \                           DEFAULT | ||
|  |       \                           COMPLEMENTOFDEFAULT | ||
|  |       \                           ALL | ||
|  |       \                           COMPLEMENTOFALL | ||
|  |       \                           HIGH | ||
|  |       \                           MEDIUM | ||
|  |       \                           LOW | ||
|  |       \                           EXP | ||
|  |       \                           EXPORT | ||
|  |       \                           EXPORT40 | ||
|  |       \                           EXPORT56 | ||
|  |       \                           eNULL | ||
|  |       \                           NULL | ||
|  |       \                           aNULL | ||
|  |       \                           kRSA | ||
|  |       \                           RSA | ||
|  |       \                           kEDH | ||
|  |       \                           kDHr | ||
|  |       \                           kDHd | ||
|  |       \                           aRSA | ||
|  |       \                           aDSS | ||
|  |       \                           DSS | ||
|  |       \                           aDH | ||
|  |       \                           kFZA | ||
|  |       \                           aFZA | ||
|  |       \                           eFZA | ||
|  |       \                           FZA | ||
|  |       \                           TLSv1 | ||
|  |       \                           SSLv3 | ||
|  |       \                           SSLv2 | ||
|  |       \                           DH | ||
|  |       \                           ADH | ||
|  |       \                           AES | ||
|  |       \                           3DES | ||
|  |       \                           DES | ||
|  |       \                           RC4 | ||
|  |       \                           RC2 | ||
|  |       \                           IDEA | ||
|  |       \                           MD5 | ||
|  |       \                           SHA1 | ||
|  |       \                           SHA | ||
|  |       \                           Camellia | ||
|  |       \                           nextgroup=ldapconfTLSCipherSep | ||
|  | 
 | ||
|  | syn match   ldapconfTLSCipherSort contained display | ||
|  |       \                           '@STRENGTH' | ||
|  |       \                           nextgroup=ldapconfTLSCipherSep | ||
|  | 
 | ||
|  | syn match   ldapconfTLSCipherSep  contained display | ||
|  |       \                           '[:, ]' | ||
|  |       \                           nextgroup=@ldapconfTLSCipher | ||
|  | 
 | ||
|  | syn keyword ldapconfTLSCertCheck  contained | ||
|  |       \                           never | ||
|  |       \                           allow | ||
|  |       \                           try | ||
|  |       \                           demand | ||
|  |       \                           hard | ||
|  | 
 | ||
|  | syn keyword ldapconfTLSCRLCheck   contained | ||
|  |       \                           none | ||
|  |       \                           peer | ||
|  |       \                           all | ||
|  | 
 | ||
|  | hi def link ldapconfTodo          Todo | ||
|  | hi def link ldapconfComment       Comment | ||
|  | hi def link ldapconfOption        Keyword | ||
|  | hi def link ldapconfDeprOption    Error | ||
|  | hi def link ldapconfString        String | ||
|  | hi def link ldapconfURI           ldapconfString | ||
|  | hi def link ldapconfDNAttrType    Identifier | ||
|  | hi def link ldapconfOperator      Operator | ||
|  | hi def link ldapconfEq            ldapconfOperator | ||
|  | hi def link ldapconfDNAttrTypeEq  ldapconfEq | ||
|  | hi def link ldapconfValue         ldapconfString | ||
|  | hi def link ldapconfDNAttrValue   ldapconfValue | ||
|  | hi def link ldapconfSeparator     ldapconfOperator | ||
|  | hi def link ldapconfDNSeparator   ldapconfSeparator | ||
|  | hi def link ldapconfHost          ldapconfURI | ||
|  | hi def link ldapconfNumber        Number | ||
|  | hi def link ldapconfPort          ldapconfNumber | ||
|  | hi def link ldapconfBoolean       Boolean | ||
|  | hi def link ldapconfInteger       ldapconfNumber | ||
|  | hi def link ldapconfType          Type | ||
|  | hi def link ldapconfDerefWhen     ldapconfType | ||
|  | hi def link ldapconfDefine        Define | ||
|  | hi def link ldapconfSASLMechanism ldapconfDefine | ||
|  | hi def link ldapconfSASLRealm     ldapconfURI | ||
|  | hi def link ldapconfSASLAuthID    ldapconfValue | ||
|  | hi def link ldapconfSASLSecProps  ldapconfType | ||
|  | hi def link ldapconfSASLSecPEq    ldapconfEq | ||
|  | hi def link ldapconfSASLSecFactor ldapconfNumber | ||
|  | hi def link ldapconfSASLSecPSep   ldapconfSeparator | ||
|  | hi def link ldapconfFilename      ldapconfString | ||
|  | hi def link ldapconfPath          ldapconfFilename | ||
|  | hi def link ldapconfTLSCipherOp   ldapconfOperator | ||
|  | hi def link ldapconfTLSCipherName ldapconfDefine | ||
|  | hi def link ldapconfSpecial       Special | ||
|  | hi def link ldapconfTLSCipherSort ldapconfSpecial | ||
|  | hi def link ldapconfTLSCipherSep  ldapconfSeparator | ||
|  | hi def link ldapconfTLSCertCheck  ldapconfType | ||
|  | hi def link ldapconfTLSCRLCheck   ldapconfType | ||
|  | 
 | ||
|  | let b:current_syntax = "ldapconf" | ||
|  | 
 | ||
|  | let &cpo = s:cpo_save | ||
|  | unlet s:cpo_save |