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,252 @@
1
+
2
+ #------------------------------------------------------------------------------
3
+ # $File: jpeg,v 1.38 2022/12/02 17:42:04 christos Exp $
4
+ # JPEG images
5
+ # SunOS 5.5.1 had
6
+ #
7
+ # 0 string \377\330\377\340 JPEG file
8
+ # 0 string \377\330\377\356 JPG file
9
+ #
10
+ # both of which turn into "JPEG image data" here.
11
+ #
12
+ 0 belong 0xffd8fff7 JPEG-LS image data
13
+ !:mime image/jls
14
+ !:ext jls
15
+ >0 use jpeg
16
+
17
+ 0 belong&0xffffff00 0xffd8ff00 JPEG image data
18
+ !:mime image/jpeg
19
+ !:apple 8BIMJPEG
20
+ !:strength *3
21
+ !:ext jpeg/jpg/jpe/jfif
22
+ >0 use jpeg
23
+
24
+ 0 name jpeg
25
+ >6 string JFIF \b, JFIF standard
26
+ # The following added by Erik Rossen <rossen@freesurf.ch> 1999-09-06
27
+ # in a vain attempt to add image size reporting for JFIF. Note that these
28
+ # tests are not fool-proof since some perfectly valid JPEGs are currently
29
+ # impossible to specify in magic(4) format.
30
+ # First, a little JFIF version info:
31
+ >>11 byte x \b %d.
32
+ >>12 byte x \b%02d
33
+ # Next, the resolution or aspect ratio of the image:
34
+ >>13 byte 0 \b, aspect ratio
35
+ >>13 byte 1 \b, resolution (DPI)
36
+ >>13 byte 2 \b, resolution (DPCM)
37
+ >>14 beshort x \b, density %dx
38
+ >>16 beshort x \b%d
39
+ >>4 beshort x \b, segment length %d
40
+ # Next, show thumbnail info, if it exists:
41
+ >>18 byte !0 \b, thumbnail %dx
42
+ >>>19 byte x \b%d
43
+ >6 string Exif \b, Exif standard: [
44
+ >>12 indirect/r x
45
+ >>12 string x \b]
46
+
47
+ # Jump to the first segment
48
+ >(4.S+4) use jpeg_segment
49
+
50
+ # This uses recursion...
51
+ 0 name jpeg_segment
52
+ >0 beshort 0xFFFE
53
+ # Recursion handled by FFE0
54
+ #>>(2.S+2) use jpeg_segment
55
+ >>2 pstring/HJ x \b, comment: "%s"
56
+
57
+ >0 beshort 0xFFC0
58
+ >>(2.S+2) use jpeg_segment
59
+ >>4 byte x \b, baseline, precision %d
60
+ >>7 beshort x \b, %dx
61
+ >>5 beshort x \b%d
62
+ >>9 byte x \b, components %d
63
+
64
+ >0 beshort 0xFFC1
65
+ >>(2.S+2) use jpeg_segment
66
+ >>4 byte x \b, extended sequential, precision %d
67
+ >>7 beshort x \b, %dx
68
+ >>5 beshort x \b%d
69
+ >>9 byte x \b, components %d
70
+
71
+ >0 beshort 0xFFC2
72
+ >>(2.S+2) use jpeg_segment
73
+ >>4 byte x \b, progressive, precision %d
74
+ >>7 beshort x \b, %dx
75
+ >>5 beshort x \b%d
76
+ >>9 byte x \b, components %d
77
+
78
+ # Define Huffman Tables
79
+ >0 beshort 0xFFC4
80
+ >>(2.S+2) use jpeg_segment
81
+
82
+ >0 beshort 0xFFE1
83
+ # Recursion handled by FFE0
84
+ #>>(2.S+2) use jpeg_segment
85
+ >>4 string Exif \b, Exif Standard: [
86
+ >>>10 indirect/r x
87
+ >>>10 string x \b]
88
+
89
+ # Application specific markers
90
+ >0 beshort&0xFFE0 =0xFFE0
91
+ >>(2.S+2) use jpeg_segment
92
+
93
+ # DB: Define Quantization tables
94
+ # DD: Define Restart interval [XXX: wrong here, it is 4 bytes]
95
+ # D8: Start of image
96
+ # D9: End of image
97
+ # Dn: Restart
98
+ >0 beshort&0xFFD0 =0xFFD0
99
+ >>0 beshort&0xFFE0 !0xFFE0
100
+ >>>(2.S+2) use jpeg_segment
101
+
102
+ #>0 beshort x unknown %#x
103
+ #>>(2.S+2) use jpeg_segment
104
+
105
+ # HSI is Handmade Software's proprietary JPEG encoding scheme
106
+ # Update: Joerg Jenderek
107
+ # URL: http://fileformats.archiveteam.org/wiki/HSI_JPEG
108
+ # Reference: http://mark0.net/download/triddefs_xml.7z/defs/b/bitmap-hsi1.trid.xml
109
+ # Note: called by TrID "HSI JPEG bitmap"
110
+ 0 string hsi1 JPEG image data, HSI proprietary
111
+ #!:mime application/octet-stream
112
+ !:mime image/x-hsi
113
+ !:ext hsi/jpg
114
+
115
+ # From: David Santinoli <david@santinoli.com>
116
+ 0 string \x00\x00\x00\x0C\x6A\x50\x20\x20\x0D\x0A\x87\x0A JPEG 2000
117
+ # delete from ./animation (version 1.87) with jP (=6A50h) magic at offset 4
118
+ # From: Johan van der Knijff <johan.vanderknijff@kb.nl>
119
+ # Added sub-entries for JP2, JPX, JPM and MJ2 formats; added mimetypes
120
+ # https://github.com/bitsgalore/jp2kMagic
121
+ #
122
+ # Now read value of 'Brand' field, which yields a few possibilities:
123
+ # Update: Joerg Jenderek
124
+ # URL: http://fileformats.archiveteam.org/wiki/JP2
125
+ # Reference: http://mark0.net/download/triddefs_xml.7z/defs/b/bitmap-jpeg2k.trid.xml
126
+ # Note: called by TrID "JPEG 2000 bitmap"
127
+ >20 string \x6a\x70\x32\x20 Part 1 (JP2)
128
+ # aliases image/jpeg2000, image/jpeg2000-image, image/x-jpeg2000-image
129
+ !:mime image/jp2
130
+ !:ext jp2
131
+ # URL: http://fileformats.archiveteam.org/wiki/JPX
132
+ # Reference: http://mark0.net/download/triddefs_xml.7z/defs/b/bitmap-jpx.trid.xml
133
+ # Note: called by TrID "JPEG 2000 eXtended bitmap"
134
+ >20 string \x6a\x70\x78\x20 Part 2 (JPX)
135
+ !:mime image/jpx
136
+ !:ext jpf/jpx
137
+ # URL: http://fileformats.archiveteam.org/wiki/JPM
138
+ # Reference: http://mark0.net/download/triddefs_xml.7z/defs/b/bitmap-jpm.trid.xml
139
+ # Note: called by TrID "JPEG 2000 eXtended bitmap"
140
+ >20 string \x6a\x70\x6d\x20 Part 6 (JPM)
141
+ !:mime image/jpm
142
+ !:ext jpm
143
+ # URL: http://fileformats.archiveteam.org/wiki/MJ2
144
+ # Reference: http://mark0.net/download/triddefs_xml.7z/defs/v/video-mj2.trid.xml
145
+ # Note: called by TrID "Motion JPEG 2000 video"
146
+ >20 string \x6d\x6a\x70\x32 Part 3 (MJ2)
147
+ !:mime video/mj2
148
+ !:ext mj2/mjp2
149
+
150
+ # Type: JPEG 2000 codesream
151
+ # From: Mathieu Malaterre <mathieu.malaterre@gmail.com>
152
+ # Update: Joerg Jenderek
153
+ # URL: http://fileformats.archiveteam.org/wiki/JPEG_2000_codestream
154
+ # Reference: http://mark0.net/download/triddefs_xml.7z/defs/b/bitmap-jpc.trid.xml
155
+ # Note: called by TrID "JPEG-2000 Code Stream bitmap"
156
+ 0 belong 0xff4fff51 JPEG 2000 codestream
157
+ # value like: 0701h FF50h
158
+ #>45 ubeshort x \b, at 45 %#4.4x
159
+ #!:mime application/octet-stream
160
+ # https://reposcope.com/mimetype/image/x-jp2-codestream
161
+ !:mime image/x-jp2-codestream
162
+ !:ext jpc/j2c/j2k
163
+ # MAYBE also JHC like in byte_causal.jhc ?
164
+ # WHAT IS THAT? DEAD ENTRY?
165
+ #45 beshort 0xff52
166
+
167
+ # JPEG extended range
168
+ # URL: http://fileformats.archiveteam.org/wiki/JPEG_XR
169
+ # Reference: https://www.itu.int/rec/T-REC-T.832
170
+ # http://mark0.net/download/triddefs_xml.7z/defs/b/bitmap-wmp.trid.xml
171
+ # Note: called by TrID "JPEG XR bitmap"
172
+ 0 string \x49\x49\xbc
173
+ # FILE_VERSION_ID; shall be equal to 1; other values are reserved for future use
174
+ >3 byte 1
175
+ # FIRST_IFD_OFFSET; shall be an integer multiple of 2; so skip DROID fmt-590-signature-id-931.wdp
176
+ >>4 lelong%2 0 JPEG-XR
177
+ #!:mime image/vnd.ms-photo
178
+ !:mime image/jxr
179
+ # NO example for HDP !
180
+ !:ext jxr/wdp/hdp
181
+ # MAYBE also WMP ?
182
+ #!:ext jxr/wdp/hdp/wmp
183
+ # moved from ./images (version 1.205 ), merged and
184
+ # partly verified by XnView `nconvert -info abydos.jxr FLOWER.wdp`
185
+ # example: https://web.archive.org/web/20160403012904/
186
+ # http://shikino.co.jp/solution/upfile/FLOWER.wdp.zip
187
+ >90 bequad 0x574D50484F544F00
188
+ >>98 byte&0x08 =0x08 \b, hard tiling
189
+ >>99 byte&0x80 =0x80 \b, tiling present
190
+ >>99 byte&0x40 =0x40 \b, codestream present
191
+ >>99 byte&0x38 x \b, spatial xform=
192
+ >>99 byte&0x38 0x00 \bTL
193
+ >>99 byte&0x38 0x08 \bBL
194
+ >>99 byte&0x38 0x10 \bTR
195
+ >>99 byte&0x38 0x18 \bBR
196
+ >>99 byte&0x38 0x20 \bBT
197
+ >>99 byte&0x38 0x28 \bRB
198
+ >>99 byte&0x38 0x30 \bLT
199
+ >>99 byte&0x38 0x38 \bLB
200
+ >>100 byte&0x80 =0x80 \b, short header
201
+ >>>102 beshort+1 x \b, %d
202
+ >>>104 beshort+1 x \bx%d
203
+ >>100 byte&0x80 =0x00 \b, long header
204
+ >>>102 belong+1 x \b, %x
205
+ >>>106 belong+1 x \bx%x
206
+ >>101 beshort&0xf x \b, bitdepth=
207
+ >>>101 beshort&0xf 0x0 \b1-WHITE=1
208
+ >>>101 beshort&0xf 0x1 \b8
209
+ >>>101 beshort&0xf 0x2 \b16
210
+ >>>101 beshort&0xf 0x3 \b16-SIGNED
211
+ >>>101 beshort&0xf 0x4 \b16-FLOAT
212
+ >>>101 beshort&0xf 0x5 \b(reserved 5)
213
+ >>>101 beshort&0xf 0x6 \b32-SIGNED
214
+ >>>101 beshort&0xf 0x7 \b32-FLOAT
215
+ >>>101 beshort&0xf 0x8 \b5
216
+ >>>101 beshort&0xf 0x9 \b10
217
+ >>>101 beshort&0xf 0xa \b5-6-5
218
+ >>>101 beshort&0xf 0xb \b(reserved %d)
219
+ >>>101 beshort&0xf 0xc \b(reserved %d)
220
+ >>>101 beshort&0xf 0xd \b(reserved %d)
221
+ >>>101 beshort&0xf 0xe \b(reserved %d)
222
+ >>>101 beshort&0xf 0xf \b1-BLACK=1
223
+ >>101 beshort&0xf0 x \b, colorfmt=
224
+ >>>101 beshort&0xf0 0x00 \bYONLY
225
+ >>>101 beshort&0xf0 0x10 \bYUV240
226
+ >>>101 beshort&0xf0 0x20 \bYWV422
227
+ >>>101 beshort&0xf0 0x30 \bYWV444
228
+ >>>101 beshort&0xf0 0x40 \bCMYK
229
+ >>>101 beshort&0xf0 0x50 \bCMYKDIRECT
230
+ >>>101 beshort&0xf0 0x60 \bNCOMPONENT
231
+ >>>101 beshort&0xf0 0x70 \bRGB
232
+ >>>101 beshort&0xf0 0x80 \bRGBE
233
+ >>>101 beshort&0xf0 >0x80 \b(reserved %#x)
234
+
235
+ # JPEG XL
236
+ # From: Ian Tester
237
+ # Update: Joerg Jenderek
238
+ # URL: http://fileformats.archiveteam.org/wiki/JPEG_XL
239
+ # Reference: http://mark0.net/download/triddefs_xml.7z/defs/b/bitmap-jxl.trid.xml
240
+ # Note: called by TrID "JPEG XL bitmap"
241
+ 0 string \xff\x0a JPEG XL codestream
242
+ !:mime image/jxl
243
+ !:ext jxl
244
+
245
+ # JPEG XL (transcoded JPEG file)
246
+ # Update: Joerg Jenderek
247
+ # URL: http://fileformats.archiveteam.org/wiki/JPEG_XL
248
+ # Reference: http://mark0.net/download/triddefs_xml.7z/defs/b/bitmap-jxl-iso.trid.xml
249
+ # Note: called by TrID "JPEG XL bitmap (ISOBMFF)"
250
+ 0 string \x00\x00\x00\x0cJXL\x20\x0d\x0a\x87\x0a JPEG XL container
251
+ !:mime image/jxl
252
+ !:ext jxl
@@ -0,0 +1,8 @@
1
+ #------------------------------------------------------------------------------
2
+ # This is a custom test created for PolyFile.
3
+ # The original implementation of libmagic/file tests for certain filetypes like
4
+ # JSON by using a parser written in C rather than the DSL.
5
+ # Instead, PolyFile adds a new test type called `json`:
6
+ 0 json x JSON text data
7
+ !:mime application/json
8
+ !:ext json
@@ -0,0 +1,9 @@
1
+
2
+ #------------------------------------------------------------------------------
3
+ # $File: karma,v 1.8 2015/08/29 07:10:35 christos Exp $
4
+ # karma: file(1) magic for Karma data files
5
+ #
6
+ # From <rgooch@atnf.csiro.au>
7
+
8
+ 0 string KarmaRHD\040Version Karma Data Structure Version
9
+ >16 belong x %u
@@ -0,0 +1,11 @@
1
+
2
+ #------------------------------------------------------------------------------
3
+ # $File: kde,v 1.5 2010/11/25 15:00:12 christos Exp $
4
+ # kde: file(1) magic for KDE
5
+
6
+ 0 string/t [KDE\ Desktop\ Entry] KDE desktop entry
7
+ !:mime application/x-kdelnk
8
+ 0 string/t #\ KDE\ Config\ File KDE config file
9
+ !:mime application/x-kdelnk
10
+ 0 string/t #\ xmcd xmcd database file for kscd
11
+ !:mime text/x-xmcd
@@ -0,0 +1,20 @@
1
+
2
+ #------------------------------------------------------------------------------
3
+ # $File: keepass,v 1.2 2019/04/19 00:42:27 christos Exp $
4
+ # keepass: file(1) magic for KeePass file
5
+ #
6
+ # Keepass Password Safe:
7
+ # * original one: https://keepass.info/
8
+ # * *nix port: https://www.keepassx.org/
9
+ # * android port: https://code.google.com/p/keepassdroid/
10
+
11
+ 0 lelong 0x9AA2D903 Keepass password database
12
+ >4 lelong 0xB54BFB65 1.x KDB
13
+ >>48 lelong >0 \b, %d groups
14
+ >>52 lelong >0 \b, %d entries
15
+ >>8 lelong&0x0f 1 \b, SHA-256
16
+ >>8 lelong&0x0f 2 \b, AES
17
+ >>8 lelong&0x0f 4 \b, RC4
18
+ >>8 lelong&0x0f 8 \b, Twofish
19
+ >>120 lelong >0 \b, %d key transformation rounds
20
+ >4 lelong 0xB54BFB67 2.x KDBX
@@ -0,0 +1,45 @@
1
+
2
+ #------------------------------------------------------------------------------
3
+ # $File: kerberos,v 1.3 2019/04/19 00:42:27 christos Exp $
4
+ # kerberos: MIT kerberos file binary formats
5
+ #
6
+
7
+ # This magic entry is for demonstration purposes and could be improved
8
+ # if the following features were implemented in file:
9
+ #
10
+ # Strings inside [[ .. ]] in the descriptions have special meanings and
11
+ # are not printed.
12
+ #
13
+ # - Provide some form of iteration in number of components
14
+ # [[${counter}=%d]] in the description
15
+ # then append
16
+ # [${counter}--] in the offset of the entries
17
+ # - Provide a way to round the next offset
18
+ # Add [R:4] after the offset?
19
+ # - Provide a way to have optional entries
20
+ # XXX: Syntax:
21
+ # - Provide a way to "save" entries to print them later.
22
+ # if the description is [[${name}=%s]], then nothing is
23
+ # printed and a subsequent entry in the same magic file
24
+ # can refer to ${name}
25
+ # - Provide a way to format strings as hex values
26
+ #
27
+ # https://www.gnu.org/software/shishi/manual/html_node/\
28
+ # The-Keytab-Binary-File-Format.html
29
+ #
30
+
31
+ 0 name keytab_entry
32
+ #>0 beshort x \b, size=%d
33
+ #>2 beshort x \b, components=%d
34
+ >4 pstring/H x \b, realm=%s
35
+ >>&0 pstring/H x \b, principal=%s/
36
+ >>>&0 pstring/H x \b%s
37
+ >>>>&0 belong x \b, type=%d
38
+ >>>>>&0 bedate x \b, date=%s
39
+ >>>>>>&0 byte x \b, kvno=%u
40
+ #>>>>>>>&0 pstring/H x
41
+ #>>>>>>>>&0 belong x
42
+ #>>>>>>>>>>&0 use keytab_entry
43
+
44
+ 0 belong 0x05020000 Kerberos Keytab file
45
+ >4 use keytab_entry
@@ -0,0 +1,85 @@
1
+
2
+ #------------------------------------------------------------------------------
3
+ # $File: kicad,v 1.2 2020/05/06 14:03:28 christos Exp $
4
+ # kicad: file(1) magic for KiCad files
5
+ #
6
+ # See
7
+ #
8
+ # http://kicad-pcb.org
9
+ #
10
+
11
+ # KiCad Schematic Document
12
+ 0 string (kicad_sch
13
+ >10 byte 0x20 KiCad Schematic Document
14
+ !:ext kicad_sch/kicad_sch-bak
15
+ >>11 string (version
16
+ >>>19 byte 0x20
17
+ >>>>20 regex [0-9.]+ (Version %s)
18
+
19
+ # KiCad Schematic Document (Legacy)
20
+ 0 string EESchema
21
+ >8 byte 0x20
22
+ >>9 string Schematic
23
+ >>>18 byte 0x20 KiCad Schematic Document (Legacy)
24
+ !:ext sch/bak
25
+ >>>>24 string Version
26
+ >>>>>31 byte 0x20
27
+ >>>>>>32 string x (Version %s)
28
+
29
+ # KiCad Symbol Library
30
+ 0 string (kicad_symbol_lib
31
+ >17 byte 0x20 KiCad Symbol Library
32
+ !:ext kicad_sym
33
+ >>18 string (version
34
+ >>>26 byte 0x20
35
+ >>>>27 regex [0-9.]+ (Version %s)
36
+
37
+ # KiCad Symbol Library (Legacy)
38
+ 0 string EESchema-LIBRARY
39
+ >16 byte 0x20 KiCad Symbol Library (Legacy)
40
+ !:ext lib
41
+ >>17 string Version
42
+ >>>24 byte 0x20
43
+ >>>>25 string x (Version %s)
44
+
45
+ # KiCad Symbol Library Documentation (Legacy)
46
+ 0 string EESchema-DOCLIB
47
+ >15 byte 0x20 KiCad Symbol Library Documentation (Legacy)
48
+ !:ext dcm
49
+ >>17 string Version
50
+ >>>24 byte 0x20
51
+ >>>>25 string x (Version %s)
52
+
53
+ # KiCad Board Layout
54
+ 0 string (kicad_pcb
55
+ >10 byte 0x20 KiCad Board Layout
56
+ !:ext kicad_pcb/kicad_pcb-bak
57
+ >>11 string (version
58
+ >>>19 byte 0x20
59
+ >>>>20 regex [0-9.]+ (Version %s)
60
+
61
+ # KiCad Footprint
62
+ 0 string (module
63
+ >7 byte 0x20 KiCad Footprint
64
+ !:ext kicad_mod
65
+
66
+ # KiCad Footprint (Legacy)
67
+ 0 string PCBNEW-LibModule-V1 KiCad Footprint (Legacy)
68
+ !:ext mod
69
+
70
+ # KiCad Netlist
71
+ 0 string (export
72
+ >7 byte 0x20 KiCad Netlist
73
+ !:ext net
74
+
75
+ # KiCad Symbol Library Table
76
+ 0 string (sym_lib_table
77
+ >14 byte 0xA KiCad Symbol Library Table
78
+ >14 byte 0xD KiCad Symbol Library Table
79
+ >14 byte 0x20 KiCad Symbol Library Table
80
+
81
+ # KiCad Footprint Library Table
82
+ 0 string (fp_lib_table
83
+ >13 byte 0xA KiCad Footprint Library Table
84
+ >13 byte 0xD KiCad Footprint Library Table
85
+ >13 byte 0x20 KiCad Footprint Library Table
@@ -0,0 +1,34 @@
1
+
2
+ #------------------------------------------------------------------------------
3
+ # $File: kml,v 1.6 2019/05/21 04:50:10 christos Exp $
4
+ # Type: Google KML, formerly Keyhole Markup Language
5
+ # Future development of this format has been handed
6
+ # over to the Open Geospatial Consortium.
7
+ # https://www.opengeospatial.org/standards/kml/
8
+ # From: Asbjoern Sloth Toennesen <asbjorn@lila.io>
9
+ 0 string/t \<?xml
10
+ >20 search/400 \ xmlns=
11
+ >>&0 regex ['"]http://earth.google.com/kml Google KML document
12
+ !:mime application/vnd.google-earth.kml+xml
13
+ >>>&1 string 2.0' \b, version 2.0
14
+ >>>&1 string 2.1' \b, version 2.1
15
+ >>>&1 string 2.2' \b, version 2.2
16
+
17
+ #------------------------------------------------------------------------------
18
+ # Type: OpenGIS KML, formerly Keyhole Markup Language
19
+ # This standard is maintained by the
20
+ # Open Geospatial Consortium.
21
+ # https://www.opengeospatial.org/standards/kml/
22
+ # From: Asbjoern Sloth Toennesen <asbjorn@lila.io>
23
+ >>&0 regex ['"]http://www.opengis.net/kml OpenGIS KML document
24
+ !:mime application/vnd.google-earth.kml+xml
25
+ >>>&1 string/t 2.2 \b, version 2.2
26
+
27
+ #------------------------------------------------------------------------------
28
+ # Type: Google KML Archive (ZIP based)
29
+ # https://code.google.com/apis/kml/documentation/kml_tut.html
30
+ # From: Asbjoern Sloth Toennesen <asbjorn@lila.io>
31
+ 0 string PK\003\004
32
+ >4 byte 0x14
33
+ >>30 string doc.kml Compressed Google KML Document, including resources.
34
+ !:mime application/vnd.google-earth.kmz
@@ -0,0 +1,64 @@
1
+ #------------------------------------------------------------------------------
2
+ # $File: lammps,v 1.1 2021/03/14 16:24:18 christos Exp $
3
+ #
4
+
5
+ # Magic file patterns for use with file(1) for the
6
+ # LAMMPS molecular dynamics simulation software.
7
+ # https://lammps.sandia.gov
8
+ #
9
+ # Updated: 2021-03-14 by akohlmey@gmail.com
10
+
11
+ # Binary restart file for the LAMMPS MD code
12
+ 0 string LammpS\ RestartT LAMMPS binary restart file
13
+ >0x14 long x (rev %d),
14
+ >>0x20 string x Version %s,
15
+ >>>0x10 lelong 0x0001 Little Endian
16
+ >>>0x10 lelong 0x1000 Big Endian
17
+
18
+ # Atom style binary dump file for the LAMMPS MD code
19
+ # written on a little endian machine
20
+ 0 lequad -8
21
+ >0x08 string DUMPATOM LAMMPS atom style binary dump
22
+ >>0x14 long x (rev %d),
23
+ >>>0x10 lelong 0x0001 Little Endian,
24
+ >>>>0x18 lequad x First time step: %lld
25
+
26
+ # written on a big endian machine
27
+ 0 bequad -8
28
+ >0x08 string DUMPATOM LAMMPS atom style binary dump
29
+ >>0x14 belong x (rev %d),
30
+ >>>0x10 lelong 0x1000 Big Endian,
31
+ >>>>0x18 bequad x First time step: %lld
32
+
33
+ # Atom style binary dump file for the LAMMPS MD code
34
+ # written on a little endian machine
35
+ 0 lequad -10
36
+ >0x08 string DUMPCUSTOM LAMMPS custom style binary dump
37
+ >>0x16 lelong x (rev %d),
38
+ >>>0x12 lelong 0x0001 Little Endian,
39
+ >>>>0x1a lequad x First time step: %lld
40
+
41
+ # written on a big endian machine
42
+ 0 bequad -10
43
+ >0x08 string DUMPCUSTOM LAMMPS custom style binary dump
44
+ >>0x16 belong x (rev %d),
45
+ >>>0x12 lelong 0x1000 Big Endian,
46
+ >>>>0x1a bequad x First time step: %lld
47
+
48
+ # LAMMPS log file
49
+ 0 string LAMMPS\ ( LAMMPS log file
50
+ >8 regex/16 [0-9]+\ [A-Za-z]+\ [0-9]+ written by version %s
51
+
52
+ # Data file written either by LAMMPS, msi2lmp or VMD/TopoTools
53
+ 0 string LAMMPS\ data\ file LAMMPS data file
54
+ >0x12 string CGCMM\ style written by TopoTools
55
+ >0x12 string msi2lmp written by msi2lmp
56
+ >0x11 string via\ write_data written by LAMMPS
57
+
58
+ # LAMMPS data file written by OVITO
59
+ 0 string #\ LAMMPS\ data\ file LAMMPS data file
60
+ >0x13 string written\ by\ OVITO written by OVITO
61
+
62
+ # LAMMPS text mode dump file
63
+ 0 string ITEM:\ TIMESTEP LAMMPS text mode dump,
64
+ >15 regex/16 [0-9]+ First time step: %s
@@ -0,0 +1,6 @@
1
+
2
+ #------------------------------------------------------------------------------
3
+ # $File: lecter,v 1.4 2009/09/19 16:28:10 christos Exp $
4
+ # DEC SRC Virtual Paper: Lectern files
5
+ # Karl M. Hegbloom <karlheg@inetarena.com>
6
+ 0 string lect DEC SRC Virtual Paper Lectern file
@@ -0,0 +1,12 @@
1
+
2
+ #------------------------------------------------------------------------------
3
+ # $File: lex,v 1.6 2009/09/19 16:28:10 christos Exp $
4
+ # lex: file(1) magic for lex
5
+ #
6
+ # derived empirically, your offsets may vary!
7
+ 0 search/100 yyprevious C program text (from lex)
8
+ >3 search/1 >\0 for %s
9
+ # C program text from GNU flex, from Daniel Quinlan <quinlan@yggdrasil.com>
10
+ 0 search/100 generated\ by\ flex C program text (from flex)
11
+ # lex description file, from Daniel Quinlan <quinlan@yggdrasil.com>
12
+ 0 search/1 %{ lex description text
@@ -0,0 +1,50 @@
1
+
2
+ #------------------------------------------------------------------------------
3
+ # $File: lif,v 1.11 2022/10/19 20:15:16 christos Exp $
4
+ # lif: file(1) magic for lif
5
+ #
6
+ # (Daniel Quinlan <quinlan@yggdrasil.com>)
7
+ #
8
+ # Modified by: Joerg Jenderek
9
+ # URL: https://www.hp9845.net/9845/projects/hpdir/
10
+ # https://github.com/bug400/lifutils
11
+ # Reference: https://www.hp9845.net/9845/downloads/manuals/LIF_excerpt_64941-90906_flpRef_Jan84.pdf
12
+ # Note: called by TrID "HP Logical Interchange Format disk image"
13
+ 0 beshort 0x8000
14
+ # GRR: line above is too general as it catches also compressed DEGAS low-res bitmap *.pc1
15
+ # skip many compressed DEGAS low-res bitmap *.pc1 by test for unused bytes
16
+ >14 beshort =0
17
+ # skip MUNCHIE.PC1 BOARD.PC1 ENEMIES.PC1 by test for low version number
18
+ >>20 ubeshort <0x0100
19
+ # skip DROID fmt-840-signature-id-1195.adx fmt-840-signature-id-1199.adx by test for ASCII like volume name
20
+ >>>2 ubelong >0x2020201F
21
+ >>>>0 use lif-file
22
+ 0 name lif-file
23
+ # LIF ID
24
+ >0 beshort x lif file
25
+ !:mime application/x-lif-disk
26
+ # lif used by Tony Duell LIF utilities; enhanced version by Joachim Siebold use also dat; hpi used by hpdir
27
+ !:ext lif/hpi/dat
28
+ # volume label; A-Z 0-9 _ ; default are 6 spaces
29
+ >2 string x "%.6s"
30
+ #>2 ubelong x LABEL=%8.8x
31
+ # version number; 0 for systems without extensions or 1 for model 64000
32
+ >20 ubeshort x \b, version %u
33
+ # LIF identifier; 010000 for system 3000
34
+ >12 beshort !0x1000 \b, LIF identifier %#x
35
+ # directory start address in units like: 2
36
+ >8 ubelong x \b, directory
37
+ >8 ubelong !2 start address %u
38
+ # length of directory like: 2 4 7 10 12 14 (for model 64000) 16 18 20 24 30 50 57 77 80
39
+ >16 ubelong x length %u
40
+ # level 1 extensions
41
+ >20 beshort =0
42
+ >>24 ubequad !0 \b, for extensions %#llx...
43
+ >20 beshort >0
44
+ >>24 ubequad !0 \b, extensions %#llx...
45
+ # word 21-126 reserved for extensions and future use; set to nil
46
+ >42 ubequad !0 \b, RESERVED %#llx
47
+ # lif first file name for standard directory; 0xffff... means uninitialized
48
+ >8 ubelong 2
49
+ >>512 string <\xff\xff \b, 1st file %-.10s
50
+