Linux web-conference.aiou.edu.pk 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64
Apache/2.4.41 (Ubuntu)
: 172.16.50.247 | : 3.133.137.40
Cant Read [ /etc/named.conf ]
7.4.3-4ubuntu2.28
www-data
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
BLACK DEFEND!
README
+ Create Folder
+ Create File
/
usr /
bin /
[ HOME SHELL ]
Name
Size
Permission
Action
NF
963
B
-rwxr-xr-x
VGAuthService
138.53
KB
-rwxr-xr-x
[
58.34
KB
-rwxr-xr-x
aa-enabled
30.52
KB
-rwxr-xr-x
aa-exec
34.52
KB
-rwxr-xr-x
ab
58.34
KB
-rwxr-xr-x
add-apt-repository
7.24
KB
-rwxr-xr-x
addpart
30.23
KB
-rwxr-xr-x
apport-bug
2.5
KB
-rwxr-xr-x
apport-cli
13.05
KB
-rwxr-xr-x
apport-collect
2.5
KB
-rwxr-xr-x
apport-unpack
2.02
KB
-rwxr-xr-x
apropos
55.21
KB
-rwxr-xr-x
apt
18.38
KB
-rwxr-xr-x
apt-add-repository
7.24
KB
-rwxr-xr-x
apt-cache
86.46
KB
-rwxr-xr-x
apt-cdrom
30.46
KB
-rwxr-xr-x
apt-config
26.38
KB
-rwxr-xr-x
apt-extracttemplates
26.47
KB
-rwxr-xr-x
apt-ftparchive
274.47
KB
-rwxr-xr-x
apt-get
46.46
KB
-rwxr-xr-x
apt-key
27.28
KB
-rwxr-xr-x
apt-mark
62.46
KB
-rwxr-xr-x
apt-sortpkgs
46.39
KB
-rwxr-xr-x
arch
38.37
KB
-rwxr-xr-x
at
54.26
KB
-rwsr-sr-x
atq
54.26
KB
-rwsr-sr-x
atrm
54.26
KB
-rwsr-sr-x
automat-visualize3
402
B
-rwxr-xr-x
awk
686.47
KB
-rwxr-xr-x
b2sum
58.37
KB
-rwxr-xr-x
base32
42.34
KB
-rwxr-xr-x
base64
42.34
KB
-rwxr-xr-x
basename
38.34
KB
-rwxr-xr-x
bash
1.13
MB
-rwxr-xr-x
bashbug
6.63
KB
-rwxr-xr-x
batch
152
B
-rwxr-xr-x
bc
98.7
KB
-rwxr-xr-x
boltctl
150.82
KB
-rwxr-xr-x
bootctl
62.34
KB
-rwxr-xr-x
bsd-from
14.15
KB
-rwxr-xr-x
bsd-write
14.15
KB
-rwxr-sr-x
btrfs
800.09
KB
-rwxr-xr-x
btrfs-convert
455.53
KB
-rwxr-xr-x
btrfs-find-root
423.59
KB
-rwxr-xr-x
btrfs-image
451.53
KB
-rwxr-xr-x
btrfs-map-logical
431.53
KB
-rwxr-xr-x
btrfs-select-super
431.53
KB
-rwxr-xr-x
btrfsck
800.09
KB
-rwxr-xr-x
btrfstune
427.53
KB
-rwxr-xr-x
bunzip2
38.23
KB
-rwxr-xr-x
busctl
86.34
KB
-rwxr-xr-x
busybox
2.07
MB
-rwxr-xr-x
byobu
8.17
KB
-rwxr-xr-x
byobu-config
996
B
-rwxr-xr-x
byobu-ctrl-a
4.66
KB
-rwxr-xr-x
byobu-disable
1.26
KB
-rwxr-xr-x
byobu-disable-prompt
1.31
KB
-rwxr-xr-x
byobu-enable
1.15
KB
-rwxr-xr-x
byobu-enable-prompt
1.42
KB
-rwxr-xr-x
byobu-export
1.32
KB
-rwxr-xr-x
byobu-janitor
6.29
KB
-rwxr-xr-x
byobu-keybindings
1.47
KB
-rwxr-xr-x
byobu-launch
3.25
KB
-rwxr-xr-x
byobu-launcher
1.87
KB
-rwxr-xr-x
byobu-launcher-install
2.4
KB
-rwxr-xr-x
byobu-launcher-uninstall
1.52
KB
-rwxr-xr-x
byobu-layout
3.27
KB
-rwxr-xr-x
byobu-prompt
1.13
KB
-rwxr-xr-x
byobu-quiet
1.38
KB
-rwxr-xr-x
byobu-reconnect-sockets
3.22
KB
-rwxr-xr-x
byobu-screen
8.17
KB
-rwxr-xr-x
byobu-select-backend
1.42
KB
-rwxr-xr-x
byobu-select-profile
5
KB
-rwxr-xr-x
byobu-select-session
1012
B
-rwxr-xr-x
byobu-shell
1.56
KB
-rwxr-xr-x
byobu-silent
1.28
KB
-rwxr-xr-x
byobu-status
5.87
KB
-rwxr-xr-x
byobu-status-detail
1.18
KB
-rwxr-xr-x
byobu-tmux
8.17
KB
-rwxr-xr-x
byobu-ugraph
4.56
KB
-rwxr-xr-x
byobu-ulevel
11.71
KB
-rwxr-xr-x
bzcat
38.23
KB
-rwxr-xr-x
bzcmp
2.17
KB
-rwxr-xr-x
bzdiff
2.17
KB
-rwxr-xr-x
bzegrep
3.69
KB
-rwxr-xr-x
bzexe
4.76
KB
-rwxr-xr-x
bzfgrep
3.69
KB
-rwxr-xr-x
bzgrep
3.69
KB
-rwxr-xr-x
bzip2
38.23
KB
-rwxr-xr-x
bzip2recover
18.15
KB
-rwxr-xr-x
bzless
1.27
KB
-rwxr-xr-x
bzmore
1.27
KB
-rwxr-xr-x
c_rehash
6.65
KB
-rwxr-xr-x
cal
36.95
KB
-rwxr-xr-x
calendar
34.63
KB
-rwxr-xr-x
captoinfo
90.41
KB
-rwxr-xr-x
cat
42.4
KB
-rwxr-xr-x
catchsegv
3.25
KB
-rwxr-xr-x
catman
38.69
KB
-rwxr-xr-x
cautious-launcher
853
B
-rwxr-xr-x
cftp3
380
B
-rwxr-xr-x
chage
82.53
KB
-rwxr-sr-x
chardet3
389
B
-rwxr-xr-x
chardetect3
389
B
-rwxr-xr-x
chattr
14.31
KB
-rwxr-xr-x
chcon
70.34
KB
-rwxr-xr-x
check-language-support
2.71
KB
-rwxr-xr-x
checkgid
14.15
KB
-rwxr-xr-x
chfn
83.07
KB
-rwsr-xr-x
chgrp
70.34
KB
-rwxr-xr-x
chmod
62.37
KB
-rwxr-xr-x
choom
50.23
KB
-rwxr-xr-x
chown
70.34
KB
-rwxr-xr-x
chrt
38.23
KB
-rwxr-xr-x
chsh
51.8
KB
-rwsr-xr-x
chvt
14.07
KB
-rwxr-xr-x
ckbcomp
146.39
KB
-rwxr-xr-x
ckeygen3
386
B
-rwxr-xr-x
cksum
38.34
KB
-rwxr-xr-x
clear
14.31
KB
-rwxr-xr-x
clear_console
14.23
KB
-rwxr-xr-x
cloud-id
396
B
-rwxr-xr-x
cloud-init
400
B
-rwxr-xr-x
cloud-init-per
2.06
KB
-rwxr-xr-x
cmp
50.09
KB
-rwxr-xr-x
codepage
13.99
KB
-rwxr-xr-x
col
18.15
KB
-rwxr-xr-x
col1
963
B
-rwxr-xr-x
col2
963
B
-rwxr-xr-x
col3
963
B
-rwxr-xr-x
col4
963
B
-rwxr-xr-x
col5
963
B
-rwxr-xr-x
col6
963
B
-rwxr-xr-x
col7
963
B
-rwxr-xr-x
col8
963
B
-rwxr-xr-x
col9
963
B
-rwxr-xr-x
colcrt
14.15
KB
-rwxr-xr-x
colrm
14.15
KB
-rwxr-xr-x
column
14.16
KB
-rwxr-xr-x
comm
42.37
KB
-rwxr-xr-x
compose
18.05
KB
-rwxr-xr-x
conch3
382
B
-rwxr-xr-x
corelist
14.73
KB
-rwxr-xr-x
cp
150.37
KB
-rwxr-xr-x
cpan
7.96
KB
-rwxr-xr-x
cpan5.30-x86_64-linux-gnu
7.98
KB
-rwxr-xr-x
cpio
161.63
KB
-rwxr-xr-x
crontab
42.7
KB
-rwxr-sr-x
csplit
54.37
KB
-rwxr-xr-x
ctail
960
B
-rwxr-xr-x
ctstat
30.51
KB
-rwxr-xr-x
curl
234.23
KB
-rwxr-xr-x
cut
46.37
KB
-rwxr-xr-x
cvtsudoers
266.7
KB
-rwxr-xr-x
dash
126.77
KB
-rwxr-xr-x
date
106.37
KB
-rwxr-xr-x
dbus-cleanup-sockets
14.14
KB
-rwxr-xr-x
dbus-daemon
243.2
KB
-rwxr-xr-x
dbus-monitor
30.14
KB
-rwxr-xr-x
dbus-run-session
14.14
KB
-rwxr-xr-x
dbus-send
30.14
KB
-rwxr-xr-x
dbus-update-activation-environ...
14.14
KB
-rwxr-xr-x
dbus-uuidgen
14.14
KB
-rwxr-xr-x
dbxtool
26.3
KB
-rwxr-xr-x
dd
78.38
KB
-rwxr-xr-x
deallocvt
14.07
KB
-rwxr-xr-x
deb-systemd-helper
20.83
KB
-rwxr-xr-x
deb-systemd-invoke
4.33
KB
-rwxr-xr-x
debconf
2.79
KB
-rwxr-xr-x
debconf-apt-progress
11.27
KB
-rwxr-xr-x
debconf-communicate
608
B
-rwxr-xr-x
debconf-copydb
1.68
KB
-rwxr-xr-x
debconf-escape
647
B
-rwxr-xr-x
debconf-set-selections
2.87
KB
-rwxr-xr-x
debconf-show
1.78
KB
-rwxr-xr-x
debian-distro-info
22.89
KB
-rwxr-xr-x
delpart
30.23
KB
-rwxr-xr-x
delv
44.88
KB
-rwxr-xr-x
df
90.95
KB
-rwxr-xr-x
dfu-tool
106.3
KB
-rwxr-xr-x
dh_bash-completion
2.39
KB
-rwxr-xr-x
diff
214.34
KB
-rwxr-xr-x
diff3
66.21
KB
-rwxr-xr-x
dig
146.84
KB
-rwxr-xr-x
dir
138.81
KB
-rwxr-xr-x
dircolors
46.34
KB
-rwxr-xr-x
dirmngr
569.86
KB
-rwxr-xr-x
dirmngr-client
119.06
KB
-rwxr-xr-x
dirname
38.34
KB
-rwxr-xr-x
distro-info
22.89
KB
-rwxr-xr-x
dmesg
82.46
KB
-rwxr-xr-x
dnsdomainname
26.23
KB
-rwxr-xr-x
do-release-upgrade
9.99
KB
-rwxr-xr-x
domainname
26.23
KB
-rwxr-xr-x
dpkg
302.68
KB
-rwxr-xr-x
dpkg-deb
174.54
KB
-rwxr-xr-x
dpkg-divert
150.59
KB
-rwxr-xr-x
dpkg-maintscript-helper
20.03
KB
-rwxr-xr-x
dpkg-query
162.59
KB
-rwxr-xr-x
dpkg-split
122.48
KB
-rwxr-xr-x
dpkg-statoverride
62.27
KB
-rwxr-xr-x
dpkg-trigger
82.49
KB
-rwxr-xr-x
du
106.37
KB
-rwxr-xr-x
dumpkeys
174.52
KB
-rwxr-xr-x
eatmydata
2.74
KB
-rwxr-xr-x
ec2metadata
7.12
KB
-rwxr-xr-x
echo
38.34
KB
-rwxr-xr-x
ed
54.2
KB
-rwxr-xr-x
edit
18.05
KB
-rwxr-xr-x
editor
312.63
KB
-rwxr-xr-x
egrep
28
B
-rwxr-xr-x
eject
34.84
KB
-rwxr-xr-x
enc2xs
41.12
KB
-rwxr-xr-x
encguess
2.99
KB
-rwxr-xr-x
env
42.34
KB
-rwxr-xr-x
envsubst
42.23
KB
-rwxr-xr-x
eqn
201.5
KB
-rwxr-xr-x
ex
2.78
MB
-rwxr-xr-x
expand
42.37
KB
-rwxr-xr-x
expiry
30.58
KB
-rwxr-sr-x
expr
54.34
KB
-rwxr-xr-x
factor
78.37
KB
-rwxr-xr-x
faillog
22.59
KB
-rwxr-xr-x
fallocate
34.23
KB
-rwxr-xr-x
false
38.34
KB
-rwxr-xr-x
fcgistarter
14.15
KB
-rwxr-xr-x
fgconsole
14.07
KB
-rwxr-xr-x
fgrep
28
B
-rwxr-xr-x
file
26.47
KB
-rwxr-xr-x
finalrd
2.1
KB
-rwxr-xr-x
fincore
34.27
KB
-rwxr-xr-x
find
312.66
KB
-rwxr-xr-x
findmnt
71.41
KB
-rwxr-xr-x
flock
34.3
KB
-rwxr-xr-x
fmt
46.34
KB
-rwxr-xr-x
fold
42.34
KB
-rwxr-xr-x
free
26.23
KB
-rwxr-xr-x
from
14.15
KB
-rwxr-xr-x
ftp
106.7
KB
-rwxr-xr-x
funzip
26.15
KB
-rwxr-xr-x
fuser
39.24
KB
-rwxr-xr-x
fusermount
38.23
KB
-rwsr-xr-x
fwupdagent
186.3
KB
-rwxr-xr-x
fwupdate
82.43
KB
-rwxr-xr-x
fwupdmgr
186.3
KB
-rwxr-xr-x
fwupdtool
378.92
KB
-rwxr-xr-x
gapplication
22.38
KB
-rwxr-xr-x
gawk
686.47
KB
-rwxr-xr-x
gdbus
50.38
KB
-rwxr-xr-x
geqn
201.5
KB
-rwxr-xr-x
getconf
34.29
KB
-rwxr-xr-x
getent
38.65
KB
-rwxr-xr-x
getkeycodes
14.07
KB
-rwxr-xr-x
getopt
22.23
KB
-rwxr-xr-x
gettext
42.23
KB
-rwxr-xr-x
gettext.sh
4.52
KB
-rwxr-xr-x
ginstall-info
115.24
KB
-rwxr-xr-x
gio
90.4
KB
-rwxr-xr-x
gio-querymodules
14.3
KB
-rwxr-xr-x
git
2.98
MB
-rwxr-xr-x
git-receive-pack
2.98
MB
-rwxr-xr-x
git-shell
1.71
MB
-rwxr-xr-x
git-upload-archive
2.98
MB
-rwxr-xr-x
git-upload-pack
2.98
MB
-rwxr-xr-x
glib-compile-schemas
50.38
KB
-rwxr-xr-x
gpasswd
86.39
KB
-rwsr-xr-x
gpg
1.02
MB
-rwxr-xr-x
gpg-agent
409.04
KB
-rwxr-xr-x
gpg-connect-agent
163.16
KB
-rwxr-xr-x
gpg-wks-server
203.2
KB
-rwxr-xr-x
gpg-zip
3.43
KB
-rwxr-xr-x
gpgcompose
874.29
KB
-rwxr-xr-x
gpgconf
174.66
KB
-rwxr-xr-x
gpgparsemail
34.38
KB
-rwxr-xr-x
gpgsm
507.24
KB
-rwxr-xr-x
gpgsplit
86.76
KB
-rwxr-xr-x
gpgtar
151.63
KB
-rwxr-xr-x
gpgv
447.15
KB
-rwxr-xr-x
gpic
216.34
KB
-rwxr-xr-x
grep
194.47
KB
-rwxr-xr-x
gresource
22.3
KB
-rwxr-xr-x
groff
121.53
KB
-rwxr-xr-x
grog
2.71
KB
-rwxr-xr-x
grops
181.94
KB
-rwxr-xr-x
grotty
129.56
KB
-rwxr-xr-x
groups
38.34
KB
-rwxr-xr-x
growpart
23.95
KB
-rwxr-xr-x
grub-editenv
248.02
KB
-rwxr-xr-x
grub-file
780.38
KB
-rwxr-xr-x
grub-fstest
901.84
KB
-rwxr-xr-x
grub-glue-efi
243.86
KB
-rwxr-xr-x
grub-kbdcomp
1.64
KB
-rwxr-xr-x
grub-menulst2cfg
228.13
KB
-rwxr-xr-x
grub-mkfont
268.42
KB
-rwxr-xr-x
grub-mkimage
348.95
KB
-rwxr-xr-x
grub-mklayout
252.17
KB
-rwxr-xr-x
grub-mknetdir
401.56
KB
-rwxr-xr-x
grub-mkpasswd-pbkdf2
248.2
KB
-rwxr-xr-x
grub-mkrelpath
239.58
KB
-rwxr-xr-x
grub-mkrescue
954.3
KB
-rwxr-xr-x
grub-mkstandalone
477.86
KB
-rwxr-xr-x
grub-mount
728.8
KB
-rwxr-xr-x
grub-ntldr-img
38.24
KB
-rwxr-xr-x
grub-render-label
800.75
KB
-rwxr-xr-x
grub-script-check
271.7
KB
-rwxr-xr-x
grub-syslinux2cfg
741.27
KB
-rwxr-xr-x
gsettings
30.38
KB
-rwxr-xr-x
gtbl
138.51
KB
-rwxr-xr-x
gunzip
2.29
KB
-rwxr-xr-x
gzexe
6.3
KB
-rwxr-xr-x
gzip
95.21
KB
-rwxr-xr-x
h2ph
28.54
KB
-rwxr-xr-x
h2xs
59.44
KB
-rwxr-xr-x
hd
34.25
KB
-rwxr-xr-x
head
46.37
KB
-rwxr-xr-x
helpztags
2.46
KB
-rwxr-xr-x
hexdump
34.25
KB
-rwxr-xr-x
host
118.78
KB
-rwxr-xr-x
hostid
38.34
KB
-rwxr-xr-x
hostname
26.23
KB
-rwxr-xr-x
hostnamectl
26.22
KB
-rwxr-xr-x
htcacheclean
38.16
KB
-rwxr-xr-x
htdbm
26.15
KB
-rwxr-xr-x
htdigest
14.15
KB
-rwxr-xr-x
htop
184.87
KB
-rwxr-xr-x
htpasswd
26.15
KB
-rwxr-xr-x
hwe-support-status
10.58
KB
-rwxr-xr-x
i386
26.5
KB
-rwxr-xr-x
ibd2sdi
6.48
MB
-rwxr-xr-x
iconv
66.41
KB
-rwxr-xr-x
id
46.37
KB
-rwxr-xr-x
info
309.74
KB
-rwxr-xr-x
infobrowser
309.74
KB
-rwxr-xr-x
infocmp
62.38
KB
-rwxr-xr-x
infotocap
90.41
KB
-rwxr-xr-x
innochecksum
6.37
MB
-rwxr-xr-x
install
154.41
KB
-rwxr-xr-x
install-info
115.24
KB
-rwxr-xr-x
instmodsh
4.27
KB
-rwxr-xr-x
ionice
30.23
KB
-rwxr-xr-x
ip
597.62
KB
-rwxr-xr-x
ipcmk
34.3
KB
-rwxr-xr-x
ipcrm
34.23
KB
-rwxr-xr-x
ipcs
66.23
KB
-rwxr-xr-x
iptables-xml
96.97
KB
-rwxr-xr-x
ischroot
14.2
KB
-rwxr-xr-x
iscsiadm
394.1
KB
-rwxr-xr-x
join
54.37
KB
-rwxr-xr-x
journalctl
78.24
KB
-rwxr-xr-x
json_pp
4.56
KB
-rwxr-xr-x
jsondiff
1004
B
-rwxr-xr-x
jsonpatch
3.58
KB
-rwxr-xr-x
jsonpatch-jsondiff
1004
B
-rwxr-xr-x
jsonpointer
1.79
KB
-rwxr-xr-x
jsonschema
397
B
-rwxr-xr-x
kbd_mode
14.07
KB
-rwxr-xr-x
kbdinfo
14.07
KB
-rwxr-xr-x
kbxutil
174.97
KB
-rwxr-xr-x
keep-one-running
3.51
KB
-rwxr-xr-x
kernel-install
5.07
KB
-rwxr-xr-x
keyctl
42.38
KB
-rwxr-xr-x
keyring
385
B
-rwxr-xr-x
kill
30.23
KB
-rwxr-xr-x
killall
31.27
KB
-rwxr-xr-x
kmod
170.34
KB
-rwxr-xr-x
kmodsign
22.29
KB
-rwxr-xr-x
landscape-sysinfo
624
B
-rwxr-xr-x
last
50.23
KB
-rwxr-xr-x
lastb
50.23
KB
-rwxr-xr-x
lastlog
31.66
KB
-rwxr-xr-x
lcf
7.6
KB
-rwxr-xr-x
ldd
5.3
KB
-rwxr-xr-x
less
175.84
KB
-rwxr-xr-x
lessecho
14.31
KB
-rwxr-xr-x
lessfile
8.36
KB
-rwxr-xr-x
lesskey
23.72
KB
-rwxr-xr-x
lesspipe
8.36
KB
-rwxr-xr-x
lexgrog
98.95
KB
-rwxr-xr-x
libnetcfg
15.41
KB
-rwxr-xr-x
link
38.34
KB
-rwxr-xr-x
linux-boot-prober
1.54
KB
-rwxr-xr-x
linux-check-removal
3.99
KB
-rwxr-xr-x
linux-update-symlinks
6.17
KB
-rwxr-xr-x
linux-version
2.63
KB
-rwxr-xr-x
linux32
26.5
KB
-rwxr-xr-x
linux64
26.5
KB
-rwxr-xr-x
ln
74.38
KB
-rwxr-xr-x
lnstat
30.51
KB
-rwxr-xr-x
loadkeys
210.57
KB
-rwxr-xr-x
loadunimap
34.13
KB
-rwxr-xr-x
locale
57.56
KB
-rwxr-xr-x
locale-check
14.16
KB
-rwxr-xr-x
localectl
26.22
KB
-rwxr-xr-x
localedef
326.96
KB
-rwxr-xr-x
logger
50.82
KB
-rwxr-xr-x
login
55.77
KB
-rwxr-xr-x
loginctl
58.34
KB
-rwxr-xr-x
logname
38.34
KB
-rwxr-xr-x
logresolve
14.16
KB
-rwxr-xr-x
look
14.38
KB
-rwxr-xr-x
lorder
2.82
KB
-rwxr-xr-x
lowntfs-3g
118.86
KB
-rwxr-xr-x
ls
138.81
KB
-rwxr-xr-x
lsattr
14.31
KB
-rwxr-xr-x
lsb_release
3.55
KB
-rwxr-xr-x
lsblk
130.23
KB
-rwxr-xr-x
lscpu
98.23
KB
-rwxr-xr-x
lshw
841.2
KB
-rwxr-xr-x
lsinitramfs
706
B
-rwxr-xr-x
lsipc
94.23
KB
-rwxr-xr-x
lslocks
38.55
KB
-rwxr-xr-x
lslogins
66.23
KB
-rwxr-xr-x
lsmem
66.23
KB
-rwxr-xr-x
lsmod
170.34
KB
-rwxr-xr-x
lsns
50.23
KB
-rwxr-xr-x
lsof
171.63
KB
-rwxr-xr-x
lspci
91.95
KB
-rwxr-xr-x
lspgpot
1.06
KB
-rwxr-xr-x
lsusb
242.51
KB
-rwxr-xr-x
ltrace
301.33
KB
-rwxr-xr-x
lz4
186.23
KB
-rwxr-xr-x
lz4c
186.23
KB
-rwxr-xr-x
lz4cat
186.23
KB
-rwxr-xr-x
lzcat
78.5
KB
-rwxr-xr-x
lzcmp
6.48
KB
-rwxr-xr-x
lzdiff
6.48
KB
-rwxr-xr-x
lzegrep
5.76
KB
-rwxr-xr-x
lzfgrep
5.76
KB
-rwxr-xr-x
lzgrep
5.76
KB
-rwxr-xr-x
lzless
1.76
KB
-rwxr-xr-x
lzma
78.5
KB
-rwxr-xr-x
lzmainfo
14.23
KB
-rwxr-xr-x
lzmore
2.11
KB
-rwxr-xr-x
mailmail3
388
B
-rwxr-xr-x
man
116.83
KB
-rwxr-xr-x
man-recode
26.9
KB
-rwxr-xr-x
mandb
139.09
KB
-rwxr-xr-x
manifest
1.9
KB
-rwxr-xr-x
manpath
38.7
KB
-rwxr-xr-x
mapscrn
26.13
KB
-rwxr-xr-x
mawk
158.74
KB
-rwxr-xr-x
mcookie
34.3
KB
-rwxr-xr-x
md5sum
46.37
KB
-rwxr-xr-x
md5sum.textutils
46.37
KB
-rwxr-xr-x
mdig
50.4
KB
-rwxr-xr-x
mesg
14.23
KB
-rwxr-xr-x
migrate-pubring-from-classic-g...
2.99
KB
-rwxr-xr-x
miniterm
34.28
KB
-rwxr-xr-x
mk_modmap
15.78
KB
-rwxr-xr-x
mkdir
86.34
KB
-rwxr-xr-x
mkfifo
66.34
KB
-rwxr-xr-x
mknod
70.34
KB
-rwxr-xr-x
mksquashfs
205.96
KB
-rwxr-xr-x
mktemp
46.34
KB
-rwxr-xr-x
mmcli
257.27
KB
-rwxr-xr-x
more
42.15
KB
-rwxr-xr-x
mount
54.23
KB
-rwsr-xr-x
mountpoint
14.23
KB
-rwxr-xr-x
mt
86.78
KB
-rwxr-xr-x
mt-gnu
86.78
KB
-rwxr-xr-x
mtr
80.25
KB
-rwxr-xr-x
mtr-packet
38.38
KB
-rwxr-xr-x
mv
146.38
KB
-rwxr-xr-x
my_print_defaults
6.29
MB
-rwxr-xr-x
myisam_ftdump
6.58
MB
-rwxr-xr-x
myisamchk
6.69
MB
-rwxr-xr-x
myisamlog
6.53
MB
-rwxr-xr-x
myisampack
6.6
MB
-rwxr-xr-x
mysql
7.33
MB
-rwxr-xr-x
mysql_config_editor
6.31
MB
-rwxr-xr-x
mysql_migrate_keyring
7.24
MB
-rwxr-xr-x
mysql_secure_installation
7.16
MB
-rwxr-xr-x
mysql_ssl_rsa_setup
6.33
MB
-rwxr-xr-x
mysql_tzinfo_to_sql
6.23
MB
-rwxr-xr-x
mysql_upgrade
7.26
MB
-rwxr-xr-x
mysqladmin
7.17
MB
-rwxr-xr-x
mysqlanalyze
7.18
MB
-rwxr-xr-x
mysqlbinlog
7.62
MB
-rwxr-xr-x
mysqlcheck
7.18
MB
-rwxr-xr-x
mysqld_multi
26.73
KB
-rwxr-xr-x
mysqld_safe
28.45
KB
-rwxr-xr-x
mysqldump
7.25
MB
-rwxr-xr-x
mysqldumpslow
7.54
KB
-rwxr-xr-x
mysqlimport
7.17
MB
-rwxr-xr-x
mysqloptimize
7.18
MB
-rwxr-xr-x
mysqlpump
7.6
MB
-rwxr-xr-x
mysqlrepair
7.18
MB
-rwxr-xr-x
mysqlreport
38.1
KB
-rwxr-xr-x
mysqlshow
7.17
MB
-rwxr-xr-x
mysqlslap
7.18
MB
-rwxr-xr-x
namei
34.23
KB
-rwxr-xr-x
nano
312.63
KB
-rwxr-xr-x
nawk
686.47
KB
-rwxr-xr-x
nc
42.64
KB
-rwxr-xr-x
nc.openbsd
42.64
KB
-rwxr-xr-x
ncal
36.95
KB
-rwxr-xr-x
neqn
913
B
-rwxr-xr-x
netcat
42.64
KB
-rwxr-xr-x
netkit-ftp
106.7
KB
-rwxr-xr-x
netstat
154.58
KB
-rwxr-xr-x
networkctl
74.23
KB
-rwxr-xr-x
networkd-dispatcher
19.71
KB
-rwxr-xr-x
newgrp
43.73
KB
-rwsr-xr-x
ngettext
42.23
KB
-rwxr-xr-x
nice
42.34
KB
-rwxr-xr-x
nisdomainname
26.23
KB
-rwxr-xr-x
nl
42.43
KB
-rwxr-xr-x
nohup
42.34
KB
-rwxr-xr-x
nproc
42.34
KB
-rwxr-xr-x
nroff
3.22
KB
-rwxr-xr-x
nsenter
34.43
KB
-rwxr-xr-x
nslookup
122.81
KB
-rwxr-xr-x
nstat
78.23
KB
-rwxr-xr-x
nsupdate
78.63
KB
-rwxr-xr-x
ntfs-3g
158.89
KB
-rwxr-xr-x
ntfs-3g.probe
14.23
KB
-rwxr-xr-x
ntfscat
34.26
KB
-rwxr-xr-x
ntfscluster
38.26
KB
-rwxr-xr-x
ntfscmp
38.26
KB
-rwxr-xr-x
ntfsdecrypt
50.27
KB
-rwxr-xr-x
ntfsfallocate
38.27
KB
-rwxr-xr-x
ntfsfix
46.27
KB
-rwxr-xr-x
ntfsinfo
58.27
KB
-rwxr-xr-x
ntfsls
35.34
KB
-rwxr-xr-x
ntfsmove
38.26
KB
-rwxr-xr-x
ntfsrecover
118.26
KB
-rwxr-xr-x
ntfssecaudit
94.75
KB
-rwxr-xr-x
ntfstruncate
42.19
KB
-rwxr-xr-x
ntfsusermap
38.18
KB
-rwxr-xr-x
ntfswipe
54.79
KB
-rwxr-xr-x
numfmt
66.4
KB
-rwxr-xr-x
od
70.37
KB
-rwxr-xr-x
oem-getlogs
8.37
KB
-rwxr-xr-x
on_ac_power
2.18
KB
-rwxr-xr-x
openssl
735.68
KB
-rwxr-xr-x
openvt
22.43
KB
-rwxr-xr-x
os-prober
4.44
KB
-rwxr-xr-x
pager
175.84
KB
-rwxr-xr-x
partx
118.23
KB
-rwxr-xr-x
passwd
66.61
KB
-rwsr-xr-x
paste
42.37
KB
-rwxr-xr-x
pastebinit
16.13
KB
-rwxr-xr-x
patch
190.52
KB
-rwxr-xr-x
pathchk
38.34
KB
-rwxr-xr-x
pbget
2.51
KB
-rwxr-xr-x
pbput
2.51
KB
-rwxr-xr-x
pbputs
2.51
KB
-rwxr-xr-x
pdb3
61.27
KB
-rwxr-xr-x
pdb3.8
61.27
KB
-rwxr-xr-x
peekfd
14.15
KB
-rwxr-xr-x
perl
3.32
MB
-rwxr-xr-x
perl5.30-x86_64-linux-gnu
14.3
KB
-rwxr-xr-x
perl5.30.0
3.32
MB
-rwxr-xr-x
perlbug
45.28
KB
-rwxr-xr-x
perldoc
125
B
-rwxr-xr-x
perlivp
10.61
KB
-rwxr-xr-x
perlthanks
45.28
KB
-rwxr-xr-x
perror
7.62
MB
-rwxr-xr-x
pftp
106.7
KB
-rwxr-xr-x
pgrep
30.24
KB
-rwxr-xr-x
phar
14.54
KB
-rwxr-xr-x
phar.phar
14.54
KB
-rwxr-xr-x
phar.phar7.4
14.54
KB
-rwxr-xr-x
phar7.4
14.54
KB
-rwxr-xr-x
php
4.56
MB
-rwxr-xr-x
php7.4
4.56
MB
-rwxr-xr-x
pic
216.34
KB
-rwxr-xr-x
pico
312.63
KB
-rwxr-xr-x
piconv
8.16
KB
-rwxr-xr-x
pidof
26.38
KB
-rwxr-xr-x
pinentry
66.64
KB
-rwxr-xr-x
pinentry-curses
66.64
KB
-rwxr-xr-x
ping
71.07
KB
-rwxr-xr-x
ping4
71.07
KB
-rwxr-xr-x
ping6
71.07
KB
-rwxr-xr-x
pinky
42.37
KB
-rwxr-xr-x
pkaction
18.3
KB
-rwxr-xr-x
pkcheck
22.38
KB
-rwxr-xr-x
pkcon
74.3
KB
-rwxr-xr-x
pkexec
30.3
KB
-rwsr-xr-x
pkill
30.24
KB
-rwxr-xr-x
pkmon
22.3
KB
-rwxr-xr-x
pkttyagent
18.3
KB
-rwxr-xr-x
pl2pm
4.43
KB
-rwxr-xr-x
pldd
22.37
KB
-rwxr-xr-x
plymouth
50.15
KB
-rwxr-xr-x
pmap
34.24
KB
-rwxr-xr-x
pod2html
4.04
KB
-rwxr-xr-x
pod2man
14.68
KB
-rwxr-xr-x
pod2text
10.55
KB
-rwxr-xr-x
pod2usage
3.86
KB
-rwxr-xr-x
podchecker
3.57
KB
-rwxr-xr-x
podselect
2.47
KB
-rwxr-xr-x
pollinate
8.54
KB
-rwxr-xr-x
pr
74.43
KB
-rwxr-xr-x
preconv
66.51
KB
-rwxr-xr-x
print
18.05
KB
-rwxr-xr-x
printenv
38.34
KB
-rwxr-xr-x
printerbanner
22.15
KB
-rwxr-xr-x
printf
58.34
KB
-rwxr-xr-x
prlimit
38.74
KB
-rwxr-xr-x
prove
13.33
KB
-rwxr-xr-x
prtstat
22.23
KB
-rwxr-xr-x
ps
134.46
KB
-rwxr-xr-x
psfaddtable
21.99
KB
-rwxr-xr-x
psfgettable
21.99
KB
-rwxr-xr-x
psfstriptable
21.99
KB
-rwxr-xr-x
psfxtable
21.99
KB
-rwxr-xr-x
pslog
14.15
KB
-rwxr-xr-x
pstree
35.16
KB
-rwxr-xr-x
pstree.x11
35.16
KB
-rwxr-xr-x
ptar
3.47
KB
-rwxr-xr-x
ptardiff
2.57
KB
-rwxr-xr-x
ptargrep
4.29
KB
-rwxr-xr-x
ptx
78.4
KB
-rwxr-xr-x
purge-old-kernels
1.12
KB
-rwxr-xr-x
pwd
42.34
KB
-rwxr-xr-x
pwdx
14.23
KB
-rwxr-xr-x
py3clean
7.63
KB
-rwxr-xr-x
py3compile
11.84
KB
-rwxr-xr-x
py3versions
11.44
KB
-rwxr-xr-x
pydoc3
79
B
-rwxr-xr-x
pydoc3.8
79
B
-rwxr-xr-x
pygettext3
21.03
KB
-rwxr-xr-x
pygettext3.8
21.03
KB
-rwxr-xr-x
pyhtmlizer3
392
B
-rwxr-xr-x
pyjwt3
372
B
-rwxr-xr-x
python3
5.24
MB
-rwxr-xr-x
python3.8
5.24
MB
-rwxr-xr-x
rbash
1.13
MB
-rwxr-xr-x
rcp
114.3
KB
-rwxr-xr-x
rdma
130.23
KB
-rwxr-xr-x
readlink
50.34
KB
-rwxr-xr-x
realpath
50.37
KB
-rwxr-xr-x
red
89
B
-rwxr-xr-x
rename.ul
22.23
KB
-rwxr-xr-x
renice
14.23
KB
-rwxr-xr-x
rescan-scsi-bus.sh
38.15
KB
-rwxr-xr-x
reset
30.31
KB
-rwxr-xr-x
resizecons
22.13
KB
-rwxr-xr-x
resizepart
62.23
KB
-rwxr-xr-x
resolvectl
126.38
KB
-rwxr-xr-x
rev
14.23
KB
-rwxr-xr-x
rgrep
30
B
-rwxr-xr-x
rlogin
774.95
KB
-rwxr-xr-x
rm
70.37
KB
-rwxr-xr-x
rmdir
46.34
KB
-rwxr-xr-x
rnano
312.63
KB
-rwxr-xr-x
rotatelogs
26.23
KB
-rwxr-xr-x
routef
208
B
-rwxr-xr-x
routel
1.62
KB
-rwxr-xr-x
rpcinfo
34.46
KB
-rwxr-xr-x
rrsync
7.07
KB
-rwxr-xr-x
rsh
774.95
KB
-rwxr-xr-x
rsync
500.77
KB
-rwxr-xr-x
rtstat
30.51
KB
-rwxr-xr-x
run-mailcap
18.05
KB
-rwxr-xr-x
run-one
3.51
KB
-rwxr-xr-x
run-one-constantly
3.51
KB
-rwxr-xr-x
run-one-until-failure
3.51
KB
-rwxr-xr-x
run-one-until-success
3.51
KB
-rwxr-xr-x
run-parts
26.51
KB
-rwxr-xr-x
run-this-one
3.51
KB
-rwxr-xr-x
runcon
38.34
KB
-rwxr-xr-x
rview
2.78
MB
-rwxr-xr-x
rvim
2.78
MB
-rwxr-xr-x
savelog
10.24
KB
-rwxr-xr-x
sbattach
58.48
KB
-rwxr-xr-x
sbkeysync
66.7
KB
-rwxr-xr-x
sbsiglist
58.55
KB
-rwxr-xr-x
sbsign
58.55
KB
-rwxr-xr-x
sbvarsign
66.61
KB
-rwxr-xr-x
sbverify
62.48
KB
-rwxr-xr-x
scp
114.3
KB
-rwxr-xr-x
screen
463.16
KB
-rwxr-xr-x
screendump
13.99
KB
-rwxr-xr-x
script
54.23
KB
-rwxr-xr-x
scriptreplay
30.23
KB
-rwxr-xr-x
scsi_logging_level
8.38
KB
-rwxr-xr-x
scsi_mandat
3.52
KB
-rwxr-xr-x
scsi_readcap
1.3
KB
-rwxr-xr-x
scsi_ready
1.09
KB
-rwxr-xr-x
scsi_satl
3.77
KB
-rwxr-xr-x
scsi_start
1.25
KB
-rwxr-xr-x
scsi_stop
1.44
KB
-rwxr-xr-x
scsi_temperature
936
B
-rwxr-xr-x
sdiff
50.09
KB
-rwxr-xr-x
sed
118.45
KB
-rwxr-xr-x
see
18.05
KB
-rwxr-xr-x
select-editor
2.38
KB
-rwxr-xr-x
sensible-browser
1.2
KB
-rwxr-xr-x
sensible-editor
1.14
KB
-rwxr-xr-x
sensible-pager
452
B
-rwxr-xr-x
seq
50.34
KB
-rwxr-xr-x
setarch
26.5
KB
-rwxr-xr-x
setfont
46.13
KB
-rwxr-xr-x
setkeycodes
14.07
KB
-rwxr-xr-x
setleds
14.05
KB
-rwxr-xr-x
setlogcons
14.07
KB
-rwxr-xr-x
setmetamode
14.1
KB
-rwxr-xr-x
setpci
30.23
KB
-rwxr-xr-x
setpriv
46.23
KB
-rwxr-xr-x
setsid
14.23
KB
-rwxr-xr-x
setterm
46.23
KB
-rwxr-xr-x
setupcon
38.31
KB
-rwxr-xr-x
sftp
166.51
KB
-rwxr-xr-x
sg
43.73
KB
-rwsr-xr-x
sg_bg_ctl
14.35
KB
-rwxr-xr-x
sg_compare_and_write
22.76
KB
-rwxr-xr-x
sg_copy_results
23.15
KB
-rwxr-xr-x
sg_dd
50.17
KB
-rwxr-xr-x
sg_decode_sense
22.6
KB
-rwxr-xr-x
sg_emc_trespass
14.15
KB
-rwxr-xr-x
sg_format
35.13
KB
-rwxr-xr-x
sg_get_config
35.24
KB
-rwxr-xr-x
sg_get_lba_status
18.73
KB
-rwxr-xr-x
sg_ident
14.45
KB
-rwxr-xr-x
sg_inq
123.49
KB
-rwxr-xr-x
sg_logs
150.87
KB
-rwxr-xr-x
sg_luns
22.63
KB
-rwxr-xr-x
sg_map
18.15
KB
-rwxr-xr-x
sg_map26
26.55
KB
-rwxr-xr-x
sg_modes
45.62
KB
-rwxr-xr-x
sg_opcodes
34.85
KB
-rwxr-xr-x
sg_persist
35.93
KB
-rwxr-xr-x
sg_prevent
14.35
KB
-rwxr-xr-x
sg_raw
30.66
KB
-rwxr-xr-x
sg_rbuf
22.57
KB
-rwxr-xr-x
sg_rdac
18.16
KB
-rwxr-xr-x
sg_read
26.16
KB
-rwxr-xr-x
sg_read_attr
36.48
KB
-rwxr-xr-x
sg_read_block_limits
14.38
KB
-rwxr-xr-x
sg_read_buffer
26.82
KB
-rwxr-xr-x
sg_read_long
14.54
KB
-rwxr-xr-x
sg_readcap
22.63
KB
-rwxr-xr-x
sg_reassign
14.51
KB
-rwxr-xr-x
sg_referrals
14.51
KB
-rwxr-xr-x
sg_rep_zones
26.59
KB
-rwxr-xr-x
sg_requests
14.57
KB
-rwxr-xr-x
sg_reset
14.51
KB
-rwxr-xr-x
sg_reset_wp
14.45
KB
-rwxr-xr-x
sg_rmsn
14.35
KB
-rwxr-xr-x
sg_rtpg
14.45
KB
-rwxr-xr-x
sg_safte
22.54
KB
-rwxr-xr-x
sg_sanitize
26.85
KB
-rwxr-xr-x
sg_sat_identify
22.57
KB
-rwxr-xr-x
sg_sat_phy_event
18.85
KB
-rwxr-xr-x
sg_sat_read_gplog
18.57
KB
-rwxr-xr-x
sg_sat_set_features
18.54
KB
-rwxr-xr-x
sg_scan
18.16
KB
-rwxr-xr-x
sg_seek
18.73
KB
-rwxr-xr-x
sg_senddiag
27.04
KB
-rwxr-xr-x
sg_ses
119.77
KB
-rwxr-xr-x
sg_ses_microcode
31.23
KB
-rwxr-xr-x
sg_start
18.7
KB
-rwxr-xr-x
sg_stpg
22.57
KB
-rwxr-xr-x
sg_stream_ctl
22.54
KB
-rwxr-xr-x
sg_sync
14.51
KB
-rwxr-xr-x
sg_test_rwbuf
14.45
KB
-rwxr-xr-x
sg_timestamp
18.68
KB
-rwxr-xr-x
sg_turs
14.51
KB
-rwxr-xr-x
sg_unmap
22.6
KB
-rwxr-xr-x
sg_verify
18.73
KB
-rwxr-xr-x
sg_vpd
114.18
KB
-rwxr-xr-x
sg_wr_mode
22.57
KB
-rwxr-xr-x
sg_write_buffer
27.1
KB
-rwxr-xr-x
sg_write_long
14.6
KB
-rwxr-xr-x
sg_write_same
26.76
KB
-rwxr-xr-x
sg_write_verify
22.63
KB
-rwxr-xr-x
sg_write_x
55.45
KB
-rwxr-xr-x
sg_xcopy
42.16
KB
-rwxr-xr-x
sg_zone
14.65
KB
-rwxr-xr-x
sginfo
71.85
KB
-rwxr-xr-x
sgm_dd
34.16
KB
-rwxr-xr-x
sgp_dd
42.16
KB
-rwxr-xr-x
sh
126.77
KB
-rwxr-xr-x
sha1sum
50.37
KB
-rwxr-xr-x
sha224sum
58.37
KB
-rwxr-xr-x
sha256sum
58.37
KB
-rwxr-xr-x
sha384sum
66.37
KB
-rwxr-xr-x
sha512sum
66.37
KB
-rwxr-xr-x
shasum
9.74
KB
-rwxr-xr-x
showconsolefont
18.07
KB
-rwxr-xr-x
showkey
18.07
KB
-rwxr-xr-x
shred
62.37
KB
-rwxr-xr-x
shuf
58.34
KB
-rwxr-xr-x
skill
30.23
KB
-rwxr-xr-x
slabtop
22.23
KB
-rwxr-xr-x
sleep
38.34
KB
-rwxr-xr-x
slogin
774.95
KB
-rwxr-xr-x
snap
16.3
MB
-rwxr-xr-x
snapctl
6.26
MB
-rwxr-xr-x
snapfuse
46.29
KB
-rwxr-xr-x
snice
30.23
KB
-rwxr-xr-x
soelim
46.51
KB
-rwxr-xr-x
sort
114.63
KB
-rwxr-xr-x
sos
596
B
-rwxr-xr-x
sos-collector
1.04
KB
-rwxr-xr-x
sosreport
1.03
KB
-rwxr-xr-x
splain
18.7
KB
-rwxr-xr-x
split
58.77
KB
-rwxr-xr-x
splitfont
13.99
KB
-rwxr-xr-x
ss
164.84
KB
-rwxr-xr-x
ssh
774.95
KB
-rwxr-xr-x
ssh-add
362.28
KB
-rwxr-xr-x
ssh-agent
342.29
KB
-rwxr-sr-x
ssh-argv0
1.42
KB
-rwxr-xr-x
ssh-copy-id
10.41
KB
-rwxr-xr-x
ssh-import-id
409
B
-rwxr-xr-x
ssh-import-id-gh
785
B
-rwxr-xr-x
ssh-import-id-lp
785
B
-rwxr-xr-x
ssh-keygen
466.3
KB
-rwxr-xr-x
ssh-keyscan
454.3
KB
-rwxr-xr-x
stat
86.37
KB
-rwxr-xr-x
static-sh
2.07
MB
-rwxr-xr-x
stdbuf
50.34
KB
-rwxr-xr-x
strace
1.51
MB
-rwxr-xr-x
strace-log-merge
1.78
KB
-rwxr-xr-x
stty
82.37
KB
-rwxr-xr-x
su
66.23
KB
-rwsr-xr-x
sudo
162.16
KB
-rwsr-xr-x
sudoedit
162.16
KB
-rwsr-xr-x
sudoreplay
63
KB
-rwxr-xr-x
sum
46.34
KB
-rwxr-xr-x
symcryptrun
123.03
KB
-rwxr-xr-x
sync
38.34
KB
-rwxr-xr-x
systemctl
973.23
KB
-rwxr-xr-x
systemd
1.55
MB
-rwxr-xr-x
systemd-analyze
1.51
MB
-rwxr-xr-x
systemd-ask-password
14.34
KB
-rwxr-xr-x
systemd-cat
18.23
KB
-rwxr-xr-x
systemd-cgls
22.33
KB
-rwxr-xr-x
systemd-cgtop
38.24
KB
-rwxr-xr-x
systemd-delta
26.22
KB
-rwxr-xr-x
systemd-detect-virt
18.22
KB
-rwxr-xr-x
systemd-escape
22.22
KB
-rwxr-xr-x
systemd-hwdb
106.52
KB
-rwxr-xr-x
systemd-id128
22.22
KB
-rwxr-xr-x
systemd-inhibit
22.24
KB
-rwxr-xr-x
systemd-machine-id-setup
26.32
KB
-rwxr-xr-x
systemd-mount
50.45
KB
-rwxr-xr-x
systemd-notify
18.23
KB
-rwxr-xr-x
systemd-path
18.22
KB
-rwxr-xr-x
systemd-resolve
126.38
KB
-rwxr-xr-x
systemd-run
58.42
KB
-rwxr-xr-x
systemd-socket-activate
26.22
KB
-rwxr-xr-x
systemd-stdio-bridge
22.23
KB
-rwxr-xr-x
systemd-sysusers
54.52
KB
-rwxr-xr-x
systemd-tmpfiles
86.41
KB
-rwxr-xr-x
systemd-tty-ask-password-agent
30.22
KB
-rwxr-xr-x
systemd-umount
50.45
KB
-rwxr-xr-x
tabs
18.3
KB
-rwxr-xr-x
tac
42.34
KB
-rwxr-xr-x
tail
70.4
KB
-rwxr-xr-x
tar
437.61
KB
-rwxr-xr-x
taskset
34.23
KB
-rwxr-xr-x
tbl
138.51
KB
-rwxr-xr-x
tee
42.37
KB
-rwxr-xr-x
telnet
112.67
KB
-rwxr-xr-x
telnet.netkit
112.67
KB
-rwxr-xr-x
tempfile
14.02
KB
-rwxr-xr-x
test
54.34
KB
-rwxr-xr-x
tic
90.41
KB
-rwxr-xr-x
time
14.38
KB
-rwxr-xr-x
timedatectl
46.22
KB
-rwxr-xr-x
timeout
42.77
KB
-rwxr-xr-x
tkconch3
386
B
-rwxr-xr-x
tload
22.24
KB
-rwxr-xr-x
tmux
675.97
KB
-rwxr-xr-x
toe
22.3
KB
-rwxr-xr-x
top
126.05
KB
-rwxr-xr-x
touch
98.37
KB
-rwxr-xr-x
tput
26.34
KB
-rwxr-xr-x
tr
50.34
KB
-rwxr-xr-x
tracepath
18.15
KB
-rwxr-xr-x
traceroute6
26.15
KB
-rwxr-xr-x
traceroute6.iputils
26.15
KB
-rwxr-xr-x
trial3
382
B
-rwxr-xr-x
troff
735.91
KB
-rwxr-xr-x
true
38.34
KB
-rwxr-xr-x
truncate
42.34
KB
-rwxr-xr-x
tset
30.31
KB
-rwxr-xr-x
tsort
42.34
KB
-rwxr-xr-x
tty
38.34
KB
-rwxr-xr-x
twist3
382
B
-rwxr-xr-x
twistd3
384
B
-rwxr-xr-x
tzselect
15.02
KB
-rwxr-xr-x
ua
445
B
-rwxr-xr-x
ubuntu-advantage
445
B
-rwxr-xr-x
ubuntu-bug
2.5
KB
-rwxr-xr-x
ubuntu-core-launcher
151.45
KB
-rwsr-xr-x
ubuntu-distro-info
22.89
KB
-rwxr-xr-x
ubuntu-security-status
23.2
KB
-rwxr-xr-x
ucf
39.73
KB
-rwxr-xr-x
ucfq
18.91
KB
-rwxr-xr-x
ucfr
10.47
KB
-rwxr-xr-x
udevadm
931.2
KB
-rwxr-xr-x
udisksctl
58.38
KB
-rwxr-xr-x
ul
18.16
KB
-rwxr-xr-x
ulockmgr_server
18.15
KB
-rwxr-xr-x
umount
38.23
KB
-rwsr-xr-x
uname
38.37
KB
-rwxr-xr-x
unattended-upgrade
96.99
KB
-rwxr-xr-x
unattended-upgrades
96.99
KB
-rwxr-xr-x
uncompress
2.29
KB
-rwxr-xr-x
unexpand
42.37
KB
-rwxr-xr-x
unicode_start
2.7
KB
-rwxr-xr-x
unicode_stop
530
B
-rwxr-xr-x
uniq
50.37
KB
-rwxr-xr-x
unlink
38.34
KB
-rwxr-xr-x
unlz4
186.23
KB
-rwxr-xr-x
unlzma
78.5
KB
-rwxr-xr-x
unmkinitramfs
3.59
KB
-rwxr-xr-x
unshare
42.43
KB
-rwxr-xr-x
unsquashfs
112.12
KB
-rwxr-xr-x
unxz
78.5
KB
-rwxr-xr-x
unzip
182.29
KB
-rwxr-xr-x
unzipsfx
82.27
KB
-rwxr-xr-x
update-alternatives
54.41
KB
-rwxr-xr-x
update-mime-database
58.37
KB
-rwxr-xr-x
upower
22.15
KB
-rwxr-xr-x
uptime
14.23
KB
-rwxr-xr-x
usb-devices
4
KB
-rwxr-xr-x
usbhid-dump
30.38
KB
-rwxr-xr-x
usbreset
14.3
KB
-rwxr-xr-x
users
38.34
KB
-rwxr-xr-x
utmpdump
30.23
KB
-rwxr-xr-x
uuidgen
14.23
KB
-rwxr-xr-x
uuidparse
38.23
KB
-rwxr-xr-x
vcs-run
6.75
KB
-rwxr-xr-x
vdir
138.81
KB
-rwxr-xr-x
vi
2.78
MB
-rwxr-xr-x
view
2.78
MB
-rwxr-xr-x
vigpg
2.58
KB
-rwxr-xr-x
vim
2.78
MB
-rwxr-xr-x
vim.basic
2.78
MB
-rwxr-xr-x
vim.tiny
1.29
MB
-rwxr-xr-x
vimdiff
2.78
MB
-rwxr-xr-x
vimtutor
2.07
KB
-rwxr-xr-x
vm-support
10.37
KB
-rwxr-xr-x
vmhgfs-fuse
54.8
KB
-rwxr-xr-x
vmstat
38.25
KB
-rwxr-xr-x
vmtoolsd
74.56
KB
-rwxr-xr-x
vmware-alias-import
70.53
KB
-rwxr-xr-x
vmware-checkvm
14.38
KB
-rwxr-xr-x
vmware-hgfsclient
14.38
KB
-rwxr-xr-x
vmware-namespace-cmd
22.3
KB
-rwxr-xr-x
vmware-rpctool
30.3
KB
-rwxr-xr-x
vmware-toolbox-cmd
58.59
KB
-rwxr-xr-x
vmware-vgauth-cmd
18.3
KB
-rwxr-xr-x
vmware-vmblock-fuse
22.72
KB
-rwxr-xr-x
vmware-xferlogs
56.4
KB
-rwxr-xr-x
volname
14.15
KB
-rwxr-xr-x
w
22.23
KB
-rwxr-xr-x
w.procps
22.23
KB
-rwxr-xr-x
wall
34.23
KB
-rwxr-xr-x
watch
26.57
KB
-rwxr-xr-x
watchgnupg
18.3
KB
-rwxr-xr-x
wc
46.34
KB
-rwxr-xr-x
wdctl
34.23
KB
-rwxr-xr-x
wget
531.71
KB
-rwxr-xr-x
whatis
55.21
KB
-rwxr-xr-x
whereis
34.66
KB
-rwxr-xr-x
which
946
B
-rwxr-xr-x
whiptail
34.16
KB
-rwxr-xr-x
who
58.37
KB
-rwxr-xr-x
whoami
38.34
KB
-rwxr-xr-x
wifi-status
2.06
KB
-rwxr-xr-x
write
14.15
KB
-rwxr-sr-x
x86_64
26.5
KB
-rwxr-xr-x
xargs
74.37
KB
-rwxr-xr-x
xauth
54.97
KB
-rwxr-xr-x
xdg-user-dir
234
B
-rwxr-xr-x
xdg-user-dirs-update
26.07
KB
-rwxr-xr-x
xsubpp
5.04
KB
-rwxr-xr-x
xxd
18.27
KB
-rwxr-xr-x
xz
78.5
KB
-rwxr-xr-x
xzcat
78.5
KB
-rwxr-xr-x
xzcmp
6.48
KB
-rwxr-xr-x
xzdiff
6.48
KB
-rwxr-xr-x
xzegrep
5.76
KB
-rwxr-xr-x
xzfgrep
5.76
KB
-rwxr-xr-x
xzgrep
5.76
KB
-rwxr-xr-x
xzless
1.76
KB
-rwxr-xr-x
xzmore
2.11
KB
-rwxr-xr-x
yes
38.34
KB
-rwxr-xr-x
ypdomainname
26.23
KB
-rwxr-xr-x
zcat
1.94
KB
-rwxr-xr-x
zcmp
1.64
KB
-rwxr-xr-x
zdiff
5.76
KB
-rwxr-xr-x
zdump
26.21
KB
-rwxr-xr-x
zegrep
29
B
-rwxr-xr-x
zfgrep
29
B
-rwxr-xr-x
zforce
2.03
KB
-rwxr-xr-x
zgrep
7.91
KB
-rwxr-xr-x
zip
211.19
KB
-rwxr-xr-x
zipcloak
91.62
KB
-rwxr-xr-x
zipdetails
49.53
KB
-rwxr-xr-x
zipgrep
2.88
KB
-rwxr-xr-x
zipinfo
182.29
KB
-rwxr-xr-x
zipnote
87.39
KB
-rwxr-xr-x
zipsplit
91.39
KB
-rwxr-xr-x
zless
2.15
KB
-rwxr-xr-x
zmore
1.8
KB
-rwxr-xr-x
znew
4.47
KB
-rwxr-xr-x
Delete
Unzip
Zip
${this.title}
Close
Code Editor : ucfq
#!/usr/bin/perl # -*- Mode: Cperl -*- # ucfq --- # Author : Manoj Srivastava ( srivasta@glaurung.internal.golden-gryphon.com ) # Created On : Wed Apr 12 14:51:16 2006 # Created On Node : glaurung.internal.golden-gryphon.com # Last Modified By : Manoj Srivastava # Last Modified On : Fri Apr 14 19:30:45 2006 # Last Machine Used: glaurung.internal.golden-gryphon.com # Update Count : 81 # Status : Unknown, Use with caution! # HISTORY : # Description : # # arch-tag: 1390e09f-ee31-4d7f-a968-bd539ea061a0 # =head1 NAME ucfq - query ucf registry and hashfile about configuration file details. =cut use strict; package ucf; use strict; use Getopt::Long; # set the version and revision ($main::MYNAME = $main::0) =~ s|.*/||; $main::Author = "Manoj Srivastava"; $main::AuthorMail = "srivasta\@debian.org"; =head1 SYNOPSIS usage: ucfq [options] (file|package)[file|package ...] =cut { # scope for ultra-private meta-object for class attributes my %Ucf = ( Optdesc => { 'help|h' => sub {print ucf->Usage(); exit 0;}, 'with-colons|w!' => sub {$::ConfOpts{"Colons"}= "$_[1]";}, 'state-dir=s' => sub {$::ConfOpts{"StateDir"}= "$_[1]";}, 'debug|d' => sub {$::ConfOpts{"DEBUG"}+= "$_[1]";}, 'verbose|v' => sub {$::ConfOpts{"VERBOSE"}+= "$_[1]";} }, Usage => qq(Usage: $main::MYNAME [options] Author: $main::Author <$main::AuthorMail> where options are: --help This message. --debug Turn on debugging mode. --verbose Make the script more verbose. --with-colons A compact, machine readable version of the output. --state-dir </path/> Set the state directory to /path/ instead of the default /var/lib/ucf. ), Defaults => { "Colons" => 0, "DEBUG" => 0, "VERBOSE" => 0, "StateDir" => '/var/lib/ucf' } ); # tri-natured: function, class method, or object method sub _classobj { my $obclass = shift || __PACKAGE__; my $class = ref($obclass) || $obclass; no strict "refs"; # to convert sym ref to real one return \%$class; } for my $datum (keys %Ucf ) { no strict "refs"; *$datum = sub { use strict "refs"; my ($self, $newvalue) = @_; $Ucf{$datum} = $newvalue if @_ > 1; return $Ucf{$datum}; } } } =head1 OPTIONS =over 3 =item B<--help> B<h> Print out a usage message. =item B<--debug> B<-d> Turn on debugging mode. =item B<--verbose> B<-v> Make the script more verbose.. =item B<--with-colons> B<-w> =over 2 Normally, the script presents the information in a human readable tabular format, but that may be harder for a machine to parse. With this option, the output is a compact, colon separated line, with no dividers, headers, or footer. =back =item B<--state-dr> dir =over 2 Set the state directory to C</path/to/dir> instead of the default C</var/lib/ucf>. Used mostly for testing. =back =back =cut =head1 DESCRIPTION This script takes a set of arguments, each of which is a package or a path to a configuration file, and outputs the associated package, if any, if the file exists on disk, and whether it has been modfied by te user. The output is either a human readable tabular form, or a compact colon-separated machine friendly format. This script can potentially be used in package C<postinst> scripts during purge to query the system for configuration files that may still exist on the system, and whether these files have been locally modified by the user -- assuming that the package registered all the configuration files with B<ucf> using C<ucfr>. =cut =head1 INTERNALS =head2 Class Methods All class methods mediate access to class variables. All class methods can be invoked with zero or one parameters. When invoked with the optional parameter, the class method sets the value of the underlying class data. In either case, the value of the underlying variable is returned. =cut =head1 Class ucf This is a combination view and controller class that mediates between the user and the internal model classes. =head2 new This is the constructor for the class. It takes a number of optional parameters. If the parameter B<Colons> is present, then the output will be compact. The parameters B<DEBUG> and B<VERBOSE> turn on additional diagnostics from the script. =cut sub new { my $this = shift; my %params = @_; my $class = ref($this) || $this; my $self = {}; bless $self => $class; # validate and sanitize the settings $self->validate(%params); return $self; } =head2 validate This routine is responsible for ensuring that the parameters passed in (presumably from the command line) are given preference. =cut sub validate{ my $this = shift; my %params = @_; my $defaults = $this->Defaults(); # Make sure runtime options override what we get from the config file for my $option (keys %params) { $this->{Con_Ref}->{"$option"} = $params{"$option"}; } # Ensure that if default parameters have not been set on the comman # line on in the configuration file, if any, we use the built in # defaults. for my $default (keys %$defaults) { if (! defined $this->{Con_Ref}->{"$default"}) { $this->{Con_Ref}->{"$default"} = $defaults->{"$default"}; } } } =head2 get_config_ref This routine returns a reference to the configuration hash =cut sub get_config_ref { my $this = shift; return $this->{Con_Ref}; } =head2 dump_config This routine returns a C<Data::Dumper> for debugging purposes =cut sub dump_config { my $this = shift; for (keys %{$this->{Con_Ref}}) { print "$_ = [${$this->{Con_Ref}}{$_}]\n" } } =head2 process This routine is the work horse routine -- it parses the command line arguments, and queries the on disk databases, determines of the files exist, and have been modified. =cut sub process { my $this = shift; # Step 1: Process all arguments in sequence. # Step 2: determine if the arument given is a package name (no / in # arg) %{$this->{packages}} = map { +"$_" => 1} grep {! m,/,} @ARGV; %{$this->{configs}} = map { +"$_" => 1} grep { m,/,} @ARGV; $this->{pkg_list} = object_list->new; $this->{file_list} = object_list->new; $this->{registry_proxy} = registry->new("StateDir" => $this->{Con_Ref}->{StateDir}); $this->{hashfile_proxy} = hashfile->new("StateDir" => $this->{Con_Ref}->{StateDir}); for (keys %{$this->{packages}} ) { my $package = pkg->new('Name' => "$_"); $this->{pkg_list}->element($_, $package); } for (keys %{$this->{configs}}) { warn "Need a fully qualified path name for config file \"$_\"\n" unless m,^/,; # Don't die for etch exit 0 unless m,^/,; my $file = conffile->new('Name' => "$_"); $this->{file_list}->element($_, $file); } # Step 3: If so, gather all files associated with the package for my $package ($this->{pkg_list}->list) { my $pkg_files = $this->{registry_proxy}->list_files($package); for my $file (@$pkg_files) { if (! defined $this->{file_list}->element($file)) { my $ret = conffile->new('Name' => "$file"); $this->{file_list}->element($file, $ret); } $this->{file_list}->element($file)->conffile_package($package); } } # Step 4: for all configuration files, determine package (unless # already determined), if any # Step 5: For each configuration file, check if it exists # Step 6: For each existing file, see if it has been changed for my $file ($this->{file_list}->list) { $this->{file_list}->element($file)->conffile_hash($file, $this->{hashfile_proxy}->hash($file)); if (! defined $this->{file_list}->element($file)->conffile_package) { $this->{file_list}->element($file)->conffile_package($this->{registry_proxy}->find_pkg($file)); } } } =head2 report This routine generates a nicely formatted report based on the information gathered during the processing. There are two kinds of reports, the first being a user friendly tabular form, the second (turned on by the C<-w> option) a easily parseable colon separated report. =cut our ($out_pkg, $out_file, $there, $mod); format STDOUT_TOP = Configuration file Package Exists Changed . format STDOUT = @<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< @<<<<<<<<<<<<<<<<<< @||| @||| $out_file, $out_pkg, $there,$mod . sub report { my $this = shift; for my $file (sort $this->{file_list}->list) { ($out_pkg, $out_file, $there, $mod) = $this->{file_list}->element($file)->conffile_report; if ($this->{Con_Ref}->{Colons}) { print "$out_file:$out_pkg:$there:$mod\n"; } else { write; } } } =head1 Class registry This moel class encapsulates the package-configuration file associations registry. It parses the data in the registry, and provides methods to query the registry based either on package name, or the full path of the configuration file. =cut package registry; use strict; =head2 new This is the constructor for the class. It takes a required parameter B<StateDir>, and based on that, proceeds toparse the registry and populate internal data structures. =cut sub new { my $this = shift; my %params = @_; my $class = ref($this) || $this; my $self = {}; die "Missing required parameter StateDir" unless $params{StateDir}; if (-e "$params{StateDir}/registry") { if (! -r "$params{StateDir}/registry") { die "Can't read registry file $params{StateDir}/registry:$!"; } open (REG, "$params{StateDir}/registry") || die "Can't read registry file $params{StateDir}/registry:$!"; while (<REG>) { chomp; my ($pkg, $file) = m/^(\S+)\s+(\S+)$/; $self->{Packages}->{$file} = $pkg; if (exists $self->{List}->{$pkg}) { push @{$self->{List}->{$pkg}}, $file; } else { $self->{List}->{$pkg} = [ $file ]; } } } bless $self => $class; return $self; } =head2 list_files This routine queries the registry and lists all configuration files associated with the given package. Takes the package name as a required parameter. =cut sub list_files { my $this = shift; my $pkg = shift; if (exists $this->{List}->{$pkg}) { return [ @{$this->{List}->{$pkg}} ]; } else { return []; } } =head2 find_pkg This routine queries the registry for the package associated with the given file. Takes the path of the configuration file as a required parameter. =cut sub find_pkg { my $this = shift; my $file = shift; if (exists $this->{Packages}->{$file}) { return $this->{Packages}->{$file}; } else { return undef; } } =head1 Class hashfile This moel class encapsulates the configuration file hash database. It parses the data in the database, and provides methods to query the hash of the configuration file. =cut package hashfile; use strict; sub new { my $this = shift; my %params = @_; my $class = ref($this) || $this; my $self = {}; die "Missing required parameter StateDir" unless $params{StateDir}; if (-e "$params{StateDir}/hashfile") { if (! -r "$params{StateDir}/hashfile") { die "Can't read registry file $params{StateDir}/hashfile:$!"; } open (HASH, "$params{StateDir}/hashfile") || die "Can't read registry file $params{StateDir}/hashfile:$!"; while (<HASH>) { chomp; my ($hash, $file) = m/^(\S+)\s+(\S+)$/; $self->{$file} = $hash } } bless $self => $class; return $self; } =head2 hash This routine queries the database for the hash associated with the developers version of the given file. Takes the path of the configuration file as a required parameter. =cut sub hash { my $this = shift; my $file = shift; my $value = shift; if ($value) { $this->{$file} = $value; } return $this->{$file}; } =head1 class conffile This is the encapsulation of a configuration file metadata. =cut package conffile; use strict; use Cwd qw{abs_path}; =head2 new This is the constructor for the class. It takes a number of optional parameters. If the parameter B<Colons> is present, then the output will be compact. The parameters B<DEBUG> and B<VERBOSE> turn on additional diagnostics from the script. =cut sub new { my $this = shift; my %params = @_; my $class = ref($this) || $this; my $self = {}; die "Missing required parameter Name" unless $params{Name}; $self->{Name} = $params{Name}; $self->{Package} = $params{Package} if $params{Package}; $self->{Exists} = 'Yes' if -e $self->{Name}; if ($self->{Exists}) { $self->{Name} = abs_path( $self->{Name}); } bless $self => $class; return $self; } =head2 conffile_package This routine is the accessor method of the internal attribute that holds package name associated with the file. If an optional C<value> is present, updates the value of the attribute. =cut sub conffile_package { my $this = shift; my $value = shift; if ($value ) { $this->{Package} = $value; } if (exists $this->{Package}) { return $this->{Package}; } else { return undef; } } =head2 conffile_exists This routine is the accessor method of the internal attribute that holds the information whether the file exists on disk or not. =cut sub conffile_exists { my $this = shift; my $name = shift; my $value = shift; die "Missing required parameter Name" unless $name; if (exists $this->{Exists}) { return $this->{Exists}; } else { return undef; } } =head2 conffile_modified This routine is the accessor method of the internal attribute that holds the information whether the file exists on disk or not. If an optional C<value> is present, updates the value of the attribute. =cut sub conffile_modified { my $this = shift; my $name = shift; my $value = shift; die "Missing required parameter Name" unless $name; if ($value ) { $this->{Modified} = $value; } if (exists $this->{Modified}) { return $this->{Modified}; } else { return undef; } } =head2 conffile_hash This routine is the accessor method of the internal attribute that holds the hash for the developers version of the file. If an optional C<value> is present, updates the value of the attribute. It also notes whether or not the file is modified from the developers version. =cut sub conffile_hash { my $this = shift; my $name = shift; my $value = shift; die "Missing required parameter Name" unless $name; if ($value ) { $this->{Hash} = $value; if (-e "$name") { if (-x "/usr/bin/md5sum") { open (NEWHASH, "/usr/bin/md5sum $name |") || die "Could not run md5sum: $!"; while (<NEWHASH>) { chomp; my ($hash, $dummy) = m/^(\S+)\s+(\S+)$/; if ("$hash" ne "$value") { $this->{Modified} = 'Yes'; } else { $this->{Modified} = 'No'; } } close NEWHASH; } else { die "Could not find /usr/bin/md5sum .\n"; } } } if (exists $this->{Hash}) { return $this->{Hash}; } else { return undef; } } sub conffile_report { my $this = shift; return $this->{Package} ? $this->{Package} : "", $this->{Name}, $this->{Exists} ? $this->{Exists} : "", $this->{Modified}? $this->{Modified} : ""; } =head1 CLASS PKG This is an encapsulation of package metadata. Packages may be associated with configuration files. =cut package pkg; use strict; =head2 new This is the constructor for the class. It takes a number of optional parameters. If the parameter B<Colons> is present, then the output will be compact. The parameters B<DEBUG> and B<VERBOSE> turn on additional diagnostics from the script. =cut sub new { my $this = shift; my %params = @_; my $class = ref($this) || $this; my $self = {}; die "Missing required parameter Name" unless $params{Name}; $self->{Name} = $params{Name}; bless $self => $class; return $self; } sub list_files { my $this = shift; return []; } =head1 CLASS object_list This is a clas which holds lists of object names, either packages or configuration file object names. It provides methods to add, access, and remove objects, as well as an option to list all elements in the list. =cut package object_list; use strict; =head2 new This is the constructor for the class. It takes no arguments. =cut sub new { my $this = shift; my %params = @_; my $class = ref($this) || $this; my $self = {}; $self->{"List"} = (); bless $self => $class; return $self; } =head2 element This is an accessor method for elements of the list. If an optional value argument exists, it creates or updates the element associtated with the vaslue. Takes in a required name, which is used as a kay, and an optional value argument. The value is returned. =cut sub element { my $this = shift; my $name = shift; my $value = shift; die "Missing required parameter Name" unless $name; if ($value) { $this->{"List"}->{$name} = $value; } if (exists $this->{"List"}->{$name}) { return $this->{"List"}->{$name}; } else { return undef; } } =head2 remove Removes elements from the list. Take in an required name, which is used as the key for the element to delete. =cut sub remove { my $this = shift; my $name = shift; die "Missing required parameter Name" unless $name; delete $this->{"List"}->{$name} if (exists $this->{"List"}->{$name} ); } =head2 list This routine lists all the elements in the list. It does not take any options. =cut sub list { my $this = shift; return keys %{$this->{"List"}}; } package main; use Getopt::Long; sub main { my $optdesc = ucf->Optdesc(); my $parser = new Getopt::Long::Parser; $parser->configure("bundling"); $parser->getoptions (%$optdesc); my $query = ucf->new(%::ConfOpts); $query->process; $query->report; } &main; exit 0; =head1 CAVEATS This is very inchoate, at the moment, and needs testing. =cut =head1 BUGS None Known so far. =cut =head1 AUTHOR Manoj Srivastava <srivasta\@debian.org> =head1 COPYRIGHT AND LICENSE This script is a part of the Ucf package, and is Copyright (c) 2006 Manoj Srivastava <srivasta\@debian.org> This program is free software; you can redistribute it and / or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA =cut 1; __END__
Close