mirror of
https://github.com/opnsense/src.git
synced 2026-06-03 22:02:58 -04:00
150 lines
6.4 KiB
Text
150 lines
6.4 KiB
Text
|
|
#------------------------------------------------------------------------------
|
|
# $File: diff,v 1.21 2024/07/13 14:47:09 christos Exp $
|
|
# diff: file(1) magic for diff(1) output
|
|
#
|
|
# Update: Joerg Jenderek
|
|
# URL: https://en.wikipedia.org/wiki/Diff
|
|
# Reference: http://mark0.net/download/triddefs_xml.7z/defs/d/diff.trid.xml
|
|
# Note: called "diff output text" by TrID and
|
|
# "Differences between files" by shared MIME-info database from freedesktop.org
|
|
# According to shared MIME-info database also tabulator character instead of space character and
|
|
# by TrID minus character after space character
|
|
0 search/1 diff\040 diff output text
|
|
# diff output text (strength=40=40+0) after unified diff output (strength=131=38+93)
|
|
#!:strength +0
|
|
!:mime text/x-diff
|
|
#!:mime text/x-patch
|
|
!:ext diff/patch
|
|
# no short named pch dif examples found
|
|
#!:ext diff/patch/dif/pch
|
|
# URL: https://en.wikipedia.org/wiki/Diff_utility#Context_format
|
|
# Reference: http://mark0.net/download/triddefs_xml.7z/defs/d/diff-context.trid.xml
|
|
# Note: called "context diff output" by TrID
|
|
# and "Differences between files" by shared MIME-info database from freedesktop.org
|
|
0 search/1 ***\040
|
|
# context diff output text (strength=42=38+4) before
|
|
# C source (strength=41,39,37) exported SGML document (strength=39,28)
|
|
!:strength +4
|
|
>&0 search/1024 \n---\040 context diff output text
|
|
!:mime text/x-diff
|
|
#!:mime text/x-patch
|
|
!:ext diff/patch
|
|
# no short named pch dif examples found
|
|
#!:ext diff/patch/dif/pch
|
|
0 search/1 Only\040in\040 diff output text
|
|
# diff output text output text (strength=38=38+0) after unified diff output (strength=131=38+93)
|
|
#!:strength +0
|
|
!:mime text/x-diff
|
|
#!:mime text/x-patch
|
|
!:ext diff
|
|
0 search/1 Common\040subdirectories:\040 diff output text
|
|
!:mime text/x-diff
|
|
|
|
# URL: https://en.wikipedia.org/wiki/Diff#Extensions
|
|
# Reference: http://mark0.net/download/triddefs_xml.7z/defs/d/diff-rcs.trid.xml
|
|
# Note: called "RCS/CVS diff output" by TrID
|
|
# and "Differences between files" by shared MIME-info database from freedesktop.org
|
|
0 search/1 Index: RCS/CVS diff output text
|
|
# RCS/CVS diff output text (strength=36=36+0) after unified diff output (strength=131=38+93)
|
|
#!:strength +0
|
|
!:mime text/x-diff
|
|
#!:mime text/x-patch
|
|
!:ext diff/patch
|
|
|
|
# bsdiff: file(1) magic for bsdiff(1) output
|
|
# Update: Joerg Jenderek
|
|
# URL: http://www.daemonology.net/bsdiff/
|
|
# Reference: https://github.com/cperciva/bsdiff/blob/master/bsdiff-ra/FORMAT
|
|
# http://mark0.net/download/triddefs_xml.7z/defs/b/bsdiff.trid.xml
|
|
# Note: called "bsdiff patch" by TrID and and "BSDIFF" version 4.0 by DROID via PUID fmt/439 and
|
|
# "Binary differences between files" by shared MIME-info database from freedesktop.org
|
|
0 string/b BSDIFF40
|
|
# skip DROID fmt-439-signature-id-672.bsdiff with invalid new file segment length 0
|
|
>16 long !0 bsdiff(1) patch file
|
|
#!:mime application/octet-stream
|
|
!:mime application/x-bsdiff
|
|
!:ext bsdiff
|
|
# new file length
|
|
#>>8 lequad x \b, new length %lld
|
|
# new file segment length
|
|
#>>16 lelong x \b, new segment length %d
|
|
# compressed header block length
|
|
#>>20 lelong !0 \b, compressed header length %d
|
|
# patch data block length
|
|
#>>24 lequad x \b, data length %lld
|
|
# look for bzip data by ./compress after message with 1 space at end
|
|
>>0x20 indirect x \b, at 0x20
|
|
|
|
# From: Joerg Jenderek
|
|
# URL: https://www.chromium.org/developers/design-documents/software-updates-courgette/
|
|
# Reference: https://github.com/adobe/chromium/blob/master/courgette/third_party/bsdiff.h
|
|
# http://mark0.net/download/triddefs_xml.7z/defs/b/bsdiff-chrome.trid.xml
|
|
# Note: called "Courgette Binary Diff output" by TrID
|
|
# the Courgette bsdiff tool use a total different file format compared with BSD variant from Colin Percival
|
|
0 string/b GBSDIF42 Courgette binary diff output
|
|
#!:mime application/octet-stream
|
|
!:mime application/x-patch
|
|
!:ext patch/bsdiff
|
|
# slen; length of the file to be patched
|
|
#>8 ubelong x \b, source length %u
|
|
# scrc32; CRC32 of the file to be patched
|
|
>12 ubelong x \b, crc %#8.8x
|
|
# dlen; length of the result file
|
|
#>16 ubelong x \b, result length %u
|
|
# cblen; length of the control block
|
|
#>20 ubelong x \b, control length %u
|
|
# difflen; length of the diff block
|
|
#>24 ubelong x \b, patch length %u
|
|
# extralen; length of the extra block
|
|
#>28 ubelong x \b, extra length %u
|
|
|
|
# unified diff
|
|
# URL: http://fileformats.archiveteam.org/wiki/Unified_diff
|
|
# https://en.wikipedia.org/wiki/Diff_utility#Unified_format
|
|
# Reference: https://www.artima.com/weblogs/viewpost.jsp?thread=164293
|
|
# http://mark0.net/download/triddefs_xml.7z/defs/d/diff-unified.trid.xml
|
|
# Note: called "unified diff output" by TrID and
|
|
# "Differences between files" by shared MIME-info database from freedesktop.org
|
|
# use b flag to forces the test to be done for binary files (non ASCII text like with Ctrl-D Ctrl-V Ctrl-Z)
|
|
0 search/4096/b ---\040
|
|
!:strength + 93
|
|
>0 use diff-unified
|
|
# most samples are just pure ASCII text like: ShellR64.patch
|
|
0 search/11054 ---\040
|
|
# unified diff (strength=131=38+93) before
|
|
# HTML document text (strength=170,90,71,53,52,51,49) POSIX shell script (fix-qt5.6-build.patch strength=130 ./commands)
|
|
# JavaScript source (strength=112,84,81,80,79,78,72,69) C++ source (strength=71,70,69,68,67,54),
|
|
# Python script (strength=69,67,63,60,58,57,56,54,52,37)LaTeX document text (strength=62,56,55,51,43)
|
|
# TeX document (strength=51,38) C source (strength=41,39,37)
|
|
# exported SGML document (strength=39,28) diff output text (strength=38=38+0)
|
|
# Pascal source (strength=37) RCS/CVS diff (strength=36=36+0),
|
|
# Algol 68 source (strength=?) CSV ASCII text (strength=?)
|
|
!:strength + 93
|
|
>0 use diff-unified
|
|
# check for 3 characteristic lines of unified diff
|
|
0 name diff-unified
|
|
>0 search/11084 +++\040
|
|
>>&0 search/1024 \n
|
|
# at signs line sometimes other (with 2 space chars before) like: indent-header.patch
|
|
>>>&0 search/2 @@\040- unified diff output text
|
|
!:mime text/x-diff
|
|
#!:mime text/x-patch
|
|
# https://file-extension.net/seeker/file_extension_dif file_extension_pch file_extension_rej
|
|
!:ext diff/patch/dif/pch/rej
|
|
# GRR: mainly for debugging purpose for variants with text before real diff output
|
|
>>>>0 string !---\040
|
|
>>>>>0 string x \b, 1st line "%s"
|
|
>>>>>>&1 string x \b, 2nd line "%s"
|
|
>>>>>>>&1 string x \b, 3rd line "%s"
|
|
|
|
# librsync -- the library for network deltas
|
|
#
|
|
# Copyright (C) 2001 by Martin Pool. You may do whatever you want with
|
|
# this file.
|
|
#
|
|
0 belong 0x72730236 rdiff network-delta data
|
|
|
|
0 belong 0x72730136 rdiff network-delta signature data
|
|
>4 belong x (block length=%d,
|
|
>8 belong x signature strength=%d)
|