head 1.1; branch 1.1.1; access; symbols perseant-exfatfs-base-20261102:1.1.1.1 netbsd-11-1-RELEASE:1.1.1.1 netbsd-10-2-RELEASE:1.1.1.1 netbsd-11-0-RELEASE:1.1.1.1 netbsd-11-0-RC7:1.1.1.1 netbsd-11-0-RC6:1.1.1.1 netbsd-11-0-RC5:1.1.1.1 FILE5_48:1.1.1.1 netbsd-11-0-RC4:1.1.1.1 netbsd-11-0-RC3:1.1.1.1 netbsd-11-0-RC2:1.1.1.1 netbsd-11-0-RC1:1.1.1.1 perseant-exfatfs-base-20250801:1.1.1.1 netbsd-11:1.1.1.1.0.6 netbsd-11-base:1.1.1.1 netbsd-10-1-RELEASE:1.1.1.1 perseant-exfatfs-base-20240630:1.1.1.1 perseant-exfatfs:1.1.1.1.0.4 perseant-exfatfs-base:1.1.1.1 netbsd-10-0-RELEASE:1.1.1.1 netbsd-10-0-RC6:1.1.1.1 netbsd-10-0-RC5:1.1.1.1 netbsd-10-0-RC4:1.1.1.1 netbsd-10-0-RC3:1.1.1.1 netbsd-10-0-RC2:1.1.1.1 netbsd-10-0-RC1:1.1.1.1 FILE5_45:1.1.1.1 netbsd-10:1.1.1.1.0.2 netbsd-10-base:1.1.1.1 FILE5_43:1.1.1.1 CHRISTOS:1.1.1; locks; strict; comment @# @; 1.1 date 2022.09.24.20.07.54; author christos; state Exp; branches 1.1.1.1; next ; commitid Nf6F9kcpc0EPC9VD; 1.1.1.1 date 2022.09.24.20.07.54; author christos; state Exp; branches; next ; commitid Nf6F9kcpc0EPC9VD; desc @@ 1.1 log @Initial revision @ text @ #------------------------------------------------------------------------------ # $File: pci_ids,v 1.1 2022/04/02 14:47:42 christos Exp $ # pci.ids: file(1) magic for PCI specific informations # # Vendor identification (ID) https://pci-ids.ucw.cz/v2.2/pci.ids # show hexadecimal PCI vendor identification in human readable text form 0 name PCI-vendor # ID vendor name #>0 uleshort =0x0f00 fOO >0 uleshort =0x1000 Broadcom >0 uleshort =0x1002 AMD/ATI >0 uleshort =0x1013 Cirrus Logic >0 uleshort =0x1014 IBM >0 uleshort =0x1022 AMD >0 uleshort =0x1050 Winbond >0 uleshort =0x105a Promise >0 uleshort =0x1095 Silicon >0 uleshort =0x10EC Realtek >0 uleshort =0x10de NVIDIA >0 uleshort =0x1106 VIA # Woodward McCoach, Inc. >0 uleshort =0x1231 Woodward # >0 uleshort =0x1234 Bochs >0 uleshort =0x15ad VMware >0 uleshort =0x1af4 Virtio >0 uleshort =0x1b36 QEMU >0 uleshort =0x1de1 Tekram # maybe also Promise? #>0 uleshort =0x4289 Promise #>0 uleshort =0x66a1 FOO >0 uleshort =0x8086 Intel >0 uleshort =0x9004 Adaptec # also Adaptec; but no example >0 uleshort =0x9005 Adaptec # for unknown/missing manufactors >0 default x UNKNOWN >>0 uleshort x (%#4.4x) # https://blog.ladsai.com/pci-configuration-space-class-code.html # Base class code https://wiki.osdev.org/PCI # show hexadecimal PCI class+sub+ProgIF identification in human readable text form 0 name PCI-class #>0 ubyte x CLASS=%x >0 ubyte x # Device was built prior definition of the class code field >>0 ubyte 0x00 PRIOR # Any device except for VGA-Compatible devices like: 2975BIOS.BIN Trm3x5.bin # BUT also NVidia44.bin vgabios-stdvga-bin.rom #>>>0 ubyte 0x00 NOT VGA # VGA-Compatible Device; NO EXAMPLE found here!! #>>>0 ubyte 0x01 VGA # like 4243.bin #>>>0 ubyte 0x04 SUB_CLASS_4 >>0 ubyte 0x01 storage controller # device sub-type and its definition is dependent upon the base-type code >>>1 ubyte 0x00 SCSI >>>1 ubyte 0x01 IDE >>>1 ubyte 0x02 Floppy >>>1 ubyte 0x03 IPI >>>0 ubyte 0x04 RAID >>>1 ubyte 0x05 ATA >>>1 ubyte 0x06 SATA >>>1 ubyte 0x07 SAS >>>1 ubyte 0x08 NVM # 4650_sr5.bin "PROMISE" "FT TX4650 Ary X" >>>1 ubyte 0x80 OTHER >>0 ubyte 0x02 network controller >>>1 ubyte 0x00 ethernet >>>1 ubyte 0x01 token ring >>>1 ubyte 0x02 FDDI >>>1 ubyte 0x03 ATM >>>1 ubyte 0x04 ISDN >>>1 ubyte 0x05 WorldFip # PICMG 2.14 Multi Computing >>>1 ubyte 0x06 PICMG >>>1 ubyte 0x80 OTHER >>0 ubyte 0x03 display controller >>0 ubyte 0x04 multimedia controller >>0 ubyte 0x05 memory controller >>0 ubyte 0x06 bridge device # Simple Communication Controllers >>0 ubyte 0x07 communication controller # Base System Peripherals >>0 ubyte 0x08 base peripheral # Input Devices >>0 ubyte 0x09 input device # Docking Stations >>0 ubyte 0x0A docking station >>0 ubyte 0x0B processor >>0 ubyte 0x0C serial bus controller >>0 ubyte 0x0D wireless controller # Intelligent I/O Controllers >>0 ubyte 0x0E I/O controller # Satellite Communication Controllers >>0 ubyte 0x0F satellite controller # Encryption/Decryption Controllers >>0 ubyte 0x10 encryption controller # Data Acquisition and Signal Processing Controllers >>0 ubyte 0x11 signal controller # Processing Accelerator >>0 ubyte 0x12 processing accelerator # Non-Essential Instrumentation >>0 ubyte 0x13 non-essential # reserved or unassigned >>0 default x # device does not fit any defined class; Unassigned Class (Vendor specific) >>>0 ubyte 0xFF UNASSIGNED # THIS SHOULD NOT HAPPEN! BUT CLASS=8f for Promise 4650_sr5.bin 8660_sr5.bin >>>0 default x RESERVED >>>>0 ubyte x (%#x) # Prog IF of PCI class code? # defines the specific device programming interface >2 ubyte >0 \b, ProgIF=%u @ 1.1.1.1 log @Import file-5.43+; last was file-5.40 2022-09-20 17:12 Christos Zoulas * fixed various clustefuzz issues 2022-09-19 15:54 Christos Zoulas * Fix error detection for decompression code (Vincent Mihalkovic) 2022-09-15 13:50 Christos Zoulas * Add MAGIC_NO_COMPRESS_FORK and use it to produce a more meaningful error message if we are sandboxing. 2022-09-15 10:45 Christos Zoulas * Add built-in lzip decompression support (Michal Gorny) 2022-09-14 10:35 Christos Zoulas * Add built-in zstd decompression support (Martin Rodriguez Reboredo) 2022-09-13 14:55 Christos Zoulas * release 5.43 2022-09-10 9:17 Christos Zoulas * Add octal indirect magic (Michal Gorny) 2022-08-17 11:43 Christos Zoulas * PR/374: avoid infinite loop in non-wide code (piru) * PR/373: Obey MAGIC_CONTINUE with multiple magic files (vismarli) 2022-07-26 11:10 Christos Zoulas * Fix bug with large flist (Florian Weimer) 2022-07-07 13:21 Christos Zoulas * PR/364: Detect non-nul-terminated core filenames from QEMU (mam-ableton) 2022-07-04 15:45 Christos Zoulas * PR/359: Add support for http://ndjson.org/ (darose) * PR/362: Fix wide printing (ro-ee) * PR/358: Fix width for -f - (jpalus) * PR/356: Fix JSON constant parsing (davewhite) 2022-06-10 9:40 Christos Zoulas * release 5.42 2022-05-31 14:50 Christos Zoulas * PR/348: add missing cases to prevent file from aborting on random magic files. 2022-05-27 21:05 Christos Zoulas * PR/351: octalify filenames when not raw before printing. 2022-04-18 17:51 Christos Zoulas * fix regex cacheing bug (Dirk Mueller) * merge file_regcomp and file_regerror() to simplify the code and reduce memory requirements for storing regexes (Dirk Mueller) 2022-03-19 12:56 Christos Zoulas * cache regex (Dirk Mueller) * detect filesystem full by flushing output (Dirk Mueller) 2021-11-19 12:36 Christos Zoulas * implement running decompressor programs using posix_spawnp(2) instead of vfork(2) 2021-10-24 11:51 Christos Zoulas * Add support for msdos dates and times 2021-10-20 9:55 Christos Zoulas * use the system byte swapping functions if available (Werner Fink) 2021-10-18 11:57 Christos Zoulas * release 5.41 2021-09-23 03:51 Christos Zoulas * Avinash Sonawane: Fix tzname detection 2021-09-03 09:17 Christos Zoulas * Fix relationship tests with "search" magic, don't short circuit logic 2021-07-13 01:06 Christos Zoulas * Fix memory leak in compile mode 2021-07-01 03:51 Christos Zoulas * PR/272: kiefermat: Only set returnval = 1 when we printed something (in all cases print or !print). This simplifies the logic and fixes the issue in the PR with -k and --mime-type there was no continuation printed before the default case. 2021-06-30 13:07 Christos Zoulas * PR/270: Don't translate unprintable characters in %s magic formats when -r * PR/269: Avoid undefined behavior with clang (adding offset to NULL) 2021-05-09 18:38 Christos Zoulas * Add a new flag (f) that requires that the match is a full word, not a partial word match. * Add varint types (unused) 2021-04-19 17:17 Christos Zoulas * PR/256: mutableVoid: If the file is less than 3 bytes, use the file length to determine type * PR/259: aleksandr.v.novichkov: mime printing through indirect magic is not taken into account, use match directly so that it does. 2021-04-04 17:02 Christos Zoulas * count the total bytes found not the total byte positions in order to determine encoding (Anatol Belski) @ text @@