polyfile-weave 0.5.5__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of polyfile-weave might be problematic. Click here for more details.

Files changed (585) hide show
  1. polyfile/__init__.py +15 -0
  2. polyfile/__main__.py +394 -0
  3. polyfile/arithmetic.py +27 -0
  4. polyfile/ast.py +114 -0
  5. polyfile/debugger.py +1039 -0
  6. polyfile/expressions.py +346 -0
  7. polyfile/fileutils.py +343 -0
  8. polyfile/html.py +135 -0
  9. polyfile/http/__init__.py +1 -0
  10. polyfile/http/defacto.py +37 -0
  11. polyfile/http/deprecated.py +51 -0
  12. polyfile/http/experimental.py +67 -0
  13. polyfile/http/http_11.py +548 -0
  14. polyfile/http/matcher.py +37 -0
  15. polyfile/http/structured_headers.py +48 -0
  16. polyfile/iterators.py +72 -0
  17. polyfile/jpeg.py +24 -0
  18. polyfile/kaitai/__init__.py +0 -0
  19. polyfile/kaitai/compiler.py +156 -0
  20. polyfile/kaitai/parser.py +312 -0
  21. polyfile/kaitai/parsers/__init__.py +0 -0
  22. polyfile/kaitai/parsers/aix_utmp.py +116 -0
  23. polyfile/kaitai/parsers/allegro_dat.py +367 -0
  24. polyfile/kaitai/parsers/andes_firmware.py +64 -0
  25. polyfile/kaitai/parsers/android_bootldr_asus.py +105 -0
  26. polyfile/kaitai/parsers/android_bootldr_huawei.py +181 -0
  27. polyfile/kaitai/parsers/android_bootldr_qcom.py +217 -0
  28. polyfile/kaitai/parsers/android_dto.py +138 -0
  29. polyfile/kaitai/parsers/android_img.py +319 -0
  30. polyfile/kaitai/parsers/android_nanoapp_header.py +83 -0
  31. polyfile/kaitai/parsers/android_opengl_shaders_cache.py +151 -0
  32. polyfile/kaitai/parsers/android_sparse.py +237 -0
  33. polyfile/kaitai/parsers/android_super.py +401 -0
  34. polyfile/kaitai/parsers/apm_partition_table.py +196 -0
  35. polyfile/kaitai/parsers/apple_single_double.py +180 -0
  36. polyfile/kaitai/parsers/asn1_der.py +235 -0
  37. polyfile/kaitai/parsers/au.py +138 -0
  38. polyfile/kaitai/parsers/avantes_roh60.py +112 -0
  39. polyfile/kaitai/parsers/avi.py +296 -0
  40. polyfile/kaitai/parsers/bcd.py +111 -0
  41. polyfile/kaitai/parsers/bitcoin_transaction.py +210 -0
  42. polyfile/kaitai/parsers/blender_blend.py +334 -0
  43. polyfile/kaitai/parsers/bmp.py +780 -0
  44. polyfile/kaitai/parsers/bson.py +411 -0
  45. polyfile/kaitai/parsers/btrfs_stream.py +318 -0
  46. polyfile/kaitai/parsers/bytes_with_io.py +27 -0
  47. polyfile/kaitai/parsers/chrome_pak.py +194 -0
  48. polyfile/kaitai/parsers/code_6502.py +456 -0
  49. polyfile/kaitai/parsers/compressed_resource.py +217 -0
  50. polyfile/kaitai/parsers/cpio_old_le.py +154 -0
  51. polyfile/kaitai/parsers/cramfs.py +344 -0
  52. polyfile/kaitai/parsers/creative_voice_file.py +342 -0
  53. polyfile/kaitai/parsers/dbf.py +274 -0
  54. polyfile/kaitai/parsers/dcmp_0.py +664 -0
  55. polyfile/kaitai/parsers/dcmp_1.py +422 -0
  56. polyfile/kaitai/parsers/dcmp_2.py +312 -0
  57. polyfile/kaitai/parsers/dcmp_variable_length_integer.py +66 -0
  58. polyfile/kaitai/parsers/dex.py +1086 -0
  59. polyfile/kaitai/parsers/dicom.py +4370 -0
  60. polyfile/kaitai/parsers/dime_message.py +201 -0
  61. polyfile/kaitai/parsers/dns_packet.py +569 -0
  62. polyfile/kaitai/parsers/doom_wad.py +654 -0
  63. polyfile/kaitai/parsers/dos_datetime.py +191 -0
  64. polyfile/kaitai/parsers/dos_mz.py +172 -0
  65. polyfile/kaitai/parsers/ds_store.py +513 -0
  66. polyfile/kaitai/parsers/dtb.py +310 -0
  67. polyfile/kaitai/parsers/dune_2_pak.py +126 -0
  68. polyfile/kaitai/parsers/edid.py +472 -0
  69. polyfile/kaitai/parsers/efivar_signature_list.py +331 -0
  70. polyfile/kaitai/parsers/elf.py +2482 -0
  71. polyfile/kaitai/parsers/ethernet_frame.py +114 -0
  72. polyfile/kaitai/parsers/exif.py +723 -0
  73. polyfile/kaitai/parsers/ext2.py +537 -0
  74. polyfile/kaitai/parsers/fallout2_dat.py +187 -0
  75. polyfile/kaitai/parsers/fallout_dat.py +156 -0
  76. polyfile/kaitai/parsers/fasttracker_xm_module.py +558 -0
  77. polyfile/kaitai/parsers/ftl_dat.py +90 -0
  78. polyfile/kaitai/parsers/genmidi_op2.py +161 -0
  79. polyfile/kaitai/parsers/gettext_mo.py +541 -0
  80. polyfile/kaitai/parsers/gif.py +492 -0
  81. polyfile/kaitai/parsers/gimp_brush.py +244 -0
  82. polyfile/kaitai/parsers/glibc_utmp.py +114 -0
  83. polyfile/kaitai/parsers/gltf_binary.py +132 -0
  84. polyfile/kaitai/parsers/google_protobuf.py +151 -0
  85. polyfile/kaitai/parsers/gpt_partition_table.py +175 -0
  86. polyfile/kaitai/parsers/gran_turismo_vol.py +140 -0
  87. polyfile/kaitai/parsers/grub2_font.py +337 -0
  88. polyfile/kaitai/parsers/gzip.py +232 -0
  89. polyfile/kaitai/parsers/hashcat_restore.py +60 -0
  90. polyfile/kaitai/parsers/hccap.py +111 -0
  91. polyfile/kaitai/parsers/hccapx.py +103 -0
  92. polyfile/kaitai/parsers/heaps_pak.py +177 -0
  93. polyfile/kaitai/parsers/heroes_of_might_and_magic_agg.py +116 -0
  94. polyfile/kaitai/parsers/heroes_of_might_and_magic_bmp.py +34 -0
  95. polyfile/kaitai/parsers/icmp_packet.py +136 -0
  96. polyfile/kaitai/parsers/ico.py +129 -0
  97. polyfile/kaitai/parsers/id3v1_1.py +220 -0
  98. polyfile/kaitai/parsers/id3v2_3.py +324 -0
  99. polyfile/kaitai/parsers/id3v2_4.py +423 -0
  100. polyfile/kaitai/parsers/ines.py +282 -0
  101. polyfile/kaitai/parsers/ipv4_packet.py +158 -0
  102. polyfile/kaitai/parsers/ipv6_packet.py +55 -0
  103. polyfile/kaitai/parsers/iso9660.py +544 -0
  104. polyfile/kaitai/parsers/java_class.py +1113 -0
  105. polyfile/kaitai/parsers/jpeg.py +361 -0
  106. polyfile/kaitai/parsers/luks.py +149 -0
  107. polyfile/kaitai/parsers/lzh.py +165 -0
  108. polyfile/kaitai/parsers/mac_os_resource_snd.py +493 -0
  109. polyfile/kaitai/parsers/mach_o.py +3033 -0
  110. polyfile/kaitai/parsers/mach_o_fat.py +92 -0
  111. polyfile/kaitai/parsers/magicavoxel_vox.py +391 -0
  112. polyfile/kaitai/parsers/manifest.json +1 -0
  113. polyfile/kaitai/parsers/mbr_partition_table.py +119 -0
  114. polyfile/kaitai/parsers/mcap.py +1015 -0
  115. polyfile/kaitai/parsers/microsoft_cfb.py +293 -0
  116. polyfile/kaitai/parsers/microsoft_network_monitor_v2.py +309 -0
  117. polyfile/kaitai/parsers/microsoft_pe.py +765 -0
  118. polyfile/kaitai/parsers/mifare_classic.py +706 -0
  119. polyfile/kaitai/parsers/minecraft_nbt.py +449 -0
  120. polyfile/kaitai/parsers/monomakh_sapr_chg.py +69 -0
  121. polyfile/kaitai/parsers/mozilla_mar.py +239 -0
  122. polyfile/kaitai/parsers/mp4.py +333 -0
  123. polyfile/kaitai/parsers/msgpack.py +467 -0
  124. polyfile/kaitai/parsers/nitf.py +1189 -0
  125. polyfile/kaitai/parsers/nt_mdt_pal.py +155 -0
  126. polyfile/kaitai/parsers/ogg.py +118 -0
  127. polyfile/kaitai/parsers/openpgp_message.py +993 -0
  128. polyfile/kaitai/parsers/packet_ppi.py +515 -0
  129. polyfile/kaitai/parsers/pcap.py +344 -0
  130. polyfile/kaitai/parsers/pcf_font.py +506 -0
  131. polyfile/kaitai/parsers/pcx.py +195 -0
  132. polyfile/kaitai/parsers/pcx_dcx.py +79 -0
  133. polyfile/kaitai/parsers/phar_without_stub.py +399 -0
  134. polyfile/kaitai/parsers/php_serialized_value.py +505 -0
  135. polyfile/kaitai/parsers/png.py +721 -0
  136. polyfile/kaitai/parsers/protocol_body.py +260 -0
  137. polyfile/kaitai/parsers/psx_tim.py +104 -0
  138. polyfile/kaitai/parsers/python_pickle.py +718 -0
  139. polyfile/kaitai/parsers/python_pyc_27.py +510 -0
  140. polyfile/kaitai/parsers/quake_mdl.py +441 -0
  141. polyfile/kaitai/parsers/quake_pak.py +112 -0
  142. polyfile/kaitai/parsers/quicktime_mov.py +634 -0
  143. polyfile/kaitai/parsers/rar.py +265 -0
  144. polyfile/kaitai/parsers/regf.py +569 -0
  145. polyfile/kaitai/parsers/renderware_binary_stream.py +877 -0
  146. polyfile/kaitai/parsers/resource_fork.py +611 -0
  147. polyfile/kaitai/parsers/respack.py +57 -0
  148. polyfile/kaitai/parsers/riff.py +409 -0
  149. polyfile/kaitai/parsers/rpm.py +964 -0
  150. polyfile/kaitai/parsers/rtcp_payload.py +579 -0
  151. polyfile/kaitai/parsers/rtp_packet.py +150 -0
  152. polyfile/kaitai/parsers/rtpdump.py +115 -0
  153. polyfile/kaitai/parsers/ruby_marshal.py +423 -0
  154. polyfile/kaitai/parsers/s3m.py +493 -0
  155. polyfile/kaitai/parsers/saints_row_2_vpp_pc.py +254 -0
  156. polyfile/kaitai/parsers/shapefile_index.py +174 -0
  157. polyfile/kaitai/parsers/shapefile_main.py +893 -0
  158. polyfile/kaitai/parsers/some_ip.py +209 -0
  159. polyfile/kaitai/parsers/some_ip_container.py +37 -0
  160. polyfile/kaitai/parsers/some_ip_sd.py +86 -0
  161. polyfile/kaitai/parsers/some_ip_sd_entries.py +160 -0
  162. polyfile/kaitai/parsers/some_ip_sd_options.py +374 -0
  163. polyfile/kaitai/parsers/specpr.py +404 -0
  164. polyfile/kaitai/parsers/sqlite3.py +472 -0
  165. polyfile/kaitai/parsers/ssh_public_key.py +252 -0
  166. polyfile/kaitai/parsers/standard_midi_file.py +390 -0
  167. polyfile/kaitai/parsers/stl.py +111 -0
  168. polyfile/kaitai/parsers/sudoers_ts.py +201 -0
  169. polyfile/kaitai/parsers/swf.py +406 -0
  170. polyfile/kaitai/parsers/systemd_journal.py +361 -0
  171. polyfile/kaitai/parsers/tcp_segment.py +57 -0
  172. polyfile/kaitai/parsers/tga.py +213 -0
  173. polyfile/kaitai/parsers/tls_client_hello.py +293 -0
  174. polyfile/kaitai/parsers/tr_dos_image.py +322 -0
  175. polyfile/kaitai/parsers/tsm.py +198 -0
  176. polyfile/kaitai/parsers/ttf.py +1847 -0
  177. polyfile/kaitai/parsers/udp_datagram.py +42 -0
  178. polyfile/kaitai/parsers/uefi_te.py +236 -0
  179. polyfile/kaitai/parsers/uimage.py +198 -0
  180. polyfile/kaitai/parsers/utf8_string.py +137 -0
  181. polyfile/kaitai/parsers/vfat.py +410 -0
  182. polyfile/kaitai/parsers/vlq_base128_be.py +104 -0
  183. polyfile/kaitai/parsers/vlq_base128_le.py +129 -0
  184. polyfile/kaitai/parsers/vmware_vmdk.py +167 -0
  185. polyfile/kaitai/parsers/vp8_ivf.py +112 -0
  186. polyfile/kaitai/parsers/warcraft_2_pud.py +423 -0
  187. polyfile/kaitai/parsers/wav.py +1014 -0
  188. polyfile/kaitai/parsers/websocket.py +167 -0
  189. polyfile/kaitai/parsers/windows_evt_log.py +304 -0
  190. polyfile/kaitai/parsers/windows_lnk_file.py +467 -0
  191. polyfile/kaitai/parsers/windows_minidump.py +575 -0
  192. polyfile/kaitai/parsers/windows_resource_file.py +243 -0
  193. polyfile/kaitai/parsers/windows_shell_items.py +190 -0
  194. polyfile/kaitai/parsers/windows_systemtime.py +52 -0
  195. polyfile/kaitai/parsers/wmf.py +502 -0
  196. polyfile/kaitai/parsers/xar.py +181 -0
  197. polyfile/kaitai/parsers/xwd.py +189 -0
  198. polyfile/kaitai/parsers/zip.py +685 -0
  199. polyfile/kaitai/parsers/zisofs.py +158 -0
  200. polyfile/kaitai/parsers/zx_spectrum_tap.py +184 -0
  201. polyfile/kaitaimatcher.py +113 -0
  202. polyfile/languagematcher.py +217 -0
  203. polyfile/logger.py +135 -0
  204. polyfile/magic.py +2983 -0
  205. polyfile/magic_defs/COPYING +29 -0
  206. polyfile/magic_defs/__init__.py +0 -0
  207. polyfile/magic_defs/acorn +102 -0
  208. polyfile/magic_defs/adi +13 -0
  209. polyfile/magic_defs/adventure +122 -0
  210. polyfile/magic_defs/aes +29 -0
  211. polyfile/magic_defs/algol68 +35 -0
  212. polyfile/magic_defs/allegro +9 -0
  213. polyfile/magic_defs/alliant +18 -0
  214. polyfile/magic_defs/alpha +32 -0
  215. polyfile/magic_defs/amanda +12 -0
  216. polyfile/magic_defs/amigaos +218 -0
  217. polyfile/magic_defs/android +259 -0
  218. polyfile/magic_defs/animation +1197 -0
  219. polyfile/magic_defs/aout +46 -0
  220. polyfile/magic_defs/apache +28 -0
  221. polyfile/magic_defs/apl +7 -0
  222. polyfile/magic_defs/apple +773 -0
  223. polyfile/magic_defs/application +7 -0
  224. polyfile/magic_defs/applix +13 -0
  225. polyfile/magic_defs/apt +52 -0
  226. polyfile/magic_defs/archive +2586 -0
  227. polyfile/magic_defs/aria +38 -0
  228. polyfile/magic_defs/arm +50 -0
  229. polyfile/magic_defs/asf +132 -0
  230. polyfile/magic_defs/assembler +18 -0
  231. polyfile/magic_defs/asterix +18 -0
  232. polyfile/magic_defs/att3b +41 -0
  233. polyfile/magic_defs/audio +1291 -0
  234. polyfile/magic_defs/avm +33 -0
  235. polyfile/magic_defs/basis +18 -0
  236. polyfile/magic_defs/beetle +7 -0
  237. polyfile/magic_defs/ber +65 -0
  238. polyfile/magic_defs/bflt +14 -0
  239. polyfile/magic_defs/bhl +10 -0
  240. polyfile/magic_defs/bioinformatics +178 -0
  241. polyfile/magic_defs/biosig +154 -0
  242. polyfile/magic_defs/blackberry +8 -0
  243. polyfile/magic_defs/blcr +25 -0
  244. polyfile/magic_defs/blender +50 -0
  245. polyfile/magic_defs/blit +24 -0
  246. polyfile/magic_defs/bm +10 -0
  247. polyfile/magic_defs/bout +11 -0
  248. polyfile/magic_defs/bsdi +33 -0
  249. polyfile/magic_defs/bsi +10 -0
  250. polyfile/magic_defs/btsnoop +13 -0
  251. polyfile/magic_defs/burp +7 -0
  252. polyfile/magic_defs/bytecode +41 -0
  253. polyfile/magic_defs/c-lang +110 -0
  254. polyfile/magic_defs/c64 +531 -0
  255. polyfile/magic_defs/cad +437 -0
  256. polyfile/magic_defs/cafebabe +107 -0
  257. polyfile/magic_defs/cbor +21 -0
  258. polyfile/magic_defs/ccf +14 -0
  259. polyfile/magic_defs/cddb +12 -0
  260. polyfile/magic_defs/chord +15 -0
  261. polyfile/magic_defs/cisco +12 -0
  262. polyfile/magic_defs/citrus +12 -0
  263. polyfile/magic_defs/clarion +27 -0
  264. polyfile/magic_defs/claris +48 -0
  265. polyfile/magic_defs/clipper +65 -0
  266. polyfile/magic_defs/clojure +30 -0
  267. polyfile/magic_defs/coff +98 -0
  268. polyfile/magic_defs/commands +201 -0
  269. polyfile/magic_defs/communications +22 -0
  270. polyfile/magic_defs/compress +461 -0
  271. polyfile/magic_defs/console +1213 -0
  272. polyfile/magic_defs/convex +69 -0
  273. polyfile/magic_defs/coverage +91 -0
  274. polyfile/magic_defs/cracklib +14 -0
  275. polyfile/magic_defs/crypto +31 -0
  276. polyfile/magic_defs/csv +8 -0
  277. polyfile/magic_defs/ctags +6 -0
  278. polyfile/magic_defs/ctf +23 -0
  279. polyfile/magic_defs/cubemap +8 -0
  280. polyfile/magic_defs/cups +56 -0
  281. polyfile/magic_defs/dact +11 -0
  282. polyfile/magic_defs/database +886 -0
  283. polyfile/magic_defs/dataone +47 -0
  284. polyfile/magic_defs/dbpf +15 -0
  285. polyfile/magic_defs/der +146 -0
  286. polyfile/magic_defs/diamond +12 -0
  287. polyfile/magic_defs/dif +33 -0
  288. polyfile/magic_defs/diff +41 -0
  289. polyfile/magic_defs/digital +59 -0
  290. polyfile/magic_defs/dolby +69 -0
  291. polyfile/magic_defs/dsf +25 -0
  292. polyfile/magic_defs/dump +96 -0
  293. polyfile/magic_defs/dwarfs +45 -0
  294. polyfile/magic_defs/dyadic +61 -0
  295. polyfile/magic_defs/ebml +8 -0
  296. polyfile/magic_defs/edid +11 -0
  297. polyfile/magic_defs/editors +43 -0
  298. polyfile/magic_defs/efi +15 -0
  299. polyfile/magic_defs/elf +379 -0
  300. polyfile/magic_defs/encore +22 -0
  301. polyfile/magic_defs/epoc +62 -0
  302. polyfile/magic_defs/erlang +21 -0
  303. polyfile/magic_defs/espressif +57 -0
  304. polyfile/magic_defs/esri +28 -0
  305. polyfile/magic_defs/etf +33 -0
  306. polyfile/magic_defs/fcs +9 -0
  307. polyfile/magic_defs/filesystems +2694 -0
  308. polyfile/magic_defs/finger +16 -0
  309. polyfile/magic_defs/firmware +133 -0
  310. polyfile/magic_defs/flash +62 -0
  311. polyfile/magic_defs/flif +36 -0
  312. polyfile/magic_defs/fonts +449 -0
  313. polyfile/magic_defs/forth +82 -0
  314. polyfile/magic_defs/fortran +9 -0
  315. polyfile/magic_defs/frame +62 -0
  316. polyfile/magic_defs/freebsd +164 -0
  317. polyfile/magic_defs/fsav +128 -0
  318. polyfile/magic_defs/fusecompress +12 -0
  319. polyfile/magic_defs/games +696 -0
  320. polyfile/magic_defs/gcc +17 -0
  321. polyfile/magic_defs/gconv +10 -0
  322. polyfile/magic_defs/gentoo +85 -0
  323. polyfile/magic_defs/geo +166 -0
  324. polyfile/magic_defs/geos +20 -0
  325. polyfile/magic_defs/gimp +77 -0
  326. polyfile/magic_defs/git +13 -0
  327. polyfile/magic_defs/glibc +21 -0
  328. polyfile/magic_defs/gnome +59 -0
  329. polyfile/magic_defs/gnu +173 -0
  330. polyfile/magic_defs/gnumeric +8 -0
  331. polyfile/magic_defs/gpt +240 -0
  332. polyfile/magic_defs/gpu +28 -0
  333. polyfile/magic_defs/grace +21 -0
  334. polyfile/magic_defs/graphviz +12 -0
  335. polyfile/magic_defs/gringotts +48 -0
  336. polyfile/magic_defs/guile +13 -0
  337. polyfile/magic_defs/hardware +12 -0
  338. polyfile/magic_defs/hitachi-sh +30 -0
  339. polyfile/magic_defs/hp +433 -0
  340. polyfile/magic_defs/human68k +26 -0
  341. polyfile/magic_defs/ibm370 +52 -0
  342. polyfile/magic_defs/ibm6000 +35 -0
  343. polyfile/magic_defs/icc +214 -0
  344. polyfile/magic_defs/iff +80 -0
  345. polyfile/magic_defs/images +4210 -0
  346. polyfile/magic_defs/inform +9 -0
  347. polyfile/magic_defs/intel +310 -0
  348. polyfile/magic_defs/interleaf +9 -0
  349. polyfile/magic_defs/island +10 -0
  350. polyfile/magic_defs/ispell +63 -0
  351. polyfile/magic_defs/isz +15 -0
  352. polyfile/magic_defs/java +52 -0
  353. polyfile/magic_defs/javascript +171 -0
  354. polyfile/magic_defs/jpeg +252 -0
  355. polyfile/magic_defs/json +8 -0
  356. polyfile/magic_defs/karma +9 -0
  357. polyfile/magic_defs/kde +11 -0
  358. polyfile/magic_defs/keepass +20 -0
  359. polyfile/magic_defs/kerberos +45 -0
  360. polyfile/magic_defs/kicad +85 -0
  361. polyfile/magic_defs/kml +34 -0
  362. polyfile/magic_defs/lammps +64 -0
  363. polyfile/magic_defs/lecter +6 -0
  364. polyfile/magic_defs/lex +12 -0
  365. polyfile/magic_defs/lif +50 -0
  366. polyfile/magic_defs/linux +557 -0
  367. polyfile/magic_defs/lisp +78 -0
  368. polyfile/magic_defs/llvm +22 -0
  369. polyfile/magic_defs/locoscript +12 -0
  370. polyfile/magic_defs/lua +31 -0
  371. polyfile/magic_defs/luks +126 -0
  372. polyfile/magic_defs/m4 +11 -0
  373. polyfile/magic_defs/mach +303 -0
  374. polyfile/magic_defs/macintosh +505 -0
  375. polyfile/magic_defs/macos +7 -0
  376. polyfile/magic_defs/magic +10 -0
  377. polyfile/magic_defs/magic.mgc +0 -0
  378. polyfile/magic_defs/mail.news +132 -0
  379. polyfile/magic_defs/make +21 -0
  380. polyfile/magic_defs/map +413 -0
  381. polyfile/magic_defs/maple +109 -0
  382. polyfile/magic_defs/marc21 +30 -0
  383. polyfile/magic_defs/mathcad +8 -0
  384. polyfile/magic_defs/mathematica +188 -0
  385. polyfile/magic_defs/matroska +17 -0
  386. polyfile/magic_defs/mcrypt +52 -0
  387. polyfile/magic_defs/measure +44 -0
  388. polyfile/magic_defs/mercurial +13 -0
  389. polyfile/magic_defs/metastore +8 -0
  390. polyfile/magic_defs/meteorological +53 -0
  391. polyfile/magic_defs/microfocus +21 -0
  392. polyfile/magic_defs/mime +9 -0
  393. polyfile/magic_defs/mips +120 -0
  394. polyfile/magic_defs/mirage +8 -0
  395. polyfile/magic_defs/misctools +140 -0
  396. polyfile/magic_defs/mkid +11 -0
  397. polyfile/magic_defs/mlssa +8 -0
  398. polyfile/magic_defs/mmdf +6 -0
  399. polyfile/magic_defs/modem +92 -0
  400. polyfile/magic_defs/modulefile +9 -0
  401. polyfile/magic_defs/motorola +71 -0
  402. polyfile/magic_defs/mozilla +37 -0
  403. polyfile/magic_defs/msdos +2304 -0
  404. polyfile/magic_defs/msooxml +68 -0
  405. polyfile/magic_defs/msvc +222 -0
  406. polyfile/magic_defs/msx +309 -0
  407. polyfile/magic_defs/mup +24 -0
  408. polyfile/magic_defs/music +17 -0
  409. polyfile/magic_defs/nasa +7 -0
  410. polyfile/magic_defs/natinst +24 -0
  411. polyfile/magic_defs/ncr +49 -0
  412. polyfile/magic_defs/neko +12 -0
  413. polyfile/magic_defs/netbsd +251 -0
  414. polyfile/magic_defs/netscape +26 -0
  415. polyfile/magic_defs/netware +11 -0
  416. polyfile/magic_defs/news +13 -0
  417. polyfile/magic_defs/nifty +202 -0
  418. polyfile/magic_defs/nim-lang +29 -0
  419. polyfile/magic_defs/nitpicker +14 -0
  420. polyfile/magic_defs/numpy +9 -0
  421. polyfile/magic_defs/oasis +12 -0
  422. polyfile/magic_defs/ocaml +14 -0
  423. polyfile/magic_defs/octave +6 -0
  424. polyfile/magic_defs/ole2compounddocs +760 -0
  425. polyfile/magic_defs/olf +98 -0
  426. polyfile/magic_defs/openfst +17 -0
  427. polyfile/magic_defs/opentimestamps +16 -0
  428. polyfile/magic_defs/oric +16 -0
  429. polyfile/magic_defs/os2 +186 -0
  430. polyfile/magic_defs/os400 +39 -0
  431. polyfile/magic_defs/os9 +80 -0
  432. polyfile/magic_defs/osf1 +10 -0
  433. polyfile/magic_defs/palm +156 -0
  434. polyfile/magic_defs/parix +13 -0
  435. polyfile/magic_defs/parrot +22 -0
  436. polyfile/magic_defs/pascal +39 -0
  437. polyfile/magic_defs/pbf +11 -0
  438. polyfile/magic_defs/pbm +8 -0
  439. polyfile/magic_defs/pc88 +24 -0
  440. polyfile/magic_defs/pc98 +77 -0
  441. polyfile/magic_defs/pci_ids +116 -0
  442. polyfile/magic_defs/pcjr +8 -0
  443. polyfile/magic_defs/pdf +51 -0
  444. polyfile/magic_defs/pdp +42 -0
  445. polyfile/magic_defs/perl +100 -0
  446. polyfile/magic_defs/pgf +52 -0
  447. polyfile/magic_defs/pgp +581 -0
  448. polyfile/magic_defs/pgp-binary-keys +388 -0
  449. polyfile/magic_defs/pkgadd +7 -0
  450. polyfile/magic_defs/plan9 +25 -0
  451. polyfile/magic_defs/playdate +57 -0
  452. polyfile/magic_defs/plus5 +18 -0
  453. polyfile/magic_defs/pmem +46 -0
  454. polyfile/magic_defs/polyfile_zip +5 -0
  455. polyfile/magic_defs/polyml +23 -0
  456. polyfile/magic_defs/printer +269 -0
  457. polyfile/magic_defs/project +10 -0
  458. polyfile/magic_defs/psdbms +14 -0
  459. polyfile/magic_defs/psl +14 -0
  460. polyfile/magic_defs/pulsar +13 -0
  461. polyfile/magic_defs/puzzle +17 -0
  462. polyfile/magic_defs/pwsafe +14 -0
  463. polyfile/magic_defs/pyramid +12 -0
  464. polyfile/magic_defs/python +305 -0
  465. polyfile/magic_defs/qt +30 -0
  466. polyfile/magic_defs/revision +66 -0
  467. polyfile/magic_defs/riff +840 -0
  468. polyfile/magic_defs/rinex +44 -0
  469. polyfile/magic_defs/ringdove +45 -0
  470. polyfile/magic_defs/rpi +52 -0
  471. polyfile/magic_defs/rpm +45 -0
  472. polyfile/magic_defs/rpmsg +7 -0
  473. polyfile/magic_defs/rst +11 -0
  474. polyfile/magic_defs/rtf +94 -0
  475. polyfile/magic_defs/ruby +55 -0
  476. polyfile/magic_defs/rust +21 -0
  477. polyfile/magic_defs/sc +7 -0
  478. polyfile/magic_defs/sccs +24 -0
  479. polyfile/magic_defs/scientific +144 -0
  480. polyfile/magic_defs/securitycerts +6 -0
  481. polyfile/magic_defs/selinux +24 -0
  482. polyfile/magic_defs/sendmail +37 -0
  483. polyfile/magic_defs/sequent +42 -0
  484. polyfile/magic_defs/sereal +35 -0
  485. polyfile/magic_defs/sgi +144 -0
  486. polyfile/magic_defs/sgml +161 -0
  487. polyfile/magic_defs/sharc +23 -0
  488. polyfile/magic_defs/sinclair +40 -0
  489. polyfile/magic_defs/sisu +18 -0
  490. polyfile/magic_defs/sketch +6 -0
  491. polyfile/magic_defs/smalltalk +25 -0
  492. polyfile/magic_defs/smile +34 -0
  493. polyfile/magic_defs/sniffer +482 -0
  494. polyfile/magic_defs/softquad +40 -0
  495. polyfile/magic_defs/sosi +40 -0
  496. polyfile/magic_defs/spec +21 -0
  497. polyfile/magic_defs/spectrum +184 -0
  498. polyfile/magic_defs/sql +288 -0
  499. polyfile/magic_defs/ssh +39 -0
  500. polyfile/magic_defs/ssl +20 -0
  501. polyfile/magic_defs/statistics +45 -0
  502. polyfile/magic_defs/subtitle +38 -0
  503. polyfile/magic_defs/sun +141 -0
  504. polyfile/magic_defs/svf +5 -0
  505. polyfile/magic_defs/sylk +36 -0
  506. polyfile/magic_defs/symbos +42 -0
  507. polyfile/magic_defs/sysex +429 -0
  508. polyfile/magic_defs/tcl +29 -0
  509. polyfile/magic_defs/teapot +6 -0
  510. polyfile/magic_defs/terminfo +63 -0
  511. polyfile/magic_defs/tex +141 -0
  512. polyfile/magic_defs/tgif +7 -0
  513. polyfile/magic_defs/ti-8x +239 -0
  514. polyfile/magic_defs/timezone +42 -0
  515. polyfile/magic_defs/tplink +95 -0
  516. polyfile/magic_defs/troff +38 -0
  517. polyfile/magic_defs/tuxedo +8 -0
  518. polyfile/magic_defs/typeset +8 -0
  519. polyfile/magic_defs/uf2 +72 -0
  520. polyfile/magic_defs/unicode +15 -0
  521. polyfile/magic_defs/unisig +12 -0
  522. polyfile/magic_defs/unknown +34 -0
  523. polyfile/magic_defs/usd +21 -0
  524. polyfile/magic_defs/uterus +16 -0
  525. polyfile/magic_defs/uuencode +28 -0
  526. polyfile/magic_defs/vacuum-cleaner +54 -0
  527. polyfile/magic_defs/varied.out +46 -0
  528. polyfile/magic_defs/varied.script +21 -0
  529. polyfile/magic_defs/vax +32 -0
  530. polyfile/magic_defs/vicar +17 -0
  531. polyfile/magic_defs/virtual +307 -0
  532. polyfile/magic_defs/virtutech +12 -0
  533. polyfile/magic_defs/visx +32 -0
  534. polyfile/magic_defs/vms +30 -0
  535. polyfile/magic_defs/vmware +6 -0
  536. polyfile/magic_defs/vorbis +155 -0
  537. polyfile/magic_defs/vxl +14 -0
  538. polyfile/magic_defs/warc +16 -0
  539. polyfile/magic_defs/weak +16 -0
  540. polyfile/magic_defs/web +18 -0
  541. polyfile/magic_defs/webassembly +17 -0
  542. polyfile/magic_defs/windows +1811 -0
  543. polyfile/magic_defs/wireless +7 -0
  544. polyfile/magic_defs/wordprocessors +630 -0
  545. polyfile/magic_defs/wsdl +23 -0
  546. polyfile/magic_defs/x68000 +25 -0
  547. polyfile/magic_defs/xdelta +13 -0
  548. polyfile/magic_defs/xenix +106 -0
  549. polyfile/magic_defs/xilinx +58 -0
  550. polyfile/magic_defs/xo65 +37 -0
  551. polyfile/magic_defs/xwindows +43 -0
  552. polyfile/magic_defs/yara +17 -0
  553. polyfile/magic_defs/zfs +96 -0
  554. polyfile/magic_defs/zilog +12 -0
  555. polyfile/magic_defs/zip +126 -0
  556. polyfile/magic_defs/zyxel +17 -0
  557. polyfile/nes.py +144 -0
  558. polyfile/nitf.py +15 -0
  559. polyfile/pdf.py +1264 -0
  560. polyfile/pickles.py +45 -0
  561. polyfile/polyfile.py +409 -0
  562. polyfile/profiling.py +115 -0
  563. polyfile/repl.py +624 -0
  564. polyfile/search.py +310 -0
  565. polyfile/serialization.py +323 -0
  566. polyfile/structmatcher.py +46 -0
  567. polyfile/structs.py +281 -0
  568. polyfile/templates/download.js +162 -0
  569. polyfile/templates/hexdump.css +268 -0
  570. polyfile/templates/hexdump.js +756 -0
  571. polyfile/templates/jquery-3.4.1.min.js +2 -0
  572. polyfile/templates/template.html +119 -0
  573. polyfile/wildcards.py +62 -0
  574. polyfile/zipmatcher.py +183 -0
  575. polyfile_weave-0.5.5.dist-info/METADATA +173 -0
  576. polyfile_weave-0.5.5.dist-info/RECORD +585 -0
  577. polyfile_weave-0.5.5.dist-info/WHEEL +5 -0
  578. polyfile_weave-0.5.5.dist-info/entry_points.txt +2 -0
  579. polyfile_weave-0.5.5.dist-info/licenses/LICENSE +202 -0
  580. polyfile_weave-0.5.5.dist-info/top_level.txt +2 -0
  581. polymerge/__init__.py +1 -0
  582. polymerge/__main__.py +296 -0
  583. polymerge/cfg.py +127 -0
  584. polymerge/polymerge.py +227 -0
  585. polymerge/polytracker.py +190 -0
