diff runtime/syntax/ldapconf.vim @ 1222:756bed568f5d

updated for version 7.1b
author vimboss
date Thu, 10 May 2007 18:59:07 +0000
parents
children 1218c5353e2b
line wrap: on
line diff
new file mode 100644
--- /dev/null
+++ b/runtime/syntax/ldapconf.vim
@@ -0,0 +1,338 @@
+" 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