You can subscribe to this list here.
2001 |
Jan
(13) |
Feb
(24) |
Mar
(23) |
Apr
(11) |
May
(18) |
Jun
(90) |
Jul
(29) |
Aug
(26) |
Sep
(37) |
Oct
(10) |
Nov
(31) |
Dec
(11) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(45) |
Feb
(18) |
Mar
(12) |
Apr
(7) |
May
(10) |
Jun
(62) |
Jul
(8) |
Aug
(40) |
Sep
(41) |
Oct
(43) |
Nov
(29) |
Dec
(36) |
2003 |
Jan
(25) |
Feb
(9) |
Mar
(11) |
Apr
(13) |
May
(19) |
Jun
(19) |
Jul
(11) |
Aug
(4) |
Sep
(109) |
Oct
(73) |
Nov
(69) |
Dec
(21) |
2004 |
Jan
(21) |
Feb
(33) |
Mar
(31) |
Apr
(25) |
May
(33) |
Jun
(42) |
Jul
(47) |
Aug
(12) |
Sep
(41) |
Oct
(47) |
Nov
(30) |
Dec
(19) |
2005 |
Jan
(6) |
Feb
(23) |
Mar
(21) |
Apr
(26) |
May
(21) |
Jun
(16) |
Jul
(17) |
Aug
(7) |
Sep
(8) |
Oct
(13) |
Nov
(7) |
Dec
(10) |
2006 |
Jan
(10) |
Feb
(3) |
Mar
|
Apr
(2) |
May
|
Jun
(3) |
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
(2) |
Dec
(4) |
2007 |
Jan
(2) |
Feb
(3) |
Mar
(2) |
Apr
|
May
(1) |
Jun
(6) |
Jul
(6) |
Aug
(8) |
Sep
(3) |
Oct
(21) |
Nov
(4) |
Dec
(6) |
2008 |
Jan
(11) |
Feb
(28) |
Mar
(26) |
Apr
(9) |
May
(2) |
Jun
(10) |
Jul
(1) |
Aug
(20) |
Sep
|
Oct
|
Nov
|
Dec
|
2009 |
Jan
(4) |
Feb
(10) |
Mar
(1) |
Apr
(24) |
May
(22) |
Jun
(18) |
Jul
(15) |
Aug
(21) |
Sep
(4) |
Oct
(7) |
Nov
(6) |
Dec
|
2010 |
Jan
|
Feb
(2) |
Mar
(13) |
Apr
|
May
(4) |
Jun
|
Jul
|
Aug
(4) |
Sep
(6) |
Oct
(1) |
Nov
(1) |
Dec
|
2011 |
Jan
(18) |
Feb
(2) |
Mar
(23) |
Apr
(4) |
May
(5) |
Jun
(1) |
Jul
|
Aug
|
Sep
(9) |
Oct
|
Nov
(5) |
Dec
|
2012 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(6) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2013 |
Jan
|
Feb
|
Mar
(31) |
Apr
(3) |
May
|
Jun
(2) |
Jul
(6) |
Aug
|
Sep
|
Oct
(4) |
Nov
|
Dec
(7) |
2014 |
Jan
|
Feb
(1) |
Mar
(9) |
Apr
(4) |
May
(7) |
Jun
(2) |
Jul
|
Aug
(2) |
Sep
|
Oct
|
Nov
(4) |
Dec
|
2016 |
Jan
|
Feb
(4) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2017 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(5) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2019 |
Jan
|
Feb
|
Mar
(7) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2020 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(2) |
Oct
|
Nov
|
Dec
|
2022 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
From: Jamie C. <jca...@we...> - 2002-09-11 00:56:46
|
Stephens, Bill {PBSG} wrote: > Currently when viewing active leases, webmin lists all active leases on the > server. On a heavily loaded server, it takes quite a while for the > information to display. It sure would be nice to be able to select active > leases on a particular subnet or shared network. Are there any current > plans to add this kind of functionality? It turns out that adding a link from the Edit Subnet page to the list of leases limited to the ones within that subnet wasn't too hard. Look for it in the 1.0 release .. - Jamie |
From: David C. <co...@co...> - 2002-09-10 20:06:40
|
Webmin, of course is one of the best Administration programs I've found. One thing that I have found a need for, is to give access to clients to edit only their CNAME or A Record in the DNS for one global domain. It's a domain I use for most development, and would like to have the other be able to edit the ip they are working with, with out bugging me. Is this possible with somewhat ease, considering you can already allow access to only a single domain to edit. Thanks David |
From: Stephens, B. {PBSG} <Bil...@pb...> - 2002-09-10 19:14:43
|
Currently when viewing active leases, webmin lists all active leases on the server. On a heavily loaded server, it takes quite a while for the information to display. It sure would be nice to be able to select active leases on a particular subnet or shared network. Are there any current plans to add this kind of functionality? Bill Stephens PepsiCo Business Solutions Group Bil...@pb... 972.376.7155 fax: 972.376.6019 |
From: <jam...@te...> - 2002-09-10 18:00:12
|
> When you go to view some of the sub modules in the net module, though they > are listed as > just list CGI's ( list_routes.cgi for instance), they default to allowing > you to edit them (they are in > a form). How opposed would you be to me patching them such that instead > you seem them > in text (not in a form) and there is an edit button there if you are > allowed to edit them? > Of course I am asking because that is how I wish it to work in order to > minimize the risk of > a customer doing the wrong thing (granted you still have to click save). > Still, if I do this I want it to work in a way that is acceptable to you. > Cheers...james Well, unfortunately I could not wait for a reply, because of dead lines, at any rate, I have created a patch for the DNS sub module of the Net module that does this very thing. When you go into the DNS module now it will simply list the information. If you have permision an edit button will be at the bottom. If you don't, then it won't. If you click edit, the same form as before will appear. In this implementation, I simply copied list_dns.cgi to a new file edit_dns.cgi, and altered list_dns.cgi to only show the information, and have the edit button if appropriate. I did add a new entry to /usr/libexec/webmin/lang/en for "Edit". Also, I added a new funciton to net/net-lib.pl called convert_host_order() which takes a dns object (that dns hash you pass around), and returns a comma delimted string of the nice pretty host order you display on the edit screen (well it used to be the list screen). I tried to make it work for all platforms, but there is no way for me to test that. Cheers...james diff -urN .delta/lang/en current/lang/en --- .delta/lang/en Mon Sep 9 16:25:53 2002 +++ current/lang/en Tue Sep 10 10:57:37 2002 @@ -29,6 +29,7 @@ yes=Yes no=No save=Save +edit=Edit create=Create delete=Delete find=Find diff -urN .delta/net/edit_dns.cgi current/net/edit_dns.cgi --- .delta/net/edit_dns.cgi Wed Dec 31 19:00:00 1969 +++ current/net/edit_dns.cgi Tue Sep 10 13:08:24 2002 @@ -0,0 +1,45 @@ +#!/usr/local/bin/perl +# list_dns.cgi +# Display the DNS client configuration + +require './net-lib.pl'; +$access{'dns'} == 2 || &error($text{'dns_ecannot'}); +&header($text{'dns_title'}, ""); +print "<hr>\n"; + +$dns = &get_dns_config(); +print "<form action=save_dns.cgi>\n"; +print "<table border width=100%>\n"; +print "<tr $tb> <td><b>$text{'dns_options'}</b></td> </tr>\n"; +print "<tr $cb> <td><table width=100%>\n"; + +print "<tr> <td><b>$text{'dns_hostname'}</b></td>\n"; +printf "<td><input name=hostname size=20 value=\"%s\"></td>\n", + &get_hostname(); + +print "<td><b>$text{'dns_order'}</b></td>\n"; +print "<td>",&order_input($dns),"</td> </tr>\n"; + +print "<tr> <td valign=top><b>$text{'dns_servers'}</b></td> <td>\n"; +for($i=0; $i<$max_dns_servers; $i++) { + printf "<input name=nameserver_$i size=15 value=\"%s\"><br>\n", + $dns->{'nameserver'}->[$i]; + } +print "</td>\n"; + +print "<td valign=top><b>$text{'dns_search'}</b></td> <td valign=top>\n"; +printf "<input type=radio name=domain_def value=1 %s> $text{'dns_none'}\n", + $dns->{'domain'} ? "" : "checked"; +printf "<input type=radio name=domain_def value=0 %s> $text{'dns_listed'}\n", + $dns->{'domain'} ? "checked" : ""; +print "<br><textarea name=domain rows=3 cols=30>", + join("\n", @{$dns->{'domain'}}),"</textarea></td> </tr>\n"; + +print "</table></td></tr></table>\n"; +print "<input type=submit value=\"$text{'save'}\">\n" + if ($access{'dns'} == 2); +print "</form>\n"; + +print "<hr>\n"; +&footer("", $text{'index_return'}); + diff -urN .delta/net/lang/en current/net/lang/en --- .delta/net/lang/en Mon Sep 9 16:25:54 2002 +++ current/net/lang/en Tue Sep 10 13:13:50 2002 @@ -87,6 +87,7 @@ routes_local=Local routes routes_err=Failed to save routing routes_ecannot=You are not allowed to edit routing and gateways +routes_vcannot=You are not allowed to view routing and gateways routes_script=Additional routing commands routes_etype='$1' is not a valid route type @@ -100,6 +101,7 @@ dns_listed=Listed .. dns_eorder=Missing resolution order dns_ecannot=You are not allowed to edit DNS client settings +dns_vcannot=You are not allowed to view DNS client settings dns_err=Failed to save DNS configuration dns_ehost='$1' is not a valid hostname dns_ens='$1' is not a valid nameserver IP address diff -urN .delta/net/list_dns.cgi current/net/list_dns.cgi --- .delta/net/list_dns.cgi Mon Sep 9 16:25:53 2002 +++ current/net/list_dns.cgi Tue Sep 10 13:30:55 2002 @@ -3,42 +3,42 @@ # Display the DNS client configuration require './net-lib.pl'; -$access{'dns'} || &error($text{'dns_ecannot'}); +$access{'dns'} || &error($text{'dns_vcannot'}); &header($text{'dns_title'}, ""); print "<hr>\n"; $dns = &get_dns_config(); -print "<form action=save_dns.cgi>\n"; print "<table border width=100%>\n"; print "<tr $tb> <td><b>$text{'dns_options'}</b></td> </tr>\n"; print "<tr $cb> <td><table width=100%>\n"; -print "<tr> <td><b>$text{'dns_hostname'}</b></td>\n"; -printf "<td><input name=hostname size=20 value=\"%s\"></td>\n", - &get_hostname(); +print "<tr> <td align=right><b>$text{'dns_hostname'}:</b></td>\n"; +printf "<td>%s</td>\n", &get_hostname(); -print "<td><b>$text{'dns_order'}</b></td>\n"; -print "<td>",&order_input($dns),"</td> </tr>\n"; +print "<td align=right><b>$text{'dns_order'}:</b></td>\n"; +printf "<td>%s</td> </tr>\n", convert_host_order($dns); -print "<tr> <td valign=top><b>$text{'dns_servers'}</b></td> <td>\n"; +print "<tr> <td valign=top align=right><b>$text{'dns_servers'}:</b></td> <td>\n"; for($i=0; $i<$max_dns_servers; $i++) { - printf "<input name=nameserver_$i size=15 value=\"%s\"><br>\n", + printf "%s<br>\n", $dns->{'nameserver'}->[$i]; } print "</td>\n"; -print "<td valign=top><b>$text{'dns_search'}</b></td> <td valign=top>\n"; -printf "<input type=radio name=domain_def value=1 %s> $text{'dns_none'}\n", - $dns->{'domain'} ? "" : "checked"; -printf "<input type=radio name=domain_def value=0 %s> $text{'dns_listed'}\n", - $dns->{'domain'} ? "checked" : ""; -print "<br><textarea name=domain rows=3 cols=30>", - join("\n", @{$dns->{'domain'}}),"</textarea></td> </tr>\n"; +print "<td valign=top align=right><b>$text{'dns_search'}:</b></td> <td valign=top>\n"; +foreach my $domain (@{$dns->{'domain'}}) { + print "${domain}<br></td> </tr>\n"; + } print "</table></td></tr></table>\n"; -print "<input type=submit value=\"$text{'save'}\">\n" - if ($access{'dns'} == 2); -print "</form>\n"; + +# +# If they can edit display the edit button +if ($access{'dns'} == 2) { + print "<form action=edit_dns.cgi>\n"; + print "<input type=submit value=\"$text{'edit'}\">\n"; + print "</form>\n"; + } print "<hr>\n"; &footer("", $text{'index_return'}); diff -urN .delta/net/net-lib.pl current/net/net-lib.pl --- .delta/net/net-lib.pl Mon Sep 9 16:25:53 2002 +++ current/net/net-lib.pl Tue Sep 10 13:04:13 2002 @@ -68,5 +68,27 @@ return join(".", (hex($1), hex($2), hex($3), hex($4))); } +# +# Convert nsswitch entries to user viewable text. +sub convert_host_order { +my $dns = shift; +my @order = split(/\s+/, $dns->{'order'}); +my %conversion = ( + 'files' => 'Hosts', + 'hosts' => 'Hosts', + 'dns' => 'DNS', + 'bind' => 'DNS', + 'nis' => 'NIS', + 'yp' => 'YP', + 'nisplus' => 'NIS+', + 'db' => 'DB'); + +foreach my $element (@order) { + $element = $conversion{$element}; +} +return join(', ', @order); +} + + 1; |
From: <jam...@te...> - 2002-09-09 20:52:42
|
Hi Jamie, I need to be able to limit who can turn on and off ip forwarding (Act as router? question in the routing and gateways sub module of the net module) while still allowing them to add static routes. I thought it would be a trivial change but then I found that the manual polymorphism of your net-lib.pl library (-; It looks like the routing_input() function is what is responsible for painting the screen with the form that: - shows all static routes. - allows the selection of "Act as router?"/ip_forwarding. The problem is that this funciton lives in what looks like 14 different libraries each representing the way to do things on one specific platform. So if I fix it in the library redhat-linux-lib.pl, the fix still needs to be propagated to 13 other platforms, most of which I cannot test. That being said, what I need to control really should operate from a forms perspective exactly the same no matter what platform I am on. What it really looks like needs to be done is to architect things just a little different so that you have a seperate output routine that is common to all platforms, and then have each platform have instead a function that gathers the information into a "standard" hash, and pass that back to the format routine....sigh. This appears to be the right thing to do, but runs the risk of even more problems at first, and would call for even better testing on the other platforms. What do you think Jamie. I am willing to reconstruct it as mentioned above, but is this a desirable thing for you and do you have the systems and or time to test it? I could just make it work the way I want under redhat linux but it seems to be a desirable feature for others? What seems amicable to you? Cheers...james |
From: <jam...@te...> - 2002-09-09 19:47:21
|
This patch allows one to allow editing of hosts names but not allow adding or vice versa/ This patch works the same thing the one I just sent for the interfaces. Cheers...james diff -ur .delta/net/acl_security.pl current/net/acl_security.pl --- .delta/net/acl_security.pl Mon Sep 9 14:20:51 2002 +++ current/net/acl_security.pl Mon Sep 9 15:31:46 2002 @@ -43,7 +43,11 @@ printf "<input type=radio name=hosts value=0 %s> $text{'no'}</td>\n", $_[0]->{'hosts'} ? "" : "checked"; -print "<td> </td><td> </td></tr>\n"; +print "<td><b>$text{'acl_hosts_add'}</b></td> <td nowrap>\n"; +printf "<input type=radio name=hosts_add value=1 %s> $text{'yes'}\n", + $_[0]->{'hosts_add'} == 1 ? "checked" : ""; +printf "<input type=radio name=hosts_add value=0 %s> $text{'no'}</td> </tr>\n", + $_[0]->{'hosts_add'} ? "" : "checked"; } # acl_security_save(&options) @@ -55,5 +59,6 @@ $_[0]->{'routes'} = $in{'routes'}; $_[0]->{'dns'} = $in{'dns'}; $_[0]->{'hosts'} = $in{'hosts'}; +$_[0]->{'hosts_add'} = $in{'hosts_add'}; } diff -ur .delta/net/defaultacl current/net/defaultacl --- .delta/net/defaultacl Mon Sep 9 14:20:51 2002 +++ current/net/defaultacl Mon Sep 9 15:05:34 2002 @@ -3,3 +3,4 @@ routes=2 dns=2 hosts=2 +hosts_add=1 diff -ur .delta/net/edit_host.cgi current/net/edit_host.cgi --- .delta/net/edit_host.cgi Mon Sep 9 14:20:50 2002 +++ current/net/edit_host.cgi Mon Sep 9 15:09:06 2002 @@ -3,12 +3,13 @@ # Edit or create a host address require './net-lib.pl'; -$access{'hosts'} == 2 || &error($text{'hosts_ecannot'}); &ReadParse(); if ($in{'new'}) { + $access{'hosts_add'} || &error($text{'hosts_acannot'}); &header($text{'hosts_create'}, ""); } else { + $access{'hosts'} == 2 || &error($text{'hosts_ecannot'}); &header($text{'hosts_edit'}, ""); @hosts = &list_hosts(); $h = $hosts[$in{'idx'}]; diff -ur .delta/net/lang/en current/net/lang/en --- .delta/net/lang/en Mon Sep 9 14:20:51 2002 +++ current/net/lang/en Mon Sep 9 15:09:27 2002 @@ -116,6 +116,8 @@ hosts_detail=Host and Addresses hosts_return=host addresses list hosts_ecannot=You are not allowed to edit host addresses +hosts_acannot=You are not allowed to add host addresses +hosts_vcannot=You are not allowed to view host addresses log_create_host=Created host address $1 log_delete_host=Deleted host address $1 @@ -134,6 +136,7 @@ acl_ifcs=Can edit network interfaces? acl_routes=Can edit routing and gateways? acl_dns=Can edit DNS client settings? +acl_hosts_add=Can add host addresses? acl_hosts=Can edit host addresses? acl_view=View only diff -ur .delta/net/list_hosts.cgi current/net/list_hosts.cgi --- .delta/net/list_hosts.cgi Mon Sep 9 14:20:50 2002 +++ current/net/list_hosts.cgi Mon Sep 9 15:08:32 2002 @@ -3,12 +3,12 @@ # List hosts from /etc/hosts require './net-lib.pl'; -$access{'hosts'} || &error($text{'hosts_ecannot'}); +$access{'hosts'} || &error($text{'hosts_vcannot'}); &header($text{'hosts_title'}, ""); print "<hr>\n"; print "<a href=\"edit_host.cgi?new=1\">$text{'hosts_add'}</a><br>\n" - if ($access{'hosts'} == 2); + if ($access{'hosts_add'}); print "<table border cellpadding=3>\n"; print "<tr $tb> <td><b>$text{'hosts_ip'}</b></td> ", "<td><b>$text{'hosts_host'}</b></td> </tr>\n"; @@ -26,7 +26,7 @@ } print "</table>\n"; print "<a href=\"edit_host.cgi?new=1\">$text{'hosts_add'}</a>\n" - if ($access{'hosts'} == 2); + if ($access{'hosts_add'}); print "<p>\n"; print "<hr>\n"; |
From: <jam...@te...> - 2002-09-09 19:00:04
|
Hi Jamie, When you go to view some of the sub modules in the net module, though they are listed as just list CGI's ( list_routes.cgi for instance), they default to allowing you to edit them (they are in a form). How opposed would you be to me patching them such that instead you seem them in text (not in a form) and there is an edit button there if you are allowed to edit them? Of course I am asking because that is how I wish it to work in order to minimize the risk of a customer doing the wrong thing (granted you still have to click save). Still, if I do this I want it to work in a way that is acceptable to you. Cheers...james |
From: <jam...@te...> - 2002-09-09 18:08:17
|
Hi Jamie, It was desirable in our deployment of webmin to have the option the interfaces submodule of the network module, to make it so that a user could could view and edit an interface but they could not create a new one. At the end of this email I have attached a patch that adds this ability. The patch includes the following changes (high level): - Adds the option to add an interface (yes/no) to the acl_security.pl file. - Adds text for not being able to add an interface to lang/en. - Adds text for not being able to view an interface. - list_ifcs.cgi now uses the cannot view interface error message if they cannot even view the interface. - list_ifcs.cgi does not show a link to add an interface if they user does not have that right. - edit_aifcs.cgi checks to see how it was called. If it was called to create a an interface it determines if the user can and if not gives an error. If it was called to edit an interface it checks if the user can edit it. If he/she can't then it gives an error. I set it up so that even if a user could not edit an interface, if allowed to he/she can add one. I actually not totally sure of that decision; it seemed like the flexible thing to do, but it would have been a tiny bit less code changes if I would have added append to edit, view, no. I did not update all the language files (only english). I could have done the Espanol one, but I was a little unsure of the exact grammer. Anyway, I hope the patch will be useful. Cheers...james diff -ur .delta/net/acl_security.pl current/net/acl_security.pl --- .delta/net/acl_security.pl Mon Sep 9 10:52:38 2002 +++ current/net/acl_security.pl Mon Sep 9 12:13:57 2002 @@ -13,36 +13,45 @@ printf "<input type=radio name=ifcs value=0 %s> $text{'no'}</td>\n", $_[0]->{'ifcs'} ? "" : "checked"; -print "<td><b>$text{'acl_routes'}</b></td> <td nowrap>\n"; +print "<td><b>$text{'acl_ifcs_add'}</b></td> <td nowrap>\n"; +printf "<input type=radio name=ifcs_add value=1 %s> $text{'yes'}\n", + $_[0]->{'ifcs_add'} == 1 ? "checked" : ""; +printf "<input type=radio name=ifcs_add value=0 %s> $text{'no'}</td> </tr>\n", + $_[0]->{'ifcs_add'} ? "" : "checked"; + +print "<tr> <td><b>$text{'acl_routes'}</b></td> <td nowrap>\n"; printf "<input type=radio name=routes value=2 %s> $text{'yes'}\n", $_[0]->{'routes'} == 2 ? "checked" : ""; printf "<input type=radio name=routes value=1 %s> $text{'acl_view'}\n", $_[0]->{'routes'} == 1 ? "checked" : ""; -printf "<input type=radio name=routes value=0 %s> $text{'no'}</td> </tr>\n", +printf "<input type=radio name=routes value=0 %s> $text{'no'}</td>\n", $_[0]->{'routes'} ? "" : "checked"; -print "<tr> <td><b>$text{'acl_dns'}</b></td> <td nowrap>\n"; +print "<td><b>$text{'acl_dns'}</b></td> <td nowrap>\n"; printf "<input type=radio name=dns value=2 %s> $text{'yes'}\n", $_[0]->{'dns'} == 2 ? "checked" : ""; printf "<input type=radio name=dns value=1 %s> $text{'acl_view'}\n", $_[0]->{'dns'} == 1 ? "checked" : ""; -printf "<input type=radio name=dns value=0 %s> $text{'no'}</td>\n", +printf "<input type=radio name=dns value=0 %s> $text{'no'}</td> </tr>\n", $_[0]->{'dns'} ? "" : "checked"; -print "<td><b>$text{'acl_hosts'}</b></td> <td nowrap>\n"; +print "<tr> <td><b>$text{'acl_hosts'}</b></td> <td nowrap>\n"; printf "<input type=radio name=hosts value=2 %s> $text{'yes'}\n", $_[0]->{'hosts'} == 2 ? "checked" : ""; printf "<input type=radio name=hosts value=1 %s> $text{'acl_view'}\n", $_[0]->{'hosts'} == 1 ? "checked" : ""; -printf "<input type=radio name=hosts value=0 %s> $text{'no'}</td> </tr>\n", +printf "<input type=radio name=hosts value=0 %s> $text{'no'}</td>\n", $_[0]->{'hosts'} ? "" : "checked"; -} + +print "<td> </td><td> </td></tr>\n"; +} # acl_security_save(&options) # Parse the form for security options for the file module sub acl_security_save { $_[0]->{'ifcs'} = $in{'ifcs'}; +$_[0]->{'ifcs_add'} = $in{'ifcs_add'}; $_[0]->{'routes'} = $in{'routes'}; $_[0]->{'dns'} = $in{'dns'}; $_[0]->{'hosts'} = $in{'hosts'}; diff -ur .delta/net/defaultacl current/net/defaultacl --- .delta/net/defaultacl Mon Sep 9 10:52:38 2002 +++ current/net/defaultacl Mon Sep 9 11:41:01 2002 @@ -1,4 +1,5 @@ ifcs=2 +ifcs_add=1 routes=2 dns=2 hosts=2 diff -ur .delta/net/edit_aifc.cgi current/net/edit_aifc.cgi --- .delta/net/edit_aifc.cgi Mon Sep 9 10:52:38 2002 +++ current/net/edit_aifc.cgi Mon Sep 9 13:23:48 2002 @@ -3,12 +3,13 @@ # Edit or create an active interface require './net-lib.pl'; -$access{'ifcs'} == 2 || &error($text{'ifcs_ecannot'}); &ReadParse(); if ($in{'new'}) { + $access{'ifcs_add'} == 1 || &error($text{'ifcs_acannot'}); &header($text{'aifc_create'}, ""); } else { + $access{'ifcs'} == 2 || &error($text{'ifcs_ecannot'}); &header($text{'aifc_edit'}, ""); @act = &active_interfaces(); $a = $act[$in{'idx'}]; diff -ur .delta/net/lang/en current/net/lang/en --- .delta/net/lang/en Mon Sep 9 10:52:38 2002 +++ current/net/lang/en Mon Sep 9 13:45:27 2002 @@ -24,6 +24,8 @@ ifcs_return=network interfaces ifcs_unknown=Unknown ifcs_ecannot=You are not allowed to edit network interfaces +ifcs_vcannot=You are not allowed to view network interfaces +ifcs_acannot=You are not allowed to add network interfaces aifc_create=Create Active Interface aifc_edit=Edit Active Interface @@ -128,6 +130,7 @@ log_delete_bifc=Deleted interface $1 address $2 log_dyn=dynamic +acl_ifcs_add=Can add a network interface? acl_ifcs=Can edit network interfaces? acl_routes=Can edit routing and gateways? acl_dns=Can edit DNS client settings? diff -ur .delta/net/list_ifcs.cgi current/net/list_ifcs.cgi --- .delta/net/list_ifcs.cgi Mon Sep 9 10:52:38 2002 +++ current/net/list_ifcs.cgi Mon Sep 9 13:49:09 2002 @@ -4,13 +4,14 @@ require './net-lib.pl'; &ReadParse(); -$access{'ifcs'} || &error($text{'ifcs_ecannot'}); +$access{'ifcs'} || &error($text{'ifcs_vcannot'}); &header($text{'ifcs_title'}, ""); print "<hr>\n"; print "<h3>$text{'ifcs_now'}</h3>\n"; -print "<a href='edit_aifc.cgi?new=1'>$text{'ifcs_add'}</a><br>\n" - if ($access{'ifcs'} == 2); +if($access{'ifcs_add'}) { + print "<a href='edit_aifc.cgi?new=1'>$text{'ifcs_add'}</a><br>\n"; +} print "<table border width=100%>\n"; print "<tr $tb> <td><b>$text{'ifcs_name'}</b></td> ", "<td><b>$text{'ifcs_type'}</b></td> ", @@ -39,13 +40,15 @@ "</td> </tr>\n"; } print "</table>\n"; -print "<a href='edit_aifc.cgi?new=1'>$text{'ifcs_add'}</a>\n" - if ($access{'ifcs'} == 2); +if($access{'ifcs_add'}) { + print "<a href='edit_aifc.cgi?new=1'>$text{'ifcs_add'}</a>\n"; +} print "<p><hr>\n"; print "<h3>$text{'ifcs_boot'}</h3>\n"; -print "<a href='edit_bifc.cgi?new=1'>$text{'ifcs_add'}</a><br>\n" - if ($access{'ifcs'} == 2); +if($access{'ifcs_add'}) { + print "<a href='edit_bifc.cgi?new=1'>$text{'ifcs_add'}</a><br>\n"; +} print "<table border width=100%>\n"; print "<tr $tb> <td><b>$text{'ifcs_name'}</b></td> ", "<td><b>$text{'ifcs_type'}</b></td> ", @@ -76,9 +79,9 @@ print "<td>",($a->{'up'} ? $text{'yes'} : $text{'no'}),"</td> </tr>\n"; } print "</table>\n"; -print "<a href='edit_bifc.cgi?new=1'>$text{'ifcs_add'}</a>\n" - if ($access{'ifcs'} == 2); - +if($access{'ifcs_add'}) { + print "<a href='edit_bifc.cgi?new=1'>$text{'ifcs_add'}</a>\n"; +} print "<p><hr>\n"; &footer("", $text{'index_return'}); |
From: Steve M B. <sm...@cs...> - 2002-09-08 20:00:52
|
I don't know where Jamie(or anybody else) cares to have bug reports submited, and noticing that the webmin bug tracking system seems to be rarely used recently, I'm submitting it here first. Sorry if it was preferred to have been submitted somewhere else first, will do next time. Under Servers->DHCPD->Module_Config if you try to change the "Interfaces to run DHCP on" from "Automatic" to a user defined (say eth1, or anything besides eth0), it doesn't register the change. Under RH 7.[1,2,3], the file /etc/sysconfig/dhcpd needs to be ammended with eth1 (or whatever the interface(s) needed to be used) after "DHCPDARGS=" . I don't know if this is required before <RH7.0 or any other distro. And I currently don't have time to figure out what is needed to fix it(I currently just edit by hand). If nobody submits a fix by wedsnday, I would have time then to dive in and see what needs changing. Steve |
From: Jamie C. <jca...@we...> - 2002-09-07 01:39:13
|
Kenneth Porter wrote: > On Fri, 2002-09-06 at 17:09, Jamie Cameron wrote: > >>Ryan Cavanaugh wrote: >> >>>Does webmin work with bind9? >>> >>Yes, it works fine .. >> > > HOWEVER: > > Unless something changed recently in the BIND module, Webmin should only > be used for static zones. Dynamic zones should be changed either using > the nsupdate program or by stopping the name server, editing the zone > file, and then restarting it. Dynamic zone files should not be edited > with the server running, as a changed part of the zone may be in memory > or a journal file and not committed to the zone file. > > Jamie, is this still true, or has dynamic zone editing support been > added? It's still true .. webmin directly updates the zone files, so if a zone is being dynamically updated as well you don't want to use webmin to edit it. - Jamie |
From: Kenneth P. <sh...@we...> - 2002-09-07 01:11:14
|
On Fri, 2002-09-06 at 17:09, Jamie Cameron wrote: > Ryan Cavanaugh wrote: > > Does webmin work with bind9? > Yes, it works fine .. HOWEVER: Unless something changed recently in the BIND module, Webmin should only be used for static zones. Dynamic zones should be changed either using the nsupdate program or by stopping the name server, editing the zone file, and then restarting it. Dynamic zone files should not be edited with the server running, as a changed part of the zone may be in memory or a journal file and not committed to the zone file. Jamie, is this still true, or has dynamic zone editing support been added? |
From: Jamie C. <jca...@we...> - 2002-09-07 00:09:41
|
Ryan Cavanaugh wrote: > Does webmin work with bind9? Yes, it works fine .. - Jamie |
From: Ryan C. <rca...@de...> - 2002-09-06 18:46:10
|
Does webmin work with bind9? |
From: <jam...@te...> - 2002-09-03 14:43:19
|
Hi Jamie, What are the preroot settings in the miniserv.conf file for? Thanks...james |
From: Jamie C. <jca...@we...> - 2002-09-02 04:20:16
|
Ok, I see the cause of this .. webmin is calling the edquota command to set the new user's quotas before it is converted to /etc/master.passwd file to /etc/passwd . This will be fixed in the next release, due very soon .. or I can send you an updated module if you like? - Jamie Anand Atreya wrote: > Yes, and after being set in the quotas module, they take effect and work as > they should. > > -- Anand > > ----- Original Message ----- > From: "Jamie Cameron" <jca...@we...> > To: <web...@li...> > Sent: Sunday, September 01, 2002 9:19 PM > Subject: Re: Users and Groups module/Quotas module > > > >>Anand Atreya wrote: >> >> >>>Hi. I have just installed a fresh copy of FreeBSD 4.62 and installed >>>Webmin 0.990 on top of that. I can't get the new users quotas feature >>>to work. Here is the list in order of what I have done to the computer: >>> >>> >>> >>>1. Installed FreeBSD 4.62. I have two partitions - one for swap, one >>>for / (I know it's ugly). >>> >>>2. Installed various FreeBSD packages. >>> >>>3. Installed Webmin from the tarball on webmin.com. >>> >>>4. Recompiled the system kernel with "options QUOTAS" to enable quota >>>support. >>> >>>5. Enabled quotas on the / partition. >>> >>>6. Set up new user quotas in the webmin quotas module. (I set both hard >>>and soft quotas for both files and blocks.) >>> >>>7. Went to the webmin users and groups module and created a new user. I >>>made sure "Create user in other modules" was enabled. >>> >>>After these steps, the new user is listed in the quotas module, but has >>>quotas set to unlimited. I have not modified any of the scripts or >>>settings for anything from the default install. Please give me a >>>heads-up as to what's happening here. >>> >> >>One question that might help solve this - can you edit the quotas of users >>normally in the quotas module? >> >> - Jamie |
From: Anand A. <we...@an...> - 2002-09-02 01:53:31
|
Yes, and after being set in the quotas module, they take effect and work as they should. -- Anand ----- Original Message ----- From: "Jamie Cameron" <jca...@we...> To: <web...@li...> Sent: Sunday, September 01, 2002 9:19 PM Subject: Re: Users and Groups module/Quotas module > Anand Atreya wrote: > > > Hi. I have just installed a fresh copy of FreeBSD 4.62 and installed > > Webmin 0.990 on top of that. I can't get the new users quotas feature > > to work. Here is the list in order of what I have done to the computer: > > > > > > > > 1. Installed FreeBSD 4.62. I have two partitions - one for swap, one > > for / (I know it's ugly). > > > > 2. Installed various FreeBSD packages. > > > > 3. Installed Webmin from the tarball on webmin.com. > > > > 4. Recompiled the system kernel with "options QUOTAS" to enable quota > > support. > > > > 5. Enabled quotas on the / partition. > > > > 6. Set up new user quotas in the webmin quotas module. (I set both hard > > and soft quotas for both files and blocks.) > > > > 7. Went to the webmin users and groups module and created a new user. I > > made sure "Create user in other modules" was enabled. > > > > After these steps, the new user is listed in the quotas module, but has > > quotas set to unlimited. I have not modified any of the scripts or > > settings for anything from the default install. Please give me a > > heads-up as to what's happening here. > > > One question that might help solve this - can you edit the quotas of users > normally in the quotas module? > > - Jamie > > > > > ------------------------------------------------------- > This sf.net email is sponsored by: OSDN - Tired of that same old > cell phone? Get a new here for FREE! > https://www.inphonic.com/r.asp?r=sourceforge1&refcode1=vs3390 > - > Forwarded by the Webmin development list at web...@we... > To remove yourself from this list, go to > http://lists.sourceforge.net/lists/listinfo/webadmin-devel > |
From: Jamie C. <jca...@we...> - 2002-09-02 01:19:49
|
Anand Atreya wrote: > Hi. I have just installed a fresh copy of FreeBSD 4.62 and installed > Webmin 0.990 on top of that. I can't get the new users quotas feature > to work. Here is the list in order of what I have done to the computer: > > > > 1. Installed FreeBSD 4.62. I have two partitions - one for swap, one > for / (I know it's ugly). > > 2. Installed various FreeBSD packages. > > 3. Installed Webmin from the tarball on webmin.com. > > 4. Recompiled the system kernel with "options QUOTAS" to enable quota > support. > > 5. Enabled quotas on the / partition. > > 6. Set up new user quotas in the webmin quotas module. (I set both hard > and soft quotas for both files and blocks.) > > 7. Went to the webmin users and groups module and created a new user. I > made sure "Create user in other modules" was enabled. > > After these steps, the new user is listed in the quotas module, but has > quotas set to unlimited. I have not modified any of the scripts or > settings for anything from the default install. Please give me a > heads-up as to what's happening here. One question that might help solve this - can you edit the quotas of users normally in the quotas module? - Jamie |
From: Anand A. <we...@an...> - 2002-09-02 00:03:59
|
Hi. I have just installed a fresh copy of FreeBSD 4.62 and installed = Webmin 0.990 on top of that. I can't get the new users quotas feature = to work. Here is the list in order of what I have done to the computer: 1. Installed FreeBSD 4.62. I have two partitions - one for swap, one = for / (I know it's ugly). 2. Installed various FreeBSD packages. 3. Installed Webmin from the tarball on webmin.com. 4. Recompiled the system kernel with "options QUOTAS" to enable quota = support. 5. Enabled quotas on the / partition. 6. Set up new user quotas in the webmin quotas module. (I set both hard = and soft quotas for both files and blocks.) 7. Went to the webmin users and groups module and created a new user. I = made sure "Create user in other modules" was enabled. After these steps, the new user is listed in the quotas module, but has = quotas set to unlimited. I have not modified any of the scripts or = settings for anything from the default install. Please give me a = heads-up as to what's happening here. Thanks. -- Anand Atreya |
From: Jean-Michel P. <jm....@fr...> - 2002-08-30 08:18:02
|
Dear all, I am planning to contribute a wireless Webmin module. There is already a=20 wireless module in the contrib area, but the link appears to be broken. H= as=20 anyone used this wireless module? Can anyone send me the module code for=20 review? Cheers, Jean-Michel POURE |
From: Joe C. <jo...@sw...> - 2002-08-29 22:27:53
|
You could email Richard directly about your troubles. I've never had trouble getting in touch with him. Or you could post your module on a website somewhere (even free webhosts will work fine) and post a link to it here. Freshmeat also permits announces of software, so you could get a listing there. It's true the ThirdPartyModules site is the first place folks go looking for modules, but it isn't the only way to let folks know about it. Esteban Prospero wrote: > Hi all! > We've developed a webmin module to manage Cistron > Radius server. We've gone through > thirdpartymodules.com and verified that there're still > no modules for any radius server at all. The issue is > that I uploaded the module to ThirdPartyModules and > got no further reply, and I'm not able to login the > site. > I think that this module will be useful for all > developers and users but I can't make it public. > > Do you have any suggestion to solve this issue? > > Thanks and regards! > Esteban -- Joe Cooper <jo...@sw...> Web caching appliances and support. http://www.swelltech.com |
From: <id9...@ya...> - 2002-08-29 21:52:41
|
Hi all! We've developed a webmin module to manage Cistron Radius server. We've gone through thirdpartymodules.com and verified that there're still no modules for any radius server at all. The issue is that I uploaded the module to ThirdPartyModules and got no further reply, and I'm not able to login the site. I think that this module will be useful for all developers and users but I can't make it public. Do you have any suggestion to solve this issue? Thanks and regards! Esteban Ahora podés usar Yahoo! Messenger desde tu celular. Aprendé cómo hacerlo en Yahoo! Móvil: http://ar.mobile.yahoo.com/sms.html |
From: Jamie C. <jca...@we...> - 2002-08-29 01:32:04
|
jam...@te... wrote: > jam...@te... wrote .. > > >>Yeah, that's probably what happened. If I moved the K scripts to just >>runlevels 0, 1 and 6 would that cause it to attempt to be re-started when >>switching from runlevel 3 to 5 ? >> > > It should not provided you are creating a subsys file. And you are (you > call it a lockfile, but who cares (-;). The code /etc/rc.d/rc actually > uses that file to determine if it should try to start a "sub system"/rc > script or not. So for instance, it would work like this: > > 1) Go to run level 3. > 2) See if webmin subsys file exists. > 3) It does not so start it. > 4) webmin rc script creates the subsys file. > 5) Go to run level 5. > 6) See if webmin subsys file exists. > 7) It does so don't run the webmin rc script. Yeah, webmin creates a subsys file on redhat. Glad to hear it is good for something .. >>>Concerning chkconfig, I can see why for your purposes you may want to >>> > avoid > >>>chkconfig. You want the RPM to install on as many machines as >>> > possible. > >>>Still you probably don't want to have the links be part of the files >>> > that > >>>ship >>>with the RPM. The reason is that those links are subject to change by >>>the >>>user (their kind of like config information). I would make their >>> > creatoin > >>>part of your post script and their deletion part of your of your preun >>> >>They could also be marked as config files in the .spec file I guess .. >> > I suppose you could do that. Some rpms take this approach, and you end up > with symblinks called S??*.rpmsave hanging around. Good point .. that wouldn't be a good idea then. >>>provide entries in some database (I am not sure where it lives) for >>> > ntsysv > >>>and friends. Its just the right thing to do on a RedHat based system. >>>On the other hand that makes your code more complicated. >>> >>I did consider having the script and links created by a post script, >> > similar to > >>code that is run when installing the .tar.gz version of webmin. This >> > would > >>be good for distros like suse that used /sbin as the init script base >>directory instead of /etc/init.d ! >> > You HP/UX places there rc scripts under /sbin also. Very scary. That was > the one thing about HP/UX I always scratched my head over. Fortunately I don't have to worry about installing RPMs on HP/UX though :) - Jamie |
From: Joe C. <jo...@sw...> - 2002-08-29 01:00:43
|
Jamie Cameron wrote: > The only reason it doesn't compare ownership against root is that the > same code is used in > setup.sh to setup the temp directory, and it is possible that someone > might want to install > webmin as a non-root user. Since RPMs are always installed as root, $< > will always be 0. Just to be pedantic...Technically a non-root user can use RPM, assuming he has his own rpmdb, and uses relocatable packages. But the Webmin RPM would never work in such a case, so no worries. ;-) -- Joe Cooper <jo...@sw...> Web caching appliances and support. http://www.swelltech.com |
From: Jamie C. <jca...@we...> - 2002-08-28 23:38:02
|
jam...@te... wrote: > Hi Jamie, > > I ran accross the follow code snippet in the %pre section of the specfile: > > perl <<EOD; > # maketemp.pl > # Create the /tmp/.webmin directory if needed > > \$tmp_dir = "/tmp/.webmin"; > > if (!-d \$tmp_dir) { > mkdir(\$tmp_dir, 0755) || exit 1; > chown(\$<, \$(, \$tmp_dir); > chmod(0755, \$tmp_dir); > } > @st = stat(\$tmp_dir); > if (@st && \$st[4] == \$< && \$st[5] == \$( && \$st[2] & 0x4000 && > (\$st[2] & 0777) == 0755) { > exit 0; > } > else { > exit 1; > } > > > EOD > > The main issue I saw was that it does not seem to deal with the possibility that the file > exists and is a symbolic link to somewhere the admin would prefer it not point to. Here is > code I think handles this situation: > > > perl <<EOD; > # maketemp.pl > # Create the /tmp/.webmin directory if needed > > \$tmp_dir = "/tmp/.webmin"; > > # > # Only create it if it does not exist > if (! -e \$tmp_dir) { > mkdir(\$tmp_dir, 0755) || exit 1; > chown(\$<, \$(, \$tmp_dir) || exit 1; > chmod(0755, \$tmp_dir) || exit 1; > } > else { > # > # It does exist...make sure its a directory > if ( -d \$tmp_dir ) { > # > # Now lets veirify it not a sybolic link: > exit(1) if( -l \$tmp_dir); > } > else { > # > # Its not a directory...we just need to exit > exit(1); > } > } > @st = stat(\$tmp_dir); > if (@st && \$st[4] == \$< && \$st[5] == \$( && \$st[2] & 0x4000 && > (\$st[2] & 0777) == 0755) { > exit 0; > } > else { > exit 1; > } > > > EOD Thanks .. you are correct that it doesn't handle nasty symlinks. However, I found that just changing the stat() to an lstat() fixed the problem. > In my spec file (I am converting yours to suit our purposes more specifically) I simply used shell > script to do the same logic, but I figured you were trying to be paranoid when double checking the > perms after you had set them. I am curious though, you tell it to verify the ownership against the > real UID rather than the effective UID. Also, you could have compared it against root (UID 0) > as RPMS are usually installed as root. Any reason in particular you choose that path? The only reason it doesn't compare ownership against root is that the same code is used in setup.sh to setup the temp directory, and it is possible that someone might want to install webmin as a non-root user. Since RPMs are always installed as root, $< will always be 0. - Jamie |
From: <jam...@te...> - 2002-08-28 18:36:58
|
Hi Jamie, I ran accross the follow code snippet in the %pre section of the specfile: perl <<EOD; # maketemp.pl # Create the /tmp/.webmin directory if needed \$tmp_dir = "/tmp/.webmin"; if (!-d \$tmp_dir) { mkdir(\$tmp_dir, 0755) || exit 1; chown(\$<, \$(, \$tmp_dir); chmod(0755, \$tmp_dir); } @st = stat(\$tmp_dir); if (@st && \$st[4] == \$< && \$st[5] == \$( && \$st[2] & 0x4000 && (\$st[2] & 0777) == 0755) { exit 0; } else { exit 1; } EOD The main issue I saw was that it does not seem to deal with the possibility that the file exists and is a symbolic link to somewhere the admin would prefer it not point to. Here is code I think handles this situation: perl <<EOD; # maketemp.pl # Create the /tmp/.webmin directory if needed \$tmp_dir = "/tmp/.webmin"; # # Only create it if it does not exist if (! -e \$tmp_dir) { mkdir(\$tmp_dir, 0755) || exit 1; chown(\$<, \$(, \$tmp_dir) || exit 1; chmod(0755, \$tmp_dir) || exit 1; } else { # # It does exist...make sure its a directory if ( -d \$tmp_dir ) { # # Now lets veirify it not a sybolic link: exit(1) if( -l \$tmp_dir); } else { # # Its not a directory...we just need to exit exit(1); } } @st = stat(\$tmp_dir); if (@st && \$st[4] == \$< && \$st[5] == \$( && \$st[2] & 0x4000 && (\$st[2] & 0777) == 0755) { exit 0; } else { exit 1; } EOD In my spec file (I am converting yours to suit our purposes more specifically) I simply used shell script to do the same logic, but I figured you were trying to be paranoid when double checking the perms after you had set them. I am curious though, you tell it to verify the ownership against the real UID rather than the effective UID. Also, you could have compared it against root (UID 0) as RPMS are usually installed as root. Any reason in particular you choose that path? Cheers...james |