dhcpd/0040755000567100000120000000000010655706245011636 5ustar jcameronwheeldhcpd/config.info.ru_SU0100644000567100000120000000132110655706244015005 0ustar jcameronwheeldhcpd_conf= DHCP,0 dhcpd_nocols= ,0 dhcpd_path= DHCP,0 hostnet_list= ,1,0-,1- interfaces_type= ,4,redhat-Redhat,mandrake-Mandrake,suse-SuSE,debian-Debian,caldera-Caldera,-Webmin lease_file= DHCP,0 lease_sort= ,1,0- ,1- IP,2- lease_tz= ,1,0-GMT,1- line1= ,11 line2= ,11 pid_file= PID DHCP,0 restart_cmd= ,3, start_cmd= DHCP,3, dhcpd/config-turbo-linux0100644000567100000120000000032410655706244015307 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/etc/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/config-openbsd0100644000567100000120000000032710655706244014454 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/var/db/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/config.info.zh_CN0100644000567100000120000000024210655706244014752 0ustar jcameronwheeldhcpd_conf=DHCPļ,0 dhcpd_path=DHCPִļ,0 interfaces=DHCP,3,Զ pid_file=DHCPpidļ·,0 lease_file=DHCPļ,0 dhcpd/dhcpd-lib.pl0100755000567100000120000005627010655706244014032 0ustar jcameronwheel# dhcpd-lib.pl # Functions for parsing the DHCPD config file do '../web-lib.pl'; &init_config(); do '../ui-lib.pl'; # get_parent_config() # Returns a dummy parent structure for the DHCP config sub get_parent_config { return $get_parent_config_cache if ($get_parent_config_cache); return $get_parent_config_cache = { 'file' => $config{'dhcpd_conf'}, 'members' => &get_config(), 'line' => -1, 'fline' => -1, 'eline' => $get_config_lines }; } # get_config() # Parses the DHCPD config file into a data structure sub get_config { return \@get_config_cache if (@get_config_cache); local @rv = &get_config_file($config{'dhcpd_conf'}, \$get_config_lines); @get_config_cache = @rv; return \@get_config_cache; } # get_config_file(file, [&lines]) sub get_config_file { local (@tok, $i, $j, @rv, $c); $i = 0; $j = 0; local $lines = &tokenize_file($_[0], \@tok); ${$_[1]} = $lines if ($_[1]); while($i < @tok) { local $str = &parse_struct(\@tok, \$i, $j++, $_[0]); if ($str) { if ($str->{'name'} eq 'include') { # Expand the include directive local $p = $str->{'values'}->[0]; if ($p !~ /^\//) { $config{'dhcpd_conf'} =~ /^(\S+)\//; $p = "$1/$p"; } local @inc = &get_config_file($p); $j--; foreach $c (@inc) { $c->{'index'} += $j; } push(@rv, @inc); $j += scalar(@inc); } else { push(@rv, $str); } } } return @rv; } # tokenize_file(file, &tokens) sub tokenize_file { local $lines = 0; local ($line, $cmode); open(FILE, $_[0]); while($line = ) { # strip comments $line =~ s/\r|\n//g; $line =~ s/^([^"#]*)#.*$/$1/g; $line =~ s/^([^"]*)\/\/.*$/$1/g; $line =~ s/^([^"]*)\s+#.*$/$1/g; # remove stuff after #, unless $line =~ s/^(.*".*".*)\s+#.*$/$1/g; # it is inside quotes $line =~ s/\\\\/\\134/g; # convert \\ into \134 $line =~ s/([^\\])\\"/$1\\042/g; # convert escaped quotes to \042 while(1) { if (!$cmode && $line =~ /\/\*/ && $line !~ /\".*\/\*.*\"/) { # start of a C-style comment $cmode = 1; $line =~ s/\/\*.*$//g; } elsif ($cmode) { if ($line =~ /\*\//) { # end of comment $cmode = 0; $line =~ s/^.*\*\///g; } else { $line = ""; last; } } else { last; } } # split line into tokens while(1) { if ($line =~ /^\s*"([^"]*)"(.*)$/) { push(@{$_[1]}, [ $1, 1, $lines ]); $line = $2; } elsif ($line =~ /^\s*([{};,])(.*)$/) { push(@{$_[1]}, [ $1, 0, $lines ]); $line = $2; } elsif ($line =~ /^\s*([^{}; \t,]+)(.*)$/) { push(@{$_[1]}, [ $1, 0, $lines ]); $line = $2; } else { last; } } $lines++; } close(FILE); #print STDERR "tokenized $_[0] into $lines\n"; return $lines; } # parse_struct(&tokens, &token_num, index, file) # A structure can either have one value, or a list of values. # Pos will end up at the start of the next structure sub parse_struct { local(%str, $i, $t, @vals, @quotes, $str, @text); local $lref = &read_file_lines($_[3]); $i = ${$_[1]}; $str{'name'} = $_[0]->[$i]->[0]; $str{'line'} = $_[0]->[$i]->[2]; if ($str{'line'} && $lref->[$str{'line'}-1] =~ /^\s*(#|\/\/)\s*(.*)/) { # Previous line is a comment, so include it in the directive $str{'line'}--; $str{'comment'} = $2; } #print STDERR "parsing at line $str{'line'} = $str{'name'}\n"; while(1) { # Add values between directive name and { or ; $t = $_[0]->[++$i]; if ($t->[0] eq "{" || $t->[0] eq ";") { last; } elsif (!defined($t->[0])) { ${$_[1]} = $i; return undef; } else { push(@vals, $t->[0]); push(@quotes, $t->[1]); } push(@text, $t->[1] ? "\"$t->[0]\"" : $t->[0]); } $str{'values'} = \@vals; $str{'quotes'} = \@quotes; $str{'value'} = $vals[0]; $str{'text'} = join(" ", @text); $str{'index'} = $_[2]; $str{'file'} = $_[3]; $str{'fline'} = $_[0]->[$i]->[2]; if ($t->[0] eq "{") { # contains sub-structures.. parse them local(@mems, $j); $i++; # skip { $str{'type'} = 1; $j = 0; while($_[0]->[$i]->[0] ne "}") { if (!defined($_[0]->[$i]->[0])) { ${$_[1]} = $i; return undef; } $str = &parse_struct($_[0], \$i, $j++, $_[3]); if ($str) { $str->{'parent'} = \%str; push(@mems, $str); } } $str{'members'} = \@mems; $i++; # skip trailing } } else { # only a single value.. $str{'type'} = 0; $i++; # skip trailing ; } $str{'eline'} = $_[0]->[$i-1]->[2]; # ending line is the line number the # trailing ; is on ${$_[1]} = $i; return \%str; } # find(name, &array) sub find { local($c, @rv); foreach $c (@{$_[1]}) { if ($c->{'name'} eq $_[0]) { push(@rv, $c); } } return @rv ? wantarray ? @rv : $rv[0] : wantarray ? () : undef; } # find_value(name, &array) sub find_value { local(@v); @v = &find($_[0], $_[1]); if (!@v) { return undef; } elsif (wantarray) { return map { $_->{'value'} } @v; } else { return $v[0]->{'value'}; } } # choice_input(text, name, &config, [display, option]+) sub choice_input { local($rv, $v, $i, @ops); $rv = "$_[0] "; $v = &find_value($_[1], $_[2]); for($i=3; $i<@_; $i+=2) { @ops = split(/,/, $_[$i+1]); $rv .= "$_[$i]\n"; } return $rv."\n"; } # wide_choice_input(text, name, &config, [display, option]+) sub wide_choice_input { local($rv, $v, $i, @ops); $rv = "$_[0] "; $v = &find_value($_[1], $_[2]); for($i=3; $i<@_; $i+=2) { @ops = split(/,/, $_[$i+1]); $rv .= "$_[$i]\n"; } return $rv."\n"; } # save_choice(name, &parent, indent) sub save_choice { local($nd); if ($in{$_[0]}) { $nd = { 'name' => $_[0], 'values' => [ $in{$_[0]} ] }; } &save_directive($_[1], $_[0], $nd ? [ $nd ] : [ ], $_[2], 1); } # addr_match_input(text, name, &config) # A field for editing a list of addresses, ACLs and partial IP addresses sub addr_match_input { local($v, $rv, $av, @av); $v = &find($_[1], $_[2]); $rv = "$_[0] "; $rv .= "Default "; $rv .= "Listed..
"; foreach $av (@{$v->{'members'}}) { push(@av, $av->{'name'}); } $rv .= "\n"; } sub save_addr_match { local($addr, @vals, $dir); if ($in{"$_[0]_def"}) { &save_directive($_[1], $_[0], [ ], $_[2], 1); } else { foreach $addr (split(/\s+/, $in{$_[0]})) { push(@vals, { 'name' => $addr }); } $dir = { 'name' => $_[0], 'type' => 1, 'members' => \@vals }; &save_directive($_[1], $_[0], [ $dir ], $_[2], 1); } } # address_input(text, name, &config, type) sub address_input { local($v, $rv, $av, @av); $v = &find($_[1], $_[2]); foreach $av (@{$v->{'members'}}) { push(@av, $av->{'name'}); } if ($_[3] == 0) { # text area $rv = "$_[0] "; $rv .= "\n"; } else { $rv = "$_[0] "; $rv .= "\n"; } return $rv; } sub save_address { local($addr, @vals, $dir); foreach $addr (split(/\s+/, $in{$_[0]})) { &check_ipaddress($addr) || &error("'$addr' is not a valid IP address"); push(@vals, { 'name' => $addr }); } $dir = { 'name' => $_[0], 'type' => 1, 'members' => \@vals }; &save_directive($_[1], $_[0], @vals ? [ $dir ] : [ ], $_[2], 1); } # opt_input(text, name, &config, default, size, units) # Returns HTML for an optional text field sub opt_input { local($v, $rv); $v = &find($_[1], $_[2]); $rv = "$_[0] 30 ? " colspan=3>\n" : ">\n"; $rv .= sprintf " $_[3]\n", $v ? "" : "checked"; $rv .= sprintf " ", $v ? "checked" : ""; $rv .= sprintf " $_[5]\n", $v ? $v->{'value'} : ""; return $rv; } # save_opt(name, &func, &parent, [indent], [quote]) # Saves an optional text field sub save_opt { local($dir); if ($in{"$_[0]_def"}) { &save_directive($_[2], $_[0], [ ], $_[3], 1); } elsif ($_[1] && ($err = &{$_[1]}($in{$_[0]}))) { &error($err); } else { $dir = { 'name' => $_[0], 'values' => [ $in{$_[0]} ], 'quotes' => [ $_[4] ] }; &save_directive($_[2], $_[0], [ $dir ], $_[3], 1); } } # save_directive(&parent, [name|&oldvalues], &values, indent, start) # Given a structure containing a directive name, type, values and members # add, update or remove that directive in config structure and data files. # Updating of files assumes that there is no overlap between directives - # each line in the config file must contain part or all of only one directive. sub save_directive { local(@oldv, @newv, $pm, $i, $o, $n, $lref, @nl); $pm = $_[0]->{'members'}; @oldv = ref($_[1]) ? @{$_[1]} : &find($_[1], $pm); @newv = @{$_[2]}; for($i=0; $i<@oldv || $i<@newv; $i++) { if ($i >= @oldv && $_[4]) { # a new directive is being added.. put it at the start of # the parent $lref = $_[0]->{'file'} ? &read_file_lines($_[0]->{'file'}) : [ ]; @nl = &directive_lines($newv[$i], $_[3]); $nline = $_[0]->{'fline'}+1; splice(@$lref, $nline, 0, @nl); &renumber(&get_config(), $nline, $_[0]->{'file'}, scalar(@nl)); &renumber_index($_[0]->{'members'}, 0, 1); $newv[$i]->{'file'} = $_[0]->{'file'}; $newv[$i]->{'line'} = $nline; $newv[$i]->{'eline'} = $nline + scalar(@nl); unshift(@$pm, $newv[$i]); } elsif ($i >= @oldv) { # a new directive is being added.. put it at the end of # the parent $lref = $_[0]->{'file'} ? &read_file_lines($_[0]->{'file'}) : [ ]; @nl = &directive_lines($newv[$i], $_[3]); splice(@$lref, $_[0]->{'eline'}, 0, @nl); &renumber(&get_config(), $_[0]->{'eline'}, $_[0]->{'file'}, scalar(@nl)); $newv[$i]->{'file'} = $_[0]->{'file'}; $newv[$i]->{'line'} = $_[0]->{'eline'}; $newv[$i]->{'eline'} = $_[0]->{'eline'} + scalar(@nl) - 1; push(@$pm, $newv[$i]); } elsif ($i >= @newv) { # a directive was deleted $lref = $oldv[$i]->{'file'} ? &read_file_lines($oldv[$i]->{'file'}) : [ ]; $ol = $oldv[$i]->{'eline'} - $oldv[$i]->{'line'} + 1; splice(@$lref, $oldv[$i]->{'line'}, $ol); &renumber(&get_config(), $oldv[$i]->{'eline'}, $oldv[$i]->{'file'}, -$ol); &renumber_index($_[0]->{'members'}, $oldv[$i]->{'index'}, -1); splice(@$pm, &indexof($oldv[$i], @$pm), 1); } else { # updating some directive $lref = $oldv[$i]->{'file'} ? &read_file_lines($oldv[$i]->{'file'}) : [ ]; @nl = &directive_lines($newv[$i], $_[3]); $ol = $oldv[$i]->{'eline'} - $oldv[$i]->{'line'} + 1; splice(@$lref, $oldv[$i]->{'line'}, $ol, @nl); &renumber(&get_config(), $oldv[$i]->{'eline'}, $oldv[$i]->{'file'}, scalar(@nl) - $ol); $newv[$i]->{'file'} = $_[0]->{'file'}; $newv[$i]->{'line'} = $oldv[$i]->{'line'}; $newv[$i]->{'eline'} = $oldv[$i]->{'line'} + scalar(@nl) - 1; $pm->[&indexof($oldv[$i], @$pm)] = $newv[$i]; } } } # directive_lines(&directive, tabs) # Renders some directive into a number of lines of text sub directive_lines { local(@rv, $v, $m, $i); if ($_[0]->{'comment'}) { push(@rv, ("\t" x $_[1])."# ".$_[0]->{'comment'}); } local $first = "\t" x $_[1]; $first .= "$_[0]->{'name'}"; for($i=0; $i<@{$_[0]->{'values'}}; $i++) { $v = $_[0]->{'values'}->[$i]; if ($_[0]->{'quotes'}->[$i]) { $first .= " \"$v\""; } else { $first .= " $v"; } } push(@rv, $first); if ($_[0]->{'type'}) { # multiple values.. include them as well $rv[$#rv] .= " {"; foreach $m (@{$_[0]->{'members'}}) { push(@rv, &directive_lines($m, $_[1]+1)); } push(@rv, ("\t" x ($_[1]+1))."}"); } else { $rv[$#rv] .= ";"; } return @rv; } # renumber(&directives, line, file, count) # Runs through the given array of directives and increases the line numbers # of all those greater than some line by the given count sub renumber { local($d); local ($list, $line, $file, $count) = @_; return if (!$count); foreach $d (@$list) { if ($d->{'file'} eq $file) { if ($d->{'line'} >= $line) { $d->{'line'} += $count; } if ($d->{'eline'} >= $line) { $d->{'eline'} += $count; } } if ($d->{'type'}) { &renumber($d->{'members'}, $line, $file, $count); } } } # renumber_index(&directives, index, count) sub renumber_index { local($d); foreach $d (@{$_[0]}) { if ($d->{'index'} >= $_[1]) { $d->{'index'} += $_[2]; } } } # directive_diff(&d1, &d2) # Do two directives differ? sub directive_diff { local $i; local ($d1, $d2) = @_; return 1 if ($d1->{'name'} ne $d2->{'name'}); local $l1 = @{$d1->{'values'}}; local $l2 = @{$d2->{'values'}}; return 1 if ($l1 != $l2); for($i=0; $i<$l1; $i++) { return 1 if ($d1->{'values'}->[$i] ne $d2->{'values'}->[$i]); } return 1 if ($d1->{'type'} != $d2->{'type'}); if ($d1->{'type'}) { $l1 = @{$d1->{'members'}}; $l2 = @{$d2->{'members'}}; return 1 if ($l1 != $l2); for($i=0; $i<$l1; $i++) { return 1 if (&directive_diff($d1->{'members'}->[$i], $d2->{'members'}->[$i])); } } return 0; } # group_name(&members, &group) sub group_name { local @opts = &find("option", $_[1]->{'members'}); local ($dn) = grep { $_->{'values'}->[0] eq 'domain-name' } @opts; return $config{'group_name'} == 1 && $dn ? &text('index_gdom',$dn->{'values'}->[1]) : $config{'group_name'} == 2 && $_[1]->{'comment'} ? $_[1]->{'comment'} : $_[1]->{'values'}->[0] ? $_[1]->{'values'}->[0] : $_[0] == 0 ? $text{'index_nomemb'} : $_[0] == 1 ? $text{'index_1memb'} : $_[0] >= 2 && $_[0] <= 4 ? &text('index_234memb', $_[0]) : &text('index_memb', $_[0]); } # get_subnets_and_hosts() # returns the references to sorted lists of hosts and subnets sub get_subnets_and_hosts { return (\@get_subnets_cache, \@get_hosts_cache) if (@get_subnets_cache && @get_hosts_cache); local(@subn,@host,@group,@shan, $s,$h,$g,$sn, $conf); $conf = &get_config(); # get top level hosts and groups @host = &find("host", $conf); foreach $h (&find("host", $conf)) { $h->{'order'} = $h->{'index'}; } @group = &find("group", $conf); foreach $g (@group) { foreach $h (&find("host", $g->{'members'})) { push(@host, $h); } } @subn = &find("subnet", $conf); foreach $u (@subn) { foreach $h (&find("host", $u->{'members'})) { push(@host, $h); } foreach $g (&find("group", $u->{'members'})) { push(@group, $g); foreach $h (&find("host", $g->{'members'})) { push(@host, $h); } } } @shan = &find("shared-network", $conf); foreach $s (@shan) { foreach $h (&find("host", $s->{'members'})) { push(@host, $h); } foreach $g (&find("group", $s->{'members'})) { push(@group, $g); foreach $h (&find("host", $g->{'members'})) { push(@host, $h); } } foreach $u (&find("subnet", $s->{'members'})) { push(@subn, $u); foreach $h (&find("host", $u->{'members'})) { push(@host, $h); } foreach $g (&find("group", $sn->{'members'})) { push(@group, $g); foreach $h (&find("host", $g->{'members'})) { push(@host, $h); } } } } @get_subnets_cache = sort { $a->{'order'} <=> $b->{'order'} } @subn; @get_hosts_cache = sort { $a->{'order'} <=> $b->{'order'} } @host; return (\@get_subnets_cache, \@get_hosts_cache); } sub get_subnets { local ($sr, $hr) = &get_subnets_and_hosts(); return @{$sr}; } sub get_hosts { local ($sr, $hr) = &get_subnets_and_hosts(); return @{$hr}; } # hash that links objtypes shortcuts with object names %obj_names2types = qw(host hst group grp subnet sub shared-network sha); # get_branch($objtype) # usefull for edit_*.cgi and save_*.cgi scripts # $objtype = one of 'hst' 'grp' 'sub' 'sha' sub get_branch { local %obj_types2names = reverse %obj_names2types; local $name = $obj_types2names{$_[0]}; local ($parnode, $nparnode, $node, $indent, $nindent); $parnode = $nparnode = &get_parent_config(); $indent = $nindent = 0; foreach ($in{'sidx'}, $in{'uidx'}, $in{'gidx'}) { if ($_ ne '') { $parnode = $parnode->{'members'}->[$_]; $indent++; } } if (!($in{'delete'} && $in{'options'})) { if ($in{'assign'} > 0 && !defined($in{'parent'})) { # A quirk for not javascript-capable browser # New parent is undefined yet; we need 2nd step undef $nparnode; } else { foreach (split(/\,/, $in{'parent'})) { $nindent++; if ($_ < @{$nparnode->{'members'}}) { $nparnode = $nparnode->{'members'}->[$_]; } } } } if (!$in{'new'}) { $node = $parnode->{'members'}->[$in{'idx'}]; } else { die "Wrong call to get_nodes: pass objtype for new object" unless $name; # Construct new node structure $node->{'name'} = $name; $node->{'type'} = 1; $node->{'members'} = [ ]; } return ($parnode, $node, $indent, $nparnode, $nindent); } # can(permissions_string, \%access, \%config_node, smode) # this is a cached wrapper of can_noncached(...) sub can { local ($perm, $acc, $node, $smode) = @_; if (defined($can_cache) && ($can_perm_cache eq $perm) && ($can_node_cache eq $node) && ($can_smode_cache eq $smode)) { return $can_cache; } else { $can_perm_cache = $perm; $can_node_cache = $node; $can_smode_cache = $smode; return ($can_cache = &can_noncached(@_)); } } # can_noncached(permissions_string, \%access, \%config_node, smode) # check global and per-object permissions: # # permissions_string= 'c' 'r' 'w' or any combination. # smode= 0 or undef - check only current, 1 - recursive childs check, # 2 - check parents, 3 - check parents and all childs # note: while deleting an object you must allways enforce smode=1 or 3 # because all child objects are deletes recursevly. # this maybe an optional parameter sub can_noncached { local $acl; local ($perm, $acc, $node, $smode) = @_; local @perm = split(//, $perm); if ($node ne get_parent_config()) { foreach (@perm) { next if ($_ ne 'c') && ($_ ne 'r') && ($_ ne 'w'); return 0 unless $acc->{$_ . '_' . $obj_names2types{$node->{'name'}} }; } # per-object permissions return 0 unless &can_node(\@perm, $acc, $node); if (($acc->{'smode'} == 2) || ($smode == 2) || ($acc->{'smode'} == 3) || ($smode == 3)) { # check parents #$parnode=&get_parent_config(); #foreach ($in{'sidx'}, $in{'uidx'}, $in{'gidx'}) { # if ($_ ne '') { # $parnode = $parnode->{'members'}->[$_]; # return 0 unless &can_node(\@perm, $acc, $parnode); # } # } $parnode = $node->{'parent'}; while($parnode) { return 0 unless &can_node(\@perm, $acc, $parnode); $parnode = $parnode->{'parent'}; } } if (($acc->{'smode'} == 1) || ($smode == 1) || ($acc->{'smode'} == 3) || ($smode == 3)) { # check childs return 0 unless &can_subtree(\@perm, $acc, $node); } } return 1; } # can_node(\@perm, $acc, $node) # checks object permissions for current node sub can_node { local ($rperm, $acc, $node)=@_; # per-object permissions local $otype=$obj_names2types{$node->{'name'}}; if ($acc->{'per_' . $otype . '_acls'}) { local $name = $node->{'values'}->[0]; if (!$name && $node->{'name'} eq 'group') { local @opts = &find("option", $node->{'members'}); local ($dn) = grep { $_->{'values'}->[0] eq 'domain-name' } @opts; if ($dn) { $name = $dn->{'values'}->[1]; } else { $name = $node->{'index'}; } } local $acl = $acc->{'ACL' . $otype . '_' . $name}; foreach (@{$rperm}) { next if $_ eq 'c'; # skip creation perms for per-obj acls return 0 if index($acl, $_) == -1; } } return 1; } # can_subtree(\@perm, $acc, $node) # checks object permissions for subtree sub can_subtree { local ($rperm, $acc, $node)=@_; return 0 unless &can_node($rperm, $acc, $node); if($node->{'members'}) { # recursevly process this subtree foreach (@{$node->{'members'}}) { return 0 unless &can_subtree($rperm, $acc, $_); } } return 1; } # save_dhcpd_acl(permissions_string, obj_type, \%access, obj_name) sub save_dhcpd_acl { $_[2]->{'ACL'.$_[1].'_'.$_[3]} = $_[0]; undef($can_cache); return &save_module_acl($_[2]); } # drop_dhcpd_acl(obj_type, \%access, obj_name) sub drop_dhcpd_acl { delete($_[1]->{'ACL'.$_[0].'_'.$_[2]}); undef($can_cache); return &save_module_acl($_[1]); } # find_recursive(name, &config, [parent]) # Returns a list of all config entries with some name, no matter where they # are in the heirarchy sub find_recursive { local ($c, @rv); foreach $c (@{$_[1]}) { if ($c->{'name'} eq $_[0]) { push(@rv, $c); } if ($c->{'type'}) { push(@rv, &find_recursive($_[0], $c->{'members'}, $c)); } } return @rv; } # find_parents(&object) sub find_parents { local ($gidx, $uidx, $sidx); local $p = $_[0]->{'parent'}; while($p) { $gidx = $p->{'index'} if ($p->{'name'} eq 'group'); $uidx = $p->{'index'} if ($p->{'name'} eq 'subnet'); $sidx = $p->{'index'} if ($p->{'name'} eq 'shared-network'); $p = $p->{'parent'}; } return ($gidx, $uidx, $sidx); } # get_dhcpd_version(&out) sub get_dhcpd_version { local $out = `$config{'dhcpd_path'} -v 2>&1`; ${$_[0]} = $out; return $config{'version'} if ($config{'version'}); return undef if ($out !~ /DHCP/ || $out =~ /V1/); return $out =~ /\sV([0-9\.]+)/ ? $1 : $out =~ /-T/ ? 3 : 2; } # restart_dhcpd() # Re-starts the DHCP server, and returns an error message if something fails sub restart_dhcpd { local $out; if ($config{'restart_cmd'}) { # Run the restart script $out = &backquote_logged("$config{'restart_cmd'} 2>&1"); return "
$out
" if ($?); } else { # Kill and re-run the server local $pid = &is_dhcpd_running(); $pid && &kill_logged('TERM', $pid) || return "$text{'restart_errmsg2'} $pid : $!"; if ($config{'start_cmd'}) { $out = &backquote_logged("$config{'start_cmd'} 2>&1"); } else { $out = &backquote_logged("$config{'dhcpd_path'} -cf $config{'dhcpd_conf'} -lf $config{'lease_file'} $config{'interfaces'} 2>&1"); } return "
$out
" if ($?); } return undef; } # stop_dhcpd() # Stop the running DHCP server. Returns undef on success, or an error message # on failure. sub stop_dhcpd { if ($config{'stop_cmd'}) { local $out = &backquote_logged("$config{'stop_cmd'} 2>&1"); return $? ? "
$out
" : undef; } else { local $pid = &is_dhcpd_running(); if ($pid && &kill_logged('TERM', $pid)) { return undef; } else { return $text{'stop_ekill'}; } } } # start_dhcpd() # Attempt to start the DHCP server, returning undef on success or an error # message on failure. sub start_dhcpd { if (!-r $config{'lease_file'}) { # first time.. need to create the lease file $config{'lease_file'} =~ /^(\S+)\/([^\/]+)$/; if (!-d $1) { mkdir($1, 0755); } open(LEASE, ">$config{'lease_file'}"); close(LEASE); } local $out; if ($config{'start_cmd'}) { $out = &backquote_logged("$config{'start_cmd'} 2>&1"); } else { $out = &backquote_logged("$config{'dhcpd_path'} -cf $config{'dhcpd_conf'} -lf $config{'lease_file'} $config{'interfaces'} 2>&1"); } if ($? || $out =~ /error|failed/i) { return "
$out
"; } else { return undef; } } # search_re(value, match) sub search_re { if ($in{'match'} == 0) { return lc($_[0]) eq lc($_[1]); } elsif ($in{'match'} == 1) { return $_[0] =~ /\Q$_[1]\E/i; } else { return eval { $_[0] =~ /$_[1]/i }; } } # get_pid_file() # Returns the DHCP server PID file sub get_pid_file { local $conf = &get_config(); local $file = &find_value("pid-file-name", $conf); return $file || $config{'pid_file'}; } sub expand_ip_range { local ($s, $e) = @_; local @rs = split(/\./, $s); local @re = split(/\./, $e); local @rv; for(my $i=$rs[0]; $i<=$re[0]; $i++) { for(my $j=$rs[1]; $j<=$re[1]; $j++) { for(my $k=$rs[2]; $k<=$re[2]; $k++) { for(my $l=$rs[3]; $l<=$re[3]; $l++) { push(@rv, "$i.$j.$k.$l"); } } } } return @rv; } # is_dhcpd_running() # Returns the pid if the DHCP server is running sub is_dhcpd_running { local $pidfile = &get_pid_file(); if ($pidfile) { return &check_pid_file($pidfile); } else { local ($pid) = &find_byname("dhcpd"); return $pid; } } 1; dhcpd/config-open-linux0100644000567100000120000000032410655706244015115 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/etc/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/edit_options.cgi0100755000567100000120000002032610655706244015024 0ustar jcameronwheel#!/usr/local/bin/perl # edit_options.cgi # Edit client options for some subnet, shared net, group, host or global require './dhcpd-lib.pl'; require './params-lib.pl'; &ReadParse(); $conf = &get_config(); %access = &get_module_acl(); &error_setup("$text{'eacl_aviol'}"); $client = &get_parent_config(); foreach $i ($in{'sidx'}, $in{'uidx'}, $in{'gidx'}, $in{'idx'}) { $client = $client->{'members'}->[$i] if ($i ne ''); } if ($client->{'name'} eq 'subnet') { $title = &text('eopt_subtitle',$client->{'values'}->[0]); $back = $text{'eopt_returnsub'}; $backlink = "edit_subnet.cgi"; &error("$text{'eacl_np'} $text{'eacl_pss'}") if !&can('r',\%access,$client); } elsif ($client->{'name'} eq 'shared-network') { $title = &text('eopt_snettitle',$client->{'values'}->[0]); $back = $text{'eopt_returnshsub'}; $backlink = "edit_shared.cgi"; &error("$text{'eacl_np'} $text{'eacl_psn'}") if !&can('r',\%access,$client); } elsif ($client->{'name'} eq 'host') { $title = &text('eopt_hosttitle',$client->{'values'}->[0]); $back = $text{'eopt_returnhost'}; $backlink = "edit_host.cgi"; &error("$text{'eacl_np'} $text{'eacl_psh'}") if !&can('r',\%access,$client); } elsif ($client->{'name'} eq 'group') { @mc = &find("host", $client->{'members'}); $title = &text('eopt_grouptitle',scalar(@mc)); $back = $text{'eopt_returngroup'}; $backlink = "edit_group.cgi"; &error("$text{'eacl_np'} $text{'eacl_psg'}") if !&can('r',\%access,$client); } else { $title = $text{'eopt_alltitle'}; $back = $text{'eopt_returnindex'}; $backlink = ""; &error("$text{'eacl_np'} $text{'eacl_pglob'}") if !$access{'global'}; } # display $backlink .= "?idx=".$in{'idx'}."&gidx=".$in{'gidx'}."&uidx=".$in{'uidx'}. "&sidx=".$in{'sidx'} if (backlink); &ui_print_header($title, $text{'eopt_header'}, ""); print "
\n"; printf "\n", $in{'global'} ? "global" : $client->{'name'}; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "
$text{'eopt_tabhdr'}
\n"; @opts = &find("option", $client->{'members'}); print "\n"; print &option_input($text{'eopt_chost'}, "host-name", \@opts, 3); print &option_input($text{'eopt_defrouters'}, "routers", \@opts, 2); print "\n"; print "\n"; print &option_input($text{'eopt_smask'}, "subnet-mask", \@opts, 0); print &option_input($text{'eopt_baddr'}, "broadcast-address", \@opts, 0); print "\n"; print "\n"; print &option_input($text{'eopt_domname'}, "domain-name", \@opts, 3); print &option_input($text{'eopt_dnsserv'}, "domain-name-servers", \@opts, 2); print "\n"; print "\n"; print &option_input($text{'eopt_timeserv'}, "time-servers", \@opts, 2); print &option_input($text{'eopt_logserv'}, "log-servers", \@opts, 2); print "\n"; print "\n"; print &option_input($text{'eopt_swapserv'}, "swap-server", \@opts, 2); print &option_input($text{'eopt_rdpath'}, "root-path", \@opts, 3); print "\n"; print "\n"; print &option_input($text{'eopt_nisdom'}, "nis-domain", \@opts, 3); print &option_input($text{'eopt_nisserv'}, "nis-servers", \@opts, 2); print "\n"; print "\n"; print &option_input($text{'eopt_fontserv'}, "font-servers", \@opts, 2); print &option_input($text{'eopt_xdmserv'}, "x-display-manager", \@opts, 2); print "\n"; print "\n"; print &option_input($text{'eopt_statrouters'}, "static-routes", \@opts, 5); print "\n"; print "\n"; print &option_input($text{'eopt_ntpserv'}, "ntp-servers", \@opts, 2); print &option_input($text{'eopt_nbns'}, "netbios-name-servers", \@opts, 2); print "\n"; print "\n"; print &option_input($text{'eopt_nbs'}, "netbios-scope", \@opts, 3); print &option_input($text{'eopt_nbntype'}, "netbios-node-type", \@opts, 1); print "\n"; print "\n"; print &option_input($text{'eopt_toffset'}, "time-offset", \@opts, 1); print &option_input($text{'plib_serverid'}, "dhcp-server-identifier", \@opts, 3); print "\n"; print "\n"; print &option_input($text{'eopt_slpa'}, "slp-directory-agent", \@opts, 2, $text{'eopt_slpaips'}); print "\n"; print "\n"; print &option_input($text{'eopt_slps'}, "slp-service-scope", \@opts, 3, $text{'eopt_slpsonly'}); print "\n"; # Show custom options print "\n"; @custom = grep { $_->{'values'}->[0] =~ /^option-(\S+)$/ && $_->{'values'}->[1] ne 'code' } @opts; push(@custom, undef); push(@custom, undef) if (@custom%2 == 1); for($i=0; $i<@custom; $i++) { $o = $custom[$i]; print "\n" if ($i%2 == 0); print "\n"; print "\n", join(" ", @v); print "\n" if ($i%2 != 0); } if ($config{'dhcpd_version'} >= 3) { # Show option definitions print "\n"; @defs = grep { $_->{'values'}->[1] eq 'code' && $_->{'values'}->[3] eq '=' } @opts; push(@defs, undef); for($i=0; $i<@defs; $i++) { $o = $defs[$i]; print "\n"; print "\n"; } } if ($in{'global'}) { # Display options for subnets and hosts too print "\n"; print "\n"; print &choice_input($text{'egroup_nchoice'}, "use-host-decl-names", $conf, $text{'yes'}, "on", $text{'no'}, "off", $text{'default'}, ""); &display_params($conf, "global"); } print "

$text{'eopt_custom'}$text{'eopt_cnum'}\n"; local ($ov, @v) = @{$o->{'values'}}; printf "\n", $ov =~ /^option-(\S+)$/ ? $1 : ''; print "$text{'eopt_cval'}\n"; printf "

$text{'eopt_def'} \n"; print "$text{'eopt_dname'}\n"; printf "\n", $o->{'values'}->[0]; print "$text{'eopt_dnum'}\n"; printf "\n", $o->{'values'}->[2]; print "$text{'eopt_dtype'}\n"; printf "\n", $o->{'values'}->[4]; print "

\n"; print "
\n" if &can('rw',\%access,$client); &ui_print_footer($backlink, $back); # option_input(text, name, &config, type, [initial-boolean]) # types values: 0 - IP address # 1 - Integer # 2 - IP address list # 3 - String # 4 - Yes/no flag # 5 - IP address pairs sub option_input { local($rv, $v, $i); for($i=0; $i<@{$_[2]}; $i++) { if ($_[2]->[$i]->{'values'}->[0] eq $_[1]) { $v = $_[2]->[$i]; last; } } $rv = "$_[0]\n"; if ($_[3] == 5 || $_[4]) { $rv .= ""; } else { $rv .= ""; } $rv .= sprintf " $text{'default'}\n", $v ? "" : "checked"; $rv .= sprintf " ", $v ? "checked" : ""; local @vl = $v ? @{$v->{'values'}} : (); @vl = @vl[1..$#vl]; local $bool; if ($_[4]) { $bool = shift(@vl); } if ($_[3] == 0) { $rv .= "\n"; } elsif ($_[3] == 1) { $rv .= "\n"; } elsif ($_[3] == 2) { @vl = map { s/,//g; $_ } grep { $_ ne "," } @vl; $rv .= "\n"; } elsif ($_[3] == 3) { local $str = &oct_to_string($vl[0]); $rv .= "\n"; } elsif ($_[3] == 4) { $rv .= sprintf " Yes\n", $vl[0] eq "1" ? "checked" : ""; $rv .= sprintf " No\n", $vl[0] eq "0" ? "checked" : ""; } elsif ($_[3] == 5) { @vl = grep { $_ ne "," } @vl; $rv .= "\n"; } if ($_[4]) { $rv .= &ui_checkbox($_[1]."_bool", 1, $_[4], lc($bool) eq "true"); } $rv .= "\n"; return $rv; } sub oct_to_string { local @b = split(/:/, $_[0]); local $rv; foreach $b (@b) { if ($b !~ /^[A-z0-9]{1,2}$/) { # Wasn't actually in octet format after all. return $_[0]; } $rv .= chr(hex($b)); } return $rv; } dhcpd/params-lib.pl0100755000567100000120000001472110655706244014226 0ustar jcameronwheel#!/usr/bin/perl # $Id: params-lib.pl,v 1.3 2005/04/16 14:30:21 jfranken Exp $ # * Functions for editing parameters common to many kinds of directive # # File modified 2005-04-15 by Johannes Franken : # * Added support for the client-update option of dhcpd 3. # display_params(&config, type) sub display_params { print &ui_hidden("params_type", $_[1]); print &opt_input($text{'plib_deflt'}, "default-lease-time", $_[0], $text{'default'}, 8, $text{'secs'}); print "\n"; print "\n"; print &opt_input($text{'plib_bfname'}, "filename", $_[0], $text{'none'}, 20); print &opt_input($text{'plib_maxlt'}, "max-lease-time", $_[0], $text{'default'}, 8, $text{'secs'}); print "\n"; print "\n"; print &opt_input($text{'plib_bfserv'}, "next-server", $_[0], $text{'plib_thisserv'}, 15); print &opt_input($text{'plib_servname'}, "server-name", $_[0], $text{'default'}, 15); print "\n"; print "\n"; print &opt_input($text{'plib_llbc'}, "dynamic-bootp-lease-length", $_[0], $text{'plib_forever'}, 8, $text{'secs'}); print &opt_input($text{'plib_lebc'}, "dynamic-bootp-lease-cutoff", $_[0], $text{'plib_never'}, 21); print "\n"; if ($config{'dhcpd_version'} >= 3) { # Inputs for DDNS print "\n"; print &choice_input($text{'plib_ddnsup'}, "ddns-updates", $_[0], $text{'yes'}, 'on', $text{'no'}, 'off', $text{'default'}, ''); print &opt_input($text{'plib_ddnsdom'}, "ddns-domainname", $_[0], $text{'default'}, 15); print "\n"; print "\n"; print &opt_input($text{'plib_ddnsrevdom'}, "ddns-rev-domainname", $_[0], $text{'default'}, 15); print &opt_input($text{'plib_ddnshost'}, "ddns-hostname", $_[0], $text{'plib_ddnshost_def'}, 15); print "\n"; if ($_[1] eq 'global') { print "\n"; print &wide_choice_input($text{'plib_ddnsupstyle'}, "ddns-update-style", $_[0], $text{'plib_adhoc'}, 'ad-hoc', $text{'plib_interim'}, 'interim', $text{'plib_none'}, 'none', $text{'default'}, ''); print "\n"; } # Inputs for allow/deny clients local @adi = ( &find("allow", $_[0]), &find("deny", $_[0]), &find("ignore", $_[0]) ); local ($a, %vals); foreach $a (@adi) { $vals{$a->{'values'}->[0]} = $a; } local $uc = $vals{'unknown-clients'}->{'name'}; print " $text{'plib_unclients'} \n"; printf " %s\n", $uc eq 'allow' ? "checked" : "", $text{'plib_allow'}; printf " %s\n", $uc eq 'deny' ? "checked" : "", $text{'plib_deny'}; printf " %s\n", $uc eq 'ignore' ? "checked" : "", $text{'plib_ignore'}; printf " %s\n", $uc ? "" : "checked", $text{'default'}; print " \n"; ######## START CLIENT-UPDATES ##### # Inputs for allow/deny client-updates if ($config{'dhcpd_version'} >= 3) { local @adi = ( &find("allow", $_[0]), &find("deny", $_[0]), &find("ignore", $_[0]) ); local ($a, %vals); foreach $a (@adi) { $vals{$a->{'values'}->[0]} = $a; } local $cu = $vals{'client-updates'}->{'name'}; print " $text{'plib_clientupdates'} \n"; printf " %s\n", $cu eq 'allow' ? "checked" : "", $text{'plib_allow'}; printf " %s\n", $cu eq 'deny' ? "checked" : "", $text{'plib_deny'}; printf " %s\n", $cu eq 'ignore' ? "checked" : "", $text{'plib_ignore'}; printf " %s\n", $cu ? "" : "checked", $text{'default'}; print " \n"; } ######## END CLIENT-UPDATES ##### if ($_[1] eq 'subnet' || $_[1] eq 'shared-network' || $_[1] eq 'global') { # Inputs for authoratative local $auth = &find("authoritative", $_[0]); print " ",$text{'plib_auth_'.$_[1]},"\n"; printf " %s\n", $auth ? "checked" : "", $text{'yes'}; printf " %s (%s)\n", $auth ? "" : "checked", $text{'default'}, $text{'no'}; print "\n"; } } } # parse_params(&parent, [&indent]) sub parse_params { # Check for expressions local $type = $in{'params_type'}; local $c; foreach $c (@{$_[0]->{'members'}}) { if ($c->{'values'}->[0] eq "=") { &error(&text('plib_eexpr', "$c->{'name'}")); } } &save_opt("default-lease-time", \&check_lease, $_[0], $_[1]); &save_opt("filename", undef, $_[0], $_[1], 1); &save_opt("max-lease-time", \&check_lease, $_[0], $_[1]); &save_opt("next-server", \&check_server, $_[0], $_[1]); &save_opt("server-name", \&check_server, $_[0], $_[1], 1); &save_opt("dynamic-bootp-lease-length", \&check_lease, $_[0], $_[1]); &save_opt("dynamic-bootp-lease-cutoff", \&check_ldate, $_[0], $_[1], 1); if ($config{'dhcpd_version'} >= 3) { &save_opt("ddns-domainname", \&check_domain, $_[0], $_[1], 1); &save_opt("ddns-rev-domainname", \&check_domain, $_[0], $_[1], 1); &save_opt("ddns-hostname", \&check_server, $_[0], $_[1], 1); &save_choice("ddns-updates", $_[0], $_[1]); if (defined($in{'ddns-update-style'})) { &save_choice("ddns-update-style", $_[0], $_[1]); } local $pm = $_[0]->{'members'}; local @adi = ( &find("allow", $pm), &find("deny", $pm), &find("ignore", $pm) ); local ($a, %vals); foreach $a (@adi) { $vals{$a->{'values'}->[0]} = $a; } &save_directive($_[0], $vals{'unknown-clients'} ? [ $vals{'unknown-clients'} ] : [ ], $in{'unclients'} ? [ { 'name' => $in{'unclients'}, 'values' => [ 'unknown-clients' ] } ] : [ ], $_[1], 1); &save_directive($_[0], $vals{'client-updates'} ? [ $vals{'client-updates'} ] : [ ], $in{'clientupdates'} ? [ { 'name' => $in{'clientupdates'}, 'values' => [ 'client-updates' ] } ] : [ ], $_[1], 1); if (defined($in{'auth'})) { if ($in{'auth'}) { &save_directive($_[0], "authoritative", [ { 'name' => 'authoritative' } ], $_[1], 1); } else { &save_directive($_[0], "authoritative", [ ], $_[1]); } } } } sub check_lease { return $_[0] =~ /^\d+$/ ? undef : "'$_[0]' $text{'plib_invalidlt'}"; } sub check_server { return $_[0] =~ /^\S+$/ ? undef : "'$_[0]' $text{'plib_invalidsn'}"; } sub check_ldate { return $_[0] =~ /^(\d) (\d\d\d\d)\/(\d\d)\/(\d\d) (\d\d):(\d\d):(\d\d)$/ ? undef : $text{'plib_leformat'}; } sub check_domain { return $_[0] =~ /^[A-Za-z0-9\.\-]+$/ ? undef : &text('plib_invaliddom', $_[0]); } 1; dhcpd/config-corel-linux0100644000567100000120000000032710655706244015263 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/var/db/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/config.info.es0100644000567100000120000000077510655706244014373 0ustar jcameronwheeldhcpd_conf=Archivo de configuracin del servidor DHCP,0 dhcpd_path=Ejecutable del servidor DHCP,0 interfaces=Interfaces donde ejecutar DHCP,3,Automtica pid_file=Trayectoria a archivo PID del servidor DHCP,0 lease_file=Archivo de arriendo del servidor DHCP,0 lease_sort=Clasificar arriendos por,1,0-Orden en archivo,1-Direcciones IP,2-Nombre de mquina hostnet_list=Mostrar subredes y mquinas como,1,0-Iconos,1-Lista dhcpd_nocols=Iconos en fila,0 lease_tz=Mostrar tiempos de arriendo en,1,0-GMT,1-Hora local dhcpd/images/0040755000567100000120000000000010655706245013103 5ustar jcameronwheeldhcpd/images/group.gif0100644000567100000120000000037310655706244014725 0ustar jcameronwheelGIF89a00!,00̄uu7`i>:m¡t(7hط(C2QHyY!II9T:I1 ;[AZH+kKk [4\:=M]] k՜` -^nN-.Z;dhcpd/images/shared.gif0100644000567100000120000000042010655706244015030 0ustar jcameronwheelGIF89a00fff!,00"*j+~]W$~7AۮtmC `8aM&ފ-/N)ҘD7ԎctNFdFdEG%:$}-yє5gq^_^7`ךcYfn{i(6fnl ^|*v)o 'w9gcf"gB )V&Z'qoyyhfaziu笄6:褎ֺjzZ&zڪ"j lN&dB,-.>+RF`zn_VF[mo a,:pj_[ '۫y갍,e|j*j*c*iFwHI ;e)IzE4'8vQ8]XG/DH jғ=7a:Yk7MUK:iy)TxYR+I´iNhPC.bj)Kv\V93rf'2E55?lݗ[ݖЉU(˶)ֻR)+,מVtd”X83Zس*Vd-gAS4`0[:Oz hGKҚMjWֺlgKͭnwM2b:jj_dYR3DT[nJ2>$,]x׺up+ŢImo{fzoJw/%[(;'ʮ~V;+tYSvg6ԐQ0=@H0`Z=}h]Q3>,kqhM%,0MU<Ҵ1K*[Xβ.{`L2h&K@;dhcpd/images/ctree1.gif0100644000567100000120000000530410655706244014753 0ustar jcameronwheelGIF87a:aM&ފ-/N)ҘD7ԎctNFdFdEG%:$}-yє5gq^_^7`ךcYfn{i(6fnl ^|*v)o 'w9gcf"gB )V&Z'qoyyhfaziu笄6:褎ֺjzZ&zڪ"j lN&dB,-.>+RF`zn_VF[mo a,:pj_[ '۫y갍,e|j*j*c*iFwHOx(NW0gL8걎wKPG;lbD8$xk";#3?*XOՒyqfP(. e T{(dVV*T C\4Ί5π+J*y`LX*+2gvJaM&ފ-/N)ҘD7ԎDېDiH&C.d{B9KNIIZ"w=VԥiRby=IaYW)yї(^9oم&iz9xve'FfT椰 j2'Njw= )驪~**袱:c[J_ +JjWE*iktJ FKb9Mں)jj{g9* jk̶  lJ& 7|WB}wb0afŦq,#G$L/[覄`ڬo^e)s"m(qZ5iajTK6;«~JYG8-msAz .UE|[xhnGAd"߸8(BMl 9p 5SFME gb/%XZfʉN9atθ!%: c9li*  ƧщJ25q ?T)RwK#k8Ntb%FF(U֤ʔғmeUntLeZY6q#jˡ5-2-IH/+0,(h2yK;L#'nN$Q72`ݏ4/9=H EƐf|S/fXyIILӪ1{1'cO M"vu>c6UW`"XjO/J8q2a{HU^ܜ 3uDjHʲj旉e Sd_<yN KBЈNF;ѐ'Mi;dhcpd/images/ctree3.gif0100644000567100000120000000537010655706244014760 0ustar jcameronwheelGIF87a:>rqsvw|lv;wnv[l Xmn!,:H*\ȰÇ#JHŋ3jȱǏ CIɓ(S\ɲ˗0cʜI͛8sɳϟ@ JѣH*]ʴӧPJJիXjʵׯ`ÊKٳhӪ]˶۷pʝݻPݫT/߿FT0; #^|S12CR2(-c̹ϠCMҨX}:ka`uز @˻yM5mᘉ9b'w Sk ڷtd#N1<xWjEF8X M!X|%ؠ1)^ORA`aEF#>aM&ފ-/N)ҘD7ԎHېDiH&3d{B9KNIIZ"w=V%GjcVqD$}3!)晻&o:Ewft^5ǧoٕ^{%flVNךz}:'R[fi&gA^jvʨƚ\j~J\(:kkU࠰FK,ZJloj^(^+F[.zQV9-Nk.p,>>;3Y0 7p_PWY+qTGp& >Z(3ۦ\Ƅ榳6˸̥^G' ?GT|\LcyUQ\=S-vqXX\KGtY[6ҁX'+7[}ҝw/^+N;NF9ޕ]f{}bS:NL~ﺞ6d]PK{n^ Z,)S9'>z+,gW֖W9}R{nVKo/=Ro+<`s-\Z/?6-nUyZ mCWxhjM aЦ;pY[IlS\FlUT-H&ЄkX>r?a&IhL(V(=I_0jRO1RL2fX8Ӱqb]y#N.#GTA)/|˓#Ŏp%4$HE2n,#HhC%/5ZoI^KȦF&g^lM^Z'(=̥t%e>̓O\KYUZ_1m4"IHEs fbü] 糞v.T78"x9X^`j^ox8l,o]Mzη~N|);dhcpd/images/smallicon.gif0100664000567100000120000000036010655706244015550 0ustar jcameronwheelGIF87afffٳ,I8c%JG%`H$zN,Lp S P~#0,(HS)W% RJVҭ+~H) "0/CL2=):?[*&~YwWRgx`gZeikjb Eqo|8d|BvLz;dhcpd/images/files.gif0100644000567100000120000000041210655706244014665 0ustar jcameronwheelGIF89a00̙fff!,000I 8 ˧ ؍NfFRAʾR[x=KĐ&LNUuEFxL./w jgIۈ@dz9_rt1[5xa}{Tzw>afo~i9'_AhGllHX 4φ@\Ŀ|ߞܭQ ;dhcpd/edit_subnet.cgi0100755000567100000120000001526610655706244014640 0ustar jcameronwheel#!/usr/local/bin/perl # edit_subnet.cgi # Edit or create a subnet require './dhcpd-lib.pl'; require './params-lib.pl'; &ReadParse(); $conf = &get_config(); ($par, $sub) = &get_branch('sub'); $mems = $par->{'members'}; $sconf = $sub->{'members'}; # check acls %access = &get_module_acl(); &error_setup("$text{'eacl_aviol'}"); if ($in{'new'}) { &error("$text{'eacl_np'} $text{'eacl_pis'}") unless &can('c', \%access, $sub) && &can('rw', \%access, $par); } else { &error("$text{'eacl_np'} $text{'eacl_pss'}") if !&can('r', \%access, $sub); } # display if ($in{'sidx'} ne "") { local $s = $conf->[$in{'sidx'}]; $desc = &text('ehost_shared', $s->{'values'}->[0]); } &ui_print_header($desc, $in{'new'} ? $text{'esub_crheader'} : $text{'esub_edheader'}, ""); foreach $s (&find("shared-network", $conf)) { if ($in{'sidx'} eq $s->{'index'}) { $s_parent = $s; } } print "
\n"; print "\n"; print "\n"; print "\n"; print "
$text{'esub_tabhdr'}
\n"; print "\n"; printf "\n", $sub ? &html_escape($sub->{'comment'}) : ""; print "\n"; printf "\n", $sub ? $sub->{'values'}->[0] : ""; print "\n"; printf "\n", $sub ? $sub->{'values'}->[2] : ""; @range = $sub ? &find("range", $sub->{'members'}) : (); print "\n"; if (!defined($in{'ret'})) { print "\n"; print "\n"; } else { print "{'index'}>\n"; print "\n"; } &display_params($sconf, "subnet"); foreach $h (&find("host", $mems)) { push(@host, $h); # if &can('r', \%access, $h); } foreach $g (&find("group", $mems)) { push(@group, $g); # if &can('r', \%access, $g); } foreach $s (&find("subnet", $mems)) { foreach $h (&find("host", $s->{'members'})) { push(@host, $h); # if &can('r', \%access, $h); $insubn{$h} = $s->{'index'}; } foreach $g (&find("group", $s->{'members'})) { push(@group, $g); # if &can('r', \%access, $g); $insubn{$g} = $s->{'index'}; } } @host = sort { $a->{'values'}->[0] cmp $b->{'values'}->[0] } @host; # @group = sort { @{$a->{'members'}} <=> @{$b->{'members'}} } @group; print "\n"; print "\n"; print "\n"; print "\n"; if (!$in{'new'}) { # inaccessible hosts in this subnet foreach $h (@host) { if (!&can('r', \%access, $h) && $insubn{$h} eq $sub->{'index'}) { print "{'index'},$sub->{'index'}\" type=hidden>\n"; } } # inaccessible groups in this subnet foreach $g (@group) { if (!&can('r', \%access, $g) && $insubn{$g} eq $sub->{'index'}) { print "{'index'},$sub->{'index'}\" type=hidden>\n"; } } } print "
$text{'esub_desc'}
$text{'esub_naddr'}$text{'esub_nmask'}
$text{'esub_arange'} \n"; for($i=0; $i<=@range; $i++) { $r = $range[$i]; local $dyn = ($r->{'values'}->[0] eq "dynamic-bootp"); printf " - \n", $r->{'values'}->[$dyn]; printf " \n", $r->{'values'}->[$dyn+1]; printf "\n", $dyn ? "checked" : ""; print "$text{'esub_dbooptpq'}
\n"; } print "
$text{'esub_shnet'}
   
$text{'esub_hosts'}$text{'esub_groups'}
\n"; print "\n"; if (!$in{'new'}) { # Show buttons for existing subnet print "\n"; print "\n"; print "\n" if &can('rw', \%access, $sub); print "\n"; if ($access{'r_leases'}) { print "\n"; } print "\n" if &can('rw', \%access, $sub, 1); print "
\n"; print "$text{'index_addhst'}  \n" if &can('rw', \%access, $sub); print "$text{'index_addhstg'}

\n" if &can('rw', \%access, $sub); } else { # Show create button for new subnet print "\n"; print "\n"; } if ($config{'dhcpd_version'} >= 3 && !$in{'new'}) { # Display address pools print "


\n"; print &ui_subheading($text{'esub_pools'}); local $pn = 1; foreach $p (&find('pool', $sconf)) { push(@links, "edit_pool.cgi?uidx=$in{'idx'}&sidx=$in{'sidx'}&idx=$p->{'index'}"); push(@titles, &text('esub_pool', $pn)); push(@icons, "images/pool.gif"); $pn++; } if ($pn == 1) { print "$text{'esub_poolnone'}

\n"; } else { &icons_table(\@links, \@titles, \@icons, 5); } print "", "$text{'esub_pooladd'}
\n"; } print "

\n"; if ($in{'ret'} eq "shared") { &ui_print_footer("edit_shared.cgi?idx=$in{'sidx'}", $text{'esub_retshar'}); } else { &ui_print_footer("", $text{'esub_return'}); } dhcpd/config-redhat-linux-14.0-*0100644000567100000120000000055410655706244016137 0ustar jcameronwheelstart_cmd=/etc/rc.d/init.d/dhcpd start stop_cmd=/etc/rc.d/init.d/dhcpd stop restart_cmd=/etc/rc.d/init.d/dhcpd restart dhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/var/lib/dhcpd/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 interfaces_type=redhat show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/config-openbsd-3.6-*0100644000567100000120000000030510655706244015103 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf dhcpd_path=/usr/sbin/dhcpd lease_file=/var/db/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 version=3 dhcpd/rbac-mapping0100664000567100000120000000010510655706244014113 0ustar jcameronwheel# RBAC authorization # Webmin ACL solaris.dhcpmgr.write noconfig=1 dhcpd/config-slackware-linux-4.00100644000567100000120000000034010655706244016425 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/var/state/dhcpd/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/save_group.cgi0100755000567100000120000001000610655706244014470 0ustar jcameronwheel#!/usr/local/bin/perl # save_group.cgi # Update, create or delete a group require './dhcpd-lib.pl'; require './params-lib.pl'; &ReadParse(); &lock_file($config{'dhcpd_conf'}); ($par, $group, $indent, $npar, $nindent) = get_branch('grp'); $parconf = $par->{'members'}; # check acls %access = &get_module_acl(); &error_setup("$text{'eacl_aviol'}"); if ($in{'delete'}) { &error("$text{'eacl_np'} $text{'eacl_pdg'}") if !&can('rw', \%access, $group, 1); } elsif ($in{'options'}) { &error("$text{'eacl_np'} $text{'eacl_psg'}") if !&can('r', \%access, $group); } elsif ($in{'new'}) { &error("$text{'eacl_np'} $text{'eacl_pig'}") unless &can('c', \%access, $group) && &can('rw', \%access, $par) && (!$npar || &can('rw', \%access, $npar)); } else { &error("$text{'eacl_np'} $text{'eacl_pug'}") unless !$npar || &can('rw', \%access, $npar); # for new and updated groups - per-host acls see below } # save if ($in{'options'}) { # Redirect to client options &redirect("edit_options.cgi?sidx=$in{'sidx'}&uidx=$in{'uidx'}&idx=$in{'idx'}"); exit; } else { $whatfailed = $in{'delete'} ? $text{'sgroup_faildel'} : $text{'sgroup_failsave'}; # Move hosts into or out of this group @wasin = &find("host", $group->{'members'}); foreach $hn (split(/\0/, $in{'hosts'})) { if ($hn =~ /(\d+),(\d+)/) { push(@nowin, $parconf->[$2]->{'members'}->[$1]); $nowpr{$parconf->[$2]->{'members'}->[$1]} = $parconf->[$2]; } elsif ($hn =~ /(\d+),/) { push(@nowin, $parconf->[$1]); $nowpr{$parconf->[$1]} = $par; } if ($nowin[$#nowin]->{'name'} ne "host") { &error($text{'sgroup_echanged'}); } } $whatfailed = "$text{'eacl_aviol'}"; foreach $h (&unique(@wasin, @nowin)) { $was = &indexof($h, @wasin) != -1; $now = &indexof($h, @nowin) != -1; # per-host ACLs for new or updated hosts if ($was != $now && !&can('rw', \%access, $h)) { &error("$text{'eacl_np'} $text{'eacl_pug'}"); } if ($was && !$now) { # Move out of the group &save_directive($group, [ $h ], [ ], $indent); &save_directive($par, [ ], [ $h ], $indent); } elsif ($now && !$was) { # Move into the group (maybe from another group) &save_directive($nowpr{$h}, [ $h ], [ ], $indent); &save_directive($group, [ ], [ $h ], $indent + 1); } } if (!$in{'delete'}) { # Validate and save inputs &save_choice("use-host-decl-names", $group, $indent+1); $group->{'comment'} = $in{'desc'}; &parse_params($group, $indent+1); $whatfailed = $text{'sgroup_failsave'}; @partypes = ( "", "shared-network", "subnet" ); if (!$npar || $in{'assign'} > 0 && $npar->{'name'} ne $partypes[$in{'assign'}]) { if ($in{'jsquirk'}) { &error($text{'sgroup_invassign'}); } else { &redirect("edit_group.cgi?assign=".$in{'assign'}. "&idx=".$in{'idx'}."&uidx=".$in{'uidx'}. "&sidx=".$in{'sidx'}); exit; } } if ($in{'new'}) { # create this new group &save_directive($npar, [ ], [ $group ], $nindent); } elsif ($par eq $npar) { # update this group - is it really necessary ? &save_directive($par, [ $group ], [ $group ], $nindent); } else { # move this group &save_directive($par, [ $group ], [ ], 0); &save_directive($npar, [ ], [ $group ], $nindent); } } } &flush_file_lines(); if ($in{'delete'}) { # Delete this group if ($in{'hosts'} eq "") { &save_directive($par, [ $group ], [ ], 0); &flush_file_lines(); } else { &unlock_file($config{'dhcpd_conf'}); &redirect("confirm_delete.cgi?sidx=$in{'sidx'}&uidx=$in{'uidx'}". "&idx=$in{'idx'}=&type=2"); } } &unlock_file($config{'dhcpd_conf'}); @count = &find("host", $group->{'members'}); &webmin_log($in{'delete'} ? 'delete' : $in{'new'} ? 'create' : 'modify', 'group', join(",", map { $_->{'values'}->[0] } @count), \%in); if ($in{'ret'} eq "subnet") { $retparms = "sidx=$in{'sidx'}&idx=$in{'uidx'}"; } elsif ($in{'ret'} eq "shared") { $retparms = "idx=$in{'sidx'}"; } &redirect( $in{'ret'} ? "edit_$in{'ret'}.cgi?$retparms" : ""); dhcpd/edit_shared.cgi0100755000567100000120000001347410655706244014605 0ustar jcameronwheel#!/usr/local/bin/perl # edit_shared.cgi # Edit or create a shared network require './dhcpd-lib.pl'; require './params-lib.pl'; &ReadParse(); $conf = &get_config(); ($par, $sha) = &get_branch('sha'); $sconf = $sha->{'members'}; # check acls %access = &get_module_acl(); &error_setup("$text{'eacl_aviol'}"); if ($in{'new'} ) { &error("$text{'eacl_np'} $text{'eacl_pin'}") unless &can('c', \%access, $sha) && &can('rw', \%access, $par); } else { &error("$text{'eacl_np'} $text{'eacl_psn'}") if !&can('r', \%access, $sha); } # display &ui_print_header(undef, $in{'new'} ? $text{'esh_crheader'} : $text{'esh_eheader'}, ""); print "
\n"; print "\n"; print "\n"; print "
$text{'esh_tabhdr'}
\n"; print "\n"; printf "\n", $sha ? &html_escape($sha->{'comment'}) : ""; print "\n"; printf "\n", $sha ? $sha->{'values'}->[0] : ""; &display_params($sconf, "shared-network"); print "\n"; print "
$text{'esh_desc'}
$text{'esh_netname'}
\n"; foreach $h (&find("host", $conf)) { push(@host, $h) if &can('r', \%access, $h); } foreach $g (&find("group", $conf)) { push(@group, $g) if &can('r', \%access, $g); } foreach $s (&find("subnet", $conf)) { push(@subn, $s) if &can('r', \%access, $s); } foreach $sh (&find("shared-network", $conf)) { foreach $h (&find("host", $sh->{'members'})) { push(@host, $h); # if &can('r', \%access, $h); $inshar{$h} = $sh->{'index'}; } foreach $g (&find("group", $sh->{'members'})) { push(@group, $g); # if &can('r', \%access, $g); $inshar{$g} = $sh->{'index'}; } foreach $s (&find("subnet", $sh->{'members'})) { push(@subn, $s); # if &can('r', \%access, $s); $inshar{$s} = $sh->{'index'}; } } @host = sort { $a->{'values'}->[0] cmp $b->{'values'}->[0] } @host; # @group = sort { @{$a->{'members'}} <=> @{$b->{'members'}} } @group; @subn = sort { $a->{'values'}->[0] cmp $b->{'values'}->[0] } @subn; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; if (!$in{'new'}) { # inaccessible hosts in this shared network foreach $h (@host) { if (!&can('r', \%access, $h) && $inshar{$h} eq $sha->{'index'}) { print "{'index'},$sha->{'index'}\" type=hidden>\n"; } } # inaccessible groups in this shared network foreach $g (@group) { if (!&can('r', \%access, $g) && $inshar{$g} eq $sha->{'index'}) { print "{'index'},$sha->{'index'}\" type=hidden>\n"; } } # inaccessible subnets in this shared network foreach $s (@subn) { if (!&can('r', \%access, $s) && $inshar{$s} eq $sha->{'index'}) { print "{'index'},$sha->{'index'}\" type=hidden>\n"; } } } print "
$text{'esh_hosts'}$text{'esh_groups'}$text{'esh_subn'}
\n"; if (!$in{'new'}) { print "\n"; print "\n"; print "\n" if &can('rw', \%access, $sha); print "\n"; print "\n" if &can('rw', \%access, $sha, 1); print "
\n"; print "$text{'index_addhst'}  \n" if &can('rw', \%access, $sha); print "$text{'index_addhstg'}  \n" if &can('rw', \%access, $sha); print "$text{'index_addsub'}

\n" if &can('rw', \%access, $sha); } else { print "\n"; print "\n"; } if ($config{'dhcpd_version'} >= 3 && !$in{'new'}) { # Display address pools print "


\n"; print &ui_subheading($text{'esh_pools'}); local $pn = 1; foreach $p (&find('pool', $sconf)) { push(@links, "edit_pool.cgi?uidx=$in{'idx'}&idx=$p->{'index'}"); push(@titles, &text('esub_pool', $pn)); push(@icons, "images/pool.gif"); $pn++; } if ($pn == 1) { print "$text{'esub_poolnone'}

\n"; } else { &icons_table(\@links, \@titles, \@icons, 5); } print "", "$text{'esub_pooladd'}
\n"; } print "

\n"; &ui_print_footer("", $text{'esh_return'}); dhcpd/config-freebsd0100644000567100000120000000034710655706244014436 0ustar jcameronwheeldhcpd_conf=/usr/local/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/local/sbin/dhcpd lease_file=/var/db/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/config.info.zh_TW.Big50100644000567100000120000000025710655706244015577 0ustar jcameronwheeldhcpd_conf=DHCP AպA,0 dhcpd_path=DHCP A,0 interfaces= DHCP b,3,۰ pid_file= DHCP A PID ɮת|,0 lease_file=DHCP Aɮ,0 dhcpd/module.info0100644000567100000120000000166310655706245014003 0ustar jcameronwheeldesc_ko_KR.euc=DHCP risk=low medium high desc_ru_SU= DHCP desc_zh_TW.Big5=DHCP A desc_pl=Serwer DHCP desc_de=DHCP-Server name=DHCPD desc_zh_CN=DHCP desc_pt=Servidor de DHCP category=servers desc_tr=DHCP Sunucusu os_support=debian-linux freebsd osf1 redhat-linux mandrake-linux slackware-linux solaris suse-linux united-linux unixware openserver open-linux turbo-linux openbsd corel-linux cobalt-linux irix netbsd msc-linux generic-linux gentoo-linux hpux trustix-linux macos sol-linux coherent-linux openmamba-linux desc=DHCP Server desc_es=Servidor de DHCP desc_sv=DHCP-server desc_fr=Serveur DHCP desc_ja_JP.euc=DHCP desc_ru_RU= DHCP desc_ca=Servidor DHCP desc_nl=DHCP Server longdesc=Manage shared networks, subnets, hosts and groups for ISC DHCPD. desc_zh_TW.UTF-8=DHCP 伺服器 desc_zh_CN.UTF-8=DHCP服务器 desc_ja_JP.UTF-8=DHCP サーバ desc_ko_KR.UTF-8=DHCP 서버 desc_sk=DHCP Server version=1.361 dhcpd/save_subnet.cgi0100755000567100000120000001451510655706244014645 0ustar jcameronwheel#!/usr/local/bin/perl # save_subnet.cgi # Update, create or delete a subnet require './dhcpd-lib.pl'; require './params-lib.pl'; &ReadParse(); &lock_file($config{'dhcpd_conf'}); ($par, $sub, $indent, $npar, $nindent) = get_branch('sub'); $parconf = $par->{'members'}; # check acls %access = &get_module_acl(); &error_setup("$text{'eacl_aviol'}"); if ($in{'delete'}) { &error("$text{'eacl_np'} $text{'eacl_pds'}") if !&can('rw', \%access, $sub, 1); } elsif ($in{'options'}) { &error("$text{'eacl_np'} $text{'eacl_pss'}") if !&can('r', \%access, $sub); } elsif ($in{'new'}) { &error("$text{'eacl_np'} $text{'eacl_pis'}") unless &can('c', \%access, $sub) && &can('rw', \%access, $par) && (!$npar || &can('rw', \%access, $npar)); # restrict duplicates if ($access{'uniq_sub'}) { foreach $s (&get_subnets()) { &error("$text{'eacl_np'} $text{'eacl_uniq'}") if lc $s->{'values'}->[0] eq lc $in{'network'}; } } } elsif (!$in{'leases'}) { &error("$text{'eacl_np'} $text{'eacl_pus'}") unless &can('rw', \%access, $sub) && (!$npar || &can('rw', \%access, $npar)); } # save if ($in{'options'}) { # Redirect to client options &redirect("edit_options.cgi?sidx=$in{'sidx'}&idx=$in{'idx'}"); exit; } elsif ($in{'leases'}) { # Redirect to lease list for subnet &redirect("list_leases.cgi?network=$sub->{'values'}->[0]&netmask=$sub->{'values'}->[2]"); exit; } else { if ($in{'delete'}) { $whatfailed = $text{'ssub_faildel'}; if ($par->{'name'} eq "shared-network") { @subnets = &find("subnet", $par->{'members'}); if (@subnets < 2) { &error(&text('ssub_nosubnet', $par->{'values'}->[0])); } } } else { $whatfailed = $text{'ssub_failsave'}; # Validate and save inputs gethostbyname($in{'network'}) || &check_ipaddress($in{'network'}) || &error("'$in{'network'}' $text{'ssub_invalidsubaddr'}"); &check_ipaddress($in{'netmask'}) || &error("'$in{'netmask'}' $text{'ssub_invalidnmask'}"); $sub->{'values'} = [ $in{'network'}, "netmask", $in{'netmask'} ]; } @wasin = &find("host", $sub->{'members'}); foreach $hn (split(/\0/, $in{'hosts'})) { if ($hn =~ /(\d+),(\d+)/) { push(@nowin, $parconf->[$2]->{'members'}->[$1]); $nowpr{$parconf->[$2]->{'members'}->[$1]} = $parconf->[$2]; } elsif ($hn =~ /(\d+),/) { push(@nowin, $parconf->[$1]); $nowpr{$parconf->[$1]} = $par; } if ($nowin[$#nowin]->{'name'} ne "host") { &error($text{'sgroup_echanged'}); } } @wasgin = &find("group", $sub->{'members'}); foreach $gn (split(/\0/, $in{'groups'})) { if ($gn =~ /(\d+),(\d+)/) { push(@nowgin, $parconf->[$2]->{'members'}->[$1]); $nowgpr{$parconf->[$2]->{'members'}->[$1]} = $parconf->[$2]; } elsif ($gn =~ /(\d+),/) { push(@nowgin, $parconf->[$1]); $nowgpr{$parconf->[$1]} = $par; } if ($nowgin[$#nowgin]->{'name'} ne "group") { &error($text{'sgroup_echanged'}); } } $whatfailed = "$text{'eacl_aviol'}"; foreach $h (&unique(@wasin, @nowin)) { $was = &indexof($h, @wasin) != -1; $now = &indexof($h, @nowin) != -1; # per-host ACLs for new or updated hosts if ($was != $now && !&can('rw', \%access, $h)) { &error("$text{'eacl_np'} $text{'eacl_pus'}"); } if ($was && !$now) { # Move out of the subnet &save_directive($sub, [ $h ], [ ], $indent); &save_directive($par, [ ], [ $h ], $indent); } elsif ($now && !$was) { # Move into the subnet (maybe from another subnet) &save_directive($nowpr{$h}, [ $h ], [ ], $indent); &save_directive($sub, [ ], [ $h ], $indent + 1); } } foreach $g (&unique(@wasgin, @nowgin)) { $was = &indexof($g, @wasgin) != -1; $now = &indexof($g, @nowgin) != -1; # per-group ACLs for new or updated groups if ($was != $now && !&can('rw', \%access, $g)) { &error("$text{'eacl_np'} $text{'eacl_pus'}"); } if ($was && !$now) { # Move out of the subnet &save_directive($sub, [ $g ], [ ], $indent); &save_directive($par, [ ], [ $g ], $indent); } elsif ($now && !$was) { # Move into the subnet (maybe from another subnet) &save_directive($nowgpr{$g}, [ $g ], [ ], $indent); &save_directive($sub, [ ], [ $g ], $indent + 1); } } if (!$in{'delete'}) { $whatfailed = $text{'ssub_failsave'}; for($i=0; defined($low = $in{"range_low_$i"}); $i++) { next if (!$low); $hi = $in{"range_hi_$i"}; $dyn = $in{"range_dyn_$i"}; &check_ipaddress($low) || &error("'$low' $text{'ssub_invalidipr'}"); !$hi || &check_ipaddress($hi) || &error("'$hi' $text{'ssub_invalidipr'}"); $rng = { 'name' => 'range', 'values' => [ ($dyn ? "dynamic-bootp" : ()), $low, ($hi ? $hi : ()) ] }; push(@rng, $rng); } &save_directive($sub, "range", \@rng, 1); $sub->{'comment'} = $in{'desc'}; &parse_params($sub, 0); # $npar = &get_parent_config(); # $nindent = 0; # if ($in{'parent'} ne "") { # $nindent = 1; # if ($in{'parent'} < @{$npar->{'members'}}) { # $npar = $npar->{'members'}->[$in{'parent'}]; # } # } if (!npar || $in{'assign'} > 0 && $npar->{'name'} ne "shared-network") { &error($text{'sgroup_echanged'}); } if ($in{'new'}) { # save acl for new network &save_dhcpd_acl('rw','sub',\%access,$in{'network'}); # Add to the end of the parent structure &save_directive($npar, [ ], [ $sub ], $nindent); } elsif ($par eq $npar) { # Update the subnet &save_directive($par, [ $sub ], [ $sub ], $nindent); } else { # Move the subnet if ($par->{'name'} eq "shared-network") { @subnets = &find("subnet", $par->{'members'}); if (@subnets < 2) { &error(&text('ssub_nosubnet', $par->{'values'}->[0])); } } &save_directive($par, [ $sub ], [ ], 0); &save_directive($npar, [ ], [ $sub ], $nindent); } } } &flush_file_lines(); if ($in{'delete'}) { # Delete this subnet if ($in{'hosts'} eq "" && $in{'groups'} eq "") { &drop_dhcpd_acl('sub', \%access, $sub->{'values'}->[0]); &save_directive($par, [ $sub ], [ ], 0); &flush_file_lines(); } else { &unlock_file($config{'dhcpd_conf'}); &redirect("confirm_delete.cgi?sidx=$in{'sidx'}&idx=$in{'idx'}" ."\&type=1"); exit; } } &unlock_file($config{'dhcpd_conf'}); &webmin_log($in{'delete'} ? 'delete' : $in{'new'} ? 'create' : 'modify', 'subnet', "$sub->{'values'}->[0]/$sub->{'values'}->[2]", \%in); &redirect($in{'ret'} eq "shared" ? "edit_shared.cgi?idx=$in{'sidx'}" : ""); dhcpd/config-solaris0100644000567100000120000000032010655706244014467 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf pid_file=/etc/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/etc/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/config-suse-linux0100644000567100000120000000033710655706244015137 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/var/state/dhcp/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/lang/0040755000567100000120000000000010655706245012557 5ustar jcameronwheeldhcpd/lang/zh_TW.Big50100644000567100000120000001057110655706244014322 0ustar jcameronwheelindex_title=DHCP A index_dhcpdnotfound=bztΤW䤣 DHCP A $1. iO]|w, άOz DHCP ҲղպA~. index_return= index_dhcpdver=DHCP A $1 GOT. Webmin u䴩 ISC DHCPD ĤG. index_subtitle=lP@ɪ index_nosubdef=|wqlΦ@ɪ. index_addsub=W[@ӷsl index_addnet=W[@ӷs@ɺ index_nomemb=S index_1memb=1 Ӧ index_memb=Ӧ index_hst=DPDs index_nohst=|wqDθs. index_addhst=W[sD index_addhstg=W[sDs index_buttego=sﶵ index_ego=s DHCP ﭻîMΦbҦl, @ɺ, DPs index_buttlal=CXϥΤ index_lal=CXثe DHCP AoXʺAw IP }. index_buttapply=Mܧ index_apply=UoӫsHgѰísҰʰ椤 DHCP A, îMΥثeպA. index_buttstart=ҰʦA index_start=UoӫsHҰ DHCP A, èϥΥثeպA. butt_save=xs butt_eco=sȤݿﶵ butt_del=R butt_create=إ esub_crheader=إߤl esub_edheader=sl esub_tabhdr=lԲӸ esub_naddr=} esub_nmask=lBn esub_arange=IP }d esub_dbooptpq=O_ϥΰʺA BOOTP? esub_shnet=@ɪ esub_return=lC esh_crheader=إߦ@ɪ esh_eheader=s@ɪ esh_tabhdr=@ɺԲӸ esh_netname=W esh_return=lC ehost_crheader=إߥD ehost_eheader=sD ehost_tabhdr=DԲӸ ehost_hname=DW ehost_fixedip=Tw IP } ehost_return=DC egroup_crheader=إߥDs egroup_eheader=sDs egroup_tblhdr=sոԲӸ egroup_hosts=oӸsդD egroup_nchoice=O_HϥΪ̦W٧@ȤݥDW? egroup_return=DC yes=O no=_ default=w] secs= none=L listl_header=DHCP listl_lfnotexist=DHCPd ɮ $1 sb. listl_lfnotcont=DHCPd ɮ $1 ]tϥΤ. listl_ipaddr=IP } listl_ether=AӺ} listl_host=DW listl_start=}l listl_end= listl_return=lC restart_errmsg1=sҰ dhcpd restart_errmsg2=eXT{ǥ start_failstart=Ұ dhcpd sgroup_faildel=Rsե sgroup_failsave=xssե shost_faildel=RD shost_failsave=xsD shost_invalidhn=O@ӦĪDW shost_invalidhwa='$1' O@ӦĪ $2 } sopt_failsave=xsȤݿﶵ sopt_invalidip=O@ӦĪ IP } sopt_invalidint=O@Ӿ sopt_invalidipp=O@ӦĪ IP } (Ҧp 1.2.3.4,5.6.7.8) sshared_faildel=R@ɺ sshared_failsave=xs@ɺ sshared_invalidsname=򥢩ο~@ɺW ssub_faildel=Rl ssub_failsave=xsl ssub_invalidsubaddr=O@ӦĪl} ssub_invalidnmask=O@ӦĪlBn ssub_invalidipr=O@ӦĪ IP } plib_deflt=w]ɶ plib_bfname=}ɮצW plib_maxlt=̤jɶ plib_bfserv=}ɮצA plib_thisserv=oӦA plib_servname=AW plib_llbc=ϥ BOOTP Ȥݪ plib_forever=û plib_lebc=ϥ BOOTP Ȥݪ plib_never=ä plib_invalidlt=O@ӦĪɶ plib_invalidsn=O@ӦĦAW plib_leformat=榡O ~// :: plib_copt=Ȥݿﶵ plib_chname=ȤݥDW plib_defrouters=w]Ѿ plib_snmask=lBn plib_babbr=s} plib_domname=W plib_dnsserv=DNS A plib_timeserv=ɶA plib_logserv=A plib_swapserv=洫ɦA plib_rdpath=ڥؿϺи| plib_nisdom=NIS W plib_nisserv=NIS A plib_fontserv=rA plib_xdmserv=XDM A plib_statrouters=RA plib_ntpserv=NTP A plib_nbns=NetBIOS W٦A plib_nbscope=NetBIOS d plib_nbntype=NetBIOS `I eopt_header=Ȥݿﶵ eopt_subtitle=l $1 eopt_returnsub=lC eopt_snettitle=@ɺ $1 eopt_hosttitle=D $1 eopt_returnhost=DC eopt_grouptitle= $1 sզ eopt_alltitle=Ҧ, DPs eopt_returnindex= eopt_tabhdr=Ȥݿﶵ eopt_chost=Ȥݪ̾W eopt_defrouters=w]Ѿ eopt_smask=lBn eopt_baddr=s} eopt_domname=W eopt_dnsserv=DNS A eopt_timeserv=ɶA eopt_logserv=A eopt_swapserv=洫ɦA eopt_rdpath=ڥؿϺи| eopt_nisdom=NIS W eopt_nisserv=NIS A eopt_fontserv=rA eopt_xdmserv=XDM A eopt_statrouters=RA eopt_ntpserv=NTP A eopt_nbns=NetBIOS W٦A eopt_nbs=NetBIOS d eopt_nbntype=NetBIOS `I dhcpd/lang/zh_CN0100644000567100000120000002014610655706244013502 0ustar jcameronwheelindex_title=DHCP index_dhcpdnotfound=ϵͳδҵDHCP$1ûаװ DHCPģȷ index_return= index_dhcpdver=DHCP$1 İ汾 Webminֻ֧ISC DHCPD汾2 index_subtitle=͹ index_nosubdef=ûж硣 index_addsub=һµ index_addnet=һµĹ index_nomemb=ûгԱ index_1memb=һԱ index_234memb=$1 Ա index_memb=$1 Ա index_hst= index_nohst=ûж顣 index_hostgroup=/ index_parent= index_hardware=Ӳַ index_group=Ա index_nameip=IP index_net= index_netmask= index_addhst=һµ index_addhstg=һµ index_buttego=༭ͻѡ index_ego=༭Ӧ硢DHCPѡ index_buttlal=г index_lal=гǰɴDHCPΪ̬IPַޡ index_buttapply=Ӧø index_apply=ťֹͣDHCPʹǰӦڸDHCP index_buttstart= index_start=ťڵǰϵͳõǰDHCP index_hdisplay=ʾͨ index_horder0= index_horder1=ļṹ index_horder2= index_horder3=Ӳַ index_horder4=IPַ index_togroup= index_tosubnet= index_toshared= index_ndisplay=ʾͨ index_norder0= index_norder1=ļṹ index_norder2=/IP ַ index_version=ISC DHCPd 汾 $1 butt_save= butt_eco=༭ͻѡ butt_vco=鿴ͻѡ butt_del=ɾ butt_create= esub_crheader= esub_edheader=༭ esub_tabhdr=ϸ esub_naddr=ַ esub_nmask= esub_arange=ַΧ esub_dbooptpq=̬BOOTP esub_shnet= esub_hosts=еֱ esub_groups=еֱ esub_pools=ĵַ esub_pool=$1 esub_poolnone=δַ esub_pooladd=ַ esub_none= esub_return=б esub_retshar= esh_crheader= esh_eheader=༭ esh_tabhdr=ϸ esh_netname= esh_hosts=еֱ esh_groups=еֱ esh_subn=е esh_return=б ehost_crheader= ehost_eheader=༭ ehost_tabhdr=ϸ ehost_hname= ehost_nojavascr=ƺ֧javascriptѡбѡȷλá ehost_assign=ָ ehost_toplevel=Toplevel ehost_inshared= ehost_insubnet= ehost_ingroup= ehost_hwaddr=Ӳַ ehost_fixedip=̶IPַ ehost_subnet= $1/$2 ehost_shared=ڹ$1 ehost_in= ehost_return=б ehost_retgroup= ehost_retsubn= ehost_retshar= egroup_crheader= egroup_eheader=༭ egroup_tblhdr=ϸ egroup_assign=ָ egroup_hosts=е egroup_nchoice=ûͻ egroup_return=б egroup_retsubn= egroup_retshar= default=Ĭ secs= none=û listl_header=DHCP listl_lfnotexist=DHCPdļ$1 listl_lfnotcont=DHCPdļ$1 κޡ listl_active= listl_ipaddr=IPַ listl_ether=̫ listl_host= listl_start=ʼ listl_end=ֹ listl_return=б listl_all=гл͹ڵ listl_delete=беһIPַԽɾ restart_errmsg1=dhcpdʧ restart_errmsg2=źŸʧ start_failstart=dhcpdʧ sgroup_faildel=ɾʧ sgroup_failsave=ʧ sgroup_invassign=ָȷ sgroup_echanged=ļԸı䡣һΡ shost_faildel=ɾʧ shost_failsave=ʧ shost_invalidhn=Ч shost_invalidhwa='$1'Ч $2 ַ shost_invalidaddr='$1'ЧIPַ shost_invassign=ָȷ sopt_failsave=ͻѡʧ sopt_invalidip=ЧIPַ sopt_invalidint=һ sopt_invalidipp=ЧIPַ ( 1.2.3.4,5.6.7.8) sshared_faildel=ɾʧ sshared_failsave=湲ʧ sshared_invalidsname=ȱٻǷĹ sshared_nosubnet='$1'δκ ssub_faildel=ɾʧ ssub_failsave=ʧ ssub_invalidsubaddr=Чַ ssub_invalidnmask=Ч ssub_invalidipr=ЧIPַΧ ssub_nosubnet='$1'δκ plib_deflt=Ĭʱ plib_bfname=ļ plib_maxlt=ʱ plib_bfserv=ļ plib_thisserv= plib_servname= plib_llbc=BOOTPͻʱ plib_forever= plib_lebc=BOOTPͻֹ plib_never= plib_invalidlt=һϷʱ plib_invalidsn=Чķ plib_invaliddom=$1Ч plib_leformat=ֹڵĸʽ W YYYY/MM/DD HH:MM:SS plib_copt=ͻѡ plib_chname=ͻ plib_defrouters=Ĭ· plib_snmask= plib_babbr=㲥ַ plib_domname= plib_dnsserv=DNS plib_timeserv=ʱ plib_logserv=־ plib_swapserv= plib_rdpath=· plib_nisdom=NIS plib_nisserv=NIS plib_fontserv= plib_xdmserv=XDM plib_statrouters=̬· plib_ntpserv=NTP plib_nbns=NetBIOSַ plib_nbscope=NetBIOSΧ plib_nbntype=NetBIOSڵ plib_ddnsdom=̬DNS plib_ddnsrevdom=̬DNS plib_ddnsup=̬DNS plib_ddnshost=̬DNS plib_ddnshost_def=ӿͻ plib_ddnsupstyle=̬DNS·ʽ plib_adhoc=Ad-hoc plib_interim=Interim plib_none= eopt_header=ͻѡ eopt_subtitle= $1 eopt_returnsub= eopt_returnshsub= eopt_snettitle=ڹ $1 eopt_hosttitle= $1 eopt_returnhost= eopt_returngroup= eopt_grouptitle=$1 Ա eopt_alltitle=ȫ硢 eopt_returnindex=б eopt_tabhdr=ͻѡ eopt_chost=ͻ eopt_defrouters=Ĭ· eopt_smask= eopt_baddr=㲥ַ eopt_domname= eopt_dnsserv=DNS eopt_timeserv=ʱ eopt_logserv=־ eopt_swapserv= eopt_rdpath=· eopt_nisdom=NIS eopt_nisserv=NIS eopt_fontserv= eopt_xdmserv=XDM eopt_statrouters=̬· eopt_ntpserv=NTP eopt_nbns=NetBIOSַ eopt_nbs=NetBIOSΧ eopt_nbntype=NetBIOSڵ eopt_custom=ͻѡ eopt_cnum= eopt_cval=ֵ log_apply=Ӧø log_start=DHCP log_create_subnet=Ѵ$1 log_delete_subnet=ɾ$1 log_modify_subnet=޸$1 log_options_subnet=޸$1ѡ log_create_shared=Ѵ$1 log_delete_shared=ɾ$1 log_modify_shared=޸Ĺ$1 log_options_shared=޸Ĺ$1ѡ log_create_host=Ѵ$1 log_delete_host=ɾ$1 log_modify_host=޸$1 log_options_host=޸$1ѡ log_create_group=Ѵ$1 log_delete_group=ɾ$1 log_modify_group=޸$1 log_options_group=Ϊ$1޸ѡ log_delete_lease=Ϊ$1ɾ pool_edit=༭ַ pool_create=Ѵĵַ pool_header=ַѡ pool_allow=Ŀͻ pool_deny=ֹĿͻ pool_return= cdel_header= cdel_shared1= cdel_shared2= cdel_subnet1= cdel_subnet2= cdel_subnet= cdel_subnets= cdel_group1= cdel_group2= cdel_group= cdel_groups= cdel_host= cdel_hosts= cdel_txt=ɾ$1 '$2'ҲɾĿ¼ cdel_confirm=ɾ$1 cdel_eunknown=δ֪ cdel_return=б eacl_aviol=Υʿ eacl_np=û eacl_pdh=ɾ eacl_pih= eacl_puh=༭ eacl_psh=ѡ eacl_pdg=ɾ eacl_pig= eacl_pug=༭ eacl_psg=ѡ eacl_pds=ɾ eacl_pis= eacl_pus=༭ eacl_pss=ѡ eacl_pdn=ɾ eacl_pin= eacl_pun=༭ eacl_psn=ѡ eacl_uniq= eacl_pdl=ɾ eacl_psl= eacl_pglob=༭ȫѡ eacl_papply= acl_apply=Ӧø acl_r_leases= acl_w_leases=Ƴ acl_global=Ա༭ȫѡ acl_uniq_hst=Uniq acl_uniq_sub=UniqIPַ acl_uniq_sha=Uniq acl_seclevel=ʹðȫȼ acl_hide=زɷ acl_ahst= acl_agrp=飺 acl_asub= acl_asha=ʹ磺 acl_per_hst_acls=ÿһACL acl_per_sub_acls=ÿACL acl_per_obj_acls=ÿACL... acl_na= acl_r1=ֻ acl_rw=/д acl_c= acl_r=ȡ acl_w=д acl_err=󱣴ACLб acl_ernow=ȫACLijЩ͵д빦ܣҲĶȡܡ acl_normal=ͨ acl_paranoic=paranoic dhcpd/lang/en0100644000567100000120000003705710655706244013114 0ustar jcameronwheelindex_title=DHCP Server index_key=Edit TSIG-keys (used for authenticating updates to DNS servers) index_dhcpdnotfound=The DHCP server $1 could not be found on your system. Maybe it is not installed, or your DHCP module configuration is incorrect. index_return=index index_dhcpdver2=The DHCP server $1 does not appear to be correct version. Webmin only supports ISC DHCPD versions $2 to $3. index_subtitle=Subnets and Shared Networks index_nosubdef=No subnets or shared networks have been defined. index_addsub=Add a new subnet. index_addnet=Add a new shared network. index_nomemb=No members index_1memb=1 member index_234memb=$1 members index_memb=$1 members index_hst=Hosts and Host Groups index_nohst=No hosts or groups have been defined. index_hostgroup=Host/Group index_parent=Parent index_hardware=Hardware Address index_group=Group: index_nameip=Hostname or IP index_net=Network index_netmask=Netmask index_desc=Description index_addhst=Add a new host. index_addhstg=Add a new host group. index_buttego=Edit Client Options index_buttekey=Edit TSIG-keys index_ego=Edit DHCP client options that apply to all subnets, shared networks, hosts and groups index_buttlal=List Active Leases index_lal=List leases currently issued by this DHCP server for dynamically assigned IP addresses. index_buttapply=Apply Changes index_apply=Click this button to apply the current configuration to the running DHCP server, by stopping and restarting it. index_buttstart=Start Server index_start=Click this button to start the DHCP server on your system, using the current configuration. index_stop=Stop Server index_stopdesc=Click this button to stop the running DHCP server on your system. When stopped, DHCP clients will not be able to request IP addresses. index_hdisplay=Display hosts and groups by: index_horder0=Assignment index_horder1=File structure index_horder2=Name index_horder3=Hardware address index_horder4=IP address index_togroup=Group index_tosubnet=Subnet index_toshared=Network index_ndisplay=Display nets and subnets by: index_norder0=Assignment index_norder1=File structure index_norder2=Name/IP address index_version=ISC DHCPd version $1 index_buttiface=Edit Network Interface index_iface=Set the network interfaces that the DHCP server listens on when started. index_subtoomany=There are too many subnets to display. index_shatoomany=There are too many shared networks to display. index_sublook2=Edit the subnet with address: index_shalook2=Edit the shared network: index_hsttoomany=There are too many hosts to display. index_grptoomany=There are too many groups to display. index_hstlook2=Edit the host named: index_grplook2=Edit the group named: index_gdom=Group for $1 index_match0=equals index_match1=contains index_match2=matches index_dhcpd=ISC DHCPd index_delete=Delete Selected butt_save=Save butt_eco=Edit Client Options butt_vco=View Client Options butt_del=Delete butt_create=Create butt_leases=List Leases esub_crheader=Create Subnet esub_edheader=Edit Subnet esub_tabhdr=Subnet Details esub_naddr=Network address esub_nmask=Netmask esub_arange=Address ranges esub_dbooptpq=Dynamic BOOTP ? esub_shnet=Shared network esub_hosts=Hosts directly in this subnet esub_groups=Groups directly in this subnet esub_pools=Address Pools for Subnet esub_pool=Pool $1 esub_poolnone=No address pools defined esub_pooladd=Add an address pool. esub_none=None esub_return=subnet list esub_retshar=shared network esub_desc=Subnet description esub_fopeer=Failover Peer esh_crheader=Create Shared Network esh_eheader=Edit Shared Network esh_tabhdr=Shared Network Details esh_netname=Network name esh_hosts=Hosts directly in this shared network esh_groups=Groups directly in this shared network esh_subn=Subnets in this shared network esh_return=subnet list esh_pools=Address Pools for Shared Network esh_desc=Shared network description ehost_crheader=Create Host ehost_eheader=Edit Host ehost_tabhdr=Host Details ehost_hname=Host name ehost_nojavascr=Your browser does not seem to support javascript. Now you must chose the proper position from the list below. ehost_assign=Host assigned to ehost_toplevel=Toplevel ehost_inshared=Shared Network ehost_insubnet=Subnet ehost_ingroup=Group ehost_hwaddr=Hardware Address ehost_fixedip=Fixed IP address ehost_subnet=In subnet $1/$2 ehost_shared=In shared network $1 ehost_in=in ehost_return=host list ehost_retgroup=group ehost_retsubn=subnet ehost_retshar=shared network ehost_desc=Host description egroup_crheader=Create Host Group egroup_eheader=Edit Host Group egroup_tblhdr=Group Details egroup_assign=Group assigned to egroup_hosts=Hosts in this group egroup_nchoice=Use name as client hostname? egroup_return=host list egroup_retsubn=subnet egroup_retshar=shared network egroup_desc=Group description default=Default secs=secs none=None listl_header=DHCP Leases listl_network=In network $1/$2 listl_lfnotexist=The DHCPd lease file $1 does not exist. listl_lfnotcont=The DHCPd lease file $1 does not contain any leases. listl_lfnotcont2=The DHCPd lease file $1 does not contain any leases that are active at the current time. listl_active=active listl_ipaddr=IP Address listl_ether=Ethernet listl_host=Hostname listl_start=Start Date listl_end=End Date listl_return=network and host list listl_all=List all active and expired leases listl_delete=Click on a lease IP address from the list above to delete it. listl_unknown=Unknown listl_allocs=$1 IP addresses available, $2 allocated ($3 %) restart_errmsg1=Failed to restart dhcpd restart_errmsg2=Failed to signal process start_failstart=Failed to start dhcpd sgroup_faildel=Failed to delete group sgroup_failsave=Failed to save group sgroup_invassign=group assigned to an incorrect section sgroup_echanged=Configuration file contents has been changed. Try again. shost_faildel=Failed to delete host shost_failsave=Failed to save host shost_invalidhn=is not a valid host name shost_invalidhwa='$1' is not a valid $2 address shost_invalidaddr='$1' contains an invalid hostname or IP address shost_invassign=host assigned to an incorrect section sopt_failsave=Failed to save client options sopt_invalidip=is not a valid IP address sopt_invalidint=is not an integer sopt_invalidipp=is not a valid IP address pair (like 1.2.3.4,5.6.7.8) sopt_edname='$1' is not a valid option name sopt_ednum='$1' is not a valid option number sopt_edtype='$1' is not a valid option type sshared_faildel=Failed to delete shared network sshared_failsave=Failed to save shared network sshared_invalidsname=Missing or invalid shared network name. sshared_nosubnet=Shared network '$1' does not contain any subnet. ssub_faildel=Failed to delete subnet ssub_failsave=Failed to save subnet ssub_invalidsubaddr=is not a valid subnet address ssub_invalidnmask=is not a valid netmask ssub_invalidipr=is not a valid range IP address ssub_nosubnet=Shared network '$1' does not contain any subnet. ssub_invalidfopeer=is not a valid failover peer plib_deflt=Default lease time plib_bfname=Boot filename plib_maxlt=Maximum lease time plib_bfserv=Boot file server plib_thisserv=This server plib_servname=Server name plib_llbc=Lease length for BOOTP clients plib_forever=Forever plib_lebc=Lease end for BOOTP clients plib_never=Never plib_invalidlt=is not a valid lease time plib_invalidsn=is not a valid server name plib_invaliddom=$1 is not a valid domain name plib_leformat=Lease end date must be in the format W YYYY/MM/DD HH:MM:SS plib_copt=Client Options plib_chname=Client hostname plib_defrouters=Default routers plib_snmask=Subnet mask plib_babbr=Broadcast address plib_domname=Domain name plib_dnsserv=DNS servers plib_timeserv=Time servers plib_logserv=Log servers plib_swapserv=Swap server plib_rdpath=Root disk path plib_nisdom=NIS domain plib_nisserv=NIS servers plib_fontserv=Font servers plib_xdmserv=XDM servers plib_statrouters=Static routes plib_ntpserv=NTP servers plib_nbns=NetBIOS name servers plib_nbscope=NetBIOS scope plib_nbntype=NetBIOS node type plib_toffset=Time offset plib_serverid=DHCP server identifier plib_ddnsdom=Dynamic DNS domain name plib_ddnsrevdom=Dynamic DNS reverse domain plib_ddnsup=Dynamic DNS enabled? plib_ddnshost=Dynamic DNS hostname plib_ddnshost_def=From client plib_ddnsupstyle=Dynamic DNS update style plib_adhoc=Ad-hoc plib_interim=Interim plib_none=None plib_unclients=Allow unknown clients? plib_allow=Allow plib_deny=Deny plib_ignore=Ignore plib_eexpr=This section of the DHCP configuration contains the expression directive $1, which cannot be safely edited by Webmin. plib_auth_subnet=Server is authoritative for this subnet? plib_auth_shared-network=Server is authoritative for this shared network? plib_auth_global=Server is authoritative for all subnets? eopt_header=Client Options eopt_subtitle=For subnet $1 eopt_returnsub=subnet eopt_returnshsub=shared network eopt_snettitle=For shared network $1 eopt_hosttitle=For host $1 eopt_returnhost=host eopt_returngroup=host group eopt_grouptitle=For $1 member group eopt_alltitle=For all networks, hosts and groups eopt_returnindex=network and host list eopt_tabhdr=Client Options eopt_chost=Client hostname eopt_defrouters=Default routers eopt_smask=Subnet mask eopt_baddr=Broadcast address eopt_domname=Domain name eopt_dnsserv=DNS servers eopt_timeserv=Time servers eopt_logserv=Log servers eopt_swapserv=Swap server eopt_rdpath=Root disk path eopt_nisdom=NIS domain eopt_nisserv=NIS servers eopt_fontserv=Font servers eopt_xdmserv=XDM servers eopt_statrouters=Static routes eopt_ntpserv=NTP servers eopt_nbns=NetBIOS name servers eopt_nbs=NetBIOS scope eopt_nbntype=NetBIOS node type eopt_toffset=Time offset eopt_custom=Custom option eopt_cnum=Number eopt_cval=Value eopt_def=Option definition eopt_dname=Option name eopt_dnum=Number eopt_dtype=Type eopt_slpa=SLP directory agent IPs eopt_slpaips=These IPs only? eopt_slps=SLP service scope eopt_slpsonly=This scope only? log_apply=Applied changes log_start=Started DHCP server log_stop=Stopped DHCP server log_create_subnet=Created subnet $1 log_delete_subnet=Deleted subnet $1 log_modify_subnet=Modified subnet $1 log_options_subnet=Modified options for subnet $1 log_create_shared=Created shared network $1 log_delete_shared=Deleted shared network $1 log_modify_shared=Modified shared network $1 log_options_shared=Modified options for shared network $1 log_create_host=Created host $1 log_delete_host=Deleted host $1 log_modify_host=Modified host $1 log_options_host=Modified options for host $1 log_create_group=Created group of $1 hosts log_delete_group=Deleted group of $1 hosts log_modify_group=Modified group of $1 hosts log_options_group=Modified options for group of $1 hosts log_delete_lease=Deleted lease for $1 log_delete_subnets=Deleted $1 subnets and shared networks log_delete_hosts=Deleted $1 hosts and host groups keys_edit=Edit TSIG key keys_create=Created TSIG keys keys_title=DNS Keys keys_id=Key ID keys_alg=Algorithm keys_secret=Secret string keys_ecannot=You are not allowed to edit DNS keys keys_err=Failed to save DNS keys keys_ekey='$1' is not a valid key ID keys_esecret=Missing or invalid base-64 encoded secret for key $1 pool_edit=Edit Address Pool pool_create=Created Address Pool pool_header=Address pool options pool_allow=Clients to allow pool_deny=Clients to deny pool_return=subnet cdel_header=Warning cdel_shared1=shared network cdel_shared2=shared network cdel_subnet1=subnet cdel_subnet2=subnet cdel_subnet=subnet cdel_subnets=subnets cdel_group1=group cdel_group2=group cdel_group=group cdel_groups=groups cdel_host=host cdel_hosts=hosts cdel_txt=Deleting $1 '$2' will also delete its contents: cdel_confirm=Do you really want to delete this $1 ? cdel_eunknown=Unknown error cdel_return=host and network list eacl_aviol=Access control violation eacl_np=You have not permissions to eacl_pdh=delete host eacl_pih=add new hosts eacl_puh=edit host eacl_psh=select host eacl_pdg=delete group eacl_pig=add new groups eacl_pug=edit group eacl_psg=select group eacl_pds=delete subnet eacl_pis=add new subnets eacl_pus=edit subnet eacl_pss=select subnet eacl_pdn=delete shared network eacl_pin=add new shared networks eacl_pun=edit shared network eacl_psn=select shared network eacl_uniq=create duplicates eacl_pdl=delete leases eacl_psl=view leases eacl_pglob=edit global options eacl_papply=restart this service acl_apply=Can apply changes? acl_r_leases=Can view leases? acl_w_leases=Can remove leases? acl_global=Can edit global options? acl_uniq_hst=Uniq host names? acl_uniq_sub=Uniq subnet IP addresses? acl_uniq_sha=Uniq shared-net names? acl_seclevel=Use security level: acl_hide=Hide inaccessible objects? acl_ahst=Access hosts: acl_agrp=Access groups: acl_asub=Access subnets: acl_asha=Access shared nets: acl_per_hst_acls=Enable per-host ACLs? acl_per_grp_acls=Enable per-group ACLs? acl_per_sub_acls=Enable per-subnet ACLs? acl_per_sha_acls=Enable per-shared-net ACLs? acl_per_obj_acls=Per-object ACLs... acl_na=not allowed acl_r1=read only acl_rw=read/write acl_c=create acl_r=read acl_w=write acl_err=Error saving ACL list acl_ernow=If you want to enable write access in global ACLs for some object type you must also enable read access for this object type. acl_normal=normal acl_paranoic=paranoic iface_title=Network Interface iface_desc=The DHCP server can only assign IP addresses on networks connected to one of the interfaces selected below. The network interface for all defined subnets must be included. If none are selected, the DHCP server will attempt to find one automatically. iface_listen=Listen on interfaces lookup_ehost=No host with the name, IP address or MAC address $1 exists lookup_ehostname=No host name, IP address or MAC address entered lookup_egroup=No group with the name or domain name $1 exists lookup_egroupname=No group name or domain name entered lookup_esubnet=No subnet with the address or address/netmask $1 exists lookup_esubnetname=No subnet address or address/netmask entered lookup_eshared=No shared network with the name $1 exists lookup_esharedname=No shared network name entered zone_key=DNS-zones index_addzone=Add a new DNS zone. index_zone=Zone index_nozones=No DNS zones have been defined yet. zone_crheader=Create zone zone_eheader=Edit zone zone_tabhdr=Details of zone zone_desc=Zone description (optional) zone_name=Name of zone zone_primary=IP of primary NS zone_return=main menu zone_faildel=Failed to delete zone zone_failsave=Failed to save zone zone_tsigkey=TSIG key plib_clientupdates=client-updates: Can clients update their own records? text_title=dhcpd.conf text_editor=Text editor text_return=main menu text_undo=undo text_ecannot=You are not allowed to edit the configuration file index_buttetext=Configfile index_text=Edit configfile in texteditor (caution!) stop_err=Failed to stop DHCP server stop_ekill=Not running! sdelete_err=Failed to delete subnets and shared networks sdelete_enone=None selected sdelete_title=Delete Subnets and Shared Networks sdelete_rusure1=Are you sure you want to deleted the $1 selected subnets and $2 shared networks? Any other subnets or other objects within the networks will also be lost. sdelete_rusure2=Are you sure you want to deleted the $1 selected subnets? Any other objects within the subnets will also be lost. sdelete_rusure3=Are you sure you want to deleted the $2 selected shared networks? Any subnets or other objects within the networks will also be lost. sdelete_ok=Delete Now hdelete_err=Failed to delete hosts and groups hdelete_enone=None selected hdelete_title=Delete Hosts and Groups hdelete_rusure1=Are you sure you want to deleted the $1 selected hosts and $2 groups? Any other hosts within the groups will also be lost. hdelete_rusure2=Are you sure you want to deleted the $1 selected hosts? hdelete_rusure3=Are you sure you want to deleted the $2 selected groups? Any hosts within the groups will also be lost. hdelete_ok=Delete Now dhcpd/lang/pt0100644000567100000120000001356510655706244013133 0ustar jcameronwheelindex_title=Servidor DHCP index_dhcpdnotfound=O servidor DHCP $1 no foi encontrado no seu sistema. Poder no estar instalado, ou a configurao do mdulo DHCP est incorrecta. index_return=ndex index_dhcpdver=O servidor DHCP $1 no aparenta ser a verso correcta. O Webmin apenas suporta a verso 2 do ISC DHCPD. index_subtitle=Sub-redes e Redes Partilhadas index_nosubdef=No foram definidas sub-redes ou redes partilhadas. index_addsub=Adicionar nova sub-rede index_addnet=Adicionar nova rede partilhada index_nomemb=Sem membros index_1memb=Membro 1 index_234memb=$1 membros index_memb=$1 membros index_hst=Anfitries e Grupos de Anfitrio index_nohst=No foram definidos anfitries ou grupos. index_addhst=Adicionar novo anfitrio index_addhstg=Adicionar novo grupo de anfitrio index_buttego=Editar Opes Gerais index_ego=Editar opes de DHCP que se apliquem a todas as sub-redes, redes partilhadas, anfitries e grupos index_buttlal=Listar Concesses Activas index_lal=Listar concesses correntes deste servidor DHCP para atribuir endereos IP dinmicamente. index_buttapply=Aplicar Alteraes index_apply=Clique neste boto para aplicar a configurao actual ao servidor DHCP em execuo atravs da sua paragem e reiniciar. index_buttstart=Iniciar Servidor index_start=Clique neste boto para iniciar o servidor DHCP no seu sistema, usando a configurao actual. butt_save=Guardar butt_eco=Editar Opes de Cliente butt_del=Apagar butt_create=Criar esub_crheader=Criar Sub-rede esub_edheader=Editar Sub-rede esub_tabhdr=Detalhes da Sub-rede esub_naddr=Endereo da rede esub_nmask=Mscara de rede esub_arange=Alcance dos endereos esub_dbooptpq=BOOTP dinmico ? esub_shnet=Rede partilhada esub_return=lista de sub-redes esh_crheader=Criar Rede Partilhada esh_eheader=Editar Rede Partilhada esh_tabhdr=Detalhes da Rede Partilhada esh_netname=Nome da rede esh_return=lista de sub-redes ehost_crheader=Criar Anfitrio ehost_eheader=Editar Anfitrio ehost_tabhdr=Detalhes do Anfitrio ehost_hname=Nome do anfitrio ehost_fixedip=Endereo IP fixo ehost_return=lista de anfitries egroup_crheader=Criar Grupo de Anfitries egroup_eheader=Editar Grupo de Anfitries egroup_tblhdr=Detalhes do Grupo egroup_hosts=Anfitries neste grupo egroup_nchoice=Use name as client hostname? Usar o nome como anfitrio do cliente? egroup_return=lista de anfitries yes=Sim no=No default=Predefinido secs=segundos none=Nenhum listl_header=Concesses DHCP listl_lfnotexist=O ficheiro da concesso DHCPd $1 no existe. listl_lfnotcont=O ficheiro da concesso DHCPd $1 no contm nehuma concesso$2. listl_active= activa listl_ipaddr=Endereo IP listl_ether=Ethernet listl_host=Nome do Anfitrio listl_start=Comear Data listl_end=Terminar Data listl_return=lista de sub-redes restart_errmsg1=Erro ao reiniciar o servidor dhcpd restart_errmsg2=Erro ao sinalizar processo start_failstart=Erro ao iniciar o servidor dhcpd sgroup_faildel=Erro ao apagar grupo sgroup_failsave=Erro ao guardar grupo shost_faildel=Erro ao apagar anfitrio shost_failsave=Erro ao guardar anfitrio shost_invalidhn=no um nome de anfitrio vlido shost_invalidhwa='$1' no um endereo vlido $2 sopt_failsave=Erro ao guardar opes de cliente sopt_invalidip=no um endereo IP vlido sopt_invalidint=no um nmero inteiro sopt_invalidipp=no um par de endereo IP vlido (como 1.2.3.4,5.6.7.8) sshared_faildel=Erro ao apagar rede partilhada sshared_failsave=Erro ao guardar rede partilhada sshared_invalidsname=Nome de rede partilhada invlido ou em falta ssub_faildel=Erro ao apagar sub-rede ssub_failsave=Erro ao guardar sub-rede ssub_invalidsubaddr=no um endereo de sub-rede vlido ssub_invalidnmask=no uma mscara de rede vlida ssub_invalidipr=no um alcance de endereo IP vlido plib_deflt=Tempo de concesso predefinido plib_bfname=Carregar nome de ficheiro plib_maxlt=Tempo mximo de concesso plib_bfserv=Carregar servidor de ficheiros plib_thisserv=Este servidor plib_servname=Nome do servidor plib_llbc=Tempo de concesso para clientes BOOTP plib_forever=Para sempre plib_lebc=Final da concesso para clientes BOOTP plib_never=Nunca plib_invalidlt=no um tempo vlido de concesso plib_invalidsn=no um nome de servidor vlido plib_leformat=A data final da concesso necessita estar no formato W YYYY/MM/DD HH:MM:SS plib_copt=Opes de Cliente plib_chname=Nome do anfitrio do cliente plib_defrouters=Reencaminhadores predefinidos plib_snmask=Mcara de sub-rede plib_babbr=Endereo de emisso plib_domname=Nome do domnio plib_dnsserv=Servidores DNS plib_timeserv=Servidores de tempo plib_logserv=Servidores de historial plib_swapserv=Servidor Swap plib_rdpath=Caminho do disco raz plib_nisdom=Domnio NIS plib_nisserv=Servidores NIS plib_fontserv=Servidores de fontes plib_xdmserv=Servidores XDM plib_statrouters=Caminhos estticos plib_ntpserv=Servidores NTP plib_nbns=Servidores de nome NetBIOS plib_nbscope=Alcance do NetBIOS plib_nbntype=Tipo de nodo do NetBIOS eopt_header=Opes de Cliente eopt_subtitle=Para a sub-rede $1 eopt_returnsub=lista de sub-redes eopt_snettitle=Paa a rede partilhada $1 eopt_hosttitle=Para o anfitrio $1 eopt_returnhost=lista de anfitries eopt_grouptitle=Para o grupo de membros $1 eopt_alltitle=Para todas as redes, anfitries e grupos eopt_returnindex=ndex eopt_tabhdr=Opes de Cliente eopt_chost=Nome do anfitrio do cliente eopt_defrouters=Reencaminhadores predefinidos eopt_smask=Mcara de sub-rede eopt_baddr=Endereo de emisso eopt_domname=Nome do domnio eopt_dnsserv=Servidores DNS eopt_timeserv=Servidores de tempo eopt_logserv=Servidores de historial eopt_swapserv=Servidor swap eopt_rdpath=Caminho do disco raz eopt_nisdom=Domnio NIS eopt_nisserv=Servidores NIS eopt_fontserv=Servidores de fontes eopt_xdmserv=Servidores XDM eopt_statrouters=Caminhos estticos eopt_ntpserv=Servidores NTP eopt_nbns=Servidores de nome NetBIOS eopt_nbs=Alcance do NetBIOS eopt_nbntype=Tipo de nodo do NetBIOS dhcpd/lang/fr0100644000567100000120000003153110655706244013110 0ustar jcameronwheelindex_title=Serveur DHCP index_dhcpdnotfound=L'excutable du serveur DHCP '$1' est introuvable sur votre systme. Peut-tre devriez-vous diter la configuration du module DHCP. index_return=index index_dhcpdver=Le serveur DHCP '$1' ne semble pas tre d'une version correcte. Webmin supporte seulement ISC version 2. index_subtitle=Sous-rseaux et rseaux partags index_nosubdef=Aucun sous-rseaux ou rseaux partag n'ont t dfinis index_addsub=Ajouter un nouveau sous-rseau index_addnet=Ajouter un nouveau rseau partag index_nomemb=Aucun membre index_1memb=1 membre index_234memb=$1 membres index_memb=$1 membres index_hst=Machines et groupes de machines index_nohst=Aucune machine ou groupe n'a t dfini index_hostgroup=Machine/Groupe index_parent=Parent index_hardware=Adresse matrielle index_group=Groupe : index_nameip=Nom de machine ou IP index_net=Rseau index_netmask=Masque de rseau index_addhst=Ajouter une nouvelle machine index_addhstg=Ajouter un nouveau groupe index_buttego=diter les options generales index_ego=ditez les options DHCP qui s'applique tout sous-rseau, rseau partag, machine et groupe de machines index_buttlal=Listez les attributions actives index_lal=Lister les attributions desservies en ce moment par ce serveur DHCP pour l'assignement dynamique d'adresse IP index_buttapply=Appliquer tout changement index_apply=Cliquer sur ce bouton appliquera la configuration courante au serveur DHCP qui est en service en ce moment, en l'arrtant et le redmarrant. index_buttstart=Dmarrer le serveur index_start=Cliquez sur ce bouton pour dmarrer le serveur DHCP en utilisant la configuration courante. index_hdisplay=Afficher les machines et groupes par : index_horder0=Assignation index_horder1=Structure de fichier index_horder2=Nom index_horder3=Adresse matrielle index_horder4=Adresse IP index_togroup=Groupe index_tosubnet=Sous-rseau index_toshared=Rseau index_ndisplay=Afficher rseaux et sous-rseaux par : index_norder0=Assignation index_norder1=Structure de fichier index_norder2=Nom/Adresse IP index_buttiface=Editer l' Interface Reseau index_iface=Selectionnez l'Interface Reseau sur laquelle le serveur DHCP est a l'ecoute au demarrage iface_title=Interface Reseau iface_listen=Ecouter sur l'(les)interface(s) : iface_desc=Le serveur DHCP peut uniquement assigner des adresses IP sur le(les) reseau(x) connecte(s) sur l'(les)interface(s) selectionnee(s) ci-dessous.
L'interface reseau pour tous les sous-reseaux definis doit etre incluse. Si aucune n'est selectionnee, le serveur DHCP essayera d'en trouver une automatiquement. butt_save=Sauvegarder butt_eco=diter les options du client butt_vco=Voir les options du client butt_del=Supprimer butt_create=Crer butt_leases=Lister les baux esub_crheader=Crer un sous-rseau esub_edheader=diter un sous-rseau esub_tabhdr=Dtails du sous-rseau esub_naddr=Adresse du rseau esub_nmask=Masque de sous-rseau esub_arange=Plages d'adresse esub_dbooptpq=BOOTP dynamique? esub_shnet=Rseau partag esub_hosts=Machines de ce meme sous-rseau esub_groups=Groupes de ce meme sous-rseau esub_pools=Groupes d'adresses du sous-rseau esub_pool=Groupe $1 esub_poolnone=Aucun groupe d'adresses dfini esub_pooladd=Ajouter un groupe d'adresses esub_none=Aucun esub_return=liste de sous-rseaux esub_retshar=rseau partag esh_crheader=Crer un rseau partag esh_eheader=diter un rseau partag esh_tabhdr=Prcisions sur le rseau partag esh_netname=Nom du rseau esh_hosts=Machines de ce meme rseau partag esh_groups=Groupes de ce meme rseau partag esh_subn=Sous-rseaux de ce rseau partag esh_return=liste des rseaux partags esh_pools=Groupes d'adresses du reseau partage esh_desc=Description du reseau partage ehost_crheader=Crer une machine ehost_eheader=diter une machine ehost_tabhdr=Prcisions sur la machine ehost_hname=Nom de la machine ehost_nojavascr=Il semble que votre navigateur ne prend pas en compte javascript. Vous devez ds prsent choisir la position adquate dans la liste ci-dessous. ehost_assign=Machine assigne ehost_toplevel=Niveau le plus haut ehost_inshared=Rseau partag ehost_insubnet=Sous-rseau ehost_ingroup=Groupe ehost_hwaddr=Adresse matrielle ehost_fixedip=Adresse IP fixe ehost_subnet=In subnet $1/$2 ehost_shared=In shared network $1 ehost_in=in ehost_return=liste de machines ehost_retgroup=groupe ehost_retsubn=sous-rseau ehost_retshar=rseau partag egroup_crheader=Crer un groupe de machines egroup_eheader=diter un groupe de machines egroup_tblhdr=Prcisions sur le groupe egroup_assign=Groupe assign egroup_hosts=Machine dans ce groupe egroup_nchoice=Utiliser le nom comme nom de machine du client? egroup_return=liste des machines egroup_retsubn=sous-rseau egroup_retshar=rseau partag default=Dfaut secs=secondes none=Aucun listl_header=Attributions DHCP listl_lfnotexist=Le fichier des baux DHCPd $1 n'existe pas. listl_lfnotcont=Le fichier des baux DHCPd $1 ne contient aucun bail. listl_active=active listl_ipaddr=Adresse IP listl_ether=Ethernet listl_host=Nom de machine listl_start=Dbut du bail listl_end=Fin du bail listl_return=liste des rseaux et des machines listl_all=Lister tous les baux actifs et expirs listl_delete=Cliquer sur l'adresse IP d'un bail de la liste ci-dessus pour l'effacer restart_errmsg1=Impossible de redmarrer le serveur DHCP restart_errmsg2=Impossible d'envoyer le signal au processus start_failstart=Impossible de dmarrer DHCP sgroup_faildel=Impossible de supprimer le groupe sgroup_failsave=Impossible d'enregistrer le groupe sgroup_invassign=groupe assign une section incorrecte sgroup_echanged=Le contenu du fichier de configuration a t modifi. Essayez encore. shost_faildel=Impossible de supprimer la machine shost_failsave=Impossible d'enregistrer la machine shost_invalidhn=n'est pas un nom de machine valide shost_invalidhwa=$1 n'est pas une adresse $2 valide shost_invalidaddr='$1' contient un nom de machine ou une adresse IP invalide shost_invassign=machine assigne une section incorrecte sopt_failsave=Impossible d'enregistrer les options du client sopt_invalidip=n'est pas une adresse IP valide sopt_invalidint=n'est pas un nombre entier sopt_invalidipp=n'est pas une adresse IP paire (comme 1.2.3.4,1.2.4.9) sshared_faildel=Impossible de supprimer le rseau partag sshared_failsave=Impossible d'enregistrer le rseau partag sshared_invalidsname=Rseau partag manquant ou invalide sshared_nosubnet=Le rseau partag '$1' ne contient aucun sous-rseau ssub_faildel=Impossible de supprimer le sous-rseau ssub_failsave=Impossible d'enregistrer le sous-rseau ssub_invalidsubaddr=n'est pas une adresse de sous-rseau valide ssub_invalidnmask=n'est pas une adresse de sous-rseau ssub_invalidipr=n'est pas une plage d'adresse IP ssub_nosubnet=Le rseau partag '$1' ne contient aucun sous-rseau plib_deflt=Dure d'attribution par dfaut plib_bfname=Fichier de dmarrage plib_maxlt=Temps maximum de l'attribution plib_bfserv=Serveur de fichier de dmarrage plib_thisserv=Ce serveur plib_servname=Nom du serveur plib_llbc=Dure de l'attribution des clients BOOTP plib_forever=Infini plib_lebc=Fin de l'attribution des clients BOOTP plib_never=Jamais plib_invalidlt=n'est pas un temps d'attribution valide plib_invalidsn=n'est pas un nom de serveur valide plib_invaliddom=$1 n'est pas un nom de domaine valide plib_leformat=La date de fin d'attribution doit tre dans le format W AAAA/MM/JJ HH:MM:SS plib_copt=Options du client plib_chname=Nom de machine du client plib_defrouters=Routeurs par dfaut plib_snmask=Masque de sous-rseau plib_babbr=Adresse de diffusion plib_domname=Nom de domaine plib_dnsserv=Serveurs de nom de domaine plib_timeserv=Serveurs de temps plib_logserv=Serveurs de journal plib_swapserv=Serveur de mmoire temporaire plib_rdpath=Chemin du disque racine plib_nisdom=Domaine NIS plib_nisserv=Serveurs NIS plib_fontserv=Serveurs de police plib_xdmserv=Serveurs XDM plib_statrouters=Routes statique plib_ntpserv=Serveurs NTP plib_nbns=Serveurs de nom NetBIOS plib_nbscope=Envergure NetBIOS plib_nbntype=Type de node NetBIOS plib_ddnsdom=Nom de domaine DNS dynamique plib_ddnsrevdom=Nom de domaine DNS dynamique inverse plib_ddnsup=DNS dynamique activ ? plib_ddnshost=Nom du DNS dynamique plib_ddnshost_def=Provenant du client plib_unclients=Autoriser clients inconnus ? plib_auth_subnet=Le serveur fait autorite pour ce sous-reseau ? plib_auth_shared-network=Le serveur fait autorite pour ce reseau partage ? plib_auth_global=Le serveur fait autorite pour tous les sous-reseaux ? plib_allow=Oui plib_deny=Non plib_ignore=Ignorer eopt_header=Options du client eopt_subtitle=Pour le sous-rseau $1 eopt_returnsub=liste de sous-rseaux eopt_returnshsub=rseau partag eopt_snettitle=Pour le rseau partag $1 eopt_hosttitle=Pour la machine $1 eopt_returnhost=liste de machines eopt_returngroup=groupe de machines eopt_grouptitle=Pour le membre $1 du groupe eopt_alltitle=Pour tous les rseaux, machines et groupes eopt_returnindex=index eopt_tabhdr=Options du client eopt_chost=Nom de machine du client eopt_defrouters=Routeurs par dfaut eopt_smask=Masque de sous-rseau eopt_baddr=Adresse de diffusion eopt_domname=Nom de domaine eopt_dnsserv=Serveurs de nom de domaine eopt_timeserv=Serveurs de temps eopt_logserv=Serveurs de journal eopt_swapserv=Serveur de mmoire temporaire eopt_rdpath=Chemin du disque racine eopt_nisdom=Domaine NIS eopt_nisserv=Serveurs NIS eopt_fontserv=Serveurs de police eopt_xdmserv=Serveurs XDM eopt_statrouters=Routes statique eopt_ntpserv=Serveurs NTP eopt_nbns=Serveurs de nom NetBIOS eopt_nbs=Envergure NetBIOS eopt_nbntype=Type de node NetBIOS eopt_custom=Option spcifique eopt_cnum=Numro eopt_cval=Valeur log_apply=Changements effectus log_start=Serveur DHCP dmarr log_create_subnet=Sous-rseau $1 cr log_delete_subnet=Sous-rseau $1 supprim log_modify_subnet=Sous-rseau $1 modfi log_options_subnet=Options du sous-rseau $1 modifies log_create_shared=Rseau partag $1 cr log_delete_shared=Rseau partag $1 supprim log_modify_shared=Rseau partag $1 modifi log_options_shared=Options du rseau partag $1 modifies log_create_host=Machine $1 cre log_delete_host=Machine $1 supprime log_modify_host=Machine $1 modifie log_options_host=Options de la machine modifies log_create_group=Groupe de $1 machines cr log_delete_group=Groupe de $1 machines supprim log_modify_group=Groupe de $1 machines modifi log_options_group=Options de groupes de $1 machines modifies log_delete_lease=Supprimer le bail de $1 pool_edit=diter le groupe d'adresses pool_create=Groupe d'adresses cr pool_header=Options de groupes d'adresses pool_allow=Clients accepter pool_deny=Clients rejeter pool_return=sous-rseau cdel_header=Avertissement cdel_shared1=rseau partag cdel_shared2=rseau partag cdel_subnet1=sous-rseau cdel_subnet2=sous-rseau cdel_subnet=sous-rseau cdel_subnets=sous-rseaux cdel_group1=groupe cdel_group2=groupe cdel_group=groupe cdel_groups=groupes cdel_host=machine cdel_hosts=machines cdel_txt=La suppression de $1 '$2' entrainera aussi la suppression de son contenu : cdel_confirm=Voulez-vous rellement supprimer ce $1 ? cdel_eunknown=Erreur inconnue cdel_return=liste des machines et des rseaux eacl_aviol=Violation du contrle d'accs eacl_np=Vous n'avez pas la permission de eacl_pdh=supprimer une machine eacl_pih=ajouter de nouvelles machines eacl_puh=diter une machine eacl_psh=slectionner une machine eacl_pdg=supprimer un groupe eacl_pig=ajouter de nouveaux groupes eacl_pug=diter un groupe eacl_psg=slectionner un groupe eacl_pds=supprimer un sous-rseau eacl_pis=ajouter de nouveaux sous-rseaux eacl_pus=diter un sous-rseau eacl_pss=slectionner un sous-rseau eacl_pdn=supprimer un rseau partag eacl_pin=ajouter de nouveaux rseaux partags eacl_pun=diter le rseau partag eacl_psn=selectionner le rseau partag eacl_uniq=crer des copies eacl_pdl=supprimer les baux eacl_psl=visualiser les baux eacl_pglob=diter les options gnrales eacl_papply=redmarrer ce service acl_apply=Possibilit d'appliquer les modifications ? acl_r_leases= Possibilit de visualiser les baux ? acl_w_leases=Possibilit de supprimer les baux ? acl_global=Possibilit d'diter les options gnrales ? acl_uniq_hst=Noms de machines uniques ? acl_uniq_sub=Adresses IP de sous-rseau uniques ? acl_uniq_sha=Noms de rseaux partags uniques ? acl_seclevel=Utiliser le niveau de scurit : acl_hide=Masquer les objets inaccessibles? acl_ahst=Accder aux machines : acl_agrp=Accder aux groupes : acl_asub=Accder aux sous-rseaux : acl_asha=Accder aux rseaux partags : acl_per_hst_acls=Activer les ACL par machine ? acl_per_sub_acls=Activer ACL par sous-rseau ? acl_per_obj_acls=ACL par objet... acl_na=non autoris acl_r1=lecture seule acl_rw=lecture/criture acl_c=cration acl_r=lecture acl_w=criture acl_err=rreur lors de la sauvegarde de la liste d'ACL. acl_ernow=Si vous souhaitez donner libre accs en criture un certain type d'objet dans les ACL globales, vous devez aussi lui donner un accs en lecture. acl_normal=normal acl_paranoic=paranoaque dhcpd/lang/es0100644000567100000120000003034410655706244013111 0ustar jcameronwheelcdel_groups=grupos acl_w_leases=¿Puede quitar arrendamientos? egroup_crheader=Crear Grupo de Máquinas acl_global=¿Puede editar opciones globales? egroup_retsubn=subred acl_ernow=Si deseas activar acceso de escritura en ACLs globales para algún tipo de objeto debes también activar acceso de lectura para este tipo de objeto. eopt_header=Opciones de Cliente acl_seclevel=Usar nivel de seguridad: acl_uniq_sha=¿Nombres únicos de red compartida? esub_pools=Paquetes de direcciones para Subred log_options_shared=Modificadas opciones para red compartida $1 plib_servname=Nombre de servidor listl_header=Arrendamientos DHCP log_options_subnet=Modificadas opciones para subred $1 esh_groups=Grupos diréctamente en esta red compartida index_1memb=1 miembro eacl_pdh=borrar máquina listl_ether=Ethernet log_modify_host=Modificada máquina $1 cdel_subnet=subred eopt_defrouters=Enrutadores por defecto pool_create=Creado Paquete de Direcciones plib_domname=Nombre de dominio egroup_nchoice=¿Uso el nombre como nombre de máquina del cliente? eacl_uniq=crear duplicados eacl_pdn=borrar red compartida cdel_subnets=subredes eopt_tabhdr=Opciones de Cliente plib_ddnshost_def=Del cliente eopt_grouptitle=Para el miembro de grupo $1 acl_uniq_sub=¿Direcciones IP de subred únicas? esub_pool=Paquete $1 acl_r1=sólo lectura butt_save=Salvar ehost_inshared=Red Compartida ehost_shared=En red compartida $1 ehost_hwaddr=Dirección Hardware esh_subn=Subredes en esta red compartida plib_nbntype=Tipo de nodo NetBIOS plib_nbns=Servidores de nombres NetBIOS plib_nisserv=Servidores NIS acl_r_leases=¿Puede ver arrendamientos? acl_normal=normal cdel_group1=grupo eacl_np=No tienes permisos para plib_defrouters=Enrutadores por defecto log_delete_group=Borrado grupo de $1 máquinas ehost_retgroup=grupo pool_allow=Clientes autorizados ssub_nosubnet=La red compartida '$1' no contiene ninguna subred. ssub_faildel=Falló al borrar subred index_norder2=Nombre/Dirección IP eopt_nbntype=Tipo de nodo de NetBIOS esub_edheader=Editar Subred index_addhstg=Añadir un nuevo grupo de máquinas acl_na=no autorizado index_memb=$1 miembros esub_naddr=Dirección de Red butt_del=Borrar plib_interim=Interín esh_eheader=Editar Red Compartida eopt_returnindex=índice listl_host=Nombre de máquina index_horder4=Dirección IP index_ego=Editar opciones de cliente DHCP que se aplican a todas las subredes, redes compartias, máquinas y grupos. index_buttlal=Listar Arrendamientos Activos log_create_subnet=Creada subred $1 listl_end=Fecha de Fin sopt_failsave=Falló al salvar opciones de cliente plib_copt=Opciones de Cliente acl_agrp=Grupos de acceso: listl_lfnotcont=El archivo de arrendamientos de DHCPd $1 no contiene arrendamientos. esub_crheader=Crear Subred acl_apply=¿Puede aplicar los cambios? listl_lfnotexist=No existe el archivo de arrendamientos de DHCPd $1. index_return=índice index_addnet=Añadir una nueva red compartida acl_hide=¿Oculto objetos inaccesibles? ehost_eheader=Editar Máquina plib_invalidsn=no es un nombre de servidor válido log_modify_shared=Modificada red compartida $1 egroup_tblhdr=Detalles de Grupo index_nomemb=No hay miembros ssub_invalidsubaddr=no es una dirección de subred válida log_modify_subnet=Modificada subred $1 eopt_custom=Opción de cliente log_delete_host=Borrada máquina $1 plib_ddnsdom=Nombre de dominio de DNS dinámico eacl_psh=seleccionar máquina ehost_hname=Nombre de máquina esub_arange=Rangos de direcciones ehost_tabhdr=Detalles de Máquina sgroup_failsave=Falló al salvar grupo butt_vco=Ver Opciones de Cliente log_start=Servidor DHCP arrancado sgroup_invassign=grupo asignado a una sección incorrecta listl_ipaddr=Dirección IP pool_return=subred eopt_fontserv=Servidores de tipos de letra sshared_faildel=Falló al borrar red compartida plib_none=Ninguno sgroup_echanged=El contenido del archivo de configuración ha cambiado. Prueba otra vez. pool_edit=Editar Paquete de Direcciones listl_start=Fecha de Inicio eacl_puh=editar máquina acl_err=Error salvando lista ACL eacl_pug=editar grupo shost_invalidaddr='$1' contiene un nombre de máquina o una dirección IP inválidos egroup_eheader=Editar Grupo de Máquinas esh_return=lista de subred ehost_retshar=red compartida plib_chname=Nombre de máquina cliente secs=segs plib_swapserv=Servidores de intercambio plib_invaliddom=$1 no es un nombre válido de dominio index_tosubnet=Subred eacl_psn=seleccionar red compartida plib_dnsserv=Servidores DNS listl_active=activos acl_w=escribir eopt_returnshsub=red compartida esh_hosts=Máquinas diréctamente en esta red compartida plib_nisdom=Dominio de NIS cdel_hosts=máquinas plib_lebc=Fin de arrendamiento para clientes BOOTP default=Por defecto index_horder0=Asignación plib_ntpserv=Servidores NTP plib_nbscope=Ámbito de NetBIOS acl_asub=Subredes de acceso: ehost_subnet=En la subred $1/$2 cdel_return=lista de máquina y red index_version=DHCPd versión $1 de ISC esub_return=lista de subred index_net=Red acl_asha=Redes compartidas de acceso: sopt_invalidipp=no es un par de direcciones IP válido (como 1.2.3.4, 5.6.7.8) plib_timeserv=Servidores de hora index_addhst=Añadir una nueva máquina acl_rw=lectura/escritura restart_errmsg1=Falló al reiniciar dhcpd cdel_eunknown=Error desconocido esub_groups=Grupos diréctamente en esta Subred plib_xdmserv=Servidores XDM eopt_returnsub=lista de subred acl_per_sub_acls=¿Activo ACLs por subred? egroup_assign=Grupo asignado a plib_ddnsrevdom=Dominio inverso de DNS dinámico log_options_host=Modificadas opciones para máquina $1 cdel_subnet1=subred plib_ddnsupstyle=Estilo de actualización dinámica de DNS eacl_psg=seleccionar grupo cdel_host=máquina eacl_pin=añadir nuevas redes compartidas index_buttapply=Aplicar Cambios plib_statrouters=Rutas estáticas sopt_invalidint=no es un entero index_subtitle=Subredes y Redes Compartidas. log_modify_group=Modificado grupo de $1 máquinas index_parent=Padre index_hostgroup=Máquina/Grupo cdel_group2=grupo eopt_baddr=Dirección propagada (broadcast) index_horder1=Estructura de Archivo ehost_retsubn=subred eacl_pss=seleccionar subred plib_ddnshost=Nombre de máquina de DNS dinámico plib_ddnsup=¿DNS dinámico activado? ssub_invalidipr=no es un rango válido de direcciones IP index_norder1=Estructura de Archivo index_nameip=Nombre de máquina o IP acl_per_obj_acls=ACLs por objeto... shost_failsave=Falló al salvar máquina esub_shnet=Red compartida eopt_logserv=Servidores de diario ehost_fixedip=Dirección IP fijada acl_c=crear sopt_invalidip=no es una dirección IP válida pool_deny=Clientes denegados plib_maxlt=Máximo tiempo de arrendamiento eacl_pun=editar red compartida log_delete_subnet=Borrada subred $1 eopt_nisserv=Servidores NIS eopt_returngroup=grupo de máquinas butt_eco=Editar Opciones de Cliente acl_uniq_hst=¿Nombres únicos de máquina? esh_crheader=Crear Red Compartida esub_retshar=red compartida esub_nmask=Máscara de Red index_234memb=$1 miembros index_toshared=Red plib_leformat=Fecha de fin de arrendamiento debe de estar en formato W YYYY/MM/DD HH:MM:SS plib_bfname=Nombre de archivo de Boot esub_tabhdr=Detalles de Subred plib_fontserv=Servidores de tipos de letra eopt_xdmserv=Servidores XDM eopt_alltitle=Para todas las redes. máquinas y grupos plib_snmask=Máscara de subred index_group=Grupo: log_create_group=Creado grupo de $1 máquinas ssub_invalidnmask=no es una máscara de red válida esh_netname=Nombre de red eopt_ntpserv=Servidores NTP plib_invalidlt=no es un tiempo de arrendamiento válido plib_forever=Para siempre index_togroup=Grupo acl_paranoic=paranoico index_ndisplay=Mostrar redes y subredes por: eopt_dnsserv=Servidores DNS plib_llbc=Medida de arrendamiento para clientes BOOTP eopt_subtitle=Para subred $1 index_buttstart=Arrancar Servidor acl_ahst=Máquinas de acceso: cdel_subnet2=subred ehost_insubnet=Subred ssub_failsave=Falló al salvar subred cdel_shared2=red compartida log_apply=Cambios aplicados eacl_pus=editar subred esub_none=Ninguno eopt_cnum=Número plib_never=Nunca index_addsub=Añadir una nueva subred. eacl_pis=añadir nuevas subredes eacl_pdg=borrar grupo index_norder0=Asignación egroup_return=lista de máquinas index_hst=Máquinas y Grupos de Máquinas log_create_shared=Creada red compartida $1 esh_tabhdr=Detalles de Red Compartida log_delete_lease=Borrado arrendamiento para $1 butt_create=Crear index_buttego=Editar Opciones de Cliente cdel_group=grupo eopt_snettitle=Para red compartida $1 sshared_failsave=Falló al salvar red compartida restart_errmsg2=Falló al enviar señal al proceso esub_hosts=Máquinas diréctamente en esta Subred shost_invalidhwa='$1' no es una dirección $2 válida index_horder2=Nombre eopt_nisdom=Dominio NIS pool_header=Opciones de Paquete de direcciones shost_invalidhn=no es un nombre de máquina válido ehost_toplevel=Nivel superior log_options_group=Modificadas opciones para grupo de $1 máquinas esub_dbooptpq=¿BOOTP dinámico? acl_r=leer egroup_retshar=red compartida index_hdisplay=Mostrar máquinas y grupos por: eopt_swapserv=Servidores de intercambio plib_adhoc=Ad-hoc eacl_pdl=borrar arrendamientos index_start=Haz click en este botón para arrancar el servidor DHCP de tu sistema utilizando la configuración en curso. eacl_pglob=editar opcione globales listl_delete=Haz click en una dirección IP de arrendamiento de la lista superior para borrarla eopt_domname=Nombre de dominio eacl_pig=añadir nuevos grupos eopt_returnhost=lista de máquinas ehost_crheader=Crear Máquina shost_faildel=Falló al borrar máquina none=Ninguno eacl_psl=ver arrendamientos ehost_ingroup=Grupo index_horder3=Dirección de Hardware log_create_host=Creada máquina $1 sshared_invalidsname=Nombre de red compartida perdido o inválido index_nohst=No se han definido máquinas o grupos. esub_poolnone=No se ha definido paquetes de direcciones plib_babbr=Dirección propagada (broadcast) plib_logserv=Servidores de diario shost_invassign=máquina asignada a una sección incorrecta ehost_in=en esub_pooladd=Añadir un paquetes de direcciones index_nosubdef=No se han definido subredes o redes compartidas. start_failstart=Falló al iniciar dhcpd index_lal=Lista arrendamientos ahora suministrados por este servidor DHCP para las direcciones IP asignadas dinámicamente. eopt_timeserv=Servidores de hora plib_bfserv=Servidor de archivo de Boot log_delete_shared=Borrada red compartida $1 ehost_assign=Máquina asignada a listl_return=lista de subred listl_all=Lista todas los arrendamientos activos y expirados eacl_pih=añadir nuevas máquinas eopt_hosttitle=Para máquina $1 ehost_return=lista de máquinas egroup_hosts=Máquinas en este grupo plib_rdpath=Trayectoria de disco raíz eacl_pds=borrar subred plib_thisserv=Este servidor eopt_nbns=Servidores de nombre de NetBIOS sgroup_faildel=Falló al borrar grupo eopt_cval=Valor acl_per_hst_acls=¿Activo ACLs por máquina? cdel_shared1=red compartida sshared_nosubnet=La red compartida '$1' no contiene ninguna subred. index_dhcpdnotfound=El servidor de DHCP $1 no pudo ser encontrado en tu sistema. Quizá no está instalado o tu módulo de configuración de DHCP es incorrecto. cdel_header=Aviso eacl_aviol=Violación de control de acceso index_netmask=Máscara de red plib_deflt=Tiempo de arrendamiento por defecto cdel_txt=Borrando $1 '$2' también se borrará su contenido: eopt_chost=Nombre de máquina cliente index_title=Servidor DHCP index_hardware=Dirección de Hardware eopt_nbs=Ámbito de NetBIOS cdel_confirm=¿Reálmente deseas borrar este $1? eopt_smask=Máscara de subred eopt_statrouters=Rutas estáticas index_apply=Haz click en este botón para aplicar la configuración actual al servidor DHCP en ejecución mediante su parada y rearranque. eopt_rdpath=Trayectoria de disco raíz eacl_papply=rearrancar este servicio dhcpd/lang/sv0100644000567100000120000002527710655706244013143 0ustar jcameronwheelindex_title=DHCP-server index_dhcpdnotfound=Det gr inte att hitta DHCP-server $1 p ditt system. Den r frmodligen inte installerad, eller ocks r dina DHCP-modulinstllningar felaktiga. index_return=index index_dhcpdver=DHCP-server $1 verkar inte ha rtt version. Webmin stdjer bara ISC DHCPD version 2. index_subtitle=Delnt och delade ntverk index_nosubdef=Du har inte definierat ngra delnt eller delade ntverk. index_addsub=Lgg till ett delnt index_addnet=Lgg till ett delat ntverk index_nomemb=Inga medlemmar index_1memb=1 medlem index_234memb=$1 medlemmar index_memb=$1 medlemmar index_hst=Datorer och datorgrupper index_nohst=Du har inte definierat ngra datorer eller grupper. index_hostgroup=Dator/Grupp index_parent=Frlder index_hardware=Hrdvaruadress index_group=Grupp: index_nameip=Datornamn eller IP-nummer index_net=Ntverk index_netmask=Ntmask index_addhst=Lgg till en dator index_addhstg=Lgg till en datorgrupp index_buttego=ndra klientinstllningar index_ego=ndra DHCP-klientinstllningar som ska glla fr alla delnt, delade ntverk, datorer och datorgrupper index_buttlal=Rkna upp aktiva ln index_lal=Lista ln frn denna DHCP-server fr dynamiska IP-adresser. index_buttapply=Genomfr ndringar index_apply=Tryck p denna knapp fr att ta denna konfiguration i drift p aktiv DHCP-server genom att stanna och starta om den. index_buttstart=Starta server index_start=Tryck p denna knapp fr att starta en DHCP-server med denna konfiguration p ditt system. index_hdisplay=Ordna datorer och grupper efter: index_horder0=Niv index_horder1=Filstruktur index_horder2=Namn index_horder3=Hrdvaruadress index_horder4=IP-adress index_togroup=Grupp index_tosubnet=Delnt index_toshared=Ntverk index_ndisplay=Ordna nt och delnt efter: index_norder0=Niv index_norder1=Filstruktur index_norder2=Namn/IP-adress butt_save=Spara butt_eco=ndra klientinstllningar butt_vco=Visa klientinstllningar butt_del=Ta bort butt_create=Skapa esub_crheader=Lgg till delnt esub_edheader=ndra delnt esub_tabhdr=Uppgifter om delnt esub_naddr=Ntverksadress esub_nmask=Ntmask esub_arange=Adressintervall esub_dbooptpq=Dynamisk BOOTP? esub_shnet=Delat ntverk esub_hosts=Datorer direkt i detta delnt esub_groups=Grupper direkt i detta delnt esub_pools=Adresspooler fr delnt esub_pool=Pool $1 esub_poolnone=Du har inte angivit ngon adresspool esub_pooladd=Lgg till en adresspool esub_none=Ingen esub_return=lista ver delnt esub_retshar=delat ntverk esh_crheader=Skapa delat ntverk esh_eheader=ndra delat ntverk esh_tabhdr=Uppgifter om delat ntverk esh_netname=Ntverksnamn esh_hosts=Datorer direkt i detta delade ntverk esh_groups=Grupper direkt i detta delade ntverk esh_subn=Delnt i detta delade ntverk esh_return=lista ver delnt ehost_crheader=Lgg till dator ehost_eheader=ndra dator ehost_tabhdr=Uppgifter om dator ehost_hname=Datornamn ehost_nojavascr=Din webblsare verkar inte stda javascript. Vlj rtt alternativ ur listan nedan. ehost_assign=Dator p ehost_toplevel=Toppniv ehost_inshared=Delat ntverk ehost_insubnet=Delnt ehost_ingroup=Grupp ehost_hwaddr=Hrdvaruadress ehost_fixedip=Fast IP-adress ehost_subnet=I delnt $1/$2 ehost_shared=I det delade ntverket $1 ehost_in=i ehost_return=datorlista ehost_retgroup=grupp ehost_retsubn=delnt ehost_retshar=delat ntverk egroup_crheader=Lgg till datorgrupp egroup_eheader=ndra datorgrupp egroup_tblhdr=Uppgifter om datorgrupp egroup_assign=Gruppen avdelad till egroup_hosts=Datorer i denna grupp egroup_nchoice=Anvnda namnet som datornamn fr klienter? egroup_return=datorlista egroup_retsubn=delnt egroup_retshar=delat ntverk default=Standard secs=s none=Inga listl_header=DHCP-ln listl_lfnotexist=DHCPd-lnefilen $1 finns inte. listl_lfnotcont=DHCPd-lnefilen $1 innehller inte ngot $2 ln. listl_active=aktivt listl_ipaddr=IP-adress listl_ether=Ethernet listl_host=Datornamn listl_start=Startdatum listl_end=Slutdatum listl_return=lista ver ntverk och datorer listl_all=Visa alla aktiva och utgngna ln listl_delete=Klicka p en lne-IP-adress i listan ovan fr att ta bort den. restart_errmsg1=Det gick inte att starta om dhcpd restart_errmsg2=Det gick inte att skicka signal till process start_failstart=Det gick inte att starta dhcpd sgroup_faildel=Det gick inte att ta bort grupp sgroup_failsave=Det gick inte att spara grupp sgroup_invassign=gruppen har avdelats till en ogiltig sektion sgroup_echanged=Innehllet i konfigurationsfilen har ndrats. Frsk igen. shost_faildel=Det gick inte att ta bort dator shost_failsave=Det gick inte att spara dator shost_invalidhn=r inte ett giltigt datornamn shost_invalidhwa='$1' r inte en giltig $2-adress shost_invalidaddr='$1' innehller ett ogiltigt datornamn eller ogiltig IP-adress shost_invassign=datorn har avdelats till en ogiltig sektion sopt_failsave=Det gick inte att spara klientinstllningar sopt_invalidip=r inte en giltig IP-adress sopt_invalidint=r inte ett heltal sopt_invalidipp=r inte ett giltigt IP-adresspar (t ex 1.2.3.4,5.6.7.8) sshared_faildel=Det gick inte att ta bort det delade ntverket sshared_failsave=Det gick inte att spara delat ntverk sshared_invalidsname=Namnet p det delade ntverket saknas eller r inte ett giltigt namn. sshared_nosubnet=Det delade ntverket '$1' innehller inget delnt. ssub_faildel=Det gick inte att ta bort delntet ssub_failsave=Det gick inte att spara delntet ssub_invalidsubaddr=r inte en giltig delntsadress ssub_invalidnmask=r inte en giltig ntmask ssub_invalidipr=r inte ett giltigt IP-adressintervall ssub_nosubnet=Det delade ntverket '$1' innehller inget delnt. plib_deflt=Standardlnetid plib_bfname=Boot-filnamn plib_maxlt=Maximal lnetid plib_bfserv=Boot-filserver plib_thisserv=Denna server plib_servname=Servernamn plib_llbc=Lnetid fr BOOTP-klienter plib_forever=Alltid plib_lebc=Lnet upphr fr BOOTP-klienter plib_never=Aldrig plib_invalidlt=r inte en giltig lnetid plib_invalidsn=r inte ett giltigt servernamn plib_invaliddom=$1 r inte ett giltigt domnnamn plib_leformat=Datum fr lnets upphrande mste ha format W /MM/DD TT:MM:SS plib_copt=Klientinstllningar plib_chname=Datornamn fr klient plib_defrouters=Standardroutrar plib_snmask=Delntsmask plib_babbr=Broadcast-adress plib_domname=Domnnamn plib_dnsserv=DNS-servrar plib_timeserv=Tidservrar plib_logserv=Loggservrar plib_swapserv=Swap-server plib_rdpath=Skvg till rotdisk plib_nisdom=NIS-domn plib_nisserv=NIS-servrar plib_fontserv=Typsnittsservrar plib_xdmserv=XDM-servrar plib_statrouters=Statiska vgar plib_ntpserv=NTP-servrar plib_nbns=NetBIOS-namnservrar plib_nbscope=NetBIOS-omrde plib_nbntype=NetBIOS-nodtyp plib_ddnsdom=Dynamiskt DNS-domnnamn plib_ddnsrevdom=Dynamisk DNS-baktuppslagningsdomn plib_ddnsup=Sl p dynamisk DNS? plib_ddnshost=Datornamn fr dynamisk DNS plib_ddnshost_def=Frn klient eopt_header=Klientinstllningar eopt_subtitle=Fr delnt $1 eopt_returnsub=delnt eopt_returnshsub=delat ntverk eopt_snettitle=Fr delat ntverk $1 eopt_hosttitle=Fr dator $1 eopt_returnhost=dator eopt_returngroup=datorgrupp eopt_grouptitle=Fr grupper i $1 eopt_alltitle=Fr alla ntverk, datorer och grupper eopt_returnindex=ntverks- och datorlista eopt_tabhdr=Klientinstllningar eopt_chost=Datornamn fr klient eopt_defrouters=Standardroutrar eopt_smask=Delntsmask eopt_baddr=Broadcast-adress eopt_domname=Domnnamn eopt_dnsserv=DNS-servrar eopt_timeserv=Tidsservrar eopt_logserv=Loggservrar eopt_swapserv=Swap-server eopt_rdpath=Skvg till rotdisk eopt_nisdom=NIS-domn eopt_nisserv=NIS-servrar eopt_fontserv=Typsnittsservrar eopt_xdmserv=XDM-servrar eopt_statrouters=Statiska vgar eopt_ntpserv=NTP-servrar eopt_nbns=NetBIOS-namnservrar eopt_nbs=NetBIOS-omrde eopt_nbntype=NetBIOS-nodtyp eopt_custom=Egen instllning eopt_cnum=Nummer eopt_cval=Vrde log_apply=Tog ndringarna i drift log_start=Startade DHCP-server log_create_subnet=Skapade delnt $1 log_delete_subnet=Tog bort delnt $1 log_modify_subnet=Modifierade delnt $1 log_options_subnet=Modifierade instllningarna fr delnt $1 log_create_shared=Skapade delat ntverk $1 log_delete_shared=Tog bort delat ntverk $1 log_modify_shared=Modifierade delat ntverk $1 log_options_shared=Modifierade instllningarna fr delat ntverk $1 log_create_host=Lade till dator $1 log_delete_host=Tog bort dator $1 log_modify_host=Modifierade dator $1 log_options_host=Modifierade instllningarna fr dator $1 log_create_group=Skapade grupp med $1 datorer log_delete_group=Tog bort grupp med $1 datorer log_modify_group=Modifierade grupp med $1 datorer log_options_group=Modifierade instllningarna fr grupp med $1 datorer log_delete_lease=Tog bort lnet fr $1 pool_edit=ndra adresspool pool_create=Skapad adresspool pool_header=Instllningar fr adresspool pool_allow=Klienter som ska slppas fram pool_deny=Klienter som ska sprras pool_return=subnet cdel_header=Varning cdel_shared1=delat ntverk cdel_shared2=delat ntverk cdel_subnet1=delnt cdel_subnet2=delnt cdel_subnet=delnt cdel_subnets=delnt cdel_group1=grupp cdel_group2=grupp cdel_group=grupp cdel_groups=grupper cdel_host=dator cdel_hosts=datorer cdel_txt=Om du tar bort $1 '$2' kommer du ocks att ta bort dess innehll: cdel_confirm=Vill du verkligen ta bort den hr $1? cdel_eunknown=Oknt fel cdel_return=dator- och ntverkslista eacl_aviol=vertrdelse av tkomstrttigheter eacl_np=Du fr inte eacl_pdh=ta bort en dator eacl_pih=lgga till datorer eacl_puh=ndra en dator eacl_psh=ange en dator eacl_pdg=ta bort en grupp eacl_pig=lgga till grupper eacl_pug=ndra en grupp eacl_psg=ange en grupp eacl_pds=ta bort delnt eacl_pis=lgga till delnt eacl_pus=ndra ett delnt eacl_pss=ange ett delnt eacl_pdn=ta bort ett delat ntverk eacl_pin=lgga till delade ntverk eacl_pun=ndra ett delat ntverk eacl_psn=ange ett delat ntverk eacl_uniq=skapa dubbletter eacl_pdl=ta bort ln eacl_psl=se ln eacl_pglob=ndra globala instllningar eacl_papply=starta om denna tjnst acl_apply=Kunna ta ndringar i drift? acl_r_leases=Kunna se ln? acl_w_leases=Kunna ta bort ln? acl_global=Kunna ndra globala instllningar? acl_uniq_hst=Unika datornamn? acl_uniq_sub=Unika IP-adresser fr delnt? acl_uniq_sha=Unika namn fr delade nt? acl_seclevel=Skerhetsniv: acl_hide=Gmma objekt som inte gr att komma t? acl_ahst=Kom t datorer: acl_agrp=Kom t grupper: acl_asub=Kom t delnt: acl_asha=Kom t delade ntverk: acl_per_hst_acls=Mjliggra ACL:er per dator? acl_per_sub_acls=Mjliggra ACL:er per delnt? acl_per_obj_acls=ACL:er per objekt ... acl_na=ej tilltna acl_r1=endast fr lsning acl_rw=fr lsning och skrivning acl_c=skapa acl_r=ls acl_w=skriv acl_err=Ett fel uppstod nr ACL:en skulle sparas. acl_ernow=Om du vill mjliggra tkomst fr skrivning i globala ACL:er fr ngot objekt, msste du ocks sl p lstkomst fr denna typ av objekt. acl_normal=normal acl_paranoic=paranoid dhcpd/lang/de0100644000567100000120000001614410655706244013074 0ustar jcameronwheelbutt_create=Erstellen butt_del=Löschen butt_eco=Bearbeite Client-Einstellungen butt_save=Speichern default=Standard egroup_crheader=Hostgruppe erstellen egroup_eheader=Hostgruppe bearbeiten egroup_hosts=Hosts in dieser Gruppe egroup_nchoice=Benutze Name als Client-Hostname? egroup_return=Hostliste egroup_tblhdr=Gruppendetails ehost_crheader=Host erstellen ehost_eheader=Host bearbeiten ehost_fixedip=Feste IP-Adresse ehost_hname=Hostname ehost_return=Hostliste ehost_tabhdr=Hostdetails eopt_alltitle=Für alle Netzwerke, Hosts und Gruppen eopt_baddr=Broadcast-Adresse eopt_chost=Client-Hostname eopt_defrouters=Standard-Router eopt_dnsserv=DNS-Server eopt_domname=Domainenname eopt_fontserv=Font-Server eopt_grouptitle=Für $1 Mitgliedergruppen eopt_header=Client-Einstellungen eopt_hosttitle=Für Host $1 eopt_logserv=Protokoll-Server eopt_nbns=NetBIOS-Nameserver eopt_nbntype=NetBIOS-Verbindungstyp eopt_nbs=NetBIOS-Scope eopt_nisdom=NIS-Domaine eopt_nisserv=NIS-Server eopt_ntpserv=NTP-Server eopt_rdpath=Stammverzeichnispfad eopt_returnhost=Host eopt_returnindex=Netzwerk- und Hostliste eopt_returnsub=Subnet eopt_smask=Subnet-Maske eopt_snettitle=Für freigegebenes Netzwerk $1 eopt_statrouters=Statische Routen eopt_subtitle=Für Subnet $1 eopt_swapserv=Swap-Server eopt_tabhdr=Client-Einstellungen eopt_timeserv=Zeit-Server eopt_xdmserv=XDM-Server esh_crheader=Freigegebenes Netzwerk erstellen esh_eheader=Freigegebenes Netzwerk bearbeiten esh_netname=Netzwerkname esh_return=Subnet-Liste esh_tabhdr=Details des freigegebenen Netzwerks esub_arange=Adressbereiche esub_crheader=Subnet erstellen esub_dbooptpq=Dynamisches BOOTP? esub_edheader=Subnet bearbeiten esub_naddr=Netzwerkadresse esub_nmask=Netzmaske esub_return=Subnet-Liste esub_shnet=Freigegebenes Netzwerk esub_tabhdr=Subnet-Details index_1memb=1 Mitglied index_234memb=$1 Mitglieder index_addhst=Einen neuen Host hinzufügen index_addhstg=Eine neue Hostgruppe hinzufügen index_addnet=Ein neues freigegebenes Netzwerk hinzufügen index_addsub=Ein neues Subnet hinzufügen index_addzone=Eine neue DNS-Zone hinzufügen index_apply=Klicken Sie auf diese Schaltfläche, um die aktuelle Konfiguration auf den laufenden DHCP-Server anzuwenden (dies geschieht durch Stoppen und Neustarten des Servers). index_buttapply=Änderungen anwenden index_buttego=Bearbeite Client-Einstellungen index_buttekey=TSIG-Schlüssel bearbeiten index_buttetext=Konfigurationsdatei index_buttlal=Liste aktive Vergaben auf index_buttstart=Server starten index_dhcpdnotfound=Der DHCP-Server $1 konnte auf Ihrem System nicht gefunden werden. Vielleicht ist er nicht installiert, oder Ihre DHCP-Modulkonfiguration ist fehlerhaft. index_ego=Bearbeite DHCP-Einstellungen und wende sie auf alle Subnets, freigegebene Netzwerke, Hosts und Hostgruppen an index_hostgroup=Host/Gruppe index_hst=Hosts und Hostgruppen index_key=TSIG-Schlüssel bearbeiten (zur Authentifizierung von Dynamic Updates bei DNS-Servern) index_lal=Listet Vergaben auf, die z.Z. von diesem DHCP-Server als dynamische IP-Adressen vergeben wurden index_memb=$1 Mitglieder index_nohst=Es wurden keine Hosts oder Gruppen definiert. index_nomemb=Keine Mitglieder index_nosubdef=Keine Subnets oder freigegebene Netzwerke wurden definiert. index_return=Index index_start=Klicken Sie auf diese Schaltfläche, um den DHCP-Server auf Ihrem System mit der aktuellen Konfiguration zu aktivieren index_subtitle=Subnets und freigegebene Netzwerke index_text=Konfigurationsdatei im Texteditor bearbeiten (Vorsicht!) index_title=DHCP-Server index_zone=Zone keys_alg=Algorithmus keys_create=Erstellte TSIG-Schlüssel keys_ecannot=Sie haben nicht die Berechtigung, DNS-Schlüssel zu bearbeiten keys_edit=TSIG-Schlüssel bearbeiten keys_ekey='$1' ist keine gültige Schlüssel-ID keys_err=Fehler beim Abspeichern des DNS-Schlüssels keys_esecret=Fehlende oder ungültige Base-64 kodierte Daten für Schlüssel $1 keys_id=Schlüsselnummer keys_secret=Passphrase keys_title=DNS-Schlüssel listl_active=Aktiv listl_end=Enddatum listl_ether=Ethernet listl_header=DHCP-Vergaben listl_host=Hostname listl_ipaddr=IP-Adressen listl_lfnotcont=Die DHCPd-Vergabendatei $1 enthält keine Vergaben. listl_lfnotexist=Die DHCPd-Vergabendatei $1 existiert nicht. listl_return=Netzwerk- und Hostliste listl_start=Startdatum none=Keine plib_babbr=Broadcast-Adresse plib_bfname=Boot-Dateiname plib_bfserv=Boot-Datei-Server plib_chname=Client-Hostname plib_clientupdates=Client-Updates: Dürfen Clients ihre eigenen Einträge ändern? plib_copt=Client-Einstellungen plib_deflt=Standardvergabezeit plib_defrouters=Standard-Router plib_dnsserv=DNS-Server plib_domname=Domainenname plib_fontserv=Font-Server plib_forever=Endlos plib_invalidlt=ist keine gültige Vergabezeit plib_invalidsn=ist kein gültiger Server-Name plib_lebc=Vergabeende für BOOTP-Clients plib_leformat=Vergabeenddatum muß das Format W JJJJ/MM/TT HH:MM:SS haben plib_llbc=Vergabelänge für BOOTP-Clients plib_logserv=Protokoll-Server plib_maxlt=Maximale Vergabezeit plib_nbns=NetBIOS-Nameserver plib_nbntype=NetBIOS-Verbindungstyp plib_nbscope=NetBIOS-Scope plib_never=Niemals plib_nisdom=NIS-Domaine plib_nisserv=NIS-Server plib_ntpserv=NTP-Server plib_rdpath=Stammverzeichnispfad plib_servname=Server-Name plib_snmask=Subnet-Maske plib_statrouters=Statische Routen plib_swapserv=Swap-Server plib_thisserv=Dieser Server plib_timeserv=Zeit-Server plib_xdmserv=XDM-Server restart_errmsg1=Das Neustarten des dhcpd schlug fehl restart_errmsg2=Fehler beim Senden des Signals an den Prozess secs=Sek. sgroup_faildel=Das Löschen der Gruppe schlug fehl sgroup_failsave=Fehler beim Speichern der Gruppe shost_faildel=Das Löschen des Hosts schlug fehl shost_failsave=Das Speichern des Hosts schlug fehl shost_invalidhn=ist kein gültiger Hostname shost_invalidhwa='$1' ist kein gültige $2 Adresse sopt_failsave=Fehler beim Speichern der Client-Einstellungen sopt_invalidint=ist keine ganze Zahl sopt_invalidip=ist keine gültige IP-Adresse sopt_invalidipp=ist kein gültiges IP-Adressenpaar (wie z. B. 1.2.3.4, 5.6.7.8) sshared_faildel=Das Löschen des freigegebenen Netzwerks schlug fehl sshared_failsave=Das Speichern des freigegebenen Netzwerks schlug fehl sshared_invalidsname=Fehlender oder ungültiger Name für freigegebenenes Netzwerk ssub_faildel=Das Löschen des Subnets schlug fehl ssub_failsave=Fehler beim Speichern des Subnets ssub_invalidipr=ist kein gültiger IP-Bereich ssub_invalidnmask=ist keine gültige Netzmaske ssub_invalidsubaddr=ist keine gültige Subnet-Adresse start_failstart=Das Starten des dhcpd schlug fehl text_editor=Texteditor text_return=Hauptmenü text_title=dhcpd.conf text_undo=Rückgängig zone_crheader=Zone erstellen zone_desc=Beschreibung der Zone (optional) zone_eheader=Zone bearbeiten zone_faildel=Fehler beim Löschen der Zone zone_failsave=Fehler beim Abspeichern der Zone zone_key=DNS-Zonen zone_name=Zonen-Name zone_primary=IP des prim. NS zone_return=Hauptmenü zone_tabhdr=Zonen-Details zone_tsigkey=TSIG-Schlüssel dhcpd/lang/nl0100644000567100000120000002613410655706244013115 0ustar jcameronwheelindex_title=DHCP Server index_dhcpdnotfound=Er is geen DHCP server $1 op uw systeem gevonden. Misschien is er geen genstalleerd of is uw DHCP module configuratie niet juist. index_return=index index_dhcpdver=De DHCP server $1 lijkt niet van het juiste niveau te zijn. Webmin ondersteunt alleen ISC DHCPD versie 2. index_subtitle=Subnetten en Gedeelde Netwerken index_nosubdef=Er zijn geen subnetten of gedeelde netwerken gedefinieerd. index_addsub=Voeg een nieuw subnet toe index_addnet=Voeg een nieuw gedeeld netwerk toe index_nomemb=Geen leden index_1memb=1 lid index_234memb=$1 leden index_memb=$1 members index_hst=Hosts and Host Groepen index_nohst=Er zijn geen hosts of groepen gedefinieerd. index_hostgroup=Host/Groep index_parent=Ouder index_hardware=Hardware Adres index_group=Groep: index_nameip=Hostnaam of IP index_net=Netwerk index_netmask=Netmask index_addhst=Voeg een nieuwe host toe index_addhstg=Voeg een nieuwe groep toe index_buttego=Wijzig Opties Clint index_ego=Wijzig opties van de clint die van toepassing zijn op alle sub-netten, gedeelde netwerken, hosts en groepen. index_buttlal=Toon Aktieve Leases index_lal=Toon leases die deze DHCP server heeft uitgegeven voor dynamisch toegekende IP adressen. index_buttapply=Toepassen index_apply=Klik hier om de huidige configuratie toe te passen op de draaiende DHCP server, door die te stoppen en te starten. index_buttstart=Start Server index_start=Klik hier om de DHCP server op uw systeem te starten met de huidige configuratie. index_hdisplay=Toon hosts en groepen per: index_horder0=Toekenning index_horder1=Bestandsstructuur index_horder2=Naam index_horder3=Hardware adres index_horder4=IP adres index_togroup=Groep index_tosubnet=Subnet index_toshared=Netwerk index_ndisplay=Toon netten en subnetten per: index_norder0=Toewijzing index_norder1=Bestandsstructuur index_norder2=Naam/IP adres index_version=ISC DHCPD version $1 index_buttiface=Bewerk Netwerkinterface index_iface=Specificeer de interfaces waar DHCP opluistert. butt_save=Opslaan butt_eco=Wijzig Opties van Client butt_vco=Bekijk Opties van Client butt_del=Verwijderen butt_create=Aanmaken esub_crheader=Maak Subnet aan esub_edheader=Wijzig Subnet esub_tabhdr=Details van Subnet esub_naddr=Netwerk adres esub_nmask=Netmask esub_arange=Adres reeksen esub_dbooptpq=Dynamisch BOOTP ? esub_shnet=Gedeeld netwerk esub_hosts=Hosts direct in dit subnet esub_groups=Groepen direct in dit subnet esub_pools=Adres Pools voor Subnet esub_pool=Pool $1 esub_poolnone=Geen adres pools gedefinieerd esub_pooladd=Voeg een adres pool toe esub_none=Geen esub_return=subnet lijst esub_retshar=gedeeld network esh_crheader=Maak Gedeeld Netwerk aan esh_eheader=Wijzig Gedeeld Netwerk esh_tabhdr=Details van Gedeeld Netwerk esh_netname=Netwerknaam esh_hosts=Hosts direct in dit gedeelde netwerk esh_groups=Groepen direct in dit gedeelde netwerk esh_subn=Subnetten in dit gedeelde netwerk esh_return=subnet lijst ehost_crheader=Maak Host aan ehost_eheader=Wijzig Host ehost_tabhdr=Details van Host ehost_hname=Host naam ehost_nojavascr=Uwr browser ondersteunt geen javascript. U moet nu de juiste positie selecteren uit onderstaande lijst. ehost_assign=Host toegekend aan ehost_toplevel=Topniveau ehost_inshared=Gedeeld Netwerk ehost_insubnet=Subnet ehost_ingroup=Groep ehost_hwaddr=Hardware Adres ehost_fixedip=Vast IP adres ehost_subnet=In subnet $1/$2 ehost_shared=In gedeeld netwerk $1 ehost_in=in ehost_return=host lijst ehost_retgroup=groep ehost_retsubn=subnet ehost_retshar=gedeeld netwerk egroup_crheader=Maak Host Groep aan egroup_eheader=Wijzig Host Groep egroup_tblhdr=Details van Groep egroup_assign=Groep toegekend aan egroup_hosts=Hosts in deze groep egroup_nchoice=Naam als client hostnaam gebruiken? egroup_return=host lijst egroup_retsubn=subnet egroup_retshar=gedeeld netwerk default=Standaard secs=sec. none=Geen listl_header=DHCP Leases listl_lfnotexist=Het DHCPd lease bestand $1 komt niet voor. listl_lfnotcont=Het DHCPd lease bestand $1 bevat geen leases. listl_active=actief listl_ipaddr=IP Adres listl_ether=Ethernet listl_host=Hostnaam listl_start=Start Datum listl_end=Eind Datum listl_return=netwerk en host lijst listl_all=Toon alle actieve en verlopen leases listl_delete=Klik op een lease IP adres van bovenstaande lijst om die lease te verwijderen. restart_errmsg1=Herstarten dhcpd niet gelukt restart_errmsg2=Signal process niet gelukt start_failstart=Starten dhcpd niet gelukt sgroup_faildel=Verwijderen van groep niet gelukt sgroup_failsave=Opslaan van groep niet gelukt sgroup_invassign=groep toegekend aan een onjuiste sectie sgroup_echanged=De inhoud van het configuratiebestand is veranderd. Probeer opnieuw. shost_faildel=Verwijderen van host niet gelukt shost_failsave=Opslaan van host niet gelukt shost_invalidhn=is geen geldige hostnaam shost_invalidhwa='$1' is geen geldig $2 adres shost_invalidaddr='$1' bevat een ongeldige hostnaam of IP adres shost_invassign=host toegekend aan een onjuiste sectie sopt_failsave=Opslaan van clint opties niet gelukt sopt_invalidip=is een ongeldig IP adres sopt_invalidint=is geen geheel getal sopt_invalidipp=is een ongeldig paar IP adressen (zoals: 1.2.3.4,5.6.7.8) sshared_faildel=Verwijderen gedeeld netwerk niet gelukt sshared_failsave=Opslaan gedeeld netwerk niet gelukt sshared_invalidsname=Naam van gedeeld netwerk ontbreekt of is ongeldig. sshared_nosubnet=Gedeeld netwerk '$1' bevat geen enkel subnet. ssub_faildel=Verwijderen subnet niet gelukt ssub_failsave=Opslaan subnet niet gelukt ssub_invalidsubaddr=is een ongeldig subnet adres ssub_invalidnmask=is een ongeldig netmask ssub_invalidipr=is een ongeldig IP adres ssub_nosubnet=Gedeeld netwerk '$1' bevat geen enkel subnet. plib_deflt=Standaard lease-duur plib_bfname=Boot bestandsnaam plib_maxlt=Maximum lease-duur plib_bfserv=Boot file server plib_thisserv=Deze server plib_servname=Server naam plib_llbc=Lease-duur voor BOOTP clinten plib_forever=Oneindig plib_lebc=Einde lease voor BOOTP clinten plib_never=Nooit plib_invalidlt=is geen geldige lease-duur plib_invalidsn=is geen geldige server naam plib_invaliddom=$1 is geen geldige domein naam plib_leformat=Einddatum lease moet het formaat hebben: W YYYY/MM/DD HH:MM:SS plib_copt=Clint Opties plib_chname=Clint hostnaam plib_defrouters=Standaard routers plib_snmask=Subnet masker plib_babbr=Broadcast adres plib_domname=Domeain naam plib_dnsserv=DNS servers plib_timeserv=Tijd servers plib_logserv=Log servers plib_swapserv=Swap server plib_rdpath=Root disk pad plib_nisdom=NIS domein plib_nisserv=NIS servers plib_fontserv=Font servers plib_xdmserv=XDM servers plib_statrouters=Statische routes plib_ntpserv=NTP servers plib_nbns=NetBIOS naam servers plib_nbscope=NetBIOS scope plib_nbntype=NetBIOS node type plib_ddnsdom=Dynamische DNS domein naam plib_ddnsrevdom=Dynamische DNS reverse domein plib_ddnsup=Dynamische DNS ingeschakeld? plib_ddnshost=Dynamische DNS hostnaam plib_ddnshost_def=Van clint eopt_header=Clint Opties eopt_subtitle=Voor subnet $1 eopt_returnsub=subnet eopt_returnshsub=gedeeld netwerk eopt_snettitle=Voor gedeeld netwerk $1 eopt_hosttitle=Voor host $1 eopt_returnhost=host eopt_returngroup=host groep eopt_grouptitle=Voor $1 leden groep eopt_alltitle=Voor alle netwerken, hosts en groepen eopt_returnindex=netwerk en host lijst eopt_tabhdr=Clint Opties eopt_chost=Clintt hostnaam eopt_defrouters=Standaard routers eopt_smask=Subnet masker eopt_baddr=Broadcast adres eopt_domname=Domein naam eopt_dnsserv=DNS servers eopt_timeserv=Tijd servers eopt_logserv=Log servers eopt_swapserv=Swap server eopt_rdpath=Root disk pad eopt_nisdom=NIS domein eopt_nisserv=NIS servers eopt_fontserv=Font servers eopt_xdmserv=XDM servers eopt_statrouters=Statische routes eopt_ntpserv=NTP servers eopt_nbns=NetBIOS naam servers eopt_nbs=NetBIOS scope eopt_nbntype=NetBIOS node type eopt_custom=Custom optie eopt_cnum=Aantal eopt_cval=Waarde log_apply=Wijzigingen aangebracht log_start=DHCP server gestart log_create_subnet=Subnet $1 aangemaakt log_delete_subnet=Subnet $1 verwijderd log_modify_subnet=Subnet $1 gewijzigd log_options_subnet=Opties voor subnet $1 gewijzigd log_create_shared=Gedeeld netwerk $1 aangemaakt log_delete_shared=Gedeeld netwerk $1 verwijderd log_modify_shared=Gedeeld netwerk $1 gewijzigd log_options_shared=Opties voor gedeeld netwerk $1 gewijzigd log_create_host=Host $1 aangemaakt log_delete_host=Host $1 verwijderd log_modify_host=Host $1 gewijzigd log_options_host=Opties voor host $1 gewijzigd log_create_group=Host groep $1 hosts aangemaakt log_delete_group=Host groep $1 verwijderd log_modify_group=Host groep $1 gewijzigd log_options_group=Opties voor host groep $1 hosts gewijzigd log_delete_lease=Lease voor $1 verwijderd pool_edit=Adres Pool Wijzigen pool_create=Adres Pool Aanmaken pool_header=Adres Pool Opties pool_allow=Toegestane Clinten pool_deny=Niet toegestane Clinten pool_return=subnet cdel_header=Waarschuwing cdel_shared1=gedeeld netwerk cdel_shared2=gedeeld netwerk cdel_subnet1=subnet cdel_subnet2=subnet cdel_subnet=subnet cdel_subnets=subnetten cdel_group1=groep cdel_group2=groep cdel_group=groep cdel_groups=groepen cdel_host=host cdel_hosts=hosts cdel_txt=Verwijdering van $1 '$2' zal tevens de inhoud ervan verwijderd worden: cdel_confirm=Wilt u echt deze $1 verwijderen ? cdel_eunknown=Onbekende fout cdel_return=host- en netwerk lijst eacl_aviol=Overtreding toegangsregels eacl_np=U hebt geen toestemming om eacl_pdh=hosts te verwijderen eacl_pih=hosts toe te voegen eacl_puh=hosts te wijzigen eacl_psh=selecteer host eacl_pdg=verwijder groeup eacl_pig=voeg nieuwe groep toe eacl_pug=wijzig groep eacl_psg=selecteer groep eacl_pds=verwijder subnet eacl_pis=voeg nieuwe subnets toe eacl_pus=wijzig subnet eacl_pss=selecteer subnet eacl_pdn=verwijder gedeeld netwerk eacl_pin=voeg nieuw gedeelde netwerken toe eacl_pun=wijzig gedeeld netwerk eacl_psn=selecteer gedeeld netwerk eacl_uniq=maak duplicaten aan eacl_pdl=verwijder leases eacl_psl=bekijk leases eacl_pglob=wijzig globale opties eacl_papply=herstart deze service acl_apply=Kan wijzigen aanbrengen? acl_r_leases=Kan leases bekijken? acl_w_leases=Kan leases verwijderen? acl_global=Kan globale opties wijzigen? acl_uniq_hst=Unieke hostnamen? acl_uniq_sub=Unieke subnet IP addressen? acl_uniq_sha=Unieke gedeeld net namen? acl_seclevel=Gebruik beveiligingsniveau: acl_hide=Niet-toegankelijke objecten verbergen? acl_ahst=Toegang tot hosts: acl_agrp=Toegang tot groepen: acl_asub=Toegang tot subnetten: acl_asha=Toegang tot gedeelde netten: acl_per_hst_acls=ACL's per host inschakelen? acl_per_sub_acls=ACL's per subnet inschakelen? acl_per_obj_acls=ACL's per object... acl_na=niet toegestaan acl_r1=alleen-lezen acl_rw=lezen/schrijven acl_c=aanmaken acl_r=lezen acl_w=schrijven acl_err=Fout bij opslaan ACL lijst acl_ernow=Als u schrijf toegang in globale ACL's voor sommige objecten wilt aanzetten, moet u ook lees toegang voor dit type object regelen. acl_normal=normaal acl_paranoic=paranode iface_title=Netwerk Interface iface_desc=De DHCP server zal alleen IP adressen uitgeven op de netwerken die verbonden zijn met deze interfaces. De interfaces voor alle gedefinieerde subnetten moet hier worden opgegeven. Indien niets wordt opgegeven zal dhcpd proberen de interface zelf te vinden. iface_listen=Luister op interfaces dhcpd/lang/tr0100644000567100000120000001444710655706244013135 0ustar jcameronwheelindex_title=DHCP Sunucusu index_dhcpdnotfound=DHCP sunucusu $1 sisteminizde bulunamad.Kurulmam ya da DHCP modl ayarlar yanl olabilir index_return=indeks index_dhcpdver=DHCP sunucusu $1 doru versiyona sahip deildir.Webmin sadece ISC DHCPD versiyon 2'yi destekler index_subtitle=Alt ve Paylalm Alar index_nosubdef=Alt ya da paylalm a tanmlanmam index_addsub=Yeni bir alt a ekle index_addnet=Yeni bir paylalm a ekle index_nomemb=ye yok index_1memb=1 ye index_234memb=$1 yeler index_memb=$1 yeler index_hst=Makineler ve Makine Gruplar index_nohst=Makine ya da gruplar tanmlanmam index_addhst=Yeni bir makine ekle index_addhstg=Yeni bir makine grubu ekle index_buttego=Genel Seenekleri deitir index_ego=Btn alt alar, paylalm alar, makine ve gruplara uygulanan DHCP seeneklerini deitir index_buttlal=Aktif Komular Listele index_lal=DHCP sunucusu ile dinamik olarak tanmlanm komular listele index_buttapply=Deiiklikleri Uygula index_apply=Bu butonu tklayarak alan DHCP sunucusunu durdurup tekrar balatabilirsiniz index_buttstart=Sunucuyu Balat index_start=Bu butonu tklayarak varolan ayarlar ile DHCP sunucusunu altrabilirsiniz butt_save=Kaydet butt_eco=stemci Seeneklerini Deitir butt_del=Sil butt_create=Olutur esub_crheader=Alt A Olutur esub_edheader=Alt A Deitir esub_tabhdr=Alt A Ayrntlar esub_naddr=A Adresleri esub_nmask=Netmask esub_arange=Adres Alanlar esub_dbooptpq=Dinamik BOOTP ? esub_shnet=Paylalm A ? esub_return=alt a listesi esh_crheader=Paylalm A Olutur esh_eheader=Paylalm A Deitir esh_tabhdr=Paylalm A Ayrntlar esh_netname=A smi esh_return=alt a listesi ehost_crheader=Makine Olutur ehost_eheader=Makineyi Deitir ehost_tabhdr=Makine Ayrntlar ehost_hname=Makine ismi ehost_fixedip=Sabitlenmi IP adresi ehost_return=makine listesi egroup_crheader=Makine Grubu Olutur egroup_eheader=Makine Grubunu Deitir egroup_tblhdr=Grup Ayrntlar egroup_hosts=Bu gruptaki makineler egroup_nchoice=simi istemci makine ad olarak kullan? egroup_return=makine listesi yes=Evet no=Hayr default=ntanml secs=saniye none=Hibiri listl_header=DHCP Gecikmeleri listl_lfnotexist=The DHCPd gecikme dosyas $1 mevcut deil listl_lfnotcont=The DHCPd gecikme dosyas $1 $2 gecikmeleri iermiyor listl_active=aktif listl_ipaddr=IP Adresi listl_ether=Ethernet listl_host=Makine Ad listl_start=Balang Zaman listl_end=Biti Zaman listl_return=alt a listesi restart_errmsg1=Dhcpd'nin Yeniden balatlmasnda hata olutu restart_errmsg2=lem sinyalinde hata olutu start_failstart=dhcpd'nin balatlmasnda hata olutu sgroup_faildel=Grubun silinmesinde hata olutu sgroup_failsave=Grubun kaydedilmesinde hata olutu shost_faildel=Makinenin silinmesinde hata olutu shost_failsave=Makinenin kaydedilmesinde hata olutu shost_invalidhn=geerli bir makine ad deil shost_invalidhwa='$1' geerli $2 adresi deil sopt_failsave=stemci seeneklerinin kaydedilmesinde hata olutu sopt_invalidip=geerli bir IP adresi deil sopt_invalidint=bir tam say deil sopt_invalidipp=geerli bir IP adres ifti deil (1.2.3.4,5.6.7.8 gibi) sshared_faildel=Paylalm an silinmesinde hata olutu sshared_failsave=Paylalm an kaydedilmesinde hata olutu sshared_invalidsname=Kayp ya da yanl paylalm a ad ssub_faildel=Alt an silinmesinde hata olutu ssub_failsave=Alt an kaydedilmesinde hata olutu ssub_invalidsubaddr=geerli bir alt a adresi deil ssub_invalidnmask=geerli bir a maskesi deil ssub_invalidipr=geerli bir IP adres alan deil plib_deflt=ntanml gecikme sresi plib_bfname=Al dosya ismi plib_maxlt=En byk gecikme zaman plib_bfserv=Al dosya sunucusu plib_thisserv=Bu sunucu plib_servname=Sunucu ismi plib_llbc=BOOTP istemcileri iin gecikme uzunluu plib_forever=Daima plib_lebc=BOOTP istemcileri iin gecikme sonu plib_never=Asla plib_invalidlt=geerli bir gecikme sresi deil plib_invalidsn=geerli bir sunucu ismi deil plib_leformat=Gecikme sonu zaman bu ekilde olmaldr W YYYY/MM/DD HH:MM:SS plib_copt=stemci Seenekleri plib_chname=stemci Makine Ad plib_defrouters=n tanml ynlendiriciler plib_snmask=Alt a maskesi plib_babbr=Yayn(Broadcast) adresi plib_domname=Alan ismi plib_dnsserv=DNS sunucusu plib_timeserv=Zaman sunucular plib_logserv=Log sunucular plib_swapserv=Takas(swap) sunucusu plib_rdpath=Root disk yolu plib_nisdom=NIS alan plib_nisserv=NIS sunucular plib_fontserv=Font sunucular plib_xdmserv=XDM sunucular plib_statrouters=Sabit routes plib_ntpserv=NTP sunucular plib_nbns=NetBIOS isim sunucular plib_nbscope=NetBIOS sahas plib_nbntype=NetBIOS dm tipi eopt_header=stemci Seenekleri eopt_subtitle=$1 alt a iin eopt_returnsub=alt a listesi eopt_snettitle=Paylalm a $1 iin eopt_hosttitle=Makine $1 iin eopt_returnhost=makine listesi eopt_grouptitle=$1 ye grubu iin eopt_alltitle=Btn alar, makineler ve gruplar iin eopt_returnindex=indeks eopt_tabhdr=stemci Seenekleri eopt_chost=stemci Makine Ad eopt_defrouters=n tanml ynlendiriciler eopt_smask=Alt a maskesi eopt_baddr=Yayn adresi eopt_domname=Alan ad eopt_dnsserv=DNS sunucular eopt_timeserv=Zaman sunucular eopt_logserv=Log sunucular eopt_swapserv=Takas(swap) sunucusu eopt_rdpath=Root disk yolu eopt_nisdom=NIS alan eopt_nisserv=NIS sunucular eopt_fontserv=Font sunucular eopt_xdmserv=XDM sunucular eopt_statrouters=Sabit routes eopt_ntpserv=NTP sunucular eopt_nbns=NetBIOS isim sunucular eopt_nbs=NetBIOS sahas eopt_nbntype=NetBIOS dm tipi log_apply=Deiiklikler uyguland log_start=DHCP sunucusu balatld log_create_subnet=Alt blge $1 oluturuldu log_delete_subnet=Alt blge $1 silindi log_modify_subnet=Alt blge $1 deitirildi log_options_subnet=Alt blge $1 iin deenekler deitirildi log_create_shared=Paylalm a $1 oluturuldu log_delete_shared=Paylalm a $1 silindi log_modify_shared=Paylalm a $1 deitirildi log_options_shared=Paylalm a $1 iin seenekler deitirildi log_create_host=$1 makinesi oluturuldu log_delete_host=$1 makinesi silindi log_modify_host=$1 makinesi deitirildi log_options_host=$1 makinesi iin seenekler deitirildi log_create_group=$1 makine grubu oluturuldu log_delete_group=$1 makine grubu silindi log_modify_group=$1 makine grubu deitirildi log_options_group=$1 makine grubunun seenekleri deitirildi dhcpd/lang/pl0100644000567100000120000002663710655706244013127 0ustar jcameronwheelindex_title=Serwer DHCP index_dhcpdnotfound=Nie znaleziono w Twoim systemie serwera DHCP $1. Moliwe, e nie jest on zainstalowany lub Twoja konfiguracja moduu DHCP jest nieprawidowa. index_return=indeksu index_dhcpdver=Niewaciwa wersja serwera DHCP $1. Webmin obsuguje jedynie ISC DHCPD w wersji 2. index_subtitle=Podsieci i sieci wspdzielone index_nosubdef=Nie zdefiniowano podsieci ani sieci wspdzielonych. index_addsub=Dodaj now podsie index_addnet=Dodaj now sie wspdzielon index_nomemb=Brak hostw index_1memb=1 host index_234memb=$1 hosty index_memb=$1 hostw index_hst=Hosty i grupy hostw index_nohst=Nie zdefiniowano hostw ani grup hostw. index_hostgroup=Host/grupa index_parent=Naley do index_hardware=Adres sprztowy index_group=Grupa: index_nameip=Nazwa lub IP hosta index_net=Podsie index_netmask=Maska sieci index_addhst=Dodaj nowy host index_addhstg=Dodaj now grup hostw index_buttego=Zmie opcje klienta index_ego=Zmie opcje klienta DHCP, ktre dotycz wszystkich podsieci, sieci wspdzielonych, hostw i ich grup. index_buttlal=Poka aktywne dzierawy index_lal=Poka dzierawy obecnie udzielone przez ten serwer DHCP dla dynamicznie przypisanych adresw IP. index_buttapply=Zastosuj zmiany index_apply=Nacinij ten przycisk, aby zastosowa biec konfiguracj dla dziaajcego serwera DHCP poprzez zatrzymanie go i ponowne uruchomienie. index_buttstart=Uruchom serwer index_start=Nacinij ten przycisk, aby uruchomi serwer DHCP w twoim systemie z wykorzystaniem biecej konfiguracji. index_hdisplay=Wywietla hosty i grupy wg: index_horder0=Przynalenoci index_horder1=Struktury pliku index_horder2=Nazwy index_horder3=Adresu sprztowego index_horder4=Adresu IP index_togroup=grupy index_tosubnet=podsieci index_toshared=sieci index_ndisplay=Wywietla sieci i podsieci wg: index_norder0=Przynalenoci index_norder1=Struktury pliku index_norder2=Nazwy/adresu IP butt_save=Zachowaj butt_eco=Zmie opcje stacji klienckiej butt_vco=Poka opcje stacji klienckiej butt_del=Usu butt_create=Utwrz esub_crheader=Utwrz podsie esub_edheader=Zmie podsie esub_tabhdr=Dane podsieci esub_naddr=Adres sieci esub_nmask=Maska sieci esub_arange=Zakresy adresw esub_dbooptpq=Dynamiczny BOOTP ? esub_shnet=Sie wspdzielona esub_hosts=Hosty nalece bezporednio do tej podsieci esub_groups=Grupy nalece bezporednio do tej podsieci esub_pools=Obszary adresowe dla podsieci esub_pool=Obszar $1 esub_poolnone=Nie zdefiniowano obszarw adresowych esub_pooladd=Dodaj obszar adresowy esub_none=adna esub_return=listy podsieci esub_retshar=sieci wspdzielonej esh_crheader=Utwrz sie wspdzielon esh_eheader=Zmie sie wspdzielon esh_tabhdr=Dane sieci wspdzielonej esh_netname=Nazwa sieci esh_hosts=Hosty nalece bezporednio do tej sieci wspdzielonej esh_groups=Grupy nalece bezporednio do tej sieci wspdzielonej esh_subn=Podsieci nalece do tej sieci wspdzielonej esh_return=listy podsieci ehost_crheader=Utwrz host ehost_eheader=Zmie host ehost_tabhdr=Dane hosta ehost_hname=Nazwa hosta ehost_nojavascr=Twoja przegldarka nie obsuguje javascriptu. Musisz teraz wybra waciw pozycj z poniszej listy. ehost_assign=Host przypisany do ehost_toplevel=najwyszego poziomu ehost_inshared=sieci wspdzielonej ehost_insubnet=podsieci ehost_ingroup=grupy ehost_hwaddr=Adres sprztowy ehost_fixedip=Stay adres IP ehost_subnet=W podsieci $1/$2 ehost_shared=W sieci wspdzielonej $1 ehost_in=w ehost_return=listy hostw ehost_retgroup=grupy hostw ehost_retsubn=podsieci ehost_retshar=sieci wspdzielonej egroup_crheader=Utwrz grup hostw egroup_eheader=Zmie grup hostw egroup_tblhdr=Dane grupy egroup_assign=Grupa przypisana do egroup_hosts=Hosty w tej grupie egroup_nchoice=Uywa nazw hostw jako nazw stacji klienckich? egroup_return=listy hostw egroup_retsubn=podsieci egroup_retshar=sieci wspdzielonej default=Domylne secs=sek. none=Brak listl_header=Dzierawy DHCP listl_lfnotexist=Plik dzieraw DHCPd $1 nie istnieje. listl_lfnotcont=Plik dzieraw DHCPd $1 nie zawiera adnych dzieraw. listl_active=aktywmych listl_ipaddr=Adres IP listl_ether=Ethernetowy listl_host=Nazwa hosta listl_start=Data rozpoczcia listl_end=Data zakoczenia listl_return=listy podsieci i hostw listl_all=Poka wszystkie dzierawy aktywne i przeterminowane listl_delete=Nacinij na wydzierawiony adres IP z powyszej listy aby dzieraw skasowa. restart_errmsg1=Nie udao si ponownie uruchomi dhcpd restart_errmsg2=Nie udao si wysa sygnau do procesu start_failstart=Nie udao si uruchomi dhcpd sgroup_faildel=Nie udao si usun grupy sgroup_failsave=Nie udao si zachowa grupy sgroup_invassign=grupa przypisana do niewaciwej sekcji sgroup_echanged=Plik konfiguracyjny zosta zmodyfikowany. Sprbuj ponownie. shost_faildel=Nie udao si usun hosta shost_failsave=Nie udao si zachowa hosta shost_invalidhn=nie jest poprawn nazw hosta shost_invalidhwa='$1' nie jest poprawnym adresem $2 shost_invalidaddr='$1' zawiera nieprawidow nazw hosta lub bdny adres IP shost_invassign=host przypisany do niewaciwej sekcji sopt_failsave=Nie udao si zachowa opcji stacji klienckiej sopt_invalidip=nie jest poprawnym adresem IP sopt_invalidint=nie jest liczb cakowit sopt_invalidipp=nie jest poprawn par adresw IP (jak 1.2.3.4,5.6.7.8) sshared_faildel=Nie udao si usun sieci wspdzielonej sshared_failsave=Nie udao si zachowa sieci wspdzielonej sshared_invalidsname=Nie podano lub niepoprawna nazwa sieci wspdzielonej. sshared_nosubnet=Sie wspdzielona '$1' nie zawiera adnej podsieci. ssub_faildel=Nie udao si usun podsieci ssub_failsave=Nie udao si zachowa podsieci ssub_invalidsubaddr=nie jest poprawnym adresem podsieci ssub_invalidnmask=nie jest poprawn mask sieci ssub_invalidipr=nie jest poprawnym zakresem adresw IP ssub_nosubnet=Sie wspdzielona '$1' nie zawiera adnej podsieci. plib_deflt=Domylny czas dzierawy plib_bfname=Nazwa pliku BOOTa plib_maxlt=Maksymalny czas dzierawy plib_bfserv=Nazwa serwera BOOTa plib_thisserv=Ten serwer plib_servname=Nazwa serwera plib_llbc=Czas dzierawy dla klientw BOOTP plib_forever=Na zawsze plib_lebc=Koniec dzierawy dla klientw BOOTP plib_never=Nigdy plib_invalidlt=nie jest poprawnym czasem dzierawy plib_invalidsn=nie jest poprawn nazw serwera plib_invaliddom=$1 nie jest poprawn nazw domeny plib_leformat=Data/czas wyganicia dzierawy musi mie posta W YYYY/MM/DD HH:MM:SS plib_copt=Opcje stacji klienckiej plib_chname=Nazwa hosta klienta plib_defrouters=Domylna bramka plib_snmask=Maska podsieci plib_babbr=Adres rozgoszeniowy plib_domname=Nazwa domeny plib_dnsserv=Serwery DNS plib_timeserv=Serwery czasu plib_logserv=Serwery logowania plib_swapserv=Serwer wymiany plib_rdpath=cieka do dysku "root" plib_nisdom=Domena NIS plib_nisserv=Serwery NIS plib_fontserv=Serwery czcionek plib_xdmserv=Serwery XDM plib_statrouters=Statyczny routing plib_ntpserv=Serwery NTP plib_nbns=Serwery nazw NetBIOS plib_nbscope=Zasig NetBIOS-u plib_nbntype=Typ wza NetBIOS-u plib_ddnsdom=Nazwa domeny dynamicznego DNS-u plib_ddnsrevdom=Domena odwrotna dynamicznego DNS-u plib_ddnsup=Wczony dynamiczny DNS? plib_ddnshost=Nazwa hosta w dynamicznym DNS-ie plib_ddnshost_def=Od klienta eopt_header=Opcje stacji klienckiej eopt_subtitle=Dla podsieci $1 eopt_returnsub=podsieci eopt_returnshsub=sieci wspdzielonej eopt_snettitle=Dla sieci wspdzielonej $1 eopt_hosttitle=Dla hosta $1 eopt_returnhost=hosta eopt_returngroup=grupy hostw eopt_grouptitle=Dla hosta w grupie $1 eopt_alltitle=Dla wszystkich podsieci, hostw i grup eopt_returnindex=listy podsieci i hostw eopt_tabhdr=Opcje stacji klienckiej eopt_chost=Nazwa hosta stacji klienckiej eopt_defrouters=Domylne bramki eopt_smask=Maska podsieci eopt_baddr=Adres rozgoszeniowy eopt_domname=Nazwa domeny eopt_dnsserv=Serwery DNS eopt_timeserv=Serwery czasu eopt_logserv=Serwery logowania eopt_swapserv=Serwer wymiany eopt_rdpath=cieka do dysku "root" eopt_nisdom=Domena NIS eopt_nisserv=Serwery NIS eopt_fontserv=Serwery czcionek eopt_xdmserv=Serwery XDM eopt_statrouters=Statyczny routing eopt_ntpserv=Serwey NTP eopt_nbns=Serwery nazw NetBIOS eopt_nbs=Zasig NetBIOS-u eopt_nbntype=Typ wza NetBIOS-u eopt_custom=Opcje dodatkowe eopt_cnum=Numer eopt_cval=Warto log_apply=Zastosowano zmiany log_start=Uruchomiono serwer DHCP log_create_subnet=Utworzono podsie $1 log_delete_subnet=Usunito podsie $1 log_modify_subnet=Zmieniono podsie $1 log_options_subnet=Zmieniono opcje dla podsieci $1 log_create_shared=Utworzono sie wspdzielon $1 log_delete_shared=Usunito sie wspdzielon $1 log_modify_shared=Zmieniono sie wspdzielon $1 log_options_shared=Zmieniono opcje dla sieci wspdzielonej $1 log_create_host=Utworzono host $1 log_delete_host=Usunito host $1 log_modify_host=Zmieniono host $1 log_options_host=Zmieniono opcje dla hosta $1 log_create_group=Utworzono grup $1 hostw log_delete_group=Usunito grup $1 hostw log_modify_group=Zmieniono grup $1 hostw log_options_group=Zmieniono opcje dla grupy $1 hostw log_delete_lease=Skasowano dzieraw dla $1 pool_edit=Zmie obszar adresowy pool_create=Utworzono obszar adresowy pool_header=Opcje obszaru adresowego pool_allow=Dozwoleni klienci pool_deny=Zabronieni klienci pool_return=podsieci cdel_header=Ostrzeenie cdel_shared1=sieci wspdzielonej cdel_shared2=sie wspdzielon cdel_subnet1=podsieci cdel_subnet2=podsie cdel_subnet=podsie cdel_subnets=podsieci cdel_group1=grupy cdel_group2=grup cdel_group=grupa cdel_groups=grupy cdel_host=host cdel_hosts=hosty cdel_txt=Usunicie $1 '$2' spowoduje usunicie rwnie jej zawartoci: cdel_confirm=Czy na pewno chcesz usun t $1 ? cdel_eunknown=Nieokrelony bd cdel_return=listy hostw i podsieci eacl_aviol=Naruszenie kontroli dostpu eacl_np=Nie masz uprawnie do eacl_pdh=usunicia hosta eacl_pih=dodawania nowych hostw eacl_puh=modyfikacji hosta eacl_psh=wybrania hosta eacl_pdg=usunicia grupy eacl_pig=dodawania nowych grup eacl_pug=modyfikacji grupy eacl_psg=wybrania grupy eacl_pds=usunicia podsieci eacl_pis=dodawania nowych podsieci eacl_pus=modyfikacji podsieci eacl_pss=wybrania podsieci eacl_pdn=usunicia sieci wspdzielonej eacl_pin=dodawania nowych sieci wspdzielonych eacl_pun=modyfikacji sieci wspdzielonej eacl_psn=wybrania sieci wspdzielonej eacl_uniq=tworzenia duplikatw eacl_pdl=kasowania dzieraw eacl_psl=przegldania dzieraw eacl_pglob=zmiany opcji oglnych eacl_papply=restartu tej usugi acl_apply=Moe zastosowa zmiany? acl_r_leases=Moe przeglda dzierawy? acl_w_leases=Moe kasowa dzierawy? acl_global=Moe zmienia opcje oglne? acl_uniq_hst=Unikalne nazwy hostw? acl_uniq_sub=Unikalne adresy IP podsieci? acl_uniq_sha=Unikalne nazwy sieci wspdzielonych? acl_seclevel=Zastosowa poziom bezpieczestwa: acl_hide=Ukrywa niedostpne obiekty? acl_ahst=Dostp do hostw: acl_agrp=Dostp do grup: acl_asub=Dostp do podsieci: acl_asha=Dostp do do sieci wspdzielonych: acl_per_hst_acls=Wczy ACL-e dla poszczeglnych hostw? acl_per_sub_acls=Wczy ACL-e dla poszczeglnych podsieci? acl_per_obj_acls=ACL-e dla poszczeglnych obiektw... acl_na=brak dostpu acl_r1=odczyt acl_rw=odczyt/zapis acl_c=tworzenie acl_r=odczyt acl_w=zapis acl_err=Bd podczas zachowywania listy ACL-i acl_ernow=Jeli chcesz w globalnych ACL-ach umoliwi dostp do pewnego rodzaju obiektw z prawem zapisu, to musisz rwnie nada prawo do odczytu dla tego rodzaju obiektw. acl_normal=zwyky acl_paranoic=paranoiczny dhcpd/lang/ru_RU0100664000567100000120000002772710655706244013553 0ustar jcameronwheelindex_addsub= esub_crheader= sopt_invalidipp= IP ( 1.2.3.4,5.6.7.8) plib_forever= eopt_nisserv= NIS plib_servname= sshared_failsave= ehost_eheader= eopt_swapserv= swap eopt_alltitle= , eopt_logserv= plib_fontserv= esh_eheader= none= esub_arange= butt_del= butt_eco= index_nomemb= plib_copt= eopt_subtitle= $1 eopt_timeserv= eopt_tabhdr= esub_shnet= egroup_tblhdr= index_subtitle= listl_return= index_addnet= index_ego= DHCP, , , listl_lfnotexist= DHCPd $1 . esub_naddr= eopt_defrouters= plib_babbr= restart_errmsg1= dhcpd index_start= DHCP . restart_errmsg2= ehost_hname= plib_chname= eopt_fontserv= index_addhst= egroup_return= ssub_invalidnmask= esh_crheader= plib_dnsserv= DNS eopt_returnindex= sgroup_faildel= plib_nbns= NetBIOS index_title= DHCP index_1memb=1 ehost_fixedip= IP plib_maxlt= butt_save= ssub_invalidipr= IP plib_nbscope= NetBIOS listl_header= DHCP index_apply= DHCP, . ehost_crheader= plib_llbc= BOOTP eopt_nbns= NetBIOS esub_dbooptpq= BOOTP? index_return= eopt_xdmserv= XDM eopt_ntpserv= NTP sgroup_failsave= plib_nisserv= NIS listl_lfnotcont= DHCPd $1 . plib_deflt= eopt_domname= index_memb=$1 plib_logserv= plib_invalidlt= index_lal= ( ) IP- DHCP. eopt_snettitle= $1 eopt_header= plib_never= shost_invalidhwa='$1' $2 plib_leformat= // :: index_buttstart= esh_netname= index_dhcpdnotfound= DHCP $1 . , DHCP. plib_rdpath= index_dhcpdver= DHCP $1 . Webmin ISC DHCPD 2. index_buttego= listl_start= eopt_smask= eopt_hosttitle= $1 eopt_statrouters= index_234memb=$1 eopt_nbntype= NetBIOS eopt_nbs= NetBIOS shost_failsave= esub_tabhdr= index_nohst= , . eopt_grouptitle= $1 ssub_invalidsubaddr= secs= plib_snmask= eopt_rdpath= index_buttapply= listl_active= listl_host= esub_nmask= sshared_faildel= eopt_returnsub= egroup_hosts= sshared_invalidsname= . plib_invalidsn= ehost_tabhdr= shost_invalidhn= egroup_crheader= start_failstart= dhcpd plib_bfserv= plib_xdmserv= XDM butt_create= plib_ntpserv= NTP listl_end= sopt_invalidip= IP esub_return= default= index_hst= plib_domname= index_buttlal= esh_tabhdr= plib_statrouters= listl_ether=Ethernet esub_edheader= ssub_failsave= egroup_nchoice= , ? ssub_faildel= plib_bfname= plib_nisdom= NIS index_addhstg= listl_ipaddr= IP ehost_return= index_nosubdef= , . plib_lebc= BOOTP plib_swapserv= swap eopt_returnhost= eopt_dnsserv= DNS plib_thisserv= eopt_nisdom= NIS plib_nbntype= NetBIOS sopt_failsave= sopt_invalidint= eopt_chost= egroup_eheader= esh_return= shost_faildel= plib_defrouters= eopt_baddr= plib_timeserv= index_hdisplay= : ehost_ingroup= egroup_retsubn= cdel_host= listl_network= $1/$2 listl_all= esub_pools= cdel_shared1= cdel_shared2= sgroup_echanged= . . shost_invassign= plib_allow= iface_desc= DHCP IP , , . . , DHCP . acl_paranoic= acl_seclevel= : eopt_returngroup= eacl_papply= eacl_np= plib_ddnsupstyle= DNS log_create_subnet= $1 log_delete_lease= , $1 acl_na= eopt_cnum= butt_leases= acl_normal= plib_ddnsup= DNS? ehost_assign= cdel_group1= cdel_group2= plib_ddnshost_def= plib_adhoc=Ad-hoc acl_w_leases= ? cdel_eunknown= eacl_pglob= log_apply= pool_edit= log_create_shared= $1 acl_agrp= : esub_hosts= esh_subn= log_options_host= $1 log_modify_host= $1 ehost_hwaddr= cdel_groups= acl_r1= pool_return= esub_groups= ehost_retshar= acl_global= ? log_options_subnet= $1 plib_none= index_version=ISC DHCPd $1 plib_ddnsrevdom= DNS acl_hide= ? eopt_cval= shost_invalidaddr='$1' IP acl_uniq_hst= ? acl_r_leases= ? pool_deny= esh_groups= cdel_group= eacl_psg= index_togroup= eacl_psh= eacl_pdg= sshared_nosubnet= '$1' . eacl_pdh= ehost_toplevel= index_iface= DHCPD . eacl_psl= eacl_pdl= plib_invaliddom=$1 eacl_psn= acl_per_sub_acls= ACL ? eacl_pdn= eacl_pss= eacl_pds= acl_per_hst_acls= ACL ? pool_header= egroup_retshar= index_netmask= esub_pooladd= acl_rw=/ log_options_shared= $1 log_modify_subnet= $1 egroup_assign= listl_delete= IP . log_delete_host= $1 acl_ahst= : iface_listen= eacl_pug= esub_pool= $1 eacl_puh= ehost_insubnet= cdel_subnet1= cdel_return= cdel_subnet2= eacl_pun= cdel_subnet= eacl_pus= log_modify_shared= $1 index_ndisplay= : cdel_hosts= index_net= acl_uniq_sub= IP ? ehost_in= iface_title= cdel_header= plib_deny= esub_retshar= eopt_returnshsub= ehost_nojavascr=, javascript. . ehost_inshared= sgroup_invassign= index_group=: log_delete_subnet= $1 log_start= DHCP index_nameip= IP esh_pools= cdel_subnets= index_hardware= esub_none= esub_poolnone= eacl_uniq= acl_apply= ? eacl_pig= eacl_pih= pool_allow= acl_uniq_sha= ? log_create_group= $1 acl_per_obj_acls=ACL ... acl_asub= : eacl_pin= eacl_pis= log_delete_shared= $1 plib_interim=Interim log_options_group= $1 index_norder0= index_norder1= index_norder2=/ IP index_tosubnet= log_delete_group= $1 index_parent= eopt_custom= acl_ernow= ACL , - . plib_ignore= plib_ddnshost= DNS plib_unclients= ? index_horder0= index_horder1= index_horder2= index_horder3= index_horder4= IP pool_create= ehost_subnet= $1/$2 eacl_aviol= cdel_txt= $1 '$2' : acl_c= acl_asha= : acl_err= ACL plib_ddnsdom= DNS esh_hosts= acl_r= ehost_retsubn= acl_w= index_hostgroup=/ index_toshared= log_create_host= $1 ssub_nosubnet= '$1' . ehost_retgroup= cdel_confirm= $1 ? butt_vco= log_modify_group= $1 ehost_shared= $1 index_buttiface= dhcpd/lang/ja_JP.euc0100664000567100000120000003313610655706244014244 0ustar jcameronwheelacl_agrp= 롼: acl_ahst= ۥ: acl_apply=ѹŬѤƤǤ acl_asha=ͭͥåȥ: acl_asub= ֥ͥå: acl_c= acl_ernow=Х ꥹȤǥ֥ȤμνߤǽˤˤϡΥ֥Ȥμɼꥢǽˤɬפޤ acl_err=ꥹȤ¸顼 acl_global=Х ץԽǽˤޤ acl_hide=ԲĤΥ֥Ȥɽˤޤ acl_na=Ĥʤ acl_normal=ɸ acl_paranoic=ɸ acl_per_grp_acls=롼ACLѤޤ acl_per_hst_acls=ۥȤȤ˥ꥹȤͭˤޤ acl_per_obj_acls=֥ȤȤΥꥹ... acl_per_sha_acls=ͭͥåȥACLѤޤ acl_per_sub_acls=֥ͥåȤȤ˥ꥹȤͭˤޤ acl_r=ɼ acl_r1=ɼ acl_r_leases=꡼ɽǽˤޤ acl_rw=ɼ/ acl_seclevel=Ѥ륻ƥ ٥: acl_uniq_hst=ͭΥۥ̾Ǥ acl_uniq_sha=ͭζͭͥåȥ̾Ǥ acl_uniq_sub=ͭΥ֥ͥå IP ɥ쥹Ǥ acl_w= acl_w_leases=꡼ǽˤޤ butt_create= butt_del= butt_eco=饤 ץԽ butt_leases=꡼ꥹ butt_save=¸ butt_vco=饤 ץɽ cdel_confirm= $1 ƤǤ cdel_eunknown=Υ顼 cdel_group=롼 cdel_group1=롼 cdel_group2=롼 cdel_groups=롼 cdel_header=ٹ cdel_host=ۥ cdel_hosts=ۥ cdel_return=ۥȤȥͥåȥΥꥹ cdel_shared1=ͭͥåȥ cdel_shared2=ͭͥåȥ cdel_subnet=֥ͥå cdel_subnet1=֥ͥå cdel_subnet2=֥ͥå cdel_subnets=֥ͥå cdel_txt=$1 '$2' ȤƤޤ: default=ǥե eacl_aviol=ȿ eacl_np=򤹤븢¤ޤ: eacl_papply=Υӥٳ eacl_pdg=롼פ eacl_pdh=ۥȤ eacl_pdl=꡼ eacl_pdn=ͭͥåȥ eacl_pds=֥ͥåȤ eacl_pglob=Х ץԽ eacl_pig=Υ롼פɲ eacl_pih=ΥۥȤɲ eacl_pin=ζͭͥåȥɲ eacl_pis=Υ֥ͥåȤɲ eacl_psg=롼פ eacl_psh=ۥȤ eacl_psl=꡼ɽ eacl_psn=ͭͥåȥ eacl_pss=֥ͥåȤ eacl_pug=롼פԽ eacl_puh=ۥȤԽ eacl_pun=ͭͥåȥԽ eacl_pus=֥ͥåȤԽ eacl_uniq=ʣ egroup_assign=ۥ 롼פγ egroup_crheader=ۥ 롼פκ egroup_desc=롼פ egroup_eheader=ۥ 롼פԽ egroup_hosts=Υ롼 egroup_nchoice=饤 ۥ̾Ȥ̾Ѥޤ egroup_retshar=ͭͥåȥ egroup_retsubn=֥ͥå egroup_return=ۥ ꥹ egroup_tblhdr=ۥ 롼פξܺ ehost_assign=ۥȤγ ehost_crheader=ۥȤκ ehost_desc=ۥȤ ehost_eheader=ۥȤԽ ehost_fixedip= IP ɥ쥹 ehost_hname=ۥ̾ ehost_hwaddr=ϡɥ ɥ쥹 ehost_in= ehost_ingroup=롼 ehost_inshared=ͭͥåȥ ehost_insubnet=֥ͥå ehost_nojavascr=ѤΥ֥饦 javascript 򥵥ݡȤƤʤȻפޤΥꥹȤ֤򤹤ɬפޤ ehost_retgroup=롼 ehost_retshar=ͭͥåȥ ehost_retsubn=֥ͥå ehost_return=ۥ ꥹ ehost_shared=ͭͥåȥ $1 ehost_subnet=֥ͥå $1/$2 ehost_tabhdr=ۥȤξܺ ehost_toplevel=ȥåץ٥ eopt_alltitle=٤ƤΥͥåȥۥȤӥ롼 eopt_baddr=֥ɥ㥹 ɥ쥹 eopt_chost=饤 ۥ̾ eopt_cnum= eopt_custom= ץ eopt_cval= eopt_defrouters=ǥե 롼 eopt_dnsserv=DNS eopt_domname=ɥᥤ̾ eopt_fontserv=եȥ eopt_grouptitle=$1 С 롼 eopt_header=饤 ץ eopt_hosttitle=ۥ $1 eopt_logserv= eopt_nbns=NetBIOS ͡ eopt_nbntype=NetBIOS Ρ eopt_nbs=NetBIOS eopt_nisdom=NIS ɥᥤ eopt_nisserv=NIS eopt_ntpserv=NTP eopt_rdpath=root ǥ ѥ eopt_returngroup=ۥ 롼 eopt_returnhost=ۥ eopt_returnindex=ͥåȥȥۥȤΥꥹ eopt_returnshsub=ͭͥåȥ eopt_returnsub=֥ͥå eopt_smask=֥ͥå ޥ eopt_snettitle=ͭͥåȥ $1 eopt_statrouters=Ū롼 eopt_subtitle=֥ͥå $1 eopt_swapserv=Swap eopt_tabhdr=饤 ץ eopt_timeserv=Time eopt_xdmserv=XDM esh_crheader=ͭͥåȥκ esh_desc=ͭͥåȥ esh_eheader=ͭͥåȥԽ esh_groups=ζͭͥåȥľ°륰롼 esh_hosts=ζͭͥåȥľ°ۥ esh_netname=ͥåȥ̾ esh_pools=ͭͥåȥΥɥ쥹ס esh_return=֥ͥå ꥹ esh_subn=ζͭͥåȥΥ֥ͥå esh_tabhdr=ͭͥåȥξܺ esub_arange=ɥ쥹ϰ esub_crheader=֥ͥåȤκ esub_dbooptpq=ưŪ BOOTP Ǥ esub_desc=֥ͥåȤ esub_edheader=֥ͥåȤԽ esub_groups=Υ֥ͥåȤľ°륰롼 esub_hosts=Υ֥ͥåȤľ°ۥ esub_naddr=ͥåȥ ɥ쥹 esub_nmask=ͥåȥޥ esub_none=ʤ esub_pool=ס $1 esub_pooladd=ɥ쥹 סɲ esub_poolnone=줿ɥ쥹 סϤޤ esub_pools=֥ͥåȤΥɥ쥹 ס esub_retshar=ͭͥåȥ esub_return=֥ͥå ꥹ esub_shnet=ͭͥåȥ esub_tabhdr=֥ͥåȤξܺ iface_desc=DHCPФϰʲ򤵤줿ͥåȥ³줿󥿡եˤΤIPɥ쥹ƤǤޤ줿֥ͥåѤΥͥåȥ󥿡եޤޤޤ򤵤ʤä硢DHCPФϼưŪ򤷤ޤ iface_listen=Ԥ󥿡ե iface_title=ͥåȥ󥿡ե index_1memb=1 С index_234memb=$1 С index_addhst=ΥۥȤɲ index_addhstg=Υۥ 롼פɲ index_addnet=ͭͥåȥɲ index_addsub=Υ֥ͥåȤɲ index_apply=¹ DHCP Ф˸ߤŬѤˤϡΥܥ򥯥åƤDHCP ФߤƺƵưޤ index_buttapply=ѹŬ index_buttego=饤 ץԽ index_buttiface=ͥåȥ󥿡եԽ index_buttlal=ƥ ꡼ꥹ index_buttstart=Фεư index_dhcpdnotfound=DHCP $1ϤѤΥƥ˸ĤޤǤ󥹥ȡ뤵ƤʤDHCP ⥸塼 Ǥ index_dhcpdver=DHCP $1 ΥСǤWebmin ISC DHCPD С 2 Τߤ򥵥ݡȤޤ index_dhcpdver2=DHCP$1ΥСǤWebmin ISC DHCPD С $2 ڤ $3 ΤߥݡȤƤޤ index_ego=٤ƤΥ֥ͥåȡͭͥåȥۥȤӥ롼פŬѤ DHCP 饤 ץԽ index_gdom=$1 롼 index_group=롼: index_grplook2=Խ륰롼̾ index_grptoomany=롼פο¿ɽǤޤ index_hardware=ϡɥ ɥ쥹 index_hdisplay=ۥȤȥ롼פ򼡤ι̤ɽ: index_horder0= index_horder1=ե빽¤ index_horder2=̾ index_horder3=ϡɥ ɥ쥹 index_horder4=IP ɥ쥹 index_hostgroup=ۥ/롼 index_hst=ۥȤȥۥ 롼 index_hstlook2=Խۥ̾ index_hsttoomany=ۥȿ¿ɽǤޤ index_iface=DHCPФưԤͥåȥ󥿡եꤷƤ index_lal= DHCP ФưŪ˳Ƥ줿 IP ɥ쥹Ѥ˸Ф꡼ΥꥹȤǤ index_match0= index_match1=ޤ index_match2=ƤϤޤ index_memb=$1 С index_nameip=ۥ̾ ޤ IP ɥ쥹 index_ndisplay=ͥåȥȥ֥ͥåȤ򼡤ι̤ɽ: index_net=ͥåȥ index_netmask=ͥåȥޥ index_nohst=줿ۥȤޤϥۥ 롼פޤ index_nomemb=С index_norder0= index_norder1=ե빽¤ index_norder2=ۥ̾/IP ɥ쥹 index_nosubdef=줿֥ͥåȤޤ϶ͭͥåȥޤ index_parent= index_return=ǥå index_shatoomany=ͭͥåȥο¿ɽǤޤ index_start=ߤѤƥƥ DHCP ФưˤϡΥܥ򥯥åƤ index_subtitle=֥ͥåȤȶͭͥåȥ index_subtoomany=֥ͥåȤο¿ɽǤޤ index_title=DHCP index_togroup=롼 index_toshared=ͥåȥ index_tosubnet=֥ͥå index_version=ISC DHCPd С $1 listl_active=ƥ listl_all=ƥ֤ӴڤΥ꡼򤹤٤ɽ listl_delete=ˤϾΥꥹȤǥ꡼ IP ɥ쥹򥯥åƤ listl_end=λ listl_ether=ͥå listl_header=DHCP ꡼ listl_host=ۥ̾ listl_ipaddr=IP ɥ쥹 listl_lfnotcont=DHCPd ꡼ ե$1 $2 ꡼ޤǤޤ listl_lfnotcont2=DHCPd ꡼ե $1 ˸ߥƥ֤ʥ꡼ޤޤƤޤ listl_lfnotexist=DHCPd ꡼ ե$1 ޤ listl_network=ͥåȥ $1/$2 ˤ listl_return=ͥåȥȥۥȤΥꥹ listl_start=ư log_apply=ѹŬѤޤ log_create_group=$1 ۥȤΥ롼פޤ log_create_host=ۥ $1 ޤ log_create_shared=ͭͥåȥ $1 ޤ log_create_subnet=֥ͥå $1 ޤ log_delete_group=$1 ۥȤΥ롼פޤ log_delete_host=ۥ $1 ޤ log_delete_lease=$1 Υ꡼ޤ log_delete_shared=ͭͥåȥ $1 ޤ log_delete_subnet=֥ͥå $1 ޤ log_modify_group=$1 ۥȤΥ롼פѹޤ log_modify_host=ۥ $1 ѹޤ log_modify_shared=ͭͥåȥ $1 ѹޤ log_modify_subnet=֥ͥå $1 ѹޤ log_options_group=$1 ۥȤΥ롼פΥץѹޤ log_options_host=ۥ $1 Υץѹޤ log_options_shared=ͭͥåȥ $1 Υץѹޤ log_options_subnet=֥ͥå $1 Υץѹޤ log_start=DHCP Фεư lookup_egroup=̾Υ롼פޤϥɥᥤ̾ $1 ¸ߤޤ lookup_egroupname=롼̾ޤϥɥᥤ̾ϤƤޤ lookup_ehost=̾Υۥȡ IPɥ쥹ޤMACɥ쥹 $1 ¸ߤޤ lookup_ehostname=ۥ̾IPɥ쥹ޤMACɥ쥹ϤƤޤ lookup_eshared=$1 Ȥͭͥåȥ¸ߤޤ lookup_esharedname=ͭͥåȥ̾ϤƤޤ lookup_esubnet=ɥ쥹Υ֥ͥåȤޤ ɥ쥹/ͥåȥޥ $1 ¸ߤޤ lookup_esubnetname=֥ͥåȥɥ쥹ޤ ɥ쥹/ͥåȥޥϤƤޤ none=ʤ plib_adhoc=ɥۥå plib_allow=Ĥ plib_auth_global=ФƤΥ֥ͥåȤФҤޤ? plib_auth_shared-network=ФϤζͭͥåȥФҤޤ? plib_auth_subnet=ФϤΥ֥ͥåȤФҤޤ? plib_babbr=֥ɥ㥹 ɥ쥹 plib_bfname=֡ ե̾ plib_bfserv=Boot ե plib_chname=饤 ۥ̾ plib_copt=饤 ץ plib_ddnsdom=ưŪ DNS ɥᥤ̾ plib_ddnshost=ưŪ DNS ۥ̾ plib_ddnshost_def=饤̾ plib_ddnsrevdom=ưŪ DNS հɥᥤ plib_ddnsup=ưŪDNS ͭˤޤ plib_ddnsupstyle=ʥߥåDNSι plib_deflt=ǥե ꡼ plib_defrouters=ǥե 롼 plib_deny=ݤ plib_dnsserv=DNS plib_domname=ɥᥤ̾ plib_eexpr=DHCPΤΥWebminǰԽǤʤexpressionǥ쥯ƥ $1ޤǤޤ plib_fontserv=եȥ plib_forever=ʵ plib_ignore=̵뤹 plib_interim=Ū plib_invaliddom='$1' ̵ʥɥᥤ̾Ǥ plib_invalidlt=̵ʥ꡼֤Ǥ plib_invalidsn=̵ʥ̾Ǥ plib_lebc=BOOTP 饤ȤΥ꡼νλ plib_leformat=꡼νλ֤ W YYYY/MM/DD HH:MM:SS ηˤɬפޤ plib_llbc=BOOTP 饤ȤΥ꡼Ĺ plib_logserv= plib_maxlt=꡼ plib_nbns=NetBIOS ͡ plib_nbntype=NetBIOS Ρ plib_nbscope=NetBIOS plib_never=ʤ plib_nisdom=NIS ɥᥤ plib_nisserv=NIS plib_none=̵ plib_ntpserv=NTP plib_rdpath=root ǥ ѥ plib_servname=̾ plib_snmask=֥ͥå ޥ plib_statrouters=Ū롼 plib_swapserv=Swap plib_thisserv=Υ plib_timeserv=Time plib_unclients=̤ǧ饤ȤĤޤ? plib_xdmserv=XDM pool_allow=Ĥ륯饤 pool_create=ɥ쥹 סޤ pool_deny=ݤ륯饤 pool_edit=ɥ쥹 סԽ pool_header=ɥ쥹 ס ץ pool_return=֥ͥå restart_errmsg1=dhcpd ƵưǤޤǤ restart_errmsg2=˿ޤǤ secs= sgroup_echanged=եƤѹƤޤƻԤƤ sgroup_faildel=롼פǤޤǤ sgroup_failsave=롼פ¸ǤޤǤ sgroup_invassign=롼פʥ˳ƤƤޤ shost_faildel=ۥȤǤޤǤ shost_failsave=ۥȤ¸ǤޤǤ shost_invalidaddr='$1' ̵ʥۥ̾ޤ IP ɥ쥹ޤǤޤ shost_invalidhn=̵ʥۥ̾Ǥ shost_invalidhwa='$1' ̵ $2 ɥ쥹Ǥ shost_invassign=ۥȤʥ˳ƤƤޤ sopt_failsave=饤 ץ¸ǤޤǤ sopt_invalidint=ǤϤޤ sopt_invalidip='$1' ̵ IP ɥ쥹Ǥ sopt_invalidipp=ͭ IP ɥ쥹Ȥ߹碌 (Ȥ 1.2.3.4,5.6.7.8) ǤϤޤ sshared_faildel=ͭͥåȥǤޤǤ sshared_failsave=ͭͥåȥ¸˼Ԥޤ sshared_invalidsname=ͭͥåȥ̾ʤ̵Ǥ sshared_nosubnet=ͭͥåȥ '$1' ϥ֥ͥåȤޤǤޤ ssub_faildel=֥ͥåȤǤޤ ssub_failsave=֥ͥåȤ¸ǤޤǤ ssub_invalidipr=̵ IP ɥ쥹Ǥ ssub_invalidnmask=̵ʥͥåȥޥǤ ssub_invalidsubaddr=̵ʥ֥ͥå ɥ쥹Ǥ ssub_nosubnet=ͭͥåȥ '$1' ϥ֥ͥåȤޤǤޤ start_failstart=dhcpd ưǤޤǤ dhcpd/lang/ko_KR.euc0100664000567100000120000002346310655706244014270 0ustar jcameronwheelindex_title=DHCP index_dhcpdnotfound=ýۿ DHCP $1() ϴ. ġǾ ʰų DHCP Ȯ ֽϴ. index_return=ε index_dhcpdver=DHCP $1 ùٸ ʽϴ. Webmin ISC DHCPD 2 մϴ. index_subtitle= Ʈũ index_nosubdef=ǵ Ʈũ ϴ. index_addsub= ߰ index_addnet= Ʈũ ߰ index_nomemb= index_1memb= 1 index_234memb= $1 index_memb= $1 index_hst=ȣƮ ȣƮ ׷ index_nohst=ǵ ȣƮ ׷ ϴ. index_hostgroup=ȣƮ/׷ index_parent= index_hardware=ϵ ּ index_group=׷: index_nameip=ȣƮ ̸ Ǵ IP index_net=Ʈũ index_netmask=ݸũ index_addhst= ȣƮ ߰ index_addhstg= ȣƮ ׷ ߰ index_buttego=Ŭ̾Ʈ ɼ index_ego= , Ʈũ, ȣƮ ׷쿡 Ǵ DHCP Ŭ̾Ʈ ɼ index_buttlal=Ȱ Ӵ index_lal= DHCP Ҵ IP ּҿ ϴ Ӵ index_buttapply= index_apply= ư DHCP Ǿٰ ٽ ۵Ǹ鼭 ˴ϴ. index_buttstart= index_start= ý DHCP Ϸ ư ʽÿ. index_hdisplay=ȣƮ ׷ ǥ : index_horder0=Ҵ index_horder1= index_horder2≠ index_horder3=ϵ ּ index_horder4=IP ּ index_togroup=׷ index_tosubnet= index_toshared=Ʈũ index_ndisplay= ǥ : index_norder0=Ҵ index_norder1= index_norder2≠/IP ּ butt_save= butt_eco=Ŭ̾Ʈ ɼ butt_vco=Ŭ̾Ʈ ɼ butt_del= butt_create=ۼ esub_crheader= ۼ esub_edheader= esub_tabhdr= esub_naddr=Ʈũ ּ esub_nmask=ݸũ esub_arange=ּ esub_dbooptpq= BOOTPԴϱ? esub_shnet= Ʈũ esub_hosts= ȣƮ esub_groups= ׷ esub_pools= ּ esub_pool=ּ $1 esub_poolnone=ǵ ּ ϴ esub_pooladd=ּ ߰ esub_none= esub_return= esub_retshar= Ʈũ esh_crheader= Ʈũ ۼ esh_eheader= Ʈũ esh_tabhdr= Ʈũ esh_netname=Ʈũ ̸ esh_hosts= Ʈũ ȣƮ esh_groups= Ʈũ ׷ esh_subn= Ʈũ esh_return= ehost_crheader=ȣƮ ۼ ehost_eheader=ȣƮ ehost_tabhdr=ȣƮ ehost_hname=ȣƮ ̸ ehost_nojavascr= ڹٽũƮ ʴµ մϴ.Ʒ Ͽ ġ ؾ մϴ. ehost_assign=ȣƮ Ҵ ehost_toplevel=ֻ ehost_inshared= Ʈũ ehost_insubnet= ehost_ingroup=׷ ehost_hwaddr=ϵ ּ ehost_fixedip= IP ּ ehost_subnet= $1/$2 ehost_shared= Ʈũ $1 ehost_in=ġ ehost_return=ȣƮ ehost_retgroup=׷ ehost_retsubn= ehost_retshar= Ʈũ egroup_crheader=ȣƮ ׷ ۼ egroup_eheader=ȣƮ ׷ egroup_tblhdr=׷ egroup_assign=׷ Ҵ egroup_hosts= ׷쿡 ִ ȣƮ egroup_nchoice=Ŭ̾Ʈ ȣƮ ̸ մϱ? egroup_return=ȣƮ egroup_retsubn= egroup_retshar= Ʈũ default=⺻ secs= none= listl_header=DHCP Ӵ listl_lfnotexist=DHCPd Ӵ $1() ϴ. listl_lfnotcont=DHCPd Ӵ $1 $2 Ӵ밡 ϴ. listl_active=Ȱ listl_ipaddr=IP ּ listl_ether=̴ listl_host=ȣƮ ̸ listl_start= ¥ listl_end= ¥ listl_return=Ʈũ ȣƮ listl_all= Ⱓ Ұų Ӵ listl_delete= Ͽ Ӵ IP ּҸ ش Ӵ IP ּҰ ˴ϴ. restart_errmsg1=dhcpd ٽ ߽ϴ restart_errmsg2=ȣ ߽ϴ start_failstart=dhcpd ߽ϴ sgroup_faildel=׷ ߽ϴ sgroup_failsave=׷ ߽ϴ sgroup_invassign=׷ ߸ ǿ ҴǾϴ sgroup_echanged= Ǿϴ. ٽ õϽʽÿ. shost_faildel=ȣƮ ߽ϴ shost_failsave=ȣƮ ߽ϴ shost_invalidhn=() ȿ ȣƮ ̸ ƴմϴ shost_invalidhwa='$1'() ȿ $2 ּҰ ƴմϴ shost_invalidaddr='$1' ߸ ȣƮ ̸̳ IP ּҰ ֽϴ shost_invassign=ȣƮ ߸ ǿ ҴǾϴ sopt_failsave=Ŭ̾Ʈ ɼ ߽ϴ sopt_invalidip=() ȿ IP ּҰ ƴմϴ sopt_invalidint=() ƴմϴ sopt_invalidipp=() ȿ IP ּ (: 1.2.3.4, 5.6.7.8) ƴմϴ sshared_faildel= Ʈũ ߽ϴ sshared_failsave= Ʈũ ߽ϴ sshared_invalidsname=ų ߸ Ʈũ ̸Դϴ. sshared_nosubnet= Ʈũ '$1' ԵǾ ʽϴ. ssub_faildel= ߽ϴ ssub_failsave= ߽ϴ ssub_invalidsubaddr=() ȿ ּҰ ƴմϴ ssub_invalidnmask=() ȿ ݸũ ƴմϴ ssub_invalidipr=() ȿ IP ּҰ ƴմϴ ssub_nosubnet= Ʈũ '$1' ԵǾ ʽϴ. plib_deflt=⺻ Ӵ ð plib_bfname=Ʈ ̸ plib_maxlt=ִ Ӵ ð plib_bfserv=Ʈ plib_thisserv= plib_servname= ̸ plib_llbc=BOOTP Ŭ̾Ʈ Ӵ Ⱓ plib_forever= plib_lebc=BOOTP Ŭ̾Ʈ Ӵ plib_never= plib_invalidlt=() ȿ Ӵ ð ƴմϴ plib_invalidsn=() ȿ ̸ ƴմϴ plib_invaliddom='$1'() ȿ ̸ ƴմϴ plib_leformat=Ӵ ¥ W YYYY/MM/DD HH:MM:SS մϴ plib_copt=Ŭ̾Ʈ ɼ plib_chname=Ŭ̾Ʈ ȣƮ ̸ plib_defrouters=⺻ plib_snmask= ũ plib_babbr=εijƮ ּ plib_domname= ̸ plib_dnsserv=DNS plib_timeserv=ð plib_logserv=α plib_swapserv= plib_rdpath=Ʈ ũ plib_nisdom=NIS plib_nisserv=NIS plib_fontserv=۲ plib_xdmserv=XDM plib_statrouters= plib_ntpserv=NTP plib_nbns=NetBIOS ̸ plib_nbscope=NetBIOS plib_nbntype=NetBIOS plib_ddnsdom= DNS ̸ plib_ddnsrevdom= DNS plib_ddnsup= DNS Ǿ ֽϱ? plib_ddnshost= DNS ȣƮ ̸ plib_ddnshost_def=Ŭ̾Ʈ eopt_header=Ŭ̾Ʈ ɼ eopt_subtitle= $1 eopt_returnsub= eopt_returnshsub= Ʈũ eopt_snettitle= Ʈũ $1 eopt_hosttitle=ȣƮ $1 eopt_returnhost=ȣƮ eopt_returngroup=ȣƮ ׷ eopt_grouptitle=$1 ׷ eopt_alltitle= Ʈũ, ȣƮ ׷ eopt_returnindex=Ʈũ ȣƮ eopt_tabhdr=Ŭ̾Ʈ ɼ eopt_chost=Ŭ̾Ʈ ȣƮ ̸ eopt_defrouters=⺻ eopt_smask= ũ eopt_baddr=εijƮ ּ eopt_domname= ̸ eopt_dnsserv=DNS eopt_timeserv=ð eopt_logserv=α eopt_swapserv= eopt_rdpath=Ʈ ũ eopt_nisdom=NIS eopt_nisserv=NIS eopt_fontserv=۲ eopt_xdmserv=XDM eopt_statrouters= eopt_ntpserv=NTP eopt_nbns=NetBIOS ̸ eopt_nbs=NetBIOS eopt_nbntype=NetBIOS eopt_custom= ɼ eopt_cnum=ȣ eopt_cval= log_apply= log_start=DHCP ۵ log_create_subnet= $1 ۼ log_delete_subnet= $1 log_modify_subnet= $1 log_options_subnet= $1 ɼ log_create_shared= Ʈũ $1 ۼ log_delete_shared= Ʈũ $1 log_modify_shared= Ʈũ $1 log_options_shared= Ʈũ $1 ɼ log_create_host=ȣƮ $1 ۼ log_delete_host=ȣƮ $1 log_modify_host=ȣƮ $1 log_options_host=ȣƮ $1 ɼ log_create_group=$1 ȣƮ ׷ ۼ log_delete_group=$1 ȣƮ ׷ log_modify_group=$1 ȣƮ ׷ log_options_group=$1 ȣƮ ׷ ɼ log_delete_lease=$1 Ӵ pool_edit=ּ pool_create=ۼ ּ pool_header=ּ ɼ pool_allow= Ŭ̾Ʈ pool_deny=ź Ŭ̾Ʈ pool_return= cdel_header= cdel_shared1= Ʈũ cdel_shared2= Ʈũ cdel_subnet1= cdel_subnet2= cdel_subnet= cdel_subnets= cdel_group1=׷ cdel_group2=׷ cdel_group=׷ cdel_groups=׷ cdel_host=ȣƮ cdel_hosts=ȣƮ cdel_txt=$1 '$2'() ϸ ش 뵵 Բ ˴ϴ: cdel_confirm= $1() Ͻðڽϱ? cdel_eunknown= cdel_return=ȣƮ Ʈũ eacl_aviol=׼ eacl_np= ϴ eacl_pdh=ȣƮ eacl_pih= ȣƮ ߰ eacl_puh=ȣƮ eacl_psh=ȣƮ eacl_pdg=׷ eacl_pig= ׷ ߰ eacl_pug=׷ eacl_psg=׷ eacl_pds= eacl_pis= ߰ eacl_pus= eacl_pss= eacl_pdn= Ʈũ eacl_pin= Ʈũ ߰ eacl_pun= Ʈũ eacl_psn= Ʈũ eacl_uniq= ۼ eacl_pdl=Ӵ eacl_psl=Ӵ eacl_pglob=۷ι ɼ eacl_papply= acl_apply= ֽϱ? acl_r_leases=Ӵ븦 ֽϱ? acl_w_leases=Ӵ븦 ֽϱ? acl_global=۷ι ɼ ֽϱ? acl_uniq_hst= ȣƮ ̸Դϱ? acl_uniq_sub= IP ּԴϱ? acl_uniq_sha= ̸Դϱ? acl_seclevel= : acl_hide= Ұ ü ϱ? acl_ahst= ȣƮ: acl_agrp= ׷: acl_asub= : acl_asha= : acl_per_hst_acls=ȣƮ ACL մϱ? acl_per_sub_acls= ACL մϱ? acl_per_obj_acls=ü ACL... acl_na= ȵ acl_r1=б acl_rw=б/ acl_c=ۼ acl_r=б acl_w= acl_err=ACL acl_ernow=۷ι ACL Ϻ ü ϰ Ϸ ü б ٵ ϰ ؾ մϴ. acl_normal= acl_paranoic=paranoic dhcpd/lang/ja_JP.jis0100664000567100000120000002624110655706244014254 0ustar jcameronwheelindex_title=DHCP T[o index_dhcpdnotfound=DHCP T[o $1@͂gp̃VXeɌ‚܂łBCXg[ĂȂADHCP W[ݒ słB index_return=CfbNX index_dhcpdver=DHCP T[o$1 ̃o[WsłBWebmin ISC DHCPD o[W 2 ݂̂T|[g܂B index_subtitle=TulbgƋLlbg[N index_nosubdef=`ꂽTulbg܂͋Llbg[N܂B index_addsub=VK̃Tulbglj index_addnet=VKLlbg[Nlj index_nomemb=񃁃o[ index_1memb=1 o[ index_234memb=$1 o[ index_memb=$1 o[ index_hst=zXgƃzXg O[v index_nohst=`ꂽzXg܂̓zXg O[v܂B index_hostgroup=zXg/O[v index_parent=e index_hardware=n[hEFA AhX index_group=O[v: index_nameip=zXg ܂ IP AhX index_net=lbg[N index_netmask=lbg}XN index_addhst=VK̃zXglj index_addhstg=VK̃zXg O[vlj index_buttego=NCAg IvVҏW index_ego=ׂẴTulbgALlbg[NAzXgуO[vɓKp DHCP NCAg IvVҏW index_buttlal=ANeBu [XXg index_lal= DHCP T[oIɊ蓖Ăꂽ IP AhXpɌݑo[X̃XgłB index_buttapply=ύXKp index_apply=s DHCP T[oɌ݂̐ݒKpɂ́Ã{^NbNĂBDHCP T[o~čċN܂B index_buttstart=T[őN index_start=݂̐ݒgpăVXe DHCP T[oNɂ́Ã{^NbNĂB index_hdisplay=zXgƃO[v̍ڕʂɕ\: index_horder0=蓖 index_horder1=t@C\ index_horder2=O index_horder3=n[hEFA AhX index_horder4=IP AhX index_togroup=O[v index_tosubnet=Tulbg index_toshared=lbg[N index_ndisplay=lbg[NƃTulbg̍ڕʂɕ\: index_norder0=蓖 index_norder1=t@C\ index_norder2=zXg/IP AhX butt_save=ۑ butt_eco=NCAg IvV̕ҏW butt_vco=NCAg IvV̕\ butt_del=폜 butt_create=쐬 esub_crheader=Tulbg̍쐬 esub_edheader=Tulbg̕ҏW esub_tabhdr=Tulbg̏ڍ esub_naddr=lbg[N AhX esub_nmask=lbg}XN esub_arange=AhX͈̔ esub_dbooptpq=I BOOTP łH esub_shnet=Llbg[N esub_hosts=̃TulbgɒzXg esub_groups=̃TulbgɒO[v esub_pools=Tulbg̃AhX v[ esub_pool=v[ $1 esub_poolnone=`ꂽAhX v[͂܂ esub_pooladd=AhX v[̒lj esub_none=Ȃ esub_return=Tulbg Xg esub_retshar=Llbg[N esh_crheader=Llbg[N̍쐬 esh_eheader=Llbg[N̕ҏW esh_tabhdr=Llbg[N̏ڍ esh_netname=lbg[N esh_hosts=̋Llbg[NɒzXg esh_groups=̋Llbg[NɒO[v esh_subn=̋Llbg[ÑTulbg esh_return=Tulbg Xg ehost_crheader=zXg̍쐬 ehost_eheader=zXg̕ҏW ehost_tabhdr=zXg̏ڍ ehost_hname=zXg ehost_nojavascr=gp̃uEU javascript T|[gĂȂƎv܂B̃Xg琳ʒuIKv܂B ehost_assign=zXg̊蓖Đ ehost_toplevel=gbvx ehost_inshared=Llbg[N ehost_insubnet=Tulbg ehost_ingroup=O[v ehost_hwaddr=n[hEFA AhX ehost_fixedip=Œ IP AhX ehost_subnet=Tulbg $1/$2 ehost_shared=Llbg[N $1 ehost_in=̒ ehost_return=zXg Xg ehost_retgroup=O[v ehost_retsubn=Tulbg ehost_retshar=Llbg[N egroup_crheader=zXg O[v̍쐬 egroup_eheader=zXg O[v̕ҏW egroup_tblhdr=zXg O[v̏ڍ egroup_assign=zXg O[v̊蓖Đ egroup_hosts=̃O[v egroup_nchoice=NCAg zXgƂĖOgp܂H egroup_return=zXg Xg egroup_retsubn=Tulbg egroup_retshar=Llbg[N default=ftHg secs=b none=Ȃ listl_header=DHCP [X listl_lfnotexist=DHCPd [X t@C$1 ܂B listl_lfnotcont=DHCPd [X t@C$1 $2 [X܂ł܂B listl_active=ANeBu listl_ipaddr=IP AhX listl_ether=C[Tlbg listl_host=zXg listl_start=N listl_end=I listl_return=lbg[NƃzXg̃Xg listl_all=ANeBuъ؂̃[Xׂĕ\ listl_delete=폜ɂ͏̃XgŃ[X IP AhXNbNĂB restart_errmsg1=dhcpd ċNł܂łB restart_errmsg2=ɐM𑗂܂ł start_failstart=dhcpd Nł܂ł sgroup_faildel=O[v폜ł܂ł sgroup_failsave=O[vۑł܂ł sgroup_invassign=O[vsȃZNVɊ蓖ĂĂ܂ sgroup_echanged=ݒt@C̓eύXĂ܂BĎsĂB shost_faildel=zXg폜ł܂ł shost_failsave=zXgۑł܂ł shost_invalidhn=͖ȃzXgł shost_invalidhwa='$1' ͖ $2 AhXł shost_invalidaddr='$1' ͖ȃzXg܂ IP AhX܂ł܂ shost_invassign=zXgsȃZNVɊ蓖ĂĂ܂ sopt_failsave=NCAg IvVۑł܂ł sopt_invalidip='$1' ͖ IP AhXł sopt_invalidint=͐ł͂܂ sopt_invalidipp=͗L IP AhX̑gݍ킹 (Ƃ 1.2.3.4,5.6.7.8) ł͂܂ sshared_faildel=Llbg[N폜ł܂ł sshared_failsave=Llbg[N̕ۑɎs܂ sshared_invalidsname=Llbg[NȂłB sshared_nosubnet=Llbg[N '$1' ̓Tulbg܂ł܂B ssub_faildel=Tulbg폜ł܂ ssub_failsave=Tulbgۑł܂ł ssub_invalidsubaddr=͖ȃTulbg AhXł ssub_invalidnmask=͖ȃlbg}XNł ssub_invalidipr=͖ IP AhXł ssub_nosubnet=Llbg[N '$1' ̓Tulbg܂ł܂B plib_deflt=ftHg [X plib_bfname=u[g t@C plib_maxlt=ő僊[X plib_bfserv=Boot t@C T[o plib_thisserv=̃T[o plib_servname=T[o plib_llbc=BOOTP NCAg̃[X plib_forever=iv plib_lebc=BOOTP NCAg̃[X̏I plib_never=Ȃ plib_invalidlt=͖ȃ[XԂł plib_invalidsn=͖ȃT[oł plib_invaliddom='$1' ͖ȃhCł plib_leformat=[X̏IԂ W YYYY/MM/DD HH:MM:SS ̌`ɂKv܂ plib_copt=NCAg IvV plib_chname=NCAg zXg plib_defrouters=ftHg [^ plib_snmask=Tulbg }XN plib_babbr=u[hLXg AhX plib_domname=hC plib_dnsserv=DNS T[o plib_timeserv=Time T[o plib_logserv=O T[o plib_swapserv=Swap T[o plib_rdpath=root fBXN pX plib_nisdom=NIS hC plib_nisserv=NIS T[o plib_fontserv=tHgT[o plib_xdmserv=XDM T[o plib_statrouters=ÓI[g plib_ntpserv=NTP T[o plib_nbns=NetBIOS l[ T[o plib_nbscope=NetBIOS XR[v plib_nbntype=NetBIOS m[h ^Cv plib_ddnsdom=I DNS hC plib_ddnsrevdom=I DNS thC plib_ddnsup=IDNS Lɂ܂H plib_ddnshost=I DNS zXg plib_ddnshost_def=NCAg eopt_header=NCAg IvV eopt_subtitle=Tulbg $1 p eopt_returnsub=Tulbg eopt_returnshsub=Llbg[N eopt_snettitle=Llbg[N $1 p eopt_hosttitle=zXg $1 p eopt_returnhost=zXg eopt_returngroup=zXg O[v eopt_grouptitle=$1 o[ O[vp eopt_alltitle=ׂẴlbg[NAzXgуO[vp eopt_returnindex=lbg[NƃzXg̃Xg eopt_tabhdr=NCAg IvV eopt_chost=NCAg zXg eopt_defrouters=ftHg [^ eopt_smask=Tulbg }XN eopt_baddr=u[hLXg AhX eopt_domname=hC eopt_dnsserv=DNS T[o eopt_timeserv=Time T[o eopt_logserv=O T[o eopt_swapserv=Swap T[o eopt_rdpath=root fBXN pX eopt_nisdom=NIS hC eopt_nisserv=NIS T[o eopt_fontserv=tHgT[o eopt_xdmserv=XDM T[o eopt_statrouters=ÓI[g eopt_ntpserv=NTP T[o eopt_nbns=NetBIOS l[ T[o eopt_nbs=NetBIOS XR[v eopt_nbntype=NetBIOS m[h ^Cv eopt_custom=JX^ IvV eopt_cnum= eopt_cval=l log_apply=ύXKp܂ log_start=DHCP T[őN log_create_subnet=Tulbg $1 쐬܂ log_delete_subnet=Tulbg $1 폜܂ log_modify_subnet=Tulbg $1 ύX܂ log_options_subnet=Tulbg $1 ̃IvVύX܂ log_create_shared=Llbg[N $1 쐬܂ log_delete_shared=Llbg[N $1 폜܂ log_modify_shared=Llbg[N $1 ύX܂ log_options_shared=Llbg[N $1 ̃IvVύX܂ log_create_host=zXg $1 쐬܂ log_delete_host=zXg $1 폜܂ log_modify_host=zXg $1 ύX܂ log_options_host=zXg $1 ̃IvVύX܂ log_create_group=$1 zXg̃O[v쐬܂ log_delete_group=$1 zXg̃O[v폜܂ log_modify_group=$1 zXg̃O[vύX܂ log_options_group=$1 zXg̃O[ṽIvVύX܂ log_delete_lease=$1 ̃[X폜܂ pool_edit=AhX v[̕ҏW pool_create=AhX v[쐬܂ pool_header=AhX v[ IvV pool_allow=‚NCAg pool_deny=ۂNCAg pool_return=Tulbg cdel_header=x cdel_shared1=Llbg[N cdel_shared2=Llbg[N cdel_subnet1=Tulbg cdel_subnet2=Tulbg cdel_subnet=Tulbg cdel_subnets=Tulbg cdel_group1=O[v cdel_group2=O[v cdel_group=O[v cdel_groups=O[v cdel_host=zXg cdel_hosts=zXg cdel_txt=$1 '$2' 폜Ƃ̓e폜܂: cdel_confirm= $1 폜Ă낵łH cdel_eunknown=s̃G[ cdel_return=zXgƃlbg[ÑXg eacl_aviol=ANZXᔽ eacl_np=̑錠܂: eacl_pdh=zXg폜 eacl_pih=VK̃zXglj eacl_puh=zXgҏW eacl_psh=zXgI eacl_pdg=O[v폜 eacl_pig=VK̃O[vlj eacl_pug=O[vҏW eacl_psg=O[vI eacl_pds=Tulbg폜 eacl_pis=VK̃Tulbglj eacl_pus=TulbgҏW eacl_pss=TulbgI eacl_pdn=Llbg[N폜 eacl_pin=VK̋Llbg[Nlj eacl_pun=Llbg[NҏW eacl_psn=Llbg[NI eacl_uniq=쐬 eacl_pdl=[X폜 eacl_psl=[X̕\ eacl_pglob=O[o IvVҏW eacl_papply=̃T[rXēxJn acl_apply=ύXKpĂ낵łH acl_r_leases=[X\”\ɂ܂H acl_w_leases=[X폜”\ɂ܂H acl_global=O[o IvVҏW”\ɂ܂H acl_uniq_hst=ŗL̃zXgłH acl_uniq_sub=ŗL̃Tulbg IP AhXłH acl_uniq_sha=ŗL̋Llbg[NłH acl_seclevel=gpZLeB x: acl_hide=ANZXs‚̃IuWFNg\ɂ܂H acl_ahst=ANZX zXg: acl_agrp=ANZX O[v: acl_asub=ANZX Tulbg: acl_asha=ANZXLlbg[N: acl_per_hst_acls=zXgƂɃANZX䃊XgLɂ܂H acl_per_sub_acls=TulbgƂɃANZX䃊XgLɂ܂H acl_per_obj_acls=IuWFNgƂ̃ANZX䃊Xg... acl_na=‚Ȃ acl_r1=ǎp acl_rw=ǎ/ acl_c=쐬 acl_r=ǎ acl_w= acl_err=ANZX䃊Xg̕ۑG[ acl_ernow=O[o ANZX䃊XgŃIuWFNg̎ނ݂̏”\ɂɂ́ÃIuWFNg̎ނ̓ǎANZX”\ɂKv܂B acl_normal=W acl_paranoic=W dhcpd/lang/ca0100644000567100000120000004274710655706244013077 0ustar jcameronwheelindex_title=Servidor DHCP index_key=Edita les claus TSIG (utilitzades per autenticar les actualitzacions dels servidors) index_dhcpdnotfound=No s'ha trobat al sistema el servidor DHCP $1. Pot ser que no estigui installat, o b que la configuraci del mdul DHCP sigui incorrecta. index_return=a l'ndex index_dhcpdver2=No sembla que el servidor DHCP $1 sigui la versi correcta. Webmin noms suporta DHCPD ISC versi $2 a $3. index_subtitle=Subxarxes i Xarxes Compartides index_nosubdef=No hi ha cap subxarxa ni xarxa compartida definida. index_addsub=Afegeix una nova subxarxa. index_addnet=Afegeix una nova xarxa compartida. index_nomemb=No hi ha cap membre index_1memb=1 membre index_234memb=$1 membres index_memb=$1 membres index_hst=Hosts i Grups de Hosts index_nohst=No hi ha cap host ni grup de hosts definit. index_hostgroup=Host/Grup index_parent=Pare index_hardware=Adrea del Maquinari index_group=Grup: index_nameip=Nom del host o IP index_net=Xarxa index_netmask=Mscara de subxarxa index_desc=Descripci index_addhst=Afegeix un nou host. index_addhstg=Afegeix un nou grup de hosts. index_buttego=Edita les Opcions del Client index_buttekey=Edita les claus TSIG index_ego=Edita les opcions del client DHCP que s'apliquen a totes les subxarxes, xarxes compartides, hosts i grups index_buttlal=Llista els Prstecs Actius index_lal=Llista els prstecs emesos actualment per aquest servidor DHCP per a les adreces assignades dinmicament. index_buttapply=Aplica els Canvis index_apply=Fes clic sobre aquest bot per aplicar la configuraci actual al servidor DHCP en execuci, aturant-lo i reiniciant-lo. index_buttstart=Inicia el Servidor index_start=Fes clic sobre aquest bot per iniciar el servidor DHCP al sistema, fent servir la configuraci actual. index_stop=Atura el Servidor index_stopdesc=Feu clic sobre aquest bot per aturar el servidor DHCP en execuci al sistema. Quan estigui aturat, els clients DHCP no podran demanar adreces IP. index_hdisplay=Mostra els hosts i els grups per: index_horder0=Assignaci index_horder1=Estructura de fitxers index_horder2=Nom index_horder3=Adrea del maquinari index_horder4=Adrea IP index_togroup=Grup index_tosubnet=Subxarxa index_toshared=Xarxa index_ndisplay=Mostra les xarxes i subxarxes per: index_norder0=Assignaci index_norder1=Estructura de fitxers index_norder2=Nom/Adrea IP index_version=Versi ISC DHCPd $1 index_buttiface=Edita la Interfcie de Xarxa index_iface=Estableix quines interfcies de xarxa ha d'escoltar el servidor DHCP quan s'inicia. index_subtoomany=Hi ha massa subxarxes com per mostrar-les. index_shatoomany=Hi ha massa xarxes compartides com per mostrar-les. index_sublook2=Edita la subxarxa amb adrea: index_shalook2=Edita la xarxa compartida amb adrea: index_hsttoomany=Hi ha massa hosts com per mostrar-los. index_grptoomany=Hi ha massa grups com per mostrar-los. index_hstlook=Edita el host anomenat: index_grplook=Edita el grup anomenat: index_gdom=Grup de $1 index_match0=s igual a index_match1=cont index_match2=coincideix amb index_dhcpd=DHCPd ISC index_delete=Suprimeix els Seleccionats butt_save=Desa butt_eco=Edita les Opcions de Client butt_vco=Mostra les Opcions de Client butt_del=Suprimeix butt_create=Crea butt_leases=Llista els Prstecs esub_crheader=Creaci de Subxarxa esub_edheader=Edici de Subxarxa esub_tabhdr=Detalls de la Subxarxa esub_naddr=Adrea de la xarxa esub_nmask=Mscara de subxarxa esub_arange=Rangs d'adreces esub_dbooptpq=BOOTP dinmic esub_shnet=Xarxa compartida esub_hosts=Hosts directament en aquesta subxarxa esub_groups=Grups directament en aquesta subxarxa esub_pools=Conjunt d'adreces per a la subxarxa esub_pool=Conjunt $1 esub_poolnone=No hi ha cap conjunt d'adreces definit esub_pooladd=Afegeix un conjunt d'adreces. esub_none=Cap esub_return=a la llista de subxarxes esub_retshar=xarxa compartida esub_desc=Descripci de la subxarxa esub_fopeer=Parell de Recanvi esh_crheader=Creaci de Xarxa Compartida esh_eheader=Edici de Xarxa Compartida esh_tabhdr=Detalls de la Xarxa Compartida esh_netname=Nom de la xarxa esh_hosts=Hosts directament en aquesta xarxa compartida esh_groups=Grups directament en aquesta xarxa compartida esh_subn=Subxarxes en aquesta xarxa compartida esh_return=a la llista de subxarxes esh_pools=Pools d'Adreces de Xarxa Compartida esh_desc=Descripci de la xarxa compartida ehost_crheader=Creaci de Host ehost_eheader=Edici de Host ehost_tabhdr=Detalls del Host ehost_hname=Nom del host ehost_nojavascr=Sembla que el teu navegador no suporta javascript. Ara has de triar la posici adequada de la llista de sota. ehost_assign=Host assignat a ehost_toplevel=Nivell Principal ehost_inshared=Xarxa Compartida ehost_insubnet=Subxarxa ehost_ingroup=Grup ehost_hwaddr=Adrea de maquinari ehost_fixedip=Adrea IP fixa ehost_subnet=A la subxarxa $1/$2 ehost_shared=A la xarxa compartida $1 ehost_in=a ehost_return=a la llista de hosts ehost_retgroup=grup ehost_retsubn=subxarxa ehost_retshar=xarxa compartida ehost_desc=Descripci del host egroup_crheader=Creaci de Grup de Hosts egroup_eheader=Edici de Grup de Hosts egroup_tblhdr=Detalls del Grup egroup_assign=Grup assignat a egroup_hosts=Hosts d'aquest grup egroup_nchoice=Fes servir el nom com un nom de host client egroup_return=a la llista de hosts egroup_retsubn=subxarxa egroup_retshar=xarxa compartida egroup_desc=Descripci del grup default=Defecte secs=segs none=Cap listl_header=Prstecs DHCP listl_network=A la xarxa $1/$2 listl_lfnotexist=El fitxer de prstecs $1 no existeix. listl_lfnotcont=El fitxer de prstecs DHCP $1 no cont cap prstec. listl_lfnotcont2=El fitxer de prstec DHCPd $1 no cont cap prstec que estigui actualment actiu. listl_active=actiu listl_ipaddr=Adrea IP listl_ether=Ethernet listl_host=Nom de host listl_start=Data Inicial listl_end=Data Final listl_return=a la llista de hosts i xarxes listl_all=Llista tots els prstecs actius i expirats listl_delete=Fes clic sobre l'adrea IP d'un dels prstecs de la llista de dalt per suprimir-lo. listl_unknown=Desconeguts listl_allocs=$1 adreces IP disponibles, $2 allotjades ($3 %) restart_errmsg1=No he pogut reiniciar dhcpd restart_errmsg2=No he pogut enviar el senyal al procs start_failstart=No he pogut iniciar dhcpd sgroup_faildel=No he pogut suprimir el grup sgroup_failsave=No he pogut desar el grup sgroup_invassign=grup assignat a una secci incorrecta sgroup_echanged=S'ha canviat el fitxer de configuraci. Prova-ho un altre cop. shost_faildel=No he pogut suprimir el host shost_failsave=No he pogut desar el host shost_invalidhn=no s un nom de host vlid shost_invalidhwa='$1' no s una adrea $2 vlida shost_invalidaddr='$1' cont un nom de host o una adrea IP invlida shost_invassign=host assignat a una secci incorrecta sopt_failsave=No he pogut desar les opcions de client sopt_invalidip=no s una adrea IP vlida sopt_invalidint=no s un enter sopt_invalidipp=no s una parella IP vlida (com ara 1.2.3.4,5.6.7.8) sopt_edname='$1' no s un nom d'opci vlid sopt_ednum='$1' no s un nmero d'opci vlid sopt_edtype='$1' no s un tipus d'opci vlid sshared_faildel=No he pogut suprimir la xarxa compartida sshared_failsave=No he pogut desar la xarxa compartida sshared_invalidsname=Hi falta el nom de la xarxa compartida o b no s vlid. sshared_nosubnet=La xarxa compartida '$1' no cont cap subxarxa. ssub_faildel=No he pogut suprimir la subxarxa ssub_failsave=No he pogut desar la subxarxa ssub_invalidsubaddr=no s una adrea de subxarxa vlida ssub_invalidnmask=no s una mscara vlida ssub_invalidipr=no s un rang d'adreces IP vlid ssub_nosubnet=La xarxa compartida '$1' no cont cap subxarxa. ssub_invalidfopeer=no s un parell de recanvi vlid plib_deflt=Temps de prstec per defecte plib_bfname=Nom del fitxer d'engegada plib_maxlt=Temps mxim de prstec plib_bfserv=Servidor de fitxers d'engegada plib_thisserv=Aquest servidor plib_servname=Nom del servidor plib_llbc=Llargria del prstec dels clients BOOTP plib_forever=Per sempre plib_lebc=Fi del prstec dels clients BOOTP plib_never=Mai plib_invalidlt=no s un temps de prstec vlid plib_invalidsn=no s nom de servidor vlid plib_invaliddom=$1 no s un nom de domini vlid plib_leformat=La data final del prstec ha d'estar en format S AAAA/MM/DD HH:MM:SS plib_copt=Opcions de Client plib_chname=Nom de host client plib_defrouters=Encaminadors per defecte plib_snmask=Mscara de subxarxa plib_babbr=Adrea de retransmissi plib_domname=Nom de domini plib_dnsserv=Servidors DNS plib_timeserv=Servidors horaris plib_logserv=Servidors de registre plib_swapserv=Servidor d'intercanvi plib_rdpath=Cam del disc arrel plib_nisdom=Domini NIS plib_nisserv=Servidors NIS plib_fontserv=Servidors de tipus de lletra plib_xdmserv=Servidors XDM plib_statrouters=Rutes esttiques plib_ntpserv=Servidors NTP plib_nbns=Servidors de noms NetBIOS plib_nbscope=Abast de NetBIOS plib_nbntype=Tipus de node NetBIOS plib_toffset=Interval de temps plib_serverid=Identificador del servidor DHCP plib_ddnsdom=Nom de domini DNS dinmic plib_ddnsrevdom=Domini invers DNS dinmic plib_ddnsup=DNS dinmic activat plib_ddnshost=Nom de host DNS dinmic plib_ddnshost_def=Del client plib_ddnsupstyle=Estil d'actualitzaci DNS dinmic plib_adhoc=Ad hoc plib_interim=Inter plib_none=Cap plib_unclients=Clients desconeguts plib_allow=Permet plib_deny=Denega plib_ignore=Ignora plib_eexpr=Aquesta secci de la configuraci DHCP cont la directiva d'expressi $1, que no es pot editar de forma segura amb Webmin. plib_auth_subnet=El servidor s autoritatiu per a aquesta subxarxa plib_auth_shared-network=El servidor s autoritatiu per a aquesta xarxa compartida plib_auth_global=El servidor s autoritatiu per a totes les subxarxes eopt_header=Opcions de Client eopt_subtitle=de la subxarxa $1 eopt_returnsub=a la subxarxa eopt_returnshsub=a la xarxa compartida eopt_snettitle=de la xarxa compartida $1 eopt_hosttitle=del host $1 eopt_returnhost=al host eopt_returngroup=al grup de hosts eopt_grouptitle=del grup de membres $1 eopt_alltitle=de totes les xarxes, hosts i grups eopt_returnindex=a la llista de hosts i xarxes eopt_tabhdr=Opcions de Client eopt_chost=Nom de host client eopt_defrouters=Encaminadors per defecte eopt_smask=Mscara de subxarxa eopt_baddr=Adrea de retransmissi eopt_domname=Nom de domini eopt_dnsserv=Servidors DNS eopt_timeserv=Servidors horaris eopt_logserv=Servidors de registre eopt_swapserv=Servidor d'intercanvi eopt_rdpath=Cam del disc arrel eopt_nisdom=Domini NIS eopt_nisserv=Servidors NIS eopt_fontserv=Servidors de tipus de lletra eopt_xdmserv=Servidors XDM eopt_statrouters=Rutes esttiques eopt_ntpserv=Servidors NTP eopt_nbns=Servidors de noms NetBIOS eopt_nbs=Abast NetBIOS eopt_nbntype=Tipus de node NetBIOS eopt_custom=Opci personalitzada eopt_toffset=Interval de temps eopt_cnum=Nmero eopt_cval=Valor eopt_def=Definici de l'opci eopt_dname=Nom de l'opci eopt_dnum=Nmero eopt_dtype=Tipus eopt_slpa=IPS de l'agent de directori SLP eopt_slpaips=Noms aquestes IPs eopt_slps=Abast del servei SLP eopt_slpsonly=Noms aquest abast log_apply=He aplicat els canvis log_start=He iniciat el servidor DHCP log_stop=He aturat el servidor DHCP log_create_subnet=He creat la subxarxa $1 log_delete_subnet=He suprimit la subxarxa $1 log_modify_subnet=He modificat la subxarxa $1 log_options_subnet=He modificat les opcions de la subxarxa $1 log_create_shared=He creat la xarxa compartida $1 log_delete_shared=He suprimit la xarxa compartida $1 log_modify_shared=He modificat la xarxa compartida $1 log_options_shared=He modificat les opcions de la xarxa compartida $1 log_create_host=He creat el host $1 log_delete_host=He suprimit el host $1 log_modify_host=He modificat el host $1 log_options_host=He modificat les opcions del host $1 log_create_group=He creat el grup de hosts $1 log_delete_group=He suprimit el grup de hosts $1 log_modify_group=He modificat el grup de hosts $1 log_options_group=He modificat les opcions del grup de hosts $1 log_delete_lease=He suprimit el prstec de $1 log_delete_subnets=He suprimit $1 subxarxes i carces compartides log_delete_hosts=He suprimit $1 hosts grups de hosts keys_edit=Edita la clau TSIG keys_create=He creat les claus TSIG keys_title=Claus DNS keys_id=ID de la clau keys_alg=Algoritme keys_secret=Cadena secreta keys_ecannot=No tens perms per editar les claus DNS keys_err=No he pogut desar les claus DNS keys_ekey='$1' no s un ID de clau vlid keys_esecret=Hi falta la cadena secreta base-64 de la clau $1 pool_edit=Edita el Conjunt d'Adreces pool_create=He creat el conjunt d'adreces pool_header=Opcions del conjunt d'adreces pool_allow=Clients permesos pool_deny=Clients denegats pool_return=a la subxarxa cdel_header=Atenci cdel_shared1=xarxa compartida cdel_shared2=xarxa compartida cdel_subnet1=subxarxa cdel_subnet2=subxarxa cdel_subnet=subxarxa cdel_subnets=subxarxes cdel_group1=grup cdel_group2=grup cdel_group=grup cdel_groups=grups cdel_host=host cdel_hosts=hosts cdel_txt=Suprimir $1 '$2' tamb suprimir el seu contingut: cdel_confirm=Segur que vols suprimir aquest $1 ? cdel_eunknown=Error desconegut cdel_return=a la llista de hosts i xarxes eacl_aviol=Violaci del control d'accs eacl_np=No tens perms per eacl_pdh=suprimir el host eacl_pih=afegir nous hosts eacl_puh=editar el host eacl_psh=seleccionar el host eacl_pdg=suprimir el grup eacl_pig=afegir nous grups eacl_pug=editar el grup eacl_psg=seleccionar el grup eacl_pds=suprimir la subxarxa eacl_pis=afegir noves subxarxes eacl_pus=editar la subxarxa eacl_pss=seleccionar la subxarxa eacl_pdn=suprimir la xarxa compartida eacl_pin=afegir noves xarxes compartides eacl_pun=editar la xarxa compartida eacl_psn=seleccionar la xarxa compartida eacl_uniq=crear duplicats eacl_pdl=suprimir prstecs eacl_psl=veure prstecs eacl_pglob=editar les opcions globals eacl_papply=reiniciar aquest servei acl_apply=Pot aplicar els canvis acl_r_leases=Pot veure els prstecs acl_w_leases=Pot treure els prstecs acl_global=Pot editar les opcions globals acl_uniq_hst=Noms de host nics acl_uniq_sub=Adreces IP de subxarxa niques acl_uniq_sha=Noms de xarxes compartides nics acl_seclevel=Fes servir el nivell de seguretat: acl_hide=Amaga els objectes inaccessibles acl_ahst=Accedeix els hosts: acl_agrp=Accedeix els grups: acl_asub=Accedeix les subxarxes: acl_asha=Accedeix les xarxes compartides: acl_per_hst_acls=Activa ACLs per host acl_per_grp_acls=Activa ACLs per grup acl_per_sub_acls=Activa ACLs per subxarxa acl_per_sha_acls=Activa ACLs per xarxa compartida acl_per_obj_acls=ACLs per objecte... acl_na=no perms acl_r1=noms lectura acl_rw=lectura/escriptura acl_c=creaci acl_r=lectura acl_w=escriptura acl_err=Error en desar la llista ACL acl_ernow=Si vols activar l'accs d'escriptura a les ACLs globals per algun tipus d'objecte, tamb hi has d'activar l'accs de lectura. acl_normal=normal acl_paranoic=paranoic iface_title=Interfcie de Xarxa iface_desc=El servidor DHCP noms pot assignar adreces IP a les xarxes connectades a una de les interfcies seleccionades a sota. S'hi ha d'incloure la interfcie de xarxa per a totes les subxarxes definides. Si no n'hi ha cap de seleccionada, el servidor DHCP intentar trobar-ne una automticament. iface_listen=Escolta les interfcies lookup_ehost=No existeix cap host amb el nom, adrea IP o adrea MAC $1 lookup_ehostname=No has introdut cap nom de host, adrea IP o adrea MAC lookup_egroup=No existeix cap grup amb el nom o el domini $1 lookup_egroupname=No has introdut cap nom de grup ni de domini lookup_esubnet=No existeix cap subxarxa amb l'adrea o l'adrea/mscara $1 lookup_esubnetname=No has introdut cap adrea o adrea/mscara lookup_eshared=No existeix cap xarxa compartida amb el nom $1 lookup_esharedname=No has introdut cap nom de xarxa compartida zone_key=Zones DNS index_addzone=Afegeix una nova zona DNS. index_zone=Zona index_nozones=Encara no s'ha definit cap zona DNS. zone_crheader=Crea la zona zone_eheader=Edita la zona zone_tabhdr=Detalls de la zona zone_desc=Descripci de la zona (opcional) zone_name=Nom de la zona zone_primary=IP del NS primari zone_return=al men principal zone_faildel=No he pogut suprimir la zona zone_failsave=No he pogut desar la zona zone_tsigkey=Clau TSIG plib_clientupdates=client-updates: Els clients poden actualitzar els seus propis registres text_title=dhcpd.conf text_editor=Editor de text text_return=al men principal text_undo=desfs text_ecannot=No tens perms perms per editar el fitxer de configuraci index_buttetext=Fitxer de configuraci index_text=Edita el fitxer de configuraci a l'editor de text (compte!) stop_err=No he pogut aturar el servidor DHCP stop_ekill=No est en execuci! sdelete_err=Ho he pogut suprimir les subxarxes i les xarxes compartides sdelete_enone=No has seleccionat cap xarxa sdelete_title=Supressi de Subxarxes i Xarxes Compartides sdelete_rusure1=Segur que vols suprimir les $1 subxarxes i les $2 xarxes compartides seleccionades? Tamb es perdran les altres subxarxes i objectes dins de les xarxes. sdelete_rusure2=Segur que vols suprimir les $1 subxarxes seleccionades? Tamb es perdran les altres subxarxes i objectes dins de les subxarxes. sdelete_rusure3=Segur que vols suprimir les $1 xarxes compartides seleccionades? Tamb es perdran les altres xarxes i objectes dins de les xarxes. sdelete_ok=Suprimeix-les Ara hdelete_err=No he pogut suprimir els hosts i els grups hdelete_enone=No has seleccionat cap host ni cap grup hdelete_title=Supressi de Hosts i Grups hdelete_rusure1=Segur que vols suprimir els $1 hosts i els $2 grups seleccionats? Tamb es perdran tots els hosts dins dels grups. hdelete_rusure2=Segur que vols suprimir els $1 hosts seleccionats? hdelete_rusure3=Segur que vols suprimir els $2 grups seleccionats? Tamb es perdran tots els hosts dins dels grups. hdelete_ok=Suprimeix-los Ara dhcpd/lang/ru_SU0100644000567100000120000002775410655706244013552 0ustar jcameronwheelindex_1memb=1 index_234memb=$1 index_addhstg= index_addhst= index_addnet= index_addsub= index_apply= DHCP, . index_buttapply= index_buttego= index_buttiface= index_buttlal= index_buttstart= index_dhcpdnotfound= DHCP $1 . , DHCP. index_dhcpdver= DHCP $1 . Webmin ISC DHCPD 2. index_ego= DHCP, , , index_group=: index_hardware= index_hdisplay= : index_horder0= index_horder1= index_horder2= index_horder3= index_horder4= IP index_hostgroup=/ index_hst= index_iface= DHCPD . index_lal= ( ) IP- DHCP. index_memb=$1 index_nameip= IP index_ndisplay= : index_netmask= index_net= index_nohst= , . index_nomemb= index_norder0= index_norder1= index_norder2=/ IP index_nosubdef= , . index_parent= index_return= index_start= DHCP . index_subtitle= index_title= DHCP index_togroup= index_toshared= index_tosubnet= index_version=ISC DHCPd $1 butt_save= butt_eco= butt_vco= butt_del= butt_create= butt_leases= esub_crheader= esub_edheader= esub_tabhdr= esub_naddr= esub_nmask= esub_arange= esub_dbooptpq= BOOTP? esub_shnet= esub_hosts= esub_groups= esub_pools= esub_pool= $1 esub_poolnone= esub_pooladd= esub_none= esub_return= esub_retshar= esh_crheader= esh_eheader= esh_tabhdr= esh_netname= esh_hosts= esh_groups= esh_subn= esh_return= esh_pools= ehost_crheader= ehost_eheader= ehost_tabhdr= ehost_hname= ehost_nojavascr=, javascript. . ehost_assign= ehost_toplevel= ehost_inshared= ehost_insubnet= ehost_ingroup= ehost_hwaddr= ehost_fixedip= IP ehost_subnet= $1/$2 ehost_shared= $1 ehost_in= ehost_return= ehost_retgroup= ehost_retsubn= ehost_retshar= egroup_crheader= egroup_eheader= egroup_tblhdr= egroup_assign= egroup_hosts= egroup_nchoice= , ? egroup_return= egroup_retsubn= egroup_retshar= default= secs= none= listl_header= DHCP listl_network= $1/$2 listl_lfnotexist= DHCPd $1 . listl_lfnotcont= DHCPd $1 . listl_active= listl_ipaddr= IP listl_ether=Ethernet listl_host= listl_start= listl_end= listl_return= listl_all= listl_delete= IP . restart_errmsg1= dhcpd restart_errmsg2= start_failstart= dhcpd sgroup_faildel= sgroup_failsave= sgroup_invassign= sgroup_echanged= . . shost_faildel= shost_failsave= shost_invalidhn= shost_invalidhwa='$1' $2 shost_invalidaddr='$1' IP shost_invassign= sopt_failsave= sopt_invalidip= IP sopt_invalidint= sopt_invalidipp= IP ( 1.2.3.4,5.6.7.8) sshared_faildel= sshared_failsave= sshared_invalidsname= . sshared_nosubnet= '$1' . ssub_faildel= ssub_failsave= ssub_invalidsubaddr= ssub_invalidnmask= ssub_invalidipr= IP ssub_nosubnet= '$1' . plib_deflt= plib_bfname= plib_maxlt= plib_bfserv= plib_thisserv= plib_servname= plib_llbc= BOOTP plib_forever= plib_lebc= BOOTP plib_never= plib_invalidlt= plib_invalidsn= plib_invaliddom=$1 plib_leformat= // :: plib_copt= plib_chname= plib_defrouters= plib_snmask= plib_babbr= plib_domname= plib_dnsserv= DNS plib_timeserv= plib_logserv= plib_swapserv= swap plib_rdpath= plib_nisdom= NIS plib_nisserv= NIS plib_fontserv= plib_xdmserv= XDM plib_statrouters= plib_ntpserv= NTP plib_nbns= NetBIOS plib_nbscope= NetBIOS plib_nbntype= NetBIOS plib_ddnsdom= DNS plib_ddnsrevdom= DNS plib_ddnsup= DNS? plib_ddnshost= DNS plib_ddnshost_def= plib_ddnsupstyle= DNS plib_adhoc=Ad-hoc plib_interim=Interim plib_none= plib_unclients= ? plib_allow= plib_deny= plib_ignore= eopt_header= eopt_subtitle= $1 eopt_returnsub= eopt_returnshsub= eopt_snettitle= $1 eopt_hosttitle= $1 eopt_returnhost= eopt_returngroup= eopt_grouptitle= $1 eopt_alltitle= , eopt_returnindex= eopt_tabhdr= eopt_chost= eopt_defrouters= eopt_smask= eopt_baddr= eopt_domname= eopt_dnsserv= DNS eopt_timeserv= eopt_logserv= eopt_swapserv= swap eopt_rdpath= eopt_nisdom= NIS eopt_nisserv= NIS eopt_fontserv= eopt_xdmserv= XDM eopt_statrouters= eopt_ntpserv= NTP eopt_nbns= NetBIOS eopt_nbs= NetBIOS eopt_nbntype= NetBIOS eopt_custom= eopt_cnum= eopt_cval= log_apply= log_start= DHCP log_create_subnet= $1 log_delete_subnet= $1 log_modify_subnet= $1 log_options_subnet= $1 log_create_shared= $1 log_delete_shared= $1 log_modify_shared= $1 log_options_shared= $1 log_create_host= $1 log_delete_host= $1 log_modify_host= $1 log_options_host= $1 log_create_group= $1 log_delete_group= $1 log_modify_group= $1 log_options_group= $1 log_delete_lease= , $1 pool_edit= pool_create= pool_header= pool_allow= pool_deny= pool_return= cdel_header= cdel_shared1= cdel_shared2= cdel_subnet1= cdel_subnet2= cdel_subnet= cdel_subnets= cdel_group1= cdel_group2= cdel_group= cdel_groups= cdel_host= cdel_hosts= cdel_txt= $1 '$2' : cdel_confirm= $1 ? cdel_eunknown= cdel_return= eacl_aviol= eacl_np= eacl_pdh= eacl_pih= eacl_puh= eacl_psh= eacl_pdg= eacl_pig= eacl_pug= eacl_psg= eacl_pds= eacl_pis= eacl_pus= eacl_pss= eacl_pdn= eacl_pin= eacl_pun= eacl_psn= eacl_uniq= eacl_pdl= eacl_psl= eacl_pglob= eacl_papply= acl_apply= ? acl_r_leases= ? acl_w_leases= ? acl_global= ? acl_uniq_hst= ? acl_uniq_sub= IP ? acl_uniq_sha= ? acl_seclevel= : acl_hide= ? acl_ahst= : acl_agrp= : acl_asub= : acl_asha= : acl_per_hst_acls= ACL ? acl_per_sub_acls= ACL ? acl_per_obj_acls=ACL ... acl_na= acl_r1= acl_rw=/ acl_c= acl_r= acl_w= acl_err= ACL acl_ernow= ACL , - . acl_normal= acl_paranoic= iface_title= iface_desc= DHCP IP , , . . , DHCP . iface_listen= dhcpd/lang/pt_BR0100755000567100000120000003363610655706244013522 0ustar jcameronwheelindex_title=Servidor DHCP index_dhcpdnotfound=O servidor DHCP $1 no foi encontrado no seu sistema. Poder no estar instalado, ou a configurao do mdulo DHCP est incorrecta. index_return=ndice index_dhcpdver=O servidor DHCP $1 no aparenta ser a verso correcta. O Webmin apenas suporta a verso 2 do ISC DHCPD. index_subtitle=Sub-redes e Redes compartilhadas index_nosubdef=No foram definidas sub-redes ou redes compartilhadas. index_addsub=Adicionar nova sub-rede index_addnet=Adicionar nova rede compartilhada index_nomemb=Sem membros index_1memb=Membro 1 index_234memb=$1 membros index_memb=$1 membros index_hst=Computadores e Grupos de computadores index_nohst=No foram definidos computadores ou grupos. index_addhst=Adicionar novo computador index_addhstg=Adicionar novo grupo de computador index_buttego=Editar Opes Gerais index_ego=Editar opes de DHCP que se apliquem a todas as sub-redes, redes compartilhadas, computadores e grupos index_buttlal=Listar Concesses Ativas index_lal=Listar concesses correntes deste servidor DHCP para atribuir endereos IP dinamicamente. index_buttapply=Aplicar Alteraes index_apply=Clique neste boto para aplicar a configurao actual ao servidor DHCP em execuo atravs da sua paragem e reiniciar. index_buttstart=Iniciar Servidor index_start=Clique neste boto para iniciar o servidor DHCP no seu sistema, usando a configurao actual. index_buttiface=Editar Interfaces de Rede index_hdisplay=Mostrar computadores e grupos por: index_horder0=Ordem de criao index_horder1=Estrutura de arquivo index_horder2=Nome index_horder3=Endereo de Hardware index_horder4=Endereo IP index_ndisplay=Mostrar redes e sub-redes por: index_norder0=Ordem de Criao index_norder1=Estrutura de Arquivo index_norder2=Nome/Endereo IP index_iface=Configure as interfaces de rede que o servidor de DHCP escuta quando inicia butt_save=Guardar butt_eco=Editar Opes de Cliente butt_del=Apagar butt_create=Criar esub_crheader=Criar Sub-rede esub_edheader=Editar Sub-rede esub_tabhdr=Detalhes da Sub-rede esub_naddr=Endereo da rede esub_nmask=Mscara de rede esub_arange=Alcance dos endereos esub_dbooptpq=BOOTP dinmico ? esub_shnet=Rede compartilhada esub_return=lista de sub-redes esh_crheader=Criar Rede compartilhada esh_eheader=Editar Rede compartilhada esh_tabhdr=Detalhes da Rede compartilhada esh_netname=Nome da rede esh_return=lista de sub-redes ehost_desc=Descrio do Computador ehost_crheader=Criar Computador ehost_eheader=Editar Computador ehost_tabhdr=Detalhes do Computador ehost_hname=Nome do computador ehost_fixedip=Endereo IP fixo ehost_return=lista de computadores ehost_assign=Computador designado para egroup_crheader=Criar Grupo de computadores egroup_eheader=Editar Grupo de computadores egroup_tblhdr=Detalhes do Grupo egroup_hosts=computadores neste grupo egroup_nchoice=Usar o nome como computador do cliente? egroup_return=lista de computadores yes=Sim no=No default=Pr-definido secs=segundos none=Nenhum listl_header=Concesses DHCP listl_lfnotexist=O arquivo da concesso DHCPd $1 no existe. listl_lfnotcont=O arquivo da concesso DHCPd $1 no contm nehuma concesso$2. listl_active= ativa listl_ipaddr=Endereo IP listl_ether=Ethernet listl_host=Nome do Computador listl_start=Comear Data listl_end=Terminar Data listl_return=lista de sub-redes restart_errmsg1=Erro ao reiniciar o servidor dhcpd restart_errmsg2=Erro ao sinalizar processo start_failstart=Erro ao iniciar o servidor dhcpd sgroup_faildel=Erro ao apagar grupo sgroup_failsave=Erro ao guardar grupo shost_faildel=Erro ao apagar computador shost_failsave=Erro ao guardar computador shost_invalidhn=no um nome de computador vlido shost_invalidhwa='$1' no um endereo vlido $2 sopt_failsave=Erro ao guardar opes de cliente sopt_invalidip=no um endereo IP vlido sopt_invalidint=no um nmero inteiro sopt_invalidipp=no um par de endereo IP vlido (como 1.2.3.4,5.6.7.8) sshared_faildel=Erro ao apagar rede compartilhada sshared_failsave=Erro ao guardar rede compartilhada sshared_invalidsname=Nome de rede compartilhada invlido ou em falta ssub_faildel=Erro ao apagar sub-rede ssub_failsave=Erro ao guardar sub-rede ssub_invalidsubaddr=no um endereo de sub-rede vlido ssub_invalidnmask=no uma mscara de rede vlida ssub_invalidipr=no um alcance de endereo IP vlido plib_deflt=Tempo de concesso predefinido plib_bfname=Carregar nome de arquivo plib_maxlt=Tempo mximo de concesso plib_bfserv=Carregar servidor de arquivos plib_thisserv=Este servidor plib_servname=Nome do servidor plib_llbc=Tempo de concesso para clientes BOOTP plib_forever=Para sempre plib_lebc=Final da concesso para clientes BOOTP plib_never=Nunca plib_invalidlt=no um tempo vlido de concesso plib_invalidsn=no um nome de servidor vlido plib_leformat=A data final da concesso necessita estar no formato W YYYY/MM/DD HH:MM:SS plib_copt=Opes de Cliente plib_chname=Nome do computador do cliente plib_defrouters=Reencaminhadores predefinidos plib_snmask=Mscara de sub-rede plib_babbr=Endereo de emisso plib_domname=Nome do domnio plib_dnsserv=Servidores DNS plib_timeserv=Servidores de tempo plib_logserv=Servidores de histrico plib_swapserv=Servidor Swap plib_rdpath=Caminho do disco raiz plib_nisdom=Domnio NIS plib_nisserv=Servidores NIS plib_fontserv=Servidores de fontes plib_xdmserv=Servidores XDM plib_statrouters=Caminhos estticos plib_ntpserv=Servidores NTP plib_nbns=Servidores de nome NetBIOS plib_nbscope=Alcance do NetBIOS plib_nbntype=Tipo de nodo do NetBIOS plib_ddnsdom=Domnio do DNS Dinmico plib_ddnsrevdom=Domnio reverso do DNS Dinmico plib_ddnsup=DNS Dinmico habilitado? plib_ddnshost=Nome do servidor de DNS Dinmico plib_ddnshost_def=Do cliente plib_ddnsupstyle=Estilo de atualizao do DNS Dinmico plib_unclients=Permitir clientes desconhecidos? plib_allow=Permitir plib_deny=Negar plib_ignore=Ignorar plib_auth_global=Servidor autoritativo para todas subredes? eopt_header=Opes de Cliente eopt_subtitle=Para a sub-rede $1 eopt_returnsub=lista de sub-redes eopt_snettitle=Para a rede compartilhada $1 eopt_hosttitle=Para o computador $1 eopt_returnhost=lista de computadores eopt_grouptitle=Para o grupo de membros $1 eopt_alltitle=Para todas as redes, computadores e grupos eopt_returnindex=ndice eopt_tabhdr=Opes de Cliente eopt_chost=Nome do computador do cliente eopt_defrouters=Reencaminhadores predefinidos eopt_smask=Mscara de sub-rede eopt_baddr=Endereo de emisso eopt_domname=Nome do domnio eopt_dnsserv=Servidores DNS eopt_timeserv=Servidores de tempo eopt_logserv=Servidores de histrico eopt_swapserv=Servidor swap eopt_rdpath=Caminho do disco raiz eopt_nisdom=Domnio NIS eopt_nisserv=Servidores NIS eopt_fontserv=Servidores de fontes eopt_xdmserv=Servidores XDM eopt_statrouters=Caminhos estticos eopt_ntpserv=Servidores NTP eopt_nbns=Servidores de nome NetBIOS eopt_nbs=Alcance do NetBIOS eopt_nbntype=Tipo de nodo do NetBIOS eopt_custom=Opo customizada eopt_cnum=Nmero eopt_cval=Valor iface_desc=O servidor DHCP pode apenas dar endereos IP para redes conectadas com uma das interfaces selecionadas abaixo. A interface de rede para todas sub-redes definidas precisa ser includa. Se nenhuma selecionada, o servidor de DHCP ir tentar encontrar uma automaticamente. index_dhcpdver2=O servidor DHCP $1 no aparenta ser a verso correta. Webmin suporta apenas ISC DHCPD verses $2 para $3. index_hostgroup=Computador/Grupo index_parent=Pai index_hardware=Endereo de Hardware index_group=Grupo: index_nameip=Nome de computador ou IP index_net=Rede index_netmask=Mscara de rede index_togroup=Grupo index_tosubnet=Subrede index_toshared=Rede index_version=ISC DHCPd verso $1 index_subtoomany=H muitas subredes para mostrar index_shatoomany=H muitas redes compartilhadas para mostrar index_sublook2=Edite a subrede de endereo index_shalook2=Edite o compartilhamento de rede index_hsttoomany=H muitos computadores para mostrar index_grptoomany=H muitos grupos para mostrar index_hstlook2=Edite o computador de nome index_grplook2=Edite o grupo de nome index_gdom=Grupo para $1 index_match0=iguala index_match1=contm index_match2=exatamente butt_vco=Ver Opes do Cliente butt_leases=Listar Emprstimos esub_hosts=Computadores diretos nesta subrede esub_groups=Grupos diretos nesta subrede esub_pools=Lista de Endereos para Subrede esub_pool=Lista $1 esub_poolnone=Nenhuma lista de endereos definida esub_pooladd=Adicione uma lista de endereos esub_none=Nenhum esub_retshar=rede compartilhada esub_desc=Descrio de subrede esh_hosts=Computadores diretos nesta rede esh_groups=Grupos diretos nesta rede esh_subn=Subredes nesta rede compartilhada esh_pools=Lista de Endereos para rede compartilhada esh_desc=Descrio da Rede Compartilhada ehost_nojavascr=Seu browser no aparenta suportar javascript. Voc precisa escolher a posio apropriada da lista abaixo. ehost_toplevel=Topo ehost_inshared=Rede ehost_insubnet=Subrede ehost_ingroup=Grupo ehost_hwaddr=Endereo de Hardware ehost_subnet=Na subrede $1/$2 ehost_shared=Na rede $1 ehost_in=em ehost_retgroup=grupo ehost_retsubn=subrede ehost_retshar=rede egroup_assign=Grupo delegado para egroup_retsubn=subrede egroup_retshar=rede egroup_desc=Descrio do Grupo listl_network=Na rede $1/$2 listl_lfnotcont2=O arquivo de emprstimos $1 no contm nenhum emprstimo ativo no momento. listl_all=Lista todos emprstimos ativos e expirados listl_delete=Clique em um endereo IP da lista acima para apag-lo. sgroup_invassign=grupo delegado para uma seo incorreta. sgroup_echanged=O contedo do arquivo de configurao sofreu mudanas. Tente novamente. shost_invalidaddr='$1' contm um nome de computador ou endereo IP invlido shost_invassign=computador delegado para uma seo incorreta. sshared_nosubnet=A rede '$1' no contm subredes. ssub_nosubnet=A rede '$1' no contm subredes. plib_invaliddom=$1 no um nome de domnio vlido plib_adhoc=Ad-hoc plib_interim=Interim plib_none=None plib_eexpr=Esta seo da configurao do DHCP contm a diretiva $1, o qual no pode ser editada com segurana pelo Webmin. plib_auth_subnet=Servidor autoritativo para esta subrede? plib_auth_shared-network=Servidor autoritativo para esta rede? eopt_returnshsub=rede compartilhada eopt_returngroup=grupo de computadores log_apply=mudanas aplicadas log_start=Servidor DHCP iniciado log_create_subnet=Subrede $1 criada log_delete_subnet=Subrede $1 apagada log_modify_subnet=Subrede $1 modificada log_options_subnet=Opes para subrede $1 modificadas log_create_shared=Rede $1 criada log_delete_shared=Rede $1 apagada log_modify_shared=Rede $1 modificada log_options_shared=Opes para a rede compartilhada $1 modificadas log_create_host=Computador $1 criado log_delete_host=Computador $1 apagado log_modify_host=Computador $1 modificado log_options_host=Opes para o computador $1 modificadas log_create_group=Grupo de $1 computadores criado log_delete_group=Grupo de $1 computadores apagado log_modify_group=Grupo de $1 computadores modificado log_options_group=Opes para o grupo de $1 computadores modificados log_delete_lease=Apagado emprstimo para $1 pool_edit=Editar Lista de Endereos pool_create=Criado Lista de Endereos pool_header=Opes da Lista de Endereos pool_allow=Clientes permitidos pool_deny=Clientes negados pool_return=subrede cdel_header=Aviso cdel_shared1=redes compartilhada cdel_shared2=redes compartilhada cdel_subrede1=subrede cdel_subrede2=subrede cdel_subrede=subrede cdel_subredes=subredes cdel_grupo1=grupo cdel_grupo2=grupo cdel_grupo=grupo cdel_grupos=grupos cdel_computador=computador cdel_computadors=computadores cdel_txt=Apagando $1 '$2' ir apagar o seu contedo: cdel_confirm=Voc realmente quer apagar este $1 ? cdel_eunknown=Erro desconhecido cdel_return=Lista de computadores e redes eacl_aviol=Violao de controle de Acesso eacl_np=Voc no tem permisso para eacl_pdh=apagar computador eacl_pih=acrescente novos computadores eacl_puh=editar computador eacl_psh=selecionar computador eacl_pdg=apagar grupo eacl_pig=acrescente novos grupos eacl_pug=editar grupo eacl_psg=selecionar grupo eacl_pds=apagar subrede eacl_pis=acrescente novas subredes eacl_pus=editar subrede eacl_pss=selecionar subrede eacl_pdn=apagar rede compartilhada eacl_pin=acrescente nova rede compartilhada eacl_pun=editar rede compartilhada eacl_psn=selecionar rede compartilhada eacl_uniq=criar duplicatas eacl_pdl=apagar emprstimos eacl_psl=ver emprstimos eacl_pglob=editar opes globais eacl_papply=reiniciar este servio acl_apply=Pode aplicar as mudanas? acl_r_leases=Pode ver emprstimos? acl_w_leases=Pode remover emprstimos? acl_global=Pode editar opes globais? acl_uniq_hst=Nomes de computadores nicos? acl_uniq_sub=Subredes com endereos IP nicos? acl_uniq_sha=Nomes de redes compartilhadas nicas? acl_seclevel=Usar nvel de segurana: acl_hide=Esconder objetos inacessveis? acl_ahst=Acessar computadores: acl_agrp=Acessar grupos: acl_asub=Acessar subredes: acl_asha=Acessar redes: acl_per_hst_acls=Habilitar ACLs por computador? acl_per_grp_acls=Habilitar ACLs por grupo? acl_per_sub_acls=Habilitar ACLs por subrede? acl_per_sha_acls=Habilitar ACLs por rede compartilhada? acl_per_obj_acls=ACLs por objeto... acl_na=no permitido acl_r1=apenas leitura acl_rw=ler/escrever acl_c=criar acl_r=ler acl_w=escrever acl_err=Erro ao salvar lista de ACL acl_ernow=Se voc quer habilitar acesso escrita nos ACLs globais para algum tipo de objeto, voc precisa tambm habilitar acesso leitura para ele. acl_normal=normal acl_paranoic=parania iface_title=Interface de rede iface_listen=Escutar nas interfaces lookup_ehost=Nenhum computador com o nome, IP ou endereo MAC $1 existe lookup_ehostname=Nenhum computador, IP ou endereo MAC entrado. lookup_egroup=Nenhum grupo com o nome ou nome de domnio $1 existe lookup_egroupname=Nenhum grupo ou domnio entrado lookup_esubnet=Nenhuma subrede com o endereo ou endereo/mascra de rede $1 existe lookup_esubnetname=Nenhum endereo de subrede ou endereo/mscara de rede entrado lookup_eshared=Nenhuma rede com o nome $1 existe lookup_esharedname=Nenhum nome de rede compartilhada entrado. dhcpd/lang/fa0100664000567100000120000005274210655706244013100 0ustar jcameronwheel index_title=کارساز DHCP index_key=ويرايش کليدهاي TSIG (جهت احرازهويت به‌روزرساني کارساز‌هاي DNS مورد استفاده قرار مي‌گيرد.) index_dhcpdnotfound=کارساز DHCP $1 روي سيستم پيدا نشد. شايد نصب نشده‌است و يا پيکربندي پيمانه DHCP شما نادرست مي‌باشد. index_return=نمايه index_dhcpdver2=نسخه کارساز DHCP $1 نادرست به نظر مي‌رسد، وب‌مين فقط از نسخه‌هاي $2 تا $3 ISC DHCPD پشتيباني مي‌کند. index_subtitle=زيرشبکه‌ها و شبکه‌هاي اشتراکي index_nosubdef=هيچ شبکه اشتراکي يا زيرشبکه‌اي تعريف‌ نشده‌است. index_addsub=افزودن زيرشبکه جديد index_addnet=افزودن شبکه اشتراکي جديد index_nomemb=بدون عضو index_1memb=۱ عضو index_234memb=$1 اعضا index_memb=$1 اعضا index_hst=ميزبانها و گروه‌هاي ميزبان index_nohst=هيچ ميزباني يا گروهي تعريف نشده‌است. index_hostgroup=ميزبان/گروه index_parent=پدر index_hardware=نشاني سخت‌افزاري index_group=گروه: index_nameip=نام ميزبان يا IP index_net=شبکه index_netmask=نقابي شبکه index_desc=شرح index_addhst=افزودن ميزبان جديد index_addhstg=افزودن گروه ميزبان جديد index_buttego=ويرايش گزينه‌هاي کارخواه index_buttekey=ويرايش کليد TSIG index_ego=ويرايش گزينه‌هاي کارخواه DHCP جهت به کار ‌بستن در همه زير‌شبکه‌ها، شبکه‌هاي اشتراکي، ميزبانها و گروه‌ها index_buttlal=ليست IPهاي واگذار شده فعال index_lal=ليست IPهاي واگذار شده جاري توسط کارساز DHCP براي نشانيهاي IP که به‌صورت پويا انتساب داده شده‌اند.. index_buttapply=به‌کاربستن تغييرات index_apply=جهت به‌کاربستن پيکربندي جاري در اجراي کارسازDHCP، با استفاده از متوقف کردن و بازآغازي، اين کليد را فشار دهيد. index_buttstart=آغازکردن کارساز index_start=جهت آغاز کارساز DHCP با استفاده از پيکربندي جاري اين کليد را فشار دهيد. index_hdisplay=نمايش ميزبانها و گروه‌ها توسط: index_horder0=انتساب index_horder1=ساختار پرونده index_horder2=نام index_horder3=نشاني سخت‌افزاري index_horder4=نشاني IP index_togroup=گروه index_tosubnet=زير‌شبکه index_toshared=شبکه index_ndisplay=نمايش شبکه‌ها و زير‌شبکه‌ها توسط: index_norder0=انتساب index_norder1=ساختار پرونده index_norder2=نشاني نام/IP index_version=نسخه $1 ISC DHCPd index_buttiface=ويرايش واسط شبکه index_iface=بارگيري واسطهاي شبکه‌اي که کارساز DHCP در زمان آغاز به آنها گوش مي‌دهد. index_subtoomany=زير‌شبکه‌هاي زيادي جهت نمايش وجود ‌دارند index_shatoomany=شبکه‌هاي اشتراکي زيادي جهت نمايش وجود ‌دارند index_sublook2=ويرايش زيرشبکه‌ با نشاني index_shalook2=ويرايش اشتراک با شبکه index_hsttoomany=ميزبانهاي زيادي جهت نمايش وجود دارد index_grptoomany=گروه‌هاي زيادي جهت نمايش وجود دارد index_hstlook2=ويرايش ميزبان با نام index_grplook2=ويرايش گروه با نام index_gdom=گروه براي $1 index_match0=تساويها index_match1=شامل index_match2=تطبيقها butt_save=حفظ کردن butt_eco=ويرايش گزينه‌هاي کارخواه butt_vco=نمايش گزينه‌هاي کارخواه butt_del=حذف کردن butt_create=ايجاد کردن butt_leases=ليست IPهاي واگذار شده esub_crheader=ايجاد زير‌شبکه esub_edheader=ويرايش زير‌شبکه esub_tabhdr=جزئيات زير‌شبکه esub_naddr=نشاني شبکه esub_nmask=نقابي شبکه esub_arange=گستره نشاني esub_dbooptpq=BOOTP پويا؟ esub_shnet=شبکه اشتراکي esub_hosts=ميزبانهاي موجود در اين زيرشبکه esub_groups=گروه‌هاي موجود در اين زيرشبکه esub_pools=مجموعه نشاني براي زيرشبکه esub_pool=مجموعه نشاني $1 esub_poolnone=هيچ مجموعه نشاني تعريف نشده‌است esub_pooladd=اضافه کردن يک مجموعه نشاني. esub_none=هيچ esub_return=ليست زيرشبکه‌ها esub_retshar=شبکه اشتراکي esub_desc=شرح زيرشبکه esub_fopeer=Failover Peer esh_crheader=ايجاد شبکه اشتراکي esh_eheader=ويرايش شبکه اشتراکي esh_tabhdr=جزئيات شبکه اشتراکي esh_netname=نام شبکه esh_hosts=ميزبانهاي مستقيم در اين شبکه اشتراکي esh_groups=گروه‌هاي مستقيم در اين شبکه اشتراکي esh_subn=زيرشبکه‌ها در اين شبکه اشتراکي esh_return=ليست زيرشبکه‌ها esh_pools=مجموعه نشانيها براي شبکه اشتراکي esh_desc=شرح شبکه اشتراکي ehost_crheader=ايجاد ميزبان ehost_eheader=ويرايش ميزبان ehost_tabhdr=جزئيات ميزبان ehost_hname=نام ميزبان ehost_nojavascr=مرورگر شما از جاوا اسکريپت پشتيباني نمي‌کند. بايد از ليست زير رديف مناسبي را گزينه نماييد. ehost_assign=ميزبان منتسب به ehost_toplevel=سطح بالا ehost_inshared=شبکه اشتراکي ehost_insubnet=زيرشبکه ehost_ingroup=گروه ehost_hwaddr=نشاني سخت‌افزاري ehost_fixedip=نشاني IP ثابت ehost_subnet=در زيرشبکه $1/$2 ehost_shared=در شبکه اشتراکي $1 ehost_in=در ehost_return=ليست ميزبان ehost_retgroup=گروه ehost_retsubn=زيرشبکه ehost_retshar=شبکه اشتراکي ehost_desc=شرح ميزبان egroup_crheader=ايجاد گروه ميزبان egroup_eheader=ويرايش گروه ميزبان egroup_tblhdr=جزئيات ميزبان egroup_assign=گروه منتسب به egroup_hosts=ميزبانها در اين گروه egroup_nchoice=آيا از نام به‌عنوان نام ميزبان استفاده شود؟ egroup_return=ليست ميزبانها egroup_retsubn=زيرشبکه egroup_retshar=شبکه اشتراکي egroup_desc=شرح گروه default=پيش‌گزيده secs=ثانيه none=هيچ listl_header=واگذار شده‌هاي DHCP listl_network=در شبکه $1/$2 listl_lfnotexist=پرونده IPهاي واگذار شده $1 موجود نيست. listl_lfnotcont=پرونده IPهاي واگذار شده $1 شامل هيچ واگذار شده‌اي نيست. listl_lfnotcont2=پرونده IPهاي واگذار شده $1 شامل هيچ واگذار شده‌اي نيست که در حال حاضر فعال باشد. listl_active=فعال listl_ipaddr=نشاني IP listl_ether=اترنت listl_host=نام ميزبان listl_start=تاريخ آغاز listl_end=تاريخ پايان listl_return=ليست ميزبانها و شبکه‌ها listl_all=ليست همه IPهاي واگذار شده فعال و سپري شده listl_delete=برروي يک نشاني IP واگذار شده از ليست بالا فشار دهيد تا حذف شود. restart_errmsg1=عدم موفقيت در بازآغازي dhcpd restart_errmsg2=عدم موفقيت در پردازش سيگنال start_failstart=عدم موفقيت در آغاز dhcpd sgroup_faildel=عدم موفقيت در حذف کردن گروه sgroup_failsave=عدم موفقيت در حفظ کردن گروه sgroup_invassign=گروه به بخش نادرستي منتسب شده‌است sgroup_echanged=محتويات پرونده پيکربندي تغيير يافته‌است. دوباره سعي کنيد shost_faildel=عدم موفقيت در حذف کردن ميزبان shost_failsave=عدم موفقيت در حفظ کردن ميزبان shost_invalidhn=نام ميزبان معتبر نيست shost_invalidhwa='$1' نشاني $2 معتبري نيست shost_invalidaddr='$1' شامل نام ميزبان و يا نشاني IP نامعتبر مي‌باشد. shost_invassign=ميزبان به بخش نادرستي منتسب شده‌است sopt_failsave=عدم موفقيت در حفظ کردن گزينه‌هاي کارخواه sopt_invalidip=نشاني IP معتبري نيست sopt_invalidint=صحيح نيست sopt_invalidipp=يک جفت نشاني IP معتبر نيست(مانند (5.6.7.8 و 1.2.3.4)) sopt_edname='$1' نام گزينه معتبري نيست sopt_ednum='$1' شماره گزينه معتبري نيست sopt_edtype='$1' نوع گزينه معتبري نيست sshared_faildel=عدم موفقيت در حذف کردن شبکه اشتراکي sshared_failsave=عدم موفقيت درحفظ شبکه اشتراکي sshared_invalidsname=نام شبکه اشتراکي نامعتبر است و يا يافت نشد sshared_nosubnet=شبکه اشتراکي '$1' شامل هيچ زيرشبکه‌اي نمي‌باشد. ssub_faildel=عدم موفقيت در حذف کردن زيرشبکه ssub_failsave=عدم موفقيت در حفظ کردن زيرشبکه ssub_invalidsubaddr=نشاني معتبري براي زيرشبکه نيست ssub_invalidnmask=نقابي شبکه معتبر نيست ssub_invalidipr=گستره نشاني IP معتبري نيست ssub_nosubnet=شبکه اشتراکي '$1' شامل هيچ زيرشبکه‌اي نمي‌باشد. ssub_invalidfopeer=يک failover peer معتبر نيست. plib_deflt=زمان پيش‌گزيده واگذاري plib_bfname=نام پرونده راه‌انداز plib_maxlt=بيشينه زمان واگذاري plib_bfserv=کارساز پرونده راه‌انداز plib_thisserv=اين کارساز plib_servname=نام کارساز plib_llbc=طول واگذاري براي کارخواه‌هاي BOOTP plib_forever=دائمي plib_lebc=پايان واگذاري براي کارخواه‌هاي BOOTP plib_never=هرگز plib_invalidlt=زمان واگذاري معتبري نيست plib_invalidsn=نام کارساز معتبري نيست plib_invaliddom=$1 نام دامنه معتبري نيست plib_leformat=تاريخ پايان واگذاري بايد در قالبw YYYY/MM/DD HH:MM:SS باشد plib_copt=گزينه‌هاي کارخواه plib_chname=نام ميزبان کارخواه plib_defrouters=مسيريابهاي پيش‌گزيده plib_snmask=نقابي زيرشبکه plib_babbr=نشاني انتشاري plib_domname=نام دامنه plib_dnsserv=کارساز‌هاي DNS plib_timeserv=زمان کارساز‌ها plib_logserv=کارساز‌هاي ثبت plib_swapserv=کارساز Swap plib_rdpath=مسير ديسک ريشه plib_nisdom=دامنه NIS plib_nisserv=‌‌‌کارساز‌هاي NIS plib_fontserv=کارساز‌هاي خانواده‌ي حروف plib_xdmserv=کارساز‌هاي XDM plib_statrouters=مسيرهاي ايستا plib_ntpserv=کارساز‌هاي NTP plib_nbns=کارساز‌هاي نام NetBIOS plib_nbscope=حوزه NetBIOS plib_nbntype=نوع گره NetBIOS plib_toffset=جبران زمان plib_ddnsdom=نام دامنه DNS پويا plib_ddnsrevdom=دامنه معکوس DNS پويا plib_ddnsup=آيا DNS پويا فعال‌ است؟ plib_ddnshost=نام ميزبان DNS پويا plib_ddnshost_def=از طرف کارخواه plib_ddnsupstyle=سبک به‌هنگام درآوردن DNS پويا plib_adhoc=Ad-hoc plib_interim=Interim plib_none=هيچ plib_unclients=آيا اجازه دستيابي کارخواه‌هاي ناشناس داده شود؟ plib_allow=مجاز plib_deny=ممنوع plib_ignore=چشم پوشي plib_eexpr=اين بخش از پيکربندي DHCP شامل عبارت دستور $1 است که به‌طور امن توسط وب‌‌‌‌‌‌‌مين قابل ويرايش نيست. plib_auth_subnet=آيا کارساز براي اين زيرشبکه معتبر است؟ plib_auth_shared-network=آيا کارساز براي اين شبکه اشتراکي معتبر است؟ plib_auth_global=آيا کارساز براي همه زيرشبکه‌ها معتبر است؟ eopt_header=گزينه‌هاي کارخواه eopt_subtitle=براي زيرشبکه $1 eopt_returnsub=زيرشبکه eopt_returnshsub=شبکه اشتراکي eopt_snettitle=براي شبکه اشتراکي $1 eopt_hosttitle=براي ميزبان $1 eopt_returnhost=ميزبان eopt_returngroup=گروه ميزبان eopt_grouptitle=براي عضو $1 گروه eopt_alltitle=براي همه شبکه‌ها، ميزبانها و گروه‌ها eopt_returnindex=ليست ميزبان و شبکه eopt_tabhdr=گزينه‌هاي کارخواه eopt_chost=نام ميزبان کارخواه eopt_defrouters=مسيريابهاي پيش‌گزيده eopt_smask=نقابي زيرشبکه eopt_baddr=نشاني انتشار eopt_domname=نام دامنه eopt_dnsserv=کارساز‌هاي DNS eopt_timeserv=زمان کارساز‌ها eopt_logserv=ثبت کارساز‌ها eopt_swapserv=کارساز‌هاي Swap eopt_rdpath=مسير ديسک ريشه eopt_nisdom=دامنه NIS eopt_nisserv=کارساز NIS eopt_fontserv=کارساز‌هاي خانواده‌ء حروف eopt_xdmserv=کارساز‌هاي XDM eopt_statrouters=مسيريابهاي ايستا eopt_ntpserv=کارساز‌هاي NTP eopt_nbns=کارساز‌هاي نام NetBIOS eopt_nbs=حوزه NetBIOS eopt_nbntype=نوع گره NetBIOS eopt_toffset=جبران زمان eopt_custom=گزينه سفارشي eopt_cnum=شماره eopt_cval=مقدار eopt_def=تعريف گزينه eopt_dname=نام گزينه eopt_dnum=شماره eopt_dtype=نوع eopt_slpa=IPهاي عامل فهرست راهنماي SLP eopt_slpaips=فقط اين IPها؟ eopt_slps=حوزه خدمت SLP eopt_slpsonly=فقط اين حوزه؟ log_apply=به‌کاربستن تغييرات log_start=کارساز DHCP آغاز شد log_create_subnet=زيرشبکه $1 ايجاد شد log_delete_subnet=زيرشبکه $1 حذف شد log_modify_subnet=زيرشبکه $1 تغيير کرد log_options_subnet=گزينه‌هاي زير‌شبکه $1 تغيير کرد. log_create_shared=شبکه اشتراکي $1 ايجاد شد log_delete_shared=شبکه اشتراکي $1 حذف شد log_modify_shared=شبکه اشتراکي $1 تغيير کرد log_options_shared=گزينه‌هاي شبکه اشتراکي $1 تغيير کرد log_create_host=ميزبان $1 ايجاد شد log_delete_host=ميزبان $1 حذف شد log_modify_host=ميزبان $1 تغيير کرد log_options_host=گزينه‌هاي ميزبان $1 تغيير کرد log_create_group=گروه از $1 ميزبان ساخته شد log_delete_group=گروه از $1 ميزبان حذف شد log_modify_group=گروه از $1 ميزبان تغيير کرد log_options_group=گزينه‌هاي گروه از $1 ميزبان تغيير کرد log_delete_lease=واگذار شده به $1 حذف شد keys_edit=ويرايش کليد TSIG keys_create=کليدهاي TSIG ايجادشد keys_title=کليدهاي DNS keys_id=ID کليد keys_alg=الگوريتم keys_secret=رشته محرمانه keys_ecannot=اجازه ويرايش کليدهاي DNS را نداريد keys_err=عدم موفقيت در حفظ کردن کليدهاي DNS keys_ekey=$1 يک ID معتبر نيست keys_esecret=رمز گذاري محرمانه در مبناي 64 براي کليد $1 نامعتبر است و يا يافت نشد. pool_edit=ويرايش گستره نشاني IP pool_create=ايجاد گستره نشاني IP pool_header=گزينه‌هاي گستره نشاني pool_allow=براي کارخواه‌ها مجاز است pool_deny=براي کارخواه‌ها ممنوع است pool_return=زيرشبکه cdel_header=هشدار cdel_shared1=شبکه اشتراکي cdel_shared2=شبکه اشتراکي cdel_subnet1=زيرشبکه cdel_subnet2=زيرشبکه cdel_subnet=زيرشبکه cdel_subnets=زيرشبکه‌ها cdel_group1=گروه cdel_group2=گروه cdel_group=گروه cdel_groups=گروه‌ها cdel_host=ميزبان cdel_hosts=ميزبانها cdel_txt=با حذف $1 محتويات $2 نيز حذف خواهد شد: cdel_confirm=آيا مايل به حذف اين $1 هستيد؟ cdel_eunknown=خطاي ناشناخته cdel_return=ميزبان و ليست شبکه eacl_aviol=خطاي کنترل دستيابي eacl_np=شما مجاز نيستيد که eacl_pdh=حذف ميزبان eacl_pih=افزودن ميزبانهاي جديد eacl_puh=ويرايش ميزبان eacl_psh=گزينه ميزبان eacl_pdg=حذف گروه eacl_pig=افزودن گروه‌هاي جديد eacl_pug=ويرايش گروه eacl_psg=گزينه گروه eacl_pds=حذف زيرشبکه eacl_pis=افزودن زيرشبکه‌هاي جديد eacl_pus=ويرايش زيرشبکه eacl_pss=گزينه زيرشبکه eacl_pdn=حذف شبکه اشتراکي eacl_pin=افزودن شبکه‌هاي اشتراکي جديد eacl_pun=ويرايش شبکه اشتراکي eacl_psn=گزينه شبکه اشتراکي eacl_uniq=ايجاد نسخه‌هاي تکراري eacl_pdl=حذف واگذاري eacl_psl=نماي واگذاري eacl_pglob=ويرايش گزينه‌هاي سراسري eacl_papply=آغاز دوباره اين خدمت acl_apply=آيا مي‌توان تغييرات را به کار بست؟ acl_r_leases=آيا مي‌توان واگذار شده‌ها را مشاهده نمود؟ acl_w_leases=آيا مي‌توان واگذار شده‌ها را حذف نمود؟ acl_global=ويرايش گزينه‌هاي سراسري acl_uniq_hst=آيا نام ميزبانها منحصر بفرد باشد؟ acl_uniq_sub=آيا نشاني زيرشبکه‌ها منحصر بفرد باشد؟ acl_uniq_sha=آيا نام شبکه‌هاي اشتراکي منحصر بفرد باشد؟ acl_seclevel=استفاده از سطح امنيتي: acl_hide=آيا اشياء غير‌قابل دسترس پنهان شوند؟ acl_ahst=دستيابي ميزبانها: acl_agrp=دستيابي گروه‌ها: acl_asub=دستيابي زيرشبکه‌ها: acl_asha=دستيابي شبکه‌هاي اشتراکي: acl_per_hst_acls=آيا ACLها براي هر ميزبان فعال شوند؟ acl_per_grp_acls=آيا ACLها براي هر گروه فعال شوند؟ acl_per_sub_acls=آيا ACLها براي هر زيرشبکه فعال شوند؟ acl_per_sha_acls=آيا ACLها براي هر شبکه اشتراکي فعال شوند؟ acl_per_obj_acls=ACLهاي هر موجوديت acl_na=اجازه داده نشده‌است acl_r1=فقط خواندني acl_rw=خواندني/نوشتني acl_c=ايجاد کردن acl_r=خواندني acl_w=نوشتني acl_err=خطا در حفظ کردن ليست ACL acl_ernow=اگر خواهان فعال سازي دستيابي نوشتن در بعضي از انواع اشيا ACLهاي سراسري هستيد بايد دستيابي خواندن براي اين نوع شيء را هم فعال نماييد acl_normal=عادي acl_paranoic=سوءظن iface_title=کارت شبکه iface_desc=کارساز DHCP تنها توانايي انتساب نشانيهاي IP در شبکه‌هاي متصل به يکي از واسطهاي شبکه‌ انتخاب شده زير را دارد. همه زيرشبکه‌هاي تعريف شده بايد شامل واسط شبکه باشند. اگر هيچيک از واسطهاي شبکه انتخاب نشده باشد کارساز DHCP يکي از آنها را به‌صورت خودکار پيدا مي‌کند. iface_listen=گوش دادن به واسط شبکه‌ lookup_ehost=هيچ ميزباني با نام، نشاني IP يا نشاني MAC $1 وجود ندارد lookup_ehostname=هيچ ميزباني با نام، نشاني IPيا نشاني MAC $1 وارد نشده‌است lookup_egroup=هيچ گروهي با نام يا نام دامنه $1 وجود ندارد lookup_egroupname=هيچ نام گروه يا نام دامنه‌اي وارد نشده‌است lookup_esubnet=هيچ زيرشبکه‌اي با نشاني يا نشاني/نقابي شبکه $1 وجود ندارد lookup_esubnetname=هيچ نشاني زيرشبکه‌اي يا نشاني/نقابي شبکه‌اي وارد نشده‌است lookup_eshared=هيچ شبکه اشتراکي با نام $1 وجود ندارد lookup_esharedname=نام شبکه اشتراکي وارد نشده‌است zone_key=منطقه‌هاي DNS index_addzone=افزودن منطقه DNS جديد index_zone=منطقه zone_crheader=ايجاد منطقه zone_eheader=ويرايش منطقه zone_tabhdr=جزئيات منطقه zone_desc=شرح منطقه(انتخابي) zone_name=نام منطقه zone_primary=IP NS اصلي zone_return=گزينگان اصلي zone_faildel=عدم موفقيت در حذف کردن منطقه zone_failsave=عدم موفقيت در حفظ کردن منطقه zone_tsigkey=کليد TSIG plib_clientupdates=به‌هنگام درآوردن کارخواه: آيا کارخواه‌ها مي‌توانند رکوردهاي خود را به‌هنگام درآورند؟ text_title=dhcpd.conf text_editor=ويراستار متن text_return=گزينگان اصلي text_undo=واگرد text_ecannot=شمااجازه ويرايش پرونده پيکربندي را نداريد index_buttetext=پرونده پيکربندي index_text=ويرايش پرونده پيکربندي در ويراستار متن(توجه!) dhcpd/lang/uk_UA0100664000567100000120000003040110655706244013502 0ustar jcameronwheelindex_addsub= esub_crheader= sopt_invalidipp= IP ( 1.2.3.4,5.6.7.8) plib_forever= eopt_nisserv= NIS plib_servname=' sshared_failsave= ehost_eheader= eopt_swapserv= swap eopt_alltitle= , eopt_logserv= plib_fontserv= esh_eheader= none= esub_arange=ij butt_del= butt_eco= 볺 index_nomemb= plib_copt= 볺 eopt_subtitle= $1 eopt_timeserv= eopt_tabhdr= 볺 esub_shnet= egroup_tblhdr= index_subtitle=ϳ listl_return= index_addnet= index_ego= 볺 DHCP, , , listl_lfnotexist= DHCPd $1 . esub_naddr= eopt_defrouters= plib_babbr= restart_errmsg1= dhcpd index_start= DHCP . restart_errmsg2= ehost_hname=' plib_chname=' 볺 eopt_fontserv= index_addhst= egroup_return= ssub_invalidnmask= esh_crheader= plib_dnsserv= DNS eopt_returnindex= sgroup_faildel= plib_nbns= NetBIOS index_title= DHCP index_1memb=1 ehost_fixedip=Գ IP plib_maxlt= butt_save= ssub_invalidipr= IP plib_nbscope= NetBIOS listl_header= DHCP index_apply= DHCP, . ehost_crheader= plib_llbc= 볺 BOOTP eopt_nbns= NetBIOS esub_dbooptpq= BOOTP? index_return= eopt_xdmserv= XDM eopt_ntpserv= NTP sgroup_failsave= plib_nisserv= NIS listl_lfnotcont= DHCPd $1 . plib_deflt= eopt_domname=' index_memb=$1 plib_logserv= plib_invalidlt= index_lal= ( ) IP- DHCP. eopt_snettitle= $1 eopt_header= 볺 plib_never=ͳ shost_invalidhwa='$1' $2 plib_leformat= // :: index_buttstart= esh_netname= index_dhcpdnotfound= DHCP <>$1 . , DHCP. plib_rdpath= index_dhcpdver= DHCP <>$1 . Webmin ISC DHCPD 2. index_buttego= 볺 listl_start= eopt_smask= eopt_hosttitle= $1 eopt_statrouters= index_234memb=$1 eopt_nbntype= NetBIOS eopt_nbs= NetBIOS shost_failsave= esub_tabhdr= index_nohst= , . eopt_grouptitle= $1 ssub_invalidsubaddr= secs= plib_snmask= eopt_rdpath= index_buttapply= listl_active= listl_host=' esub_nmask= sshared_faildel= eopt_returnsub= egroup_hosts= sshared_invalidsname= ' . plib_invalidsn= ' ehost_tabhdr= shost_invalidhn= ' egroup_crheader= start_failstart= dhcpd plib_bfserv= plib_xdmserv= XDM butt_create= plib_ntpserv= NTP listl_end= sopt_invalidip= IP esub_return= default= index_hst= plib_domname=' index_buttlal= esh_tabhdr= plib_statrouters= listl_ether=Ethernet esub_edheader= ssub_failsave= egroup_nchoice= ', ' 볺? ssub_faildel= plib_bfname=' plib_nisdom= NIS index_addhstg= listl_ipaddr= IP ehost_return= index_nosubdef= , . plib_lebc=ʳ 볺 BOOTP plib_swapserv= swap eopt_returnhost= eopt_dnsserv= DNS plib_thisserv= eopt_nisdom= NIS plib_nbntype= NetBIOS sopt_failsave= 볺 sopt_invalidint= eopt_chost=' 볺 egroup_eheader= esh_return= shost_faildel= plib_defrouters= eopt_baddr= plib_timeserv= index_hdisplay= : ehost_ingroup= egroup_retsubn= cdel_host= listl_network= $1/$2 listl_all= esub_pools= cdel_shared1= cdel_shared2= sgroup_echanged= . . shost_invassign= plib_allow= iface_desc= DHCP IP , , . . , DHCP . acl_paranoic= acl_seclevel= : eopt_returngroup= eacl_papply= eacl_np= plib_ddnsupstyle= DNS log_create_subnet= $1 log_delete_lease= , $1 acl_na= eopt_cnum= butt_leases= acl_normal= plib_ddnsup= DNS? ehost_assign= cdel_group1= cdel_group2= plib_ddnshost_def=³ 볺 plib_adhoc=Ad-hoc acl_w_leases= ? cdel_eunknown= eacl_pglob= log_apply= pool_edit= log_create_shared= $1 acl_agrp= : esub_hosts= esh_subn=ϳ log_options_host= $1 log_modify_host= $1 ehost_hwaddr= cdel_groups= acl_r1= pool_return= esub_groups= ehost_retshar= acl_global= ? log_options_subnet= $1 plib_none= index_version=ISC DHCPd $1 plib_ddnsrevdom= DNS acl_hide= '? eopt_cval= shost_invalidaddr='$1' ' IP acl_uniq_hst= ? acl_r_leases= ? pool_deny= 볺 esh_groups= cdel_group= eacl_psg= index_togroup= eacl_psh= eacl_pdg= sshared_nosubnet= '$1' . eacl_pdh= ehost_toplevel= index_iface= DHCPD . eacl_psl= eacl_pdl= plib_invaliddom=$1 ' eacl_psn= acl_per_sub_acls= ACL ? eacl_pdn= eacl_pss= eacl_pds= acl_per_hst_acls= ACL ? pool_header= egroup_retshar= index_netmask= esub_pooladd= acl_rw=/ log_options_shared= $1 log_modify_subnet= $1 egroup_assign= listl_delete= IP . log_delete_host= $1 acl_ahst= : iface_listen= eacl_pug= esub_pool= $1 eacl_puh= ehost_insubnet=ϳ cdel_subnet1= cdel_return= cdel_subnet2= eacl_pun= cdel_subnet= eacl_pus= log_modify_shared= $1 index_ndisplay= : cdel_hosts= index_net= acl_uniq_sub= IP ? ehost_in= iface_title= cdel_header= plib_deny= esub_retshar= eopt_returnshsub= ehost_nojavascr=, javascript. . ehost_inshared= sgroup_invassign= index_group=: log_delete_subnet= $1 log_start= DHCP index_nameip=' IP esh_pools= cdel_subnets= index_hardware=Գ esub_none= esub_poolnone= eacl_uniq= ﳿ acl_apply= ? eacl_pig= eacl_pih= pool_allow= 볺 acl_uniq_sha= ? log_create_group= $1 acl_per_obj_acls=ACL '... acl_asub= : eacl_pin= eacl_pis= log_delete_shared= $1 plib_interim=Interim log_options_group= $1 index_norder0= index_norder1= index_norder2='/ IP index_tosubnet=ϳ log_delete_group= $1 index_parent= eopt_custom= acl_ernow= ACL ', - '. plib_ignore= plib_ddnshost= ' DNS plib_unclients= 볺? index_horder0= index_horder1= index_horder2= index_horder3= index_horder4= IP pool_create= ehost_subnet= $1/$2 eacl_aviol= cdel_txt= $1 '$2' : acl_c= acl_asha= : acl_err= ACL plib_ddnsdom= ' DNS esh_hosts= acl_r= ehost_retsubn= acl_w= index_hostgroup=/ index_toshared= log_create_host= $1 ssub_nosubnet= '$1' . ehost_retgroup= cdel_confirm= $1 ? butt_vco= 볺 log_modify_group= $1 ehost_shared= $1 index_buttiface= dhcpd/lang/zh_TW.UTF-80100664000567100000120000001250410655706244014337 0ustar jcameronwheelindex_title=DHCP 伺服器 index_dhcpdnotfound=在您的系統上找不到 DHCP 伺服器 $1. 可能是因為尚未安裝, 或是您的 DHCP 模組組態有錯誤. index_return=索引 index_dhcpdver=DHCP 伺服器 $1 似乎不是正確的版本. Webmin 只支援 ISC 的 DHCPD 第二版. index_subtitle=子網路與共享的網路 index_nosubdef=尚未定義子網路或共享的網路. index_addsub=增加一個新的子網路 index_addnet=增加一個新的共享網路 index_nomemb=沒有成員 index_1memb=1 個成員 index_memb=個成員 index_hst=主機與主機群組 index_nohst=尚未定義主機或群組. index_addhst=增加新的主機 index_addhstg=增加新的主機群組 index_buttego=編輯全域選項 index_ego=編輯 DHCP 選香並套用在所有的子網路, 共享網路, 主機與群組 index_buttlal=列出使用中的租約 index_lal=列出目前 DHCP 伺服器發出給動態指定 IP 位址的租約. index_buttapply=套用變更 index_apply=按下這個按鈕以經由停止並重新啟動執行中的 DHCP 伺服器, 並套用目前的組態. index_buttstart=啟動伺服器 index_start=按下這個按鈕以啟動 DHCP 伺服器, 並使用目前的組態. butt_save=儲存 butt_eco=編輯客戶端選項 butt_del=刪除 butt_create=建立 esub_crheader=建立子網路 esub_edheader=編輯子網路 esub_tabhdr=子網路詳細資料 esub_naddr=網路位址 esub_nmask=子網路遮罩 esub_arange=IP 位址範圍 esub_dbooptpq=是否使用動態的 BOOTP? esub_shnet=共享的網路 esub_return=子網路列表 esh_crheader=建立共享的網路 esh_eheader=編輯共享的網路 esh_tabhdr=共享網路的詳細資料 esh_netname=網路名稱 esh_return=子網路列表 ehost_crheader=建立主機 ehost_eheader=編輯主機 ehost_tabhdr=主機詳細資料 ehost_hname=主機名稱 ehost_fixedip=固定的 IP 位址 ehost_return=主機列表 egroup_crheader=建立主機群組 egroup_eheader=編輯主機群組 egroup_tblhdr=群組詳細資料 egroup_hosts=這個群組中的主機 egroup_nchoice=是否以使用者名稱作為客戶端主機名稱? egroup_return=主機列表 yes=是 no=否 default=預設 secs=秒 none=無 listl_header=DHCP 租約 listl_lfnotexist=DHCPd 租約檔案 $1 不存在. listl_lfnotcont=DHCPd 租約檔案 $1 不包含任何使用中的租約. listl_ipaddr=IP 位址 listl_ether=乙太網路位址 listl_host=主機名稱 listl_start=開始日期 listl_end=結束日期 listl_return=子網路列表 restart_errmsg1=重新啟動 dhcpd 失敗 restart_errmsg2=送出控制訊號給程序失敗 start_failstart=啟動 dhcpd 失敗 sgroup_faildel=刪除群組失敗 sgroup_failsave=儲存群組失敗 shost_faildel=刪除主機失敗 shost_failsave=儲存主機失敗 shost_invalidhn=不是一個有效的主機名稱 shost_invalidhwa='$1' 不是一個有效的 $2 位址 sopt_failsave=儲存客戶端選項失敗 sopt_invalidip=不是一個有效的 IP 位址 sopt_invalidint=不是一個整數 sopt_invalidipp=不是一個有效的 IP 位址對 (例如 1.2.3.4,5.6.7.8) sshared_faildel=刪除共享網路失敗 sshared_failsave=儲存共享網路失敗 sshared_invalidsname=遺失或錯誤的共享網路名稱 ssub_faildel=刪除子網路失敗 ssub_failsave=儲存子網路失敗 ssub_invalidsubaddr=不是一個有效的子網路位址 ssub_invalidnmask=不是一個有效的子網路遮罩 ssub_invalidipr=不是一個有效的 IP 位址 plib_deflt=預設的租約時間 plib_bfname=開機檔案名稱 plib_maxlt=最大租約時間 plib_bfserv=開機檔案伺服器 plib_thisserv=這個伺服器 plib_servname=伺服器名稱 plib_llbc=使用 BOOTP 客戶端的租約長度 plib_forever=永遠 plib_lebc=使用 BOOTP 客戶端的租約結束 plib_never=永不 plib_invalidlt=不是一個有效的租約時間 plib_invalidsn=不是一個有效伺服器名稱 plib_leformat=租約結束日期格式必須是 年/月/日 時:分:秒 plib_copt=客戶端選項 plib_chname=客戶端主機名稱 plib_defrouters=預設的路由器 plib_snmask=子網路遮罩 plib_babbr=廣播位址 plib_domname=網域名稱 plib_dnsserv=DNS 伺服器 plib_timeserv=時間伺服器 plib_logserv=紀錄伺服器 plib_swapserv=交換檔伺服器 plib_rdpath=根目錄磁碟路徑 plib_nisdom=NIS 網域名稱 plib_nisserv=NIS 伺服器 plib_fontserv=字型伺服器 plib_xdmserv=XDM 伺服器 plib_statrouters=靜態路由 plib_ntpserv=NTP 伺服器 plib_nbns=NetBIOS 名稱伺服器 plib_nbscope=NetBIOS 範圍 plib_nbntype=NetBIOS 節點類型 eopt_header=客戶端選項 eopt_subtitle=給子網路 $1 eopt_returnsub=子網路列表 eopt_snettitle=給共享網路 $1 eopt_hosttitle=給主機 $1 eopt_returnhost=主機列表 eopt_grouptitle=給 $1 群組成員 eopt_alltitle=給所有網路, 主機與群組 eopt_returnindex=索引 eopt_tabhdr=客戶端選項 eopt_chost=客戶端者機名稱 eopt_defrouters=預設路由器 eopt_smask=子網路遮罩 eopt_baddr=廣播位址 eopt_domname=網域名稱 eopt_dnsserv=DNS 伺服器 eopt_timeserv=時間伺服器 eopt_logserv=紀錄伺服器 eopt_swapserv=交換檔伺服器 eopt_rdpath=根目錄磁碟路徑 eopt_nisdom=NIS 網域名稱 eopt_nisserv=NIS 伺服器 eopt_fontserv=字型伺服器 eopt_xdmserv=XDM 伺服器 eopt_statrouters=靜態路由 eopt_ntpserv=NTP 伺服器 eopt_nbns=NetBIOS 名稱伺服器 eopt_nbs=NetBIOS 範圍 eopt_nbntype=NetBIOS 節點類型 dhcpd/lang/zh_CN.UTF-80100664000567100000120000002342710655706244014313 0ustar jcameronwheelindex_title=DHCP服务器 index_dhcpdnotfound=在您的系统上未找到DHCP服务器$1。可能没有安装,或者您的 DHCP模块配置不正确。 index_return=索引 index_dhcpdver=DHCP服务器$1 的版本有误。 Webmin只支持ISC DHCPD版本2。 index_subtitle=子网和共享网络 index_nosubdef=没有定义子网或共享网络。 index_addsub=增加一个新的子网 index_addnet=增加一个新的共享网络 index_nomemb=没有成员 index_1memb=一个成员 index_234memb=$1 个成员 index_memb=$1 个成员 index_hst=主机和主机组 index_nohst=没有定义主机或主机组。 index_hostgroup=主机/组 index_parent=父 index_hardware=硬件地址 index_group=成员: index_nameip=主机名或IP index_net=网络 index_netmask=掩码 index_addhst=增加一个新的主机 index_addhstg=增加一个新的主机组 index_buttego=编辑客户选项 index_ego=编辑应用于所有子网、共享网络、主机或主机组的DHCP选项 index_buttlal=列出活动的租赁 index_lal=列出当前由此DHCP服务器为动态分配IP地址而发出租赁。 index_buttapply=应用更改 index_apply=按这个按钮停止和重启DHCP服务器以使当前的配置应用于该DHCP服务器。 index_buttstart=启动服务器 index_start=按这个按钮在当前系统中用当前的配置启动DHCP服务器。 index_hdisplay=显示主机和组通过: index_horder0=任务 index_horder1=文件结构 index_horder2=名称 index_horder3=硬件地址 index_horder4=IP地址 index_togroup=组 index_tosubnet=子网 index_toshared=网络 index_ndisplay=显示网络和子网通过: index_norder0=任务 index_norder1=文件结构 index_norder2=名称/IP 地址 index_version=ISC DHCPd 版本 $1 butt_save=保存 butt_eco=编辑客户选项 butt_vco=查看客户选项 butt_del=删除 butt_create=创建 esub_crheader=创建子网 esub_edheader=编辑子网 esub_tabhdr=子网细节 esub_naddr=网络地址 esub_nmask=网络掩码 esub_arange=地址范围 esub_dbooptpq=动态BOOTP ? esub_shnet=共享网络 esub_hosts=本子网中的直接主机 esub_groups=本子网中的直接组 esub_pools=子网的地址池 esub_pool=池$1 esub_poolnone=未定义地址池 esub_pooladd=新增地址池 esub_none=无 esub_return=子网列表 esub_retshar=共享网络 esh_crheader=创建共享网络 esh_eheader=编辑共享网络 esh_tabhdr=共享网络细节 esh_netname=网络名 esh_hosts=本共享网络中的直接主机 esh_groups=本共享网络中的直接组 esh_subn=本共享网络中的子网 esh_return=子网列表 ehost_crheader=创建主机 ehost_eheader=编辑主机 ehost_tabhdr=主机细节 ehost_hname=主机名 ehost_nojavascr=您的浏览器似乎不支持javascript。现在您必须选择从下面的列表中选择正确的位置。 ehost_assign=被指定的主机 ehost_toplevel=Toplevel ehost_inshared=共享网络 ehost_insubnet=子网 ehost_ingroup=组 ehost_hwaddr=硬件地址 ehost_fixedip=固定的IP地址 ehost_subnet=在子网 $1/$2 ehost_shared=在共享网络$1 ehost_in=在 ehost_return=主机列表 ehost_retgroup=组 ehost_retsubn=子网 ehost_retshar=共享网络 egroup_crheader=创建主机组 egroup_eheader=编辑主机组 egroup_tblhdr=组细节 egroup_assign=被指定的组 egroup_hosts=本组中的主机 egroup_nchoice=用户名用作客户主机名? egroup_return=主机列表 egroup_retsubn=子网 egroup_retshar=共享网络 default=默认 secs=秒 none=没有 listl_header=DHCP租赁 listl_lfnotexist=DHCPd租赁文件$1 不存在 。 listl_lfnotcont=DHCPd租赁文件$1 不包含任何租赁。 listl_active=启动 listl_ipaddr=IP地址 listl_ether=以太网 listl_host=主机名 listl_start=开始日期 listl_end=终止日期 listl_return=子网和主机列表 listl_all=列出所有活动和过期的租赁 listl_delete=点击上面列表中的一个租赁IP地址以将其删除。 restart_errmsg1=重启dhcpd失败 restart_errmsg2=发信号给进程失败 start_failstart=启动dhcpd失败 sgroup_faildel=删除组失败 sgroup_failsave=保存组失败 sgroup_invassign=将组指定到不正确的区 sgroup_echanged=配置文件内容以改变。请再试一次。 shost_faildel=删除主机失败 shost_failsave=保存主机失败 shost_invalidhn=不是有效的主机名 shost_invalidhwa='$1'不是有效的 $2 地址 shost_invalidaddr='$1'包含无效的主机名或IP地址 shost_invassign=将主机指定到不正确的区 sopt_failsave=保存客户选项失败 sopt_invalidip=不是有效的IP地址 sopt_invalidint=不是一个整数 sopt_invalidipp=不是有效的IP地址对 (象 1.2.3.4,5.6.7.8) sshared_faildel=删除共享网络失败 sshared_failsave=保存共享网络失败 sshared_invalidsname=缺少或非法的共享网络名 sshared_nosubnet=共享网络'$1'未包含任何子网。 ssub_faildel=删除子网失败 ssub_failsave=保存子网失败 ssub_invalidsubaddr=不是有效的子网地址 ssub_invalidnmask=不是有效的掩码 ssub_invalidipr=不是有效的IP地址范围 ssub_nosubnet=共享网络'$1'未包含任何子网。 plib_deflt=默认租赁时间 plib_bfname=启动文件名 plib_maxlt=最大租赁时间 plib_bfserv=启动文件服务器 plib_thisserv=这个服务器 plib_servname=服务器名 plib_llbc=BOOTP客户的租赁时间 plib_forever=永久 plib_lebc=BOOTP客户租赁终止 plib_never=永不 plib_invalidlt=不是一个合法的租赁时间 plib_invalidsn=不是有效的服务器名 plib_invaliddom=$1不是有效的域名 plib_leformat=租赁终止日期的格式必须是 W YYYY/MM/DD HH:MM:SS plib_copt=客户选项 plib_chname=客户主机名 plib_defrouters=默认路由器 plib_snmask=子网掩码 plib_babbr=广播地址 plib_domname=域名 plib_dnsserv=DNS服务器 plib_timeserv=时间服务器 plib_logserv=日志服务器 plib_swapserv=交换服务器 plib_rdpath=根盘路径 plib_nisdom=NIS域 plib_nisserv=NIS服务器 plib_fontserv=字体服务器 plib_xdmserv=XDM服务器 plib_statrouters=静态路由 plib_ntpserv=NTP服务器 plib_nbns=NetBIOS名字服务器 plib_nbscope=NetBIOS范围 plib_nbntype=NetBIOS节点类型 plib_ddnsdom=动态DNS域名 plib_ddnsrevdom=动态DNS逆向域名 plib_ddnsup=启动动态DNS? plib_ddnshost=动态DNS域名 plib_ddnshost_def=从客户 plib_ddnsupstyle=动态DNS域名更新方式 plib_adhoc=Ad-hoc plib_interim=Interim plib_none=无 eopt_header=客户选项 eopt_subtitle=用于子网 $1 eopt_returnsub=子网 eopt_returnshsub=共享网络 eopt_snettitle=用于共享网络 $1 eopt_hosttitle=用于主机 $1 eopt_returnhost=主机 eopt_returngroup=主机组 eopt_grouptitle=用于$1 成员组 eopt_alltitle=用于全部网络、主机和组 eopt_returnindex=网络和主机列表 eopt_tabhdr=客户选项 eopt_chost=客户主机名 eopt_defrouters=默认路由器 eopt_smask=子网掩码 eopt_baddr=广播地址 eopt_domname=域名 eopt_dnsserv=DNS服务器 eopt_timeserv=时间服务器 eopt_logserv=日志服务器 eopt_swapserv=交换服务器 eopt_rdpath=根盘路径 eopt_nisdom=NIS域 eopt_nisserv=NIS服务器 eopt_fontserv=字体服务器 eopt_xdmserv=XDM服务器 eopt_statrouters=静态路由 eopt_ntpserv=NTP服务器 eopt_nbns=NetBIOS名字服务器 eopt_nbs=NetBIOS范围 eopt_nbntype=NetBIOS节点类型 eopt_custom=客户选项 eopt_cnum=数字 eopt_cval=值 log_apply=应用更改 log_start=启动DHCP逆向 log_create_subnet=已创建子网$1 log_delete_subnet=已删除子网$1 log_modify_subnet=已修改子网$1 log_options_subnet=已修改子网$1选项 log_create_shared=已创建共享网络$1 log_delete_shared=已删除共享网络$1 log_modify_shared=已修改共享网络$1 log_options_shared=已修改共享网络$1选项 log_create_host=已创建主机$1 log_delete_host=已删除主机$1 log_modify_host=已修改主机$1 log_options_host=已修改主机$1选项 log_create_group=已创建主机$1组 log_delete_group=已删除主机$1组 log_modify_group=已修改主机$1组 log_options_group=已为主机$1组修改选项 log_delete_lease=已为$1删除租赁 pool_edit=编辑地址池 pool_create=已创建的地址池 pool_header=地址池选项 pool_allow=允许的客户 pool_deny=禁止的客户 pool_return=子网 cdel_header=警告 cdel_shared1=共享网络 cdel_shared2=共享网络 cdel_subnet1=子网 cdel_subnet2=子网 cdel_subnet=子网 cdel_subnets=子网 cdel_group1=组 cdel_group2=组 cdel_group=组 cdel_groups=组 cdel_host=主机 cdel_hosts=主机 cdel_txt=删除$1 '$2'也将会删除其所包含的目录: cdel_confirm=您真的想删除此$1 cdel_eunknown=未知错误 cdel_return=主机和网络列表 eacl_aviol=违反访问控制 eacl_np=您没有许可 eacl_pdh=删除主机 eacl_pih=新增主机 eacl_puh=编辑主机 eacl_psh=选择主机 eacl_pdg=删除组 eacl_pig=新增组 eacl_pug=编辑组 eacl_psg=选择组 eacl_pds=删除子网 eacl_pis=新增子网 eacl_pus=编辑子网 eacl_pss=选择子网 eacl_pdn=删除共享网络 eacl_pin=新增共享网络 eacl_pun=编辑共享网络 eacl_psn=选择共享网络 eacl_uniq=创建副本 eacl_pdl=删除租赁 eacl_psl=浏览租赁 eacl_pglob=编辑全局选项 eacl_papply=重新启动本服务 acl_apply=可以应用更改吗? acl_r_leases=可以浏览租赁吗? acl_w_leases=可以移除租赁吗? acl_global=可以编辑全局选项吗? acl_uniq_hst=Uniq主机名? acl_uniq_sub=Uniq子网IP地址 acl_uniq_sha=Uniq共享网络名? acl_seclevel=使用安全等级: acl_hide=隐藏不可访问物件? acl_ahst=访问主机: acl_agrp=访问组: acl_asub=访问子网: acl_asha=访问共享网络: acl_per_hst_acls=启动每一个主机ACL? acl_per_sub_acls=启动每个子网ACL? acl_per_obj_acls=每个物件ACL... acl_na=不允许 acl_r1=只读 acl_rw=读/写 acl_c=创建 acl_r=读取 acl_w=写入 acl_err=错误保存ACL列表 acl_ernow=如果您想再全局ACL中启动用于某些物件类型的写入功能,您必须也启动本物件的读取功能。 acl_normal=通常 acl_paranoic=paranoic dhcpd/lang/ja_JP.UTF-80100664000567100000120000004305210655706244014271 0ustar jcameronwheelacl_agrp=アクセス グループ: acl_ahst=アクセス ホスト: acl_apply=変更を適用してもよろしいですか? acl_asha=アクセス共有ネットワーク: acl_asub=アクセス サブネット: acl_c=作成 acl_ernow=グローバル アクセス制御リストでオブジェクトの種類の書込みを可能にするには、そのオブジェクトの種類の読取りアクセスも可能にする必要があります。 acl_err=アクセス制御リストの保存エラー acl_global=グローバル オプションを編集可能にしますか? acl_hide=アクセス不可のオブジェクトを非表示にしますか? acl_na=許可なし acl_normal=標準 acl_paranoic=非標準 acl_per_grp_acls=グループ毎のACLを使用しますか? acl_per_hst_acls=ホストごとにアクセス制御リストを有効にしますか? acl_per_obj_acls=オブジェクトごとのアクセス制御リスト... acl_per_sha_acls=共有ネットワーク毎のACLを使用しますか? acl_per_sub_acls=サブネットごとにアクセス制御リストを有効にしますか? acl_r=読取り acl_r1=読取り専用 acl_r_leases=リースを表示可能にしますか? acl_rw=読取り/書込み acl_seclevel=使用するセキュリティ レベル: acl_uniq_hst=固有のホスト名ですか? acl_uniq_sha=固有の共有ネットワーク名ですか? acl_uniq_sub=固有のサブネット IP アドレスですか? acl_w=書込み acl_w_leases=リースを削除可能にしますか? butt_create=作成 butt_del=削除 butt_eco=クライアント オプションの編集 butt_leases=リースリスト butt_save=保存 butt_vco=クライアント オプションの表示 cdel_confirm=この $1 を削除してもよろしいですか? cdel_eunknown=不明のエラー cdel_group=グループ cdel_group1=グループ cdel_group2=グループ cdel_groups=グループ cdel_header=警告 cdel_host=ホスト cdel_hosts=ホスト cdel_return=ホストとネットワークのリスト cdel_shared1=共有ネットワーク cdel_shared2=共有ネットワーク cdel_subnet=サブネット cdel_subnet1=サブネット cdel_subnet2=サブネット cdel_subnets=サブネット cdel_txt=$1 '$2' を削除するとそれらの内容も削除されます: default=デフォルト eacl_aviol=アクセス制御違反 eacl_np=次の操作をする権限がありません: eacl_papply=このサービスを再度開始 eacl_pdg=グループを削除 eacl_pdh=ホストを削除 eacl_pdl=リースを削除 eacl_pdn=共有ネットワークを削除 eacl_pds=サブネットを削除 eacl_pglob=グローバル オプションを編集 eacl_pig=新規のグループを追加 eacl_pih=新規のホストを追加 eacl_pin=新規の共有ネットワークを追加 eacl_pis=新規のサブネットを追加 eacl_psg=グループを選択 eacl_psh=ホストを選択 eacl_psl=リースの表示 eacl_psn=共有ネットワークを選択 eacl_pss=サブネットを選択 eacl_pug=グループを編集 eacl_puh=ホストを編集 eacl_pun=共有ネットワークを編集 eacl_pus=サブネットを編集 eacl_uniq=複製を作成 egroup_assign=ホスト グループの割り当て先 egroup_crheader=ホスト グループの作成 egroup_desc=グループの説明 egroup_eheader=ホスト グループの編集 egroup_hosts=このグループ内 egroup_nchoice=クライアント ホスト名として名前を使用しますか? egroup_retshar=共有ネットワーク egroup_retsubn=サブネット egroup_return=ホスト リスト egroup_tblhdr=ホスト グループの詳細 ehost_assign=ホストの割り当て先 ehost_crheader=ホストの作成 ehost_desc=ホストの説明 ehost_eheader=ホストの編集 ehost_fixedip=固定の IP アドレス ehost_hname=ホスト名 ehost_hwaddr=ハードウェア アドレス ehost_in=次の中 ehost_ingroup=グループ ehost_inshared=共有ネットワーク ehost_insubnet=サブネット ehost_nojavascr=ご使用のブラウザが javascript をサポートしていないと思われます。下のリストから正しい位置を選択する必要があります。 ehost_retgroup=グループ ehost_retshar=共有ネットワーク ehost_retsubn=サブネット ehost_return=ホスト リスト ehost_shared=共有ネットワーク $1 内 ehost_subnet=サブネット $1/$2 内 ehost_tabhdr=ホストの詳細 ehost_toplevel=トップレベル eopt_alltitle=すべてのネットワーク、ホストおよびグループ用 eopt_baddr=ブロードキャスト アドレス eopt_chost=クライアント ホスト名 eopt_cnum=数 eopt_custom=カスタム オプション eopt_cval=値 eopt_defrouters=デフォルト ルータ eopt_dnsserv=DNS サーバ eopt_domname=ドメイン名 eopt_fontserv=フォントサーバ eopt_grouptitle=$1 メンバー グループ用 eopt_header=クライアント オプション eopt_hosttitle=ホスト $1 用 eopt_logserv=ログ サーバ eopt_nbns=NetBIOS ネーム サーバ eopt_nbntype=NetBIOS ノード タイプ eopt_nbs=NetBIOS スコープ eopt_nisdom=NIS ドメイン eopt_nisserv=NIS サーバ eopt_ntpserv=NTP サーバ eopt_rdpath=root ディスク パス eopt_returngroup=ホスト グループ eopt_returnhost=ホスト eopt_returnindex=ネットワークとホストのリスト eopt_returnshsub=共有ネットワーク eopt_returnsub=サブネット eopt_smask=サブネット マスク eopt_snettitle=共有ネットワーク $1 用 eopt_statrouters=静的ルート eopt_subtitle=サブネット $1 用 eopt_swapserv=Swap サーバ eopt_tabhdr=クライアント オプション eopt_timeserv=Time サーバ eopt_xdmserv=XDM サーバ esh_crheader=共有ネットワークの作成 esh_desc=共有ネットワークの説明 esh_eheader=共有ネットワークの編集 esh_groups=この共有ネットワークに直属するグループ esh_hosts=この共有ネットワークに直属するホスト esh_netname=ネットワーク名 esh_pools=共有ネットワークのアドレスプール esh_return=サブネット リスト esh_subn=この共有ネットワークのサブネット esh_tabhdr=共有ネットワークの詳細 esub_arange=アドレスの範囲 esub_crheader=サブネットの作成 esub_dbooptpq=動的 BOOTP ですか? esub_desc=サブネットの説明 esub_edheader=サブネットの編集 esub_groups=このサブネットに直属するグループ esub_hosts=このサブネットに直属するホスト esub_naddr=ネットワーク アドレス esub_nmask=ネットマスク esub_none=なし esub_pool=プール $1 esub_pooladd=アドレス プールの追加 esub_poolnone=定義されたアドレス プールはありません esub_pools=サブネットのアドレス プール esub_retshar=共有ネットワーク esub_return=サブネット リスト esub_shnet=共有ネットワーク esub_tabhdr=サブネットの詳細 iface_desc=DHCPサーバは以下で選択されたネットワークに接続されたインターフェースにのみIPアドレスを割り当てる事ができます。定義されたサブネット用のネットワークインターフェースも含まれます。選択されなかった場合、DHCPサーバは自動的に選択します。 iface_listen=待ち受けインターフェース iface_title=ネットワークインターフェース index_1memb=1 メンバー index_234memb=$1 メンバー index_addhst=新規のホストを追加 index_addhstg=新規のホスト グループを追加 index_addnet=新規共有ネットワークを追加 index_addsub=新規のサブネットを追加 index_apply=実行中の DHCP サーバに現在の設定を適用するには、このボタンをクリックしてください。DHCP サーバを停止して再起動します。 index_buttapply=変更を適用 index_buttego=クライアント オプションを編集 index_buttiface=ネットワークインターフェースを編集する index_buttlal=アクティブ リースをリスト index_buttstart=サーバの起動 index_dhcpdnotfound=DHCP サーバ $1 はご使用のシステムに見つかりませんでした。インストールされていないか、DHCP モジュール設定 が不正です。 index_dhcpdver=DHCP サーバ$1 のバージョンが不正です。Webmin は ISC DHCPD バージョン 2 のみをサポートします。 index_dhcpdver2=DHCPサーバ$1のバージョンが不明です。Webminは ISC DHCPD の バージョン $2 及び $3 のみサポートしています。 index_ego=すべてのサブネット、共有ネットワーク、ホストおよびグループに適用する DHCP クライアント オプションを編集 index_gdom=$1 の グループ index_group=グループ: index_grplook2=編集するグループ名 index_grptoomany=グループの数が多すぎて表示できません index_hardware=ハードウェア アドレス index_hdisplay=ホストとグループを次の項目別に表示: index_horder0=割り当て index_horder1=ファイル構造 index_horder2=名前 index_horder3=ハードウェア アドレス index_horder4=IP アドレス index_hostgroup=ホスト/グループ index_hst=ホストとホスト グループ index_hstlook2=編集するホスト名 index_hsttoomany=ホスト数が多すぎて表示できません index_iface=DHCPサーバが起動時に待ち受けるネットワークインターフェースを設定してください index_lal=この DHCP サーバが動的に割り当てられた IP アドレス用に現在送出したリースのリストです。 index_match0=等しい index_match1=含む index_match2=当てはまる index_memb=$1 メンバー index_nameip=ホスト名 または IP アドレス index_ndisplay=ネットワークとサブネットを次の項目別に表示: index_net=ネットワーク index_netmask=ネットマスク index_nohst=定義されたホストまたはホスト グループがありません。 index_nomemb=非メンバー index_norder0=割り当て index_norder1=ファイル構造 index_norder2=ホスト名/IP アドレス index_nosubdef=定義されたサブネットまたは共有ネットワークがありません。 index_parent=親 index_return=インデックス index_shatoomany=共有ネットワークの数が多すぎて表示できません index_start=現在の設定を使用してシステムの DHCP サーバを起動するには、このボタンをクリックしてください。 index_subtitle=サブネットと共有ネットワーク index_subtoomany=サブネットの数が多すぎて表示できません index_title=DHCP サーバ index_togroup=グループ index_toshared=ネットワーク index_tosubnet=サブネット index_version=ISC DHCPd バージョン $1 listl_active=アクティブ listl_all=アクティブおよび期限切れのリースをすべて表示 listl_delete=削除するには上のリストでリースの IP アドレスをクリックしてください。 listl_end=終了日時 listl_ether=イーサネット listl_header=DHCP リース listl_host=ホスト名 listl_ipaddr=IP アドレス listl_lfnotcont=DHCPd リース ファイル$1 は $2 リースを含んでいません。 listl_lfnotcont2=DHCPd リースファイル $1 に現在アクティブなリースが含まれていません listl_lfnotexist=DHCPd リース ファイル$1 がありません。 listl_network=ネットワーク $1/$2 において listl_return=ネットワークとホストのリスト listl_start=起動時間 log_apply=変更を適用しました log_create_group=$1 ホストのグループを作成しました log_create_host=ホスト $1 を作成しました log_create_shared=共有ネットワーク $1 を作成しました log_create_subnet=サブネット $1 を作成しました log_delete_group=$1 ホストのグループを削除しました log_delete_host=ホスト $1 を削除しました log_delete_lease=$1 のリースを削除しました log_delete_shared=共有ネットワーク $1 を削除しました log_delete_subnet=サブネット $1 を削除しました log_modify_group=$1 ホストのグループを変更しました log_modify_host=ホスト $1 を変更しました log_modify_shared=共有ネットワーク $1 を変更しました log_modify_subnet=サブネット $1 を変更しました log_options_group=$1 ホストのグループのオプションを変更しました log_options_host=ホスト $1 のオプションを変更しました log_options_shared=共有ネットワーク $1 のオプションを変更しました log_options_subnet=サブネット $1 のオプションを変更しました log_start=DHCP サーバの起動 lookup_egroup=その名前のグループまたはドメイン名 $1 は存在しません lookup_egroupname=グループ名またはドメイン名が入力されていません lookup_ehost=その名前のホスト、 IPアドレスまたはMACアドレス $1 は存在しません lookup_ehostname=ホスト名、IPアドレスまたはMACアドレスが入力されていません lookup_eshared=$1 という共有ネットワークは存在しません lookup_esharedname=共有ネットワーク名が入力されてません lookup_esubnet=アドレスのサブネットまたは アドレス/ネットマスク $1 は存在しません lookup_esubnetname=サブネットアドレスまたは アドレス/ネットマスクが入力されてません none=なし plib_adhoc=アドホック plib_allow=許可する plib_auth_global=サーバは全てのサブネットに対し権威を持ちますか? plib_auth_shared-network=サーバはこの共有ネットワークに対し権威をもちますか? plib_auth_subnet=サーバはこのサブネットに対し権威をもちますか? plib_babbr=ブロードキャスト アドレス plib_bfname=ブート ファイル名 plib_bfserv=Boot ファイル サーバ plib_chname=クライアント ホスト名 plib_copt=クライアント オプション plib_ddnsdom=動的 DNS ドメイン名 plib_ddnshost=動的 DNS ホスト名 plib_ddnshost_def=クライアント名 plib_ddnsrevdom=動的 DNS 逆引きドメイン plib_ddnsup=動的DNS を有効にしますか? plib_ddnsupstyle=ダイナミックDNSの更新形式 plib_deflt=デフォルト リース時間 plib_defrouters=デフォルト ルータ plib_deny=拒否する plib_dnsserv=DNS サーバ plib_domname=ドメイン名 plib_eexpr=DHCP設定のこのセクションはWebminで安全に編集できないexpressionディレクティブ $1を含んでいます。 plib_fontserv=フォントサーバ plib_forever=永久 plib_ignore=無視する plib_interim=暫定的な plib_invaliddom='$1' は無効なドメイン名です plib_invalidlt=は無効なリース時間です plib_invalidsn=は無効なサーバ名です plib_lebc=BOOTP クライアントのリースの終了 plib_leformat=リースの終了時間は W YYYY/MM/DD HH:MM:SS の形式にする必要があります plib_llbc=BOOTP クライアントのリース長 plib_logserv=ログ サーバ plib_maxlt=最大リース時間 plib_nbns=NetBIOS ネーム サーバ plib_nbntype=NetBIOS ノード タイプ plib_nbscope=NetBIOS スコープ plib_never=なし plib_nisdom=NIS ドメイン plib_nisserv=NIS サーバ plib_none=無し plib_ntpserv=NTP サーバ plib_rdpath=root ディスク パス plib_servname=サーバ名 plib_snmask=サブネット マスク plib_statrouters=静的ルート plib_swapserv=Swap サーバ plib_thisserv=このサーバ plib_timeserv=Time サーバ plib_unclients=未確認クライアントを許可しますか? plib_xdmserv=XDM サーバ pool_allow=許可するクライアント pool_create=アドレス プールを作成しました pool_deny=拒否するクライアント pool_edit=アドレス プールの編集 pool_header=アドレス プール オプション pool_return=サブネット restart_errmsg1=dhcpd を再起動できませんでした。 restart_errmsg2=処理に信号を送れませんでした secs=秒 sgroup_echanged=設定ファイルの内容が変更されています。再試行してください。 sgroup_faildel=グループを削除できませんでした sgroup_failsave=グループを保存できませんでした sgroup_invassign=グループが不正なセクションに割り当てられています shost_faildel=ホストを削除できませんでした shost_failsave=ホストを保存できませんでした shost_invalidaddr='$1' は無効なホスト名または IP アドレスを含んでいます shost_invalidhn=は無効なホスト名です shost_invalidhwa='$1' は無効な $2 アドレスです shost_invassign=ホストが不正なセクションに割り当てられています sopt_failsave=クライアント オプションを保存できませんでした sopt_invalidint=は整数ではありません sopt_invalidip='$1' は無効な IP アドレスです sopt_invalidipp=は有効な IP アドレスの組み合わせ (たとえば 1.2.3.4,5.6.7.8) ではありません sshared_faildel=共有ネットワークを削除できませんでした sshared_failsave=共有ネットワークの保存に失敗しました sshared_invalidsname=共有ネットワーク名がないか無効です。 sshared_nosubnet=共有ネットワーク '$1' はサブネットを含んでいません。 ssub_faildel=サブネットを削除できません ssub_failsave=サブネットを保存できませんでした ssub_invalidipr=は無効な IP アドレスです ssub_invalidnmask=は無効なネットマスクです ssub_invalidsubaddr=は無効なサブネット アドレスです ssub_nosubnet=共有ネットワーク '$1' はサブネットを含んでいません。 start_failstart=dhcpd を起動できませんでした dhcpd/lang/ko_KR.UTF-80100664000567100000120000003007010655706244014307 0ustar jcameronwheelindex_title=DHCP 辞獄 index_dhcpdnotfound=獣什奴拭 DHCP 辞獄 $1戚(亜) 蒸柔艦陥. 竺帖鞠嬢 赤走 省暗蟹 DHCP 乞汲 姥失戚 舛溌馬走 省聖 呪 赤柔艦陥. index_return=昔畿什 index_dhcpdver=DHCP 辞獄 $1税 獄穿戚 臣郊牽走 省柔艦陥. Webmin拭辞澗 ISC DHCPD 獄穿 2幻 走据杯艦陥. index_subtitle=辞崎掛 貢 因政 革闘趨滴 index_nosubdef=舛税吉 辞崎掛 貢 因政 革闘趨滴亜 蒸柔艦陥. index_addsub=歯 辞崎掛 蓄亜 index_addnet=歯 因政 革闘趨滴 蓄亜 index_nomemb=姥失据 蒸製 index_1memb=姥失据 1誤 index_234memb=姥失据 $1誤 index_memb=姥失据 $1誤 index_hst=硲什闘 貢 硲什闘 益血 index_nohst=舛税吉 硲什闘蟹 益血戚 蒸柔艦陥. index_hostgroup=硲什闘/益血 index_parent=雌是 index_hardware=馬球裾嬢 爽社 index_group=益血: index_nameip=硲什闘 戚硯 暁澗 IP index_net=革闘趨滴 index_netmask=掛原什滴 index_addhst=歯 硲什闘 蓄亜 index_addhstg=歯 硲什闘 益血 蓄亜 index_buttego=適虞戚情闘 辛芝 畷増 index_ego=乞窮 辞崎掛, 因政 革闘趨滴, 硲什闘 貢 益血拭 旋遂鞠澗 DHCP 適虞戚情闘 辛芝 畷増 index_buttlal=醗失 績企 蟹伸 index_lal=戚 DHCP 辞獄拭辞 薄仙 疑旋 拝雁 IP 爽社遂生稽 降楳馬澗 績企 蟹伸 index_buttapply=痕井 鎧遂 旋遂 index_apply=戚 獄動聖 刊牽檎 叔楳 掻昔 DHCP 辞獄亜 舛走鞠醸陥亜 陥獣 獣拙鞠檎辞 薄仙 姥失戚 旋遂桔艦陥. index_buttstart=辞獄 獣拙 index_start=薄仙 姥失生稽 獣什奴税 DHCP 辞獄研 獣拙馬形檎 戚 獄動聖 刊牽淑獣神. index_hdisplay=硲什闘 貢 益血 妊獣 奄層: index_horder0=拝雁 index_horder1=督析 姥繕 index_horder2=戚硯 index_horder3=馬球裾嬢 爽社 index_horder4=IP 爽社 index_togroup=益血 index_tosubnet=辞崎掛 index_toshared=革闘趨滴 index_ndisplay=掛 貢 辞崎掛 妊獣 奄層: index_norder0=拝雁 index_norder1=督析 姥繕 index_norder2=戚硯/IP 爽社 butt_save=煽舌 butt_eco=適虞戚情闘 辛芝 畷増 butt_vco=適虞戚情闘 辛芝 左奄 butt_del=肢薦 butt_create=拙失 esub_crheader=辞崎掛 拙失 esub_edheader=辞崎掛 畷増 esub_tabhdr=辞崎掛 室採 舛左 esub_naddr=革闘趨滴 爽社 esub_nmask=掛原什滴 esub_arange=爽社 骨是 esub_dbooptpq=疑旋 BOOTP脊艦猿? esub_shnet=因政 革闘趨滴 esub_hosts=薄仙 辞崎掛税 硲什闘 esub_groups=薄仙 辞崎掛税 益血 esub_pools=辞崎掛税 爽社 舘走 esub_pool=爽社 舘走 $1 esub_poolnone=舛税吉 爽社 舘走亜 蒸柔艦陥 esub_pooladd=爽社 舘走 蓄亜 esub_none=蒸製 esub_return=辞崎掛 鯉系 esub_retshar=因政 革闘趨滴 esh_crheader=因政 革闘趨滴 拙失 esh_eheader=因政 革闘趨滴 畷増 esh_tabhdr=因政 革闘趨滴 室採 舛左 esh_netname=革闘趨滴 戚硯 esh_hosts=薄仙 因政 革闘趨滴税 硲什闘 esh_groups=薄仙 因政 革闘趨滴税 益血 esh_subn=因政 革闘趨滴税 辞崎掛 esh_return=辞崎掛 鯉系 ehost_crheader=硲什闘 拙失 ehost_eheader=硲什闘 畷増 ehost_tabhdr=硲什闘 室採 舛左 ehost_hname=硲什闘 戚硯 ehost_nojavascr=薄 崎虞酔煽澗 切郊什滴験闘研 走据馬走 省澗牛 杯艦陥.焼掘 鯉系拭辞 旋箭廃 是帖研 識澱背醤 杯艦陥. ehost_assign=硲什闘 拝雁 企雌 ehost_toplevel=置雌是 ehost_inshared=因政 革闘趨滴 ehost_insubnet=辞崎掛 ehost_ingroup=益血 ehost_hwaddr=馬球裾嬢 爽社 ehost_fixedip=壱舛 IP 爽社 ehost_subnet=辞崎掛 $1/$2 ehost_shared=因政 革闘趨滴 $1 ehost_in=是帖 ehost_return=硲什闘 鯉系 ehost_retgroup=益血 ehost_retsubn=辞崎掛 ehost_retshar=因政 革闘趨滴 egroup_crheader=硲什闘 益血 拙失 egroup_eheader=硲什闘 益血 畷増 egroup_tblhdr=益血 室採 舛左 egroup_assign=益血 拝雁 企雌 egroup_hosts=戚 益血拭 赤澗 硲什闘 egroup_nchoice=適虞戚情闘 硲什闘 戚硯生稽 紫遂杯艦猿? egroup_return=硲什闘 鯉系 egroup_retsubn=辞崎掛 egroup_retshar=因政 革闘趨滴 default=奄沙葵 secs=段 none=蒸製 listl_header=DHCP 績企 listl_lfnotexist=DHCPd 績企 督析 $1戚(亜) 蒸柔艦陥. listl_lfnotcont=DHCPd 績企 督析 $1拭 $2 績企亜 蒸柔艦陥. listl_active=醗失 listl_ipaddr=IP 爽社 listl_ether=戚希掛 listl_host=硲什闘 戚硯 listl_start=獣拙 劾促 listl_end=魁 劾促 listl_return=革闘趨滴 貢 硲什闘 鯉系 listl_all=幻戟 奄娃戚 害紹暗蟹 魁貝 績企 蟹伸 listl_delete=是 鯉系拭辞 績企 IP 爽社研 刊牽檎 背雁 績企 IP 爽社亜 肢薦桔艦陥. restart_errmsg1=dhcpd研 陥獣 獣拙馬走 公梅柔艦陥 restart_errmsg2=重硲研 左鎧走 公梅柔艦陥 start_failstart=dhcpd研 獣拙馬走 公梅柔艦陥 sgroup_faildel=益血聖 肢薦馬走 公梅柔艦陥 sgroup_failsave=益血聖 煽舌馬走 公梅柔艦陥 sgroup_invassign=益血戚 設公吉 悉芝拭 拝雁鞠醸柔艦陥 sgroup_echanged=姥失 督析 鎧遂戚 痕井鞠醸柔艦陥. 陥獣 獣亀馬淑獣神. shost_faildel=硲什闘研 肢薦馬走 公梅柔艦陥 shost_failsave=硲什闘研 煽舌馬走 公梅柔艦陥 shost_invalidhn=精(澗) 政反廃 硲什闘 戚硯戚 焼鑑艦陥 shost_invalidhwa='$1'精(澗) 政反廃 $2 爽社亜 焼鑑艦陥 shost_invalidaddr='$1'拭 設公吉 硲什闘 戚硯戚蟹 IP 爽社亜 赤柔艦陥 shost_invassign=硲什闘亜 設公吉 悉芝拭 拝雁鞠醸柔艦陥 sopt_failsave=適虞戚情闘 辛芝聖 煽舌馬走 公梅柔艦陥 sopt_invalidip=精(澗) 政反廃 IP 爽社亜 焼鑑艦陥 sopt_invalidint=精(澗) 舛呪亜 焼鑑艦陥 sopt_invalidipp=精(澗) 政反廃 IP 爽社 瞬(森: 1.2.3.4, 5.6.7.8)戚 焼鑑艦陥 sshared_faildel=因政 革闘趨滴研 肢薦馬走 公梅柔艦陥 sshared_failsave=因政 革闘趨滴研 煽舌馬走 公梅柔艦陥 sshared_invalidsname=蒸暗蟹 設公吉 因政 革闘趨滴 戚硯脊艦陥. sshared_nosubnet=因政 革闘趨滴 '$1'拭 辞崎掛戚 匂敗鞠嬢 赤走 省柔艦陥. ssub_faildel=辞崎掛聖 肢薦馬走 公梅柔艦陥 ssub_failsave=辞崎掛聖 煽舌馬走 公梅柔艦陥 ssub_invalidsubaddr=精(澗) 政反廃 辞崎掛 爽社亜 焼鑑艦陥 ssub_invalidnmask=精(澗) 政反廃 掛原什滴亜 焼鑑艦陥 ssub_invalidipr=精(澗) 政反廃 骨是税 IP 爽社亜 焼鑑艦陥 ssub_nosubnet=因政 革闘趨滴 '$1'拭 辞崎掛戚 匂敗鞠嬢 赤走 省柔艦陥. plib_deflt=奄沙 績企 獣娃 plib_bfname=採闘 督析 戚硯 plib_maxlt=置企 績企 獣娃 plib_bfserv=採闘 督析 辞獄 plib_thisserv=薄仙 辞獄 plib_servname=辞獄 戚硯 plib_llbc=BOOTP 適虞戚情闘税 績企 奄娃 plib_forever=域紗 plib_lebc=BOOTP 適虞戚情闘税 績企 曽戟 plib_never=照敗 plib_invalidlt=精(澗) 政反廃 績企 獣娃戚 焼鑑艦陥 plib_invalidsn=精(澗) 政反廃 辞獄 戚硯戚 焼鑑艦陥 plib_invaliddom='$1'精(澗) 政反廃 亀五昔 戚硯戚 焼鑑艦陥 plib_leformat=績企 曽戟 劾促税 莫縦精 W YYYY/MM/DD HH:MM:SS食醤 杯艦陥 plib_copt=適虞戚情闘 辛芝 plib_chname=適虞戚情闘 硲什闘 戚硯 plib_defrouters=奄沙 虞酔斗 plib_snmask=辞崎掛 原什滴 plib_babbr=崎稽球蝶什闘 爽社 plib_domname=亀五昔 戚硯 plib_dnsserv=DNS 辞獄 plib_timeserv=獣娃 辞獄 plib_logserv=稽益 辞獄 plib_swapserv=什尋 辞獄 plib_rdpath=欠闘 巨什滴 井稽 plib_nisdom=NIS 亀五昔 plib_nisserv=NIS 辞獄 plib_fontserv=越加 辞獄 plib_xdmserv=XDM 辞獄 plib_statrouters=舛旋 井稽 plib_ntpserv=NTP 辞獄 plib_nbns=NetBIOS 戚硯 辞獄 plib_nbscope=NetBIOS 骨是 plib_nbntype=NetBIOS 葛球 政莫 plib_ddnsdom=疑旋 DNS 亀五昔 戚硯 plib_ddnsrevdom=疑旋 DNS 蝕 亀五昔 plib_ddnsup=疑旋 DNS 奄管戚 竺舛鞠嬢 赤柔艦猿? plib_ddnshost=疑旋 DNS 硲什闘 戚硯 plib_ddnshost_def=適虞戚情闘拭辞 eopt_header=適虞戚情闘 辛芝 eopt_subtitle=辞崎掛 $1 eopt_returnsub=辞崎掛 eopt_returnshsub=因政 革闘趨滴 eopt_snettitle=因政 革闘趨滴 $1 eopt_hosttitle=硲什闘 $1 eopt_returnhost=硲什闘 eopt_returngroup=硲什闘 益血 eopt_grouptitle=$1 姥失据 益血 eopt_alltitle=乞窮 革闘趨滴, 硲什闘 貢 益血 eopt_returnindex=革闘趨滴 貢 硲什闘 鯉系 eopt_tabhdr=適虞戚情闘 辛芝 eopt_chost=適虞戚情闘 硲什闘 戚硯 eopt_defrouters=奄沙 虞酔斗 eopt_smask=辞崎掛 原什滴 eopt_baddr=崎稽球蝶什闘 爽社 eopt_domname=亀五昔 戚硯 eopt_dnsserv=DNS 辞獄 eopt_timeserv=獣娃 辞獄 eopt_logserv=稽益 辞獄 eopt_swapserv=什尋 辞獄 eopt_rdpath=欠闘 巨什滴 井稽 eopt_nisdom=NIS 亀五昔 eopt_nisserv=NIS 辞獄 eopt_fontserv=越加 辞獄 eopt_xdmserv=XDM 辞獄 eopt_statrouters=舛旋 井稽 eopt_ntpserv=NTP 辞獄 eopt_nbns=NetBIOS 戚硯 辞獄 eopt_nbs=NetBIOS 骨是 eopt_nbntype=NetBIOS 葛球 政莫 eopt_custom=紫遂切 舛税 辛芝 eopt_cnum=腰硲 eopt_cval=葵 log_apply=痕井 鎧遂 旋遂喫 log_start=DHCP 辞獄 獣拙喫 log_create_subnet=辞崎掛 $1 拙失喫 log_delete_subnet=辞崎掛 $1 肢薦喫 log_modify_subnet=辞崎掛 $1 呪舛喫 log_options_subnet=辞崎掛 $1税 辛芝 呪舛喫 log_create_shared=因政 革闘趨滴 $1 拙失喫 log_delete_shared=因政 革闘趨滴 $1 肢薦喫 log_modify_shared=因政 革闘趨滴 $1 呪舛喫 log_options_shared=因政 革闘趨滴 $1税 辛芝 呪舛喫 log_create_host=硲什闘 $1 拙失喫 log_delete_host=硲什闘 $1 肢薦喫 log_modify_host=硲什闘 $1 呪舛喫 log_options_host=硲什闘 $1税 辛芝 呪舛喫 log_create_group=$1 硲什闘 益血 拙失喫 log_delete_group=$1 硲什闘 益血 肢薦喫 log_modify_group=$1 硲什闘 益血 呪舛喫 log_options_group=$1 硲什闘 益血税 辛芝 呪舛喫 log_delete_lease=$1税 績企 肢薦喫 pool_edit=爽社 舘走 畷増 pool_create=拙失吉 爽社 舘走 pool_header=爽社 舘走 辛芝 pool_allow=買遂拝 適虞戚情闘 pool_deny=暗採拝 適虞戚情闘 pool_return=辞崎掛 cdel_header=井壱 cdel_shared1=因政 革闘趨滴 cdel_shared2=因政 革闘趨滴 cdel_subnet1=辞崎掛 cdel_subnet2=辞崎掛 cdel_subnet=辞崎掛 cdel_subnets=辞崎掛 cdel_group1=益血 cdel_group2=益血 cdel_group=益血 cdel_groups=益血 cdel_host=硲什闘 cdel_hosts=硲什闘 cdel_txt=$1 '$2'聖(研) 肢薦馬檎 背雁 鎧遂亀 敗臆 肢薦桔艦陥: cdel_confirm=戚 $1聖(研) 肢薦馬獣畏柔艦猿? cdel_eunknown=硝 呪 蒸澗 神嫌 cdel_return=硲什闘 貢 革闘趨滴 鯉系 eacl_aviol=衝室什 薦嬢 是鋼 eacl_np=陥製拭 企廃 映廃戚 蒸柔艦陥 eacl_pdh=硲什闘 肢薦 eacl_pih=歯 硲什闘 蓄亜 eacl_puh=硲什闘 畷増 eacl_psh=硲什闘 識澱 eacl_pdg=益血 肢薦 eacl_pig=歯 益血 蓄亜 eacl_pug=益血 畷増 eacl_psg=益血 識澱 eacl_pds=辞崎掛 肢薦 eacl_pis=歯 辞崎掛 蓄亜 eacl_pus=辞崎掛 畷増 eacl_pss=辞崎掛 識澱 eacl_pdn=因政 革闘趨滴 肢薦 eacl_pin=歯 因政 革闘趨滴 蓄亜 eacl_pun=因政 革闘趨滴 畷増 eacl_psn=因政 革闘趨滴 識澱 eacl_uniq=差薦 拙失 eacl_pdl=績企 肢薦 eacl_psl=績企 左奄 eacl_pglob=越稽忽 辛芝 畷増 eacl_papply=戚 辞搾什 仙獣拙 acl_apply=痕井 鎧遂聖 旋遂拝 呪 赤柔艦猿? acl_r_leases=績企研 瑳 呪 赤柔艦猿? acl_w_leases=績企研 薦暗拝 呪 赤柔艦猿? acl_global=越稽忽 辛芝聖 畷増拝 呪 赤柔艦猿? acl_uniq_hst=壱政廃 硲什闘 戚硯脊艦猿? acl_uniq_sub=壱政廃 辞崎掛 IP 爽社脊艦猿? acl_uniq_sha=壱政廃 因政 掛 戚硯脊艦猿? acl_seclevel=紫遂拝 左照 呪層: acl_hide=羨悦 災亜管廃 鯵端研 需演艦猿? acl_ahst=羨悦拝 硲什闘: acl_agrp=羨悦拝 益血: acl_asub=羨悦拝 辞崎掛: acl_asha=羨悦拝 因政 掛: acl_per_hst_acls=硲什闘 舘是 ACL 奄管聖 竺舛杯艦猿? acl_per_sub_acls=辞崎掛 舘是 ACL 奄管聖 竺舛杯艦猿? acl_per_obj_acls=鯵端 舘是 ACL... acl_na=買遂 照喫 acl_r1=石奄 穿遂 acl_rw=石奄/床奄 acl_c=拙失 acl_r=石奄 acl_w=床奄 acl_err=ACL 鯉系 煽舌 神嫌 acl_ernow=越稽忽 ACL拭辞 析採 鯵端 政莫拭 企廃 床奄 羨悦聖 亜管馬惟 馬形檎 戚 鯵端 政莫拭 企廃 石奄 羨悦亀 亜管馬惟 背醤 杯艦陥. acl_normal=左搭 acl_paranoic=paranoic dhcpd/lang/sk0100644000567100000120000001217110655706244013115 0ustar jcameronwheelacl_agrp=Prstup k skupinm: acl_ahst=Prstup k hostiteom: acl_apply=Me uskutoni zmeny? acl_asha=Prstup k zdielanm sieam: acl_asub=Prstup k subnetom: acl_c=vytvori acl_err=Uloenie prstupovho zoznamu zlyhalo acl_global=Me zmeni globlne nastavenia? acl_hide=Skry nedostupn poloky? acl_na=nem oprvnenie acl_normal=normlny acl_paranoic=paranoidn acl_r=ta acl_r1=len na tanie acl_r_leases=Me zobrazi prenajat adresy? acl_rw=ta/zapisova acl_w=zapisova acl_w_leases=Me odstrni prenajat adresy? butt_create=Vytvori butt_del=Zmaza butt_leases=Zobrazi prenajat adresy butt_save=Uloi cdel_eunknown=Neznma chyba cdel_group=skupina cdel_group1=skupina cdel_group2=skupina cdel_groups=skupiny cdel_header=Upozornenie cdel_host=hostite cdel_hosts=hostitelia cdel_shared1=zdielan sie cdel_shared2=zdielan sie cdel_subnet=subnet cdel_subnet1=subnet cdel_subnet2=subnet cdel_subnets=subnety default=tandardne eacl_np=Nemte oprvnenie na eacl_papply=retartovanie tejto sluby eacl_pdg=zmaza skupinu eacl_pdh=vymazanie hostitea eacl_pdl=vymazanie prenajatch adries eacl_pdn=vymazanie zdielanej siete eacl_pds=zmaza subnet eacl_pglob=upravenie globlnych nastaven eacl_pig=prida nov skupinu eacl_pih=pridanie novch hostiteov eacl_pin=pridanie novej zdielanej siete eacl_pis=prida nov subnet eacl_psg=vber skupiny eacl_psh=vber hostitea eacl_psl=prezeranie prenajatch adries eacl_psn=vber zdielanej siete eacl_pss=vber subnetu eacl_pug=upravi skupinu eacl_puh=zmenu hostitea eacl_pun=zmenu zdielanej siete eacl_pus=upravi subnet eacl_uniq=vytvorenie dupliktov egroup_desc=Popis skupiny egroup_retshar=zdielan sie egroup_retsubn=subnet egroup_return=zoznam hostiteov egroup_tblhdr=Detaily skupiny ehost_crheader=Vytvori hostitea ehost_desc=Popis hostitea ehost_eheader=Upravi hostitea ehost_fixedip=Pevn IP adresa ehost_hname=Meno hostitea ehost_hwaddr=Hardvrov adresa ehost_in=v ehost_ingroup=Skupina ehost_inshared=Zdielan sie ehost_insubnet=Subnet ehost_retgroup=skupina ehost_retshar=Zdielan sie ehost_retsubn=subnet ehost_return=zoznam hostiteov ehost_tabhdr=Detaily hostitea eopt_baddr=Broadcastov adresa eopt_chost=Meno clienta eopt_cnum=slo eopt_cval=Hodnota eopt_defrouters=tandardn routre eopt_dnsserv=DNS servre eopt_dnum=slo eopt_domname=Domnov meno eopt_dtype=Typ eopt_fontserv=Server fontov eopt_logserv=Server zznamov eopt_nisdom=NIS domna eopt_nisserv=NIS servre eopt_ntpserv=NTP servre eopt_returngroup=skupina hostiteov eopt_returnhost=hostite eopt_returnshsub=zdielan sie eopt_returnsub=subnet eopt_smask=Subnet maska eopt_swapserv=Swap server eopt_timeserv=asov server eopt_xdmserv=XDM servre esh_crheader=Vytvori zdielan sie esh_desc=Popis zdielanej siete esh_eheader=Upravi zdielan sie esh_netname=Sieov meno esh_return=zoznam subnetov esh_tabhdr=Detaily zdielanej siete esub_crheader=Vytvori subnet esub_desc=Popis subnetu esub_edheader=Upravi subnet esub_naddr=Sieov adresa esub_nmask=Sieov maska esub_retshar=Zdielan sie esub_return=zoznam subnetov esub_shnet=Zdielan sie iface_listen=Nava na rozhran iface_title=Sieov rozhranie index_addhst=Prida novho hostitea. index_addhstg=Prida nov skupinu hostiteov. index_addnet=Prida nov zdielan sie index_addsub=Prida nov subnet. index_addzone=Prida nov DNS znu. index_buttapply=Uskutoni zmeny index_buttekey=Upravi TSIG ke index_buttstart=Spusti server index_desc=Popis index_dhcpd=ISC DHCPd index_group=Skupina: index_hardware=Hardvrov adresa index_horder2=Meno index_horder3=Hardvrov adresa index_horder4=IP adresa index_match1=obsahuje index_net=Sie index_netmask=Sieov maska index_stop=Zastavi server index_title=DHCP Server index_togroup=Skupina index_toshared=Sie index_tosubnet=Subnet index_zone=Zna keys_alg=Algoritmus keys_create=Vytvori TSIG ke keys_edit=Upravi TSIG k keys_id=ID ka listl_ether=Ethernet listl_header=DHCP poskytnut adresy listl_host=Hostite listl_ipaddr=IP adresa log_start=Spusten DHCP server log_stop=Zastaven DHCP server plib_dnsserv=DNS servre plib_domname=Domnov meno plib_fontserv=Font servre plib_logserv=Servre zznamov plib_nisdom=NIS domna plib_nisserv=NIS servre plib_ntpserv=NTP servre plib_swapserv=Swap server plib_thisserv=Tento server plib_timeserv=asov server plib_xdmserv=XDM servre pool_return=subnet ssub_faildel=Zmazanie subnetu zlyhalo ssub_failsave=Uloenie subnetu zlyhalo ssub_invalidfopeer=nie je platn nhradn server ssub_invalidipr=nie je platn IP rozsah ssub_invalidnmask=nie je platn sieov maska ssub_invalidsubaddr=nie je platn subnet adresa ssub_nosubnet=Zdiean sie '$1' neobsahuje iadnu subnet. start_failstart=tart dhcpd zlyhal stop_ekill=Nebe! stop_err=Ukonenie DHCP servera zlyhalo text_ecannot=Nemte oprvnenie upravi konfiguran sbor text_editor=Textov editor text_return=hlavn menu text_title=dhcpd.conf text_undo=sp zone_crheader=Vytvori znu zone_desc=Popis zny (nepovinn) zone_eheader=Upravi znu zone_faildel=Zmazanie zny zlyhalo zone_failsave=Uloenie zny zlyhalo zone_key=DNS zny zone_name=Meno zny zone_primary=IP primrneho DNS zone_return=hlavn menu zone_tabhdr=Detaily zny zone_tsigkey=TSIG k dhcpd/lang/da0100644000567100000120000002006110655706244013061 0ustar jcameronwheelacl_agrp=Tilgå grupper: acl_ahst=Tilgå hosts: acl_apply=Kan anvende ændringer? acl_asha=Tilgå delte net acl_asub=Tilgå subnet: acl_c=opret acl_ernow=Hvis du vil aktivere skriveadgang i globale ACL'er for nogle objekttyper skal du også aktivere læseadgang for denne objekttype. acl_err=Fejl ved gmening af ACL liste acl_global=Kan redigere globale indstillinger? acl_hide=Gem utilgængelige objekter? acl_na=ikke tilladt acl_normal=normal acl_paranoic=paranoid acl_per_grp_acls=Aktiver pr-gruppe ACL'er? acl_per_hst_acls=Aktiver pr-host ACL'er? acl_per_obj_acls=Pr-objekt ACL'er.. acl_per_sha_acls=Aktiver pr-delt-net ACL'er? acl_per_sub_acls=Aktiver pr-subnet ACL'er? acl_r=læs acl_r1=læs kun acl_r_leases=Kan se leases? acl_rw=læs/skriv acl_seclevel=Bruge sikkerhedsniveau: acl_uniq_hst=Unikke hostnavne? acl_uniq_sha=Unikke delte-net navne? acl_uniq_sub=Unikke subnet IP adresser? acl_w=skriv acl_w_leases=Kan fjerne leases? butt_create=Opret butt_del=Slet butt_eco=Rediger klientindstillinger butt_leases=List leases butt_save=Gem butt_vco=Se klientindstillinger cdel_confirm=Vil du virkelig gerne slette denne $1 ? cdel_eunknown=Ukendt fejl cdel_group=gruppe cdel_group1=gruppe cdel_group2=gruppe cdel_groups=grupper cdel_header=Advarsel cdel_host=host cdel_hosts=host cdel_return=host og netværksliste cdel_shared1=delt netværk cdel_shared2=delt netværk cdel_subnet=subnet cdel_subnet1=subnet cdel_subnet2=subnet cdel_subnets=subnet cdel_txt=Sletter $1 '$2' sletter også dets indhold: default=Standard eacl_aviol=Brud på adgangskontrol eacl_np=Du har ikke tilladelse til eacl_papply=genstart denne service eacl_pdg=slet gruppe eacl_pdh=slet host eacl_pdl=Slet leases eacl_pdn=slet delt netværk eacl_pds=slet subnet eacl_pglob=rediger globale indstillinger eacl_pig=tilføj nye grupper eacl_pih=tilføj nye host eacl_pin=tilføj nye delte netværk eacl_pis=tilføj nye subnet eacl_psg=vælg gruppe eacl_psh=vælg host eacl_psl=Vis leases eacl_psn=Vælg delt netværk eacl_pss=Vælg subnet eacl_pug=Rediger gruppe eacl_puh=Rediger host eacl_pun=Rediger delt netværk eacl_pus=Rediger subnet eacl_uniq=Opret duplikater egroup_assign=Gruppe knyttet til egroup_crheader=Opret host gruppe egroup_desc=Gruppebeskrivelse egroup_eheader=Rediger hostgruppe egroup_hosts=Host' i denne gruppe egroup_nchoice=Brug navn som klient hostnavn? egroup_retshar=Delt netværk egroup_retsubn=subnet egroup_return=host liste egroup_tblhdr=Gruppedetaljer ehost_assign=Host knyttet til ehost_crheader=Opret host ehost_desc=Host beskrivelse ehost_eheader=Rediger host ehost_fixedip=Fast IP adresse ehost_hname=Host navn ehost_hwaddr=Hardware adresse ehost_in=i ehost_ingroup=Gruppe ehost_inshared=Delt netværk ehost_insubnet=Subnet ehost_nojavascr=Din browser ser ikke ud til at understøtte javascript. Nu skal du vælge den rette placering på listen nedenunder. ehost_retgroup=gruppe ehost_retshar=delt netværk ehost_retsubn=subnet ehost_return=host liste ehost_shared=I delt netværk $1 ehost_subnet=I subnet $1/$2 ehost_tabhdr=Host detaljer ehost_toplevel=Topniveau eopt_alltitle=For alle netværk, host' og grupper eopt_baddr=Broadcast adresse eopt_chost=Klient hostnavn eopt_cnum=Nummer eopt_custom=Brugerdefineret indstilling eopt_cval=Værdi eopt_def=Indstillingsdefinition eopt_defrouters=Standard routere eopt_dname=Indstillingsnavn eopt_dnsserv=DNS servere eopt_dnum=Nummer eopt_domname=Domænenavn eopt_dtype=Type eopt_fontserv=Fontservere eopt_grouptitle=For $1 medlemsgruppe eopt_header=Klientindstillinger eopt_hosttitle=For host $1 eopt_logserv=Log servere eopt_nbns=NetBIOS navneservere eopt_nbntype=NetBIOS node type eopt_nbs=NetBIOS scope eopt_nisdom=NIS domæne eopt_nisserv=NIS servere eopt_ntpserv=NTP servere eopt_rdpath=Rod disksti eopt_returngroup=host gruppe eopt_returnhost=host eopt_returnindex=netværk og host liste eopt_returnshsub=delt netværk eopt_returnsub=subnet eopt_slpaips=Kun disse IP'er? eopt_slps=SLP service scope eopt_slpsonly=Kun dette scope? eopt_smask=Subnet maske eopt_snettitle=For delt netværk $1 eopt_statrouters=Statiske router eopt_subtitle=For subnet $1 eopt_swapserv=Swap server eopt_tabhdr=Klientindstillinger eopt_timeserv=Tidsservere eopt_toffset=Tidsoffset eopt_xdmserv=XDM servere esh_crheader=Opret delt netværk esh_desc=Beskrivelse for delt netværk esh_eheader=Rediger delt netværk esh_groups=Grupper direkte i dette delte netværk esh_hosts=Host' direkte i dette delte netværk esh_netname=Netværksnavn esh_pools=Adressepools for delt netværk esh_return=subnet liste esh_subn=Subnet i dette delte netværk esh_tabhdr=Detaljer for delt netværk esub_arange=Adresseområde esub_crheader=Opret subnet esub_dbooptpq=Dynamisk BOOTP ? esub_desc=Subnet beskrivelse esub_edheader=Rediger subnet esub_groups=Grupper direkte i dette subnet esub_hosts=Host' direkte i dette subnet esub_naddr=Netværksadresse esub_nmask=Netmaske esub_none=Ingen esub_pool=Pool $1 esub_pooladd=Tilføj en adressepool. esub_poolnone=Ikke defineret nogen adressepools esub_pools=Adressepools for subnet esub_retshar=delt netværk esub_return=subnet liste esub_shnet=Delt netværk esub_tabhdr=Subnet detaljer iface_desc=DHCP serveren kan kun tildele IP adresser på netværk der er tilsluttet til et af interfacene valgt nedenfor. Netværksinterfacet for alle definerede subnet skal være inkluderet. Hvis intet er valgt, vil DHCP serveren forsøge at finde et automatisk. iface_listen=Lyt på interface iface_title=Netværksinterface index_1memb=1 medlem index_234memb=$1 medlemmer index_addhst=Tilføj en ny host. index_addhstg=Tilføj en ny gruppe. index_addnet=Tilføj et ny delt netværk. index_addsub=Tilføj et nyt subnet. index_addzone=Tilføj en ny DNS zone. index_apply=Klik på denne knap for at anvende den nuværende konfiguration, ved at starte og stoppe DHCP serveren. index_buttapply=Anvend ændringer index_buttego=Rediger klientindstillinger index_buttekey=Rediger TSIG-nøgle index_buttetext=Configgil index_buttiface=Rediger netværksinterface index_buttlal=List aktive leases index_buttstart=Start server index_desc=Beskrivelse index_dhcpd=ISC DHCPd index_dhcpdnotfound=DHCP serveren $1 kunne ikke findes på dit system. Måske er den ikke installeret, eller din DHCP modulkonfiguration er ukorrekt. index_dhcpdver2=DHCP serveren $1 ser ikke ud til at være den rette version. Webmin understøtter kun ISC DHCPD version $2 eller $3. index_ego=Rediger DHCP klientindstillinger der gælder for alle subnet, deltenetværk, hsots og grupper index_gdom=Gruppe for $1 index_group=Gruppe: index_grplook2=Rediger gruppen hvis navn index_grptoomany=Der er for mange grupper til at vise index_hardware=Hardware adresse index_hdisplay=Vis hosts og grupper ved: index_horder0=Tildeling index_horder1=Filstruktur index_horder2=Navn index_horder3=Hardware adresse index_horder4=IP adresse index_hostgroup=Host/Gruppe index_hst=Host og hostgrupper index_hstlook2=Rediger hosten hvis navn index_hsttoomany=Der er for mange hosts til at vise index_iface=Sæt netværksinterfaces som DHCP serveren lytter på når den er startet. index_key=Rediger TSIG-nøgler (brugt til at godkende opdateringer til DNS servere) index_lal=List leases der pt er tildelt af denne DHCP server for dynamisk tildelte IP adresser. index_match1=indeholder index_match2=matcher index_memb=$1 medlemmer index_nameip=Hostnavn eller IP index_ndisplay=Vis net og subnet ved: index_net=Netværk index_netmask=Netmaske index_nohst=Ingen hosts eller grupper er blevet definerede. index_nomemb=Ingen medlemmer index_norder0=Tildeling index_norder1=Filstruktur index_norder2=Navn/IP adresse index_nosubdef=Ingen subnets eller delte netværk er blevet definerede. index_nozones=Ingen DNS zoner er endnu definerede. index_return=indeks index_shalook2=Rediger det delte hvis netværk index_shatoomany=Der er for mange delte netværk til at vise dhcpd/config-debian-linux0100644000567100000120000000047610655706244015406 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/var/dhcp/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 start_cmd=/etc/init.d/dhcp start stop_cmd=/etc/init.d/dhcp stop restart_cmd=/etc/init.d/dhcp restart show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/edit_host.cgi0100755000567100000120000002431010655706244014303 0ustar jcameronwheel#!/usr/local/bin/perl # edit_host.cgi # Edit or create a host require './dhcpd-lib.pl'; require './params-lib.pl'; &ReadParse(); $conf = &get_config(); ($par, $host) = &get_branch('hst'); $hconf = $host->{'members'}; # check acls %access = &get_module_acl(); &error_setup("$text{'eacl_aviol'}"); if ($in{'new'} ) { &error("$text{'eacl_np'} $text{'eacl_pih'}") unless &can('c', \%access, $host) && &can('rw', \%access, $par); } else { &error("$text{'eacl_np'} $text{'eacl_psh'}") if !&can('r', \%access, $host); } # display if ($in{'uidx'} ne '') { local $s = $in{'sidx'} eq '' ? $conf->[$in{'uidx'}] : $conf->[$in{'sidx'}]->{'members'}->[$in{'uidx'}]; $desc = &text('ehost_subnet', $s->{'values'}->[0], $s->{'values'}->[2]); } elsif ($in{'sidx'} ne '') { local $s = $conf->[$in{'sidx'}]; $desc = &text('ehost_shared', $s->{'values'}->[0]); } &ui_print_header($desc, $in{'new'} ? $text{'ehost_crheader'} : $text{'ehost_eheader'}, ""); @shar = &find("shared-network", $conf); @subn = &find("subnet", $conf); @group = &find("group", $conf); $iu = 0; $is = 0; $ig = 0; foreach $g (@group) { $gm = 0; foreach $h (&find("host", $g->{'members'})) { $gm++; }; push(@group_desc, &group_name($gm, $g)); $group_desc[$#group_desc-1] =~ s/ / /g; $script3 .= "parent.options[$ig] = " ."new Option(\"$group_desc[$ig]\", $ig)\n" ."parent.options[$ig].value = " ."new String(\"$g->{'index'}\")\n" if &can('rw', \%access, $g); if ($in{'sidx'} eq '' && $in{'uidx'} eq '' && $in{'gidx'} eq $g->{'index'}) { $sel_parent = $ig; $currpar = "$g->{'index'}"; } $ig ++; } foreach $u (@subn) { push(@subn_desc, $u->{'values'}->[0]); $script2 .= "parent.options[$iu] = " ."new Option(\"$subn_desc[$iu]\", $iu)\n" ."parent.options[$iu].value = " ."new String(\"$u->{'index'}\")\n" if &can('rw', \%access, $u); if ($in{'sidx'} eq '' && $in{'uidx'} eq $u->{'index'} && $in{'gidx'} eq '') { $sel_parent = $iu; $currpar = "$u->{'index'}"; } foreach $g (&find("group", $u->{'members'})) { push(@group, $g); $gm = 0; foreach $h (&find("host", $g->{'members'})) { $gm ++; }; push(@group_desc, &group_name($gm, $g). " $text{'ehost_in'} $u->{'values'}->[0]"); $group_desc[$#group_desc-1] =~ s/ / /g; $subnet{$g} = $u->{'index'}; $script3 .= "parent.options[$ig] = " ."new Option(\"$group_desc[$ig]\", $ig)\n" ."parent.options[$ig].value = " ."new String(\"$u->{'index'},$g->{'index'}\")\n" if &can('rw', \%access, $g); if ($in{'sidx'} eq '' && $in{'uidx'} eq $u->{'index'} && $in{'gidx'} eq $g->{'index'}) { $sel_parent = $ig; $currpar = "$u->{'index'},$g->{'index'}"; } $ig ++; } $iu ++; } foreach $s (@shar) { push(@shar_desc, $s->{'values'}->[0]); $script1 .= "parent.options[$is] = " ."new Option(\"$shar_desc[$is]\", $is)\n" ."parent.options[$is].value = " ."new String(\"$s->{'index'}\")\n" if &can('rw', \%access, $s); if ($in{'sidx'} eq $s->{'index'} && $in{'uidx'} eq '' && $in{'gidx'} eq '') { $sel_parent = $is; $currpar = "$s->{'index'}"; } foreach $g (&find("group", $s->{'members'})) { push(@group, $g); $gm = 0; foreach $h (&find("host", $g->{'members'})) { $gm ++; }; push(@group_desc, &group_name($gm, $g). " $text{'ehost_in'} $s->{'values'}->[0]"); $group_desc[$#group_desc-1] =~ s/ / /g; $shared{$g} = $s->{'index'}; $script3 .= "parent.options[$ig] = " ."new Option(\"$group_desc[$ig]\", $ig)\n" ."parent.options[$ig].value = " ."new String(\"$s->{'index'},$g->{'index'}\")\n" if &can('rw', \%access, $g); if ($in{'sidx'} eq $s->{'index'} && $in{'uidx'} eq '' && $in{'gidx'} eq $g->{'index'}) { $sel_parent = $ig; $currpar = "$s->{'index'},$g->{'index'}"; } $ig ++; } foreach $u (&find("subnet", $s->{'members'})) { push(@subn, $u); push(@subn_desc, "$u->{'values'}->[0] $text{'ehost_in'} $s->{'values'}->[0]"); $shared{$u} = $s->{'index'}; $script2 .= "parent.options[$iu] = " ."new Option(\"$subn_desc[$iu]\", $iu)\n" ."parent.options[$iu].value = " ."new String(\"$s->{'index'},$u->{'index'}\")\n" if &can('rw', \%access, $u); if ($in{'sidx'} eq $s->{'index'} && $in{'uidx'} eq $u->{'index'} && $in{'gidx'} eq '') { $sel_parent = $iu; $currpar = "$s->{'index'},$u->{'index'}"; } foreach $g (&find("group", $u->{'members'})) { push(@group, $g); $gm = 0; foreach $h (&find("host", $g->{'members'})) { $gm ++; }; push(@group_desc, &group_name($gm, $g). " $text{'ehost_in'} $u->{'values'}->[0] ". "$text{'ehost_in'} $s->{'values'}->[0]"); $group_desc[$#group_desc-1] =~ s/ / /g; $shared{$g} = $s->{'index'}; $subnet{$g} = $u->{'index'}; $script3 .= "parent.options[$ig] = " ."new Option(\"$group_desc[$ig]\", $ig)\n" ."parent.options[$ig].value = " ."new String(\"$s->{'index'},$u->{'index'},$g->{'index'}\")\n" if &can('rw', \%access, $g); if ($in{'sidx'} eq $s->{'index'} && $in{'uidx'} eq $u->{'index'} && $in{'gidx'} eq $g->{'index'}) { $sel_parent = $ig; $currpar = "$s->{'index'},$u->{'index'},$g->{'index'}"; } $ig ++; } $iu ++; } $is ++; } print "
\n"; print "\n"; print "\n"; print "\n"; print "
$text{'ehost_tabhdr'}
\n"; print "\n"; printf "\n", &html_escape($host->{'comment'}); print "\n"; printf "\n", $host ? $host->{'values'}->[0] : ""; $assign = $in{'gidx'} ne "" ? "3" : $in{'uidx'} ne "" ? "2" : $in{'sidx'} ne "" ? "1" : "0"; if (!defined($in{'ret'})) { local @labels = ( $text{'ehost_toplevel'}, $text{'ehost_inshared'}, $text{'ehost_insubnet'}, $text{'ehost_ingroup'} ); print "\n"; print "\n"; } else { print "\n"; print "\n"; } $hard = $hconf ? &find("hardware", $hconf) : undef; print "\n"; print "\n", $hard ? $hard->{'values'}->[1] : ""; $fixed = $host ? &find("fixed-address", $hconf) : ""; print "\n", $fixed ? join(" ", grep { $_ ne "," } @{$fixed->{'values'}}) : ""; &display_params($hconf, "host"); print "
$text{'ehost_desc'}
$text{'ehost_hname'}"; print "\n" if ($in{'assign'}); print "\n"; print "\n"; print "\n"; } else { print "\n"; } print "\n"; print "
$text{'ehost_nojavascr'}
$text{'ehost_assign'}
\n"; if ($in{'assign'}) { $assign = $in{'assign'}; print "$labels[$assign]
$text{'ehost_hwaddr'}"; printf "
$text{'ehost_fixedip'} \n"; printf "
\n"; print "\n"; print "\n"; print "\n"; if (!$in{'new'}) { print "\n"; print "\n"; print "\n" if &can('rw', \%access, $host); print "\n"; print "\n" if &can('rw', \%access, $host, 1); print "
\n"; } else { print "\n"; print "\n"; } print "
\n"; print &script_fn() if (!defined($in{'ret'})); if ($in{'ret'} eq "group") { &ui_print_footer("edit_group.cgi?sidx=$in{'sidx'}&uidx=$in{'uidx'}&idx=$in{'gidx'}", $text{'ehost_retgroup'}); } elsif ($in{'ret'} eq "subnet") { &ui_print_footer("edit_subnet.cgi?sidx=$in{'sidx'}&idx=$in{'uidx'}", $text{'ehost_retsubn'}); } elsif ($in{'ret'} eq "shared") { &ui_print_footer("edit_shared.cgi?idx=$in{'sidx'}", $text{'ehost_retshar'}); } else { &ui_print_footer($ret, $text{'ehost_return'}); } sub script_fn { return < function setparent(sel) { var idx = document.forms[0].assign.selectedIndex; var v = document.forms[0].assign.options[idx].value; var vv = v.split(";"); var parent = document.forms[0].parent; parent.length = 0; if (v==1) { $script1 } if (v==2) { $script2 } if (v==3) { $script3 } if (parent.length > 0) { parent.options[sel].selected = true; } } setparent($sel_parent); EOF } dhcpd/save_shared.cgi0100755000567100000120000001434410655706244014613 0ustar jcameronwheel#!/usr/local/bin/perl # save_shared.cgi # Update, create or delete a shared network require './dhcpd-lib.pl'; require './params-lib.pl'; &ReadParse(); &lock_file($config{'dhcpd_conf'}); ($par, $sha, $indent) = &get_branch('sha'); $parconf = $par->{'members'}; # check acls %access = &get_module_acl(); &error_setup("$text{'eacl_aviol'}"); if ($in{'delete'}) { &error("$text{'eacl_np'} $text{'eacl_pdn'}") if !&can('rw', \%access, $sha, 1); } elsif ($in{'options'}) { &error("$text{'eacl_np'} $text{'eacl_psn'}") if !&can('r', \%access, $sha); } elsif ($in{'new'}) { &error("$text{'eacl_np'} $text{'eacl_pin'}") unless &can('c', \%access, $sha) && &can('rw', \%access, $par); # restrict duplicates if($access{'uniq_sha'}) { foreach $s (&find("shared-network", &get_config())) { &error("$text{'eacl_np'} $text{'eacl_uniq'}") if lc $s->{'values'}->[0] eq lc $in{'name'}; } } } else { &error("$text{'eacl_np'} $text{'eacl_pun'}") if !&can('rw', \%access, $sha); } # save if ($in{'options'}) { # Redirect to client options &redirect("edit_options.cgi?idx=$in{'idx'}"); exit; } else { if ($in{'delete'}) { $whatfailed = $text{'sshared_faildel'}; } else { $whatfailed = $text{'sshared_failsave'}; $in{'name'} =~ /^\S+$/ || &error($text{'sshared_invalidsname'}); $sha->{'values'} = [ $in{'name'} ]; $sha->{'comment'} = $in{'desc'}; } # Move hosts, groups and subnets into or out of this shared network @wasin = &find("host", $sha->{'members'}); foreach $hn (split(/\0/, $in{'hosts'})) { if ($hn =~ /(\d+),(\d+)/) { push(@nowin, $parconf->[$2]->{'members'}->[$1]); $nowpr{$parconf->[$2]->{'members'}->[$1]} = $parconf->[$2]; } elsif ($hn =~ /(\d+),/) { push(@nowin, $parconf->[$1]); $nowpr{$parconf->[$1]} = $par; } if ($nowin[$#nowin]->{'name'} ne "host") { &error($text{'sgroup_echanged'}); } } @wasgin = &find("group", $sha->{'members'}); foreach $gn (split(/\0/, $in{'groups'})) { if ($gn =~ /(\d+),(\d+)/) { push(@nowgin, $parconf->[$2]->{'members'}->[$1]); $nowgpr{$parconf->[$2]->{'members'}->[$1]} = $parconf->[$2]; } elsif ($gn =~ /(\d+),/) { push(@nowgin, $parconf->[$1]); $nowgpr{$parconf->[$1]} = $par; } if ($nowgin[$#nowgin]->{'name'} ne "group") { &error($text{'sgroup_echanged'}); } } @wasuin = &find("subnet", $sha->{'members'}); foreach $un (split(/\0/, $in{'subnets'})) { if ($un =~ /(\d+),(\d+)/) { push(@nowuin, $parconf->[$2]->{'members'}->[$1]); $nowupr{$parconf->[$2]->{'members'}->[$1]} = $parconf->[$2]; } elsif ($un =~ /(\d+),/) { push(@nowuin, $parconf->[$1]); $nowupr{$parconf->[$1]} = $par; } if ($nowuin[$#nowuin]->{'name'} ne "subnet") { &error($text{'sgroup_echanged'}); } } $whatfailed = "$text{'eacl_aviol'}"; foreach $h (&unique(@wasin, @nowin)) { $was = &indexof($h, @wasin) != -1; $now = &indexof($h, @nowin) != -1; # per-host ACLs for new or updated hosts if ($was != $now && !&can('rw', \%access, $h)) { &error("$text{'eacl_np'} $text{'eacl_pun'}"); } if ($was && !$now) { # Move out of the shared network &save_directive($sha, [ $h ], [ ], 0); &save_directive($par, [ ], [ $h ], 0); } elsif ($now && !$was) { # Move into the shared network (maybe from another) &save_directive($nowpr{$h}, [ $h ], [ ], 0); &save_directive($sha, [ ], [ $h ], 1); } } foreach $g (&unique(@wasgin, @nowgin)) { $was = &indexof($g, @wasgin) != -1; $now = &indexof($g, @nowgin) != -1; # per-group ACLs for new or updated groups if ($was != $now && !&can('rw', \%access, $g)) { &error("$text{'eacl_np'} $text{'eacl_pun'}"); } if ($was && !$now) { # Move out of the shared network &save_directive($sha, [ $g ], [ ], 0); &save_directive($par, [ ], [ $g ], 0); } elsif ($now && !$was) { # Move into the shared network (maybe from another) &save_directive($nowgpr{$g}, [ $g ], [ ], 0); &save_directive($sha, [ ], [ $g ], 1); } } foreach $u (&unique(@wasuin, @nowuin)) { $was = &indexof($u, @wasuin) != -1; $now = &indexof($u, @nowuin) != -1; # per-subnet ACLs for new or updated subnetss if ($was != $now && !&can('rw', \%access, $u)) { &error("$text{'eacl_np'} $text{'eacl_pun'}"); } if ($was && !$now) { # Move out of the shared network &save_directive($sha, [ $u ], [ ], 0); &save_directive($par, [ ], [ $u ], 0); if ($par->{'name'} eq "shared-network") { &fix_sequence($par); } } elsif ($now && !$was) { # Move into the shared network (maybe from another) &save_directive($nowupr{$u}, [ $u ], [ ], 0); &save_directive($sha, [ ], [ $u ], 1); if ($nowupr{$u}->{'name'} eq "shared-network") { &check_subnets($nowupr{$u}); } } } &check_subnets($sha); &fix_sequence($sha); if (!$in{'delete'}) { &parse_params($sha); if ($in{'new'}) { # Add this shared net &save_directive($par, [ ], [ $sha ], 0); } else { # Update shared net &save_directive($par, [ $sha ], [ $sha ], 0); } } } &flush_file_lines(); if ($in{'delete'}) { # Delete this net if ($in{'hosts'} eq "" && $in{'groups'} eq "" && $in{'subnets'} eq "") { &save_directive($par, [ $sha ], [ ], 0); &flush_file_lines(); } else { &unlock_file($config{'dhcpd_conf'}); &redirect("confirm_delete.cgi?idx=$in{'idx'}\&type=0"); exit; } } &unlock_file($config{'dhcpd_conf'}); &webmin_log($in{'delete'} ? 'delete' : $in{'new'} ? 'create' : 'modify', 'shared', $sha->{'values'}->[0], \%in); &redirect(""); # check whether thist shared network contains any subnet sub check_subnets { local(@subnets); @subnets = &find("subnet", $_[0]->{'members'}); if (@subnets == 0) { $whatfailed = $text{'sshared_failsave'}; &error(&text('sshared_nosubnet', $_[0]->{'values'}->[0])); } } # force hosts and groups to follow subnets sub fix_sequence { local(@subnets, $max, $u, $i); @subnets = &find("subnet", $_[0]->{'members'}); $max = -1; foreach $u (@subnets) { $max = $u->{'index'} > $max ? $u->{'index'} : $max; } for ($i = 0; $i < $max; $i++) { $u = $_[0]->{'members'}->[$i]; if ($u->{'name'} eq "host" || $u->{'name'} eq "group") { # move to the end of list &save_directive($_[0], [ $u ], [ ], 0); &save_directive($_[0], [ ], [ $u ], 0); } } } dhcpd/restart.cgi0100755000567100000120000000056210655706244014010 0ustar jcameronwheel#!/usr/local/bin/perl # restart.cgi # Restart the running dhcpd require './dhcpd-lib.pl'; &ReadParse(); %access = &get_module_acl(); &error_setup($text{'eacl_aviol'}); &error("$text{'eacl_np'} $text{'eacl_papply'}") unless $access{'apply'}; &error_setup($text{'restart_errmsg1'}); $err = &restart_dhcpd(); &error($err) if ($err); &webmin_log("apply"); &redirect(""); dhcpd/config.info.de0100644000567100000120000000116610655706244014347 0ustar jcameronwheeldhcpd_conf=DHCP-Server Konfigurationsdatei,0 dhcpd_nocols=Icons in Reihe,0 dhcpd_path=Ausführbare Datei des DHCP-Servers,0 hostnet_list=Zeige Sub-Netze und Hosts als,1,0-Icons,1-Liste interfaces=Schnittstellen an denen DHCP läuft,3,Automatisch lease_file=DHCP-Server Lease-Datei,0 lease_sort=Sortiere Leases nach,1,0-Reihenfolge in Datei,1-IP-Adresse,2-Hostname lease_tz=Zeige Leases-Zeiten in,1,0-GMT,1-Lokalzeit pid_file=Pfad zur DHCP-Server PID-Datei,0 restart_cmd=Befehl zum Anwenden der Konfiguration,3,Beenden und Neustart start_cmd=Befehl zum Start des DHCP-Servers,3,Starte ausführbare Server-Datei dhcpd/config.info.sv0100644000567100000120000000057710655706244014414 0ustar jcameronwheeldhcpd_conf=Konfigurationsfil fr DHCP-server,0 dhcpd_path=Exekverbar fil fr DHCP-server,0 interfaces=DHCP kr p interface,3,Automatiskt pid_file=Skvg till PID-fil fr DHCP-server,0 lease_file=Lnefil fr DHCP-server,0 lease_sort=Sortera ln efter,1,0-ordning i filen,1-IP-adress,2-datornamn hostnet_list=Visa delnt och datorer som,1,0-Ikoner,1-Lista dhcpd_nocols=ikoner i rad,0 dhcpd/config-openserver0100644000567100000120000000032010655706244015203 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf pid_file=/etc/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/etc/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/save_host.cgi0100755000567100000120000001021310655706244014311 0ustar jcameronwheel#!/usr/local/bin/perl # save_host.cgi # Update, create or delete a host require './dhcpd-lib.pl'; require './params-lib.pl'; &ReadParse(); &lock_file($config{'dhcpd_conf'}); ($par, $host, $indent, $npar, $nindent) = get_branch('hst'); # check acls %access = &get_module_acl(); &error_setup("$text{'eacl_aviol'}"); if ($in{'delete'}) { &error("$text{'eacl_np'} $text{'eacl_pdh'}") if !&can('rw', \%access, $host, 1); } elsif ($in{'options'}) { &error("$text{'eacl_np'} $text{'eacl_psh'}") if !&can('r', \%access, $host); } elsif ($in{'new'}) { &error("$text{'eacl_np'} $text{'eacl_pih'}") unless &can('c', \%access, $host) && &can('rw', \%access, $par) && (!$npar || &can('rw', \%access, $npar)); } else { &error("$text{'eacl_np'} $text{'eacl_puh'}") unless &can('rw', \%access, $host) && (!$npar || &can('rw', \%access, $npar)); } # save if ($in{'delete'}) { # Delete this host $whatfailed = $text{'shost_faildel'}; &save_directive($par, [ $host ], [ ], 0); &drop_dhcpd_acl('hst', \%access, $host->{'values'}->[0]); } elsif ($in{'options'}) { # Redirect to client options &redirect("edit_options.cgi?sidx=$in{'sidx'}&uidx=$in{'uidx'}&gidx=$in{'gidx'}&idx=$in{'idx'}"); exit; } else { &error_setup($text{'shost_failsave'}); # Validate and save inputs $in{'name'} =~ /^[a-z0-9\.\-]+$/i || &error("'$in{'name'}' $text{'shost_invalidhn'}"); $host->{'comment'} = $in{'desc'}; # Check for a hostname clash if (($in{'new'} || $in{'name'} ne $host->{'values'}->[0]) && $access{'uniq_hst'}) { foreach $h (&get_hosts()) { &error("$text{'eacl_np'} $text{'eacl_uniq'}") if (lc($h->{'values'}->[0]) eq lc($in{'name'})); } } $host->{'values'} = [ $in{'name'} ]; if ($in{'hardware'}) { # Convert from Windows / Cisco formats $in{'hardware'} =~ s/-/:/g; if ($in{'hardware'} =~ /^([0-9a-f]{2})([0-9a-f]{2}).([0-9a-f]{2})([0-9a-f]{2}).([0-9a-f]{2})([0-9a-f]{2}).([0-9a-f]{2})([0-9a-f]{2})$/) { $in{'hardware'} = "$1:$2:$3:$4:$5:$6"; } $in{'hardware'} =~ /^([0-9a-f]{1,2}:)*[0-9a-f]{1,2}$/i || &error(&text('shost_invalidhwa',$in{'hardware'},$in{'hardware_type'}) ); @hard = ( { 'name' => 'hardware', 'values' => [ $in{'hardware_type'}, $in{'hardware'} ] } ); } &save_directive($host, 'hardware', \@hard); if ($in{'fixed-address'}) { if ($in{'fixed-address'} !~ /^[\w\s\.\-,]+$/ || $in{'fixed-address'} =~ /(^|[\s,])[-_]/ || $in{'fixed-address'} =~ /\.([\s,\.]|$)/ || $in{'fixed-address'} =~ /(^|[\s,])\d+\.[\d\.]*[a-z_]/i) { &error(&text('shost_invalidaddr', $in{'fixed-address'})); } @fixedip = split(/[,\s]+/, $in{'fixed-address'}); @fixed = ( { 'name' => 'fixed-address', 'values' => [ join(" , ", @fixedip) ] } ); } &save_directive($host, 'fixed-address', \@fixed); &parse_params($host); @partypes = ( "", "shared-network", "subnet", "group" ); if (!$npar || $in{'assign'} > 0 && $npar->{'name'} ne $partypes[$in{'assign'}]) { if ($in{'jsquirk'}) { &error($text{'shost_invassign'}); } else { &redirect("edit_host.cgi?assign=".$in{'assign'}. "&idx=".$in{'idx'}."&gidx=".$in{'gidx'}. "&uidx=".$in{'uidx'}."&sidx=".$in{'sidx'}); exit; } } if ($in{'new'}) { # save acl for new host &save_dhcpd_acl('rw', 'hst', \%access, $in{'name'}); # Add to the end of the parent structure &save_directive($npar, [ ], [ $host ], $nindent); } elsif ($par eq $npar) { # Update host &save_directive($par, [ $host ], [ $host ], $indent); } else { # Move this host &save_directive($par, [ $host ], [ ], 0); &save_directive($npar, [ ], [ $host ], $nindent); } } &flush_file_lines(); &unlock_file($config{'dhcpd_conf'}); &webmin_log($in{'delete'} ? 'delete' : $in{'new'} ? 'create' : 'modify', 'host', $host->{'values'}->[0], \%in); if ($in{'ret'} eq "group") { $retparms = "sidx=$in{'sidx'}&uidx=$in{'uidx'}&idx=$in{'gidx'}"; } elsif ($in{'ret'} eq "subnet") { $retparms = "sidx=$in{'sidx'}&idx=$in{'uidx'}"; } elsif ($in{'ret'} eq "shared") { $retparms = "idx=$in{'sidx'}"; } &redirect($in{'ret'} ? "edit_$in{'ret'}.cgi?$retparms" : ""); dhcpd/start.cgi0100755000567100000120000000060410655706244013456 0ustar jcameronwheel#!/usr/local/bin/perl # start.cgi # Attempt to start dhcpd require './dhcpd-lib.pl'; %access = &get_module_acl(); &error_setup("$text{'eacl_aviol'}"); &error("$text{'eacl_np'} $text{'eacl_papply'}") unless $access{'apply'}; $whatfailed = $text{'start_failstart'}; $err = &start_dhcpd(); &error($err) if ($err); &webmin_log("start"); &redirect(""); dhcpd/config.info0100644000567100000120000000216210655706244013755 0ustar jcameronwheelline1=Configurable options,11 lease_sort=Sort leases by,1,0-Order in file,1-IP address,2-Hostname hostnet_list=Display subnets and hosts as,1,0-Icons,1-List dhcpd_nocols=Icons in row,0,5 lease_tz=Display leases times in,1,0-GMT,1-Local time show_ip=Show IP addresses for hosts?,1,1-Yes,0-No show_mac=Show MAC addresses for hosts?,1,1-Yes,0-No group_name=Show group names as,1,1-domain-name option,0-Name or member count,2-Description desc_name=Show other object descriptions instead of names?,1,1-Yes,0-No display_max=Maximum number of subnets and hosts to display,3,Unlimited line2=System configuration,11 dhcpd_conf=DHCP server config file,0 dhcpd_path=DHCP server executable,0 start_cmd=Command to start DHCP server,3,Run server executable restart_cmd=Command to apply configuration,3,Kill and re-start stop_cmd=Command to stop DHCP server,3,Kill process pid_file=Path to DHCP server PID file,3,None lease_file=DHCP server lease file,0 interfaces_type=Interfaces file type,4,redhat-Redhat,mandrake-Mandrake,suse-SuSE,debian-Debian,caldera-Caldera,gentoo-Gentoo,-Webmin version=DHCP server version,3,Work out automatically dhcpd/edit_group.cgi0100755000567100000120000001647210655706244014474 0ustar jcameronwheel#!/usr/local/bin/perl # edit_group.cgi # Edit or create a group require './dhcpd-lib.pl'; require './params-lib.pl'; &ReadParse(); $conf = &get_config(); ($par, $group) = get_branch('grp'); $gconf = $group->{'members'}; $mems = $par->{'members'}; # check acls %access = &get_module_acl(); &error_setup("$text{'eacl_aviol'}"); if ($in{'new'}) { &error("$text{'eacl_np'} $text{'eacl_pig'}") unless &can('c', \%access, $group) && &can('rw', \%access, $par); } else { &error("$text{'eacl_np'} $text{'eacl_psg'}") if !&can('r', \%access, $group); } # per hosts acl check is below # display if ($in{'uidx'} ne '') { local $s = $in{'sidx'} eq '' ? $conf->[$in{'uidx'}] : $conf->[$in{'sidx'}]->{'members'}->[$in{'uidx'}]; $desc = &text('ehost_subnet', $s->{'values'}->[0], $s->{'values'}->[2]); } elsif ($in{'sidx'} ne '') { local $s = $conf->[$in{'sidx'}]; $desc = &text('ehost_shared', $s->{'values'}->[0]); } &ui_print_header($desc, $in{'new'} ? $text{'egroup_crheader'} : $text{'egroup_eheader'}, ""); @shar = &find("shared-network", $conf); @subn = &find("subnet", $conf); $iu = 0; $is = 0; foreach $u (@subn) { push(@subn_desc, $u->{'values'}->[0]); $script2 .= "parent.options[$iu] = " ."new Option(\"$subn_desc[$iu]\", $iu)\n" ."parent.options[$iu].value = " ."new String(\"$u->{'index'}\")\n" if &can('rw', \%access, $u); if ($in{'sidx'} eq '' && $in{'uidx'} eq $u->{'index'}) { $sel_parent = $iu; $currpar = "$u->{'index'}"; } $iu ++; } foreach $s (@shar) { push(@shar_desc, $s->{'values'}->[0]); $script1 .= "parent.options[$is] = " ."new Option(\"$shar_desc[$is]\", $is)\n" ."parent.options[$is].value = " ."new String(\"$s->{'index'}\")\n" if &can('rw', \%access, $s); if ($in{'sidx'} eq $s->{'index'} && $in{'uidx'} eq '') { $sel_parent = $is; $currpar = "$s->{'index'}"; } $is ++; foreach $u (&find("subnet", $s->{'members'})) { push(@subn, $u); push(@subn_desc, "$u->{'values'}->[0] $text{'ehost_in'} $s->{'values'}->[0]"); $shared{$u} = $s->{'index'}; $script2 .= "parent.options[$iu] = " ."new Option(\"$subn_desc[$iu]\", $iu)\n" ."parent.options[$iu].value = " ."new String(\"$s->{'index'},$u->{'index'}\")\n" if &can('rw', \%access, $u); if ($in{'sidx'} eq $s->{'index'} && $in{'uidx'} eq $u->{'index'}) { $sel_parent = $iu; $currpar = "$s->{'index'},$u->{'index'}"; } $iu ++; } } print "
\n"; print "\n"; print "\n"; print "\n"; print "
$text{'egroup_tblhdr'}
\n"; print "\n"; printf "\n", &html_escape($group->{'comment'}); $rws = "rowspan=2" if (defined($in{'ret'})); print "\n"; print "\n"; if (!$in{'new'}) { # inaccessible hosts in this group foreach $h (@host) { if (!&can('r', \%access, $h) && $ingroup{$h} eq $group->{'index'}) { print "{'index'},$group->{'index'}\" type=hidden>\n"; } } } $assign = $in{'uidx'} ne "" ? "2" : $in{'sidx'} ne "" ? "1" : "0"; if (!defined($in{'ret'})) { local @labels = ( $text{'ehost_toplevel'}, $text{'ehost_inshared'}, $text{'ehost_insubnet'} ); print "\n"; print "\n"; } else { print "\n", print "\n"; } print &choice_input($text{'egroup_nchoice'}, "use-host-decl-names", $gconf, " $text{'yes'}", "on", " $text{'no'}", "off", " $text{'default'}", ""); print "\n" if (defined($in{'ret'})); &display_params($gconf, "group"); print "
$text{'egroup_desc'}
$text{'egroup_hosts'}"; print "\n" if ($in{'assign'}); print "\n"; print "\n"; print "\n"; } else { print "\n"; } print "\n"; print "
$text{'ehost_nojavascr'}
$text{'egroup_assign'}
\n"; if ($in{'assign'}) { $assign = $in{'assign'}; print "$labels[$assign]
\n"; print "\n"; print "\n"; if (!$in{'new'}) { print "\n"; print "\n"; print "\n" if &can('rw', \%access, $group); print "\n"; print "\n" if &can('rw', \%access, $group, 1); print "
\n"; print "" .$text{'index_addhst'}."

\n" if &can('rw', \%access, $group); } else { print "\n"; print "\n"; } print "

\n"; print &script_fn() if (!defined($in{'ret'})); if ($in{'ret'} eq "subnet") { &ui_print_footer("edit_subnet.cgi?sidx=$in{'sidx'}&idx=$in{'uidx'}", $text{'egroup_retsubn'}); } elsif ($in{'ret'} eq "shared") { &ui_print_footer("edit_shared.cgi?idx=$in{'sidx'}", $text{'egroup_retshar'}); } else { &ui_print_footer($ret, $text{'egroup_return'}); } sub script_fn { return < function setparent(sel) { var idx = document.forms[0].assign.selectedIndex; var v = document.forms[0].assign.options[idx].value; var vv = v.split(";"); var parent = document.forms[0].parent; parent.length = 0; if (v==1) { $script1 } if (v==2) { $script2 } if (parent.length > 0) { parent.options[sel].selected = true; } } setparent($sel_parent); EOF } dhcpd/config-cobalt-linux0100644000567100000120000000033710655706244015424 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/var/state/dhcp/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/config.info.fr0100644000567100000120000000232010655706244014357 0ustar jcameronwheeldhcpd_conf=Fichier de configuration du serveur DHCP,0 dhcpd_path=Excutable du serveur DHCP,0 interfaces=Interfaces sur lequel s'excute DHCP,3,Automatique pid_file=Chemin du fichier de numro de processus du serveur DHCP,0 lease_file=Fichier d'attribution DHCP,0 line1=Options configurables,11 lease_sort=Trier les baux par,1,0-Ordre dans le fichier,1-Adresse IP,2-Nom de poste hostnet_list=Afficher les sous-resaux et les postes en,1,0-Icones,1-Listes dhcpd_nocols=Nombre d'icones par ligne,0 lease_tz=Afficher les temps de bail en,1,0-GMT,1-Temps local show_ip=Montrer les adresses IP des postes ?,1,1-Oui,0-Non show_mac=Montrer les adresses MAC des postes ?,1,1-Oui,0-Non desc_name=Montrer les descriptions au lieu des noms ?,1,1-Oui,0-Non group_name=Montrer les noms de groupe comme,1,1-Nom de domaine,0-Nom ou numero de membre display_max=Nombre maximum de sous-reseaux et de postes a afficher,3,Illimite line2=Configuration du systeme,11 start_cmd=Commande pour demarrer le serveur DHCP,3,Lancer l'executable du serveur restart_cmd=Commande pour appliquer la configuration,3,Tuer et redemarrer interfaces_type=Type de fichier d'interface,4,redhat-REDHAT,mandrake-MANDRAKE,suse-SuSE,debian-DEBIAN,caldera-CALDERA,-WEBMIN dhcpd/config-unixware0100644000567100000120000000036410655706244014665 0ustar jcameronwheeldhcpd_conf=/usr/local/etc/dhcpd.conf pid_file=/usr/local/etc/dhcpd.pid dhcpd_path=/usr/local/sbin/dhcpd lease_file=/usr/local/etc/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/index.cgi0100755000567100000120000005147110655706244013440 0ustar jcameronwheel#!/usr/local/bin/perl # $Id: index.cgi,v 1.6 2005/04/16 14:30:21 jfranken Exp $ # * List all subnets and shared networks # # File modified 2005-04-15 by Johannes Franken : # * Added support for DNS Zones (list, edit, create zone-directives) # * Added a button to edit key-directives # * Added a button to edit dhcp.conf in a text editor require './dhcpd-lib.pl'; $display_max = $config{'display_max'} || 1000000000; &ReadParse(); $horder = $in{'horder'}; $norder = $in{'norder'}; if ($horder eq "" && open(INDEX, "$module_config_directory/hindex.".$remote_user)) { chop($horder = ); close(INDEX); } if (!$horder) { $horder = 0; } if ($norder eq "" && open(INDEX, "$module_config_directory/nindex.".$remote_user)) { chop($norder = ); close(INDEX); } if (!$norder) { $norder = 0; } $nocols = $config{'dhcpd_nocols'} ? $config{'dhcpd_nocols'} : 5; $conf = &get_config(); %access = &get_module_acl(); # Check if dhcpd is installed if (!-x $config{'dhcpd_path'}) { &ui_print_header(undef, $text{'index_title'}, "", undef, 1, 1, 0, &help_search_link("dhcpd", "man", "doc", "howto", "google")); print &text('index_dhcpdnotfound', $config{'dhcpd_path'}, "$gconfig{'webprefix'}/config.cgi?$module_name"),"

\n"; &foreign_require("software", "software-lib.pl"); $lnk = &software::missing_install_link("dhcpd", $text{'index_dhcpd'}, "../$module_name/", $text{'index_title'}); print $lnk,"

\n" if ($lnk); &ui_print_footer("/", $text{'index_return'}); exit; } # Check if it is the right version @st = stat($config{'dhcpd_path'}); if ($st[7] != $config{'dhcpd_size'} || $st[9] != $config{'dhcpd_mtime'}) { # File has changed .. get the version local $ver = &get_dhcpd_version(\$out); if (!$ver) { &ui_print_header(undef, $text{'index_title'}, "", undef, 1, 1, 0, &help_search_link("dhcpd", "man", "doc", "howto", "google")); print (&text('index_dhcpdver2',$config{'dhcpd_path'}, 2, 3)),"

\n"; print "

$out
\n"; &ui_print_footer("/", $text{'index_return'}); exit; } $config{'dhcpd_version'} = $ver; $config{'dhcpd_size'} = $st[7]; $config{'dhcpd_mtime'} = $st[9]; &write_file("$module_config_directory/config", \%config); } &ui_print_header(undef, $text{'index_title'}, "", undef, 1, 1, 0, &help_search_link("dhcpd", "man", "doc", "howto", "google"), undef, undef, &text('index_version', $config{'dhcpd_version'})); # Create lookup type HTML # XXX change text, add to lookup_* $match = "\n"; # get top-level hosts foreach $h (&find("host", $conf)) { push(@host, $h); } foreach $g (&find("group", $conf)) { push(@group, $g); foreach $h (&find("host", $g->{'members'})) { push(@host, $h); $group{$h} = $g->{'index'}; $par{$h} = $g; push(@{$g->{'hosts'}}, $h->{'values'}->[0]); } } # get subnets and shared nets, and the hosts and groups within them @subn = &find("subnet", $conf); foreach $u (@subn) { $maxsubn = $maxsubn > $u->{'index'} ? $maxsubn : $u->{'index'}; foreach $h (&find("host", $u->{'members'})) { $maxhost = $maxhost > $h->{'index'} ? $maxhost : $h->{'index'}; $subnet{$h} = $u->{'index'}; $par{$h} = $u; push(@host, $h); } foreach $g (&find("group", $u->{'members'})) { $maxgroup = $maxgroup > $g->{'index'} ? $maxgroup : $g->{'index'}; $subnet{$g} = $u->{'index'}; $par{$g} = $u; push(@group, $g); foreach $h (&find("host", $g->{'members'})) { $maxhost = $maxhost > $h->{'index'} ? $maxhost : $h->{'index'}; $subnet{$h} = $u->{'index'}; $group{$h} = $g->{'index'}; $par{$h} = $g; push(@{$g->{'hosts'}}, $h->{'values'}->[0]); push(@host, $h); } } } @shan = &find("shared-network", $conf); foreach $s (@shan) { $maxshar = $maxshar > $s->{'index'} ? $maxshar : $s->{'index'}; foreach $h (&find("host", $s->{'members'})) { $maxhost = $maxhost > $h->{'index'} ? $maxhost : $h->{'index'}; $shared{$h} = $s->{'index'}; $par{$h} = $s; push(@host, $h); } foreach $g (&find("group", $s->{'members'})) { $maxgroup = $maxgroup > $g->{'index'} ? $maxgroup : $g->{'index'}; $shared{$g} = $s->{'index'}; $par{$g} = $s; push(@group, $g); foreach $h (&find("host", $g->{'members'})) { $maxhost = $maxhost > $h->{'index'} ? $maxhost : $h->{'index'}; $group{$h} = $g->{'index'}; $shared{$h} = $s->{'index'}; $par{$h} = $g; push(@{$g->{'hosts'}}, $h->{'values'}->[0]); push(@host, $h); } } foreach $u (&find("subnet", $s->{'members'})) { $maxsubn = $maxsubn > $u->{'index'} ? $maxsubn : $u->{'index'}; $par{$u} = $s; push(@subn, $u); $shared{$u} = $s->{'index'}; foreach $h (&find("host", $u->{'members'})) { $maxhost = $maxhost > $h->{'index'} ? $maxhost : $h->{'index'}; $subnet{$h} = $u->{'index'}; $shared{$h} = $s->{'index'}; $par{$h} = $u; push(@host, $h); } foreach $g (&find("group", $u->{'members'})) { $maxgroup = $maxgroup > $g->{'index'} ? $maxgroup : $g->{'index'}; $subnet{$g} = $u->{'index'}; $shared{$g} = $s->{'index'}; $par{$g} = $u; push(@group, $g); foreach $h (&find("host", $g->{'members'})) { $maxhost = $maxhost > $h->{'index'} ? $maxhost : $h->{'index'}; $subnet{$h} = $u->{'index'}; $group{$h} = $g->{'index'}; $shared{$h} = $s->{'index'}; $par{$h} = $g; push(@{$g->{'hosts'}}, $h->{'values'}->[0]); push(@host, $h); } } } } foreach $s (@shan) { $s->{'order'} = (1 + $s->{'index'}) * (2 + $maxsubn); } foreach $s (@subn) { $s->{'order'} = (defined($shared{$s}) ? (1 + $shared{$s}) * (2 + $maxsubn) : 0) + 1 + $s->{'index'}; } if ($norder == 0) { @subn = (@subn, @shan); } elsif ($norder == 1) { @subn = (@subn, @shan); @subn = sort { $a->{'order'} <=> $b->{'order'} } @subn; } elsif ($norder == 2) { @subn = sort { $a->{'values'}->[0] <=> $b->{'values'}->[0] } @subn; @shan = sort { $a->{'values'}->[0] cmp $b->{'values'}->[0] } @shan; @subn = (@subn, @shan); } # display subnets and shared nets foreach $u (@subn) { local $can_view = &can('r', \%access, $u); next if !$can_view && $access{'hide'}; local ($l, $t, $i); if ($u->{'name'} eq "subnet") { push(@ulinks, $l = $can_view ? "edit_subnet.cgi?idx=$u->{'index'}". ($shared{$u} ne "" ? "&sidx=$shared{$u}" : "") : undef); push(@uicons, $i = "images/subnet.gif"); push(@checkboxids, $u->{'index'}. ($shared{$u} ne "" ? "/$shared{$u}" : "")); } else { push(@slinks, $l = $can_view ? "edit_shared.cgi?idx=$u->{'index'}" : undef); push(@sicons, $i = "images/shared.gif"); push(@checkboxids, $u->{'index'}); } if ($config{'desc_name'} && $u->{'comment'}) { push(@utitles, $t = &html_escape($u->{'comment'})); } else { push(@utitles, $t = &html_escape($u->{'values'}->[0])); } push(@uslinks, $l); # so that ordering is preserved push(@ustitles, $t); push(@usicons, $i); } @checkboxes = map { &ui_checkbox("d", $_) } @checkboxids; if ($access{'r_sub'} || $access{'c_sub'} || $access{'r_sha'} || $access{'c_sha'}) { print &ui_subheading($text{'index_subtitle'}); $sp = ""; if (@ulinks < $display_max && @slinks < $display_max) { @links = @uslinks; @titles = @ustitles; @icons = @usicons; } elsif (@ulinks < $display_max) { @links = @ulinks; @titles = @utitles; @icons = @uicons; } elsif (@slinks < $display_max) { @links = @slinks; @titles = @stitles; @icons = @sicons; } if (@links) { # Show table of subnets and shared nets $show_subnet_delete = 1; print &ui_form_start("delete_subnets.cgi"); &subnet_add_links(); if ($config{'hostnet_list'} == 0) { &icons_table(\@links, \@titles, \@icons, $nocols, undef, undef, undef, \@checkboxes); } else { &net_table(\@subn, 0, scalar(@subn), \@links, \@titles, \@checkboxids); } } elsif (!@ulinks && !@slinks) { # No subnets or shared nets print "$text{'index_nosubdef'}

\n"; } print "\n"; if (@ulinks >= $display_max) { # Could not show all subnets, so show lookup form print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; } if (@slinks >= $display_max) { # Could not show all shared nets, so show lookup form print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; } print "
$text{'index_subtoomany'}$matches
$text{'index_shatoomany'}$matches
\n"; } &subnet_add_links(); if ($show_subnet_delete) { print &ui_form_end([ [ "delete", $text{'index_delete'} ] ]); } print "


\n"; foreach $g (@group) { $parent = (defined($subnet{$g}) ? 1 + $subnet{$g} : 0) + (defined($shared{$g}) ? (1 + $shared{$g}) * (2 + $maxsubn) : 0); $g->{'order'} = $parent + (1 + $g->{'index'}) / (2 + $maxgroup); } foreach $h (@host) { $parent = (defined($group{$h}) ? (1 + $group{$h}) / (2 + $maxgroup) : 0) + (defined($subnet{$h}) ? 1 + $subnet{$h} : 0) + (defined($shared{$h}) ? (1 + $shared{$h}) * (2 + $maxsubn) : 0); $h->{'order'} = $parent + (1 + $h->{'index'}) / ((1 + @group) * (2 + $maxhost)); } if ($horder == 0) { @host = (@host, @group); } elsif ($horder == 1) { @host = (@host, @group); @host = sort { $a->{'order'} <=> $b->{'order'} } @host; } elsif ($horder == 2) { @host = sort { $a->{'values'}->[0] cmp $b->{'values'}->[0] } @host; @host = (@host, @group); } elsif ($horder == 3) { @host = sort { &hardware($a) cmp &hardware($b) } @host; @host = (@host, @group); } elsif ($horder == 4) { @host = sort { &ipaddress($a) cmp &ipaddress($b) } @host; @host = (@host, @group); } # display hosts foreach $h (@host) { local $can_view = &can('r', \%access, $h); next if !$can_view && $access{'hide'}; if ($h->{'name'} eq 'host') { # Add icon for a host push(@hlinks, $l = $can_view ? "edit_host.cgi?idx=$h->{'index'}". (defined($group{$h}) ? "&gidx=$group{$h}" : ""). (defined($subnet{$h}) ? "&uidx=$subnet{$h}" : ""). (defined($shared{$h}) ? "&sidx=$shared{$h}" : "") : undef); if ($config{'desc_name'} && $h->{'comment'}) { push(@htitles, &html_escape($h->{'comment'})); } else { push(@htitles, &html_escape($h->{'values'}->[0])); } if ($config{'show_ip'}) { $fv = &fixedaddr($h); $htitles[$#htitles] .= "
".$fv if ($fv); } if ($config{'show_mac'}) { local $hard = &find("hardware", $h->{'members'}); $htitles[$#htitles] .= "
$hard->{'values'}->[1]" if ($hard); } $t = $htitles[$#htitles]; push(@hicons, $i = "images/host.gif"); push(@hgcheckboxids, join("/", $h->{'index'}, $group{$h}, $subnet{$h}, $shared{$h})); } else { # Add icon for a group push(@glinks, $l = $can_view ? "edit_group.cgi?idx=$h->{'index'}". (defined($subnet{$h}) ? "&uidx=$subnet{$h}" : ""). (defined($shared{$h}) ? "&sidx=$shared{$h}" : "") : undef); $gm = @{$h->{'hosts'}}; push(@gtitles, $t = &html_escape(&group_name($gm, $h))); push(@gicons, $i = "images/group.gif"); push(@hgcheckboxids, join("/", $h->{'index'}, $subnet{$h}, $shared{$h})); } push(@hglinks, $l); push(@hgtitles, $t); push(@hgicons, $i); } @hgcheckboxes = map { &ui_checkbox("d", $_) } @hgcheckboxids; if ($access{'r_hst'} || $access{'c_hst'} || $access{'r_grp'} || $access{'c_grp'}) { print &ui_subheading($text{'index_hst'}); $sp = ""; if (@hlinks < $display_max && @glinks < $display_max) { @links = @hglinks; @titles = @hgtitles; @icons = @hgicons; } elsif (@hlinks < $display_max) { @links = @hlinks; @titles = @htitles; @icons = @hicons; } elsif (@glinks < $display_max) { @links = @glinks; @titles = @gtitles; @icons = @gicons; } if (@links) { # Some hosts or groups to show &index_links($horder, "h", 5, $text{'index_hdisplay'}, "norder=$norder"); $show_host_delete = 1; print &ui_form_start("delete_hosts.cgi"); &host_add_links(); if ($config{'hostnet_list'} == 0) { &icons_table(\@links, \@titles, \@icons, $nocols, undef, undef, undef, \@hgcheckboxes); } else { &host_table(\@host, 0, scalar(@host), \@links, \@titles, \@hgcheckboxids); } } elsif (!@hlinks && !@glinks) { # None to show at all print "$text{'index_nohst'}

\n"; } print "\n"; if (@hlinks >= $display_max) { # Could not show all hosts, so show lookup form print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; } if (@glinks >= $display_max) { # Could not show all groups, so show lookup form print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; } print "
$text{'index_hsttoomany'}$matches
$text{'index_grptoomany'}$matches
\n"; } &host_add_links(); if ($show_host_delete) { print &ui_form_end([ [ "delete", $text{'index_delete'} ] ]); } print "


\n"; ############ START ZONES ##### if ($config{'dhcpd_version'} >= 3) { print &ui_subheading($text{'zone_key'}); # get zones @zones = &find("zone", $conf); @zones = sort { $a->{'values'}->[0] <=> $b->{'values'}->[0] } @zones; if (@zones) { # display zones print "","$text{'index_addzone'}  \n" if $access{'c_sub'}; foreach $z (@zones) { # print "ZONE: $z->{'value'}
"; push(@zlinks, "edit_zones.cgi?idx=$z->{'index'}"); push(@zicons, "images/files.gif"); push(@ztitles, &html_escape($z->{'values'}->[0])); } if ($config{'hostnet_list'} == 0) { # user wants icons &icons_table(\@zlinks, \@ztitles, \@zicons, $nocols); } else { # user wants text &zone_table(\@zones, 0, scalar(@zones), \@zlinks, \@ztitles); } } else { print "$text{'index_nozones'}

\n"; } print "","$text{'index_addzone'}  \n" if $access{'c_sub'}; print "


\n"; } ############ END ZONES ##### print "\n"; if ($access{'global'}) { print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; } if ($config{'dhcpd_version'} >= 3) { if ($access{'global'}) { print "\n"; print "\n"; print "\n"; print "\n"; } } if (!$access{'noconfig'}) { print "\n"; print "\n"; print "\n"; print "\n"; } if (!$access{'noconfig'}) { print "\n"; print "\n"; print "\n"; print "\n"; } if ($access{'r_leases'}) { print "\n"; print "\n"; print "\n"; print "\n"; } if ($access{'apply'}) { $pid = &is_dhcpd_running(); if ($pid) { print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; } else { print "\n"; print "\n"; print "\n"; print "\n"; } } print "
$text{'index_ego'} \n"; print "
$text{'index_key'} \n"; print "
$text{'index_text'} \n"; print "
$text{'index_iface'} \n"; print "
$text{'index_lal'} \n"; print "
$text{'index_apply'} \n"; print "
$text{'index_stopdesc'} \n"; print "
$text{'index_start'} \n"; print "
\n"; &ui_print_footer("/", $text{'index_return'}); # Returns canonized hardware address. sub hardware { local ($hconf, $addr); $hconf = $_[0]->{'members'} ? &find("hardware", $_[0]->{'members'}) : undef; if ($hconf) { $addr = uc($hconf->{'values'}->[1]); $addr =~ s/(^|\:)([0-9A-F])(?=$|\:)/$1\x30$2/g; } return $hconf ? $addr : undef; } # Returns ip address for sorting on sub ipaddress { return undef if (!$_[0]->{'members'}); local $iconf = &find("fixed-address", $_[0]->{'members'}); return undef if (!$iconf); return sprintf "%3.3d.%3.3d.%3.3d.%3.3d", split(/\./, $iconf->{'values'}->[0]); } sub fixedaddr { local ($fixed, $addr); $fixed = &find("fixed-address", $_[0]->{'members'}); if ($fixed) { $addr = join(" ", grep { $_ ne "," } @{$fixed->{'values'}}); return $addr; } else { return undef; } } sub netmask { return $_[0]->{'values'}->[2]; } # index_links(current, name, max, txt, ref) sub index_links { local (%linkname, $l); print "\n"; print "
$_[3]   "; for ($l = 0; $l < $_[2]; $l++) { if ($l ne $_[0]) { print ""; } else { print ""; } print $text{"index_$_[1]order$l"}; if ($l ne $_[0]) { print ""; } else { print ""; } print " \n"; } print "
\n"; open(INDEX, "> $module_config_directory/$_[1]index.".$remote_user); print INDEX "$_[0]\n"; close(INDEX); } sub host_table { local ($i, $h, $parent); local @tds = ( "width=5" ); print &ui_columns_start([ "", $text{'index_hostgroup'}, $text{'index_parent'}, $text{'index_hardware'}, $text{'index_nameip'} ], 100, 0, \@tds); for ($i = $_[1]; $i < $_[2]; $i++) { local @cols; local $firstcol; $h = $_[0]->[$i]; if ($h->{'name'} eq 'host') { $firstcol .= $sp; } else { $firstcol .= $text{'index_group'}." "; $sp = "\ \ "; } if ($_[3]->[$i]) { $firstcol .= "[$i]>$_[4]->[$i]"; } else { $firstcol .= $_[4]->[$i]; } push(@cols, $firstcol); if ($par{$h}->{'name'} eq "group") { $par_type = $text{'index_togroup'}; $parent = &group_name(scalar @{$par{$h}->{'hosts'}}); } elsif ($par{$h}->{'name'} eq "subnet") { $par_type = $text{'index_tosubnet'}; $parent = $par{$h}->{'values'}->[0]; } elsif ($par{$h}->{'name'} eq "shared-network") { $par_type = $text{'index_toshared'}; $parent = $par{$h}->{'values'}->[0]; } if ($config{'desc_name'} && $par{$h}->{'comment'}) { $parent = $par{$h}->{'comment'}; } push(@cols, "$par_type: $parent"); push(@cols, $_[3]->[$i] ? &hardware($h) : ""); push(@cols, $_[3]->[$i] ? &fixedaddr($h) : ""); print &ui_checked_columns_row(\@cols, \@tds, "d", $_[5]->[$i]); } print &ui_columns_end(); } #&net_table(\@subn, 0, scalar(@subn), \@links, \@titles, \@checkboxids); sub net_table { local ($i, $n); local @tds = ( "width=5" ); print &ui_columns_start([ "", $text{'index_net'}, $text{'index_netmask'}, $text{'index_desc'}, $text{'index_parent'} ], 100, 0, \@tds); for ($i = $_[1]; $i < $_[2]; $i++) { local @cols; $n = $_[0]->[$i]; local $first; if ($n->{'name'} eq 'subnet') { $first = $sp; } else { $sp = "\ \ "; } if ($_[3]->[$i]) { $first .= "[$i]>$_[4]->[$i]"; } else { $first .= $_[4]->[$i]; } push(@cols, $first); push(@cols, $_[3]->[$i] ? &netmask($n) : ""); push(@cols, $n->{'comment'}); push(@cols, $par{$n} ? "$text{'index_toshared'} $par{$n}->{'values'}->[0]" : ""); print &ui_checked_columns_row(\@cols, \@tds, "d", $_[5]->[$i]); } print &ui_columns_end(); } #&zone_table(\@zones, 0, scalar(@zones), \@zlinks, \@ztitles); sub zone_table { local $i; print "\n"; print "\n"; for ($i = $_[1]; $i < $_[2]; $i++) { print "\n"; print "\n"; } print "
", $text{'index_zone'}, "
\n"; print "[$i]>", $_[4]->[$i], "
\n" } sub subnet_add_links { local @links; if ($show_subnet_delete) { push(@links, &select_all_link("d"), &select_invert_link("d")); } push(@links, "$text{'index_addsub'}") if $access{'c_sub'}; push(@links, "$text{'index_addnet'}") if $access{'c_sha'}; print &ui_links_row(\@links); } sub host_add_links { local @links; if ($show_host_delete) { push(@links, &select_all_link("d", 1), &select_invert_link("d", 1)); } push(@links, "$text{'index_addhst'}") if $access{'c_hst'}; push(@links, "$text{'index_addhstg'}") if $access{'c_grp'}; print &ui_links_row(\@links); } dhcpd/config-redhat-linux0100644000567100000120000000032410655706244015423 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/etc/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/list_leases.cgi0100755000567100000120000001471510655706244014640 0ustar jcameronwheel#!/usr/local/bin/perl # list_leases.cgi # List all active leases # XXX compute number of available IPs from ranges, and subtract those allocated require './dhcpd-lib.pl'; require 'timelocal.pl'; &ReadParse(); $timenow = time(); %access = &get_module_acl(); &error_setup("$text{'eacl_aviol'}"); &error("$text{'eacl_np'} $text{'eacl_psl'}") unless $access{'r_leases'}; if ($in{'network'}) { $desc = &text('listl_network', "$in{'network'}", "$in{'netmask'}"); } &ui_print_header($desc, $text{'listl_header'}, ""); # Work out how many IPs we have in our pools %ranges = ( ); $conf = &get_config(); @subnets = &find("subnet", $conf); foreach $shared (&find("shared-network", $conf)) { push(@subnets, &find("subnet", $shared->{'members'})); } foreach $subnet (@subnets) { foreach $range (&find("range", $subnet->{'members'})) { local @rv = @{$range->{'values'}}; shift(@rv) if ($rv[0] eq "dynamic-bootp"); foreach $ip (&expand_ip_range($rv[0], $rv[1])) { if (&within_network($ip)) { $ranges{$ip}++; } } } } if (!-r $config{'lease_file'}) { print ""; print(&text('listl_lfnotexist',$config{'lease_file'})); print "

\n"; } elsif (!&tokenize_file($config{'lease_file'}, \@tok)) { print "",&text('listl_lfnotcont',$config{'lease_file'}),"

\n"; } else { $i = $j = 0; local @nw = split(/\./, $in{'network'}); local @nm = split(/\./, $in{'netmask'}); LEASE: while($i < @tok) { $lease = &parse_struct(\@tok, \$i, $j++, $config{'lease_file'}); next if (!$lease); local $mems = $lease->{'members'}; local $starts = &find('starts', $mems); local $ends = &find('ends', $mems); $lease->{'stime'} = &lease_time($starts); $lease->{'etime'} = &lease_time($ends); if ($lease->{'etime'} < $timenow || $lease->{'stime'} > $timenow) { if ($in{'all'}) { $lease->{'expired'}++; } else { next; } } next if (!&within_network($lease->{'values'}->[0])); push(@leases, $lease); } if (@leases) { if ($in{'sort'} eq 'ipaddr') { @leases = sort { &ip_compare($a, $b) } @leases; } elsif ($in{'sort'} eq 'ether') { @leases = sort { ðer_compare($a, $b) } @leases; } elsif ($in{'sort'} eq 'host') { @leases = sort { &hostname_compare($a, $b) } @leases; } elsif ($in{'sort'} eq 'start') { @leases = sort { $a->{'stime'} <=> $b->{'stime'} } @leases; } elsif ($in{'sort'} eq 'end') { @leases = sort { $a->{'etime'} <=> $b->{'etime'} } @leases; } elsif ($config{'lease_sort'} == 1) { @leases = sort { &ip_compare($a, $b) } @leases; } elsif ($config{'lease_sort'} == 2) { @leases = sort { &hostname_compare($a, $b) } @leases; } # Show available and used $leased = 0; foreach $lease (@leases) { $ip = $lease->{'values'}->[0]; if ($ranges{$ip} && !$donelease{$ip}++) { $leased++; } } if (keys %ranges) { print &text('listl_allocs', scalar(keys %ranges), $leased, int($leased*100/scalar(keys %ranges))),"

\n"; } # Table header, with sorting print &ui_columns_start([ &sort_link("ipaddr"), &sort_link("ether"), &sort_link("host"), &sort_link("start"), &sort_link("end"), ]); foreach $lease (@leases) { local @cols; local $mems = $lease->{'members'}; local $starts = &find('starts', $mems); local $ends = &find('ends', $mems); local $ht = $lease->{'expired'} ? "i" : "tt"; push(@cols, "<$ht>". "$lease->{'values'}->[0]"); local $hard = &find('hardware', $mems); push(@cols,$hard->{'values'}->[1] ? "$hard->{'values'}->[1]" : "$text{'listl_unknown'}"); local $client = &find('client-hostname', $mems); push(@cols, $client ? "".&html_escape( $client->{'values'}->[0])."" : undef); if ($config{'lease_tz'}) { local @st = localtime($lease->{'stime'}); local @et = localtime($lease->{'etime'}); $s = sprintf "%4.4d/%2.2d/%2.2d %2.2d:%2.2d:%2.2d", $st[5]+1900, $st[4]+1, $st[3], $st[2], $st[1], $st[0]; $e = sprintf "%4.4d/%2.2d/%2.2d %2.2d:%2.2d:%2.2d", $et[5]+1900, $et[4]+1, $et[3], $et[2], $et[1], $et[0]; } else { $s = $starts->{'values'}->[1]." ". $starts->{'values'}->[2]; $e = $ends->{'values'}->[1]." ". $ends->{'values'}->[2]; } push(@cols, "$s"); push(@cols, "$e"); print &ui_columns_row(\@cols); } print &ui_columns_end(); print "$text{'listl_delete'}

\n"; } else { print "",&text($in{'all'} ? 'listl_lfnotcont' : 'listl_lfnotcont2', $config{'lease_file'}), "

\n"; } if (!$in{'all'}) { print "

\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "
\n"; } } &ui_print_footer("", $text{'listl_return'}); sub lease_time { local @d = split(/\//, $_[0]->{'values'}->[1]); local @t = split(/:/, $_[0]->{'values'}->[2]); local $t; eval { $t = timegm($t[2], $t[1], $t[0], $d[2], $d[1]-1, $d[0]-1900) }; return $@ ? undef : $t; } sub ip_compare { $a->{'values'}->[0] =~ /^(\d+)\.(\d+)\.(\d+)\.(\d+)/; local ($a1, $a2, $a3, $a4) = ($1, $2, $3, $4); $b->{'values'}->[0] =~ /^(\d+)\.(\d+)\.(\d+)\.(\d+)/; return $a1 < $1 ? -1 : $a1 > $1 ? 1 : $a2 < $2 ? -1 : $a2 > $2 ? 1 : $a3 < $3 ? -1 : $a3 > $3 ? 1 : $a4 < $4 ? -1 : $a4 > $4 ? 1 : 0; } sub hostname_compare { local $client_a = &find_value('client-hostname', $a->{'members'}); local $client_b = &find_value('client-hostname', $b->{'members'}); return lc($client_a) cmp lc($client_b); } sub ether_compare { local $ether_a = &find('hardware', $a->{'members'}); local $ether_b = &find('hardware', $b->{'members'}); return lc($ether_a->{'values'}->[1]) cmp lc($ether_b->{'values'}->[1]); } sub sort_link { local ($c) = @_; if ($in{'sort'} eq $c) { return $text{'listl_'.$c}; } else { return "".$text{'listl_'.$c}.""; } } sub within_network { local ($ip) = @_; if ($in{'network'}) { # Is lease within network/netmask? local @ad = split(/\./, $ip); for($k=0; $k<4; $k++) { if ((int($ad[$k]) & int($nm[$k])) != int($nw[$k])) { return 0; } } } return 1; } dhcpd/save_options.cgi0100755000567100000120000001451210655706244015035 0ustar jcameronwheel#!/usr/local/bin/perl # save_options.cgi # Save client options for some subnet, shared net, group, host or global require './dhcpd-lib.pl'; require './params-lib.pl'; &ReadParse(); &lock_file($config{'dhcpd_conf'}); $client = &get_parent_config(); foreach $i ($in{'sidx'}, $in{'uidx'}, $in{'gidx'}, $in{'idx'}) { if ($i ne '') { $client = $client->{'members'}->[$i]; $indent++; } } # check acls %access = &get_module_acl(); &error_setup("$text{'eacl_aviol'}"); if ($client->{'name'} eq 'subnet') { &error("$text{'eacl_np'} $text{'eacl_pus'}") if !&can('rw', \%access, $client); } elsif ($client->{'name'} eq 'shared-network') { &error("$text{'eacl_np'} $text{'eacl_pun'}") if !&can('rw', \%access, $client); } elsif ($client->{'name'} eq 'host') { &error("$text{'eacl_np'} $text{'eacl_puh'}") if !&can('rw', \%access, $client); } elsif ($client->{'name'} eq 'group') { &error("$text{'eacl_np'} $text{'eacl_pug'}") if !&can('rw', \%access, $client); } else { &error("$text{'eacl_np'} $text{'eacl_pglob'}") if !$access{'global'}; } # save &error_setup($text{'sopt_failsave'}); &save_option("host-name", 3, $client, $indent); &save_option("routers", 2, $client, $indent); &save_option("subnet-mask", 0, $client, $indent); &save_option("broadcast-address", 0, $client, $indent); &save_option("domain-name", 3, $client, $indent); &save_option("domain-name-servers", 2, $client, $indent); &save_option("time-servers", 2, $client, $indent); &save_option("log-servers", 2, $client, $indent); &save_option("swap-server", 2, $client, $indent); &save_option("root-path", 3, $client, $indent); &save_option("nis-domain", 3, $client, $indent); &save_option("nis-servers", 2, $client, $indent); &save_option("font-servers", 2, $client, $indent); &save_option("x-display-manager", 2, $client, $indent); &save_option("static-routes", 5, $client, $indent); &save_option("ntp-servers", 2, $client, $indent); &save_option("netbios-name-servers", 2, $client, $indent); &save_option("netbios-scope", 3, $client, $indent); &save_option("netbios-node-type", 1, $client, $indent); &save_option("time-offset", 1, $client, $indent); &save_option("dhcp-server-identifier", 2, $client, $indent); &save_option("slp-directory-agent", 2, $client, $indent, 1); &save_option("slp-service-scope", 3, $client, $indent, 1); if ($in{'level'} eq "global") { # save params as well &save_choice("use-host-decl-names", $client, 0); &parse_params($client, 0); } elsif ($in{'level'} eq "host") { $ret="edit_host.cgi?sidx=$in{'sidx'}&uidx=$in{'uidx'}&gidx=$in{'gidx'}&idx=$in{'idx'}"; } elsif ($in{'level'} eq "group") { $ret="edit_group.cgi?sidx=$in{'sidx'}&uidx=$in{'uidx'}&idx=$in{'idx'}"; } elsif ($in{'level'} eq "subnet") { $ret="edit_subnet.cgi?sidx=$in{'sidx'}&idx=$in{'idx'}"; } elsif ($in{'level'} eq "shared-network") { $ret="edit_shared.cgi?idx=$in{'idx'}"; } # save custom options @custom = grep { $_->{'name'} eq 'option' && $_->{'values'}->[0] =~ /^option-(\S+)$/ && $_->{'values'}->[1] ne 'code' } @{$client->{'members'}}; for($i=0; defined($in{"cnum_$i"}); $i++) { next if (!$in{"cnum_$i"} || !$in{"cval_$i"}); $in{"cnum_$i"} =~ /^\d+$/ || ($config{'dhcpd_version'} >= 3 && $in{"cnum_$i"} =~ /^\S+$/) || &error(&text('sopt_ednum', $in{"cnum_$i"})); local $cv = $in{"cval_$i"}; $cv = "\"$cv\"" if ($cv !~ /^([0-9a-fA-F]{1,2}:)*[0-9a-fA-F]{1,2}$/); push(@newcustom, { 'name' => 'option', 'values' => [ 'option-'.$in{"cnum_$i"}, $cv ] } ); } &save_directive($client, \@custom, \@newcustom, $indent, 1); if ($config{'dhcpd_version'} >= 3) { # save option definitions @defs = grep { $_->{'name'} eq 'option' && $_->{'values'}->[1] eq 'code' && $_->{'values'}->[3] eq '=' } @{$client->{'members'}}; for($i=0; defined($in{"dname_$i"}); $i++) { next if (!$in{"dname_$i"} || !$in{"dnum_$i"} || !$in{"dtype_$i"}); $in{"dname_$i"} =~ /^[a-z0-9\.\-\_]+$/i || &error(&text('sopt_edname', $in{"dname_$i"})); $in{"dnum_$i"} =~ /^\d+$/ || &error(&text('sopt_ednum', $in{"dnum_$i"})); $in{"dtype_$i"} =~ /^[a-z0-9\.\-\_]+$/i || &error(&text('sopt_edtype', $in{"dtype_$i"})); push(@newdefs, { 'name' => 'option', 'values' => [ $in{"dname_$i"}, "code", $in{"dnum_$i"}, "=", $in{"dtype_$i"} ] } ); } &save_directive($client, \@defs, \@newdefs, $indent, 1); } &flush_file_lines(); &unlock_file($config{'dhcpd_conf'}); if ($client->{'name'} eq 'subnet') { &webmin_log("options", 'subnet', "$client->{'values'}->[0]/$client->{'values'}->[2]", \%in); } elsif ($client->{'name'} eq 'shared-network') { &webmin_log("options", 'subnet', $client->{'values'}->[0], \%in); } elsif ($client->{'name'} eq 'host') { &webmin_log("options", 'host', $client->{'values'}->[0], \%in); } elsif ($client->{'name'} eq 'group') { @count = &find("host", $client->{'members'}); &webmin_log("options", 'group', join(",", map { $_->{'values'}->[0] } @count), \%in); } &redirect($ret); # save_option(name, type, &config, indent, [has-boolean]) sub save_option { local($v); local $m = $_[2]->{'members'}; for($i=0; $i<@$m; $i++) { if ($m->[$i]->{'name'} eq 'option' && $m->[$i]->{'values'}->[0] eq $_[0]) { $v = $m->[$i]; last; } } if ($in{"$_[0]_def"}) { &save_directive($_[2], [ $v ], [ ], 0, 1) if ($v); } else { local $nv = $in{$_[0]}; local @nv = split(/\s+/, $nv); if ($_[1] == 0) { gethostbyname($nv) || &check_ipaddress($nv) || &error("$_[0] '$nv' $text{'sopt_invalidip'}"); } elsif ($_[1] == 1) { $nv =~ /^-?\d+$/ || &error("'$nv' $text{'sopt_invalidint'}"); } elsif ($_[1] == 2) { local $ip; foreach $ip (@nv) { gethostbyname($ip) || &check_ipaddress($ip) || &error("'$ip' $text{'sopt_invalidip'}"); } $nv = join(", ", @nv); } elsif ($_[1] == 3) { $nv = "\"$nv\""; } elsif ($_[1] == 5) { local($ipp, @nnv); foreach $ipp (@nv) { $ipp =~ /^(\S+)\s*,\s*(\S+)$/ || &error("'$ipp' $text{'sopt_invalidipp'}"); &check_ipaddress($1) || &error("'$1' $text{'sopt_invalidip'}"); &check_ipaddress($2) || &error("'$2' $text{'sopt_invalidip'}"); push(@nnv, "$1 $2"); } $nv = join(", ", @nnv); } local @bool = !$_[4] ? ( ) : $in{$_[0]."_bool"} ? ( "true" ) : ( "false" ); local $dir = { 'name' => 'option', 'values' => [ $_[0], @bool, $nv ] }; &save_directive($_[2], $v ? [ $v ] : [ ], [ $dir ], $_[3], 1); } } dhcpd/config-osf10100644000567100000120000000032010655706244013663 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf pid_file=/etc/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/etc/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/config-slackware-linux0100644000567100000120000000033210655706244016127 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/var/state/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/config-irix0100644000567100000120000000032010655706244013766 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf pid_file=/etc/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/etc/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/log_parser.pl0100755000567100000120000000175310655706244014335 0ustar jcameronwheel# log_parser.pl # Functions for parsing this module's logs do 'dhcpd-lib.pl'; # parse_webmin_log(user, script, action, type, object, ¶ms) # Converts logged information from this module into human-readable form sub parse_webmin_log { local ($user, $script, $action, $type, $object, $p) = @_; if ($action eq 'apply') { return $text{'log_apply'}; } elsif ($action eq 'start') { return $text{'log_start'}; } elsif ($action eq 'stop') { return $text{'log_stop'}; } elsif ($type eq 'subnet' || $type eq 'shared' || $type eq 'host') { return &text("log_${action}_${type}", "".&html_escape($object).""); } elsif ($type eq 'group') { local @h = split(/,/, $object); return &text("log_${action}_group", scalar(@h)); } elsif ($type eq 'subnets' || $type eq 'hosts') { return &text("log_${action}_${type}", $object); } elsif ($type eq 'lease' && $action eq 'delete') { return &text('log_delete_lease', "".&html_escape($object).""); } else { return undef; } } dhcpd/config.info.tr0100644000567100000120000000036110655706244014400 0ustar jcameronwheeldhcpd_conf=DHCP sunucusu yaplandrma dosyas,0 dhcpd_path=DHCP sunucusu altrma dosyas,0 interfaces=DHCP'nin alaca arayzler,3,Otomatik pid_file=DHCP sunucusu pid dosyas yolu,0 lease_file=DHCP sunucusu istemci kaytlar dosyas,0 dhcpd/config.info.pl0100755000567100000120000000100110655706244014361 0ustar jcameronwheeldhcpd_conf=Plik konfiguracyjny serwera DHCP,0 dhcpd_path=Plik programu serwera DHCP,0 interfaces=Interfejsy, na ktrych ma pracowa DHCP,3,Automatycznie pid_file=cieka do pliku z numerem PID serwera DHCP,0 lease_file=Plik dzieraw serwera DHCP,0 lease_sort=Uporzdkuj dzierawy wg,1,0-Kolejnoci w pliku,1-Adresw IP,2-Nazw hostw hostnet_list=Poka podsieci i hosty jako,1,0-Ikony,1-List dhcpd_nocols=Ilo ikon w wierszu,0 lease_tz=Pokazuj czas dzierawy wg,1,0-GMT,1-Czasu lokalnego dhcpd/delete_lease.cgi0100755000567100000120000000171710655706245014743 0ustar jcameronwheel#!/usr/local/bin/perl # delete_lease.cgi # Delete one lease from the leases file require './dhcpd-lib.pl'; &ReadParse(); %access = &get_module_acl(); &error_setup("$text{'eacl_aviol'}"); if( !($access{'w_leases'} && $access{'r_leases'}) ) { &error("$text{'eacl_np'} $text{'eacl_pdl'}"); } &tokenize_file($config{'lease_file'}, \@tok); $i = $j = 0; while($i < @tok) { $lease = &parse_struct(\@tok, \$i, $j++, $config{'lease_file'}); if ($lease->{'index'} == $in{'idx'}) { # found the one to delete! &lock_file($config{'lease_file'}); $lref = &read_file_lines($config{'lease_file'}); splice(@$lref, $lease->{'line'}, $lease->{'eline'} - $lease->{'line'} + 1); &flush_file_lines(); &unlock_file($config{'lease_file'}); &restart_dhcpd(); &webmin_log("delete", "lease", $lease->{'values'}->[0]); last; } } &redirect("list_leases.cgi?all=$in{'all'}&network=$in{'network'}&netmask=$in{'netmask'}"); dhcpd/save_keys.cgi0100775000567100000120000000221510655706245014315 0ustar jcameronwheel#!/usr/bin/perl # $Id: save_keys.cgi,v 1.2 2005/04/16 14:30:21 jfranken Exp $ # File added 2005-04-15 by Johannes Franken # Distributed under the terms of the GNU General Public License, v2 or later # # * Save key directives to configfile require './dhcpd-lib.pl'; require './params-lib.pl'; &ReadParse(); &lock_file($config{'dhcpd_conf'}); $conf = &get_config(); $client = &get_parent_config(); @old = &find("key", $conf); for($i=0; defined($id = $in{"id_$i"}); $i++) { next if (!$id); $id =~ /^\S+$/ || &error(&text('keys_ekey', $id)); $in{"secret_$i"} =~ /^\S+$/ || &error(&text('keys_esecret', $id)); local $k = { 'name' => 'key', 'type' => 1 }; $k->{'members'} = $old[$i] ? $old[$i]->{'members'} : [ ]; $k->{'values'} = [ $id ]; &save_directive($k, "algorithm", [ { 'name' => 'algorithm', 'values' => [ $in{"alg_$i"} ] } ], 1, 1); &save_directive($k, "secret", [ { 'name' => 'secret', 'values' => [ $in{"secret_$i"} ] } ], 1, 1); push(@keys, $k); } &save_directive($client, 'key', \@keys, 0); &flush_file_lines(); &unlock_file($config{'dhcpd_conf'}); &webmin_log("keys", undef, undef, \%in); &redirect(""); dhcpd/edit_pool.cgi0100755000567100000120000000656610655706245014315 0ustar jcameronwheel#!/usr/local/bin/perl # edit_pool.cgi # Edit ranges and other options in an address pool require './dhcpd-lib.pl'; require './params-lib.pl'; &ReadParse(); $conf = &get_config(); if ($in{'sidx'} ne "") { $sha = $conf->[$in{'sidx'}]; $sub = $sha->{'members'}->[$in{'uidx'}]; } else { $sub = $conf->[$in{'uidx'}]; } # check acls %access = &get_module_acl(); &error_setup("$text{'eacl_aviol'}"); &error("$text{'eacl_np'} $text{'eacl_pss'}") if !&can('r',\%access,$sub); # display if ($sub->{'name'} eq 'subnet') { $desc = &text('ehost_subnet', $sub->{'values'}->[0], $sub->{'values'}->[2]); } else { $desc = &text('ehost_shared', $sub->{'values'}->[0]); } if ($in{'new'}) { &ui_print_header($desc, $text{'pool_create'}, ""); } else { &ui_print_header($desc, $text{'pool_edit'}, ""); $pool = $sub->{'members'}->[$in{'idx'}]; } print "
\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "
$text{'pool_header'}
\n"; @range = $pool ? &find("range", $pool->{'members'}) : (); print "\n"; print "\n"; @failover = $pool ? &find("failover", $pool->{'members'}) : (); local $peer = $failover[0]->{'values'}->[1]; print " \n", $peer; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; &display_params($pool->{'members'}, "pool"); print "
$text{'esub_arange'} \n"; for($i=0; $i<=@range; $i++) { $r = $range[$i]; local $dyn = ($r->{'values'}->[0] eq "dynamic-bootp"); printf " - \n", $r->{'values'}->[$dyn]; printf " \n", $r->{'values'}->[$dyn+1]; printf "\n", $dyn ? "checked" : ""; print "$text{'esub_dbooptpq'}
\n"; } print "
$text{'esub_fopeer'} \n"; printf " None\n", $peer ? "" : "checked"; printf "\n", $peer ? checked : ""; printf "
$text{'pool_allow'}$text{'pool_deny'}
\n"; print "\n"; if ($in{'new'}) { # Show create button for new subnet print "\n" if &can('rw',\%access,$sub); } else { # Show buttons for existing pool print "\n" if &can('rw',\%access,$sub); print "\n" if &can('rw',\%access,$sub); } print "
\n"; print "
\n"; &ui_print_footer("edit_subnet.cgi?sidx=$in{'sidx'}&idx=$in{'uidx'}", $text{'pool_return'}); dhcpd/save_pool.cgi0100755000567100000120000000512610655706245014315 0ustar jcameronwheel#!/usr/local/bin/perl # save_pool.cgi # Create, update or delete an address pool require './dhcpd-lib.pl'; require './params-lib.pl'; &ReadParse(); &lock_file($config{'dhcpd_conf'}); $conf = &get_config(); if ($in{'sidx'} ne "") { $sha = $conf->[$in{'sidx'}]; $sub = $sha->{'members'}->[$in{'uidx'}]; $indent = 2; } else { $sub = $conf->[$in{'uidx'}]; $indent = 1; } if ($in{'new'}) { $pool = { 'name' => 'pool', 'type' => 1, 'members' => [ ] }; } else { $pool = $sub->{'members'}->[$in{'idx'}]; } # check acls %access = &get_module_acl(); &error_setup("$text{'eacl_aviol'}"); &error("$text{'eacl_np'} $text{'eacl_pus'}") if !&can('rw', \%access, $sub); # save if ($in{'delete'}) { # Delete this pool from it's subnet &save_directive($sub, [ $pool ], [ ], 0); } else { # Validate inputs for($i=0; defined($low = $in{"range_low_$i"}); $i++) { next if (!$low); $hi = $in{"range_hi_$i"}; $dyn = $in{"range_dyn_$i"}; &check_ipaddress($low) || &error("'$low' $text{'ssub_invalidipr'}"); !$hi || &check_ipaddress($hi) || &error("'$hi' $text{'ssub_invalidipr'}"); $rng = { 'name' => 'range', 'values' => [ ($dyn ? "dynamic-bootp" : ()), $low, ($hi ? $hi : ()) ] }; push(@rng, $rng); } &save_directive($pool, "range", \@rng, 1); if($in{'failover_peer'}) { !&check_domain($in{'failover_peer'}) || &error("'$in{'failover_peer'}' $text{'ssub_invalidfopeer'}"); $in{'failover_peer'} = "\"$in{'failover_peer'}\""; push(@failover_peer, { 'name' => 'failover peer', 'values' => [ $in{'failover_peer'} ] }); } &save_directive($pool, "failover", \@failover_peer, 1); $in{'allow'} =~ s/\r//g; foreach $a (split(/\n/, $in{'allow'})) { push(@allow, { 'name' => 'allow', 'values' => [ $a ] }); } &save_directive($pool, "allow", \@allow, 1); $in{'deny'} =~ s/\r//g; foreach $a (split(/\n/, $in{'deny'})) { push(@deny, { 'name' => 'deny', 'values' => [ $a ] }); } &save_directive($pool, "deny", \@deny, 1); &parse_params($pool, 0); # Save or create the pool if ($in{'new'}) { &save_directive($sub, [ ], [ $pool ], $indent); } else { &save_directive($sub, [ $pool ], [ $pool ], $indent); } } &flush_file_lines(); &unlock_file($config{'dhcpd_conf'}); if ($sub->{'name'} eq 'subnet') { &webmin_log('modify', 'subnet', "$sub->{'values'}->[0]/$sub->{'values'}->[2]", \%in); &redirect("edit_subnet.cgi?sidx=$in{'sidx'}&idx=$in{'uidx'}"); } else { &webmin_log('modify', 'shared', $sub->{'values'}->[0], \%in); &redirect("edit_shared.cgi?idx=$in{'uidx'}"); } dhcpd/acl_security.pl0100775000567100000120000002347510655706245014676 0ustar jcameronwheel require 'dhcpd-lib.pl'; # acl_security_form(&options) # Output HTML for editing security options for the dhcpd module sub acl_security_form { print "\n$text{'acl_apply'} \n"; printf " $text{'yes'}\n", $_[0]->{'apply'} ? "checked" : ""; printf " $text{'no'}\n", $_[0]->{'apply'} ? "" : "checked"; print "\n"; print "\n$text{'acl_global'} \n"; printf " $text{'yes'}\n", $_[0]->{'global'} ? "checked" : ""; printf " $text{'no'}\n", $_[0]->{'global'} ? "" : "checked"; print "\n"; print "\n$text{'acl_r_leases'} \n"; printf " $text{'yes'}\n", $_[0]->{'r_leases'} ? "checked" : ""; printf " $text{'no'}\n", $_[0]->{'r_leases'} ? "" : "checked"; print "\n"; print "\n$text{'acl_w_leases'} \n"; printf " $text{'yes'}\n", $_[0]->{'w_leases'} ? "checked" : ""; printf " $text{'no'}\n", $_[0]->{'w_leases'} ? "" : "checked"; print "\n"; print "
\n"; # uniqs print "\n$text{'acl_uniq_hst'} \n"; printf " $text{'yes'}\n", $_[0]->{'uniq_hst'} ? "checked" : ""; printf " $text{'no'}\n", $_[0]->{'uniq_hst'} ? "" : "checked"; print "\n"; print "\n$text{'acl_uniq_sub'} \n"; printf " $text{'yes'}\n", $_[0]->{'uniq_sub'} ? "checked" : ""; printf " $text{'no'}\n", $_[0]->{'uniq_sub'} ? "" : "checked"; print "\n"; print "\n$text{'acl_uniq_sha'} \n"; printf " $text{'yes'}\n", $_[0]->{'uniq_sha'} ? "checked" : ""; printf " $text{'no'}\n", $_[0]->{'uniq_sha'} ? "" : "checked"; print "\n"; print "
\n"; # security mode settings print "\n$text{'acl_seclevel'} \n"; printf " 0\n", $_[0]->{'smode'} == 0 ? "checked" : ""; printf " 1\n", $_[0]->{'smode'} == 1 ? "checked" : ""; printf " 2\n", $_[0]->{'smode'} == 2 ? "checked" : ""; printf " 3\n", $_[0]->{'smode'} == 3 ? "checked" : ""; print "\n\n"; print "\n$text{'acl_hide'} \n"; printf " $text{'yes'}\n", $_[0]->{'hide'} == 1 ? "checked" : ""; printf " $text{'no'}\n", $_[0]->{'hide'} == 0 ? "checked" : ""; print "\n"; print "
\n"; # global acls print "\n$text{'acl_ahst'}\n"; print "\n"; printf " %s\n", $_[0]->{'c_hst'} ? "checked" : "", $text{"acl_c"}; printf " %s\n", $_[0]->{'r_hst'} ? "checked" : "", $text{"acl_r"}; printf " %s\n", $_[0]->{'w_hst'} ? "checked" : "", $text{"acl_w"}; print " \n"; print "\n$text{'acl_agrp'}\n"; print "\n"; printf " %s\n", $_[0]->{'c_grp'} ? "checked" : "", $text{"acl_c"}; printf " %s\n", $_[0]->{'r_grp'} ? "checked" : "", $text{"acl_r"}; printf " %s\n", $_[0]->{'w_grp'} ? "checked" : "", $text{"acl_w"}; print " \n"; print "\n$text{'acl_asub'}\n"; print "\n"; printf " %s\n", $_[0]->{'c_sub'} ? "checked" : "", $text{"acl_c"}; printf " %s\n", $_[0]->{'r_sub'} ? "checked" : "", $text{"acl_r"}; printf " %s\n", $_[0]->{'w_sub'} ? "checked" : "", $text{"acl_w"}; print " \n"; print "\n$text{'acl_asha'}\n"; print "\n"; printf " %s\n", $_[0]->{'c_sha'} ? "checked" : "", $text{"acl_c"}; printf " %s\n", $_[0]->{'r_sha'} ? "checked" : "", $text{"acl_r"}; printf " %s\n", $_[0]->{'w_sha'} ? "checked" : "", $text{"acl_w"}; print " \n"; print "
\n"; # per-subnet and per-host acls print "$text{'acl_per_sub_acls'} \n"; printf " $text{'yes'}\n", $_[0]->{'per_sub_acls'} ? "checked" : ""; printf " $text{'no'}\n", $_[0]->{'per_sub_acls'} ? "" : "checked"; print "\n"; print "$text{'acl_per_sha_acls'} \n"; printf " $text{'yes'}\n", $_[0]->{'per_sha_acls'} ? "checked" : ""; printf " $text{'no'}\n", $_[0]->{'per_sha_acls'} ? "" : "checked"; print "\n"; print "$text{'acl_per_hst_acls'} \n"; printf " $text{'yes'}\n", $_[0]->{'per_hst_acls'} ? "checked" : ""; printf " $text{'no'}\n", $_[0]->{'per_hst_acls'} ? "" : "checked"; print "\n"; print "$text{'acl_per_grp_acls'} \n"; printf " $text{'yes'}\n", $_[0]->{'per_grp_acls'} ? "checked" : ""; printf " $text{'no'}\n", $_[0]->{'per_grp_acls'} ? "" : "checked"; print "\n"; print "
\n"; print "\n$text{'acl_per_obj_acls'} \n"; &display_tree($_[0],&get_parent_config(),-2); } # acl_security_save(&options) # Parse the form for security options for the sendmail module sub acl_security_save { if ($in{'r_sub'} < $in{'w_sub'} || $in{'r_sha'} < $in{'w_sha'} || $in{'r_hst'} < $in{'w_hst'} || $in{'r_grp'} < $in{'w_grp'}) { $whatfailed = $text{'acl_err'}; &error($text{'acl_ernow'}); } $_[0]->{'apply'}=$in{'apply'}; $_[0]->{'global'}=$in{'global'}; $_[0]->{'r_leases'}=$in{'r_leases'}; $_[0]->{'w_leases'}=$in{'w_leases'}; $_[0]->{'uniq_hst'}=$in{'uniq_hst'}; $_[0]->{'uniq_sub'}=$in{'uniq_sub'}; $_[0]->{'uniq_sha'}=$in{'uniq_sha'}; $_[0]->{'smode'}=$in{'smode'}; $_[0]->{'hide'}=$in{'hide'}; $_[0]->{'per_hst_acls'}=$in{'per_hst_acls'}; $_[0]->{'per_sub_acls'}=$in{'per_sub_acls'}; $_[0]->{'per_grp_acls'}=$in{'per_grp_acls'}; $_[0]->{'per_sha_acls'}=$in{'per_sha_acls'}; $_[0]->{'c_sub'}=$in{'c_sub'}; $_[0]->{'r_sub'}=$in{'r_sub'}; $_[0]->{'w_sub'}=$in{'w_sub'}; $_[0]->{'c_sha'}=$in{'c_sha'}; $_[0]->{'r_sha'}=$in{'r_sha'}; $_[0]->{'w_sha'}=$in{'w_sha'}; $_[0]->{'c_hst'}=$in{'c_hst'}; $_[0]->{'r_hst'}=$in{'r_hst'}; $_[0]->{'w_hst'}=$in{'w_hst'}; $_[0]->{'c_grp'}=$in{'c_grp'}; $_[0]->{'r_grp'}=$in{'r_grp'}; $_[0]->{'w_grp'}=$in{'w_grp'}; foreach (keys %in) { $_[0]->{$_}=$in{$_} if /^ACL\w\w\w_/; } } # perm_to(permissions_string,obj_type,\%access,obj_name) # check per-object permissions: # permissions_string= 'rw' 'r' 'w' or you perm_to extend this system # obj_type= 'sub' for subnets, or 'hst' for hosts. sub perm_to { local $acl=$_[2]->{'ACL'.$_[1].'_'.$_[3]}; foreach (split //,$_[0]) { return 0 if index($acl,$_) == -1; } return 1; } # link config node names and acl categories %onames=qw(shared-network sha subnet sub group grp host hst); # display_tree(\%access,\%config_node,display_padding) sub display_tree { local ($acc, $node, $pad)=@_; if (defined($node->{'name'})) { &display_node($acc,$node,$pad) if exists $onames{$node->{'name'}} ; } $pad+=2; if($node->{'members'}) { # recursevly process this subtree foreach (@{$node->{'members'}}) { &display_tree($acc, $_, $pad); } } return 1; } # display_node(\%access, \%node, padding) sub display_node { local($acc,$node,$padding)=@_; local $name=$node->{'values'}->[0]; if (!$name && $node->{'name'} eq 'group') { # Name comes from option domain-name local @opts = &find("option", $node->{'members'}); local ($dn) = grep { $_->{'values'}->[0] eq 'domain-name' } @opts; if ($dn) { $name = $dn->{'values'}->[1]; } else { $name = $node->{'index'}; } } local $nodetype=$onames{$node->{'name'}}; local $aclname='ACL'.$nodetype.'_'.$name; print "\n"," "x$padding, " $node->{'name'}: $name\n"; if (($nodetype eq 'hst')||($nodetype eq 'sub')|| ($nodetype eq 'grp')||($nodetype eq 'sha')) { print "\n"; if($acc->{$aclname}) { printf " %s\n", !&perm_to('r',$nodetype,$acc,$name) ? "checked" : "", $text{"acl_na"}; printf " %s\n", &perm_to('r',$nodetype,$acc,$name) && !&perm_to('rw',$nodetype,$acc,$name) ? "checked" : "",$text{"acl_r1"}; printf " %s\n", &perm_to('rw',$nodetype,$acc,$name) ? "checked" : "", $text{"acl_rw"}; } else { printf " %s\n", $text{"acl_na"}; printf " %s\n", $text{"acl_r1"}; printf " %s\n", $text{"acl_rw"}; } print "\n"; } print "\n"; } 1;dhcpd/defaultacl0100664000567100000120000000032510655706245013664 0ustar jcameronwheelc_sub=1 r_sub=1 w_sub=1 c_sha=1 r_sha=1 w_sha=1 c_hst=1 r_hst=1 w_hst=1 c_grp=1 r_grp=1 w_grp=1 uniq_hst=0 uniq_sub=0 uniq_sha=0 smode=0 hide=1 per_hst_acls=0 per_sub_acls=0 r_leases=1 w_leases=1 global=1 apply=1 dhcpd/confirm_delete.cgi0100755000567100000120000000611010655706245015277 0ustar jcameronwheel#!/usr/local/bin/perl # save_shared.cgi # Update, create or delete a shared network require './dhcpd-lib.pl'; require './params-lib.pl'; &ReadParse(); $par = &get_parent_config(); foreach $i ($in{'sidx'}, $in{'uidx'}, $in{'idx'}) { if ($i ne "") { $par = $par->{'members'}->[$i]; } } # check acls %access = &get_module_acl(); &error_setup("$text{'eacl_aviol'}"); @host = &find("host", $par->{'members'}); @group = &find("group", $par->{'members'}); @subn = &find("subnet", $par->{'members'}); if ($in{'type'} == 0) { &error("$text{'eacl_np'} $text{'eacl_pdn'}") if !&can('rw', \%access, $par, 1); } elsif ($in{'type'} == 1) { &error("$text{'eacl_np'} $text{'eacl_pds'}") if !&can('rw', \%access, $par, 1); } elsif ($in{'type'} == 2) { &error("$text{'eacl_np'} $text{'eacl_pdg'}") if !&can('rw', \%access, $par, 1); } if ($in{'type'} == 0) { foreach $s (@subn) { &error("$text{'eacl_np'} $text{'eacl_pds'}") if !&can('rw', \%access, $s, 1); } } if ($in{'type'} < 2) { foreach $g (@group) { &error("$text{'eacl_np'} $text{'eacl_pdg'}") if !&can('rw', \%access, $g, 1); } } foreach $h (@host) { &error("$text{'eacl_np'} $text{'eacl_pdh'}") if !&can('rw', \%access, $h, 1); } if ($in{'type'} == 0) { $name = $par->{'values'}->[0]; } elsif ($in{'type'} == 1) { $name = $par->{'values'}->[0]."/".$par->{'values'}->[2]; } elsif ($in{'type'} == 2) { local $gm = @host; $name = &group_name($gm, $par); } else { &error($text{'cdel_eunknown'}); } &ui_print_header(undef, $text{'cdel_header'}, ""); @types1 = ($text{'cdel_shared1'}, $text{'cdel_subnet1'}, $text{'cdel_group1'}); @types2 = ($text{'cdel_shared2'}, $text{'cdel_subnet2'}, $text{'cdel_group2'}); print &text('cdel_txt', $types1[$in{'type'}], $name), "

\n"; if (@host > 0) { print ((@host > 1) ? $text{'cdel_hosts'} : $text{'cdel_host'}); print ": "; $start = 1; foreach $i (@host) { if ($start) { $start = 0; } else { print ", " } print $i->{'values'}->[0]; } print "
\n"; } if (@group > 0) { print ((@group > 1) ? $text{'cdel_groups'} : $text{'cdel_group'}); print ":"; $start = 1; foreach $i (@group) { local (@ghosts, $gm); if ($start) { $start = 0; } else { print ", " } @ghosts = &find("host", $i->{'members'}); $gm = @ghosts; print &group_name($gm, $i); } print "
\n"; } if (@subn > 0) { print ((@subn > 1) ? $text{'cdel_subnets'} : $text{'cdel_subnet'}); print ": "; $start = 1; foreach $i (@subn) { if ($start) { $start = 0; } else { print ", " } print $i->{'values'}->[0], "/", $i->{'values'}->[2]; } print "
\n"; } print "
\n"; print "\n"; print "\n"; print "\n"; print "", text('cdel_confirm', $types2[$in{'type'}]), "\ \ \ "; print "\n"; print "\n"; print "
\n"; &ui_print_footer("", $text{'cdel_return'}); dhcpd/help/0040755000567100000120000000000010655706245012566 5ustar jcameronwheeldhcpd/help/acl_info.pl.html0100664000567100000120000000431510655706245015642 0ustar jcameronwheel
System ACL-i dla DHCPd

CELE:

Zasadniczym celem systemu ACL-i jest zapewnienie silnego, elastycznego i rozszerzalnego mechanizmu kontroli dostpu do rnych obiektw w konfiguracji DHCPd. Obiektami tymi s sieci wspdzielone, podsieci, grupy hostw i hosty.

System ACL-i pozwala rwnie na kontrolowanie kilku innych waciwoci, takich jak: unikalno nazw obiektw, moliwo zastosowania zmienionej konfiguracji, przegldanie i kasowanie dzieraw DHCP.

ZASADY:

Plik konfiguracyjny DHCPd posiada struktur drzewiast. Kady wze tego drzewa reprezentuje sob konfiguracj pojedyczego obiektu DHCP (rys. 0).

System ACL-i posiada dwa poziomy zabezpiecze:

  • poziom oglny: odczyt, zapis, tworzenie;
  • dla poszczeglnych obiektw: odczyt, zapis.
Uprawnienia oglne s okrelone dla kadego typu obiektw (hostw, grup, podsieci, sieci wspdzielonych) i dotycz operacji na wszystkich obiektach danego typu:
  • oglne uprawnienia do tworzenia,
  • oglne uprawnienia do odczytu,
  • oglne uprawnienia do zapisu.
Uprawnienia dla poszczeglnych obiektw umoliwiaj kontrol dostpu w bardziej elastyczny sposb. ACL-e uprawnie dla poszczeglnych obiektw istniej dla kadego pojedyczego obiektu. Obecnie ACL-e dla poszczeglnych obiektw zaimplementowane s jedynie dla hostw i podsieci:
  • uprawnienia do zapisu dla poszczeglnych obiektw,
  • uprawnienia do odczytu dla poszczeglnych obiektw.
System ACL-i moe dziaa przy czterech rnych poziomach (trybach) zabezpiecze.

Drzewo konfiguracji DHCPd, poziom zabezpiecze 0, sprawdzanie uprawnie dla podsieci X Drzewo konfiguracji DHCPd, poziom zabezpiecze 1, sprawdzanie uprawnie dla podsieci X Drzewo konfiguracji DHCPd, poziom zabezpiecze 2, sprawdzanie uprawnie dla podsieci X Drzewo konfiguracji DHCPd, poziom zabezpiecze 3, sprawdzanie uprawnie dla podsieci X dhcpd/help/acl.html0100664000567100000120000000433410655706245014216 0ustar jcameronwheel

DHCPD ACL subsystem

TARGETS:

    The main goals of acl subsystem is providing a powerfull, flexible and extendable mechanism for access control of different objects in dhcpd configuration. This objects are shared networks, subnets, groups of hosts and hosts.
    Also acl subsystem allows you to control some other features, such as: unique object names, applying of changed configuration, viewing and deletion of dhcp leasures.

CONCEPTS:

    Dhcpd configuration file we can show as a tree structure. Each node of this tree represents a configuration of different dhcp objects (fig. 0).

    Acl subsystem have 2 levels of permissions:

  • global: read, write, create;
  • per-object: read, write.
    Global permissions exists for every type of objects (hosts, groups, subnets, shared networks) and controls operations with a whole object set of given type.
Global create
Global read
Global write
    Per-object permissions give you a more flexible way of access control. Per-object permissions acl exists for every object individual object. Today only hosts and subnets per-object acls are impemented.
Per-object read
Per-object write
    Acl subsystem can operate in 4 different security levels (or modes).
dhcpd configuration tree, security level 0, check subnetX permissions
 

dhcpd configuration tree, security level 1, check subnetX permissions

dhcpd configuration tree, security level 2, check subnetX permissions

dhcpd configuration tree, security level 3, check subnetX permissions

USER NOTES:

 

DEVELOPER NOTES:

dhcpd/help/acl_info.html0100664000567100000120000000352710655706245015234 0ustar jcameronwheel
DHCPd ACL subsystem

TARGETS:

The main goal of the ACL subsystem is providing a powerfull, flexible and extendable access control mechanism for different objects in the DHCPd configuration. These objects are shared networks, subnets, groups of hosts and hosts.

Also the ACL subsystem allows you to control some other features, such as: unique object names, applying of changed configuration, viewing and deletion of DHCP leases.

CONCEPTS:

We can show the DHCPd configuration file as a tree structure. Each node of this tree represents configuration of a different DHCP object (fig. 0).

The ACL subsystem supports two permission levels:

  • global: read, write, create;
  • per-object: read, write.
Global permissions exist for each type of object (hosts, groups, subnets, shared networks) and control operations with a whole object set of given type:
  • Global create
  • Global read
  • Global write
Per-object permissions give you a more flexible way of access control. Per-object permissions ACL exist for every individual object. Today per-object ACLs are impemented only for hosts and subnets:
  • Per-object read
  • Per-object write
The ACL subsystem can operate in four different security levels (or modes).

DHCPd configuration tree, security level 0, check subnetX permissions DHCPd configuration tree, security level 1, check subnetX permissions DHCPd configuration tree, security level 2, check subnetX permissions DHCPd configuration tree, security level 3, check subnetX permissions dhcpd/help/acl.ca.html0100644000567100000120000000464610655706245014604 0ustar jcameronwheel

Subsistema ACL DHCPD

OBJECTIUS:

    Els objectius principals del subsistema acl sn subministrar un mecanisme de control d'accs potent, flexible y extensible de diferents objectes amb configuraci dhcpd. Aquests objectes sn xarxes compartides, subxarxes, grups de hosts i hosts.
    El subsistema acl permet controlar algunes altres caracterstiques, com ara: noms nics d'objecte, aplicaci de la configuraci modificada, visualitzaci i supressi de leases dhcpd

CONCEPTES:

    Podem veure el fitxer de configuraci dhcpd com una estructura d'arbre. Cada node d'aquest arbre representa una configuraci d'objectes dhcp diferents (fig. 0).

    El subsistema acl t 2 nivells de permisos:

  • global: lectura, escriptura, creaci;
  • per objecte: lectura, escriptura.
    Existeixen permisos globals per a cada tipus d'objecte (hosts, grups, subxarxes, xarxes compartides) i controlen les operacions d'un conjunt sencer d'un tipus donat.
Creaci global
Lectura global
Escriptura global
    Els permisos per objecte donen una forma ms flexible de control d'accs. Existeixen permisos acl per objecte per cada objecte individual. Per ara, noms estan implementades les acls per objecte de hosts i subxarxes.
Lectura per objecte
Escriptura per objecte
    El subsistema acl pot operar en 4 nivells diferents de seguretat (o modes).
arbre de configuraci dhcpd, nivell de seguretat 0, comprovaci de permisos subnetX
 

arbre de configuraci dhcpd, nivell de seguretat 1, comprovaci de permisos subnetX

arbre de configuraci dhcpd, nivell de seguretat 2, comprovaci de permisos subnetX

arbre de configuraci dhcpd, nivell de seguretat 3, comprovaci de permisos subnetX

NOTES D'USUARI:

 

NODES DE DESENVOLUPAMENT:

dhcpd/help/acl_info.ca.html0100644000567100000120000000402410655706245015605 0ustar jcameronwheel
Subsistema ACL DHCPd

OBJECTIUS:

El principal objectiu del sistema ACL s el de subministrar un mecanisme de control d'accs potent, flexible i extensible per a diferents objectes de la configuraci DHCPd. Aquests objectes sn xarxes compartides, subxarxes, grups de hosts i hosts.

El subsistema ACL tamb permet controlar algunes altres caracterstiques, tals com: noms nics d'objectes, aplicaci de la configuraci modificada, i visualitzaci i edici de leases DHCP.


CONCEPTES: Podem veure el fitxer de configuraci DHCPd com una estructura d'arbre. Cada node d'aquest arbre representa la configuraci d'un objecte DHCP diferent (fig. 0).

El subsistema ACL suporta dos nivells de permisos:

  • global: lectura, escriptura, creaci.
  • per objecte: lectura, escriptura.
Existeixen permisos globals per a cada tipus d'objecte (hosts, grups, subxarxes, xarxes compartides) i controlen les operacions d'un conjunt sencer d'un tipus donat.
  • Creaci global
  • Lectura global
  • Escriptura global
Els permisos per objecte donen una forma ms flexible de control d'accs. Existeixen permisos acl per objecte per cada objecte individual. Per ara, noms estan implementades les acls per objecte de hosts i subxarxes.
  • Lectura per objecte
  • Escriptura per objecte
El subsistema acl pot operar en 4 nivells diferents de seguretat (o modes).

arbre de configuraci DHCPd, nivell de seguretat 0, comprovaci de permisos subnetX arbre de configuraci DHCPd, nivell de seguretat 1, comprovaci de permisos subnetX arbre de configuraci DHCPd, nivell de seguretat 2, comprovaci de permisos subnetX arbre de configuraci DHCPd, nivell de seguretat 3, comprovaci de permisos subnetX dhcpd/help/acl_info.nl.html0100644000567100000120000000416310655706245015637 0ustar jcameronwheel

DHCPd ACL subsysteem

DOELSTELLING:

Het belangrijkste doel van het DHCPd ACL subsysteem is het bieden van een krachtig, flexibel en gemakkelijk uit te breiden besturingsmechanisme voor verscheidene objecten in de DHCPd configuratie. Deze objecten betreffen: gedeelde netwerken (shared networks), subnetten, groepen hosts en individuele hosts.

Daarnaast maakt het ACL subsysteem het mogelijk om andere voorzieningen aan te sturen zoals: unieke objectnamen en het aanbrengen van wijzigingen aan de configuratie, het bekijken en verwijderen van DHCP leases.

CONCEPTEN:

We kunnen ons de DHCP configuratie voorstellen als een boomstruktuur. Elk knooppunt in de boomstruktuur stelt een configuratie voor van een ander DHCP object (fig. 0).

Het ACL subsysteem ondersteunt twee toegangsniveaus:

  • globaal: lezen, schrijven en aanmaken;
  • per-object: lezen en schrijven.
Globale toegang bestaat voor elk type object (hosts, groepen, subnetten, gedeelde netwerken) en beheren operaties met een heel object van een gegeven type:
  • Globaal aanmaken
  • Globaal lezen
  • Globaal schrijven
Toegang per object biedt een meer flexibele manier om toegang te regelen. Een ACL voor toegang per object bestaat voor ieder individueel object. Op dit moment zijn ACL's per object alleen gemplementeerd voor hosts en subnetten:
  • Per-object lezen
  • Per-object schrijven
Het ACL subsysteem kan werken met vier verschillende beveiligingsniveaus (of modes).

DHCPd configuratieboom, beveiligingsniveau 0, check subnetX toegang DHCPd configuratieboom, beveiligingsniveau 1, check subnetX toegang DHCPd configuratieboom, beveiligingsniveau 2, check subnetX toegang DHCPd configuratieboom, beveiligingsniveau 3, check subnetX toegang dhcpd/help/acl.es.html0100644000567100000120000000501610655706245014620 0ustar jcameronwheel

Subsistema de ACL de DHCPD

OBJETIVOS:

    Los principales objetivos del subsistema de ACL es proporcionar un mecanismo de control de acceso potente, flexible y extendible, a diferentes objetos de la configuracin de dhcpd. Estos objetos son redes compartidas, subredes, grupos de mquinas y mquinas.
    El subsistema de ACL tambin le permite controlar algunas otras caractersticas, tales como: nombres nicos de objeto, aplicar los cambios de configuracin, ver y borrar concesiones de dhcpd.

CONCEPTOS:

    Se puede considerar el fichero de configuracin de dhcpd como una estructura en rbol. Cada nodo de este rbol representa una configuracin de diferentes objetos DHCP (fig. 0)

    El subsistema de ACL tiene dos niveles de permisos:

  • global: lectura, escritura, creacin.
  • por objeto: lectura, escritura.
    Existen permisos globales para cada tipo de objetos (mquinas, grupos, subredes, redes compartidas) y controlan las operaciones de todo un conjunto de objetos del mismo tipo:
Creacin global
Lectura global
Escritura global
    Los permisos por objeto proporcionan un mecanismo de control de acceso ms flexible. Existen ACL de los permisos por objeto para cada objeto individual. En la actualidad slo estn implementadas las ACL por objeto para mquinas y subredes:
Lectura por objeto
Escritura por objeto
    El subsistema de ACL puede funcionar en 4 diferentes niveles (o modos) de seguridad:
rbol de configuracin de dhcpd, nivel de seguridad 0, comprobar los permisos de subnetX
 

rbol de configuracin de dhcpd, nivel de seguridad 1, comprobar los permisos de subnetX

rbol de configuracin de dhcpd, nivel de seguridad 2, comprobar los permisos de subnetX

rbol de configuracin de dhcpd, nivel de seguridad 3, comprobar los permisos de dhcpd

NOTAS DE USUARIO:

 

NOTAS DE DESARROLLADOR:

dhcpd/help/acl_info.es.html0100644000567100000120000000415010655706245015631 0ustar jcameronwheel
Subsistema de ACL de DHCPd

OBJETIVOS:

Los principales objetivos del subsistema de ACL es proporcionar un mecanismo de control de acceso potente, flexible y extendible, a diferentes objetos de la configuracin de dhcpd. Estos objetos son redes compartidas, subredes, grupos de mquinas y mquinas.

El subsistema de ACL tambin le permite controlar algunas otras caractersticas, tales como: nombres nicos de objeto, aplicar los cambios de configuracin, ver y borrar concesiones de dhcpd.

CONCEPTOS:

Se puede considerar el fichero de configuracin de dhcpd como una estructura en rbol. Cada nodo de este rbol representa una configuracin de diferentes objetos DHCP (fig. 0)

El subsistema de ACL tiene dos niveles de permisos:

  • global: lectura, escritura, creacin.
  • por objeto: lectura, escritura.
Existen permisos globales para cada tipo de objetos (mquinas, grupos, subredes, redes compartidas) y controlan las operaciones de todo un conjunto de objetos del mismo tipo:
  • Creacin global
  • Lectura global
  • Escritura global
Los permisos por objeto proporcionan un mecanismo de control de acceso ms flexible. Existen ACL de los permisos por objeto para cada objeto individual. En la actualidad slo estn implementadas las ACL porobjeto para mquinas y subredes:
  • Lectura por objeto
  • Escritura por objeto
El subsistema de ACL puede funcionar en 4 diferentes niveles (o modos) de seguridad:

rbol de configuracin de dhcpd, nivel de
seguridad 0, comprobar los permisos de subnetX rbol de configuracin de dhcpd, nivel de
seguridad 1, comprobar los permisos de subnetX rbol de configuracin de dhcpd, nivel de
seguridad 2, comprobar los permisos de subnetX rbol de configuracin de dhcpd, nivel de
seguridad 3, comprobar los permisos de subnetX dhcpd/help/acl.pt_BR.html0100755000567100000120000000463510655706245015230 0ustar jcameronwheel

Subsistema ACL do DHCPD

OBJETIVOS:

    A finalidade principal do subsistema ACL prover um poderoso, flexvel e expansvel mecanismo para controle de acesso aos diferentes objetos na configurao do DHCP. Estes objetos so redes, subredes, grupos de computadores e computadores.
    Alm disso, o subsistema acl permite a voc controlar algumas outras caractersticas, tais como: nomes nicos de objetos, aplicar mudanas na configurao, visualizar e apagar leases do dhcp.

CONCEITOS:

    O arquivo de configurao do dhcpd ns podemos mostrar como uma estrutura em rvore. Cada n da rvore representa a configurao de um diferente tipo de objeto do dhcp (fig. 0).

    Subsistema ACL tem 2 nveis de permisses:

  • global: ler, escrever, criar;
  • por-objeto: leitura, escrita.
    Permisses globais existem para cada tipo de objeto (computador, grupos, subredes, redes) e operaes de controle com um conjunto de objetos de um determinado tipo.
Global criar
Global ler
Global escrever
    Permisses Por-objeto permitem a voc um controle de acesso mais flexvel. Elas existem para cada objeto individual. Hoje apenas so implementados acls por-objetos para computadores e subredes.
Por-objeto ler
Por-objeto escrever
    Subsistema ACL pode operar em 4 diferentes nveis de segurana (ou modos).
rvore de configurao do dhcpd, nvel de
segurana 0, verifique permisses da subrede X
 

rvore de configurao do dhcpd, nvel de
segurana 1, verifique permisses da subrede X

rvore de configurao do dhcpd, nvel de
segurana 2, verifique permisses da subrede X

rvore de configurao do dhcpd, nvel de
segurana 3, verifique permisses da subrede X

NOTAS DOS USURIOS:

 

NOTAS DOS DESENVOLVEDORES:

dhcpd/help/acl.ja_JP.euc.html0100755000567100000120000000451410655706245015754 0ustar jcameronwheel

DHCPD ACL ֥ƥ

å:

    ACL֥ƥ϶ϳĽdzĥǽ 浡dhcpdΤޤޤʥ֥Ȥ󶡤ŪǺƤޤ ǤΥ֥ȤȤϡͭͥåȥ֥ͥåȡۥȤΥ롼סƥۥȤǤ
    ACL֥ƥϥˡʥ֥̾ѹսŬѡ dhcp꡼ɽȼεǽ椹뤳ȤǤޤ

󥻥ץ:

    Dhcpdեϼޤɽޤ Υĥ꡼Τ줾ΥΡɤϤ줾ۤʤädhcp֥Ȥɽޤ(fig. 0)

    ACL֥ƥϣʳΥѡߥåäƤޤ

  • Х:ɤ߼ꡢ񤭹ߡ;
  • ֥:ɤ߼ꡢ񤭹
    ХѡߥåϰʲΥ֥Ȥ˱ƶޤ (ۥȡ롼ס֥ͥåȡͭͥåȥ)ڤ Ϳ줿ƤΥ֥ȥåȤ椷ޤ
Хʺ
Хɤ߼
Хʽ񤭹
    ֥ΥѡߥåϹ˽ʥ󶡤ޤ ֥Υѡߥå ACL ƤθġΥ֥Ȥ¸ߤޤ ߡۥȵڤӥ֥ͥåȤΥ֥ACLΤ߼Ƥޤ
֥ɤ߼
֥ν񤭹
    Acl֥ƥ4Ĥΰۤʤ륻ƥ٥(ϥ⡼)Ǥޤ
dhcpd ĥ꡼, ƥ٥ 0, ֥ͥåXΥѡߥåǧƤ
 

dhcpd configuration tree, security level 1, check subnetX permissions

dhcpd configuration tree, security level 2, check subnetX permissions

dhcpd configuration tree, security level 3, check subnetX permissions

USER NOTES:

 

DEVELOPER NOTES:

dhcpd/help/acl.ja_JP.UTF-8.html0100664000567100000120000000564310655706245016006 0ustar jcameronwheel

DHCPD ACL サブシステム

ターゲット:

    ACLサブシステムは強力且つ柔軟で拡張可能な アクセス制御機構をdhcpdの設定内のさまざまなオブジェクトに提供する目的で作成されています。 ここでのオブジェクトとは、共有ネットワーク、サブネット、ホストのグループ、そしてホストです。
    ACLサブシステムはユニークなオブジェクト名や設定変更箇所の適用、 dhcpリースの表示と取消等の機能を制御することもできます。

コンセプト:

    Dhcpd設定ファイルは樹型図で表示します。 このツリーのそれぞれのノードはそれぞれ異なったdhcpオブジェクトを表します。(fig. 0)

    ACLサブシステムは2段階のパーミッションを持っています。

  • グローバル:読み取り、書き込み、作成;
  • オブジェクト毎:読み取り、書き込み
    グローバルパーミッションは以下の全種類のオブジェクトに影響します。 (ホスト、グループ、サブネット、共有ネットワーク)及び 与えられた種類の全てのオブジェクトセットを制御します。
グローバルな作成
グローバルな読み取り
グローバルな書き込み
    オブジェクト毎のパーミッションは更に柔軟なアクセス制御を提供します。 オブジェクト毎のパーミッション ACL は全ての個々のオブジェクトに存在します。 現在、ホスト及びサブネットのオブジェクト毎のACLのみ実装されています。
オブジェクト毎の読み取り
オブジェクト毎の書き込み
    Aclサブシステムは4つの異なるセキュリティレベル(又はモード)を操作できます。
dhcpd 設定ツリー, セキュリティレベル 0, サブネットXのパーミッションを確認してください
 

dhcpd configuration tree, security level 1, check subnetX permissions

dhcpd configuration tree, security level 2, check subnetX permissions

dhcpd configuration tree, security level 3, check subnetX permissions

USER NOTES:

 

DEVELOPER NOTES:

dhcpd/config.info.ru_RU0100664000567100000120000000132110655706245015007 0ustar jcameronwheeldhcpd_conf= DHCP,0 lease_file= DHCP,0 pid_file= PID DHCP,0 dhcpd_path= DHCP,0 interfaces_type= ,4,redhat-Redhat,mandrake-Mandrake,suse-SuSE,debian-Debian,caldera-Caldera,-Webmin restart_cmd= ,3, start_cmd= DHCP,3, line1= ,11 line2= ,11 lease_tz= ,1,0-GMT,1- dhcpd_nocols= ,0 hostnet_list= ,1,0-,1- lease_sort= ,1,0- ,1- IP,2- dhcpd/delete_all.cgi0100755000567100000120000000414610655706245014421 0ustar jcameronwheel#!/usr/local/bin/perl # delete_all.cgi # Delete a subnet, shared network or host require './dhcpd-lib.pl'; require './params-lib.pl'; &ReadParse(); if ($in{'cancel'}) { &redirect(""); exit; } &lock_file($config{'dhcpd_conf'}); $par = &get_parent_config(); foreach $i ($in{'sidx'}, $in{'uidx'}) { if ($i ne "") { $par = $par->{'members'}->[$i]; } } $parconf = $par->{'members'}; $to_del = $parconf->[$in{'idx'}]; @host = &find("host", $to_del->{'members'}); @group = &find("group", $to_del->{'members'}); @subn = &find("subnet", $to_del->{'members'}); # check acls %access = &get_module_acl(); &error_setup("$text{'eacl_aviol'}"); if ($to_del->{'name'} eq "group") { &error("$text{'eacl_np'} $text{'eacl_pdg'}") if !&can('rw', \%access, $to_del, 1); } elsif ($to_del->{'name'} eq "subnet") { $type = 'sub'; &error("$text{'eacl_np'} $text{'eacl_pds'}") if !&can('rw', \%access, $to_del, 1); foreach $g (@group) { &error("$text{'eacl_np'} $text{'eacl_pdg'}") if !&can('rw', \%access, $g, 1); } } elsif ($to_del->{'name'} eq "shared-network") { &error("$text{'eacl_np'} $text{'eacl_pdn'}") if !&can('rw', \%access, $to_del, 1); foreach $s (@subn) { &error("$text{'eacl_np'} $text{'eacl_pds'}") if !&can('rw', \%access, $s, 1); } foreach $g (@group) { &error("$text{'eacl_np'} $text{'eacl_pdg'}") if !&can('rw', \%access, $g, 1); } } else { &error($text{'cdel_eunknown'}); } foreach $h (@host) { &error("$text{'eacl_np'} $text{'eacl_pdh'}") if !&can('rw', \%access, $h, 1); } if ($type) { &drop_dhcpd_acl($type, \%access, $to_del); } &save_directive($par, [ $to_del ], [ ], 0); &flush_file_lines(); &unlock_file($config{'dhcpd_conf'}); if ($to_del->{'name'} eq "group") { @count = &find("host", $group->{'members'}); &webmin_log('delete', 'group', join(",", map { $_->{'values'}->[0] } @count), \%in); } elsif ($to_del->{'name'} eq "subnet") { &webmin_log('delete', 'subnet', "$sub->{'values'}->[0]/$sub->{'values'}->[2]", \%in); } elsif ($to_del->{'name'} eq "shared") { &webmin_log('delete', 'shared', $sha->{'values'}->[0], \%in); } &redirect(""); dhcpd/config-open-linux-3.1e0100644000567100000120000000054710655706245015571 0ustar jcameronwheeldhcpd_conf=/etc/dhcp/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/etc/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 start_cmd=/etc/rc.d/init.d/dhcpd start stop_cmd=/etc/rc.d/init.d/dhcpd stop restart_cmd=/etc/rc.d/init.d/dhcpd reload interfaces_type=caldera show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/stop.cgi0100755000567100000120000000055710655706245013316 0ustar jcameronwheel#!/usr/local/bin/perl # Attempt to stop dhcpd require './dhcpd-lib.pl'; %access = &get_module_acl(); &error_setup("$text{'eacl_aviol'}"); &error("$text{'eacl_np'} $text{'eacl_papply'}") unless $access{'apply'}; $whatfailed = $text{'stop_err'}; $err = &stop_dhcpd(); &error($err) if ($err); &webmin_log("stop"); &redirect(""); dhcpd/config-suse-linux-9.2-*0100644000567100000120000000055210655706245015574 0ustar jcameronwheelstart_cmd=/etc/init.d/dhcpd start stop_cmd=/etc/init.d/dhcpd stop restart_cmd=/etc/init.d/dhcpd restart dhcpd_conf=/etc/dhcpd.conf pid_file=/var/lib/dhcp/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/var/lib/dhcp/db/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 interfaces_type=suse show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/config-mandrake-linux0100644000567100000120000000050310655706245015736 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/var/lib/dhcp/dhcpd.leases lease_sort=0 start_cmd=/etc/init.d/dhcpd start stop_cmd=/etc/init.d/dhcpd stop restart_cmd=/etc/init.d/dhcpd reload interfaces_type=mandrake show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/edit_zones.cgi0100775000567100000120000000447610655706245014502 0ustar jcameronwheel#!/usr/bin/perl # $Id: edit_zones.cgi,v 1.4 2005/04/16 14:30:21 jfranken Exp $ # File added 2005-04-15 by Johannes Franken # Distributed under the terms of the GNU General Public License, v2 or later # # * Edit or create zone directives (pass to save_zones.cgi) require './dhcpd-lib.pl'; require './params-lib.pl'; &ReadParse(); $conf = &get_config(); $in{'new'} || (($par, $zone) = &get_branch('zone')); $sconf = $zone->{'members'}; # display &ui_print_header(undef, $in{'new'} ? $text{'zone_crheader'} : $text{'zone_eheader'}, ""); print "
\n"; print "\n"; print "\n"; print "\n"; print "
$text{'zone_tabhdr'}
\n"; print "\n"; printf "\n", $zone ? &html_escape($zone->{'comment'}) : ""; print "\n"; printf "\n", $zone ? &html_escape($zone->{'value'}) : ""; print "\n"; printf "\n", $zone ? &html_escape(find_value("primary",$zone->{'members'})) : ""; print "\n"; @keys = sort { $a->{'values'}->[0] cmp $b->{'values'}->[0] } (find("key", $conf)); print "\n"; print "\n"; print "
$text{'zone_desc'}
$text{'zone_name'}
$text{'zone_primary'}
$text{'zone_tsigkey'}
\n"; print "\n"; if (!$in{'new'}) { print "\n"; print "\n"; print "\n"; } else { print "\n"; } print "
\n"; print "
\n"; print "
\n"; &ui_print_footer("", $text{'zone_return'}); dhcpd/config-netbsd0100644000567100000120000000032710655706245014302 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/var/db/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/config-msc-linux0100644000567100000120000000033710655706245014743 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/var/state/dhcp/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/config.info.ca0100644000567100000120000000242010655706245014335 0ustar jcameronwheelline1=Opcions configurables,11 lease_sort=Ordena els prstecs per,1,0-L'ordre del fitxer,1-Adrea IP,2-Nom de Host hostnet_list=Mostra les subxarxes i hosts com,1,0-Icones,1-Llista dhcpd_nocols=Icones per fila,0,5 lease_tz=Mostra els temps de prstec en,1,0-GMT,1-Hora local show_ip=Mostra les adreces IP dels hosts,1,1-S,0-No show_mac=Mostra les adreces MAC dels hosts,1,1-S,0-No group_name=Mostra els noms de grup com,1,1-Opci domini-nom,0-Nom o recompte de membres,2-Descripci desc_name=Mostra les descripcions dels altres objectes en lloc dels noms,1,1-S,0-No display_max=Nombre mxim de subxarxes i hosts a mostrar,3,Illimitat line2=Configuraci del sistema,11 dhcpd_conf=Fitxer de configuraci del servidor DHCP,0 dhcpd_path=Executable servidor DHCP,0 start_cmd=Ordre per iniciar el servidor DHCP,3,Executa l'executable del servidor restart_cmd=Ordre per aplicar la configuraci,3,Mata'l i reinicia'l stop_cmd=Ordre per aturar el servidor DHCP,3,Mata el procs pid_file=Cam del fitxer de PID del servidor DHCP,3,Cap lease_file=Fitxer de lease del servidor DHCP,0 interfaces_type=Tipus de fitxer d'interfcie,4,redhat-Redhat,mandrake-Mandrake,suse-SuSE,debian-Debian,caldera-Caldera,gentoo-Gentoo,-Webmin version=Versi del servidor DHCP,3,Troba-la automticament dhcpd/edit_keys.cgi0100775000567100000120000000325410655706245014310 0ustar jcameronwheel#!/usr/bin/perl # $Id: edit_keys.cgi,v 1.2 2005/04/16 14:30:21 jfranken Exp $ # File added 2005-04-15 by Johannes Franken # Distributed under the terms of the GNU General Public License, v2 or later # # * Display TSIG keys for updates to DNS servers # require './dhcpd-lib.pl'; require './params-lib.pl'; &ReadParse(); $conf = &get_config(); @keys = ( &find("key", $conf), { } ); # check acls # %access = &get_module_acl(); # &error_setup("$text{'eacl_aviol'}"); # &error("$text{'eacl_np'} $text{'eacl_pss'}") if !&can('r',\%access,$sub); if ($in{'new'}) { &ui_print_header($desc, $text{'keys_create'}, ""); } else { &ui_print_header($desc, $text{'keys_edit'}, ""); $key = $sub->{'members'}->[$in{'idx'}]; } print "
\n"; print "\n"; print " ", " ", "\n"; for($i=0; $i<@keys; $i++) { $k = $keys[$i]; print "\n"; printf "\n", $k->{'value'}; @algs = ( "hmac-md5" ); $alg = &find_value("algorithm", $k->{'members'}); print "\n"; printf "\n", &find_value("secret", $k->{'members'}); } print "
$text{'keys_id'}$text{'keys_alg'}$text{'keys_secret'}
\n"; print "
\n"; &ui_print_footer("", $text{'index_return'}); dhcpd/save_zones.cgi0100775000567100000120000000327510655706245014507 0ustar jcameronwheel#!/usr/bin/perl # $Id: save_zones.cgi,v 1.2 2005/04/16 14:30:21 jfranken Exp $ # File added 2005-04-15 by Johannes Franken # Distributed under the terms of the GNU General Public License, v2 or later # # * Save zone directives to configfile require './dhcpd-lib.pl'; require './params-lib.pl'; &ReadParse(); &lock_file($config{'dhcpd_conf'}); unless ($in{'new'}){ # on change or delete # Read current zone data from config file ($par, $zone, $indent) = &get_branch('zone'); } # Get values from CGI Parameters $zonename=$in{'name'}; $zonename.='.' unless ($zonename=~m/\.$/); # Add trailing dot to zone name $primary=$in{'primary'}; $key=$in{'key'}; # Prepare data structure local $oldzone=$zone; # backup (neccessary if name changes) local $zone = { 'values' => [ $zonename ], 'comment' => $in{'desc'}, 'name' => 'zone', 'type' => 1 }; push (@primarys, { 'name' => 'primary', 'values' => [ $primary ] }); push (@keys, { 'name' => 'key', 'values' => [ $key ] }); # Save data structure to config file if ($in{'delete'}) { # Delete this zone &save_directive($par, [ $oldzone ], [ ], 0); } else { # if not delete if ($in{'new'}) { # Add this zone &save_directive(&get_parent_config(), [ ], [ $zone ], 0); } else { # Update zone &save_directive($par, [ $oldzone ], [ ], 0); # delete old zone &save_directive($par, [ $oldzone ], [ $zone ], 0); # add new zone } # Add Details to that zone &save_directive($zone, "primary", \@primarys, 1); &save_directive($zone, "key", \@keys, 1); } &flush_file_lines(); &unlock_file($config{'dhcpd_conf'}); &webmin_log($in{'delete'} ? 'delete' : $in{'new'} ? 'create' : 'modify', 'shared', $zone->{'values'}->[0], \%in); &redirect(""); dhcpd/dhcpd-lib.pl.bak0100755000567100000120000004163710655706245014570 0ustar jcameronwheel# dhcpd-lib.pl # Functions for parsing the DHCPD config file do '../web-lib.pl'; &init_config(); # get_parent_config() # Returns a dummy parent structure for the DHCP config sub get_parent_config { return $get_parent_config_cache if ($get_parent_config_cache); return ($get_parent_config_cache = { 'file' => $config{'dhcpd_conf'}, 'members' => &get_config(), 'line' => -1, 'eline' => $get_config_lines } ); } # get_config() # Parses the DHCPD config file into a data structure sub get_config { return \@get_config_cache if (@get_config_cache); local(@tok, @rv, $i, $t, $j, $ifile, @inc, $str); $get_config_lines = &tokenize_file($config{'dhcpd_conf'}, \@tok); $i = 0; $j = 0; while($i < @tok) { $str = &parse_struct(\@tok, \$i, $j++, $config{'dhcpd_conf'}); if ($str) { push(@rv, $str); } } @get_config_cache = @rv; return \@get_config_cache; } # tokenize_file(file, &tokens) sub tokenize_file { local $lines = 0; local ($line, $cmode); open(FILE, $_[0]); while($line = ) { # strip comments $line =~ s/\r|\n//g; $line =~ s/^([^"#]*)#.*$/$1/g; $line =~ s/^([^"]*)\/\/.*$/$1/g; while(1) { if (!$cmode && $line =~ /\/\*/) { # start of a C-style comment $cmode = 1; $line =~ s/\/\*.*$//g; } elsif ($cmode) { if ($line =~ /\*\//) { # end of comment $cmode = 0; $line =~ s/^.*\*\///g; } else { $line = ""; last; } } else { last; } } # split line into tokens while(1) { if ($line =~ /^\s*"([^"]*)"(.*)$/) { push(@{$_[1]}, [ $1, 1, $lines ]); $line = $2; } elsif ($line =~ /^\s*([{};])(.*)$/) { push(@{$_[1]}, [ $1, 0, $lines ]); $line = $2; } elsif ($line =~ /^\s*([^{}; \t]+)(.*)$/) { push(@{$_[1]}, [ $1, 0, $lines ]); $line = $2; } else { last; } } $lines++; } close(FILE); return $lines; } # parse_struct(&tokens, &token_num, index, file) # A structure can either have one value, or a list of values. # Pos will end up at the start of the next structure sub parse_struct { local(%str, $i, $t, @vals, @quotes, $str, @text); $i = ${$_[1]}; $str{'name'} = $_[0]->[$i]->[0]; $str{'line'} = $_[0]->[$i]->[2]; while(1) { $t = $_[0]->[++$i]; if ($t->[0] eq "{" || $t->[0] eq ";") { last; } elsif (!defined($t->[0])) { ${$_[1]} = $i; return undef; } else { push(@vals, $t->[0]); push(@quotes, $t->[1]); } push(@text, $t->[1] ? "\"$t->[0]\"" : $t->[0]); } $str{'values'} = \@vals; $str{'quotes'} = \@quotes; $str{'value'} = $vals[0]; $str{'text'} = join(" ", @text); $str{'index'} = $_[2]; $str{'file'} = $_[3]; if ($t->[0] eq "{") { # contains sub-structures.. parse them local(@mems, $j); $i++; # skip { $str{'type'} = 1; $j = 0; while($_[0]->[$i]->[0] ne "}") { if (!defined($_[0]->[$i]->[0])) { ${$_[1]} = $i; return undef; } $str = &parse_struct($_[0], \$i, $j++, $_[3]); if ($str) { push(@mems, $str); } } $str{'members'} = \@mems; $i++; # skip trailing } } else { # only a single value.. $str{'type'} = 0; $i++; # skip trailing ; } $str{'eline'} = $_[0]->[$i-1]->[2]; # ending line is the line number the # trailing ; is on ${$_[1]} = $i; return \%str; } # find(name, &array) sub find { local($c, @rv); foreach $c (@{$_[1]}) { if ($c->{'name'} eq $_[0]) { push(@rv, $c); } } return @rv ? wantarray ? @rv : $rv[0] : wantarray ? () : undef; } # find_value(name, &array) sub find_value { local(@v); @v = &find($_[0], $_[1]); if (!@v) { return undef; } elsif (wantarray) { return map { $_->{'value'} } @v; } else { return $v[0]->{'value'}; } } # choice_input(text, name, &config, [display, option]+) sub choice_input { local($rv, $v, $i, @ops); $rv = "$_[0] "; $v = &find_value($_[1], $_[2]); for($i=3; $i<@_; $i+=2) { @ops = split(/,/, $_[$i+1]); $rv .= "$_[$i]\n"; } return $rv."\n"; } # save_choice(name, &parent, indent) sub save_choice { local($nd); if ($in{$_[0]}) { $nd = { 'name' => $_[0], 'values' => [ $in{$_[0]} ] }; } &save_directive($_[1], $_[0], $nd ? [ $nd ] : [ ], $_[2], 1); } # addr_match_input(text, name, &config) # A field for editing a list of addresses, ACLs and partial IP addresses sub addr_match_input { local($v, $rv, $av, @av); $v = &find($_[1], $_[2]); $rv = "$_[0] "; $rv .= "Default "; $rv .= "Listed..
"; foreach $av (@{$v->{'members'}}) { push(@av, $av->{'name'}); } $rv .= "\n"; } sub save_addr_match { local($addr, @vals, $dir); if ($in{"$_[0]_def"}) { &save_directive($_[1], $_[0], [ ], $_[2], 1); } else { foreach $addr (split(/\s+/, $in{$_[0]})) { push(@vals, { 'name' => $addr }); } $dir = { 'name' => $_[0], 'type' => 1, 'members' => \@vals }; &save_directive($_[1], $_[0], [ $dir ], $_[2], 1); } } # address_input(text, name, &config, type) sub address_input { local($v, $rv, $av, @av); $v = &find($_[1], $_[2]); foreach $av (@{$v->{'members'}}) { push(@av, $av->{'name'}); } if ($_[3] == 0) { # text area $rv = "$_[0] "; $rv .= "\n"; } else { $rv = "$_[0] "; $rv .= "\n"; } return $rv; } sub save_address { local($addr, @vals, $dir); foreach $addr (split(/\s+/, $in{$_[0]})) { &check_ipaddress($addr) || &error("'$addr' is not a valid IP address"); push(@vals, { 'name' => $addr }); } $dir = { 'name' => $_[0], 'type' => 1, 'members' => \@vals }; &save_directive($_[1], $_[0], @vals ? [ $dir ] : [ ], $_[2], 1); } # opt_input(text, name, &config, default, size, units) sub opt_input { local($v, $rv); $v = &find($_[1], $_[2]); $rv = "$_[0] 30 ? " colspan=3>\n" : ">\n"; $rv .= sprintf " $_[3]\n", $v ? "" : "checked"; $rv .= sprintf " ", $v ? "checked" : ""; $rv .= sprintf " $_[5]\n", $v ? $v->{'value'} : ""; return $rv; } # save_opt(name, &func, &parent, [indent], [quote]) sub save_opt { local($dir); if ($in{"$_[0]_def"}) { &save_directive($_[2], $_[0], [ ], $_[3], 1); } elsif ($_[1] && ($err = &{$_[1]}($in{$_[0]}))) { &error($err); } else { $dir = { 'name' => $_[0], 'values' => [ $in{$_[0]} ], 'quotes' => [ $_[4] ] }; &save_directive($_[2], $_[0], [ $dir ], $_[3], 1); } } # save_directive(&parent, [name|&oldvalues], &values, indent, start) # Given a structure containing a directive name, type, values and members # add, update or remove that directive in config structure and data files. # Updating of files assumes that there is no overlap between directives - # each line in the config file must contain part or all of only one directive. sub save_directive { local(@oldv, @newv, $pm, $i, $o, $n, $lref, @nl); $pm = $_[0]->{'members'}; @oldv = ref($_[1]) ? @{$_[1]} : &find($_[1], $pm); @newv = @{$_[2]}; for($i=0; $i<@oldv || $i<@newv; $i++) { if ($i >= @oldv && $_[4]) { # a new directive is being added.. put it at the start of # the parent $lref = &read_file_lines($_[0]->{'file'}); @nl = &directive_lines($newv[$i], $_[3]); splice(@$lref, $_[0]->{'line'}+1, 0, @nl); &renumber(&get_config(), $_[0]->{'line'}+1, $_[0]->{'file'}, scalar(@nl)); &renumber_index($_[0]->{'members'}, 0, 1); $newv[$i]->{'file'} = $_[0]->{'file'}; $newv[$i]->{'line'} = $_[0]->{'line'}+1; $newv[$i]->{'eline'} = $_[0]->{'line'} + scalar(@nl); unshift(@$pm, $newv[$i]); } elsif ($i >= @oldv) { # a new directive is being added.. put it at the end of # the parent $lref = &read_file_lines($_[0]->{'file'}); @nl = &directive_lines($newv[$i], $_[3]); splice(@$lref, $_[0]->{'eline'}, 0, @nl); &renumber(&get_config(), $_[0]->{'eline'}, $_[0]->{'file'}, scalar(@nl)); $newv[$i]->{'file'} = $_[0]->{'file'}; $newv[$i]->{'line'} = $_[0]->{'eline'}; $newv[$i]->{'eline'} = $_[0]->{'eline'} + scalar(@nl) - 1; push(@$pm, $newv[$i]); } elsif ($i >= @newv) { # a directive was deleted $lref = &read_file_lines($oldv[$i]->{'file'}); $ol = $oldv[$i]->{'eline'} - $oldv[$i]->{'line'} + 1; splice(@$lref, $oldv[$i]->{'line'}, $ol); &renumber(&get_config(), $oldv[$i]->{'eline'}, $oldv[$i]->{'file'}, -$ol); &renumber_index($_[0]->{'members'}, $oldv[$i]->{'index'}, -1); splice(@$pm, &indexof($oldv[$i], @$pm), 1); } else { # updating some directive $lref = &read_file_lines($oldv[$i]->{'file'}); @nl = &directive_lines($newv[$i], $_[3]); $ol = $oldv[$i]->{'eline'} - $oldv[$i]->{'line'} + 1; &renumber(&get_config(), $oldv[$i]->{'eline'}, $oldv[$i]->{'file'}, scalar(@nl) - $ol); splice(@$lref, $oldv[$i]->{'line'}, $ol, @nl); $newv[$i]->{'file'} = $_[0]->{'file'}; $newv[$i]->{'line'} = $oldv[$i]->{'line'}; $newv[$i]->{'eline'} = $oldv[$i]->{'line'} + scalar(@nl) - 1; $pm->[&indexof($oldv[$i], @$pm)] = $newv[$i]; } } } # directive_lines(&directive, tabs) # Renders some directive into a number of lines of text sub directive_lines { local(@rv, $v, $m, $i); $rv[0] = "\t" x $_[1]; $rv[0] .= "$_[0]->{'name'}"; for($i=0; $i<@{$_[0]->{'values'}}; $i++) { $v = $_[0]->{'values'}->[$i]; if ($_[0]->{'quotes'}->[$i]) { $rv[0] .= " \"$v\""; } else { $rv[0] .= " $v"; } } if ($_[0]->{'type'}) { # multiple values.. include them as well $rv[0] .= " {"; foreach $m (@{$_[0]->{'members'}}) { push(@rv, &directive_lines($m, $_[1]+1)); } push(@rv, ("\t" x ($_[1]+1))."}"); } else { $rv[$#rv] .= ";"; } return @rv; } # renumber(&directives, line, file, count) # Runs through the given array of directives and increases the line numbers # of all those greater than some line by the given count sub renumber { local($d); local ($list, $line, $file, $count) = @_; return if (!$count); foreach $d (@$list) { if ($d->{'file'} eq $file) { if ($d->{'line'} >= $line) { $d->{'line'} += $count; } if ($d->{'eline'} >= $line) { $d->{'eline'} += $count; } } if ($d->{'type'}) { &renumber($d->{'members'}, $line, $file, $count); } } } # renumber_index(&directives, index, count) sub renumber_index { local($d); foreach $d (@{$_[0]}) { if ($d->{'index'} >= $_[1]) { $d->{'index'} += $_[2]; } } } # directive_diff(&d1, &d2) # Do two directives differ? sub directive_diff { local $i; local ($d1, $d2) = @_; return 1 if ($d1->{'name'} ne $d2->{'name'}); local $l1 = @{$d1->{'values'}}; local $l2 = @{$d2->{'values'}}; return 1 if ($l1 != $l2); for($i=0; $i<$l1; $i++) { return 1 if ($d1->{'values'}->[$i] ne $d2->{'values'}->[$i]); } return 1 if ($d1->{'type'} != $d2->{'type'}); if ($d1->{'type'}) { $l1 = @{$d1->{'members'}}; $l2 = @{$d2->{'members'}}; return 1 if ($l1 != $l2); for($i=0; $i<$l1; $i++) { return 1 if (&directive_diff($d1->{'members'}->[$i], $d2->{'members'}->[$i])); } } return 0; } # group_name($members) sub group_name { return ($_[0] == 0) ? $text{'index_nomemb'} : ($_[0] == 1) ? $text{'index_1memb'} : ($_[0] >= 2 && $_[0] <= 4) ? &text('index_234memb', $_[0]) : &text('index_memb', $_[0]); } # get_subnets_and_hosts() # returns the references to sorted lists of hosts and subnets sub get_subnets_and_hosts { return (\@get_subnets_cache, \@get_hosts_cache) if (@get_subnets_cache && @get_hosts_cache); local(@subn,@host,@group,@shan, $s,$h,$g,$sn, $conf); $conf = &get_config(); # get top level hosts and groups @host = &find("host", $conf); foreach $h (&find("host", $conf)) { $h->{'order'} = $h->{'index'}; } @group = &find("group", $conf); foreach $g (@group) { foreach $h (&find("host", $g->{'members'})) { push(@host, $h); } } @subn = &find("subnet", $conf); foreach $u (@subn) { foreach $h (&find("host", $u->{'members'})) { push(@host, $h); } foreach $g (&find("group", $u->{'members'})) { push(@group, $g); foreach $h (&find("host", $g->{'members'})) { push(@host, $h); } } } @shan = &find("shared-network", $conf); foreach $s (@shan) { foreach $h (&find("host", $s->{'members'})) { push(@host, $h); } foreach $g (&find("group", $s->{'members'})) { push(@group, $g); foreach $h (&find("host", $g->{'members'})) { push(@host, $h); } } foreach $u (&find("subnet", $s->{'members'})) { push(@subn, $u); foreach $h (&find("host", $u->{'members'})) { push(@host, $h); } foreach $g (&find("group", $sn->{'members'})) { push(@group, $g); foreach $h (&find("host", $g->{'members'})) { push(@host, $h); } } } } @get_subnets_cache = sort { $a->{'order'} <=> $b->{'order'} } @subn; @get_hosts_cache = sort { $a->{'order'} <=> $b->{'order'} } @host; return (\@get_subnets_cache, \@get_hosts_cache); } sub get_subnets { local ($sr, $hr) = &get_subnets_and_hosts(); return @{$sr}; } sub get_hosts { local ($sr, $hr) = &get_subnets_and_hosts(); return @{$hr}; } # hash that links objtypes shortcuts with object names %obj_names2types = qw(host hst group grp subnet sub shared-network sha); # get_branch($objtype) # usefull for edit_*.cgi and save_*.cgi scripts # $objtype = one of 'hst' 'grp' 'sub' 'sha' sub get_branch { local %obj_types2names = reverse %obj_names2types; local $name = $obj_types2names{$_[0]}; local ($parnode, $nparnode, $node, $indent, $nindent); $parnode = $nparnode = &get_parent_config(); $indent = $nindent = 0; foreach ($in{'sidx'}, $in{'uidx'}, $in{'gidx'}) { if ($_ ne '') { $parnode = $parnode->{'members'}->[$_]; $indent++; } } if (!($in{'delete'} && $in{'options'})) { if ($in{'assign'} > 0 && !defined($in{'parent'})) { # A quirk for not javascript-capable browser # New parent is undefined yet; we need 2nd step undef $nparnode; } else { foreach (split(/\,/, $in{'parent'})) { $nindent++; if ($_ < @{$nparnode->{'members'}}) { $nparnode = $nparnode->{'members'}->[$_]; } } } } if (!$in{'new'}) { $node = $parnode->{'members'}->[$in{'idx'}]; } else { die "Wrong call to get_nodes: pass objtype for new object" unless $name; # Construct new node structure $node->{'name'} = $name; $node->{'type'} = 1; $node->{'members'} = [ ]; } return ($parnode, $node, $indent, $nparnode, $nindent); } # can(permissions_string, \%access, \%config_node, smode) # this is a cached wrapper of can_noncached(...) sub can { local ($perm, $acc, $node, $smode) = @_; if (defined($can_cache) && ($can_perm_cache eq $perm) && ($can_node_cache eq $node) && ($can_smode_cache eq $smode)) { return $can_cache; } else { $can_perm_cache = $perm; $can_node_cache = $node; $can_smode_cache = $smode; return ($can_cache = &can_noncached(@_)); } } # can_noncached(permissions_string, \%access, \%config_node, smode) # check global and per-object permissions: # # permissions_string= 'c' 'r' 'w' or any combination. # smode= 0 or undef - check only current, 1 - recursive childs check, # 2 - check parents, 3 - check parents and all childs # note: while deleting an object you must allways enforce smode=1 or 3 # because all child objects are deletes recursevly. # this maybe an optional parameter sub can_noncached { local $acl; local ($perm, $acc, $node, $smode) = @_; local @perm = split(//, $perm); if ($node ne get_parent_config()) { foreach (@perm) { next if ($_ ne 'c') && ($_ ne 'r') && ($_ ne 'w'); return 0 unless $acc->{$_ . '_' . $obj_names2types{$node->{'name'}} }; } # per-object permissions return 0 unless &can_node(\@perm, $acc, $node); if (($acc->{'smode'} == 2) || ($smode == 2) || ($acc->{'smode'} == 3) || ($smode == 3)) { # check parents $parnode=&get_parent_config(); foreach ($in{'sidx'}, $in{'uidx'}, $in{'gidx'}) { if ($_ ne '') { $parnode = $parnode->{'members'}->[$_]; return 0 unless &can_node(\@perm, $acc, $parnode); } } } if (($acc->{'smode'} == 1) || ($smode == 1) || ($acc->{'smode'} == 3) || ($smode == 3)) { # check childs return 0 unless &can_subtree(\@perm, $acc, $node); } } return 1; } # can_node(\@perm, $acc, $node) # checks object permissions for current node sub can_node { local ($rperm, $acc, $node)=@_; # per-object permissions local $otype=$obj_names2types{$node->{'name'}}; if ($acc->{'per_' . $otype . '_acls'}) { local $acl = $acc->{'ACL' . $otype . '_' . $node->{'values'}->[0]}; foreach (@{$rperm}) { next if $_ eq 'c'; # skip creation perms for per-obj acls return 0 if index($acl, $_) == -1; } } return 1; } # can_subtree(\@perm, $acc, $node) # checks object permissions for subtree sub can_subtree { local ($rperm, $acc, $node)=@_; return 0 unless &can_node($rperm, $acc, $node); if($node->{'members'}) { # recursevly process this subtree foreach (@{$node->{'members'}}) { return 0 unless &can_subtree($rperm, $acc, $_); } } return 1; } # save_dhcpd_acl(permissions_string, obj_type, \%access, obj_name) sub save_dhcpd_acl { $_[2]->{'ACL'.$_[1].'_'.$_[3]} = $_[0]; undef($can_cache); return &save_module_acl($_[2]); } # drop_dhcpd_acl(obj_type, \%access, obj_name) sub drop_dhcpd_acl { delete($_[1]->{'ACL'.$_[0].'_'.$_[2]}); undef($can_cache); return &save_module_acl($_[1]); } 1; dhcpd/config-redhat-linux-6.0-6.20100644000567100000120000000033710655706245016234 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/var/state/dhcp/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/config.info.nl0100644000567100000120000000057010655706245014367 0ustar jcameronwheeldhcpd_conf=Configuratie bestand,0 dhcpd_path=Programma bestand,0 interfaces=Welke interfaces,3,Automatisch pid_file=PID bestand,0 lease_file=Lease bestand,0 lease_sort=Sorteer leases per,1,0-Volgorde in bestand,1-IP adres,2-Hostnaam hostnet_list=Toon subnetten en hosts als,1,0-Iconen,1-Lijst dhcpd_nocols=Iconen per rij,0 lease_tz=Toon leases tijden in,1,0-GMT,1-Lokale tijd dhcpd/config-generic-linux0100644000567100000120000000032410655706245015571 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/etc/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/edit_text.cgi0100775000567100000120000000177610655706245014330 0ustar jcameronwheel#!/usr/bin/perl # $Id: edit_text.cgi,v 1.2 2005/04/16 14:30:21 jfranken Exp $ # File added 2005-04-15 by Johannes Franken # Distributed under the terms of the GNU General Public License, v2 or later # # * Display form to manually edit dhcpd.conf file (pass to save_text.cgi) require './dhcpd-lib.pl'; &ReadParse(); $access{'noconfig'} && &error($text{'text_ecannot'}); $conf = &get_config(); &ui_print_header($text{'text_editor'}, $text{'text_title'}, ""); open(FILE, $config{'dhcpd_conf'}); while() { push(@lines, &html_escape($_)); } close(FILE); if (!$access{'ro'}) { print &text('text_desc', "$file"),"

\n"; } print "

\n"; print "

\n"; print " ", "\n" if (!$access{'ro'}); print "

\n"; &ui_print_footer("",$text{'text_return'}); dhcpd/config-suse-linux-8.00100644000567100000120000000053210655706245015440 0ustar jcameronwheelstart_cmd=/etc/init.d/dhcpd start stop_cmd=/etc/init.d/dhcpd stop restart_cmd=/etc/init.d/dhcpd restart dhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/var/lib/dhcp/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 interfaces_type=suse show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/save_text.cgi0100775000567100000120000000131510655706245014326 0ustar jcameronwheel#!/usr/bin/perl # $Id: save_text.cgi,v 1.2 2005/04/16 14:30:21 jfranken Exp $ # File added 2005-04-15 by Johannes Franken # Distributed under the terms of the GNU General Public License, v2 or later # # * Save passed text to dhcpd.conf require './dhcpd-lib.pl'; &ReadParseMime(); $access{'noconfig'} && &error($text{'text_ecannot'}); $conf = &get_config(); $file=$config{'dhcpd_conf'}; &lock_file($file); $in{'text'} =~ s/\r//g; $in{'text'} .= "\n" if ($in{'text'} !~ /\n$/); &open_tempfile(FILE, ">$file"); &print_tempfile(FILE, $in{'text'}); &close_tempfile(FILE); &unlock_file($file); &webmin_log("text", undef, $conf->[$in{'index'}]->{'value'}, { 'file' => $file }); &redirect(""); dhcpd/config.info.fa0100664000567100000120000000335610655706245014353 0ustar jcameronwheel line1=گزينه‌هاي قابل پيکربندي,11 lease_sort=مرتب سازي انتساب داده شده‌ها براساس,1,0-ترتيب در پرونده,1-نشاني IP,2-نام ميزبان hostnet_list=نمايش زيرشبکه‌ها و ميزبانها به‌صورت,1,0-شمايل,1-ليست dhcpd_nocols=شمايلها در سطر,0 lease_tz=نمايش زمان انتساب داده شده‌ها براساس,1,0-GMT,1-زمان محلي show_ip=آيا نشانيهاي IP براي ميزبانها نشان داده شود؟,1,1-بله,0-خير show_mac=آيا نشانيهاي MACبراي ميزبانها نشان داده شود؟,1,1-بله,0-خير group_name=نشان‌دادن نامهاي گروه به‌صورت,1,1- گزينه دامنه/نام ,0-نام يا تعداد اعضا,2-شرح desc_name=آيا ساير شرحها به جاي نام نشان داده شود؟,1,1-بله,0-خير display_max=حداکثر تعداد زيرشبکه‌ها و ميزبانها جهت نمايش,3,نامحدود line2=پيکربندي سيستم,11 dhcpd_conf=پرونده پيکربندي کارساز DHCP,0 dhcpd_path=کارساز اجرايي DHCP,0 start_cmd=دستور جهت آغازکردن DHCP,3,کارساز اجرايي اجرا شود restart_cmd=دستور جهت به‌کاربستن پيکربندي,3,کشتن و بازآغازي pid_file=مسير پرونده PID کارساز DHCP,0 lease_file=پرونده انتساب داده شده‌هاي کارساز DHCP,0 interfaces_type=نوع پرونده واسط,4,redhat-Redhat,mandrake-Mandrake,suse-SuSE,debian-Debian,caldera-Caldera,gentoo-Gentoo,-Webmin version=نسخه کارساز DHCP,3,به‌طور خودکار تعيين شود dhcpd/config-hpux0100644000567100000120000000034310655706245014005 0ustar jcameronwheeldhcpd_conf=/var/dhcpd/etc/dhcpd.conf pid_file=/etc/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/var/dhcpd/db/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/config-gentoo-linux0100644000567100000120000000047110655706245015453 0ustar jcameronwheeldhcpd_conf=/etc/dhcp/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/var/lib/dhcp/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 start_cmd=/etc/init.d/dhcp start stop_cmd=/etc/init.d/dhcp stop show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 interfaces_type=gentoo dhcpd/config.info.uk_UA0100664000567100000120000000136110655706245014763 0ustar jcameronwheeldhcpd_conf= DHCP,0 lease_file= DHCP,0 pid_file= PID DHCP,0 dhcpd_path= , , DHCP,0 interfaces_type= ,4,redhat-Redhat,mandrake-Mandrake,suse-SuSE,debian-Debian,caldera-Caldera,-Webmin restart_cmd= ,3, start_cmd= DHCP,3, line1= , ,11 line2= ,11 lease_tz= ,1,0-GMT,1- dhcpd_nocols=ϳ ,0 hostnet_list= ,1,0-,1- lease_sort= ,1,0- ,1- IP,2- dhcpd/config.info.zh_TW.UTF-80100664000567100000120000000032410655706245015612 0ustar jcameronwheelinterfaces=執行 DHCP 的介面在,3,自動 lease_file=DHCP 伺服器的租約檔案,0 pid_file=到 DHCP 伺服器 PID 檔案的路徑,0 dhcpd_path=DHCP 伺服器執行檔,0 dhcpd_conf=DHCP 伺服器組態檔,0 dhcpd/config-united-linux0100644000567100000120000000053210655706245015446 0ustar jcameronwheelstart_cmd=/etc/init.d/dhcpd start stop_cmd=/etc/init.d/dhcpd stop restart_cmd=/etc/init.d/dhcpd restart dhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/var/lib/dhcp/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 interfaces_type=suse show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/lookup_group.cgi0100775000567100000120000000203710655706245015053 0ustar jcameronwheel#!/usr/local/bin/perl # lookup_group.cgi # Find a group with a certain name and re-direct to its editing form require './dhcpd-lib.pl'; &ReadParse(); $in{'group'} || &error($text{'lookup_egroupname'}); # Recursively find groups $conf = &get_config(); @groups = &find_recursive("group", $conf); # Look for a match %access = &get_module_acl(); foreach $g (@groups) { local $can_view = &can('r', \%access, $g); next if !$can_view && $access{'hide'}; local @opts = &find("option", $g->{'members'}); local ($dn) = grep { $_->{'values'}->[0] eq 'domain-name' } @opts; if (&search_re($g->{'values'}->[0], $in{'group'}) || $dn && &search_re($dn->{'values'}->[1], $in{'group'})) { $group = $g; last; } } # Go to the group or show an error if ($group) { ($gidx, $uidx, $sidx) = &find_parents($group); &redirect("edit_group.cgi?idx=$group->{'index'}". (defined($gidx) ? "&gidx=$gidx" : ""). (defined($uidx) ? "&uidx=$uidx" : ""). (defined($sidx) ? "&sidx=$sidx" : "")); } else { &error(&text('lookup_egroup', $in{'group'})); } dhcpd/edit_iface.cgi0100775000567100000120000000604710655706245014407 0ustar jcameronwheel#!/usr/local/bin/perl # edit_ifaces.cgi # Display network interfaces on which the DHCP server is started require './dhcpd-lib.pl'; %access = &get_module_acl(); $access{'noconfig'} && &error($text{'iface_ecannot'}); # Get the interface if ($config{'interfaces_type'} eq 'mandrake') { if (-r "/etc/conf.linuxconf") { # Older mandrake's init script uses a linuxconf setting open(FILE, "/etc/conf.linuxconf"); while() { if (/DHCP.interface\s+(.*)/) { $iface = $1; } } close(FILE); } else { # Newer use Redhat-style sysconfig file &read_env_file("/etc/sysconfig/dhcpd", \%dhcpd); $iface = $dhcpd{'INTERFACES'}; } } elsif ($config{'interfaces_type'} eq 'redhat') { # Redhat's init script uses an environment file &read_env_file("/etc/sysconfig/dhcpd", \%dhcpd); $iface = $dhcpd{'DHCPDARGS'}; } elsif ($config{'interfaces_type'} eq 'suse') { # SuSE and United use an environment file too &read_env_file("/etc/sysconfig/dhcpd", \%dhcpd); $iface = $dhcpd{'DHCPD_INTERFACE'}; } elsif ($config{'interfaces_type'} eq 'debian') { if (-r "/etc/default/dhcp") { # New debian uses an environment file &read_env_file("/etc/default/dhcp", \%dhcpd); $iface = $dhcpd{'INTERFACES'}; } elsif (-r "/etc/default/dhcp3-server") { # DHCPd 3 uses a different environment file &read_env_file("/etc/default/dhcp3-server", \%dhcpd); $iface = $dhcpd{'INTERFACES'}; } else { # Old debian has the interface set in the init script! $lref = &read_file_lines("/etc/init.d/dhcp"); for($i=0; $i<@$lref; $i++) { if ($lref->[$i] =~ /INTERFACES\s*=\s*'([^']+)'/ || $lref->[$i] =~ /INTERFACES\s*=\s*"([^"]+)"/ || $lref->[$i] =~ /INTERFACES\s*=\s*(\S+)/) { $iface = $1; } } } } elsif ($config{'interfaces_type'} eq 'caldera') { # Interfaces are set in the Caldera daemons directory file &read_env_file("/etc/sysconfig/daemons/dhcpd", \%dhcpd); @iface = grep { /^(lo|[a-z]+\d+)$/ } split(/\s+/, $dhcpd{'OPTIONS'}); $iface = join(" ", @iface); } elsif ($config{'interfaces_type'} eq 'gentoo') { # Interfaces are set in a file on Gentoo &read_env_file("/etc/conf.d/dhcp", \%dhcp); $iface = $dhcp{'IFACE'}; } else { # Just use the configuration $iface = $config{'interfaces'}; } &ui_print_header(undef, $text{'iface_title'}, ""); print "$text{'iface_desc'}

\n"; print "

\n"; print "\n"; print "\n"; if (&foreign_check("net")) { %got = map { $_, 1 } split(/\s+/, $iface); &foreign_require("net", "net-lib.pl"); @ifaces = grep { $_->{'virtual'} eq '' } &net::active_interfaces(); $sz = scalar(@ifaces); print "\n"; } else { print "\n"; } print "
$text{'iface_listen'}
\n"; print "
\n"; &ui_print_footer("", $text{'listl_return'}); dhcpd/lookup_host.cgi0100775000567100000120000000211310655706245014667 0ustar jcameronwheel#!/usr/local/bin/perl # lookup_host.cgi # Find a host with a certain name and re-direct to its editing form require './dhcpd-lib.pl'; &ReadParse(); $in{'host'} || &error($text{'lookup_ehostname'}); # Recursively find hosts $conf = &get_config(); @hosts = &find_recursive("host", $conf); # Look for a match %access = &get_module_acl(); foreach $h (@hosts) { local $can_view = &can('r', \%access, $h); next if !$can_view && $access{'hide'}; local $fixed = &find("fixed-address", $h->{'members'}); local $hard = &find("hardware", $h->{'members'}); if (&search_re($h->{'values'}->[0], $in{'host'}) || $fixed && &search_re($fixed->{'values'}->[0], $in{'host'}) || $hard && &search_re($hard->{'values'}->[1], $in{'host'})) { $host = $h; last; } } # Go to the host or show an error if ($host) { ($gidx, $uidx, $sidx) = &find_parents($host); &redirect("edit_host.cgi?idx=$host->{'index'}". (defined($gidx) ? "&gidx=$gidx" : ""). (defined($uidx) ? "&uidx=$uidx" : ""). (defined($sidx) ? "&sidx=$sidx" : "")); } else { &error(&text('lookup_ehost', $in{'host'})); } dhcpd/save_iface.cgi0100775000567100000120000000605510655706245014417 0ustar jcameronwheel#!/usr/local/bin/perl # save_ifaces.cgi # Save network interfaces on which the DHCP server is started require './dhcpd-lib.pl'; %access = &get_module_acl(); $access{'noconfig'} && &error($text{'iface_ecannot'}); &ReadParse(); # Save in config file @iface = split(/\s+|\0/, $in{'iface'}); @iface || &error($text{'iface_enone'}); $iface = join(" ", @iface); $config{'interfaces'} = join(" ", @iface); &write_file("$module_config_directory/config", \%config); if ($config{'interfaces_type'} eq 'mandrake') { if (-r "/etc/conf.linuxconf") { # Write to Mandrake linuxconf file local $lref = &read_file_lines("/etc/conf.linuxconf"); for($i=0; $i<@$lref; $i++) { $secline = $i if ($lref->[$i] =~ /\[dhcpd\]/); $ifaceline = $i if ($lref->[$i] =~ /DHCP.interface/); } $line = "DHCP.interface $iface"; if (defined($ifaceline)) { $lref->[$ifaceline] = $line; } elsif (defined($secline)) { splice(@$lref, $secline+1, 0, $line); } else { push(@$lref, "[dhcpd]", $line); } &flush_file_lines(); } else { # Write to sysconfig file &read_env_file("/etc/sysconfig/dhcpd", \%dhcpd); $dhcpd{'INTERFACES'} = $iface; &write_env_file("/etc/sysconfig/dhcpd", \%dhcpd); } } elsif ($config{'interfaces_type'} eq 'redhat') { # Write to the Redhat environment file &read_env_file("/etc/sysconfig/dhcpd", \%dhcpd); $dhcpd{'DHCPDARGS'} = $iface; &write_env_file("/etc/sysconfig/dhcpd", \%dhcpd); } elsif ($config{'interfaces_type'} eq 'suse') { # Write to the SuSE/United environment file &read_env_file("/etc/sysconfig/dhcpd", \%dhcpd); $dhcpd{'DHCPD_INTERFACE'} = $iface; &write_env_file("/etc/sysconfig/dhcpd", \%dhcpd); } elsif ($config{'interfaces_type'} eq 'debian') { if (-r "/etc/default/dhcp") { # Write to Debian environment file &read_env_file("/etc/default/dhcp", \%dhcpd); $dhcpd{'INTERFACES'} = $iface; &write_env_file("/etc/default/dhcp", \%dhcpd); } elsif (-r "/etc/default/dhcp3-server") { # Write to Debian DHCPd 3 environment file &read_env_file("/etc/default/dhcp3-server", \%dhcpd); $dhcpd{'INTERFACES'} = $iface; &write_env_file("/etc/default/dhcp3-server", \%dhcpd); } else { # Write to the debian init script $lref = &read_file_lines("/etc/init.d/dhcp"); for($i=0; $i<@$lref; $i++) { if ($lref->[$i] =~ /INTERFACES\s*=\s*'([^']+)'/ || $lref->[$i] =~ /INTERFACES\s*=\s*"([^"]+)"/ || $lref->[$i] =~ /INTERFACES\s*=\s*(\S+)/) { $lref->[$i] = "INTERFACES=\"$iface\""; } } &flush_file_lines(); } } elsif ($config{'interfaces_type'} eq 'caldera') { # Interfaces are set in the Caldera daemons directory file &read_env_file("/etc/sysconfig/daemons/dhcpd", \%dhcpd); @other = grep { !/^(lo|[a-z]+\d+)$/ } split(/\s+/, $dhcpd{'OPTIONS'}); $dhcpd{'OPTIONS'} = join(" ", @other).($iface ? " $iface" : ""); &write_env_file("/etc/sysconfig/daemons/dhcpd", \%dhcpd); } elsif ($config{'interfaces_type'} eq 'gentoo') { # Interfaces are set in a file on Gentoo &read_env_file("/etc/conf.d/dhcp", \%dhcp); $dhcp{'IFACE'} = $iface; &write_env_file("/etc/conf.d/dhcp", \%dhcp); } &redirect(""); dhcpd/config.info.zh_CN.UTF-80100664000567100000120000000030510655706245015557 0ustar jcameronwheelinterfaces=运行DHCP界面,3,自动 lease_file=DHCP服务器租赁文件,0 pid_file=DHCP服务器pid文件的路径,0 dhcpd_path=DHCP服务器执行文件,0 dhcpd_conf=DHCP服务器配置文件,0 dhcpd/config-debian-linux-3.00100644000567100000120000000053110655706245015675 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/var/lib/dhcp/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 start_cmd=/etc/init.d/dhcp start stop_cmd=/etc/init.d/dhcp stop restart_cmd=/etc/init.d/dhcp restart show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 interfaces_type=debian dhcpd/config.info.ja_JP.UTF-80100664000567100000120000000244710655706245015552 0ustar jcameronwheelrestart_cmd=設定の適用に使用するコマンド,3,停止及び再起動 start_cmd=DHCPサーバの起動コマンド,3,サーバの実行ファイルを起動 dhcpd_conf=DHCPサーバ 設定ファイル,0 display_max=サブネットとホストの表示する最大数,3,無制限 group_name=グループ名の表示方法,1,1-ドメイン-名 オプション,0-名前またはメンバー数 hostnet_list=サブネットとホストの表示方法,1,0-アイコン,1-リスト interfaces_type=インターフェースのファイル形式,4,redhat-Redhat,mandrake-Mandrake,suse-SuSE,debian-Debian,caldera-Caldera,-Webmin show_ip=ホストのIPアドレスを表示しますか?,1,1-はい,0-いいえ line1=設定可能なオプション,11 desc_name=名称の替わりにオブジェクトの説明を表示しますか?,1,1-はい,0-いいえ line2=システム設定,11 lease_tz=リース時間の表示形式,1,0-GMT,1-ローカル時間 dhcpd_nocols=行内のアイコン,0 pid_file=DHCPサーバのPIDファイルへのパス lease_file=DHCPサーバ リースファイル,0 lease_sort=リースの並び順,1,0-ファイル順,1-アドレス順,2-ホスト名順 dhcpd_path=DHCPサーバの実行ファイル show_mac=ホストのMACアドレスを表示しますか?,1,1-はい,0-いいえ dhcpd/lookup_shared.cgi0100775000567100000120000000163110655706245015164 0ustar jcameronwheel#!/usr/local/bin/perl # lookup_shared.cgi # Find a shared network with a certain name and re-direct to its editing form require './dhcpd-lib.pl'; &ReadParse(); $in{'shared'} || &error($text{'lookup_esharedname'}); # Recursively find shared nets $conf = &get_config(); @shareds = &find_recursive("shared-network", $conf); # Look for a match %access = &get_module_acl(); foreach $s (@shareds) { local $can_view = &can('r', \%access, $s); next if !$can_view && $access{'hide'}; if (&search_re($s->{'values'}->[0], $in{'shared'})) { $shared = $s; last; } } # Go to the shared network or show an error if ($shared) { ($gidx, $uidx, $sidx) = &find_parents($shared); &redirect("edit_shared.cgi?idx=$shared->{'index'}". (defined($gidx) ? "&gidx=$gidx" : ""). (defined($uidx) ? "&uidx=$uidx" : ""). (defined($sidx) ? "&sidx=$sidx" : "")); } else { &error(&text('lookup_eshared', $in{'shared'})); } dhcpd/lookup_subnet.cgi0100775000567100000120000000171710655706245015223 0ustar jcameronwheel#!/usr/local/bin/perl # lookup_subnet.cgi # Find a subnet with a certain address and re-direct to its editing form require './dhcpd-lib.pl'; &ReadParse(); $in{'subnet'} || &error($text{'lookup_esubnetname'}); # Recursively find subnets $conf = &get_config(); @subnets = &find_recursive("subnet", $conf); # Look for a match %access = &get_module_acl(); foreach $s (@subnets) { local $can_view = &can('r', \%access, $s); next if !$can_view && $access{'hide'}; if (&search_re($s->{'values'}->[0], $in{'subnet'}) || &search_re($s->{'values'}->[0]."/".$s->{'values'}->[2], $in{'subnet'})) { $subnet = $s; last; } } # Go to the subnet or show an error if ($subnet) { ($gidx, $uidx, $sidx) = &find_parents($subnet); &redirect("edit_subnet.cgi?idx=$subnet->{'index'}". (defined($gidx) ? "&gidx=$gidx" : ""). (defined($uidx) ? "&uidx=$uidx" : ""). (defined($sidx) ? "&sidx=$sidx" : "")); } else { &error(&text('lookup_esubnet', $in{'subnet'})); } dhcpd/install_check.pl0100775000567100000120000000105510655706245015001 0ustar jcameronwheel# install_check.pl do 'dhcpd-lib.pl'; # is_installed(mode) # For mode 1, returns 2 if the server is installed and configured for use by # Webmin, 1 if installed but not configured, or 0 otherwise. # For mode 0, returns 1 if installed, 0 if not sub is_installed { local @st = stat($config{'dhcpd_path'}); return 0 if (!@st); if (!$config{'dhcpd_version'} || $st[7] != $config{'dhcpd_size'} || $st[9] != $config{'dhcpd_mtime'}) { # Version is not cached - need to actually check return 0 if (!&get_dhcpd_version(\$dummy)); } return $_[0] ? 2 : 1; } dhcpd/config-trustix-linux0100644000567100000120000000053010655706245015676 0ustar jcameronwheelstart_cmd=/etc/init.d/dhcpd start stop_cmd=/etc/init.d/dhcpd stop restart_cmd=/etc/init.d/dhcpd restart dhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/var/state/dhcp/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 interfaces_type= show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/config-slackware-linux-7.1-*0100644000567100000120000000033710655706245016567 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/var/state/dhcp/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/config-macos0100644000567100000120000000032010655706245014116 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf pid_file=/etc/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/etc/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/CHANGELOG0100664000567100000120000000267010655706245013054 0ustar jcameronwheel---- Changes since 1.130 ---- Group and subnet descriptions are now shown in the list of groups and networks that a host or other element can be assigned to. ---- Changes since 1.150 ---- Custom option definitions can now be edited, and will be preserved in the configuration file if manually defined. ---- Changes since 1.160 ---- Added support for SLP-related client options (thanks to Alexandre Racine). ---- Changes since 1.200 ---- Improved support for DDNS (thanks to Johannes Franken , including editors for the zone- and key-directives (new with dhcpd3), new scope-option "client-updates" (new with dhcpd3), and a text editor for dhcpd.conf ---- Changes since 1.230 ---- Added a button for stopping the running DHCP server. ---- Changes since 1.290 ---- The page listing leases now displays the number of IPs available for dynamic allocation, and the number assigned to clients. Hosts with multiple fixed addresses have them all listed on the module's main page. ---- Changes since 1.300 ---- Added checboxes and buttons for deleting multiple subnets, shared networks, hosts and groups at once. Fixed a bug that caused the display of large numbers of hosts and subnets to be slow. Changed the Module Config PID file setting to allow None to be selected, which tells the module to look at the dhcpd process instead (as on OpenBSD). ---- Changes since 1.320 ---- Added a field on the Client Options page for the DHCP server identifier. dhcpd/config.info.pt_BR0100755000567100000120000000216010655706245014764 0ustar jcameronwheelline1=Opes Configurveis,11 lease_sort=Ordernar leases por,1,0-Ordem em arquivo,1-Endereo IP,2-Nome de computador hostnet_list=Mostrar subredes e computadores como,1,0-cones,1-Lista dhcpd_nocols=cones in row,0 lease_tz=Display leases times in,1,0-GMT,1-Local time show_ip=Mostrar endereo IP para computadores?,1,1-Sim,0-No show_mac=Mostrar endereo MAC para computadores?,1,1-Sim,0-No desc_name=Mostrar descrio de objetos ao invs de nomes?,1,1-Sim,0-No group_name=Mostrar nomes de grupo como,1,1-nome de-domnio,0-Nome ou membro display_max=Nmero mximo de subredes e computadores a serem mostrados,3,Ilimitado line2=Configurao do sistema,11 dhcpd_conf=Arquivo de configurao do servidor de DHCP,0 dhcpd_path=Executvel do servidor de DHCP,0 start_cmd=Comando para iniciar o servidor de DHCP,3,Inicie servidor restart_cmd=Comando para aplicar configuraes,3,Matar e reinicar pid_file=Caminho para o arquivo PID do servidor DHCP,0 lease_file=Arquivo de lease do servidor DHCP,0 interfaces_type=Tipo de arquivo de Interfaces,4,redhat-Redhat,mandrake-Mandrake,suse-SuSE,debian-Debian,caldera-Caldera,-Webmin dhcpd/config-sol-linux0100664000567100000120000000036310655706245014757 0ustar jcameronwheeldhcpd_conf=/server/dhcp/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/server/dhcp/sbin/dhcpd lease_file=/var/state/dhcp/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/config-coherent-linux0100664000567100000120000000055310655706245015772 0ustar jcameronwheelstart_cmd=/etc/rc.d/init.d/dhcpd start stop_cmd=/etc/rc.d/init.d/dhcpd stop restart_cmd=/etc/rc.d/init.d/dhcpd restart dhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/var/lib/dhcp/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 interfaces_type=redhat show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/config.info.ja_JP.euc0100644000567100000120000000177310655706245015522 0ustar jcameronwheelline1=ǽʥץ,11 lease_sort=꡼¤ӽ,1,0-ե,1-ɥ쥹,2-ۥ̾ hostnet_list=֥ͥåȤȥۥȤɽˡ,1,0-,1-ꥹ dhcpd_nocols=Υ,0 lease_tz=꡼֤ɽ,1,0-GMT,1- show_ip=ۥȤIPɥ쥹ɽޤ?,1,1-Ϥ,0- show_mac=ۥȤMACɥ쥹ɽޤ?,1,1-Ϥ,0- desc_name=̾Τؤ˥֥Ȥɽޤ?,1,1-Ϥ,0- group_name=롼̾ɽˡ,1,1-ɥᥤ-̾ ץ,0-̾ޤϥС display_max=֥ͥåȤȥۥȤɽ,3,̵ line2=ƥ,11 dhcpd_conf=DHCP ե,0 dhcpd_path=DHCPФμ¹ԥե start_cmd=DHCPФεưޥ,3,Фμ¹ԥեư restart_cmd=ŬѤ˻Ѥ륳ޥ,3,ߵڤӺƵư pid_file=DHCPФPIDեؤΥѥ lease_file=DHCP ꡼ե,0 interfaces_type=󥿡եΥե,4,redhat-Redhat,mandrake-Mandrake,suse-SuSE,debian-Debian,caldera-Caldera,-Webmin dhcpd/config.info.sk0100644000567100000120000000231510655706245014372 0ustar jcameronwheelline1=Nastaviten monosti,11 lease_sort=Triedi pridelen adresy poda,1,0-Poradia v sbore,1-IP adresy,2-Mena hostitea hostnet_list=Zobrazi subnety a hostiteov ako,1,0-Ikony,1-Zoznam dhcpd_nocols=Ikony v riadku,0 lease_tz=Zobrazi asy pridelench adries v,1,0-GMT,1-Loklnom ase show_ip=Zobrazi IP adresy pre potae?,1,1-no,0-Nie show_mac=Zobrazi MAC adresy pre potae?,1,1-no,0-Nie group_name=Zobrazi skupinov men ako ,1,1-domnov men ,0-Meno alebo poet lenov,2-Popis desc_name=Ukza popisy objektov namiesto ich nzvov?,1,1-no,0-Nie display_max=Maximlny poet subnetov a hostiteov pre zobrazenie,3,Bez limitu line2=Systmov nastavenia,11 dhcpd_conf=Konfiguran sbor DHCP servera,0 dhcpd_path=Spac sbor DHCP servera,0 start_cmd=Prkaz na spustenie DHCP servera,3,Spustenie tartovacieho sboru restart_cmd=Prkaz na pouitie konfigurcie,3,Ukoni a znovuspusti stop_cmd=Prkaz na zastavenie DHCP servera,3,Ukoni proces pid_file=Cesta k PID sboru DHCP servra,0 lease_file=Sbor s pridelenmi adresami,0 interfaces_type=Typ interfejsov,4,redhat-Redhat,mandrake-Mandrake,suse-SuSE,debian-Debian,caldera-Caldera,gentoo-Gentoo,-Webmin version=Verzia DHCP servera,3,Zisti automaticky dhcpd/backup_config.pl0100775000567100000120000000127310655706245014772 0ustar jcameronwheel do 'dhcpd-lib.pl'; # backup_config_files() # Returns files and directories that can be backed up sub backup_config_files { local $conf = &get_config(); local @rv = map { $_->{'file'} } @$conf; return &unique(@rv); } # pre_backup(&files) # Called before the files are actually read sub pre_backup { return undef; } # post_backup(&files) # Called after the files are actually read sub post_backup { return undef; } # pre_restore(&files) # Called before the files are restored from a backup sub pre_restore { return undef; } # post_restore(&files) # Called after the files are restored from a backup sub post_restore { if (&is_dhcpd_running()) { return &restart_dhcpd(); } return undef; } 1; dhcpd/config-suse-linux-7.1-7.30100644000567100000120000000033510655706245015746 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/var/lib/dhcp/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/config-debian-linux-3.1-*0100644000567100000120000000057110655706245016031 0ustar jcameronwheeldhcpd_conf=/etc/dhcp3/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd3 lease_file=/var/lib/dhcp3/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 start_cmd=/etc/init.d/dhcp3-server start stop_cmd=/etc/init.d/dhcp3-server stop restart_cmd=/etc/init.d/dhcp3-server restart show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 interfaces_type=debian dhcpd/config-suse-linux-8.2-9.10100644000567100000120000000054710655706245015755 0ustar jcameronwheelstart_cmd=/etc/init.d/dhcpd start stop_cmd=/etc/init.d/dhcpd stop restart_cmd=/etc/init.d/dhcpd restart dhcpd_conf=/etc/dhcpd.conf pid_file=/var/lib/dhcp/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/var/lib/dhcp/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 interfaces_type=suse show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/delete_hosts.cgi0100775000567100000120000000315110655706245015006 0ustar jcameronwheel#!/usr/local/bin/perl # Delete one or more hosts or groups require './dhcpd-lib.pl'; require './params-lib.pl'; &ReadParse(); &error_setup($text{'hdelete_err'}); @d = split(/\0/, $in{'d'}); @d || &error($text{'hdelete_enone'}); %access = &get_module_acl(); # Work out what is being done &lock_file($config{'dhcpd_conf'}); $parent = &get_parent_config(); foreach $d (@d) { local @subs = reverse(split(/\//, $d)); $idx = pop(@subs); local $par = $parent; foreach my $s (@subs) { if ($s ne "") { $par = $par->{'members'}->[$s]; } } $del = $par->{'members'}->[$idx]; &error("$text{'eacl_np'} $text{'eacl_pdh'}") if !&can('rw', \%access, $del, 1); next if ($already{$par}); # don't delete host if group is being push(@deleting, [ $par, $del ]); $already{$del}++; $host_count++ if ($del->{'name'} eq 'host'); $group_count++ if ($del->{'name'} eq 'group'); } if ($in{'confirm'}) { # Do it! foreach $pardel (@deleting) { &save_directive($pardel->[0], [ $pardel->[1] ], [ ], 0); } &flush_file_lines(); &unlock_file($config{'dhcpd_conf'}); &webmin_log("delete", "hosts", scalar(@d)); &redirect(""); } else { # Ask first &ui_print_header(undef, $text{'hdelete_title'}, ""); print "
\n"; print &ui_form_start("delete_hosts.cgi", "post"); foreach $d (@d) { print &ui_hidden("d", $d),"\n"; } $msg = $host_count && $group_count ? 'hdelete_rusure1' : $host_count ? 'hdelete_rusure2' : 'hdelete_rusure3'; print &text($msg, $host_count, $group_count),"

\n"; print &ui_form_end([ [ "confirm", $text{'hdelete_ok'} ] ]); print "

\n"; &ui_print_footer("", $text{'index_return'}); } dhcpd/config.info.da0100644000567100000120000000220710655706245014341 0ustar jcameronwheelline1=Konfigurerbare indstillinger,11 lease_sort=Sorter lease efter,1,0-Orden i fil,1-IP adresse,2-Hostnavn hostnet_list=Vis subnet og hosts som,1,0-Ikoner,1-Liste dhcpd_nocols=Ikoner i række,0 lease_tz=Vis lease tider i,1,0-GMT,1-Lokal tid show_ip=Vis IP adresser for hosts?,1,1-Ja,0-Nej show_mac=Vis MAC adresser for hosts?,1,1-Ja,0-Nej group_name=Vis gruppenavne som,1,1-domæne-navne indstilling,0-Navn eller medlemsantal,2-Beskrivelse desc_name=Vis andre objektbeskrivelse istedet for navne?,1,1-Ja,0-Nej display_max=Maksimalt antal hosts og subnet der skal vises,3,Ubegrænset line2=Systemkonfiguration dhcpd_conf=DHCP server config fil,0 dhcpd_path=DHCP server eksekverbar,0 start_cmd=Kommando til at starte DHCP server,3,Run server executable restart_cmd=Kommando for anvendelse af konfiguration,3,Kill and re-start stop_cmd=Kommando til at stoppe DHCP server,3,Kill process pid_file=Sti til DHCP server PID fil,0 lease_file=DHCP server lease fil,0 interfaces_type=Interface filtype,4,redhat-Redhat,mandrake-Mandrake,suse-SuSE,debian-Debian,caldera-Caldera,gentoo-Gentoo,-Webmin version=DHCP server version,3,Find automatisk dhcpd/delete_subnets.cgi0100775000567100000120000000317510655706245015337 0ustar jcameronwheel#!/usr/local/bin/perl # Delete one or more subnets or shared networks require './dhcpd-lib.pl'; require './params-lib.pl'; &ReadParse(); &error_setup($text{'sdelete_err'}); @d = split(/\0/, $in{'d'}); @d || &error($text{'sdelete_enone'}); %access = &get_module_acl(); # Work out what is being done &lock_file($config{'dhcpd_conf'}); $parent = &get_parent_config(); foreach $d (@d) { local ($idx, $pidx) = split(/\//, $d); local $par = $parent; if ($pidx ne "") { # Under a shared network $par = $par->{'members'}->[$pidx]; } $del = $par->{'members'}->[$idx]; &error("$text{'eacl_np'} $text{'eacl_pds'}") if !&can('rw', \%access, $del, 1); next if ($already{$par}); # don't delete subnet if parent is being push(@deleting, [ $par, $del ]); $already{$del}++; $subnet_count++ if ($del->{'name'} eq 'subnet'); $shared_count++ if ($del->{'name'} eq 'shared-network'); } if ($in{'confirm'}) { # Do it! foreach $pardel (@deleting) { &save_directive($pardel->[0], [ $pardel->[1] ], [ ], 0); } &flush_file_lines(); &unlock_file($config{'dhcpd_conf'}); &webmin_log("delete", "subnets", scalar(@d)); &redirect(""); } else { # Ask first &ui_print_header(undef, $text{'sdelete_title'}, ""); print "
\n"; print &ui_form_start("delete_subnets.cgi", "post"); foreach $d (@d) { print &ui_hidden("d", $d),"\n"; } $msg = $subnet_count && $shared_count ? 'sdelete_rusure1' : $subnet_count ? 'sdelete_rusure2' : 'sdelete_rusure3'; print &text($msg, $subnet_count, $shared_count),"

\n"; print &ui_form_end([ [ "confirm", $text{'sdelete_ok'} ] ]); print "

\n"; &ui_print_footer("", $text{'index_return'}); } dhcpd/config-redhat-linux-7.0-13.00100644000567100000120000000055310655706245016311 0ustar jcameronwheelstart_cmd=/etc/rc.d/init.d/dhcpd start stop_cmd=/etc/rc.d/init.d/dhcpd stop restart_cmd=/etc/rc.d/init.d/dhcpd restart dhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/var/lib/dhcp/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 interfaces_type=redhat show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0 dhcpd/config-openmamba-linux0100664000567100000120000000032410655706245016116 0ustar jcameronwheeldhcpd_conf=/etc/dhcpd.conf pid_file=/var/run/dhcpd.pid dhcpd_path=/usr/sbin/dhcpd lease_file=/etc/dhcpd.leases lease_sort=0 dhcpd_nocols=5 lease_tz=0 show_ip=0 show_mac=0 group_name=0 display_max=100 desc_name=0