xref: /vim-8.2.3635/runtime/syntax/ldapconf.vim (revision 214641f7)
1b8017e7aSBram Moolenaar" Vim syntax file
2b8017e7aSBram Moolenaar" Language:             ldap.conf(5) configuration file.
3*214641f7SBram Moolenaar" Previous Maintainer:  Nikolai Weibull <[email protected]>
4b8017e7aSBram Moolenaar" Latest Revision:      2006-12-11
5b8017e7aSBram Moolenaar
6b8017e7aSBram Moolenaarif exists("b:current_syntax")
7b8017e7aSBram Moolenaar  finish
8b8017e7aSBram Moolenaarendif
9b8017e7aSBram Moolenaar
10b8017e7aSBram Moolenaarlet s:cpo_save = &cpo
11b8017e7aSBram Moolenaarset cpo&vim
12b8017e7aSBram Moolenaar
13b8017e7aSBram Moolenaarsyn keyword ldapconfTodo          contained TODO FIXME XXX NOTE
14b8017e7aSBram Moolenaar
15b8017e7aSBram Moolenaarsyn region  ldapconfComment       display oneline start='^\s*#' end='$'
16b8017e7aSBram Moolenaar      \                           contains=ldapconfTodo,
17b8017e7aSBram Moolenaar      \                                    @Spell
18b8017e7aSBram Moolenaar
19b8017e7aSBram Moolenaarsyn match   ldapconfBegin         display '^'
20b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfOption,
21b8017e7aSBram Moolenaar      \                                     ldapconfDeprOption,
22b8017e7aSBram Moolenaar      \                                     ldapconfComment
23b8017e7aSBram Moolenaar
24b8017e7aSBram Moolenaarsyn case    ignore
25b8017e7aSBram Moolenaar
26b8017e7aSBram Moolenaarsyn keyword ldapconfOption        contained URI
27b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfURI
28b8017e7aSBram Moolenaar      \                           skipwhite
29b8017e7aSBram Moolenaar
30b8017e7aSBram Moolenaarsyn keyword ldapconfOption        contained
31b8017e7aSBram Moolenaar      \                           BASE
32b8017e7aSBram Moolenaar      \                           BINDDN
33b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfDNAttrType
34b8017e7aSBram Moolenaar      \                           skipwhite
35b8017e7aSBram Moolenaar
36b8017e7aSBram Moolenaarsyn keyword ldapconfDeprOption    contained
37b8017e7aSBram Moolenaar      \                           HOST
38b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfHost
39b8017e7aSBram Moolenaar      \                           skipwhite
40b8017e7aSBram Moolenaar
41b8017e7aSBram Moolenaarsyn keyword ldapconfDeprOption    contained
42b8017e7aSBram Moolenaar      \                           PORT
43b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfPort
44b8017e7aSBram Moolenaar      \                           skipwhite
45b8017e7aSBram Moolenaar
46b8017e7aSBram Moolenaarsyn keyword ldapconfOption        contained
47b8017e7aSBram Moolenaar      \                           REFERRALS
48b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfBoolean
49b8017e7aSBram Moolenaar      \                           skipwhite
50b8017e7aSBram Moolenaar
51b8017e7aSBram Moolenaarsyn keyword ldapconfOption        contained
52b8017e7aSBram Moolenaar      \                           SIZELIMIT
53b8017e7aSBram Moolenaar      \                           TIMELIMIT
54b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfInteger
55b8017e7aSBram Moolenaar      \                           skipwhite
56b8017e7aSBram Moolenaar
57b8017e7aSBram Moolenaarsyn keyword ldapconfOption        contained
58b8017e7aSBram Moolenaar      \                           DEREF
59b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfDerefWhen
60b8017e7aSBram Moolenaar      \                           skipwhite
61b8017e7aSBram Moolenaar
62b8017e7aSBram Moolenaarsyn keyword ldapconfOption        contained
63b8017e7aSBram Moolenaar      \                           SASL_MECH
64b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfSASLMechanism
65b8017e7aSBram Moolenaar      \                           skipwhite
66b8017e7aSBram Moolenaar
67b8017e7aSBram Moolenaarsyn keyword ldapconfOption        contained
68b8017e7aSBram Moolenaar      \                           SASL_REALM
69b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfSASLRealm
70b8017e7aSBram Moolenaar      \                           skipwhite
71b8017e7aSBram Moolenaar
72b8017e7aSBram Moolenaarsyn keyword ldapconfOption        contained
73b8017e7aSBram Moolenaar      \                           SASL_AUTHCID
74b8017e7aSBram Moolenaar      \                           SASL_AUTHZID
75b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfSASLAuthID
76b8017e7aSBram Moolenaar      \                           skipwhite
77b8017e7aSBram Moolenaar
78b8017e7aSBram Moolenaarsyn keyword ldapconfOption        contained
79b8017e7aSBram Moolenaar      \                           SASL_SECPROPS
80b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfSASLSecProps
81b8017e7aSBram Moolenaar      \                           skipwhite
82b8017e7aSBram Moolenaar
83b8017e7aSBram Moolenaarsyn keyword ldapconfOption        contained
84b8017e7aSBram Moolenaar      \                           TLS_CACERT
85b8017e7aSBram Moolenaar      \                           TLS_CERT
86b8017e7aSBram Moolenaar      \                           TLS_KEY
87b8017e7aSBram Moolenaar      \                           TLS_RANDFILE
88b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfFilename
89b8017e7aSBram Moolenaar      \                           skipwhite
90b8017e7aSBram Moolenaar
91b8017e7aSBram Moolenaarsyn keyword ldapconfOption        contained
92b8017e7aSBram Moolenaar      \                           TLS_CACERTDIR
93b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfPath
94b8017e7aSBram Moolenaar      \                           skipwhite
95b8017e7aSBram Moolenaar
96b8017e7aSBram Moolenaarsyn keyword ldapconfOption        contained
97b8017e7aSBram Moolenaar      \                           TLS_CIPHER_SUITE
98b8017e7aSBram Moolenaar      \                           nextgroup=@ldapconfTLSCipher
99b8017e7aSBram Moolenaar      \                           skipwhite
100b8017e7aSBram Moolenaar
101b8017e7aSBram Moolenaarsyn keyword ldapconfOption        contained
102b8017e7aSBram Moolenaar      \                           TLS_REQCERT
103b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfTLSCertCheck
104b8017e7aSBram Moolenaar      \                           skipwhite
105b8017e7aSBram Moolenaar
106b8017e7aSBram Moolenaarsyn keyword ldapconfOption        contained
107b8017e7aSBram Moolenaar      \                           TLS_CRLCHECK
108b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfTLSCRLCheck
109b8017e7aSBram Moolenaar      \                           skipwhite
110b8017e7aSBram Moolenaar
111b8017e7aSBram Moolenaarsyn case    match
112b8017e7aSBram Moolenaar
113b8017e7aSBram Moolenaarsyn match   ldapconfURI           contained display
114b8017e7aSBram Moolenaar      \                           'ldaps\=://[^[:space:]:]\+\%(:\d\+\)\='
115b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfURI
116b8017e7aSBram Moolenaar      \                           skipwhite
117b8017e7aSBram Moolenaar
118b8017e7aSBram Moolenaar" LDAP Distinguished Names are defined in Section 3 of RFC 2253:
119b8017e7aSBram Moolenaar" http://www.ietf.org/rfc/rfc2253.txt.
120b8017e7aSBram Moolenaarsyn match   ldapconfDNAttrType    contained display
121b8017e7aSBram Moolenaar      \                           '\a[a-zA-Z0-9-]\+\|\d\+\%(\.\d\+\)*'
122b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfDNAttrTypeEq
123b8017e7aSBram Moolenaar
124b8017e7aSBram Moolenaarsyn match   ldapconfDNAttrTypeEq  contained display
125b8017e7aSBram Moolenaar      \                           '='
126b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfDNAttrValue
127b8017e7aSBram Moolenaar
128b8017e7aSBram Moolenaarsyn match   ldapconfDNAttrValue   contained display
129b8017e7aSBram Moolenaar      \                           '\%([^,=+<>#;\\"]\|\\\%([,=+<>#;\\"]\|\x\x\)\)*\|#\%(\x\x\)\+\|"\%([^\\"]\|\\\%([,=+<>#;\\"]\|\x\x\)\)*"'
130b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfDNSeparator
131b8017e7aSBram Moolenaar
132b8017e7aSBram Moolenaarsyn match   ldapconfDNSeparator   contained display
133b8017e7aSBram Moolenaar      \                           '[+,]'
134b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfDNAttrType
135b8017e7aSBram Moolenaar
136b8017e7aSBram Moolenaarsyn match   ldapconfHost          contained display
137b8017e7aSBram Moolenaar      \                           '[^[:space:]:]\+\%(:\d\+\)\='
138b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfHost
139b8017e7aSBram Moolenaar      \                           skipwhite
140b8017e7aSBram Moolenaar
141b8017e7aSBram Moolenaarsyn match   ldapconfPort          contained display
142b8017e7aSBram Moolenaar      \                           '\d\+'
143b8017e7aSBram Moolenaar
144b8017e7aSBram Moolenaarsyn keyword ldapconfBoolean       contained
145b8017e7aSBram Moolenaar      \                           on
146b8017e7aSBram Moolenaar      \                           true
147b8017e7aSBram Moolenaar      \                           yes
148b8017e7aSBram Moolenaar      \                           off
149b8017e7aSBram Moolenaar      \                           false
150b8017e7aSBram Moolenaar      \                           no
151b8017e7aSBram Moolenaar
152b8017e7aSBram Moolenaarsyn match   ldapconfInteger       contained display
153b8017e7aSBram Moolenaar      \                           '\d\+'
154b8017e7aSBram Moolenaar
155b8017e7aSBram Moolenaarsyn keyword ldapconfDerefWhen     contained
156b8017e7aSBram Moolenaar      \                           never
157b8017e7aSBram Moolenaar      \                           searching
158b8017e7aSBram Moolenaar      \                           finding
159b8017e7aSBram Moolenaar      \                           always
160b8017e7aSBram Moolenaar
161b8017e7aSBram Moolenaar" Taken from http://www.iana.org/assignments/sasl-mechanisms.
162b8017e7aSBram Moolenaarsyn keyword ldapconfSASLMechanism contained
163b8017e7aSBram Moolenaar      \                           KERBEROS_V4
164b8017e7aSBram Moolenaar      \                           GSSAPI
165b8017e7aSBram Moolenaar      \                           SKEY
166b8017e7aSBram Moolenaar      \                           EXTERNAL
167b8017e7aSBram Moolenaar      \                           ANONYMOUS
168b8017e7aSBram Moolenaar      \                           OTP
169b8017e7aSBram Moolenaar      \                           PLAIN
170b8017e7aSBram Moolenaar      \                           SECURID
171b8017e7aSBram Moolenaar      \                           NTLM
172b8017e7aSBram Moolenaar      \                           NMAS_LOGIN
173b8017e7aSBram Moolenaar      \                           NMAS_AUTHEN
174b8017e7aSBram Moolenaar      \                           KERBEROS_V5
175b8017e7aSBram Moolenaar
176b8017e7aSBram Moolenaarsyn match   ldapconfSASLMechanism contained display
177b8017e7aSBram Moolenaar      \                           'CRAM-MD5\|GSS-SPNEGO\|DIGEST-MD5\|9798-[UM]-\%(RSA-SHA1-ENC\|\%(EC\)\=DSA-SHA1\)\|NMAS-SAMBA-AUTH'
178b8017e7aSBram Moolenaar
179b8017e7aSBram Moolenaar" TODO: I have been unable to find a definition for a SASL realm,
180b8017e7aSBram Moolenaar" authentication identity, and proxy authorization identity.
181b8017e7aSBram Moolenaarsyn match   ldapconfSASLRealm     contained display
182b8017e7aSBram Moolenaar      \                           '\S\+'
183b8017e7aSBram Moolenaar
184b8017e7aSBram Moolenaarsyn match   ldapconfSASLAuthID    contained display
185b8017e7aSBram Moolenaar      \                           '\S\+'
186b8017e7aSBram Moolenaar
187b8017e7aSBram Moolenaarsyn keyword ldapconfSASLSecProps  contained
188b8017e7aSBram Moolenaar      \                           none
189b8017e7aSBram Moolenaar      \                           noplain
190b8017e7aSBram Moolenaar      \                           noactive
191b8017e7aSBram Moolenaar      \                           nodict
192b8017e7aSBram Moolenaar      \                           noanonymous
193b8017e7aSBram Moolenaar      \                           forwardsec
194b8017e7aSBram Moolenaar      \                           passcred
195b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfSASLSecPSep
196b8017e7aSBram Moolenaar
197b8017e7aSBram Moolenaarsyn keyword ldapconfSASLSecProps  contained
198b8017e7aSBram Moolenaar      \                           minssf
199b8017e7aSBram Moolenaar      \                           maxssf
200b8017e7aSBram Moolenaar      \                           maxbufsize
201b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfSASLSecPEq
202b8017e7aSBram Moolenaar
203b8017e7aSBram Moolenaarsyn match   ldapconfSASLSecPEq    contained display
204b8017e7aSBram Moolenaar      \                           '='
205b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfSASLSecFactor
206b8017e7aSBram Moolenaar
207b8017e7aSBram Moolenaarsyn match   ldapconfSASLSecFactor contained display
208b8017e7aSBram Moolenaar      \                           '\d\+'
209b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfSASLSecPSep
210b8017e7aSBram Moolenaar
211b8017e7aSBram Moolenaarsyn match   ldapconfSASLSecPSep   contained display
212b8017e7aSBram Moolenaar      \                           ','
213b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfSASLSecProps
214b8017e7aSBram Moolenaar
215b8017e7aSBram Moolenaarsyn match   ldapconfFilename      contained display
216b8017e7aSBram Moolenaar      \                           '.\+'
217b8017e7aSBram Moolenaar
218b8017e7aSBram Moolenaarsyn match   ldapconfPath          contained display
219b8017e7aSBram Moolenaar      \                           '.\+'
220b8017e7aSBram Moolenaar
221b8017e7aSBram Moolenaar" Defined in openssl-ciphers(1).
222b8017e7aSBram Moolenaar" TODO: Should we include the stuff under CIPHER SUITE NAMES?
223b8017e7aSBram Moolenaarsyn cluster ldapconfTLSCipher     contains=ldapconfTLSCipherOp,
224b8017e7aSBram Moolenaar      \                                    ldapconfTLSCipherName,
225b8017e7aSBram Moolenaar      \                                    ldapconfTLSCipherSort
226b8017e7aSBram Moolenaar
227b8017e7aSBram Moolenaarsyn match   ldapconfTLSCipherOp   contained display
228b8017e7aSBram Moolenaar      \                           '[+!-]'
229b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfTLSCipherName
230b8017e7aSBram Moolenaar
231b8017e7aSBram Moolenaarsyn keyword ldapconfTLSCipherName contained
232b8017e7aSBram Moolenaar      \                           DEFAULT
233b8017e7aSBram Moolenaar      \                           COMPLEMENTOFDEFAULT
234b8017e7aSBram Moolenaar      \                           ALL
235b8017e7aSBram Moolenaar      \                           COMPLEMENTOFALL
236b8017e7aSBram Moolenaar      \                           HIGH
237b8017e7aSBram Moolenaar      \                           MEDIUM
238b8017e7aSBram Moolenaar      \                           LOW
239b8017e7aSBram Moolenaar      \                           EXP
240b8017e7aSBram Moolenaar      \                           EXPORT
241b8017e7aSBram Moolenaar      \                           EXPORT40
242b8017e7aSBram Moolenaar      \                           EXPORT56
243b8017e7aSBram Moolenaar      \                           eNULL
244b8017e7aSBram Moolenaar      \                           NULL
245b8017e7aSBram Moolenaar      \                           aNULL
246b8017e7aSBram Moolenaar      \                           kRSA
247b8017e7aSBram Moolenaar      \                           RSA
248b8017e7aSBram Moolenaar      \                           kEDH
249b8017e7aSBram Moolenaar      \                           kDHr
250b8017e7aSBram Moolenaar      \                           kDHd
251b8017e7aSBram Moolenaar      \                           aRSA
252b8017e7aSBram Moolenaar      \                           aDSS
253b8017e7aSBram Moolenaar      \                           DSS
254b8017e7aSBram Moolenaar      \                           aDH
255b8017e7aSBram Moolenaar      \                           kFZA
256b8017e7aSBram Moolenaar      \                           aFZA
257b8017e7aSBram Moolenaar      \                           eFZA
258b8017e7aSBram Moolenaar      \                           FZA
259b8017e7aSBram Moolenaar      \                           TLSv1
260b8017e7aSBram Moolenaar      \                           SSLv3
261b8017e7aSBram Moolenaar      \                           SSLv2
262b8017e7aSBram Moolenaar      \                           DH
263b8017e7aSBram Moolenaar      \                           ADH
264b8017e7aSBram Moolenaar      \                           AES
265b8017e7aSBram Moolenaar      \                           3DES
266b8017e7aSBram Moolenaar      \                           DES
267b8017e7aSBram Moolenaar      \                           RC4
268b8017e7aSBram Moolenaar      \                           RC2
269b8017e7aSBram Moolenaar      \                           IDEA
270b8017e7aSBram Moolenaar      \                           MD5
271b8017e7aSBram Moolenaar      \                           SHA1
272b8017e7aSBram Moolenaar      \                           SHA
273b8017e7aSBram Moolenaar      \                           Camellia
274b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfTLSCipherSep
275b8017e7aSBram Moolenaar
276b8017e7aSBram Moolenaarsyn match   ldapconfTLSCipherSort contained display
277b8017e7aSBram Moolenaar      \                           '@STRENGTH'
278b8017e7aSBram Moolenaar      \                           nextgroup=ldapconfTLSCipherSep
279b8017e7aSBram Moolenaar
280b8017e7aSBram Moolenaarsyn match   ldapconfTLSCipherSep  contained display
281b8017e7aSBram Moolenaar      \                           '[:, ]'
282b8017e7aSBram Moolenaar      \                           nextgroup=@ldapconfTLSCipher
283b8017e7aSBram Moolenaar
284b8017e7aSBram Moolenaarsyn keyword ldapconfTLSCertCheck  contained
285b8017e7aSBram Moolenaar      \                           never
286b8017e7aSBram Moolenaar      \                           allow
287b8017e7aSBram Moolenaar      \                           try
288b8017e7aSBram Moolenaar      \                           demand
289b8017e7aSBram Moolenaar      \                           hard
290b8017e7aSBram Moolenaar
291b8017e7aSBram Moolenaarsyn keyword ldapconfTLSCRLCheck   contained
292b8017e7aSBram Moolenaar      \                           none
293b8017e7aSBram Moolenaar      \                           peer
294b8017e7aSBram Moolenaar      \                           all
295b8017e7aSBram Moolenaar
296b8017e7aSBram Moolenaarhi def link ldapconfTodo          Todo
297b8017e7aSBram Moolenaarhi def link ldapconfComment       Comment
298b8017e7aSBram Moolenaarhi def link ldapconfOption        Keyword
299b8017e7aSBram Moolenaarhi def link ldapconfDeprOption    Error
300b8017e7aSBram Moolenaarhi def link ldapconfString        String
301b8017e7aSBram Moolenaarhi def link ldapconfURI           ldapconfString
302b8017e7aSBram Moolenaarhi def link ldapconfDNAttrType    Identifier
303b8017e7aSBram Moolenaarhi def link ldapconfOperator      Operator
304b8017e7aSBram Moolenaarhi def link ldapconfEq            ldapconfOperator
305b8017e7aSBram Moolenaarhi def link ldapconfDNAttrTypeEq  ldapconfEq
306b8017e7aSBram Moolenaarhi def link ldapconfValue         ldapconfString
307b8017e7aSBram Moolenaarhi def link ldapconfDNAttrValue   ldapconfValue
308b8017e7aSBram Moolenaarhi def link ldapconfSeparator     ldapconfOperator
309b8017e7aSBram Moolenaarhi def link ldapconfDNSeparator   ldapconfSeparator
310b8017e7aSBram Moolenaarhi def link ldapconfHost          ldapconfURI
311b8017e7aSBram Moolenaarhi def link ldapconfNumber        Number
312b8017e7aSBram Moolenaarhi def link ldapconfPort          ldapconfNumber
313b8017e7aSBram Moolenaarhi def link ldapconfBoolean       Boolean
314b8017e7aSBram Moolenaarhi def link ldapconfInteger       ldapconfNumber
315b8017e7aSBram Moolenaarhi def link ldapconfType          Type
316b8017e7aSBram Moolenaarhi def link ldapconfDerefWhen     ldapconfType
317b8017e7aSBram Moolenaarhi def link ldapconfDefine        Define
318b8017e7aSBram Moolenaarhi def link ldapconfSASLMechanism ldapconfDefine
319b8017e7aSBram Moolenaarhi def link ldapconfSASLRealm     ldapconfURI
320b8017e7aSBram Moolenaarhi def link ldapconfSASLAuthID    ldapconfValue
321b8017e7aSBram Moolenaarhi def link ldapconfSASLSecProps  ldapconfType
322b8017e7aSBram Moolenaarhi def link ldapconfSASLSecPEq    ldapconfEq
323b8017e7aSBram Moolenaarhi def link ldapconfSASLSecFactor ldapconfNumber
324b8017e7aSBram Moolenaarhi def link ldapconfSASLSecPSep   ldapconfSeparator
325b8017e7aSBram Moolenaarhi def link ldapconfFilename      ldapconfString
326b8017e7aSBram Moolenaarhi def link ldapconfPath          ldapconfFilename
327b8017e7aSBram Moolenaarhi def link ldapconfTLSCipherOp   ldapconfOperator
328b8017e7aSBram Moolenaarhi def link ldapconfTLSCipherName ldapconfDefine
329b8017e7aSBram Moolenaarhi def link ldapconfSpecial       Special
330b8017e7aSBram Moolenaarhi def link ldapconfTLSCipherSort ldapconfSpecial
331b8017e7aSBram Moolenaarhi def link ldapconfTLSCipherSep  ldapconfSeparator
332b8017e7aSBram Moolenaarhi def link ldapconfTLSCertCheck  ldapconfType
333b8017e7aSBram Moolenaarhi def link ldapconfTLSCRLCheck   ldapconfType
334b8017e7aSBram Moolenaar
335b8017e7aSBram Moolenaarlet b:current_syntax = "ldapconf"
336b8017e7aSBram Moolenaar
337b8017e7aSBram Moolenaarlet &cpo = s:cpo_save
338b8017e7aSBram Moolenaarunlet s:cpo_save
339