diff options
Diffstat (limited to 'ftp_wizard')
-rw-r--r-- | ftp_wizard/ftp.wiz | 90 | ||||
-rw-r--r-- | ftp_wizard/scripts/ProFtpconf.pm | 33 |
2 files changed, 22 insertions, 101 deletions
diff --git a/ftp_wizard/ftp.wiz b/ftp_wizard/ftp.wiz index 843b78df..e54c90c6 100644 --- a/ftp_wizard/ftp.wiz +++ b/ftp_wizard/ftp.wiz @@ -34,7 +34,7 @@ <Page helpURL="file:/usr/share/doc/mandrake/${LANG}/ref.html/wiz-ftp.html" name="welcome" - jumpScript="__WIZ_HOME__/common/scripts/check.sh root wiz_ip_net" + func="check" executionLevel="NORMAL" nextFinish="false" canBack="true" @@ -54,7 +54,7 @@ </Target> <Target - targetName="error_need_net" + targetName="error_dhcp" jumpIndex="2" > </Target> @@ -126,100 +126,26 @@ </Page> <Page - helpURL="file:/usr/share/doc/mandrake/${LANG}/ref.html/wiz-ftp.html" - name="error_need_net" - subWizard="__WIZ_HOME__/server_wizard/server.wiz" + helpURL="file:/usr/share/doc/mandrake/${LANG}/ref.html/wiz-web.html" + name="error_dhcp" + jumpPage="ftp connections" executionLevel="NORMAL" nextFinish="false" - canBack="false" + canBack="true" canCancel="true" > <Info name="errorLabel" alignement="Center" - helpText="Network not configured yet" - guiType="label" - fontName="Default" - fontStyle="bold" - fontSize="14" - > - </Info> - - <Info - name="info23" - alignement="Center" - guiType="label" - fontName="Default" - fontStyle="bold" - fontSize="14" - > - </Info> - - <Info - name="info22" - alignement="Center" - helpText="You have to configure the basic network parameters before launch this wizard." - guiType="label" - fontName="Default" - fontStyle="plain" - fontSize="11" - > - </Info> - - <Info - name="info25" - alignement="Center" - helpText="Press next to configure these parameters now, or Cancel to exit this wizard." - guiType="label" - fontName="Default" - fontStyle="plain" - fontSize="11" - > - </Info> - - <Info - name="info26" - alignement="Center" - guiType="label" - fontName="Default" - fontStyle="plain" - fontSize="11" - > - </Info> - - <Info - name="info24" - alignement="Center" - helpText="If you choose to configure now, you will automatically continue" + helpText="Warning\nYou are in dhcp, server may doesn't + work with your configuration." guiType="label" fontName="Default" fontStyle="plain" fontSize="11" > </Info> - - <Info - name="info27" - alignement="Center" - helpText="with the FTP configuration" - guiType="label" - fontName="Default" - fontStyle="plain" - fontSize="11" - > - </Info> - </Page> - - <Page - helpURL="file:/usr/share/doc/mandrake/${LANG}/ref.html/wiz-ftp.html" - name="server launcher" - jumpPage="ftp connections" - executionLevel="DEBUG" - nextFinish="false" - canBack="true" - canCancel="true" - > </Page> <Page diff --git a/ftp_wizard/scripts/ProFtpconf.pm b/ftp_wizard/scripts/ProFtpconf.pm index 0893099d..5e737bbc 100644 --- a/ftp_wizard/scripts/ProFtpconf.pm +++ b/ftp_wizard/scripts/ProFtpconf.pm @@ -1,11 +1,12 @@ #!/usr/bin/perl package ProFtpconf; +require "__WIZ_HOME__/common/scripts/DrakconnectConf.pm"; use MDK::Common; use strict; require "__WIZ_HOME__/common/scripts/Vareqval.pm"; -sub true_or_false { +sub true { my ($val) = @_; $val eq "1" || $val eq "\'1\'" || $val eq "\"1\"" || @@ -14,31 +15,25 @@ sub true_or_false { 0; } -sub do_it { - my %mdk = Vareqval->get("/etc/sysconfig/mdk_serv"); - $mdk{wiz_ftp_external} = $ENV{wiz_ftp_external} if defined $ENV{wiz_ftp_external} or - die "wiz_ftp_external not defined in env !"; - $mdk{wiz_ftp_internal} = $ENV{wiz_ftp_internal} if defined $ENV{wiz_ftp_internal} or - die "wiz_ftp_internal not defined in env !"; - $mdk{wiz_ftp_external} = true_or_false($mdk{wiz_ftp_external}); - $mdk{wiz_ftp_internal} = $mdk{wiz_ftp_external} ? 1 : true_or_false($mdk{wiz_ftp_internal}); - my $wiz_ftp_internal = $mdk{wiz_ftp_internal}; - my $wiz_ftp_external = $mdk{wiz_ftp_external}; - my $wiz_device = $mdk{wiz_device} if defined $mdk{wiz_device} or - die "wiz_device not in /etc/sysconfig/mdk_serv"; - Vareqval->commit("/etc/sysconfig/mdk_serv", \%mdk); +my $o = DrakconnectConf->new(); + +sub check { + $> and return 1; + $o->is_dhcp() and return 2; + 0; +} + +sub do_it { + my $wiz_ftp_internal = $ENV{wiz_ftp_external} ? 1 : true $ENV{wiz_ftp_internal}; + my $wiz_ftp_external = true $ENV{wiz_ftp_external}; my $file = "/etc/proftpd.conf"; die "no ftp configuration file found ! warning." if (!-f $file); MDK::Common::cp_af($file, $file . ".orig"); open(NEW, "< $file") or die "error while opening $file: $!"; my $allow = "all"; if ($wiz_ftp_internal && !$wiz_ftp_external) { - my %mdk = Vareqval->get("/etc/sysconfig/network-scripts/ifcfg-".$wiz_device); - my $wiz_ip_net = $mdk{NETWORK} if defined $mdk{NETWORK} or - die "NETWORK not in /etc/sysconfig/network-scripts/ifcfg-".$wiz_device; - ($wiz_ip_net) = ($wiz_ip_net =~ /(.*)\..*/); - $allow = "$wiz_ip_net."; + ($allow) = $o->get_from_known_dev("IP") =~ qr/^(\d{1,3}\.\d{1,3}\.\d{1,3}\.)\d{1,3}$/; } elsif (!$wiz_ftp_external) { $allow = "none"; |