Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 1 | " pf syntax file |
Bram Moolenaar | bf88493 | 2013-04-05 22:26:15 +0200 | [diff] [blame] | 2 | " Language: OpenBSD packet filter configuration (pf.conf) |
| 3 | " Original Author: Camiel Dobbelaar <cd@sentia.nl> |
| 4 | " Maintainer: Lauri Tirkkonen <lotheac@iki.fi> |
Bram Moolenaar | 063b9d1 | 2016-07-09 20:21:48 +0200 | [diff] [blame] | 5 | " Last Change: 2016 Jul 06 |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 6 | |
Bram Moolenaar | 063b9d1 | 2016-07-09 20:21:48 +0200 | [diff] [blame] | 7 | if exists("b:current_syntax") |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 8 | finish |
| 9 | endif |
| 10 | |
| 11 | setlocal foldmethod=syntax |
Bram Moolenaar | 063b9d1 | 2016-07-09 20:21:48 +0200 | [diff] [blame] | 12 | syn iskeyword @,48-57,_,-,+ |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 13 | syn sync fromstart |
| 14 | |
Bram Moolenaar | bf88493 | 2013-04-05 22:26:15 +0200 | [diff] [blame] | 15 | syn cluster pfNotLS contains=pfTodo,pfVarAssign |
Bram Moolenaar | 063b9d1 | 2016-07-09 20:21:48 +0200 | [diff] [blame] | 16 | syn keyword pfCmd anchor antispoof block include match pass queue |
| 17 | syn keyword pfCmd queue set table |
| 18 | syn match pfCmd /^\s*load\sanchor\>/ |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 19 | syn keyword pfTodo TODO XXX contained |
| 20 | syn keyword pfWildAddr all any |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 21 | syn match pfComment /#.*$/ contains=pfTodo |
| 22 | syn match pfCont /\\$/ |
| 23 | syn match pfErrClose /}/ |
| 24 | syn match pfIPv4 /\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}/ |
| 25 | syn match pfIPv6 /[a-fA-F0-9:]*::[a-fA-F0-9:.]*/ |
| 26 | syn match pfIPv6 /[a-fA-F0-9:]\+:[a-fA-F0-9:]\+:[a-fA-F0-9:.]\+/ |
| 27 | syn match pfNetmask /\/\d\+/ |
| 28 | syn match pfNum /[a-zA-Z0-9_:.]\@<!\d\+[a-zA-Z0-9_:.]\@!/ |
Bram Moolenaar | 063b9d1 | 2016-07-09 20:21:48 +0200 | [diff] [blame] | 29 | syn match pfTable /<\s*[a-zA-Z0-9_:][a-zA-Z0-9_:.-]*\s*>/ |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 30 | syn match pfVar /$[a-zA-Z][a-zA-Z0-9_]*/ |
| 31 | syn match pfVarAssign /^\s*[a-zA-Z][a-zA-Z0-9_]*\s*=/me=e-1 |
| 32 | syn region pfFold1 start=/^#\{1}>/ end=/^#\{1,3}>/me=s-1 transparent fold |
| 33 | syn region pfFold2 start=/^#\{2}>/ end=/^#\{2,3}>/me=s-1 transparent fold |
| 34 | syn region pfFold3 start=/^#\{3}>/ end=/^#\{3}>/me=s-1 transparent fold |
| 35 | syn region pfList start=/{/ end=/}/ transparent contains=ALLBUT,pfErrClose,@pfNotLS |
Bram Moolenaar | 063b9d1 | 2016-07-09 20:21:48 +0200 | [diff] [blame] | 36 | syn region pfString start=/"/ skip=/\\"/ end=/"/ contains=pfIPv4,pfIPv6,pfNetmask,pfTable,pfVar |
| 37 | syn region pfString start=/'/ skip=/\\'/ end=/'/ contains=pfIPv4,pfIPv6,pfNetmask,pfTable,pfVar |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 38 | |
Bram Moolenaar | 063b9d1 | 2016-07-09 20:21:48 +0200 | [diff] [blame] | 39 | syn keyword pfService 802-11-iapp Microsoft-SQL-Monitor |
| 40 | syn keyword pfService Microsoft-SQL-Server NeXTStep NextStep |
| 41 | syn keyword pfService afpovertcp afs3-bos afs3-callback afs3-errors |
| 42 | syn keyword pfService afs3-fileserver afs3-kaserver afs3-prserver |
| 43 | syn keyword pfService afs3-rmtsys afs3-update afs3-vlserver |
| 44 | syn keyword pfService afs3-volser amt-redir-tcp amt-redir-tls |
| 45 | syn keyword pfService amt-soap-http amt-soap-https asf-rmcp at-echo |
| 46 | syn keyword pfService at-nbp at-rtmp at-zis auth authentication |
| 47 | syn keyword pfService bfd-control bfd-echo bftp bgp bgpd biff bootpc |
| 48 | syn keyword pfService bootps canna cddb cddbp chargen chat cmd |
| 49 | syn keyword pfService cmip-agent cmip-man comsat conference |
| 50 | syn keyword pfService conserver courier csnet-ns cso-ns cvspserver |
| 51 | syn keyword pfService daap datametrics daytime dhcpd-sync |
| 52 | syn keyword pfService dhcpv6-client dhcpv6-server discard domain |
| 53 | syn keyword pfService echo efs eklogin ekshell ekshell2 epmap eppc |
| 54 | syn keyword pfService exec finger ftp ftp-data git gopher hostname |
| 55 | syn keyword pfService hostnames hprop http https hunt hylafax iapp |
| 56 | syn keyword pfService icb ident imap imap2 imap3 imaps ingreslock |
| 57 | syn keyword pfService ipp iprop ipsec-msft ipsec-nat-t ipx irc |
| 58 | syn keyword pfService isakmp iscsi isisd iso-tsap kauth kdc kerberos |
| 59 | syn keyword pfService kerberos-adm kerberos-iv kerberos-sec |
| 60 | syn keyword pfService kerberos_master kf kip klogin kpasswd kpop |
| 61 | syn keyword pfService krb524 krb_prop krbupdate krcmd kreg kshell kx |
| 62 | syn keyword pfService l2tp ldap ldaps ldp link login mail mdns |
| 63 | syn keyword pfService mdnsresponder microsoft-ds ms-sql-m ms-sql-s |
| 64 | syn keyword pfService msa msp mtp mysql name nameserver netbios-dgm |
| 65 | syn keyword pfService netbios-ns netbios-ssn netnews netplan netrjs |
| 66 | syn keyword pfService netstat netwall newdate nextstep nfs nfsd |
| 67 | syn keyword pfService nicname nnsp nntp ntalk ntp null openwebnet |
| 68 | syn keyword pfService ospf6d ospfapi ospfd photuris pop2 pop3 pop3pw |
| 69 | syn keyword pfService pop3s poppassd portmap postgresql postoffice |
| 70 | syn keyword pfService pptp presence printer prospero prospero-np |
| 71 | syn keyword pfService puppet pwdgen qotd quote radacct radius |
| 72 | syn keyword pfService radius-acct rdp readnews remotefs resource rfb |
| 73 | syn keyword pfService rfe rfs rfs_server ripd ripng rje rkinit rlp |
| 74 | syn keyword pfService routed router rpc rpcbind rsync rtelnet rtsp |
| 75 | syn keyword pfService sa-msg-port sane-port sftp shell sieve silc |
| 76 | syn keyword pfService sink sip smtp smtps smux snmp snmp-trap |
| 77 | syn keyword pfService snmptrap snpp socks source spamd spamd-cfg |
| 78 | syn keyword pfService spamd-sync spooler spop3 ssdp ssh submission |
| 79 | syn keyword pfService sunrpc supdup supfiledbg supfilesrv support |
| 80 | syn keyword pfService svn svrloc swat syslog syslog-tls systat |
| 81 | syn keyword pfService tacacs tacas+ talk tap tcpmux telnet tempo |
| 82 | syn keyword pfService tftp time timed timeserver timserver tsap |
| 83 | syn keyword pfService ttylink ttytst ub-dns-control ulistserv untp |
| 84 | syn keyword pfService usenet users uucp uucp-path uucpd vnc vxlan |
| 85 | syn keyword pfService wais webster who whod whois www x400 x400-snd |
| 86 | syn keyword pfService xcept xdmcp xmpp-bosh xmpp-client xmpp-server |
| 87 | syn keyword pfService z3950 zabbix-agent zabbix-trapper zebra |
| 88 | syn keyword pfService zebrasrv |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 89 | |
Bram Moolenaar | 063b9d1 | 2016-07-09 20:21:48 +0200 | [diff] [blame] | 90 | hi def link pfCmd Statement |
| 91 | hi def link pfComment Comment |
| 92 | hi def link pfCont Statement |
| 93 | hi def link pfErrClose Error |
| 94 | hi def link pfIPv4 Type |
| 95 | hi def link pfIPv6 Type |
| 96 | hi def link pfNetmask Constant |
| 97 | hi def link pfNum Constant |
| 98 | hi def link pfService Constant |
| 99 | hi def link pfString String |
| 100 | hi def link pfTable Identifier |
| 101 | hi def link pfTodo Todo |
| 102 | hi def link pfVar Identifier |
| 103 | hi def link pfVarAssign Identifier |
| 104 | hi def link pfWildAddr Type |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 105 | |
| 106 | let b:current_syntax = "pf" |