summaryrefslogtreecommitdiff
path: root/usr.bin/file/magdir/perl
diff options
context:
space:
mode:
Diffstat (limited to 'usr.bin/file/magdir/perl')
-rw-r--r--usr.bin/file/magdir/perl50
1 files changed, 50 insertions, 0 deletions
diff --git a/usr.bin/file/magdir/perl b/usr.bin/file/magdir/perl
new file mode 100644
index 00000000000..a8daee4c647
--- /dev/null
+++ b/usr.bin/file/magdir/perl
@@ -0,0 +1,50 @@
+
+#------------------------------------------------------------------------------
+# perl: file(1) magic for Larry Wall's perl language.
+#
+# The ``eval'' line recognizes an outrageously clever hack for USG systems.
+# Keith Waclena <keith@cerberus.uchicago.edu>
+# Send additions to <perl5-porters@perl.org>
+0 string/b #!\ /bin/perl perl script text executable
+0 string eval\ "exec\ /bin/perl perl script text
+0 string/b #!\ /usr/bin/perl perl script text executable
+0 string eval\ "exec\ /usr/bin/perl perl script text
+0 string/b #!\ /usr/local/bin/perl perl script text
+0 string eval\ "exec\ /usr/local/bin/perl perl script text executable
+0 string eval\ '(exit\ $?0)'\ &&\ eval\ 'exec perl script 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>
+0 string/B \=pod\n Perl POD document
+0 string/B \n\=pod\n Perl POD document
+0 string/B \=head1\ Perl POD document
+0 string/B \n\=head1\ Perl POD document
+0 string/B \=head2\ Perl POD document
+0 string/B \n\=head2\ Perl POD document
+
+# Perl Storable data files.
+0 string perl-store perl Storable(v0.6) data
+>4 byte >0 (net-order %d)
+>>4 byte &01 (network-ordered)
+>>4 byte =3 (major 1)
+>>4 byte =2 (major 1)
+
+0 string pst0 perl Storable(v0.7) data
+>4 byte >0
+>>4 byte &01 (network-ordered)
+>>4 byte =5 (major 2)
+>>4 byte =4 (major 2)
+>>5 byte >0 (minor %d)