summaryrefslogtreecommitdiffstats
path: root/contrib/file/Magdir/perl
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/file/Magdir/perl')
-rw-r--r--contrib/file/Magdir/perl16
1 files changed, 12 insertions, 4 deletions
diff --git a/contrib/file/Magdir/perl b/contrib/file/Magdir/perl
index a00c642..a8daee4 100644
--- a/contrib/file/Magdir/perl
+++ b/contrib/file/Magdir/perl
@@ -13,10 +13,18 @@
0 string eval\ "exec\ /usr/local/bin/perl perl script text executable
0 string eval\ '(exit\ $?0)'\ &&\ eval\ 'exec perl script text
-# a couple more, by me
-# XXX: christos matches
-#0 regex package Perl5 module source text (via regex)
-0 string package Perl5 module source text
+
+# by Dmitry V. Levin and Alexey Tourbin
+# check the first line
+0 string package
+>1 regex \^package[\ \t]+[A-Za-z_]
+>>1 regex \^package[\ \t]+[0-9A-Za-z_:]*\ *; Perl5 module source text
+# not 'p', check other lines
+0 byte !0x70
+>0 regex \^package[\ \t]+[0-9A-Za-z_:]+\ *;
+>>0 regex \^1\ *;|\^(use|sub|my)\ .*[(;{=] Perl5 module source text
+
+
# Perl POD documents
# From: Tom Hukins <tom@eborcom.com>
OpenPOWER on IntegriCloud