source: trunk/URouterOS.pas

Last change on this file was 1, checked in by chronos, 4 years ago
  • Added: Initial version.
File size: 3.5 KB
Line 
1unit URouterOS;
2
3{$mode delphi}
4
5interface
6
7uses
8 Classes, SysUtils, UDevice, UContext;
9
10type
11
12 { TRouteOS }
13
14 TRouterOS = class(TDevice)
15 constructor Create; override;
16 end;
17
18
19implementation
20
21uses
22 UTerminal;
23
24{ TRouterOS }
25
26constructor TRouterOS.Create;
27begin
28 inherited;
29 Identity := 'router';
30 with Routerboard do begin
31 Logo.Add(' MMM MMM KKK TTTTTTTTTTT KKK');
32 Logo.Add(' MMMM MMMM KKK TTTTTTTTTTT KKK');
33 Logo.Add(' MMM MMMM MMM III KKK KKK RRRRRR OOOOOO TTT III KKK KKK');
34 Logo.Add(' MMM MM MMM III KKKKK RRR RRR OOO OOO TTT III KKKKK');
35 Logo.Add(' MMM MMM III KKK KKK RRRRRR OOO OOO TTT III KKK KKK');
36 Logo.Add(' MMM MMM III KKK KKK RRR RRR OOOOOO TTT III KKK KKK');
37 Vendor := 'MikroTik';
38 Model := '333';
39 OS := 'RouterOS';
40 Version := '6.46.2';
41 Copyright := '1999-2020';
42 Website := 'http://www.mikrotik.com/';
43 end;
44
45 RootContext.Free;
46 RootContext := TContextRoot.Create;
47 with RootContext do begin
48 with Childs.AddNew('interface', '') do begin
49 with Childs.AddList('pptp-server', 'PPTP server') do begin
50 ValueDefs.AddString('name', '');
51 ValueDefs.AddString('user', '');
52 end;
53 with Childs.AddList('bridge', 'Bridge interfaces') do begin
54 ValueDefs.AddString('fast-forward', '');
55 ValueDefs.AddInteger('mtu', 0);
56 ValueDefs.AddString('name', '');
57 ValueDefs.AddString('protocol-mode', '');
58 end;
59 end;
60 with Childs.AddNew('ip', 'IP options') do begin
61 with Childs.AddList('address', 'Address management') do begin
62 ValueDefs.AddNew('address', vtString);
63 ValueDefs.AddNew('network', vtString);
64 ValueDefs.AddNew('interface', vtString);
65 end;
66 Childs.AddList('pool', 'IP address pool');
67 Childs.AddFields('settings', '');
68 Childs.AddNew('route', 'Route management');
69 Childs.AddNew('dns', 'DNS settings');
70 end;
71 with Childs.AddNew('queue', 'Bandwidth management') do begin
72 Childs.AddNew('interface', 'Queue type setting for interface');
73 with Childs.AddList('tree', 'Sophisticated Bandwidth management') do begin
74 ValueDefs.AddInteger('max-limit', 0);
75 ValueDefs.AddInteger('limit-at', 0);
76 ValueDefs.AddInteger('packet-mark', 0);
77 ValueDefs.AddString('name', '');
78 ValueDefs.AddString('parent', '');
79 end;
80 Childs.AddNew('simple', 'Simple Bandwidth management');
81 Childs.AddNew('type', 'Queue type');
82 end;
83 with Childs.AddNew('system', 'System information and utilities') do begin
84 with Childs.AddFields('identity', 'System identity') do begin
85 ValueDefs.AddString('name', '');
86 Values.Init(ValueDefs);
87 end;
88 with Childs.AddFields('routerboard', 'Routerboard options') do begin
89 ValueDefs.AddBool('routerboard', False);
90 ValueDefs.AddString('model', '');
91 ValueDefs.AddString('serial-number', '');
92 ValueDefs.AddString('firmware-type', '');
93 Values.Init(ValueDefs);
94 with Childs.AddFields('setting', '') do begin
95 ValueDefs.AddBool('auto-upgrade', False);
96 ValueDefs.AddInteger('baud-rate', 115200);
97 ValueDefs.AddInteger('cpu-frequency', 0);
98 Values.Init(ValueDefs);
99 end;
100 end;
101 end;
102 Childs.AddNew('tool', 'Diagnostics tools');
103 Childs.AddCustom('file', 'Local router file storage', TContextFile);
104 end;
105end;
106
107end.
108
Note: See TracBrowser for help on using the repository browser.