Add support for timestamp based serial.

Some people uses the current timestamp for the DNS serial number. The
current implementation detects timestamps between September 9 2001 and
March 17 2030. Implementing it has reduced the date based serial
detection to a range between 1900 and 2999, however it should not be a
problem at all because DNS didn't existed before 1900 and, if it still
exists in 3000, there is literally almost 1000 years to fix the problem.
This commit is contained in:
Rodolphe Breard 2015-11-16 12:17:30 +01:00
parent c296d354b2
commit a5e7aa3dd5
2 changed files with 18 additions and 3 deletions

View file

@ -20,12 +20,20 @@ endif
if !exists('g:dnsserial_patterns')
let g:dnsserial_patterns = [
\{
\'regex': '\(\d\{8}\)\(\d\+\)\s*;\s*\cserial',
\'regex': '\(19\d\{2}\|20\d\{2}\)\([01]\d\)\([0-3]\d\)\(\d\+\)\s*;\s*\cserial',
\'matching': [
\{'type': 'date', 'fmt': '%Y%m%d'},
\{'type': 'date', 'fmt': '%Y'},
\{'type': 'date', 'fmt': '%m'},
\{'type': 'date', 'fmt': '%d'},
\{'type': 'integer', 'padding': 2, 'date_reset': 1}
\]
\},
\{
\'regex': '\(1\d\{9}\)\s*;\s*\cserial',
\'matching': [
\{'type': 'date', 'fmt': '%s'},
\]
\},
\{
\'regex': '\(\d\+\)\s*;\s*\cserial',
\'matching': [