📄 easterrst-gui.pl
字号:
#!/usr/bin/perl## GUI code 4 easterrst.pl## Programmed by Bastian Ballmann [ bytebeater@crazydj.de ]## Last Update: 16.06.2002## This code is licensed under the GPL###[ Loading Modules ]###use Tk;require "../modules/mkchild.pl";###[ MAIN PART ]#### Hauptfenster$top = MainWindow->new();$top->title('Easterrst -- Just a nice RST daemon');$top->configure(background => 'black', foreground => 'green', borderwidth => 2);# Frames$inhalt = $top->Frame->pack(side => 'top', pady => 10, padx => 10);$inhalt->configure(background => 'black', foreground => 'green');$configure = $top->Frame->pack(side => 'top', pady => 5, padx => 10);$configure->configure(background => 'black', foreground => 'green', borderwidth => 2);$left = $configure->Frame->pack(side => 'left', padx => 10);$left->configure(background => 'black', foreground => 'green');$right = $configure->Frame->pack(side => 'right', padx => 10);$right->configure(background => 'black', foreground => 'green');$toolbar = $top->Frame->pack(side => 'bottom', pady => 5, padx => 10);$toolbar->configure(background => 'black', foreground => 'green', borderwidth => 2);$ausgabe = $top->Frame->pack(side => 'bottom', pady => 15, padx => 10);$ausgabe->configure(background => 'black', foreground => 'green');$down = $top->Frame->pack(side => 'bottom', padx => 10, pady => 0);$down->configure(background => 'black', foreground => 'green');$d_left = $down->Frame->pack(side => 'left', padx => 10);$d_left->configure(background => 'black', foreground => 'green');$d_right = $down->Frame->pack(side => 'right', padx => 10);$d_right->configure(background => 'black', foreground => 'green');$p = $d_right->Frame->pack(side => 'top', padx => 10);$p->configure(background => 'black', foreground => 'green');$r = $d_right->Frame->pack(side => 'top', padx => 10);$r->configure(background => 'black', foreground => 'green');$s = $d_right->Frame->pack(side => 'top', padx => 10);$s->configure(background => 'black', foreground => 'green');# Labels$inhalt->Label(text => '[ Easterrst -- Advanced RST daemon ]', background => 'black', foreground => 'green', border => 0)->pack(pady => 5);$inhalt->Label(text => '[ Programmed by Bastian Ballmann and Stefan Krecher ]', background => 'black', foreground => 'green', border => 0)->pack(pady => 5);# Configuration$left->Label(text => 'Host:', background => 'black', foreground => 'green', border => 0)->pack(pady => 10, padx => 5);$target = $right->Entry(background => 'black', foreground => 'green')->pack(pady => 6);$left->Label(text => 'Connection:', background => 'black', foreground => 'green', border => 0)->pack(pady => 10, padx => 5);$connection = $right->Entry(background => 'black', foreground => 'green')->pack(pady => 6);$left->Label(text => 'Port:', background => 'black', foreground => 'green', border => 0)->pack(pady => 10, padx => 5);$port = $right->Entry(background => 'black', foreground => 'green')->pack(pady => 6);$left->Label(text => 'Device:', background => 'black', foreground => 'green', border => 0)->pack(pady => 10, padx => 5);$device = $right->Entry(background => 'black', foreground => 'green')->pack(pady => 6);$device->insert(0,'eth0');$reset = 'rst';$d_left->Label(text => 'Reset with', background => 'black', foreground => 'green', border => 0)->pack(side => 'top', pady => 7);$r->Radiobutton(variable => \$reset, text => 'RST', value => 'rst', activebackground => 'black', activeforeground => 'red', background => 'black', foreground => 'green')->pack(side => 'left', pady => 6);$r->Radiobutton(variable => \$reset, text => 'FIN', value => 'fin', activebackground => 'black', activeforeground => 'red', background => 'black', foreground => 'green')->pack(side => 'left', pady => 6);$synreset = 'off';$d_left->Label(text => 'Reset only SYN', background => 'black', foreground => 'green', border => 0)->pack(side => 'bottom', pady => 10);$s->Radiobutton(variable => $synreset, text => 'Yes', value => 'on', activebackground => 'black', activeforeground => 'red', background => 'black', foreground => 'green')->pack(side => 'left', pady => 5, padx => 5);# Toolbar$toolbar->Button(text => 'Start RST daemon', background => 'black', foreground => 'green', activebackground => 'black', activeforeground => 'red', borderwidth => 0, border => 0, command => \&getcfg)->pack(side => 'left', padx => 10);$toolbar->Button(text => 'Stop RST daemon', background => 'black', foreground => 'green', activebackground => 'black', activeforeground => 'red', borderwidth => 0, border => 0, command => sub { exit(0); })->pack(side => 'right', padx => 10);# Ausgabe$ausgabe->Label(text => 'Output', background => 'black', foreground => 'green', border => 0)->pack(side => 'top', pady => 10);$result = $ausgabe->Text(background => 'black', foreground => 'green', border => 2, width => 57, height => 10)->pack(side => 'bottom', pady => 5);MainLoop();###[ Subroutines ]#### Readin the configsub getcfg{ $tmp = $target->get; if(length($tmp) > 0) { $args{'h'} = $tmp; } $tmp = $connection->get; if(length($tmp) > 0) { $args{'c'} = $tmp; } $tmp = $device->get; $args{'i'} = $tmp; $tmp = $port->get; if(length($tmp) > 0) { $args{'p'} = $tmp; } if($reset eq 'rst') { $args{'r'} = ''; } if($reset eq 'fin') { $args{'f'} = ''; } if($synreset eq 'on') { $args{'s'} = ''; } &mkchild(\&start,\%args);}1;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -