summaryrefslogtreecommitdiffstats
path: root/perl-install/standalone/drakauth
blob: 6a43a2f872ed100f7c7c0c91a3ddfa61680ad386 (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;

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

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


my $authentication = {}; # TODO

my $kind = authentication::to_kind($authentication);
my $meta_class = { getVarsFromSh("/etc/sysconfig/system") }->{META_CLASS};
my @kinds = authentication::kinds($in->do_pkgs, $meta_class);

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

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

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


$in->exit;