xinetd.vim (14208B)
1 " Vim syntax file 2 " Language: xinetd.conf(5) configuration file 3 " Previous Maintainer: Nikolai Weibull <now@bitwi.se> 4 " Latest Revision: 2006-04-19 5 6 if exists("b:current_syntax") 7 finish 8 endif 9 10 let s:cpo_save = &cpo 11 set cpo&vim 12 13 syn keyword xinetdTodo contained TODO FIXME XXX NOTE 14 15 syn region xinetdComment display oneline start='^\s*#' end='$' 16 \ contains=xinetdTodo,@Spell 17 18 syn match xinetdService '^\s*service\>' 19 \ nextgroup=xinetdServiceName skipwhite 20 21 syn match xinetdServiceName contained '\S\+' 22 \ nextgroup=xinetdServiceGroup skipwhite skipnl 23 24 syn match xinetdDefaults '^\s*defaults' 25 \ nextgroup=xinetdServiceGroup skipwhite skipnl 26 27 syn region xinetdServiceGroup contained transparent 28 \ matchgroup=xinetdServiceGroupD start='{' 29 \ matchgroup=xinetdServiceGroupD end='}' 30 \ contains=xinetdAttribute,xinetdReqAttribute, 31 \ xinetdDisable 32 33 syn keyword xinetdReqAttribute contained user server protocol 34 \ nextgroup=xinetdStringEq skipwhite 35 36 syn keyword xinetdAttribute contained id group bind 37 \ interface 38 \ nextgroup=xinetdStringEq skipwhite 39 40 syn match xinetdStringEq contained display '=' 41 \ nextgroup=xinetdString skipwhite 42 43 syn match xinetdString contained display '\S\+' 44 45 syn keyword xinetdAttribute contained type nextgroup=xinetdTypeEq skipwhite 46 47 syn match xinetdTypeEq contained display '=' 48 \ nextgroup=xinetdType skipwhite 49 50 syn keyword xinetdType contained RPC INTERNAL TCPMUX TCPMUXPLUS 51 \ UNLISTED 52 \ nextgroup=xinetdType skipwhite 53 54 syn keyword xinetdAttribute contained flags 55 \ nextgroup=xinetdFlagsEq skipwhite 56 57 syn cluster xinetdFlagsC contains=xinetdFlags,xinetdDeprFlags 58 59 syn match xinetdFlagsEq contained display '=' 60 \ nextgroup=@xinetdFlagsC skipwhite 61 62 syn keyword xinetdFlags contained INTERCEPT NORETRY IDONLY NAMEINARGS 63 \ NODELAY KEEPALIVE NOLIBWRAP SENSOR IPv4 IPv6 64 \ nextgroup=@xinetdFlagsC skipwhite 65 66 syn keyword xinetdDeprFlags contained REUSE nextgroup=xinetdFlagsC skipwhite 67 68 syn keyword xinetdDisable contained disable 69 \ nextgroup=xinetdBooleanEq skipwhite 70 71 syn match xinetdBooleanEq contained display '=' 72 \ nextgroup=xinetdBoolean skipwhite 73 74 syn keyword xinetdBoolean contained yes no 75 76 syn keyword xinetdReqAttribute contained socket_type 77 \ nextgroup=xinetdSocketTypeEq skipwhite 78 79 syn match xinetdSocketTypeEq contained display '=' 80 \ nextgroup=xinetdSocketType skipwhite 81 82 syn keyword xinetdSocketType contained stream dgram raw seqpacket 83 84 syn keyword xinetdReqAttribute contained wait 85 \ nextgroup=xinetdBooleanEq skipwhite 86 87 syn keyword xinetdAttribute contained groups mdns 88 \ nextgroup=xinetdBooleanEq skipwhite 89 90 syn keyword xinetdAttribute contained instances per_source rlimit_cpu 91 \ rlimit_data rlimit_rss rlimit_stack 92 \ nextgroup=xinetdUNumberEq skipwhite 93 94 syn match xinetdUNumberEq contained display '=' 95 \ nextgroup=xinetdUnlimited,xinetdNumber 96 \ skipwhite 97 98 syn keyword xinetdUnlimited contained UNLIMITED 99 100 syn match xinetdNumber contained display '\<\d\+\>' 101 102 syn keyword xinetdAttribute contained nice 103 \ nextgroup=xinetdSignedNumEq skipwhite 104 105 syn match xinetdSignedNumEq contained display '=' 106 \ nextgroup=xinetdSignedNumber skipwhite 107 108 syn match xinetdSignedNumber contained display '[+-]\=\d\+\>' 109 110 syn keyword xinetdAttribute contained server_args 111 \ enabled 112 \ nextgroup=xinetdStringsEq skipwhite 113 114 syn match xinetdStringsEq contained display '=' 115 \ nextgroup=xinetdStrings skipwhite 116 117 syn match xinetdStrings contained display '\S\+' 118 \ nextgroup=xinetdStrings skipwhite 119 120 syn keyword xinetdAttribute contained only_from no_access passenv 121 \ nextgroup=xinetdStringsAdvEq skipwhite 122 123 syn match xinetdStringsAdvEq contained display '[+-]\==' 124 \ nextgroup=xinetdStrings skipwhite 125 126 syn keyword xinetdAttribute contained access_times 127 \ nextgroup=xinetdTimeRangesEq skipwhite 128 129 syn match xinetdTimeRangesEq contained display '=' 130 \ nextgroup=xinetdTimeRanges skipwhite 131 132 syn match xinetdTimeRanges contained display 133 \ '\%(0?\d\|1\d\|2[0-3]\):\%(0?\d\|[1-5]\d\)-\%(0?\d\|1\d\|2[0-3]\):\%(0?\d\|[1-5]\d\)' 134 \ nextgroup=xinetdTimeRanges skipwhite 135 136 syn keyword xinetdAttribute contained log_type nextgroup=xinetdLogTypeEq 137 \ skipwhite 138 139 syn match xinetdLogTypeEq contained display '=' 140 \ nextgroup=xinetdLogType skipwhite 141 142 syn keyword xinetdLogType contained SYSLOG nextgroup=xinetdSyslogType 143 \ skipwhite 144 145 syn keyword xinetdLogType contained FILE nextgroup=xinetdLogFile skipwhite 146 147 syn keyword xinetdSyslogType contained daemon auth authpriv user mail lpr 148 \ news uucp ftp local0 local1 local2 local3 149 \ local4 local5 local6 local7 150 \ nextgroup=xinetdSyslogLevel skipwhite 151 152 syn keyword xinetdSyslogLevel contained emerg alert crit err warning notice 153 \ info debug 154 155 syn match xinetdLogFile contained display '\S\+' 156 \ nextgroup=xinetdLogSoftLimit skipwhite 157 158 syn match xinetdLogSoftLimit contained display '\<\d\+\>' 159 \ nextgroup=xinetdLogHardLimit skipwhite 160 161 syn match xinetdLogHardLimit contained display '\<\d\+\>' 162 163 syn keyword xinetdAttribute contained log_on_success 164 \ nextgroup=xinetdLogSuccessEq skipwhite 165 166 syn match xinetdLogSuccessEq contained display '[+-]\==' 167 \ nextgroup=xinetdLogSuccess skipwhite 168 169 syn keyword xinetdLogSuccess contained PID HOST USERID EXIT DURATION TRAFFIC 170 \ nextgroup=xinetdLogSuccess skipwhite 171 172 syn keyword xinetdAttribute contained log_on_failure 173 \ nextgroup=xinetdLogFailureEq skipwhite 174 175 syn match xinetdLogFailureEq contained display '[+-]\==' 176 \ nextgroup=xinetdLogFailure skipwhite 177 178 syn keyword xinetdLogFailure contained HOST USERID ATTEMPT 179 \ nextgroup=xinetdLogFailure skipwhite 180 181 syn keyword xinetdReqAttribute contained rpc_version 182 \ nextgroup=xinetdRPCVersionEq skipwhite 183 184 syn match xinetdRPCVersionEq contained display '=' 185 \ nextgroup=xinetdRPCVersion skipwhite 186 187 syn match xinetdRPCVersion contained display '\d\+\%(-\d\+\)\=\>' 188 189 syn keyword xinetdReqAttribute contained rpc_number port 190 \ nextgroup=xinetdNumberEq skipwhite 191 192 syn match xinetdNumberEq contained display '=' 193 \ nextgroup=xinetdNumber skipwhite 194 195 syn keyword xinetdAttribute contained env nextgroup=xinetdEnvEq skipwhite 196 197 syn match xinetdEnvEq contained display '+\==' 198 \ nextgroup=xinetdEnvName skipwhite 199 200 syn match xinetdEnvName contained display '[^=]\+' 201 \ nextgroup=xinetdEnvNameEq 202 203 syn match xinetdEnvNameEq contained display '=' nextgroup=xinetdEnvValue 204 205 syn match xinetdEnvValue contained display '\S\+' 206 \ nextgroup=xinetdEnvName skipwhite 207 208 syn keyword xinetdAttribute contained banner banner_success banner_failure 209 \ nextgroup=xinetdPathEq skipwhite 210 211 syn keyword xinetdPPAttribute include includedir 212 \ nextgroup=xinetdPath skipwhite 213 214 syn match xinetdPathEq contained display '=' 215 \ nextgroup=xinetdPath skipwhite 216 217 syn match xinetdPath contained display '\S\+' 218 219 syn keyword xinetdAttribute contained redirect nextgroup=xinetdRedirectEq 220 \ skipwhite 221 222 syn match xinetdRedirectEq contained display '=' 223 \ nextgroup=xinetdRedirectIP skipwhite 224 225 syn match xinetdRedirectIP contained display '\S\+' 226 \ nextgroup=xinetdNumber skipwhite 227 228 syn keyword xinetdAttribute contained cps nextgroup=xinetdCPSEq skipwhite 229 230 syn match xinetdCPSEq contained display '=' 231 \ nextgroup=xinetdCPS skipwhite 232 233 syn match xinetdCPS contained display '\<\d\+\>' 234 \ nextgroup=xinetdNumber skipwhite 235 236 syn keyword xinetdAttribute contained max_load nextgroup=xinetdFloatEq 237 \ skipwhite 238 239 syn match xinetdFloatEq contained display '=' 240 \ nextgroup=xinetdFloat skipwhite 241 242 syn match xinetdFloat contained display '\d\+\.\d*\|\.\d\+' 243 244 syn keyword xinetdAttribute contained umask nextgroup=xinetdOctalEq 245 \ skipwhite 246 247 syn match xinetdOctalEq contained display '=' 248 \ nextgroup=xinetdOctal,xinetdOctalError 249 \ skipwhite 250 251 syn match xinetdOctal contained display '\<0\o\+\>' 252 \ contains=xinetdOctalZero 253 syn match xinetdOctalZero contained display '\<0' 254 syn match xinetdOctalError contained display '\<0\o*[89]\d*\>' 255 256 syn keyword xinetdAttribute contained rlimit_as nextgroup=xinetdASEq 257 \ skipwhite 258 259 syn match xinetdASEq contained display '=' 260 \ nextgroup=xinetdAS,xinetdUnlimited 261 \ skipwhite 262 263 syn match xinetdAS contained display '\d\+' nextgroup=xinetdASMult 264 265 syn match xinetdASMult contained display '[KM]' 266 267 syn keyword xinetdAttribute contained deny_time nextgroup=xinetdDenyTimeEq 268 \ skipwhite 269 270 syn match xinetdDenyTimeEq contained display '=' 271 \ nextgroup=xinetdDenyTime,xinetdNumber 272 \ skipwhite 273 274 syn keyword xinetdDenyTime contained FOREVER NEVER 275 276 hi def link xinetdTodo Todo 277 hi def link xinetdComment Comment 278 hi def link xinetdService Keyword 279 hi def link xinetdServiceName String 280 hi def link xinetdDefaults Keyword 281 hi def link xinetdServiceGroupD Delimiter 282 hi def link xinetdReqAttribute Keyword 283 hi def link xinetdAttribute Type 284 hi def link xinetdEq Operator 285 hi def link xinetdStringEq xinetdEq 286 hi def link xinetdString String 287 hi def link xinetdTypeEq xinetdEq 288 hi def link xinetdType Identifier 289 hi def link xinetdFlagsEq xinetdEq 290 hi def link xinetdFlags xinetdType 291 hi def link xinetdDeprFlags WarningMsg 292 hi def link xinetdDisable Special 293 hi def link xinetdBooleanEq xinetdEq 294 hi def link xinetdBoolean Boolean 295 hi def link xinetdSocketTypeEq xinetdEq 296 hi def link xinetdSocketType xinetdType 297 hi def link xinetdUNumberEq xinetdEq 298 hi def link xinetdUnlimited Define 299 hi def link xinetdNumber Number 300 hi def link xinetdSignedNumEq xinetdEq 301 hi def link xinetdSignedNumber xinetdNumber 302 hi def link xinetdStringsEq xinetdEq 303 hi def link xinetdStrings xinetdString 304 hi def link xinetdStringsAdvEq xinetdEq 305 hi def link xinetdTimeRangesEq xinetdEq 306 hi def link xinetdTimeRanges Number 307 hi def link xinetdLogTypeEq xinetdEq 308 hi def link xinetdLogType Keyword 309 hi def link xinetdSyslogType xinetdType 310 hi def link xinetdSyslogLevel Number 311 hi def link xinetdLogFile xinetdPath 312 hi def link xinetdLogSoftLimit xinetdNumber 313 hi def link xinetdLogHardLimit xinetdNumber 314 hi def link xinetdLogSuccessEq xinetdEq 315 hi def link xinetdLogSuccess xinetdType 316 hi def link xinetdLogFailureEq xinetdEq 317 hi def link xinetdLogFailure xinetdType 318 hi def link xinetdRPCVersionEq xinetdEq 319 hi def link xinetdRPCVersion xinetdNumber 320 hi def link xinetdNumberEq xinetdEq 321 hi def link xinetdEnvEq xinetdEq 322 hi def link xinetdEnvName Identifier 323 hi def link xinetdEnvNameEq xinetdEq 324 hi def link xinetdEnvValue String 325 hi def link xinetdPPAttribute PreProc 326 hi def link xinetdPathEq xinetdEq 327 hi def link xinetdPath String 328 hi def link xinetdRedirectEq xinetdEq 329 hi def link xinetdRedirectIP String 330 hi def link xinetdCPSEq xinetdEq 331 hi def link xinetdCPS xinetdNumber 332 hi def link xinetdFloatEq xinetdEq 333 hi def link xinetdFloat xinetdNumber 334 hi def link xinetdOctalEq xinetdEq 335 hi def link xinetdOctal xinetdNumber 336 hi def link xinetdOctalZero PreProc 337 hi def link xinetdOctalError Error 338 hi def link xinetdASEq xinetdEq 339 hi def link xinetdAS xinetdNumber 340 hi def link xinetdASMult PreProc 341 hi def link xinetdDenyTimeEq xinetdEq 342 hi def link xinetdDenyTime PreProc 343 344 let b:current_syntax = "xinetd" 345 346 let &cpo = s:cpo_save 347 unlet s:cpo_save