mirror of
git://scm.dxcluster.org/scm/spider
synced 2024-09-21 07:47:10 +00:00
fix DXCommandmode::run_cmd to detect errors earlier
Also fix localhost detection better both for IPV4 and IPV6 systems. Add CTY1801 cty changes.
This commit is contained in:
parent
db1ab4fb25
commit
cf757a24d8
6
Changes
6
Changes
@ -1,3 +1,9 @@
|
||||
19Feb08=======================================================================
|
||||
1. Added CTY-1801 cty.dat data.
|
||||
2. Fix problem with entering non-ascii data and then executing commands that
|
||||
are guessed from the "cleaned up" version of the string. Now if you enter
|
||||
commands with invalid characters, it will error immediately.
|
||||
3. fix a problem detecting IPV4 localhost on IPV6 enabled systems.
|
||||
10Feb08=======================================================================
|
||||
1. sort sh/node output. Also show more information.
|
||||
05Feb08=======================================================================
|
||||
|
49
data/cty.dat
49
data/cty.dat
@ -19,7 +19,7 @@ Fiji: 32: 56: OC: -18.10: -178.40: -12.0: 3D2:
|
||||
Conway Reef: 32: 56: OC: -21.40: -174.40: -13.0: 3D2/c:
|
||||
3D2CI,3D2CY;
|
||||
Rotuma: 32: 56: OC: -12.30: -177.70: -12.0: 3D2/r:
|
||||
3D2RR,3D2RX;
|
||||
3D2AG/P,3D2RR,3D2RX;
|
||||
Swaziland: 38: 57: AF: -26.30: -31.10: -2.0: 3DA:
|
||||
3DA;
|
||||
Tunisia: 33: 37: AF: 36.80: -10.20: -1.0: 3V:
|
||||
@ -54,7 +54,7 @@ Israel: 20: 39: AS: 31.80: -35.20: -2.0: 4X:
|
||||
Libya: 34: 38: AF: 32.50: -12.50: -2.0: 5A:
|
||||
5A;
|
||||
Cyprus: 20: 39: AS: 35.20: -33.40: -2.0: 5B:
|
||||
5B,C4,H2,P3;
|
||||
5B,C4,EURO,H2,P3;
|
||||
Tanzania: 37: 53: AF: -7.00: -39.50: -3.0: 5H:
|
||||
5H,5I;
|
||||
Nigeria: 35: 46: AF: 6.50: -3.40: -1.0: 5N:
|
||||
@ -339,7 +339,7 @@ Shetland: 14: 27: EU: 60.40: 1.50: 0.0: *GM/s:
|
||||
GM4SLV,GM4SSA,GM4SWU,GM4WXQ,GM4ZHL,GM7AFE,GM7GWW,GM8LNH,GM8MMA,GM8YEC,
|
||||
MM0LSM,MM0XAU,MM0ZAL,MM1FJM,MM3VQO,MM5PSL,MS0ZCG;
|
||||
Guernsey: 14: 27: EU: 49.50: 2.70: 0.0: GU:
|
||||
2P,2U,GP,GU,MP,MU,GB0GUC,GB0JAG,GB0ON,GB2ECG,GB2GU,GB50LIB;
|
||||
2P,2U,GP,GU,MP,MU,GB0GUC,GB0JAG,GB0ON,GB0U,GB2ECG,GB2GU,GB50LIB;
|
||||
Wales: 14: 27: EU: 51.50: 3.20: 0.0: GW:
|
||||
2C,2W,2X,2Y,GC,GW,MC,MW,GB0CCE,GB0CLC,GB0CVA,GB0GCR,GB0GIW,GB0GLV,GB0HEL,
|
||||
GB0HMT,GB0ML,GB0MPA,GB0MWL,GB0NEW,GB0PSG,GB0RPO,GB0RSC,GB0SDD,GB0SH,
|
||||
@ -450,9 +450,9 @@ United States: 05: 08: NA: 43.00: 87.90: 5.0: K:
|
||||
KH6QAI(3)[6],KH6QAJ(3)[6],KH6RW(3)[6],KI6DY(4)[7],KK9A(5),KL0ET(4)[8],
|
||||
KL0LN(4)[8],KL1IF(4)[8],KL7FDQ(3)[6],KL7WP(3)[6],KL7XX(4)[8],KM4FO(4),
|
||||
KM6JD(5)[8],KN4Q(4),KN4QS(4)[7],KN5H(3)[6],KN6RO(5)[8],KN8J(5),KO7X(4)[7],
|
||||
KP2N(5)[8],KP4E(4)[8],KS7T(4)[6],KU1CW(4)[7],KU8E(5),KY1V(4),KY4AA(4),
|
||||
KY4Z(4)[7],N0AX(3)[6],N1LN(4)[7],N1SZ(4)[7],N1WI(4),N1ZP(4),N2BJ(4),
|
||||
N2BJL(5),N2IC(4)[7],N2LA(4)[7],N2NB(3)[6],N2WN(4),N3AIU(4)[7],N3BB(4)[7],
|
||||
KP2N(5)[8],KS7T(4)[6],KU1CW(4)[7],KU8E(5),KY1V(4),KY4AA(4),KY4Z(4)[7],
|
||||
N0AX(3)[6],N1LN(4)[7],N1SZ(4)[7],N1WI(4),N1ZP(4),N2BJ(4),N2BJL(5),
|
||||
N2IC(4)[7],N2LA(4)[7],N2NB(3)[6],N2WN(4),N3AIU(4)[7],N3BB(4)[7],
|
||||
N3ZZ(3)[6],N4CVO(4),N4DD(4),N4DW(4),N4GK(4),N4GN(4),N4IR(4),N4IRR(5),
|
||||
N4JF(4),N4KG(4),N4KZ(4),N4NO(4),N4OGW(4)[7],N4QS(4),N4SL(3)[6],N4TN(4),
|
||||
N4TZ(4),N4UW(4),N4VV(4),N4XM(4),N4ZZ(4),N6AR(5)[8],N6MW(5)[8],N6MWA(3)[6],
|
||||
@ -462,20 +462,21 @@ United States: 05: 08: NA: 43.00: 87.90: 5.0: K:
|
||||
NH7C(5)[8],NJ4I(4),NL7AU(5)[8],NL7CO(4)[7],NL7XM(5)[8],NP3D(5)[8],NQ4U(4),
|
||||
NU4B(4),NU4BP(5),NW7MT(4)[6],NW8U(5),NX9T(5),NY4N(4),NY6DX(5)[8],
|
||||
W0RLI(3)[6],W0UCE(5)[8],W0YK(3)[6],W0YR(5)[8],W0YRN(4)[7],W0ZZ(3)[6],
|
||||
W0ZZQ(4)[7],W1DY(4)[7],W1DYH(5)[8],W1DYJ(5)[8],W1MVY(3)[6],W1RH(3)[6],
|
||||
W1SRD(3)[6],W2OO(4),W2VJN(3)[6],W3CP(3)[6],W3HDH(4),W4BCG(4),W4CID(4),
|
||||
W4DAN(4),W4DHE(4),W4DVG(4),W4EEH(4),W4EF(3)[6],W4FMS(4),W4GKM(4),W4HZD(4),
|
||||
W4JSI(4),W4KW(4),W4LC(4),W4LIA(4),W4NBS(4),W4NI(4),W4NTI(4),W4NZ(4),
|
||||
W4PA(4),W4RYW(4),W4TDB(4),W4TYU(4),W4YOK(4)[7],W5KI(5)[8],W5REA(5)[8],
|
||||
W6AAN(5)[8],W6DSQ(4)[8],W6FC(5)[8],W6IHG(5)[8],W6JV(5)[8],W6LFB(4)[7],
|
||||
W6NWS(5)[8],W6TER(4)[7],W6UB(4)[8],W6XR(5)[8],W6YJ(4)[7],W7FG(4)[7],
|
||||
W7LPF(5)[8],W7LR(4)[6],W7LRD(3)[6],W7QF(5)[8],W7SE(4)[7],W8AEF(3)[6],
|
||||
W8FJ(5),W8HGH(5),W8TN(5),W8WEJ(5),W8ZA(5),W9GE(5),W9GEN(4),W9IGJ(5),
|
||||
W9MAK(3)[6],W9NGA(3)[6],WA0KDS(3)[6],WA1FCN(4),WA1MKE(4),WA1UJU(4),
|
||||
WA2MNO(4)[7],WA4GLH(4),WA4JA(4),WA4OSD(4),WA5VGI(3)[6],WA8WV(5),WB2ORD(4),
|
||||
WB4YDL(4),WB4ZBI(4),WB6BWZ(5)[8],WB8YQJ(3)[6],WB8YYY(5),WD4K(4),WD4OHD(4),
|
||||
WG7Y(4)[7],WH0AI(4)[8],WH6ASW/M(3)[6],WJ9B(5),WL7BPY(4)[7],WL7K(3)[6],
|
||||
WN4M(4),WO4O(4),WO5D(5)[8],WP4JBG(4)[8],WS4Y(4)[7],WT5L(5)[8],WX4TM(4);
|
||||
W0ZZQ(4)[7],W1AA/MSC(5)[8],W1DY(4)[7],W1DYH(5)[8],W1DYJ(5)[8],W1MVY(3)[6],
|
||||
W1RH(3)[6],W1SRD(3)[6],W2OO(4),W2VJN(3)[6],W3CP(3)[6],W3HDH(4),W4BCG(4),
|
||||
W4CID(4),W4DAN(4),W4DHE(4),W4DVG(4),W4EEH(4),W4EF(3)[6],W4FMS(4),W4GKM(4),
|
||||
W4HZD(4),W4JSI(4),W4KW(4),W4LC(4),W4LIA(4),W4NBS(4),W4NI(4),W4NTI(4),
|
||||
W4NZ(4),W4PA(4),W4RYW(4),W4TDB(4),W4TYU(4),W4YOK(4)[7],W5KI(5)[8],
|
||||
W5REA(5)[8],W6AAN(5)[8],W6DSQ(4)[8],W6FC(5)[8],W6IHG(5)[8],W6JV(5)[8],
|
||||
W6LFB(4)[7],W6NWS(5)[8],W6TER(4)[7],W6UB(4)[8],W6XR(5)[8],W6YJ(4)[7],
|
||||
W7FG(4)[7],W7LPF(5)[8],W7LR(4)[6],W7LRD(3)[6],W7QF(5)[8],W7SE(4)[7],
|
||||
W8AEF(3)[6],W8FJ(5),W8HGH(5),W8TN(5),W8WEJ(5),W8ZA(5),W9GE(5),W9GEN(4),
|
||||
W9IGJ(5),W9MAK(3)[6],W9NGA(3)[6],WA0KDS(3)[6],WA1FCN(4),WA1MKE(4),
|
||||
WA1UJU(4),WA2MNO(4)[7],WA4GLH(4),WA4JA(4),WA4OSD(4),WA5VGI(3)[6],WA8WV(5),
|
||||
WB2ORD(4),WB4YDL(4),WB4ZBI(4),WB6BWZ(5)[8],WB8YQJ(3)[6],WB8YYY(5),WD4K(4),
|
||||
WD4OHD(4),WG7Y(4)[7],WH0AI(4)[8],WH6ASW/M(3)[6],WJ9B(5),WL7BPY(4)[7],
|
||||
WL7K(3)[6],WN4M(4),WO4O(4),WO5D(5)[8],WP4JBG(4)[8],WS4Y(4)[7],WT5L(5)[8],
|
||||
WX4TM(4);
|
||||
Guantanamo Bay: 08: 11: NA: 19.90: 75.20: 5.0: KG4:
|
||||
KG4,KG44;
|
||||
Mariana Is.: 27: 64: OC: 15.20: -145.80: -10.0: KH0:
|
||||
@ -676,7 +677,7 @@ Mali: 35: 46: AF: 12.70: 8.00: 0.0: TZ:
|
||||
TZ;
|
||||
European Russia: 16: 29: EU: 55.80: -37.60: -3.0: UA:
|
||||
R,RD4W[30],RK4W[30],RM4W[30],RN4W[30],RU4W[30],RV4W[30],RW4W[30],U,
|
||||
UA4W[30],R7C,R7C/1,R7C/3,R7C/4;
|
||||
UA4W[30],R245GS,R7C,R7C/1,R7C/3,R7C/4;
|
||||
Kaliningrad: 15: 29: EU: 55.00: -20.50: -2.0: UA2:
|
||||
R2,RA2,RB2,RC2,RD2,RE2,RF2,RG2,RH2,RI2,RJ2,RK2,RL2,RM2,RN2,RO2,RP2,RQ2,
|
||||
RR2,RS2,RT2,RU2,RV2,RW2,RX2,RY2,RZ2,U2,UA2,UB2,UC2,UD2,UE2,UF2,UG2,UH2,
|
||||
@ -764,7 +765,7 @@ Canada: 05: 09: NA: 45.00: 80.00: 4.0: VE:
|
||||
VE2III(2),VE2IM(2),VE2KK(2),VE2MTA(2),VE2MTB(2),VE2NN(2),VE2NRK(2),
|
||||
VE2PR(2),VE2QRZ(2),VE2RB(2),VE2TVU(2),VE2UA(2),VE2VH(2),VE2WDX(2),
|
||||
VE2WT(2),VE2XAA/2(2),VE2XY(2),VE2YM(2),VE2Z(2),VE2ZC(5),VE2ZM(5),VE2ZV(5),
|
||||
VE3EY/2(2),VE3NE/2(2),VE3RHJ/2(2),VE8AJ(2),VE8PW(2),VE8RCS(2),VER20080110,
|
||||
VE3EY/2(2),VE3NE/2(2),VE3RHJ/2(2),VE8AJ(2),VE8PW(2),VE8RCS(2),VER20080212,
|
||||
VY0AA(4)[3],VY0PW(4)[3],VY2MGY/3(4)[4];
|
||||
Australia: 30: 59: OC: -22.00: -135.00: -10.0: VK:
|
||||
AX,VH,VI,VJ,VK,VL,VM,VN,VZ;
|
||||
@ -782,7 +783,7 @@ Mellish Reef: 30: 56: OC: -17.60: -155.80: -10.0: VK9M:
|
||||
Norfolk I.: 32: 60: OC: -29.00: -168.00: -11.5: VK9N:
|
||||
AX9,VH9,VI9,VJ9,VK9,VK9CN,VL9,VM9,VN9,VZ9;
|
||||
Willis I.: 30: 55: OC: -16.30: -149.50: -10.0: VK9W:
|
||||
AX9W,VH9W,VI9W,VJ9W,VK9FW,VK9KW,VK9W,VL9W,VM9W,VN9W,VZ9W;
|
||||
AX9W,VH9W,VI9W,VJ9W,VK9FW,VK9KW,VK9W,VL9W,VM9W,VN9W,VZ9W,VK9DWX;
|
||||
Christmas I.: 29: 54: OC: -10.50: -105.70: -7.0: VK9X:
|
||||
AX9X,VH9X,VI9X,VJ9X,VK9FX,VK9KX,VK9X,VL9X,VM9X,VN9X,VZ9X;
|
||||
Anguilla: 08: 11: NA: 18.30: 63.00: 4.0: VP2E:
|
||||
@ -802,7 +803,7 @@ Falkland Is.: 13: 16: SA: -51.70: 57.90: 4.0: VP8:
|
||||
South Georgia: 13: 73: SA: -54.30: 36.80: 2.0: VP8/g:
|
||||
VP8DKX,VP8SGK;
|
||||
South Shetland: 13: 73: SA: -62.00: 58.30: 4.0: VP8/h:
|
||||
DT8A,HF0POL,HL8KSJ,LU/R1ANF,LU1ZC,LZ0A,R1ANF,VP8/LZ1UQ,VP8DJK;
|
||||
DT8A,ED3RKL,HF0POL,HL8KSJ,LU/R1ANF,LU1ZC,LZ0A,R1ANF,VP8/LZ1UQ,VP8DJK;
|
||||
South Orkney: 13: 73: SA: -60.00: 45.50: 3.0: VP8/o:
|
||||
AY1ZA,LU1ZA,LU2ERA/Z;
|
||||
South Sandwich: 13: 73: SA: -57.00: 26.70: 2.0: VP8/s:
|
||||
|
@ -34,6 +34,7 @@
|
||||
'3D2/C' => '311',
|
||||
'3D2/F' => '268',
|
||||
'3D2/R' => '314',
|
||||
'3D2AG/P' => '314',
|
||||
'3D2CI' => '311',
|
||||
'3D2CY' => '311',
|
||||
'3D2RR' => '314',
|
||||
@ -795,6 +796,7 @@
|
||||
'EC8' => '36',
|
||||
'EC9' => '347,348',
|
||||
'ED' => '34',
|
||||
'ED3RKL' => '208',
|
||||
'ED5ON/6' => '35',
|
||||
'ED6' => '35',
|
||||
'ED8' => '36',
|
||||
@ -828,6 +830,7 @@
|
||||
'ES' => '190',
|
||||
'ET' => '41',
|
||||
'EU' => '178',
|
||||
'EURO' => '278',
|
||||
'EV' => '178',
|
||||
'EW' => '178',
|
||||
'EX' => '186',
|
||||
@ -956,6 +959,7 @@
|
||||
'GB0TCH' => '62',
|
||||
'GB0TD' => '66',
|
||||
'GB0TTT' => '66',
|
||||
'GB0U' => '65',
|
||||
'GB0WCY' => '61',
|
||||
'GB0WOA' => '62',
|
||||
'GB0WRC' => '66',
|
||||
@ -1647,7 +1651,6 @@
|
||||
'KP2N' => '220',
|
||||
'KP3' => '115',
|
||||
'KP4' => '115',
|
||||
'KP4E' => '220',
|
||||
'KP5' => '116',
|
||||
'KQ0' => '468,474,478,485,486,490,491,503',
|
||||
'KQ1' => '469,481,483,492,501,508',
|
||||
@ -2501,6 +2504,7 @@
|
||||
'R1FJ' => '174',
|
||||
'R1MV' => '312',
|
||||
'R2' => '175',
|
||||
'R245GS' => '173,419,420,421,422',
|
||||
'R3' => '420',
|
||||
'R30ZF' => '176,426,431',
|
||||
'R35NP' => '176,426,431',
|
||||
@ -3390,7 +3394,7 @@
|
||||
'VE8PW' => '191',
|
||||
'VE8RCS' => '191',
|
||||
'VE9' => '437',
|
||||
'VER20080110' => '191',
|
||||
'VER20080212' => '191',
|
||||
'VERSION' => '537',
|
||||
'VF' => '435',
|
||||
'VF0' => '191',
|
||||
@ -3454,6 +3458,7 @@
|
||||
'VK9C' => '195',
|
||||
'VK9CL' => '193',
|
||||
'VK9CN' => '197',
|
||||
'VK9DWX' => '198',
|
||||
'VK9FC' => '195',
|
||||
'VK9FL' => '193',
|
||||
'VK9FM' => '196',
|
||||
@ -3588,6 +3593,7 @@
|
||||
'W0ZZ' => '220',
|
||||
'W0ZZQ' => '220',
|
||||
'W1' => '469,481,483,492,501,508',
|
||||
'W1AA/MSC' => '220',
|
||||
'W1DY' => '220',
|
||||
'W1DYH' => '220',
|
||||
'W1DYJ' => '220',
|
||||
|
@ -484,6 +484,20 @@ sub send_ans
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
sub _error_out
|
||||
{
|
||||
my $self = shift;
|
||||
my $e = shift;
|
||||
if (++$self->{errors} > $maxerrors) {
|
||||
$self->send($self->msg('e26'));
|
||||
$self->disconnect;
|
||||
return ();
|
||||
} else {
|
||||
return ($self->msg($e));
|
||||
}
|
||||
}
|
||||
|
||||
#
|
||||
# this is the thing that runs the command, it is done like this for the
|
||||
# benefit of remote command execution
|
||||
@ -497,19 +511,22 @@ sub run_cmd
|
||||
my $cmdline = shift;
|
||||
my @ans;
|
||||
|
||||
|
||||
return () if length $cmdline == 0;
|
||||
|
||||
|
||||
# split the command line up into parts, the first part is the command
|
||||
my ($cmd, $args) = split /\s+/, $cmdline, 2;
|
||||
$args = "" unless defined $args;
|
||||
|
||||
if ($cmd) {
|
||||
|
||||
# check cmd
|
||||
if ($cmd =~ m|^/| || $cmd =~ m|[^-?\w/]|) {
|
||||
LogDbg('DXCommand', "cmd: invalid characters in '$cmd'");
|
||||
return $self->_error_out('e1');
|
||||
}
|
||||
|
||||
# strip out // on command only
|
||||
$cmd =~ s|//|/|g;
|
||||
$cmd =~ s|^/||g; # no leading / either
|
||||
$cmd =~ s|[^-?\w/]||g; # and no funny characters either
|
||||
|
||||
my ($path, $fcmd);
|
||||
|
||||
@ -520,7 +537,7 @@ sub run_cmd
|
||||
if ($acmd) {
|
||||
($cmd, $args) = split /\s+/, "$acmd $args", 2;
|
||||
$args = "" unless defined $args;
|
||||
dbg("aliased cmd: $cmd $args") if isdbg('command');
|
||||
dbg("cmd: aliased $cmd $args") if isdbg('command');
|
||||
}
|
||||
|
||||
# first expand out the entry to a command
|
||||
@ -528,26 +545,23 @@ sub run_cmd
|
||||
($path, $fcmd) = search($main::cmd, $cmd, "pl") unless $path && $fcmd;
|
||||
|
||||
if ($path && $cmd) {
|
||||
dbg("path: $cmd cmd: $fcmd") if isdbg('command');
|
||||
dbg("cmd: path $cmd cmd: $fcmd") if isdbg('command');
|
||||
|
||||
my $package = find_cmd_name($path, $fcmd);
|
||||
return ($@) if $@;
|
||||
|
||||
if ($package) {
|
||||
if ($package && DXCommandmode->can($package)) {
|
||||
no strict 'refs';
|
||||
dbg("package: $package") if isdbg('command');
|
||||
dbg("cmd: package $package") if isdbg('command');
|
||||
eval { @ans = &$package($self, $args) };
|
||||
return (DXDebug::shortmess($@)) if $@;
|
||||
} else {
|
||||
dbg("cmd: $package not present") if isdbg('command');
|
||||
return $self->_error_out('e1');
|
||||
}
|
||||
} else {
|
||||
dbg("cmd: $cmd not found") if isdbg('command');
|
||||
if (++$self->{errors} > $maxerrors) {
|
||||
$self->send($self->msg('e26'));
|
||||
$self->disconnect;
|
||||
return ();
|
||||
} else {
|
||||
return ($self->msg('e1'));
|
||||
}
|
||||
return $self->_error_out('e1');
|
||||
}
|
||||
}
|
||||
|
||||
@ -831,14 +845,15 @@ sub find_cmd_name {
|
||||
no strict 'refs';
|
||||
|
||||
if (exists $Cache{$package}) {
|
||||
dbg("Redefining $package") if isdbg('command');
|
||||
dbg("find_cmd_name: Redefining $package") if isdbg('command');
|
||||
undef *$package;
|
||||
} else {
|
||||
dbg("Defining $package") if isdbg('command');
|
||||
dbg("find_cmd_name: Defining $package") if isdbg('command');
|
||||
}
|
||||
|
||||
eval $eval;
|
||||
|
||||
$Cache{$package} = {mtime => $mtime };
|
||||
|
||||
$Cache{$package} = {mtime => $mtime } unless $@;
|
||||
|
||||
}
|
||||
|
||||
|
@ -104,7 +104,7 @@ sub dequeue
|
||||
$msg = uc $msg;
|
||||
if (is_callsign($msg) && $msg !~ m|/| ) {
|
||||
my $sort = $conn->{csort};
|
||||
$sort = 'local' if $conn->{peerhost} eq "127.0.0.1";
|
||||
$sort = 'local' if $conn->{peerhost} =~ /127\.\d+\.\d+\.\d+$/ || $conn->{peerhost} eq '::1';
|
||||
my $uref;
|
||||
if ($main::passwdreq || ($uref = DXUser->get_current($msg)) && $uref->passwd ) {
|
||||
$conn->conns($msg);
|
||||
@ -126,7 +126,7 @@ sub dequeue
|
||||
my $sort = $conn->{csort};
|
||||
$conn->{echo} = $conn->{decho};
|
||||
delete $conn->{decho};
|
||||
$sort = 'local' if $conn->{peerhost} eq "127.0.0.1";
|
||||
$sort = 'local' if $conn->{peerhost} =~ /127\.\d+\.\d+\.\d+$/ || $conn->{peerhost} eq '::1';
|
||||
$conn->{usedpasswd} = 1;
|
||||
$conn->to_connected($conn->{call}, 'A', $sort);
|
||||
} else {
|
||||
|
@ -11,6 +11,6 @@ use vars qw($version $subversion $build);
|
||||
|
||||
$version = '1.54';
|
||||
$subversion = '0';
|
||||
$build = '205';
|
||||
$build = '206';
|
||||
|
||||
1;
|
||||
|
Loading…
Reference in New Issue
Block a user