]> CyberLeo.Net >> Repos - FreeBSD/releng/10.3.git/blob - contrib/file/magic/Magdir/python
Update file(1) to new version with security update. [EN-18:02.file]
[FreeBSD/releng/10.3.git] / contrib / file / magic / Magdir / python
1
2 #------------------------------------------------------------------------------
3 # $File: python,v 1.34 2017/08/14 07:40:38 christos Exp $
4 # python:  file(1) magic for python
5 #
6 # Outlook puts """ too for urgent messages
7 # From: David Necas <yeti@physics.muni.cz>
8 # often the module starts with a multiline string
9 0       string/t        """     Python script text executable
10 # MAGIC as specified in Python/import.c (1.5 to 2.7a0 and 3.1a0, assuming
11 # that Py_UnicodeFlag is off for Python 2)
12 # two bytes of magic followed by "\r\n" in little endian order
13 0       belong          0x994e0d0a      python 1.5/1.6 byte-compiled
14 0       belong          0x87c60d0a      python 2.0 byte-compiled
15 0       belong          0x2aeb0d0a      python 2.1 byte-compiled
16 0       belong          0x2ded0d0a      python 2.2 byte-compiled
17 0       belong          0x3bf20d0a      python 2.3 byte-compiled
18 0       belong          0x6df20d0a      python 2.4 byte-compiled
19 0       belong          0xb3f20d0a      python 2.5 byte-compiled
20 0       belong          0xd1f20d0a      python 2.6 byte-compiled
21 0       belong          0x03f30d0a      python 2.7 byte-compiled
22 0       belong          0x3b0c0d0a      python 3.0 byte-compiled
23 0       belong          0x4f0c0d0a      python 3.1 byte-compiled
24 0       belong          0x6c0c0d0a      python 3.2 byte-compiled
25 0       belong          0x9e0c0d0a      python 3.3 byte-compiled
26 0       belong          0xee0c0d0a      python 3.4 byte-compiled
27 0       belong          0x160d0d0a      python 3.5.1- byte-compiled
28 0       belong          0x170d0d0a      python 3.5.2+ byte-compiled
29 0       belong          0x330d0d0a      python 3.6 byte-compiled
30 0       belong          0x3e0d0d0a      python 3.7 byte-compiled
31
32
33 0       search/1/w      #!\ /usr/bin/python     Python script text executable
34 !:strength + 15
35 !:mime text/x-python
36 0       search/1/w      #!\ /usr/local/bin/python       Python script text executable
37 !:strength + 15
38 !:mime text/x-python
39 0       search/1        #!/usr/bin/env\ python  Python script text executable
40 !:strength + 15
41 !:mime text/x-python
42 0       search/10       #!\ /usr/bin/env\ python        Python script text executable
43 !:strength + 15
44 !:mime text/x-python
45
46
47 # from module.submodule import func1, func2
48 0       regex           \^from[\040\t\f\r\n]+([A-Za-z0-9_]|\\.)+[\040\t\f\r\n]+import.*$        Python script text executable
49 !:strength + 15
50 !:mime text/x-python
51
52 # def __init__ (self, ...):
53 0       search/4096     def\ __init__
54 >&0     search/64 self  Python script text executable
55 !:strength + 15
56 !:mime text/x-python
57
58 # if __name__ == "__main__":
59 0 search/4096 if\ __name__
60 >&0 search/64 '__main__'        Python script text executable
61 >&0 search/64 "__main__"        Python script text executable
62 !:strength + 15
63 !:mime text/x-python
64
65 # import module [as abrev]
66 0       regex   \^import\ [_[:alpha:]]+\ as\ [[:alpha:]][[:space:]]*$ Python script text executable
67 !:mime text/x-python
68
69 # comments
70 #0      search/4096     '''
71 #>&0    regex   .*'''$  Python script text executable
72 #!:mime text/x-python
73
74 #0      search/4096     """
75 #>&0    regex   .*"""$  Python script text executable
76 #!:mime text/x-python
77
78 # try:
79 # except: or finally:
80 # block
81 0       search/4096     try:
82 >&0     regex   \^[[:space:]]*except.*:$        Python script text executable
83 !:strength + 15
84 !:mime text/x-python
85 >&0     search/4096     finally:        Python script text executable
86 !:mime text/x-python
87
88 # class name[(base classes,)]: [pass]
89 0       regex   \^class\ [_[:alpha:]]+(\\(.*\\))?(\ )*:([\ \t]+pass)?$          Python script text executable
90 !:strength + 15
91 !:mime text/x-python
92
93 # def name(*args, **kwargs):
94 0       regex    \^[[:space:]]{0,50}def\ {1,50}[_a-zA-Z]{1,100}
95 >&0     regex    \\(([[:alpha:]*_,\ ]){0,255}\\):$ Python script text executable
96 !:strength + 15
97 !:mime text/x-python