head	1.5;
access;
symbols
	FILE5_48:1.1.1.17
	netbsd-11-0-RC4:1.4
	netbsd-11-0-RC3:1.4
	netbsd-11-0-RC2:1.4
	netbsd-11-0-RC1:1.4
	perseant-exfatfs-base-20250801:1.4
	netbsd-11:1.4.0.4
	netbsd-11-base:1.4
	netbsd-10-1-RELEASE:1.3
	perseant-exfatfs-base-20240630:1.4
	perseant-exfatfs:1.4.0.2
	perseant-exfatfs-base:1.4
	netbsd-8-3-RELEASE:1.1.1.10
	netbsd-9-4-RELEASE:1.1.1.12
	netbsd-10-0-RELEASE:1.3
	netbsd-10-0-RC6:1.3
	netbsd-10-0-RC5:1.3
	netbsd-10-0-RC4:1.3
	netbsd-10-0-RC3:1.3
	netbsd-10-0-RC2:1.3
	netbsd-10-0-RC1:1.3
	FILE5_45:1.1.1.16
	netbsd-10:1.3.0.2
	netbsd-10-base:1.3
	FILE5_43:1.1.1.15
	netbsd-9-3-RELEASE:1.1.1.12
	cjep_sun2x-base1:1.2
	cjep_sun2x:1.2.0.4
	cjep_sun2x-base:1.2
	cjep_staticlib_x-base1:1.2
	netbsd-9-2-RELEASE:1.1.1.12
	cjep_staticlib_x:1.2.0.2
	cjep_staticlib_x-base:1.2
	FILE5_40:1.1.1.14
	netbsd-9-1-RELEASE:1.1.1.12
	FILE5_39:1.1.1.14
	phil-wifi-20200421:1.1.1.13
	phil-wifi-20200411:1.1.1.13
	is-mlppp:1.1.1.13.0.2
	is-mlppp-base:1.1.1.13
	phil-wifi-20200406:1.1.1.13
	netbsd-8-2-RELEASE:1.1.1.10
	netbsd-9-0-RELEASE:1.1.1.12
	netbsd-9-0-RC2:1.1.1.12
	FILE5_38:1.1.1.13
	netbsd-9-0-RC1:1.1.1.12
	phil-wifi-20191119:1.1.1.12
	netbsd-9:1.1.1.12.0.2
	netbsd-9-base:1.1.1.12
	phil-wifi-20190609:1.1.1.12
	netbsd-8-1-RELEASE:1.1.1.10
	FILE5_37:1.1.1.12
	netbsd-8-1-RC1:1.1.1.10
	pgoyette-compat-merge-20190127:1.1.1.11
	pgoyette-compat-20190127:1.1.1.11
	pgoyette-compat-20190118:1.1.1.11
	pgoyette-compat-1226:1.1.1.11
	pgoyette-compat-1126:1.1.1.11
	pgoyette-compat-1020:1.1.1.11
	FILE5_35:1.1.1.11
	pgoyette-compat-0930:1.1.1.11
	pgoyette-compat-0906:1.1.1.11
	netbsd-7-2-RELEASE:1.1.1.7
	pgoyette-compat-0728:1.1.1.11
	netbsd-8-0-RELEASE:1.1.1.10
	phil-wifi:1.1.1.11.0.4
	phil-wifi-base:1.1.1.11
	pgoyette-compat-0625:1.1.1.11
	netbsd-8-0-RC2:1.1.1.10
	pgoyette-compat-0521:1.1.1.11
	pgoyette-compat-0502:1.1.1.11
	pgoyette-compat-0422:1.1.1.11
	netbsd-8-0-RC1:1.1.1.10
	FILE5_33:1.1.1.11
	pgoyette-compat-0415:1.1.1.11
	pgoyette-compat-0407:1.1.1.11
	pgoyette-compat-0330:1.1.1.11
	pgoyette-compat-0322:1.1.1.11
	pgoyette-compat-0315:1.1.1.11
	netbsd-7-1-2-RELEASE:1.1.1.7
	pgoyette-compat:1.1.1.11.0.2
	pgoyette-compat-base:1.1.1.11
	netbsd-7-1-1-RELEASE:1.1.1.7
	matt-nb8-mediatek:1.1.1.10.0.6
	matt-nb8-mediatek-base:1.1.1.10
	FILE5_32:1.1.1.11
	perseant-stdc-iso10646:1.1.1.10.0.4
	perseant-stdc-iso10646-base:1.1.1.10
	netbsd-8:1.1.1.10.0.2
	netbsd-8-base:1.1.1.10
	FILE5_31:1.1.1.10
	prg-localcount2-base3:1.1.1.9
	prg-localcount2-base2:1.1.1.9
	prg-localcount2-base1:1.1.1.9
	prg-localcount2:1.1.1.9.0.2
	prg-localcount2-base:1.1.1.9
	pgoyette-localcount-20170426:1.1.1.9
	bouyer-socketcan-base1:1.1.1.9
	pgoyette-localcount-20170320:1.1.1.9
	netbsd-7-1:1.1.1.7.0.8
	netbsd-7-1-RELEASE:1.1.1.7
	netbsd-7-1-RC2:1.1.1.7
	FILE5_30:1.1.1.9
	netbsd-7-nhusb-base-20170116:1.1.1.7
	bouyer-socketcan:1.1.1.8.0.4
	bouyer-socketcan-base:1.1.1.8
	pgoyette-localcount-20170107:1.1.1.8
	netbsd-7-1-RC1:1.1.1.7
	pgoyette-localcount-20161104:1.1.1.8
	netbsd-7-0-2-RELEASE:1.1.1.7
	localcount-20160914:1.1.1.8
	netbsd-7-nhusb:1.1.1.7.0.6
	netbsd-7-nhusb-base:1.1.1.7
	pgoyette-localcount-20160806:1.1.1.8
	pgoyette-localcount-20160726:1.1.1.8
	pgoyette-localcount:1.1.1.8.0.2
	pgoyette-localcount-base:1.1.1.8
	netbsd-7-0-1-RELEASE:1.1.1.7
	netbsd-7-0:1.1.1.7.0.4
	netbsd-7-0-RELEASE:1.1.1.7
	netbsd-7-0-RC3:1.1.1.7
	netbsd-7-0-RC2:1.1.1.7
	netbsd-7-0-RC1:1.1.1.7
	FILE5_22:1.1.1.8
	FILE5_20:1.1.1.8
	netbsd-6-0-6-RELEASE:1.1.1.2.6.1
	netbsd-6-1-5-RELEASE:1.1.1.2.6.1
	netbsd-7:1.1.1.7.0.2
	netbsd-7-base:1.1.1.7
	FILE5_19:1.1.1.7
	yamt-pagecache-base9:1.1.1.6
	yamt-pagecache-tag8:1.1.1.2.4.2
	netbsd-6-1-4-RELEASE:1.1.1.2.6.1
	netbsd-6-0-5-RELEASE:1.1.1.2.6.1
	tls-earlyentropy:1.1.1.6.0.2
	tls-earlyentropy-base:1.1.1.7
	riastradh-xf86-video-intel-2-7-1-pre-2-21-15:1.1.1.6
	riastradh-drm2-base3:1.1.1.6
	netbsd-6-1-3-RELEASE:1.1.1.2.6.1
	netbsd-6-0-4-RELEASE:1.1.1.2.6.1
	FILE5_16:1.1.1.6
	netbsd-6-1-2-RELEASE:1.1.1.2.6.1
	netbsd-6-0-3-RELEASE:1.1.1.2.6.1
	netbsd-6-1-1-RELEASE:1.1.1.2.6.1
	riastradh-drm2-base2:1.1.1.5
	riastradh-drm2-base1:1.1.1.5
	riastradh-drm2:1.1.1.5.0.6
	riastradh-drm2-base:1.1.1.5
	netbsd-6-1:1.1.1.2.6.1.0.6
	netbsd-6-0-2-RELEASE:1.1.1.2.6.1
	netbsd-6-1-RELEASE:1.1.1.2.6.1
	khorben-n900:1.1.1.5.0.4
	netbsd-6-1-RC4:1.1.1.2.6.1
	netbsd-6-1-RC3:1.1.1.2.6.1
	agc-symver:1.1.1.5.0.2
	agc-symver-base:1.1.1.5
	FILE5_14:1.1.1.5
	netbsd-6-1-RC2:1.1.1.2.6.1
	netbsd-6-1-RC1:1.1.1.2.6.1
	yamt-pagecache-base8:1.1.1.4
	FILE_5_12:1.1.1.4
	netbsd-6-0-1-RELEASE:1.1.1.2.6.1
	yamt-pagecache-base7:1.1.1.3
	matt-nb6-plus-nbase:1.1.1.2.6.1
	yamt-pagecache-base6:1.1.1.3
	netbsd-6-0:1.1.1.2.6.1.0.4
	netbsd-6-0-RELEASE:1.1.1.2.6.1
	netbsd-6-0-RC2:1.1.1.2.6.1
	tls-maxphys:1.1.1.3.0.2
	tls-maxphys-base:1.1.1.7
	matt-nb6-plus:1.1.1.2.6.1.0.2
	matt-nb6-plus-base:1.1.1.2.6.1
	netbsd-6-0-RC1:1.1.1.2.6.1
	yamt-pagecache-base5:1.1.1.3
	yamt-pagecache-base4:1.1.1.3
	FILE5_11:1.1.1.3
	netbsd-6:1.1.1.2.0.6
	netbsd-6-base:1.1.1.2
	yamt-pagecache-base3:1.1.1.2
	yamt-pagecache-base2:1.1.1.2
	yamt-pagecache:1.1.1.2.0.4
	yamt-pagecache-base:1.1.1.2
	FILE5_09:1.1.1.2
	cherry-xenmp:1.1.1.2.0.2
	cherry-xenmp-base:1.1.1.2
	FILE5_07:1.1.1.2
	bouyer-quota2-nbase:1.1.1.1
	bouyer-quota2:1.1.1.1.0.4
	bouyer-quota2-base:1.1.1.1
	matt-mips64-premerge-20101231:1.1.1.1
	matt-premerge-20091211:1.1.1.1
	jym-xensuspend-base:1.1.1.1
	jym-xensuspend:1.1.1.1.0.2
	jym-xensuspend-nbase:1.1.1.1
	FILE5_03:1.1.1.1
	CHRISTOS:1.1.1;
locks; strict;
comment	@# @;


1.5
date	2026.06.10.20.54.16;	author christos;	state Exp;
branches;
next	1.4;
commitid	7mUHk6JZASLAkiJG;

1.4
date	2023.08.18.19.00.10;	author christos;	state Exp;
branches;
next	1.3;
commitid	MBLVQLzqzmQ7IiBE;

1.3
date	2022.09.24.20.21.46;	author christos;	state Exp;
branches;
next	1.2;
commitid	zJ5LoIcubBSIH9VD;

1.2
date	2021.04.09.19.11.41;	author christos;	state Exp;
branches;
next	1.1;
commitid	hKe2GL3vw8SVrEOC;

