summaryrefslogtreecommitdiffstats
path: root/perl-install/standalone/drakauth
blob: 8fdb4089645dd39c02e5bfffa54b8ea2d566c4ae (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#!/usr/bin/perl

use lib qw(/usr/lib/libDrakX);

use standalone;     #- warning, standalone must be loaded very first, for 'explanations'

use common;
use interactive;
use authentication;
use network::network;

my $netc = {};
my $intf = {};
read_all_conf('', $netc, $intf);

my $in = 'interactive'->vnew('su');


my $authentication = {}; # TODO

my $kind = authentication::to_kind($authentication);

main:
$in->ask_from(N("Authentication"), authentication::kind2description(),
	      [ 
	       { label => N("Authentication"), val => \$kind, type => 'list' , list => [ authentication::kinds() ], format => \&authentication::kind2name },
	      ]) or $in->exit;

authentication::ask_parameters($in, $netc, $authentication, $kind) or goto main;

eval { 
    authentication::set($in, $netc, $authentication, sub { my ($f) = @_; $f->() });
    network::network::write_conf("$::prefix/etc/sysconfig/network", $netc);
};
if (my $err = $@) {
    $in->ask_warn(N("Error"), formatError($err));
    goto main;
}


$in->exit;