@@ -0,0 +1,505 @@
1
+
2
+ #------------------------------------------------------------------------------
3
+ # $File: macintosh,v 1.36 2022/12/06 18:45:20 christos Exp $
4
+ # macintosh description
5
+ #
6
+ # BinHex is the Macintosh ASCII-encoded file format (see also "apple")
7
+ # Daniel Quinlan, quinlan@yggdrasil.com
8
+ # Update: Joerg Jenderek
9
+ # URL: https://en.wikipedia.org/wiki/BinHex
10
+ # Reference: http://fileformats.archiveteam.org/wiki/BinHex
11
+ # Note: only tested with version 4.0 and hqx extension
12
+ # Any text/binary before the characteristic comment sentence is to be ignored like in
13
+ # http://ftp.vim.org/pub/ftp/ftp/infomac/disk/mac-update-40b7.hqx
14
+ 0 search/1602 (This\ file\
15
+ >&0 use binhex
16
+ # http://ftp.vim.org/pub/ftp/ftp/infomac/_Disk_&_File/zap-res-forks-101.hqx
17
+ 0 search/2652/b (This\ file\
18
+ >&0 use binhex
19
+ 0 name binhex
20
+ # keep split search string format similar like in version 5.37
21
+ >0 string must\ be\ converted\ with\ BinHex\ BinHex binary text, version
22
+ # http://www.macdisk.com/binhexen.php3
23
+ !:apple BNHQTEXT
24
+ # http://www.faqs.org/faqs/macintosh/comm-faq/part1/
25
+ >>&0 string 1.0 1.0
26
+ !:mime application/mac-binhex
27
+ !:ext hex
28
+ >>&0 string 2.0 2.0
29
+ !:mime application/mac-binhex
30
+ !:ext hcx
31
+ # BinHex 3.0 never existed
32
+ >>&0 string 4.0 4.0
33
+ !:mime application/mac-binhex40
34
+ !:ext hqx
35
+ # BinHex 5.0 also MacBinary I
36
+ >>&0 string 5.0 5.0
37
+ !:mime application/mac-binhex40
38
+ !:ext hqx
39
+ # this should never happen
40
+ >>&0 default x
41
+ >>>&0 string x %.3s
42
+ !:mime application/mac-binhex
43
+ !:ext hqx
44
+
45
+ # Stuffit archives are the de facto standard of compression for Macintosh
46
+ # files obtained from most archives. (franklsm@tuns.ca)
47
+ 0 string SIT! StuffIt Archive (data)
48
+ !:mime application/x-stuffit
49
+ !:apple SIT!SIT!
50
+ >2 string x : %s
51
+ 0 string SITD StuffIt Deluxe (data)
52
+ >2 string x : %s
53
+ 0 string Seg StuffIt Deluxe Segment (data)
54
+ >2 string x : %s
55
+
56
+ # Newer StuffIt archives (grant@netbsd.org)
57
+ 0 string StuffIt StuffIt Archive
58
+ !:mime application/x-stuffit
59
+ !:apple SIT!SIT!
60
+ #>162 string >0 : %s
61
+
62
+ # Macintosh Applications and Installation binaries (franklsm@tuns.ca)
63
+ # GRR: Too weak
64
+ #0 string APPL Macintosh Application (data)
65
+ #>2 string x \b: %s
66
+
67
+ # Macintosh System files (franklsm@tuns.ca)
68
+ # GRR: Too weak
69
+ #0 string zsys Macintosh System File (data)
70
+ #0 string FNDR Macintosh Finder (data)
71
+ #0 string libr Macintosh Library (data)
72
+ #>2 string x : %s
73
+ #0 string shlb Macintosh Shared Library (data)
74
+ #>2 string x : %s
75
+ #0 string cdev Macintosh Control Panel (data)
76
+ #>2 string x : %s
77
+ #0 string INIT Macintosh Extension (data)
78
+ #>2 string x : %s
79
+ #0 string FFIL Macintosh Truetype Font (data)
80
+ #>2 string x : %s
81
+ #0 string LWFN Macintosh Postscript Font (data)
82
+ #>2 string x : %s
83
+
84
+ # Additional Macintosh Files (franklsm@tuns.ca)
85
+ # GRR: Too weak
86
+ #0 string PACT Macintosh Compact Pro Archive (data)
87
+ #>2 string x : %s
88
+ #0 string ttro Macintosh TeachText File (data)
89
+ #>2 string x : %s
90
+ #0 string TEXT Macintosh TeachText File (data)
91
+ #>2 string x : %s
92
+ #0 string PDF Macintosh PDF File (data)
93
+ #>2 string x : %s
94
+
95
+ # MacBinary format (Eric Fischer, enf@pobox.com)
96
+ # Update: Joerg Jenderek
97
+ # URL: https://en.wikipedia.org/wiki/MacBinary
98
+ # http://fileformats.archiveteam.org/wiki/MacBinary
99
+ # Reference: https://files.stairways.com/other/macbinaryii-standard-info.txt
100
+ # Note: verified by macutils `macunpack -i -v BBEdit4.0.sit.bin` and
101
+ # `deark -l -d -m macbinary G3FirmwareUpdate1.1.smi.bin`
102
+ #
103
+ # Unfortunately MacBinary doesn't really have a magic number prior
104
+ # to the MacBinary III format.
105
+ #
106
+
107
+ # old version number, must be kept at zero for compatibility
108
+ 0 byte 0
109
+ # length of filename (must be in the range 1-63)
110
+ >1 ubyte >0
111
+ # skip T.PIC.LZ INSTRUMENT.7T INVENTORY
112
+ >>1 ubyte <64
113
+ # skip Docs.MWII ReadMe.MacWrite "Notes (MacWrite II)"
114
+ # by looking for printable characters at beginning of file name
115
+ >>>2 ubelong >0x1F000000
116
+ # zero fill, must be zero for compatibility
117
+ >>>>74 byte 0
118
+ # zero fill, must be zero for compatibility
119
+ >>>>>82 byte 0
120
+ # skip few DEGAS mid-res uncompressed bitmap (GEMINI03.PI2 CODE_RAM.PI2) with "too high" file names ffffff88 ffff4f00
121
+ >>>>>>2 ubelong <0xffff0000
122
+ # MacBinary I test for valid version numbers
123
+ >>>>>>>122 ubeshort 0
124
+ # additional check for undefined header fields in MacBinary I
125
+ #>>>>>>>>101 ulong 0
126
+ >>>>>>>>0 use mac-bin
127
+ # MacBinary II the newer versions begins at 129
128
+ >>>>>>>122 ubeshort 0x8181
129
+ >>>>>>>>0 use mac-bin
130
+ # MacBinary III with MacBinary II to read
131
+ >>>>>>122 ubeshort 0x8281
132
+ >>>>>>>0 use mac-bin
133
+
134
+ # display information of MacBinary file
135
+ 0 name mac-bin
136
+ >122 ubyte x MacBinary
137
+ # versions for MacBinary II/III
138
+ >122 ubyte 129 II
139
+ >122 ubyte 130 III
140
+ # only in MacBinary III
141
+ >>102 string !mBIN with surprising version
142
+ !:mime application/x-macbinary
143
+ !:apple PSPTBINA
144
+ !:ext bin/macbin
145
+ # THIS SHOULD NEVER HAPPEN! Maybe another file type is misidentified as MacBinary
146
+ #>1 ubyte >63 \b, name length %u too BIG!
147
+ #>122 ubeshort x \b, version %#x
148
+ # Finder flags if not 0
149
+ # >73 byte !0 \b, flags 0x
150
+ # >73 byte =0
151
+ # >>101 byte !0 \b, flags 0x
152
+ # # original Finder flags (Bits 8-15)
153
+ # >73 byte !0 \b%x
154
+ # # finder flags, bits 0-7
155
+ # >101 byte !0 \b%x
156
+ >73 byte &0x01 \b, inited
157
+ >73 byte &0x02 \b, changed
158
+ >73 byte &0x04 \b, busy
159
+ >73 byte &0x08 \b, bozo
160
+ >73 byte &0x10 \b, system
161
+ >73 byte &0x20 \b, bundle
162
+ >73 byte &0x40 \b, invisible
163
+ >73 byte &0x80 \b, locked
164
+
165
+ # 75 beshort # vertical posn in window
166
+ #>75 beshort !0 \b, v.pos %u
167
+ # 77 beshort # horiz posn in window
168
+ #>77 beshort !0 \b, h.pos %u
169
+ # 79 beshort # window or folder ID
170
+ >79 ubeshort !0 \b, ID %#x
171
+ # protected flag
172
+ >81 byte !0 \b, protected %#x
173
+ # length of comment after resource
174
+ >99 ubeshort !0 \b, comment length %u
175
+ # char. code of file name
176
+ >106 ubyte !0 \b, char. code %#x
177
+ # still more Finder flags
178
+ >107 ubyte !0 \b, more flags %#x
179
+ # length of total files when unpacked only used when pack and unpack on the fly
180
+ >116 ubelong !0 \b, total length %u
181
+ # 120 beshort # length of add'l header
182
+ >120 ubeshort !0 \b, 2nd header length %u
183
+ # 124 beshort # checksum
184
+ #>124 ubeshort !0 \b, CRC %#x
185
+ # creation date in seconds since MacOS epoch start. So 1 Jan 1970 ~ 7C25B080
186
+ # few (31/1247) examples (hinkC4.0.sitx.bin InternetExplorer5.1.smi.bin G3FirmwareUpdate1.1.smi.bin Firewire2.3.3.smi.bin LR2image.bin) contain zeroed date fields
187
+ >91 long !0
188
+ >>91 beldate-0x7C25B080 x \b, %s
189
+ # THIS SHOULD NEVER HAPPEN! Maybe another file type is misidentified or time overflow
190
+ >91 ubelong <0x7c25b080 INVALID date
191
+ # reported date seconds by deark
192
+ #>91 ubelong x deark-DATE=%u
193
+ # last modified date
194
+ >95 long !0
195
+ >>95 beldate-0x7C25B080 x \b, modified %s
196
+ # Apple creator+typ if not null
197
+ # file creator (normally expressed as four characters)
198
+ >69 ulong !0 \b, creator
199
+ # instead 4 character code display full creator name
200
+ >>69 use apple-creator
201
+ # file type (normally expressed as four characters)
202
+ >65 ulong !0 \b, type
203
+ >>65 use apple-type
204
+ # length of data segment
205
+ >83 ubelong !0 \b, %u bytes
206
+ # filename (in the range 1-63)
207
+ # like "BBEdit4.0.sit" "Archive.sitx" "MacPGP 2.2 (.sea)"
208
+ >1 pstring x "%s"
209
+ # print 1 space and then at offset 128 inspect data fork content if it has one
210
+ >83 ubelong !0 \b
211
+ >>128 indirect x
212
+ # Afterwards resource fork if length of resource segment not zero
213
+ >87 ubelong !0
214
+ # calculate resource fork offset
215
+ >>83 ubelong+128 x \b, at %#x
216
+ # length of resource segment
217
+ >>87 ubelong !0 %u bytes
218
+ >>(83.S+128) ubequad x resource
219
+ # further resource fork content inspection
220
+ >>>&-8 indirect x
221
+
222
+ # Apple Type/Creator Database
223
+ # URL: https://en.wikipedia.org/wiki/Type_code
224
+ # Reference: https://www.lacikam.co.il/tcdb/
225
+ # https://www.macdisk.com/macsigen.php
226
+ # Note: classic Mac OS files have two 4 character codes for type and creator.
227
+ # Thereby the Finder attach documents types to applications.
228
+
229
+ #>65 string x \b, type "%4.4s"
230
+
231
+ # display information about apple type
232
+ 0 name apple-type
233
+ >0 string 8BIM PhotoShop
234
+ >0 string ALB3 PageMaker 3
235
+ >0 string ALB4 PageMaker 4
236
+ >0 string ALT3 PageMaker 3
237
+ >0 string APPL application
238
+ >0 string AWWP AppleWorks word processor
239
+ >0 string CIRC simulated circuit
240
+ >0 string DRWG MacDraw
241
+ >0 string EPSF Encapsulated PostScript
242
+ >0 string FFIL font suitcase
243
+ >0 string FKEY function key
244
+ >0 string FNDR Macintosh Finder
245
+ >0 string GIFf GIF image
246
+ >0 string Gzip GNU gzip
247
+ >0 string INIT system extension
248
+ >0 string LIB\ library
249
+ >0 string LWFN PostScript font
250
+ >0 string MSBC Microsoft BASIC
251
+ >0 string PACT Compact Pro archive
252
+ >0 string PDF\ Portable Document Format
253
+ >0 string PICT picture
254
+ >0 string PNTG MacPaint picture
255
+ >0 string PREF preferences
256
+ >0 string PROJ Think C project
257
+ >0 string QPRJ Think Pascal project
258
+ >0 string SCFL Defender scores
259
+ >0 string SCRN startup screen
260
+ >0 string SITD StuffIt Deluxe
261
+ >0 string SPn3 SuperPaint
262
+ >0 string STAK HyperCard stack
263
+ >0 string Seg\ StuffIt segment
264
+ >0 string TARF Unix tar archive
265
+ >0 string TEXT ASCII
266
+ >0 string TIFF TIFF image
267
+ >0 string TOVF Eudora table of contents
268
+ >0 string WDBN Microsoft Word word processor
269
+ >0 string WORD MacWrite word processor
270
+ >0 string XLS\ Microsoft Excel
271
+ >0 string ZIVM compress (.Z)
272
+ >0 string ZSYS Pre-System 7 system file
273
+ >0 string acf3 Aldus FreeHand
274
+ >0 string cdev control panel
275
+ >0 string dfil Desk Accessory suitcase
276
+ >0 string libr library
277
+ >0 string nX^d WriteNow word processor
278
+ >0 string nX^w WriteNow dictionary
279
+ >0 string rsrc resource
280
+ >0 string scbk Scrapbook
281
+ >0 string shlb shared library
282
+ >0 string ttro SimpleText read-only
283
+ >0 string zsys system file
284
+
285
+ # additional types added in Dec 2017
286
+ >0 string BINA binary file
287
+ >0 string BMPp BMP image
288
+ >0 string JPEG JPEG image
289
+ #>0 string W4BN Microsoft Word x.y word processor?
290
+ # if type name is not known display 4 character identifier
291
+ >0 default x
292
+ >>0 string x '%4.4s'
293
+
294
+ #>69 string x \b, creator "%4.4s"
295
+
296
+ # Now Apple has no repository of registered Creator IDs any more. These are
297
+ # just the ones that I happened to have files from and was able to identify.
298
+
299
+ # display information about apple creator
300
+ 0 name apple-creator
301
+ >0 string 8BIM Adobe Photoshop
302
+ >0 string ALD3 PageMaker 3
303
+ >0 string ALD4 PageMaker 4
304
+ >0 string ALFA Alpha editor
305
+ >0 string APLS Apple Scanner
306
+ >0 string APSC Apple Scanner
307
+ >0 string BRKL Brickles
308
+ >0 string BTFT BitFont
309
+ >0 string CCL2 Common Lisp 2
310
+ >0 string CCL\ Common Lisp
311
+ >0 string CDmo The Talking Moose
312
+ >0 string CPCT Compact Pro
313
+ >0 string CSOm Eudora
314
+ >0 string DMOV Font/DA Mover
315
+ >0 string DSIM DigSim
316
+ >0 string EDIT Macintosh Edit
317
+ >0 string ERIK Macintosh Finder
318
+ >0 string EXTR self-extracting archive
319
+ >0 string Gzip GNU gzip
320
+ >0 string KAHL Think C
321
+ >0 string LWFU LaserWriter Utility
322
+ >0 string LZIV compress
323
+ >0 string MACA MacWrite
324
+ >0 string MACS Macintosh operating system
325
+ >0 string MAcK MacKnowledge terminal emulator
326
+ >0 string MLND Defender
327
+ >0 string MPNT MacPaint
328
+ >0 string MSBB Microsoft BASIC (binary)
329
+ >0 string MSWD Microsoft Word
330
+ >0 string NCSA NCSA Telnet
331
+ >0 string PJMM Think Pascal
332
+ >0 string PSAL Hunt the Wumpus
333
+ #>0 string PSI2 Apple File Exchange
334
+ >0 string R*ch BBEdit
335
+ >0 string RMKR Resource Maker
336
+ >0 string RSED Resource Editor
337
+ >0 string Rich BBEdit
338
+ >0 string SIT! StuffIt
339
+ >0 string SPNT SuperPaint
340
+ >0 string Unix NeXT Mac filesystem
341
+ >0 string VIM! Vim editor
342
+ >0 string WILD HyperCard
343
+ >0 string XCEL Microsoft Excel
344
+ >0 string aCa2 Fontographer
345
+ >0 string aca3 Aldus FreeHand
346
+ >0 string dosa Macintosh MS-DOS file system
347
+ >0 string movr Font/DA Mover
348
+ >0 string nX^n WriteNow
349
+ >0 string pdos Apple ProDOS file system
350
+ >0 string scbk Scrapbook
351
+ >0 string ttxt SimpleText
352
+ >0 string ufox Foreign File Access
353
+ # additional creators added in Dec 2017
354
+ # Claris/Apple Works
355
+ >0 string BOBO Apple Works
356
+ # CU-SeeMe_0.87b3_(68K).bin
357
+ #>0 string CUce bar
358
+ >0 string PSPT Apple File Exchange
359
+ # Disk_Copy_4.2.sea.bin
360
+ #>0 string NCse foo
361
+ # probably StuffIt/Aladdin by Smith Micro Software, Inc.
362
+ >0 string STi0 stuffit
363
+ # MacGzip-1.1.3.sea.bin
364
+ #>0 string aust bar
365
+ # D-Disk_Copy_6.3.3.smi.bin
366
+ >0 string oneb Disk Copy Self Mounting
367
+ # if creator name is not known display 4 character identifier
368
+ >0 default x
369
+ >>0 string x '%4.4s'
370
+
371
+ # sas magic from Bruce Foster (bef@nwu.edu)
372
+ #
373
+ #0 string SAS SAS
374
+ #>8 string x %s
375
+ 0 string SAS SAS
376
+ >24 string DATA data file
377
+ >24 string CATALOG catalog
378
+ >24 string INDEX data file index
379
+ >24 string VIEW data view
380
+ # sas 7+ magic from Reinhold Koch (reinhold.koch@roche.com)
381
+ #
382
+ 0x54 string SAS SAS 7+
383
+ >0x9C string DATA data file
384
+ >0x9C string CATALOG catalog
385
+ >0x9C string INDEX data file index
386
+ >0x9C string VIEW data view
387
+
388
+ # spss magic for SPSS system and portable files,
389
+ # from Bruce Foster (bef@nwu.edu).
390
+
391
+ 0 long 0xc1e2c3c9 SPSS Portable File
392
+ >40 string x %s
393
+
394
+ 0 string $FL2 SPSS System File
395
+ >24 string x %s
396
+
397
+ 0 string $FL3 SPSS System File
398
+ >24 string x %s
399
+
400
+ # Macintosh filesystem data
401
+ # From "Tom N Harris" <telliamed@mac.com>
402
+ # Fixed HFS+ and Partition map magic: Ethan Benson <erbenson@alaska.net>
403
+ # The MacOS epoch begins on 1 Jan 1904 instead of 1 Jan 1970, so these
404
+ # entries depend on the data arithmetic added after v.35
405
+ # There's also some Pascal strings in here, ditto...
406
+
407
+ # The boot block signature, according to IM:Files, is
408
+ # "for HFS volumes, this field always contains the value 0x4C4B."
409
+ # But if this is true for MFS or HFS+ volumes, I don't know.
410
+ # Alternatively, the boot block is supposed to be zeroed if it's
411
+ # unused, so a simply >0 should suffice.
412
+
413
+ 0x400 beshort 0xD2D7 Macintosh MFS data
414
+ >0 beshort 0x4C4B (bootable)
415
+ >0x40a beshort &0x8000 (locked)
416
+ >0x402 beldate-0x7C25B080 x created: %s,
417
+ >0x406 beldate-0x7C25B080 >0 last backup: %s,
418
+ >0x414 belong x block size: %d,
419
+ >0x412 beshort x number of blocks: %d,
420
+ >0x424 pstring x volume name: %s
421
+
422
+ # *.hfs updated by Joerg Jenderek
423
+ # https://en.wikipedia.org/wiki/Hierarchical_File_System
424
+ # "BD" gives many false positives
425
+ 0x400 beshort 0x4244
426
+ # ftp://ftp.mars.org/pub/hfs/hfsutils-3.2.6.tar.gz/hfsutils-3.2.6/libhfs/apple.h
427
+ # first block of volume bit map (always 3)
428
+ >0x40e ubeshort 0x0003
429
+ # maximal length of volume name is 27
430
+ >>0x424 ubyte <28 Macintosh HFS data
431
+ !:mime application/x-apple-diskimage
432
+ #!:apple hfsdINIT
433
+ #!:apple MACSdisk
434
+ # https://www.macdisk.com/macsigen.php
435
+ #!:apple ddskdevi
436
+ !:apple ????devi
437
+ # https://en.wikipedia.org/wiki/Apple_Disk_Image
438
+ !:ext hfs/dmg
439
+ >>>0 beshort 0x4C4B (bootable)
440
+ #>>>0 beshort 0x0000 (not bootable)
441
+ >>>0x40a beshort &0x8000 (locked)
442
+ >>>0x40a beshort ^0x0100 (mounted)
443
+ >>>0x40a beshort &0x0200 (spared blocks)
444
+ >>>0x40a beshort &0x0800 (unclean)
445
+ >>>0x47C beshort 0x482B (Embedded HFS+ Volume)
446
+ # https://www.epochconverter.com/
447
+ # 0x7C245F00 seconds ~ 2082758400 ~ 01 Jan 2036 00:00:00 ~ 66 years to 1970
448
+ # 0x7C25B080 seconds ~ 2082844800 ~ 02 Jan 2036 00:00:00
449
+ # construct not working
450
+ #>>>0x402 beldate-0x7C25B080 x created: %s,
451
+ #>>>0x406 beldate-0x7C25B080 x last modified: %s,
452
+ #>>>0x440 beldate-0x7C25B080 >0 last backup: %s,
453
+ # found block sizes 200h,1200h,2800h
454
+ >>>0x414 belong x block size: %d,
455
+ >>>0x412 beshort x number of blocks: %d,
456
+ >>>0x424 pstring x volume name: %s
457
+
458
+ 0 name hfsplus
459
+ >&0 beshort x version %d data
460
+ >0 beshort 0x4C4B (bootable)
461
+ >0x404 belong ^0x00000100 (mounted)
462
+ >&2 belong &0x00000200 (spared blocks)
463
+ >&2 belong &0x00000800 (unclean)
464
+ >&2 belong &0x00008000 (locked)
465
+ >&6 string x last mounted by: '%.4s',
466
+ # really, that should be treated as a belong and we print a string
467
+ # based on the value. TN1150 only mentions '8.10' for "MacOS 8.1"
468
+ >&14 beldate-0x7C25B080 x created: %s,
469
+ # only the creation date is local time, all other timestamps in HFS+ are UTC.
470
+ >&18 bedate-0x7C25B080 x last modified: %s,
471
+ >&22 bedate-0x7C25B080 >0 last backup: %s,
472
+ >&26 bedate-0x7C25B080 >0 last checked: %s,
473
+ >&38 belong x block size: %d,
474
+ >&42 belong x number of blocks: %d,
475
+ >&46 belong x free blocks: %d
476
+
477
+ 0x400 beshort 0x482B Apple HFS Plus
478
+ >&0 use hfsplus
479
+ 0x400 beshort 0x4858 Apple HFS Plus Extended
480
+ >&0 use hfsplus
481
+
482
+ ## AFAIK, only the signature is different
483
+ # same as Apple Partition Map
484
+ # GRR: This magic is too weak, it is just "TS"
485
+ #0x200 beshort 0x5453 Apple Old Partition data
486
+ #>0x2 beshort x block size: %d,
487
+ #>0x230 string x first type: %s,
488
+ #>0x210 string x name: %s,
489
+ #>0x254 belong x number of blocks: %d,
490
+ #>0x400 beshort 0x504D
491
+ #>>0x430 string x second type: %s,
492
+ #>>0x410 string x name: %s,
493
+ #>>0x454 belong x number of blocks: %d,
494
+ #>>0x800 beshort 0x504D
495
+ #>>>0x830 string x third type: %s,
496
+ #>>>0x810 string x name: %s,
497
+ #>>>0x854 belong x number of blocks: %d,
498
+ #>>>0xa00 beshort 0x504D
499
+ #>>>>0xa30 string x fourth type: %s,
500
+ #>>>>0xa10 string x name: %s,
501
+ #>>>>0xa54 belong x number of blocks: %d
502
+
503
+ # From: Remi Mommsen <mommsen@slac.stanford.edu>
504
+ 0 string BOMStore Mac OS X bill of materials (BOM) file
505
+
@@ -0,0 +1,7 @@
1
+
2
+ #------------------------------------------------------------------------------
3
+ # $File: macos,v 1.1 2012/12/21 16:41:07 christos Exp $
4
+ # MacOS files
5
+ #
6
+
7
+ 0 string book\0\0\0\0mark\0\0\0\0 MacOS Alias file
@@ -0,0 +1,10 @@
1
+
2
+ #------------------------------------------------------------------------------
3
+ # $File: magic,v 1.10 2010/11/25 15:00:12 christos Exp $
4
+ # magic: file(1) magic for magic files
5
+ #
6
+ 0 string/t #\ Magic magic text file for file(1) cmd
7
+ 0 lelong 0xF11E041C magic binary file for file(1) cmd
8
+ >4 lelong x (version %d) (little endian)
9
+ 0 belong 0xF11E041C magic binary file for file(1) cmd
10
+ >4 belong x (version %d) (big endian)
Binary file
@@ -0,0 +1,132 @@
1
+ #------------------------------------------------------------------------------
2
+ # $File: mail.news,v 1.30 2022/10/31 13:22:26 christos Exp $
3
+ # mail.news: file(1) magic for mail and news
4
+ #
5
+ # Unfortunately, saved netnews also has From line added in some news software.
6
+ #0 string From mail text
7
+ 0 string/t Relay-Version: old news text
8
+ !:mime message/rfc822
9
+ 0 string/t #!\ rnews batched news text
10
+ !:mime message/rfc822
11
+ 0 string/t N#!\ rnews mailed, batched news text
12
+ !:mime message/rfc822
13
+ 0 string/t Forward\ to mail forwarding text
14
+ !:mime message/rfc822
15
+ 0 string/t Pipe\ to mail piping text
16
+ !:mime message/rfc822
17
+ 0 string/tc delivered-to: SMTP mail text
18
+ !:mime message/rfc822
19
+ 0 string/tc return-path: SMTP mail text
20
+ !:mime message/rfc822
21
+ 0 string/t Path: news text
22
+ !:mime message/news
23
+ 0 string/t Xref: news text
24
+ !:mime message/news
25
+ 0 string/t From: news or mail text
26
+ !:mime message/rfc822
27
+ 0 string/t Date: news or mail text
28
+ !:mime message/rfc822
29
+ 0 string/t Article saved news text
30
+ !:mime message/news
31
+ # Reference: http://quimby.gnus.org/notes/BABYL
32
+ # Update: Joerg Jenderek
33
+ # Note: used by Rmail in Emacs version 22 and before
34
+ # is not text because of characters like Control-L Control-_
35
+ 0 string/b BABYL\ OPTIONS: Emacs RMAIL
36
+ #0 string/t BABYL Emacs RMAIL text
37
+ # https://reposcope.com/mimetype/message/x-gnu-rmail
38
+ !:mime message/x-gnu-rmail
39
+ # ~/RMAIL
40
+ !:ext /
41
+ 0 string/t Received: RFC 822 mail text
42
+ !:mime message/rfc822
43
+ 0 string/t MIME-Version: MIME entity text
44
+ #0 string/t Content- MIME entity text
45
+
46
+ # TNEF files...
47
+ # URL: http://fileformats.archiveteam.org/wiki/Transport_Neutral_Encapsulation_Format
48
+ # https://en.wikipedia.org/wiki/Transport_Neutral_Encapsulation_Format
49
+ # Reference: http://mark0.net/download/triddefs_xml.7z/defs/t/tnef.trid.xml
50
+ # https://interoperability.blob.core.windows.net/files/MS-OXTNEF/%5bMS-OXTNEF%5d-210817.pdf
51
+ # Update: Joerg Jenderek
52
+ # Note: moved and merged from ./msdos (version 1.154) there just called "TNEF"
53
+ # partly verified by `tnef --list -v -f voice.tnef` and `ytnef -v triples.tnef`
54
+ # TNEF magic From "Joomy" <joomy@se-ed.net>
55
+ # TNEF_SIGNATURE
56
+ 0 lelong 0x223E9F78 Transport Neutral Encapsulation Format (TNEF)
57
+ !:mime application/vnd.ms-tnef
58
+ # winmail.dat or win.dat by Microsoft Outlook
59
+ !:ext tnef/dat
60
+ # https://docs.microsoft.com/en-us/openspecs/exchange_server_protocols/ms-oxtnef/7fdb64ee-7f63-4d95-9af1-c672e7475c3a
61
+ # LegacyKey
62
+ #>4 uleshort x \b, key %#4.4x
63
+ # attrLevelMessage; Level where attribute applies like: 1~attrLevelMessage 2~attrLevelAttachment
64
+ >6 ubyte !1 \b, 1st level %#2.2x
65
+ # other ID (like 02900000h) or TnefVersion ID (idTnefVersion=06900800h)
66
+ >7 ubelong !0x06900800 \b, 1st id %#8.8x
67
+ >7 ubelong =0x06900800
68
+ # TnefVersion length like: 4
69
+ >>11 ulelong !4 \b, TnefVersion length %x
70
+ # TNEFVersionData; TnefVersion data like: 00010000h
71
+ >>15 ulelong !0x00010000h \b, version %#8.8x
72
+ # Checksum like: 1
73
+ >>19 uleshort !1 \b, checksum %#4.4x
74
+ # attrLevelMessage; level of attOemCodepage like: 1
75
+ >>21 ubyte !1 \b, level %#2.2x
76
+ # idOEMCodePage; OEMCodePage ID like: 07900600h
77
+ >>22 ubelong =0x07900600 \b, OEM codepage
78
+ # OEMCodePage length like: 8
79
+ >>>26 ulelong =8
80
+ # OEMCodePageData; PrimaryCodePage like: 1251 1252
81
+ >>>>30 ulelong x %u
82
+ # OEMCodePageData; SecondaryCodePage; unused and SHOULD contain zero
83
+ >>>>34 ulelong !0 and %u
84
+ # OEMCodePageData Checksum like: E7h E8h
85
+ >>>>38 uleshort x (checksum %#x)
86
+ # attrLevelMessage of attMessageClass like: 1
87
+ >>40 ubyte !1 \b, level %u
88
+ # idMessageClass; ID of attMessageClass like: 08800700h
89
+ >>41 ubelong =0x08800700 \b, MessageAttribute
90
+ # attMessageClass length like: 16 24 25
91
+ #>>>45 ulelong x (length %u)
92
+ # attMessageClass data like: "IPM.Microsoft Mail.Note" "IPM.Note.Portada Newseum"
93
+ # "IPM.Appointment" "IPM.Note.Microsoft.Voicemail.UM.CA"
94
+ >>>45 pstring/l x "%s"
95
+
96
+ # From: Kevin Sullivan <ksulliva@psc.edu>
97
+ 0 string *mbx* MBX mail folder
98
+
99
+ # From: Simon Matter <simon.matter@invoca.ch>
100
+ 0 string \241\002\213\015skiplist\ file\0\0\0 Cyrus skiplist DB
101
+ 0 string \241\002\213\015twoskip\ file\0\0\0\0 Cyrus twoskip DB
102
+
103
+ # JAM(mbp) Fidonet message area databases
104
+ # JHR file
105
+ 0 string JAM\0 JAM message area header file
106
+ >12 leshort >0 (%d messages)
107
+
108
+ # Squish Fidonet message area databases
109
+ # SQD file (requires at least one message in the area)
110
+ # XXX: Weak magic
111
+ #256 leshort 0xAFAE4453 Squish message area data file
112
+ #>4 leshort >0 (%d messages)
113
+
114
+ #0 string \<!--\ MHonArc text/html; x-type=mhonarc
115
+
116
+ # Cyrus: file(1) magic for compiled Cyrus sieve scripts
117
+ # URL: https://www.cyrusimap.org/docs/cyrus-imapd/2.4.6/internal/bytecode.php
118
+ # URL: http://git.cyrusimap.org/cyrus-imapd/tree/sieve/bytecode.h?h=master
119
+ # From: Philipp Hahn <hahn@univention.de>
120
+
121
+ # Compiled Cyrus sieve script
122
+ 0 string CyrSBytecode Cyrus sieve bytecode data,
123
+ >12 belong =1 version 1, big-endian
124
+ >12 lelong =1 version 1, little-endian
125
+ >12 belong x version %d, network-endian
126
+
127
+ # Dovecot mail server, version 2.2 and later.
128
+ # Dovecot mailing list: dovecot@dovecot.org
129
+ # File format spec: https://wiki.dovecot.org/Design/Dcrypt/#File_format
130
+ # From: Stephen Gildea
131
+ 0 string CRYPTED\003\007 Dovecot encrypted message
132
+ >9 byte x \b, dcrypt version %d
@@ -0,0 +1,21 @@
1
+ #------------------------------------------------------------------------------
2
+ # $File: make,v 1.5 2022/03/12 15:09:47 christos Exp $
3
+ # make: file(1) magic for makefiles
4
+ #
5
+ # URL: https://en.wikipedia.org/wiki/Make_(software)
6
+ 0 regex/100l \^(CFLAGS|VPATH|LDFLAGS|all:|\\.PRECIOUS) makefile script text
7
+ !:mime text/x-makefile
8
+ !:strength -15
9
+ # Update: Joerg Jenderek
10
+ # Reference: https://www.freebsd.org/cgi/man.cgi?make(1)
11
+ # exclude grub-core\lib\libgcrypt\mpi\Makefile.am with "#BEGIN_ASM_LIST"
12
+ # by additional escaping point character
13
+ # exclude MS Windows help file CoNtenT with ":include FOOBAR.CNT"
14
+ # and NSIS script with "!include" by additional escaping point character
15
+ 0 regex/100l \^\\.(BEGIN|endif|include) BSD makefile script text
16
+ !:mime text/x-makefile
17
+ !:ext /mk
18
+ !:strength -10
19
+ 0 regex/100l \^SUBDIRS[[:space:]]+= automake makefile script text
20
+ !:mime text/x-makefile
21
+ !:strength -15