1.1
date	2009.05.08.16.35.07;	author christos;	state Exp;
branches
	1.1.1.1;
next	;

1.1.1.1
date	2009.05.08.16.35.07;	author christos;	state Exp;
branches
	1.1.1.1.2.1;
next	1.1.1.2;

1.1.1.2
date	2011.05.12.20.46.58;	author christos;	state Exp;
branches
	1.1.1.2.4.1
	1.1.1.2.6.1;
next	1.1.1.3;

1.1.1.3
date	2012.02.22.17.48.30;	author christos;	state Exp;
branches
	1.1.1.3.2.1;
next	1.1.1.4;

1.1.1.4
date	2013.01.03.16.27.53;	author christos;	state Exp;
branches;
next	1.1.1.5;

1.1.1.5
date	2013.03.23.15.49.17;	author christos;	state Exp;
branches;
next	1.1.1.6;

1.1.1.6
date	2013.12.01.19.28.18;	author christos;	state Exp;
branches
	1.1.1.6.2.1;
next	1.1.1.7;
commitid	RVQIxe3FpM3lSsfx;

1.1.1.7
date	2014.06.13.01.48.24;	author christos;	state Exp;
branches;
next	1.1.1.8;
commitid	jtTYsE5FmJU6MiEx;

1.1.1.8
date	2014.10.10.20.08.21;	author christos;	state Exp;
branches
	1.1.1.8.2.1
	1.1.1.8.4.1;
next	1.1.1.9;
commitid	pfOzhE33qnut2HTx;

1.1.1.9
date	2017.02.10.17.42.57;	author christos;	state Exp;
branches;
next	1.1.1.10;
commitid	HAP3kn9Hn6ovMqFz;

1.1.1.10
date	2017.05.24.23.59.57;	author christos;	state Exp;
branches;
next	1.1.1.11;
commitid	WbyOU2LBE5qOyHSz;

1.1.1.11
date	2017.09.08.13.22.42;	author christos;	state Exp;
branches
	1.1.1.11.4.1;
next	1.1.1.12;
commitid	Hp7DmePhD4aVAo6A;

1.1.1.12
date	2019.05.22.17.19.57;	author christos;	state Exp;
branches;
next	1.1.1.13;
commitid	VXeNRYYruN1MWdoB;

1.1.1.13
date	2019.12.17.02.23.53;	author christos;	state Exp;
branches;
next	1.1.1.14;
commitid	vqYTz60fS9PNg0PB;

1.1.1.14
date	2020.06.15.00.18.48;	author christos;	state Exp;
branches;
next	1.1.1.15;
commitid	HMbuXSjPojU5LfcC;

1.1.1.15
date	2022.09.24.20.07.53;	author christos;	state Exp;
branches;
next	1.1.1.16;
commitid	Nf6F9kcpc0EPC9VD;

1.1.1.16
date	2023.08.18.18.36.50;	author christos;	state Exp;
branches;
next	1.1.1.17;
commitid	IX26ghc1E2S0AiBE;

1.1.1.17
date	2026.06.10.15.59.13;	author christos;	state Exp;
branches;
next	;
commitid	3UWc0DrzTz7bHgJG;

1.1.1.1.2.1
date	2009.05.08.16.35.07;	author jym;	state dead;
branches;
next	1.1.1.1.2.2;

1.1.1.1.2.2
date	2009.05.13.18.51.55;	author jym;	state Exp;
branches;
next	;

1.1.1.2.4.1
date	2012.04.17.00.03.08;	author yamt;	state Exp;
branches;
next	1.1.1.2.4.2;

1.1.1.2.4.2
date	2013.01.23.00.04.35;	author yamt;	state Exp;
branches;
next	1.1.1.2.4.3;

1.1.1.2.4.3
date	2014.05.22.15.44.59;	author yamt;	state Exp;
branches;
next	;
commitid	tYJXbWAuFvTh7yBx;

1.1.1.2.6.1
date	2012.03.07.23.18.25;	author riz;	state Exp;
branches;
next	;

1.1.1.3.2.1
date	2013.02.25.00.26.05;	author tls;	state Exp;
branches;
next	1.1.1.3.2.2;

1.1.1.3.2.2
date	2013.06.23.06.26.32;	author tls;	state Exp;
branches;
next	1.1.1.3.2.3;
commitid	OnlO1cBgtQRcIHUw;

1.1.1.3.2.3
date	2014.08.19.23.46.47;	author tls;	state Exp;
branches;
next	;
commitid	jTnpym9Qu0o4R1Nx;

1.1.1.6.2.1
date	2014.08.10.07.07.10;	author tls;	state Exp;
branches;
next	;
commitid	b1wUlsZGswrdGMLx;

1.1.1.8.2.1
date	2017.03.20.06.52.19;	author pgoyette;	state Exp;
branches;
next	;
commitid	jjw7cAwgyKq7RfKz;

1.1.1.8.4.1
date	2017.04.21.16.51.23;	author bouyer;	state Exp;
branches;
next	;
commitid	dUG7nkTKALCadqOz;

1.1.1.11.4.1
date	2019.06.10.21.44.46;	author christos;	state Exp;
branches;
next	1.1.1.11.4.2;
commitid	jtc8rnCzWiEEHGqB;

1.1.1.11.4.2
date	2020.04.08.14.04.04;	author martin;	state Exp;
branches;
next	;
commitid	Qli2aW9E74UFuA3C;


desc
@@


1.5
log
@merge changes between file-5.45 and file-5.48
@
text
@
#------------------------------------------------------------------------------
# $File: commands,v 1.82 2026/02/16 14:39:53 christos Exp $
# commands:  file(1) magic for various shells and interpreters
#
#0	string/w	:			shell archive or script for antique kernel text
0	string/fwt	#!\ /bin/sh		POSIX shell script text executable
!:mime	text/x-shellscript
0	string/fwb	#!\ /bin/sh		POSIX shell script executable (binary data)
!:mime	text/x-shellscript
>10	string	#\040This\040script\040was\040generated\040using\040Makeself	\b, self-executable archive
>>53	string	x	\b, Makeself %s

0	string/fwt	#!\ /bin/csh		C shell script text executable
!:mime	text/x-shellscript

# korn shell magic, sent by George Wu, gwu@@clyde.att.com
0	string/fwt	#!\ /bin/ksh		Korn shell script text executable
!:mime	text/x-shellscript
0	string/fwb	#!\ /bin/ksh		Korn shell script executable (binary data)
!:mime	text/x-shellscript

0	string/fwt	#!\ /bin/tcsh		Tenex C shell script text executable
!:mime	text/x-shellscript
0	string/fwt	#!\ /usr/bin/tcsh	Tenex C shell script text executable
!:mime	text/x-shellscript
0	string/fwt	#!\ /usr/local/tcsh	Tenex C shell script text executable
!:mime	text/x-shellscript
0	string/fwt	#!\ /usr/local/bin/tcsh Tenex C shell script text executable
!:mime	text/x-shellscript

#
# zsh/ash/ae/nawk/gawk magic from cameron@@cs.unsw.oz.au (Cameron Simpson)
0	string/fwt	#!\ /bin/zsh		Paul Falstad's zsh script text executable
!:mime	text/x-shellscript
0	string/fwt	#!\ /usr/bin/zsh	Paul Falstad's zsh script text executable
!:mime	text/x-shellscript
0	string/fwt	#!\ /usr/local/bin/zsh	Paul Falstad's zsh script text executable
!:mime	text/x-shellscript
0	string/fwt	#!\ /usr/bin/env\ zsh	Paul Falstad's zsh script text executable
!:mime	text/x-shellscript

