Linux server1.dn-server.com 4.18.0-553.89.1.lve.el8.x86_64 #1 SMP Wed Dec 10 13:58:50 UTC 2025 x86_64
LiteSpeed
Server IP : 195.201.204.189 & Your IP : 216.73.216.37
Domains :
Cant Read [ /etc/named.conf ]
User : beriska1
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
opt /
alt /
ruby23 /
lib64 /
ruby /
2.3.0 /
Delete
Unzip
Name
Size
Permission
Date
Action
bigdecimal
[ DIR ]
drwxr-xr-x
2026-05-01 04:23
cgi
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
digest
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
drb
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
fiddle
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
io
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
irb
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
json
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
matrix
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
net
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
openssl
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
optparse
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
psych
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
racc
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
rbconfig
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
rdoc
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
rexml
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
rinda
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
ripper
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
rss
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
rubygems
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
shell
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
syslog
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
tk
[ DIR ]
drwxr-xr-x
2026-05-01 04:23
tkextlib
[ DIR ]
drwxr-xr-x
2026-05-01 04:23
unicode_normalize
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
uri
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
webrick
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
x86_64-linux
[ DIR ]
drwxr-xr-x
2026-05-01 04:23
xmlrpc
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
yaml
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
English.rb
6.45
KB
-rw-r--r--
2015-12-16 08:37
abbrev.rb
3.49
KB
-rw-r--r--
2015-12-16 08:37
base64.rb
3.31
KB
-rw-r--r--
2015-12-16 08:37
benchmark.rb
17.9
KB
-rw-r--r--
2015-12-23 07:13
cgi.rb
9.8
KB
-rw-r--r--
2015-12-16 08:37
cmath.rb
9.48
KB
-rw-r--r--
2015-12-16 08:37
csv.rb
82.15
KB
-rw-r--r--
2015-12-19 08:53
date.rb
1011
B
-rw-r--r--
2023-07-26 18:09
debug.rb
29.97
KB
-rw-r--r--
2015-12-16 08:37
delegate.rb
10.29
KB
-rw-r--r--
2015-12-16 08:37
digest.rb
2.82
KB
-rw-r--r--
2023-07-26 18:09
drb.rb
50
B
-rw-r--r--
2015-12-16 08:37
e2mmap.rb
3.8
KB
-rw-r--r--
2015-12-16 08:37
erb.rb
26.45
KB
-rw-r--r--
2017-06-30 15:54
expect.rb
2.17
KB
-rw-r--r--
2023-07-26 18:09
fiddle.rb
1.68
KB
-rw-r--r--
2023-07-26 18:09
fileutils.rb
47.47
KB
-rw-r--r--
2017-03-27 21:27
find.rb
2.51
KB
-rw-r--r--
2015-12-16 08:37
forwardable.rb
7.97
KB
-rw-r--r--
2018-03-18 18:34
getoptlong.rb
15.41
KB
-rw-r--r--
2015-12-23 07:13
ipaddr.rb
17.08
KB
-rw-r--r--
2015-12-16 08:37
irb.rb
20.06
KB
-rw-r--r--
2016-03-29 10:40
json.rb
1.77
KB
-rw-r--r--
2023-07-26 18:09
kconv.rb
5.77
KB
-rw-r--r--
2023-07-26 18:09
logger.rb
21.93
KB
-rw-r--r--
2016-10-17 21:08
mathn.rb
3.87
KB
-rw-r--r--
2015-12-16 08:37
matrix.rb
53.37
KB
-rw-r--r--
2015-12-16 08:37
mkmf.rb
83.79
KB
-rw-r--r--
2023-07-26 18:06
monitor.rb
7.01
KB
-rw-r--r--
2015-12-16 08:37
multi-tk.rb
98.12
KB
-rw-r--r--
2023-07-26 18:09
mutex_m.rb
2.03
KB
-rw-r--r--
2015-12-16 08:37
observer.rb
5.83
KB
-rw-r--r--
2015-12-16 08:37
open-uri.rb
24.61
KB
-rw-r--r--
2015-11-11 07:18
open3.rb
20.67
KB
-rw-r--r--
2015-11-14 11:13
openssl.rb
445
B
-rw-r--r--
2023-07-26 18:09
optionparser.rb
59
B
-rw-r--r--
2015-12-16 08:37
optparse.rb
56.91
KB
-rw-r--r--
2017-08-09 12:26
ostruct.rb
9.95
KB
-rw-r--r--
2018-01-31 14:35
pathname.rb
16.08
KB
-rw-r--r--
2023-07-26 18:09
pp.rb
14.2
KB
-rw-r--r--
2015-11-10 15:18
prettyprint.rb
15.89
KB
-rw-r--r--
2015-11-10 15:18
prime.rb
12.35
KB
-rw-r--r--
2015-12-16 08:37
profile.rb
236
B
-rw-r--r--
2015-12-16 08:37
profiler.rb
4.54
KB
-rw-r--r--
2015-12-16 08:37
pstore.rb
14.58
KB
-rw-r--r--
2015-12-23 07:13
psych.rb
15.29
KB
-rw-r--r--
2023-07-26 18:09
psych_jars.rb
175
B
-rw-r--r--
2023-07-26 18:09
rdoc.rb
5.07
KB
-rw-r--r--
2015-12-22 15:38
remote-tk.rb
13.95
KB
-rw-r--r--
2023-07-26 18:09
resolv-replace.rb
1.76
KB
-rw-r--r--
2015-11-14 11:55
resolv.rb
73.52
KB
-rw-r--r--
2018-03-28 10:33
ripper.rb
2.56
KB
-rw-r--r--
2023-07-26 18:09
rss.rb
2.87
KB
-rw-r--r--
2015-12-16 08:37
rubygems.rb
32.24
KB
-rw-r--r--
2018-02-16 19:51
scanf.rb
23.56
KB
-rw-r--r--
2015-12-16 08:37
securerandom.rb
7.49
KB
-rw-r--r--
2016-04-22 20:00
set.rb
19.67
KB
-rw-r--r--
2015-11-16 11:11
shell.rb
11.33
KB
-rw-r--r--
2015-12-16 08:37
shellwords.rb
6.28
KB
-rw-r--r--
2015-12-16 12:55
singleton.rb
4.05
KB
-rw-r--r--
2015-12-16 08:37
socket.rb
43.49
KB
-rw-r--r--
2023-07-26 18:09
sync.rb
7.29
KB
-rw-r--r--
2015-12-16 08:37
tcltk.rb
10.09
KB
-rw-r--r--
2023-07-26 18:09
tempfile.rb
10.87
KB
-rw-r--r--
2017-03-27 19:17
thwait.rb
3.34
KB
-rw-r--r--
2015-12-16 08:37
time.rb
22.28
KB
-rw-r--r--
2015-11-14 16:15
timeout.rb
3.68
KB
-rw-r--r--
2015-12-18 19:16
tk.rb
163.11
KB
-rw-r--r--
2023-07-26 18:09
tkafter.rb
88
B
-rw-r--r--
2023-07-26 18:09
tkbgerror.rb
94
B
-rw-r--r--
2023-07-26 18:09
tkcanvas.rb
91
B
-rw-r--r--
2023-07-26 18:09
tkclass.rb
984
B
-rw-r--r--
2023-07-26 18:09
tkconsole.rb
94
B
-rw-r--r--
2023-07-26 18:09
tkdialog.rb
91
B
-rw-r--r--
2023-07-26 18:09
tkentry.rb
88
B
-rw-r--r--
2023-07-26 18:09
tkfont.rb
85
B
-rw-r--r--
2023-07-26 18:09
tkmacpkg.rb
91
B
-rw-r--r--
2023-07-26 18:09
tkmenubar.rb
94
B
-rw-r--r--
2023-07-26 18:09
tkmngfocus.rb
97
B
-rw-r--r--
2023-07-26 18:09
tkpalette.rb
94
B
-rw-r--r--
2023-07-26 18:09
tkscrollbox.rb
100
B
-rw-r--r--
2023-07-26 18:09
tktext.rb
85
B
-rw-r--r--
2023-07-26 18:09
tkvirtevent.rb
100
B
-rw-r--r--
2023-07-26 18:09
tkwinpkg.rb
91
B
-rw-r--r--
2023-07-26 18:09
tmpdir.rb
4.17
KB
-rw-r--r--
2018-03-28 14:59
tracer.rb
6.43
KB
-rw-r--r--
2015-12-16 08:37
tsort.rb
14.3
KB
-rw-r--r--
2015-11-14 12:16
ubygems.rb
299
B
-rw-r--r--
2015-12-16 08:37
un.rb
8.87
KB
-rw-r--r--
2015-12-16 08:37
unicode_normalize.rb
3.19
KB
-rw-r--r--
2015-12-16 08:37
uri.rb
3.1
KB
-rw-r--r--
2015-12-16 08:37
weakref.rb
2.95
KB
-rw-r--r--
2015-12-16 08:37
webrick.rb
6.72
KB
-rw-r--r--
2015-12-23 07:13
xmlrpc.rb
8.93
KB
-rw-r--r--
2015-12-23 07:13
yaml.rb
1.73
KB
-rw-r--r--
2015-12-16 08:37
Save
Rename
# frozen_string_literal: false # tof #### tcltk library, more direct manipulation of tcl/tk #### Sep. 5, 1997 Y. Shigehiro require "tcltklib" ################ # module TclTk: collection of tcl/tk utilities (supplies namespace.) module TclTk # initialize Hash to hold unique symbols and such @namecnt = {} # initialize Hash to hold callbacks @callback = {} end # TclTk.mainloop(): call TclTkLib.mainloop() def TclTk.mainloop() print("mainloop: start\n") if $DEBUG TclTkLib.mainloop() print("mainloop: end\n") if $DEBUG end # TclTk.deletecallbackkey(ca): remove callback from TclTk module # this does not remove callbacks from tcl/tk interpreter # without calling this method, TclTkInterpreter will not be GCed # ca: callback(TclTkCallback) def TclTk.deletecallbackkey(ca) print("deletecallbackkey: ", ca.to_s(), "\n") if $DEBUG @callback.delete(ca.to_s) end # TclTk.dcb(ca, wid, W): call TclTk.deletecallbackkey() for each callbacks # in an array. # this is for callback for top-level <Destroy> # ca: array of callbacks(TclTkCallback) # wid: top-level widget(TclTkWidget) # w: information about window given by %W(String) def TclTk.dcb(ca, wid, w) if wid.to_s() == w ca.each{|i| TclTk.deletecallbackkey(i) } end end # TclTk._addcallback(ca): register callback # ca: callback(TclTkCallback) def TclTk._addcallback(ca) print("_addcallback: ", ca.to_s(), "\n") if $DEBUG @callback[ca.to_s()] = ca end # TclTk._callcallback(key, arg): invoke registered callback # key: key to select callback (to_s value of the TclTkCallback) # arg: parameter from tcl/tk interpreter def TclTk._callcallback(key, arg) print("_callcallback: ", @callback[key].inspect, "\n") if $DEBUG @callback[key]._call(arg) # throw out callback value # should return String to satisfy rb_eval_string() return "" end # TclTk._newname(prefix): generate unique name(String) # prefix: prefix of the unique name def TclTk._newname(prefix) # generated name counter is stored in @namecnt if !@namecnt.key?(prefix) # first appearing prefix, initialize @namecnt[prefix] = 1 else # already appeared prefix, generate next name @namecnt[prefix] += 1 end return "#{prefix}#{@namecnt[prefix]}" end ################ # class TclTkInterpreter: tcl/tk interpreter class TclTkInterpreter # initialize(): def initialize() # generate interpreter object @ip = TclTkIp.new() # add ruby_fmt command to tcl interpreter # ruby_fmt command format arguments by `format' and call `ruby' command # (notice ruby command receives only one argument) if $DEBUG @ip._eval("proc ruby_fmt {fmt args} { puts \"ruby_fmt: $fmt $args\" ; set cmd [list ruby [format $fmt $args]] ; uplevel $cmd }") else @ip._eval("proc ruby_fmt {fmt args} { set cmd [list ruby [format $fmt $args]] ; uplevel $cmd }") end # @ip._get_eval_string(*args): generate string to evaluate in tcl interpreter # *args: script which is going to be evaluated under tcl/tk def @ip._get_eval_string(*args) argstr = "" args.each{|arg| argstr += " " if argstr != "" # call to_eval if it is defined if (arg.respond_to?(:to_eval)) argstr += arg.to_eval() else # call to_s unless defined argstr += arg.to_s() end } return argstr end # @ip._eval_args(*args): evaluate string under tcl/tk interpreter # returns result string. # *args: script which is going to be evaluated under tcl/tk def @ip._eval_args(*args) # calculate the string to eval in the interpreter argstr = _get_eval_string(*args) # evaluate under the interpreter print("_eval: \"", argstr, "\"") if $DEBUG res = _eval(argstr) if $DEBUG print(" -> \"", res, "\"\n") elsif _return_value() != 0 print(res, "\n") end fail(%Q/can't eval "#{argstr}"/) if _return_value() != 0 #' return res end # generate tcl/tk command object and register in the hash @commands = {} # for all commands registered in tcl/tk interpreter: @ip._eval("info command").split(/ /).each{|comname| if comname =~ /^[.]/ # if command is a widget (path), generate TclTkWidget, # and register it in the hash @commands[comname] = TclTkWidget.new(@ip, comname) else # otherwise, generate TclTkCommand @commands[comname] = TclTkCommand.new(@ip, comname) end } end # commands(): returns hash of the tcl/tk commands def commands() return @commands end # rootwidget(): returns root widget(TclTkWidget) def rootwidget() return @commands["."] end # _tcltkip(): returns @ip(TclTkIp) def _tcltkip() return @ip end # method_missing(id, *args): execute undefined method as tcl/tk command # id: method symbol # *args: method arguments def method_missing(id, *args) # if command named by id registered, then execute it if @commands.key?(id.id2name) return @commands[id.id2name].e(*args) else # otherwise, exception super end end end # class TclTkObject: base class of the tcl/tk objects class TclTkObject # initialize(ip, exp): # ip: interpreter(TclTkIp) # exp: tcl/tk representation def initialize(ip, exp) fail("type is not TclTkIp") if !ip.kind_of?(TclTkIp) @ip = ip @exp = exp end # to_s(): returns tcl/tk representation def to_s() return @exp end end # class TclTkCommand: tcl/tk commands # you should not call TclTkCommand.new() # commands are created by TclTkInterpreter:initialize() class TclTkCommand < TclTkObject # e(*args): execute command. returns String (e is for exec or eval) # *args: command arguments def e(*args) return @ip._eval_args(to_s(), *args) end end # class TclTkLibCommand: tcl/tk commands in the library class TclTkLibCommand < TclTkCommand # initialize(ip, name): # ip: interpreter(TclTkInterpreter) # name: command name (String) def initialize(ip, name) super(ip._tcltkip, name) end end # class TclTkVariable: tcl/tk variable class TclTkVariable < TclTkObject # initialize(interp, dat): # interp: interpreter(TclTkInterpreter) # dat: the value to set(String) # if nil, not initialize variable def initialize(interp, dat) # auto-generate tcl/tk representation (variable name) exp = TclTk._newname("v_") # initialize TclTkObject super(interp._tcltkip(), exp) # safe this for `set' command @set = interp.commands()["set"] # set value set(dat) if dat end # although you can set/read variables by using set in tcl/tk, # we provide the method for accessing variables # set(data): set tcl/tk variable using `set' # data: new value def set(data) @set.e(to_s(), data.to_s()) end # get(): read tcl/tk variable(String) using `set' def get() return @set.e(to_s()) end end # class TclTkWidget: tcl/tk widget class TclTkWidget < TclTkCommand # initialize(*args): # *args: parameters def initialize(*args) if args[0].kind_of?(TclTkIp) # in case the 1st argument is TclTkIp: # Wrap tcl/tk widget by TclTkWidget # (used in TclTkInterpreter#initialize()) # need two arguments fail("invalid # of parameter") if args.size != 2 # ip: interpreter(TclTkIp) # exp: tcl/tk representation ip, exp = args # initialize TclTkObject super(ip, exp) elsif args[0].kind_of?(TclTkInterpreter) # in case 1st parameter is TclTkInterpreter: # generate new widget from parent widget # interp: interpreter(TclTkInterpreter) # parent: parent widget # command: widget generating tk command(label 等) # *args: argument to the command interp, parent, command, *args = args # generate widget name exp = parent.to_s() exp += "." if exp !~ /[.]$/ exp += TclTk._newname("w_") # initialize TclTkObject super(interp._tcltkip(), exp) # generate widget res = @ip._eval_args(command, exp, *args) # fail("can't create Widget") if res != exp # for tk_optionMenu, it is legal res != exp else fail("first parameter is not TclTkInterpreter") end end end # class TclTkCallback: tcl/tk callbacks class TclTkCallback < TclTkObject # initialize(interp, pr, arg): # interp: interpreter(TclTkInterpreter) # pr: callback procedure(Proc) # arg: string to pass as block parameters of pr # bind command of tcl/tk uses % replacement for parameters # pr can receive replaced data using block parameter # its format is specified by arg string # You should not specify arg for the command like # scrollbar with -command option, which receives parameters # without specifying any replacement def initialize(interp, pr, arg = nil) # auto-generate tcl/tk representation (variable name) exp = TclTk._newname("c_") # initialize TclTkObject super(interp._tcltkip(), exp) # save parameters @pr = pr @arg = arg # register in the module TclTk._addcallback(self) end # to_eval(): returns string representation for @ip._eval_args def to_eval() if @arg # bind replaces %s before calling ruby_fmt, so %%s is used s = %Q/{ruby_fmt {TclTk._callcallback("#{to_s()}", "%%s")} #{@arg}}/ else s = %Q/{ruby_fmt {TclTk._callcallback("#{to_s()}", "%s")}}/ end return s end # _call(arg): invoke callback # arg: callback parameter def _call(arg) @pr.call(arg) end end # class TclTkImage: tcl/tk images class TclTkImage < TclTkCommand # initialize(interp, t, *args): # generating image is done by TclTkImage.new() # destroying is done by image delete (inconsistent, sigh) # interp: interpreter(TclTkInterpreter) # t: image type (photo, bitmap, etc.) # *args: command argument def initialize(interp, t, *args) # auto-generate tcl/tk representation exp = TclTk._newname("i_") # initialize TclTkObject super(interp._tcltkip(), exp) # generate image res = @ip._eval_args("image create", t, exp, *args) fail("can't create Image") if res != exp end end # eof