Handle hostnames with upper-case letters
[webmin.git] / squid / save_icp.cgi
1 #!/usr/local/bin/perl
2 # save_icp.cgi
3 # Save cache options
4
5 require './squid-lib.pl';
6 $access{'othercaches'} || &error($text{'eicp_ecannot'});
7 &ReadParse();
8 &lock_file($config{'squid_conf'});
9 $conf = &get_config();
10 $whatfailed = $text{'sicp_ftsco'};
11
12 if ($squid_version < 2) {
13         &save_list("local_domain", undef, $conf);
14         &save_address("local_ip", $conf);
15         &save_list("inside_firewall", undef, $conf);
16         &save_address("firewall_ip", $conf);
17         }
18 &save_list("hierarchy_stoplist", undef, $conf);
19 if ($squid_version < 2) {
20         &save_choice("single_parent_bypass", "off", $conf);
21         &save_choice("source_ping", "off", $conf);
22         &save_opt("neighbor_timeout", \&check_timeout, $conf);
23         }
24 else {
25         &save_opt("icp_query_timeout", \&check_timeout, $conf);
26         &save_opt("mcast_icp_query_timeout", \&check_timeout, $conf);
27         &save_opt("dead_peer_timeout", \&check_timeout, $conf);
28         }
29 &flush_file_lines();
30 &unlock_file($config{'squid_conf'});
31 &webmin_log("icp", undef, undef, \%in);
32 &redirect("");
33
34 sub check_timeout
35 {
36 return $_[0] =~ /^\d+$/ ? undef : &text('sicp_emsg1',$_[0]);
37 }
38