0	string/fwt	#!\ /bin/ash		Neil Brown's ash script text executable
!:mime	text/x-shellscript
0	string/fwt	#!\ /usr/bin/ash	Neil Brown's ash script text executable
!:mime	text/x-shellscript
0	string/fwt	#!\ /usr/local/bin/ash	Neil Brown's ash script text executable
!:mime	text/x-shellscript
0	string/fwt	#!\ /usr/local/bin/ae	Neil Brown's ae script text executable
!:mime	text/x-shellscript
0	string/fwt	#!\ /bin/nawk		new awk script text executable
!:mime	text/x-nawk
0	string/fwt	#!\ /usr/bin/nawk	new awk script text executable
!:mime	text/x-nawk
0	string/fwt	#!\ /usr/local/bin/nawk new awk script text executable
!:mime	text/x-nawk
0	string/fwt	#!\ /bin/gawk		GNU awk script text executable
!:mime	text/x-gawk
0	string/wt	#!\ /usr/bin/gawk	GNU awk script text executable
!:mime	text/x-gawk
0	string/fwt	#!\ /usr/local/bin/gawk GNU awk script text executable
!:mime	text/x-gawk
#
0	string/fwt	#!\ /bin/awk		awk script text executable
!:mime	text/x-awk
0	string/fwt	#!\ /usr/bin/awk	awk script text executable
!:mime	text/x-awk
0	regex/4096	=^[\040\t\f\r\n]{0,100}BEGIN[\040\t\f\r\n]{0,100}[{]	awk or perl script text

0	string/fwt	#!\ /bin/lua		Lua script text executable
!:mime	text/x-lua
0	string/fwt	#!\ /usr/bin/lua	Lua script text executable
!:mime	text/x-lua
0	string/fwt	#!\ /usr/bin/env\ lua	Lua script text executable
!:mime	text/x-lua
0	string/fwt	#!\ /bin/env\ lua	Lua script text executable
!:mime	text/x-lua

# AT&T Bell Labs' Plan 9 shell
0	string/fwt	#!\ /bin/rc	Plan 9 rc shell script text executable

# bash shell magic, from Peter Tobias (tobias@@server.et-inf.fho-emden.de)
0	string/fwt	#!\ /bin/bash	Bourne-Again shell script text executable
!:mime	text/x-shellscript
0	string/fwb	#!\ /bin/bash	Bourne-Again shell script executable (binary data)
!:mime	text/x-shellscript
0	string/fwt	#!\ /usr/bin/bash	Bourne-Again shell script text executable
!:mime	text/x-shellscript
0	string/fwb	#!\ /usr/bin/bash	Bourne-Again shell script executable (binary data)
!:mime	text/x-shellscript
0	string/fwt	#!\ /usr/local/bash	Bourne-Again shell script text executable
!:mime	text/x-shellscript
0	string/fwb	#!\ /usr/local/bash	Bourne-Again shell script executable (binary data)
!:mime	text/x-shellscript
0	string/fwt	#!\ /usr/local/bin/bash Bourne-Again shell script text executable
!:mime	text/x-shellscript
0	string/fwb	#!\ /usr/local/bin/bash Bourne-Again shell script executable (binary data)
!:mime	text/x-shellscript
0	string/fwt	#!\ /usr/bin/env\ bash	Bourne-Again shell script text executable
!:mime	text/x-shellscript
0	string/fwt	#!\ /bin/env\ bash	Bourne-Again shell script text executable
!:mime	text/x-shellscript

0	string/fwt	#!\ /bin/dash	Dash shell script text executable
!:mime	text/x-shellscript
0	string/fwt	#!\ /usr/bin/dash	Dash shell script text executable
!:mime	text/x-shellscript

# Fish shell magic
# From: Benjamin Lowry <ben@@ben.gmbh>
0	string/fwt	#!\ /usr/local/bin/fish		fish shell script text executable
!:mime	text/x-shellscript
0	string/fwt	#!\ /usr/bin/fish		fish shell script text executable
!:mime	text/x-shellscript
0	string/fwt	#!\ /usr/bin/env\ fish		fish shell script text executable
!:mime	text/x-shellscript

0	search/1/fwt	#!\ /usr/bin/tclsh	Tcl/Tk script text executable
!:mime	text/x-tcl

0	search/1/fwt	#!\ /usr/bin/texlua	LuaTex script text executable
!:mime	text/x-luatex
0	search/1/fwt	#!\ /usr/bin/env\ texlua	LuaTex script text executable
!:mime	text/x-luatex
0	search/1/fwt	#!\ /bin/env\ texlua	LuaTex script text executable
!:mime	text/x-luatex

0	search/1/fwt	#!\ /usr/bin/luatex	LuaTex script text executable
!:mime	text/x-luatex

0	search/1/fwt	#!\ /usr/bin/stap	Systemtap script text executable
!:mime	text/x-systemtap
0	search/1/fwt	#!\ /sbin/openrc-run	OpenRC script text executable
!:mime	text/x-shellscript

# From: Marc Chantreux <mc@@unistra.fr>
# [Raku](https://raku.org/) script
0	string/fwt	#!\ /bin/raku		Raku (http://raku.org) script
!:mime	text/x-raku
0	string/fwt	#!\ /usr/bin/raku	Raku (http://raku.org) script
!:mime	text/x-raku

# From: Kylie McClain <kylie@@somas.is>
# Type: execline scripts
# URL:	https://skarnet.org/software/execline/
0	string/fwt	#!\ /command/execlineb		execline script text executable
!:mime	text/x-execline
0	string/fwt	#!\ /bin/execlineb		execline script text executable
!:mime	text/x-execline
0	string/fwt	#!\ /usr/bin/execlineb		execline script text executable
!:mime	text/x-execline
0	string/fwt	#!\ /usr/bin/env\ execlineb		execline script text executable
!:mime	text/x-execline

0	string	#!
>0	regex	\^#!.*/bin/execlineb([[:space:]].*)*$	execline script text executable
!:mime	text/x-execline

0	string	#!/nix/store/
>&-11	string/T	x			a %s script text executable

# PHP scripts
# Ulf Harnhammar <ulfh@@update.uu.se>
0	search/1/c	=<?php			PHP script text
!:strength + 55
!:mime	text/x-php
0	search/1	=<?\n			PHP script text
!:mime	text/x-php
0	search/1	=<?\r			PHP script text
!:mime	text/x-php
0	search/1/w	#!\ /usr/local/bin/php	PHP script text executable
!:strength + 55
!:mime	text/x-php
0	search/1/w	#!\ /usr/bin/php	PHP script text executable
!:strength + 55
!:mime	text/x-php
# Smarty compiled template, https://www.smarty.net/
# Elan Ruusamae <glen@@delfi.ee>
0	string	=<?php
>5	regex	[\ \n]
>>6	string	/*\ Smarty\ version		Smarty compiled template
>>>24	regex	[0-9.]+				\b, version %s
!:mime	text/x-php

0	string		Zend\x00		PHP script Zend Optimizer data

# From: Anatol Belski <ab@@php.net>
0	string		OPCACHE
>7	ubyte		0			PHP opcache filecache data

0	search/64	--TEST--
>16	search/64	--FILE--
>24	search/8192	--EXPECT		PHP core test
!:ext	phpt

# https://www.php.net/manual/en/phar.fileformat.signature.php
-4	string		GBMB			PHP phar archive
>-8	ubyte		0x1			with MD5 signature
!:ext	phar
>-8	ubyte		0x2			with SHA1 signature
!:ext	phar
>-8	ubyte		0x3			with SHA256 signature
!:ext	phar
>-8	ubyte		0x4			with SHA512 signature
!:ext	phar
>-8	ubyte		0x10			with OpenSSL signature
!:ext	phar
>-8	ubyte		0x11			with OpenSSL SHA256 signature
!:ext	phar
>-8	ubyte		0x12			with OpenSSL SHA512 signature
!:ext	phar

0	string/t	$!			DCL command file

# Type: Pdmenu
# URL:	https://packages.debian.org/pdmenu
# From: Edward Betts <edward@@debian.org>
0	string		#!/usr/bin/pdmenu	Pdmenu configuration file text

# From Danny Weldon
0	string	\x0b\x13\x08\x00
>0x04	uleshort	<4	ksh byte-code version %d

# From: arno <arenevier@@fdn.fr>
# mozilla xpconnect typelib
# see https://www.mozilla.org/scriptable/typelib_file.html
0	string		XPCOM\nTypeLib\r\n\032		XPConnect Typelib
>0x10  byte	   x	   version %d
>>0x11 byte	   x	  \b.%d

0	string/fwt	#!\ /usr/bin/env\ runghc	GHC script executable
0	string/fwt	#!\ /usr/bin/env\ runhaskell	Haskell script executable
0	string/fwt	#!\ /usr/bin/env\ julia Julia script executable
@


1.4
log
@merge conflicts between file-5.43 and file-5.45
@
text
@d3 1
a3 1
# $File: commands,v 1.73 2022/11/06 18:39:23 christos Exp $
d23 1
a23 1
0	string/fwt 	#!\ /bin/tcsh		Tenex C shell script text executable
d27 1
a27 1
0	string/fwt 	#!\ /usr/local/tcsh	Tenex C shell script text executable
d29 1
a29 1
0	string/fwt	#!\ /usr/local/bin/tcsh	Tenex C shell script text executable
d55 1
a55 1
0	string/fwt	#!\ /usr/local/bin/nawk	new awk script text executable
d61 1
a61 1
0	string/fwt	#!\ /usr/local/bin/gawk	GNU awk script text executable
d70 9
d95 1
a95 1
0	string/fwt	#!\ /usr/local/bin/bash	Bourne-Again shell script text executable
d97 1
a97 1
0	string/fwb	#!\ /usr/local/bin/bash	Bourne-Again shell script executable (binary data)
d101 7
d119 1
a119 1
!:mime  text/x-tcl
d123 4
d132 10
a141 1
!:mime  text/x-systemtap
d145 1
a145 1
# URL:  https://skarnet.org/software/execline/
d159 3
d165 1
a165 1
!:strength + 30
d172 1
a172 1
!:strength + 10
d175 1
a175 1
!:strength + 10
d216 1
a216 1
# URL:  https://packages.debian.org/pdmenu
d222 1
a222 1
>0x04   uleshort	<4      ksh byte-code version %d
d227 3
a229 3
0	string 		XPCOM\nTypeLib\r\n\032		XPConnect Typelib
>0x10  byte        x       version %d
>>0x11 byte        x      \b.%d
d233 1
a233 1
0	string/fwt	#!\ /usr/bin/env\ julia	Julia script executable
@


1.3
log
@merge changes between 5.40 and 5.43
@
text
@d3 1
a3 1
# $File: commands,v 1.69 2022/04/20 21:14:23 christos Exp $
d11 2
a101 3
0	string/wt	#!\ 	a
>&-1	string/T	x	%s script text executable

d191 11
@


1.2
log
@merge local changes between 5.39 and 5.40 and add magic entries from HEAD.
@
text
@d3 1
a3 1
# $File: commands,v 1.64 2021/04/06 15:43:11 christos Exp $
d7 1
a7 1
0	string/wt	#!\ /bin/sh		POSIX shell script text executable
d9 1
a9 1
0	string/wb	#!\ /bin/sh		POSIX shell script executable (binary data)
d12 1
a12 1
0	string/wt	#!\ /bin/csh		C shell script text executable
d16 1
a16 1
0	string/wt	#!\ /bin/ksh		Korn shell script text executable
d18 1
a18 1
0	string/wb	#!\ /bin/ksh		Korn shell script executable (binary data)
d21 1
a21 1
0	string/wt 	#!\ /bin/tcsh		Tenex C shell script text executable
d23 1
a23 1
0	string/wt	#!\ /usr/bin/tcsh	Tenex C shell script text executable
d25 1
a25 1
0	string/wt 	#!\ /usr/local/tcsh	Tenex C shell script text executable
d27 1
a27 1
0	string/wt	#!\ /usr/local/bin/tcsh	Tenex C shell script text executable
d32 1
a32 1
0	string/wt	#!\ /bin/zsh		Paul Falstad's zsh script text executable
d34 1
a34 1
0	string/wt	#!\ /usr/bin/zsh	Paul Falstad's zsh script text executable
d36 1
a36 1
0	string/wt	#!\ /usr/local/bin/zsh	Paul Falstad's zsh script text executable
d38 1
a38 1
0	search/1	#!/usr/bin/env\ zsh	Paul Falstad's zsh script text executable
d41 1
a41 1
0	string/wt	#!\ /bin/ash		Neil Brown's ash script text executable
d43 1
a43 1
0	string/wt	#!\ /usr/bin/ash	Neil Brown's ash script text executable
d45 1
a45 1
0	string/wt	#!\ /usr/local/bin/ash	Neil Brown's ash script text executable
d47 1
a47 1
0	string/wt	#!\ /usr/local/bin/ae	Neil Brown's ae script text executable
d49 1
a49 1
0	string/wt	#!\ /bin/nawk		new awk script text executable
d51 1
a51 1
0	string/wt	#!\ /usr/bin/nawk	new awk script text executable
d53 1
a53 1
0	string/wt	#!\ /usr/local/bin/nawk	new awk script text executable
d55 1
a55 1
0	string/wt	#!\ /bin/gawk		GNU awk script text executable
d59 1
a59 1
0	string/wt	#!\ /usr/local/bin/gawk	GNU awk script text executable
d62 1
a62 1
0	string/wt	#!\ /bin/awk		awk script text executable
d64 1
a64 1
0	string/wt	#!\ /usr/bin/awk	awk script text executable
d69 1
a69 1
0	string/wt	#!\ /bin/rc	Plan 9 rc shell script text executable
d72 1
a72 1
0	string/wt	#!\ /bin/bash	Bourne-Again shell script text executable
d74 1
a74 1
0	string/wb	#!\ /bin/bash	Bourne-Again shell script executable (binary data)
d76 1
a76 1
0	string/wt	#!\ /usr/bin/bash	Bourne-Again shell script text executable
d78 1
a78 1
0	string/wb	#!\ /usr/bin/bash	Bourne-Again shell script executable (binary data)
d80 1
a80 1
0	string/wt	#!\ /usr/local/bash	Bourne-Again shell script text executable
d82 1
a82 1
0	string/wb	#!\ /usr/local/bash	Bourne-Again shell script executable (binary data)
d84 1
a84 1
0	string/wt	#!\ /usr/local/bin/bash	Bourne-Again shell script text executable
d86 1
a86 1
0	string/wb	#!\ /usr/local/bin/bash	Bourne-Again shell script executable (binary data)
d88 1
a88 1
0	string/wt	#!\ /usr/bin/env\ bash	Bourne-Again shell script text executable
d93 1
a93 1
0	string/wt	#!\ /usr/local/bin/fish		fish shell script text executable
d95 1
a95 1
0	string/wt	#!\ /usr/bin/fish		fish shell script text executable
d97 1
a97 1
0	string/wt	#!\ /usr/bin/env\ fish		fish shell script text executable
d100 2
d103 1
a103 1
0	search/1/wt	#!\ /usr/bin/tclsh	Tcl/Tk script text executable
d106 1
a106 1
0	search/1/wt	#!\ /usr/bin/texlua	LuaTex script text executable
d109 1
a109 1
0	search/1/wt	#!\ /usr/bin/luatex	LuaTex script text executable
d112 1
a112 1
0	search/1/wt	#!\ /usr/bin/stap	Systemtap script text executable
d115 15
a129 1

d156 26
@


1.1
log
@Initial revision
@
text
@d3 1
d6 2
a7 2
#0	string		:			shell archive or script for antique kernel text
0	string/b	#!\ /bin/sh		POSIX shell script text executable
d9 1
a9 1
0	string/b	#!\ /bin/csh		C shell script text executable
d11 4
d16 3
a18 1
0	string/b	#!\ /bin/ksh		Korn shell script text executable
d20 4
a23 1
0	string/b 	#!\ /bin/tcsh		Tenex C shell script text executable
d25 1
a25 1
0	string/b 	#!\ /usr/local/tcsh	Tenex C shell script text executable
d27 1
a27 1
0	string/b	#!\ /usr/local/bin/tcsh	Tenex C shell script text executable
d32 1
a32 1
0	string/b	#!\ /bin/zsh		Paul Falstad's zsh script text executable
d34 1
a34 1
0	string/b	#!\ /usr/bin/zsh	Paul Falstad's zsh script text executable
d36 1
a36 1
0	string/b	#!\ /usr/local/bin/zsh	Paul Falstad's zsh script text executable
d38 4
a41 1
0	string/b	#!\ /usr/local/bin/ash	Neil Brown's ash script text executable
d43 1
a43 1
0	string/b	#!\ /usr/local/bin/ae	Neil Brown's ae script text executable
d45 5
a49 1
0	string/b	#!\ /bin/nawk		new awk script text executable
d51 1
a51 1
0	string/b	#!\ /usr/bin/nawk	new awk script text executable
d53 1
a53 1
0	string/b	#!\ /usr/local/bin/nawk	new awk script text executable
d55 1
a55 1
0	string/b	#!\ /bin/gawk		GNU awk script text executable
d57 1
a57 1
0	string/b	#!\ /usr/bin/gawk	GNU awk script text executable
d59 1
a59 1
0	string/b	#!\ /usr/local/bin/gawk	GNU awk script text executable
d62 1
a62 1
0	string/b	#!\ /bin/awk		awk script text executable
d64 1
a64 1
0	string/b	#!\ /usr/bin/awk	awk script text executable
d66 1
a66 3
# update to distinguish from *.vcf files
# this is broken because postscript has /EBEGIN{ for example.
#0	search/Bb	BEGIN {			awk script text
d69 1
a69 1
0	string/b	#!\ /bin/rc	Plan 9 rc shell script text executable
d72 11
a82 1
0	string/b	#!\ /bin/bash	Bourne-Again shell script text executable
d84 1
a84 1
0	string/b	#!\ /usr/local/bin/bash	Bourne-Again shell script text executable
d86 27
a113 5
# using env
0	string		#!/usr/bin/env		a
>15	string		>\0			%s script text executable
0	string		#!\ /usr/bin/env	a
>16	string		>\0			%s script text executable
d118 1
d124 5
a128 1
0	search/1/b	#!\ /usr/local/bin/php	PHP script text executable
d130 6
a135 1
0	search/1/b	#!\ /usr/bin/php	PHP script text executable
d140 10
a149 1
0	string		$!			DCL command file
@


1.1.1.1
log
@from ftp.astron.com
@
text
@@


1.1.1.2
log
@from ftp.astron.com.
- many security related fixes
- no MAXPATHLEN limits
- fixed missing text specification on ascii magic
- new ``pascal'' style string formats
- whitespace comparison fix
- more magic
@
text
@a2 1
# $File: commands,v 1.41 2011/05/02 12:36:41 christos Exp $
d5 2
a6 2
#0	string/w	:			shell archive or script for antique kernel text
0	string/wt	#!\ /bin/sh		POSIX shell script text executable
d8 1
a8 1
0	string/wt	#!\ /bin/csh		C shell script text executable
d11 1
a11 1
0	string/wt	#!\ /bin/ksh		Korn shell script text executable
d13 1
a13 1
0	string/wt 	#!\ /bin/tcsh		Tenex C shell script text executable
d15 1
a15 1
0	string/wt	#!\ /usr/bin/tcsh	Tenex C shell script text executable
d17 1
a17 3
0	string/wt 	#!\ /usr/local/tcsh	Tenex C shell script text executable
!:mime	text/x-shellscript
0	string/wt	#!\ /usr/local/bin/tcsh	Tenex C shell script text executable
d22 1
a22 1
0	string/wt	#!\ /bin/zsh		Paul Falstad's zsh script text executable
d24 1
a24 1
0	string/wt	#!\ /usr/bin/zsh	Paul Falstad's zsh script text executable
d26 1
a26 1
0	string/wt	#!\ /usr/local/bin/zsh	Paul Falstad's zsh script text executable
d28 1
a28 1
0	string/wt	#!\ /usr/local/bin/ash	Neil Brown's ash script text executable
d30 1
a30 1
0	string/wt	#!\ /usr/local/bin/ae	Neil Brown's ae script text executable
d32 1
a32 1
0	string/wt	#!\ /bin/nawk		new awk script text executable
d34 1
a34 1
0	string/wt	#!\ /usr/bin/nawk	new awk script text executable
d36 1
a36 1
0	string/wt	#!\ /usr/local/bin/nawk	new awk script text executable
d38 1
a38 1
0	string/wt	#!\ /bin/gawk		GNU awk script text executable
d40 1
a40 1
0	string/wt	#!\ /usr/bin/gawk	GNU awk script text executable
d42 1
a42 1
0	string/wt	#!\ /usr/local/bin/gawk	GNU awk script text executable
d45 1
a45 1
0	string/wt	#!\ /bin/awk		awk script text executable
d47 1
a47 1
0	string/wt	#!\ /usr/bin/awk	awk script text executable
d49 3
a51 1
0	regex		=^\\s*BEGIN\\s*[{]	awk script text
d54 1
a54 1
0	string/wt	#!\ /bin/rc	Plan 9 rc shell script text executable
d57 1
a57 5
0	string/wt	#!\ /bin/bash	Bourne-Again shell script text executable
!:mime	text/x-shellscript
0	string/wt	#!\ /usr/bin/bash	Bourne-Again shell script text executable
!:mime	text/x-shellscript
0	string/wt	#!\ /usr/local/bash	Bourne-Again shell script text executable
d59 1
a59 1
0	string/wt	#!\ /usr/local/bin/bash	Bourne-Again shell script text executable
d63 4
a66 4
0	string/t	#!/usr/bin/env		a
>15	string/t	>\0			%s script text executable
0	string/t	#!\ /usr/bin/env	a
>16	string/t	>\0			%s script text executable
d76 1
a76 1
0	search/1/w	#!\ /usr/local/bin/php	PHP script text executable
d78 1
a78 6
0	search/1/w	#!\ /usr/bin/php	PHP script text executable
!:mime	text/x-php
# Smarty compiled template, http://www.smarty.net/
# Elan Ruusamäe <glen@@delfi.ee>
0	string	=<?php\ /*\ Smarty\ version	Smarty compiled template
>24	regex	[0-9.]+				\b, version %s
d83 1
a83 6
0	string/t	$!			DCL command file

# Type: Pdmenu
# URL:  http://packages.debian.org/pdmenu
# From: Edward Betts <edward@@debian.org>
0	string		#!/usr/bin/pdmenu	Pdmenu configuration file text
@


1.1.1.2.4.1
log
@sync with head
@
text
@d3 1
a3 1
# $File: commands,v 1.42 2011/12/05 23:14:02 rrt Exp $
d67 6
@


1.1.1.2.4.2
log
@sync with head
@
text
@d3 1
a3 1
# $File: commands,v 1.43 2012/06/21 01:08:56 christos Exp $
a69 1
!:strength + 10
a75 1
!:strength + 10
a77 1
!:strength + 10
@


1.1.1.2.4.3
log
@sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs.  ("Protocol error: too many arguments")
@
text
@d3 1
a3 1
# $File: commands,v 1.46 2013/03/25 14:06:55 christos Exp $
d52 1
a52 1
0	regex		=^\\s{0,100}BEGIN\\s{0,100}[{]	awk script text
d83 1
a83 1
# Elan Ruusamae <glen@@delfi.ee>
@


1.1.1.2.6.1
log
@Pull up following revision(s) (requested by christos in ticket #30):
	Update file to 5.11 (CDF security fixes)
@
text
@d3 1
a3 1
# $File: commands,v 1.42 2011/12/05 23:14:02 rrt Exp $
d67 6
@


1.1.1.3
log
@from ftp.astron.com, CDF security fixes
@
text
@d3 1
a3 1
# $File: commands,v 1.42 2011/12/05 23:14:02 rrt Exp $
d67 6
@


1.1.1.3.2.1
log
@resync with head
@
text
@d3 1
a3 1
# $File: commands,v 1.43 2012/06/21 01:08:56 christos Exp $
a69 1
!:strength + 10
a75 1
!:strength + 10
a77 1
!:strength + 10
@


1.1.1.3.2.2
log
@resync from head
@
text
@d3 1
a3 1
# $File: commands,v 1.45 2013/02/06 14:18:52 christos Exp $
d83 1
a83 1
# Elan Ruusamae <glen@@delfi.ee>
@


1.1.1.3.2.3
log
@Rebase to HEAD as of a few days ago.
@
text
@d3 1
a3 1
# $File: commands,v 1.50 2014/05/30 16:48:44 christos Exp $
a8 3
0	string/wb	#!\ /bin/sh		POSIX shell script executable (binary data)
!:mime	text/x-shellscript

a10 1

a13 3
0	string/wb	#!\ /bin/ksh		Korn shell script executable (binary data)
!:mime	text/x-shellscript

d52 1
a52 1
0	regex/4096	=^\\s{0,100}BEGIN\\s{0,100}[{]	awk script text
a59 2
0	string/wb	#!\ /bin/bash	Bourne-Again shell script executable (binary data)
!:mime	text/x-shellscript
a61 2
0	string/wb	#!\ /usr/bin/bash	Bourne-Again shell script executable (binary data)
!:mime	text/x-shellscript
a63 2
0	string/wb	#!\ /usr/local/bash	Bourne-Again shell script executable (binary data)
!:mime	text/x-shellscript
a65 2
0	string/wb	#!\ /usr/local/bin/bash	Bourne-Again shell script executable (binary data)
!:mime	text/x-shellscript
@


1.1.1.4
log
@from ftp.astron.com
@
text
@d3 1
a3 1
# $File: commands,v 1.43 2012/06/21 01:08:56 christos Exp $
a69 1
!:strength + 10
a75 1
!:strength + 10
a77 1
!:strength + 10
@


1.1.1.5
log
@import file-5.14
changes are "name" + "use" keyword features, bug fixes
@
text
@d3 1
a3 1
# $File: commands,v 1.45 2013/02/06 14:18:52 christos Exp $
d83 1
a83 1
# Elan Ruusamae <glen@@delfi.ee>
@


1.1.1.6
log
@from ftp.astron.com, this is a bug fix release:
       * always leave magic file loaded, don't unload for magic_check, etc.
       * fix default encoding to binary instead of unknown which broke recently
       * handle empty and one byte files, less specially so that
         --mime-encoding does not break completely.
       * fix erroneous non-zero exit code from non-existant file and message
       * add CDF MSI file detection (Guy Helmer)
@
text
@d3 1
a3 1
# $File: commands,v 1.46 2013/03/25 14:06:55 christos Exp $
d52 1
a52 1
0	regex		=^\\s{0,100}BEGIN\\s{0,100}[{]	awk script text
@


1.1.1.6.2.1
log
@Rebase.
@
text
@d3 1
a3 1
# $File: commands,v 1.50 2014/05/30 16:48:44 christos Exp $
a8 3
0	string/wb	#!\ /bin/sh		POSIX shell script executable (binary data)
!:mime	text/x-shellscript

a10 1

a13 3
0	string/wb	#!\ /bin/ksh		Korn shell script executable (binary data)
!:mime	text/x-shellscript

d52 1
a52 1
0	regex/4096	=^\\s{0,100}BEGIN\\s{0,100}[{]	awk script text
a59 2
0	string/wb	#!\ /bin/bash	Bourne-Again shell script executable (binary data)
!:mime	text/x-shellscript
a61 2
0	string/wb	#!\ /usr/bin/bash	Bourne-Again shell script executable (binary data)
!:mime	text/x-shellscript
a63 2
0	string/wb	#!\ /usr/local/bash	Bourne-Again shell script executable (binary data)
!:mime	text/x-shellscript
a65 2
0	string/wb	#!\ /usr/local/bin/bash	Bourne-Again shell script executable (binary data)
!:mime	text/x-shellscript
@


1.1.1.7
log
@import file-5.19

2014-06-09   9:04  Christos Zoulas <christos@@zoulas.com>

	* Misc buffer overruns and missing buffer size tests in cdf parsing
	  (Francisco Alonso, Jan Kaluza)

2014-06-02  14:50  Christos Zoulas <christos@@zoulas.com>

	* Enforce limit of 8K on regex searches that have no limits
	* Allow the l modifier for regex to mean line count. Default
	  to byte count. If line count is specified, assume a max
	  of 80 characters per line to limit the byte count.
	* Don't allow conversions to be used for dates, allowing
	  the mask field to be used as an offset.

2014-05-30  12:51  Christos Zoulas <christos@@zoulas.com>

	* Make the range operator limit the length of the
	  regex search.

2014-05-14  19:23  Christos Zoulas <christos@@zoulas.com>

	* PR/347: Windows fixes
	* PR/352: Hangul word processor recognition
	* PR/354: Encoding irregularities in text files

2014-05-06  6:12  Christos Zoulas <christos@@zoulas.com>

	* Fix uninitialized title in CDF files (Jan Kaluza)

2014-05-04  14:55  Christos Zoulas <christos@@zoulas.com>

	* PR/351: Fix compilation of empty files

2014-04-30  17:39  Christos Zoulas <christos@@zoulas.com>

	* Fix integer formats: We don't specify 'l' or
	  'h' and 'hh' specifiers anymore, only 'll' for
	  quads and nothing for the rest. This is so that
	  magic writing is simpler.

2014-04-01  15:25  Christos Zoulas <christos@@zoulas.com>

	* PR/341: Jan Kaluza, fix memory leak
	* PR/342: Jan Kaluza, fix out of bounds read

2014-03-28  15:25  Christos Zoulas <christos@@zoulas.com>

	* Fix issue with long formats not matching fmtcheck
@
text
@d3 1
a3 1
# $File: commands,v 1.50 2014/05/30 16:48:44 christos Exp $
a8 3
0	string/wb	#!\ /bin/sh		POSIX shell script executable (binary data)
!:mime	text/x-shellscript

a10 1

a13 3
0	string/wb	#!\ /bin/ksh		Korn shell script executable (binary data)
!:mime	text/x-shellscript

d52 1
a52 1
0	regex/4096	=^\\s{0,100}BEGIN\\s{0,100}[{]	awk script text
a59 2
0	string/wb	#!\ /bin/bash	Bourne-Again shell script executable (binary data)
!:mime	text/x-shellscript
a61 2
0	string/wb	#!\ /usr/bin/bash	Bourne-Again shell script executable (binary data)
!:mime	text/x-shellscript
a63 2
0	string/wb	#!\ /usr/local/bash	Bourne-Again shell script executable (binary data)
!:mime	text/x-shellscript
a65 2
0	string/wb	#!\ /usr/local/bin/bash	Bourne-Again shell script executable (binary data)
!:mime	text/x-shellscript
@


1.1.1.8
log
@import file-5.20; bug fixes and better image magic descriptions.
@
text
@d3 1
a3 1
# $File: commands,v 1.51 2014/09/27 00:12:55 christos Exp $
d59 1
a59 1
0	regex/4096	=^\\s{0,100}BEGIN\\s{0,100}[{]	awk or perl script text
@


1.1.1.8.4.1
log
@Sync with HEAD
@
text
@d3 1
a3 1
# $File: commands,v 1.56 2016/07/14 19:01:12 christos Exp $
a80 2
0	string/wt	#!\ /usr/bin/env\ bash	Bourne-Again shell script text executable
!:mime	text/x-shellscript
d99 2
a100 4
0	string	=<?php
>5	regex	[\ \n]
>>6	string	/*\ Smarty\ version		Smarty compiled template
>>>24	regex	[0-9.]+				\b, version %s
a110 4

# From Danny Weldon
0	string	\x0b\x13\x08\x00
>0x04   uleshort	<4      ksh byte-code version %d
@


1.1.1.8.2.1
log
@Sync with HEAD
@
text
@d3 1
a3 1
# $File: commands,v 1.56 2016/07/14 19:01:12 christos Exp $
a80 2
0	string/wt	#!\ /usr/bin/env\ bash	Bourne-Again shell script text executable
!:mime	text/x-shellscript
d99 2
a100 4
0	string	=<?php
>5	regex	[\ \n]
>>6	string	/*\ Smarty\ version		Smarty compiled template
>>>24	regex	[0-9.]+				\b, version %s
a110 4

# From Danny Weldon
0	string	\x0b\x13\x08\x00
>0x04   uleshort	<4      ksh byte-code version %d
@


1.1.1.9
log
@2017-02-10  12:24  Christos Zoulas <christos@@zoulas.com>

	* release 5.30

2017-02-07  23:27  Christos Zoulas <christos@@zoulas.com>

	* If we exceeded the offset in a search return no match
	  (Christoph Biedl)
	* Be more lenient on corrupt CDF files (Christoph Biedl)

2017-02-04  16:46  Christos Zoulas <christos@@zoulas.com>

	* pacify ubsan sign extension (oss-fuzz/524)

2017-02-01  12:42  Christos Zoulas <christos@@zoulas.com>

	* off by one in cdf parsing (PR/593)
	* report debugging sections in elf (PR/591)

2016-11-06  10:52  Christos Zoulas <christos@@zoulas.com>

	* Allow @@@@@@ in extensions
	* Add missing overflow check in der magic (Jonas Wagner)

2016-10-25  10:40  Christos Zoulas <christos@@zoulas.com>

	* release 5.29

2016-10-24  11:20  Christos Zoulas <christos@@zoulas.com>

	* der getlength overflow (Jonas Wagner)
	* multiple magic file load failure (Christoph Biedl)

2016-10-17  11:26  Christos Zoulas <christos@@zoulas.com>

	* CDF parsing improvements (Guy Helmer)

2016-07-20   7:26  Christos Zoulas <christos@@zoulas.com>

	* Add support for signed indirect offsets

2016-07-18   7:41  Christos Zoulas <christos@@zoulas.com>

	* cat /dev/null | file - should print empty (Christoph Biedl)

2016-07-05  15:20  Christos Zoulas <christos@@zoulas.com>

	* Bump string size from 64 to 96.

2016-06-13  20:20  Christos Zoulas <christos@@zoulas.com>

	* PR/556: Fix separators on annotations.

2016-06-13  19:40  Christos Zoulas <christos@@zoulas.com>

	* release 5.28
	* fix leak on allocation failure

2016-06-01   1:20  Christos Zoulas <christos@@zoulas.com>

	* PR/555: Avoid overflow for offset > nbytes
	* PR/550: Segv on DER parsing:
	    - use the correct variable for length
	    - set offset to 0 on failure.

2016-05-13  12:00  Christos Zoulas <christos@@zoulas.com>

	* release 5.27

2016-04-18   9:35  Christos Zoulas <christos@@zoulas.com>

	* Errors comparing DER entries or computing offsets
	  are just indications of malformed non-DER files.
	  Don't print them.
	* Offset comparison was off-by-one.
	* Fix compression code (Werner Fink)
	* Put new bytes constant in the right file (not the generated one)

2016-04-16  18:34  Christos Zoulas <christos@@zoulas.com>

	* release 5.26

2016-03-31  13:50  Christos Zoulas <christos@@zoulas.com>

	* make the number of bytes read from files configurable.

2016-03-21  13:40  Christos Zoulas <christos@@zoulas.com>

	* Add bounds checks for DER code (discovered by Thomas Jarosch)
	* Change indirect recursion limit to indirect use count and
	  bump from 15 to 50 to prevent abuse.

2016-03-13  20:39  Christos Zoulas <christos@@zoulas.com>

	* Add -00 which prints filename\0description\0

2016-03-01  13:28  Christos Zoulas <christos@@zoulas.com>

	* Fix ID3 indirect parsing

2016-01-19  10:18  Christos Zoulas <christos@@zoulas.com>

	* add DER parsing capability

2015-11-13  10:35  Christos Zoulas <christos@@zoulas.com>

	* provide dprintf(3) for the OS's that don't have it.

2015-11-11  16:25  Christos Zoulas <christos@@zoulas.com>

	* redo the compression code report decompression errors

2015-11-10  23:25  Christos Zoulas <christos@@zoulas.com>

	* REG_STARTEND code is not working as expected, delete it.

2015-11-09  16:05  Christos Zoulas <christos@@zoulas.com>

	* Add zlib support if we have it.

2015-11-05  11:22  Christos Zoulas <christos@@zoulas.com>

	* PR/492: compression forking was broken with magic_buffer.

2015-09-16   9:50  Christos Zoulas <christos@@zoulas.com>

	* release 5.25

2015-09-11  13:25  Christos Zoulas <christos@@zoulas.com>

	* add a limit to the length of regex searches

2015-09-08   9:50  Christos Zoulas <christos@@zoulas.com>

	* fix problems with --parameter (Christoph Biedl)

2015-07-11  10:35  Christos Zoulas <christos@@zoulas.com>

	* Windows fixes PR/466 (Jason Hood)

2015-07-09  10:35  Christos Zoulas <christos@@zoulas.com>

	* release 5.24

2015-06-11   8:52  Christos Zoulas <christos@@zoulas.com>

	* redo long option encoding to fix off-by-one in 5.23

2015-06-10  13:50  Christos Zoulas <christos@@zoulas.com>

	* release 5.23

2015-06-09  16:10  Christos Zoulas <christos@@zoulas.com>

	* Fix issue with regex range for magic with offset
	* Always return true from mget with USE (success to mget not match
	  indication). Fixes mime evaluation after USE magic
	* PR/459: Don't insert magic entries to the list if there are parsing
	  errors for them.

2015-06-03  16:00  Christos Zoulas <christos@@zoulas.com>

	* PR/455: Add utf-7 encoding

2015-06-03  14:30  Christos Zoulas <christos@@zoulas.com>

	* PR/455: Implement -Z, look inside, but don't report on compression
	* PR/454: Fix allocation error on bad magic.

2015-05-29  10:30  Christos Zoulas <christos@@zoulas.com>

	* handle MAGIC_CONTINUE everywhere, not just in softmagic

2015-05-21  14:30  Christos Zoulas <christos@@zoulas.com>

	* don't print descriptions for NAME types when mime.

2015-04-09  15:59  Christos Zoulas <christos@@zoulas.com>

	* Add --extension to list the known extensions for this file type
	  Idea by Andrew J Roazen

2015-02-14  12:23  Christos Zoulas <christos@@zoulas.com>

	* Bump file search buffer size to 1M.

2015-01-09  14:35  Christos Zoulas <christos@@zoulas.com>

	* Fix multiple issues with date formats reported by Christoph Biedl:
		- T_LOCAL meaning was reversed
		- Arithmetic did not work
	  Also stop adjusting daylight savings for gmt printing.

2015-01-05  13:00  Christos Zoulas <christos@@zoulas.com>

	* PR/411: Fix memory corruption from corrupt cdf file.
@
text
@d3 1
a3 1
# $File: commands,v 1.56 2016/07/14 19:01:12 christos Exp $
a80 2
0	string/wt	#!\ /usr/bin/env\ bash	Bourne-Again shell script text executable
!:mime	text/x-shellscript
d99 2
a100 4
0	string	=<?php
>5	regex	[\ \n]
>>6	string	/*\ Smarty\ version		Smarty compiled template
>>>24	regex	[0-9.]+				\b, version %s
a110 4

# From Danny Weldon
0	string	\x0b\x13\x08\x00
>0x04   uleshort	<4      ksh byte-code version %d
@


1.1.1.10
log
@Import file-5.31; mostly oss-fuzz found bugs.
@
text
@d3 1
a3 1
# $File: commands,v 1.57 2017/04/04 20:34:24 christos Exp $
d59 1
a59 1
0	regex/4096	=^[A-Za-z0-9_]{0,100}BEGIN[A-Za-z0-9_]{0,100}[{]	awk or perl script text
@


1.1.1.11
log
@2017-09-02  11:53  Christos Zoulas <christos@@zoulas.com>

	* release 5.32

2017-08-28  16:37  Christos Zoulas <christos@@zoulas.com>

	* Always reset state in {file,buffer}_apprentice (Krzysztof Wilczynski)

2017-08-27  03:55  Christos Zoulas <christos@@zoulas.com>

	* Fix always true condition (Thomas Jarosch)

2017-05-24  17:30  Christos Zoulas <christos@@zoulas.com>

	* pickier parsing of numeric values in magic files.

2017-05-23  17:55  Christos Zoulas <christos@@zoulas.com>

	* PR/615 add magic_getflags()

2017-05-23  13:55  Christos Zoulas <christos@@zoulas.com>

	* release 5.31

2017-03-17  20:32  Christos Zoulas <christos@@zoulas.com>

	* remove trailing spaces from magic files
	* refactor is_tar
	* better bounds checks for cdf
@
text
@d3 1
a3 1
# $File: commands,v 1.59 2017/08/14 07:40:38 christos Exp $
d59 1
a59 1
0	regex/4096	=^[\040\t\f\r\n]{0,100}BEGIN[\040\t\f\r\n]{0,100}[{]	awk or perl script text
d87 1
a87 1
!:strength + 30
@


1.1.1.11.4.1
log
@Sync with HEAD
@
text
@d3 1
a3 1
# $File: commands,v 1.60 2019/04/19 00:42:27 christos Exp $
d99 1
a99 1
# Smarty compiled template, https://www.smarty.net/
d112 1
a112 1
# URL:  https://packages.debian.org/pdmenu
@


1.1.1.11.4.2
log
@Merge changes from current as of 20200406
@
text
@d3 1
a3 1
# $File: commands,v 1.61 2019/10/30 03:16:43 christos Exp $
a37 3
0	search/1	#!/usr/bin/env\ zsh	Paul Falstad's zsh script text executable
!:mime	text/x-shellscript

@


1.1.1.12
log
@2019-05-14  22:26  Christos Zoulas <christos@@zoulas.com>

	* release 5.37

2019-05-09  22:27  Christos Zoulas <christos@@zoulas.com>

	* Make sure that continuation separators are printed
	  with -k within softmagic

2019-05-06  22:27  Christos Zoulas <christos@@zoulas.com>

	* Change SIGPIPE saving and restoring during compression to use
	  sigaction(2) instead of signal(3) and cache it. (Denys Vlasenko)
	* Cache stat(2) calls more to reduce number of calls (Denys Vlasenko)

2019-05-06  17:25  Christos Zoulas <christos@@zoulas.com>

	* PR/77: Handle --mime-type and -k correctly.

2019-05-03  15:26  Christos Zoulas <christos@@zoulas.com>

	* Switch decompression code to use vfork() because
	  tools like rpmdiff and rpmbuild call libmagic
	  with large process footprints (Denys Vlasenko)

2019-04-07  14:05  Christos Zoulas <christos@@zoulas.com>

	* PR/75: --enable-zlib, did not work.

2019-02-27  11:54  Christos Zoulas <christos@@zoulas.com>

	* Improve regex efficiency (Michael Schroeder) by:
		1. Prefixing regex searches with regular search
		   for keywords where possible
		2. Using memmem(3) where available
@
text
@d3 1
a3 1
# $File: commands,v 1.60 2019/04/19 00:42:27 christos Exp $
d99 1
a99 1
# Smarty compiled template, https://www.smarty.net/
d112 1
a112 1
# URL:  https://packages.debian.org/pdmenu
@


1.1.1.13
log
@Import 5.38:
	- Always accept -S (no sandbox) even if we don't support sandboxing
	- More syscalls elided for sandboxiing
	- For ELF dynamic means having an interpreter not just PT_DYNAMIC
	- Check for large ELF session header offset
	- When saving and restoring a locale, keep the locale name in our
	  own storage.
	- Add a flag to disable CSV file detection.
	- Don't pass NULL/0 to memset to appease sanitizers.
	- Avoid spurious prints when looks for extensions or apple strings
	  in fsmagic.
	- Add builtin decompressors for xz and and bzip.
	- Add a limit for the number of CDF elements.
	- More checks for overflow in CDF.
@
text
@d3 1
a3 1
# $File: commands,v 1.61 2019/10/30 03:16:43 christos Exp $
a37 3
0	search/1	#!/usr/bin/env\ zsh	Paul Falstad's zsh script text executable
!:mime	text/x-shellscript

@


1.1.1.14
log
@Import 5.39:

   * Remove unused subtype_mime (Steve Grubb)
   * Remove unused check in okstat (Steve Grubb)
   * Fix mime-type in elf binaries by making sure $x is set
   * Fix indirect negative offsets broken by OFFNEGATIVE
   * Fix GUID equality check
   * PR/165: Handle empty array and strings in JSON
   * PR/162: Add --exclude-quiet
   * Fix memory leak in ascmagic (Steve Grubb)
   * Fix string comparison length with ignore whitespace
   * Fix mingwin 64 compilation
   * PR/159: whitelist getpid needed for file_pipe2file()
   * Indicate negative offsets with a flag OFFNEGATIVE
     so that -0 works.
   * Introduce "offset" magic type that can be used to
     detect the file size, and bail on short files.
   * document DER better in the magic man page.
   * fix memory leaks (SonarQube)
   * rewrite confusing loops (SonarQube)
   * fix bogus test (SonarQube)
   * pass a sized buffer to file_fmttime() (SonarQube)
   * Don't allow * in printf formats, or the code itself (Christoph Biedl)
   * Introduce a printf output size checker to avoid DoS attacks
   * Avoid memory leak on error (oss-fuzz)
   * Check length of string on DER before derefercing and add new types
   * Add missing DER string (oss-fuzz)
   * Add missing DER types, and debugging
   * PR/140: Avoid abort with hand-crafted magic file (gockelhahn)
   * PR/139:  Avoid DoS in printf with hand-crafted magic file (gockelhahn)
   * PR/138: Avoid crash with hand-crafted magic file (gockelhahn)
   * PR/136: Fix static build by adding a libmagic.pc (Fabrice Fontaine)
   * add guid support native support via the "guid" type.
@
text
@d3 1
a3 1
# $File: commands,v 1.63 2020/06/06 15:36:30 christos Exp $
a86 24
# Fish shell magic
# From: Benjamin Lowry <ben@@ben.gmbh>
0	string/wt	#!\ /usr/local/bin/fish		fish shell script text executable
!:mime	text/x-shellscript
0	string/wt	#!\ /usr/bin/fish		fish shell script text executable
!:mime	text/x-shellscript
0	string/wt	#!\ /usr/bin/env\ fish		fish shell script text executable
!:mime	text/x-shellscript


0	search/1/wt	#!\ /usr/bin/tclsh	Tcl/Tk script text executable
!:mime  text/x-tcl

0	search/1/wt	#!\ /usr/bin/texlua	LuaTex script text executable
!:mime	text/x-luatex

0	search/1/wt	#!\ /usr/bin/luatex	LuaTex script text executable
!:mime	text/x-luatex

0	search/1/wt	#!\ /usr/bin/stap	Systemtap script text executable
!:mime  text/x-systemtap



@


1.1.1.15
log
@Import file-5.43+; last was file-5.40

2022-09-20  17:12  Christos Zoulas <christos@@zoulas.com>

	* fixed various clustefuzz issues

2022-09-19  15:54  Christos Zoulas <christos@@zoulas.com>

	* Fix error detection for decompression code (Vincent Mihalkovic)

2022-09-15  13:50  Christos Zoulas <christos@@zoulas.com>

	* 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 <christos@@zoulas.com>

	* Add built-in lzip decompression support (Michal Gorny)

2022-09-14  10:35  Christos Zoulas <christos@@zoulas.com>

	* Add built-in zstd decompression support (Martin Rodriguez Reboredo)

2022-09-13  14:55  Christos Zoulas <christos@@zoulas.com>

	* release 5.43

2022-09-10   9:17  Christos Zoulas <christos@@zoulas.com>

	* Add octal indirect magic (Michal Gorny)

2022-08-17  11:43  Christos Zoulas <christos@@zoulas.com>

	* 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 <christos@@zoulas.com>

	* Fix bug with large flist (Florian Weimer)

2022-07-07  13:21  Christos Zoulas <christos@@zoulas.com>

        * PR/364: Detect non-nul-terminated core filenames from QEMU
	  (mam-ableton)

2022-07-04  15:45  Christos Zoulas <christos@@zoulas.com>

	* 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 <christos@@zoulas.com>

	* release 5.42

2022-05-31  14:50   Christos Zoulas <christos@@zoulas.com>

	* PR/348: add missing cases to prevent file from aborting on
	  random magic files.

2022-05-27  21:05   Christos Zoulas <christos@@zoulas.com>

	* PR/351: octalify filenames when not raw before printing.

2022-04-18  17:51   Christos Zoulas <christos@@zoulas.com>

	* 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 <christos@@zoulas.com>

	* cache regex (Dirk Mueller)
	* detect filesystem full by flushing output (Dirk Mueller)

2021-11-19  12:36   Christos Zoulas <christos@@zoulas.com>

	* implement running decompressor programs using
	  posix_spawnp(2) instead of vfork(2)

2021-10-24  11:51   Christos Zoulas <christos@@zoulas.com>

	* Add support for msdos dates and times

2021-10-20   9:55   Christos Zoulas <christos@@zoulas.com>

	* use the system byte swapping functions if available (Werner Fink)

2021-10-18  11:57  Christos Zoulas <christos@@zoulas.com>

	* release 5.41

2021-09-23  03:51  Christos Zoulas <christos@@zoulas.com>

	* Avinash Sonawane: Fix tzname detection

2021-09-03  09:17  Christos Zoulas <christos@@zoulas.com>

	* Fix relationship tests with "search" magic, don't short circuit
	  logic

2021-07-13  01:06  Christos Zoulas <christos@@zoulas.com>

	* Fix memory leak in compile mode

2021-07-01  03:51  Christos Zoulas <christos@@zoulas.com>

	* 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 <christos@@zoulas.com>

	* 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 <christos@@zoulas.com>

	* 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 <christos@@zoulas.com>

	* 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 <christos@@zoulas.com>

	* count the total bytes found not the total byte positions
	  in order to determine encoding (Anatol Belski)
@
text
@d3 1
a3 1
# $File: commands,v 1.69 2022/04/20 21:14:23 christos Exp $
d7 1
a7 1
0	string/fwt	#!\ /bin/sh		POSIX shell script text executable
d9 1
a9 1
0	string/fwb	#!\ /bin/sh		POSIX shell script executable (binary data)
d12 1
a12 1
0	string/fwt	#!\ /bin/csh		C shell script text executable
d16 1
a16 1
0	string/fwt	#!\ /bin/ksh		Korn shell script text executable
d18 1
a18 1
0	string/fwb	#!\ /bin/ksh		Korn shell script executable (binary data)
d21 1
a21 1
0	string/fwt 	#!\ /bin/tcsh		Tenex C shell script text executable
d23 1
a23 1
0	string/fwt	#!\ /usr/bin/tcsh	Tenex C shell script text executable
d25 1
a25 1
0	string/fwt 	#!\ /usr/local/tcsh	Tenex C shell script text executable
d27 1
a27 1
0	string/fwt	#!\ /usr/local/bin/tcsh	Tenex C shell script text executable
d32 1
a32 1
0	string/fwt	#!\ /bin/zsh		Paul Falstad's zsh script text executable
d34 1
a34 1
0	string/fwt	#!\ /usr/bin/zsh	Paul Falstad's zsh script text executable
d36 1
a36 1
0	string/fwt	#!\ /usr/local/bin/zsh	Paul Falstad's zsh script text executable
d38 1
a38 1
0	string/fwt	#!\ /usr/bin/env\ zsh	Paul Falstad's zsh script text executable
d41 1
a41 1
0	string/fwt	#!\ /bin/ash		Neil Brown's ash script text executable
d43 1
a43 1
0	string/fwt	#!\ /usr/bin/ash	Neil Brown's ash script text executable
d45 1
a45 5
0	string/fwt	#!\ /usr/local/bin/ash	Neil Brown's ash script text executable
!:mime	text/x-shellscript
0	string/fwt	#!\ /usr/local/bin/ae	Neil Brown's ae script text executable
!:mime	text/x-shellscript
0	string/fwt	#!\ /bin/nawk		new awk script text executable
d47 1
a47 1
0	string/fwt	#!\ /usr/bin/nawk	new awk script text executable
d49 1
a49 1
0	string/fwt	#!\ /usr/local/bin/nawk	new awk script text executable
d51 1
a51 1
0	string/fwt	#!\ /bin/gawk		GNU awk script text executable
d55 1
a55 1
0	string/fwt	#!\ /usr/local/bin/gawk	GNU awk script text executable
d58 1
a58 1
0	string/fwt	#!\ /bin/awk		awk script text executable
d60 1
a60 1
0	string/fwt	#!\ /usr/bin/awk	awk script text executable
d65 1
a65 1
0	string/fwt	#!\ /bin/rc	Plan 9 rc shell script text executable
d68 1
a68 1
0	string/fwt	#!\ /bin/bash	Bourne-Again shell script text executable
d70 1
a70 1
0	string/fwb	#!\ /bin/bash	Bourne-Again shell script executable (binary data)
d72 1
a72 1
0	string/fwt	#!\ /usr/bin/bash	Bourne-Again shell script text executable
d74 1
a74 1
0	string/fwb	#!\ /usr/bin/bash	Bourne-Again shell script executable (binary data)
d76 1
a76 1
0	string/fwt	#!\ /usr/local/bash	Bourne-Again shell script text executable
d78 1
a78 1
0	string/fwb	#!\ /usr/local/bash	Bourne-Again shell script executable (binary data)
d80 1
a80 1
0	string/fwt	#!\ /usr/local/bin/bash	Bourne-Again shell script text executable
d82 1
a82 1
0	string/fwb	#!\ /usr/local/bin/bash	Bourne-Again shell script executable (binary data)
d84 1
a84 1
0	string/fwt	#!\ /usr/bin/env\ bash	Bourne-Again shell script text executable
d89 1
a89 1
0	string/fwt	#!\ /usr/local/bin/fish		fish shell script text executable
d91 1
a91 1
0	string/fwt	#!\ /usr/bin/fish		fish shell script text executable
d93 1
a93 1
0	string/fwt	#!\ /usr/bin/env\ fish		fish shell script text executable
a95 2
0	string/wt	#!\ 	a
>&-1	string/T	x	%s script text executable
d97 1
a97 1
0	search/1/fwt	#!\ /usr/bin/tclsh	Tcl/Tk script text executable
d100 1
a100 1
0	search/1/fwt	#!\ /usr/bin/texlua	LuaTex script text executable
d103 1
a103 1
0	search/1/fwt	#!\ /usr/bin/luatex	LuaTex script text executable
d106 1
a106 1
0	search/1/fwt	#!\ /usr/bin/stap	Systemtap script text executable
d109 1
a109 15
# From: Kylie McClain <kylie@@somas.is>
# Type: execline scripts
# URL:  https://skarnet.org/software/execline/
0	string/fwt	#!\ /command/execlineb		execline script text executable
!:mime	text/x-execline
0	string/fwt	#!\ /bin/execlineb		execline script text executable
!:mime	text/x-execline
0	string/fwt	#!\ /usr/bin/execlineb		execline script text executable
!:mime	text/x-execline
0	string/fwt	#!\ /usr/bin/env\ execlineb		execline script text executable
!:mime	text/x-execline

0	string	#!
>0	regex	\^#!.*/bin/execlineb([[:space:]].*)*$	execline script text executable
!:mime	text/x-execline
a135 26
# From: Anatol Belski <ab@@php.net>
0	string		OPCACHE
>7	ubyte		0			PHP opcache filecache data

0	search/64	--TEST--
>16	search/64	--FILE--
>24	search/8192	--EXPECT		PHP core test
!:ext	phpt

# https://www.php.net/manual/en/phar.fileformat.signature.php
-4	string		GBMB			PHP phar archive
>-8	ubyte		0x1			with MD5 signature
!:ext	phar
>-8	ubyte		0x2			with SHA1 signature
!:ext	phar
>-8	ubyte		0x3			with SHA256 signature
!:ext	phar
>-8	ubyte		0x4			with SHA512 signature
!:ext	phar
>-8	ubyte		0x10			with OpenSSL signature
!:ext	phar
>-8	ubyte		0x11			with OpenSSL SHA256 signature
!:ext	phar
>-8	ubyte		0x12			with OpenSSL SHA512 signature
!:ext	phar

@


1.1.1.16
log
@Update to file-5.45 (Last was file-5.44)

2023-07-27  15:45  Christos Zoulas <christos@@zoulas.com>

	* release 5.45

2023-07-17  11:53  Christos Zoulas <christos@@zoulas.com>

	* PR/465: psrok1: Avoid muslc asctime_r crash

2023-05-21  13:05  Christos Zoulas <christos@@zoulas.com>

	* add SIMH tape format support

2023-02-09  12:50  Christos Zoulas <christos@@zoulas.com>

	* bump the max size of the elf section notes to be read to 128K
	  and make it configurable

2023-01-08   1:08  Christos Zoulas <christos@@zoulas.com>

	* PR/415: Fix decompression with program returning empty

2022-12-26   1:47  Christos Zoulas <christos@@zoulas.com>

	* PR/408: fix -p with seccomp
	* PR/412: fix MinGW compilation
@
text
@d3 1
a3 1
# $File: commands,v 1.73 2022/11/06 18:39:23 christos Exp $
a10 2
>10	string	#\040This\040script\040was\040generated\040using\040Makeself	\b, self-executable archive
>>53	string	x	\b, Makeself %s
d100 3
a191 11

# From: arno <arenevier@@fdn.fr>
# mozilla xpconnect typelib
# see https://www.mozilla.org/scriptable/typelib_file.html
0	string 		XPCOM\nTypeLib\r\n\032		XPConnect Typelib
>0x10  byte        x       version %d
>>0x11 byte        x      \b.%d

0	string/fwt	#!\ /usr/bin/env\ runghc	GHC script executable
0	string/fwt	#!\ /usr/bin/env\ runhaskell	Haskell script executable
0	string/fwt	#!\ /usr/bin/env\ julia	Julia script executable
@


1.1.1.17
log
@Import file-5.48 (previous was file-5.45)

2026-05-07  11:32  Christos Zoulas <christos@@zoulas.com>

	* release 5.48

2026-05-11  15:55 Christos Zoulas <christos@@zoulas.com>

	* add landlock support (valoq)

2026-04-19  15:55 Christos Zoulas <christos@@zoulas.com>

	* add BE/LE GUID

2026-04-17  11:05 Christos Zoulas <christos@@zoulas.com>

	* multiple fixes to prevent integer overflow in 32 bits (kerwin)

2026-04-15  12:40 Christos Zoulas <christos@@zoulas.com>

	* PR/745: streamout: Don't flush when trying to set negative offsets
	          on pipes, just continue, fixes 'cat file.zip | file -'
	* PR/753: vmihalko: Fix race is magic_getpath()

2026-03-11  15:14 Christos Zoulas <christos@@zoulas.com>

	* PR/728: Anton Monroe: Reinstate regex/c

2026-02-26  11:32  Christos Zoulas <christos@@zoulas.com>

	* release 5.47

2026-02-04  09:54  Christos Zoulas <christos@@zoulas.com>
	* Better multi-compound document identification by following the
	  order of the directories entries. (Thomas Ledoux)

2026-01-19  14:00  Christos Zoulas <christos@@zoulas.com>
	* if stat fails, don't attempt to restore times (Steven Grubb)

2025-05-28  15:20  Christos Zoulas <christos@@zoulas.com>

	* PR/622: Odd_Bloke: Handle negative offsets in file_buffer(),
	  when fd is not available.

2025-05-28  12:50  Christos Zoulas <christos@@zoulas.com>

	* PR/655: jsummers: Obey str_flags in strings like we do for search
	  and regex
	* PR/659: Pitzl: Apply MAGIC_CONTINUE to annotations; i.e. print
	  only the first, unless -k is specified.

2024-12-19  14:44  Christos Zoulas <christos@@zoulas.com>

	* PR/592: allow + in format strings
	* PR/592: signed operations should be done in signed context

2024-12-05  13:50 Christos Zoulas <christos@@zoulas.com>

	* PR/578: jsummers: Don't crash on cygwin when tm_mon == -1
	* PR/579: net147: Fix stack overrun.

2024-11-27  14:44  Christos Zoulas <christos@@zoulas.com>

	* release 5.46
	* Add OFFPOSITIVE

2024-11-25  13:56  Christos Zoulas <christos@@zoulas.com>

	* avoid leaking symbols in libmagic

2024-11-10  13:56  Christos Zoulas <christos@@zoulas.com>

	* PR/562: jsummers: Search/regex offsets are absolute to the
	  beginning of the file, so adjust them by subtracting the
	  offset that the "use" starts so that we don't double-count it.


2024-11-09  19:30  Christos Zoulas <christos@@zoulas.com>
 	* PR/543: matshch: bump nbuf so we can get the flags into the buffer.


2024-11-02  14:34  Christos Zoulas <christos@@zoulas.com>

 	* Add Android elf notes (enh)

2023-12-29  12:55  Christos Zoulas <christos@@zoulas.com>

	* Add limit for number of magic warnings allowed

2023-07-29  12:55  Christos Zoulas <christos@@zoulas.com>

	* check regex bounds (found by clusterfuzz)
@
text
@d3 1
a3 1
# $File: commands,v 1.82 2026/02/16 14:39:53 christos Exp $
d23 1
a23 1
0	string/fwt	#!\ /bin/tcsh		Tenex C shell script text executable
d27 1
a27 1
0	string/fwt	#!\ /usr/local/tcsh	Tenex C shell script text executable
d29 1
a29 1
0	string/fwt	#!\ /usr/local/bin/tcsh Tenex C shell script text executable
d55 1
a55 1
0	string/fwt	#!\ /usr/local/bin/nawk new awk script text executable
d61 1
a61 1
0	string/fwt	#!\ /usr/local/bin/gawk GNU awk script text executable
a69 9
0	string/fwt	#!\ /bin/lua		Lua script text executable
!:mime	text/x-lua
0	string/fwt	#!\ /usr/bin/lua	Lua script text executable
!:mime	text/x-lua
0	string/fwt	#!\ /usr/bin/env\ lua	Lua script text executable
!:mime	text/x-lua
0	string/fwt	#!\ /bin/env\ lua	Lua script text executable
!:mime	text/x-lua

d86 1
a86 1
0	string/fwt	#!\ /usr/local/bin/bash Bourne-Again shell script text executable
d88 1
a88 1
0	string/fwb	#!\ /usr/local/bin/bash Bourne-Again shell script executable (binary data)
a91 7
0	string/fwt	#!\ /bin/env\ bash	Bourne-Again shell script text executable
!:mime	text/x-shellscript

0	string/fwt	#!\ /bin/dash	Dash shell script text executable
!:mime	text/x-shellscript
0	string/fwt	#!\ /usr/bin/dash	Dash shell script text executable
!:mime	text/x-shellscript
d103 1
a103 1
!:mime	text/x-tcl
a106 4
0	search/1/fwt	#!\ /usr/bin/env\ texlua	LuaTex script text executable
!:mime	text/x-luatex
0	search/1/fwt	#!\ /bin/env\ texlua	LuaTex script text executable
!:mime	text/x-luatex
d112 1
a112 10
!:mime	text/x-systemtap
0	search/1/fwt	#!\ /sbin/openrc-run	OpenRC script text executable
!:mime	text/x-shellscript

# From: Marc Chantreux <mc@@unistra.fr>
# [Raku](https://raku.org/) script
0	string/fwt	#!\ /bin/raku		Raku (http://raku.org) script
!:mime	text/x-raku
0	string/fwt	#!\ /usr/bin/raku	Raku (http://raku.org) script
!:mime	text/x-raku
d116 1
a116 1
# URL:	https://skarnet.org/software/execline/
a129 3
0	string	#!/nix/store/
>&-11	string/T	x			a %s script text executable

d133 1
a133 1
!:strength + 55
d140 1
a140 1
!:strength + 55
d143 1
a143 1
!:strength + 55
d184 1
a184 1
# URL:	https://packages.debian.org/pdmenu
d190 1
a190 1
>0x04	uleshort	<4	ksh byte-code version %d
d195 3
a197 3
0	string		XPCOM\nTypeLib\r\n\032		XPConnect Typelib
>0x10  byte	   x	   version %d
>>0x11 byte	   x	  \b.%d
d201 1
a201 1
0	string/fwt	#!\ /usr/bin/env\ julia Julia script executable
@


1.1.1.1.2.1
log
@file commands was added on branch jym-xensuspend on 2009-05-13 18:51:55 +0000
@
text
@d1 83
@


1.1.1.1.2.2
log
@Sync with HEAD.

Second commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html
@
text
@a0 83

#------------------------------------------------------------------------------
# commands:  file(1) magic for various shells and interpreters
#
#0	string		:			shell archive or script for antique kernel text
0	string/b	#!\ /bin/sh		POSIX shell script text executable
!:mime	text/x-shellscript
0	string/b	#!\ /bin/csh		C shell script text executable
!:mime	text/x-shellscript
# korn shell magic, sent by George Wu, gwu@@clyde.att.com
0	string/b	#!\ /bin/ksh		Korn shell script text executable
!:mime	text/x-shellscript
0	string/b 	#!\ /bin/tcsh		Tenex C shell script text executable
!:mime	text/x-shellscript
0	string/b 	#!\ /usr/local/tcsh	Tenex C shell script text executable
!:mime	text/x-shellscript
0	string/b	#!\ /usr/local/bin/tcsh	Tenex C shell script text executable
!:mime	text/x-shellscript

#
# zsh/ash/ae/nawk/gawk magic from cameron@@cs.unsw.oz.au (Cameron Simpson)
0	string/b	#!\ /bin/zsh		Paul Falstad's zsh script text executable
!:mime	text/x-shellscript
0	string/b	#!\ /usr/bin/zsh	Paul Falstad's zsh script text executable
!:mime	text/x-shellscript
0	string/b	#!\ /usr/local/bin/zsh	Paul Falstad's zsh script text executable
!:mime	text/x-shellscript
0	string/b	#!\ /usr/local/bin/ash	Neil Brown's ash script text executable
!:mime	text/x-shellscript
0	string/b	#!\ /usr/local/bin/ae	Neil Brown's ae script text executable
!:mime	text/x-shellscript
0	string/b	#!\ /bin/nawk		new awk script text executable
!:mime	text/x-nawk
0	string/b	#!\ /usr/bin/nawk	new awk script text executable
!:mime	text/x-nawk
0	string/b	#!\ /usr/local/bin/nawk	new awk script text executable
!:mime	text/x-nawk
0	string/b	#!\ /bin/gawk		GNU awk script text executable
!:mime	text/x-gawk
0	string/b	#!\ /usr/bin/gawk	GNU awk script text executable
!:mime	text/x-gawk
0	string/b	#!\ /usr/local/bin/gawk	GNU awk script text executable
!:mime	text/x-gawk
#
0	string/b	#!\ /bin/awk		awk script text executable
!:mime	text/x-awk
0	string/b	#!\ /usr/bin/awk	awk script text executable
!:mime	text/x-awk
# update to distinguish from *.vcf files
# this is broken because postscript has /EBEGIN{ for example.
#0	search/Bb	BEGIN {			awk script text

# AT&T Bell Labs' Plan 9 shell
0	string/b	#!\ /bin/rc	Plan 9 rc shell script text executable

# bash shell magic, from Peter Tobias (tobias@@server.et-inf.fho-emden.de)
0	string/b	#!\ /bin/bash	Bourne-Again shell script text executable
!:mime	text/x-shellscript
0	string/b	#!\ /usr/local/bin/bash	Bourne-Again shell script text executable
!:mime	text/x-shellscript

# using env
0	string		#!/usr/bin/env		a
>15	string		>\0			%s script text executable
0	string		#!\ /usr/bin/env	a
>16	string		>\0			%s script text executable

# PHP scripts
# Ulf Harnhammar <ulfh@@update.uu.se>
0	search/1/c	=<?php			PHP script text
!:mime	text/x-php
0	search/1	=<?\n			PHP script text
!:mime	text/x-php
0	search/1	=<?\r			PHP script text
!:mime	text/x-php
0	search/1/b	#!\ /usr/local/bin/php	PHP script text executable
!:mime	text/x-php
0	search/1/b	#!\ /usr/bin/php	PHP script text executable
!:mime	text/x-php

0	string		Zend\x00		PHP script Zend Optimizer data

0	string		$!			DCL command file
@


