Bug 40933

Merge with Bugzilla 3.4.2, released 11.09.2009


git-svn-id: svn://svn.office.custis.ru/3rdparty/bugzilla.org/trunk@416 6955db30-a419-402b-8a0d-67ecbb4d7f56
master
vfilippov 2009-09-14 14:26:24 +00:00
parent 390f250b26
commit 0ba610226f
132 changed files with 937 additions and 1049 deletions

View File

@ -341,11 +341,10 @@ sub Send {
@diff_tmp = ();
}
$lastbug = $depbug;
my $urlbase = Bugzilla->params->{"urlbase"};
$thisdiff =
"\nBug $id depends on bug $depbug, which changed state.\n\n" .
"Bug $depbug Summary: $summary\n" .
"${urlbase}show_bug.cgi?id=$depbug\n\n";
correct_urlbase() . "show_bug.cgi?id=$depbug\n\n";
$thisdiff .= three_columns("What ", "Old Value", "New Value");
$thisdiff .= ('-' x 76) . "\n";
$interestingchange = 0;
@ -381,7 +380,7 @@ sub Send {
if ($deptext)
{
push @diffparts, { text => "\n" . trim("\n\n" . $deptext) };
push @diffparts, { text => "\n" . trim($deptext) };
}
}
@ -616,12 +615,14 @@ sub sendMail
}
}
if (!$difftext && !$newcomments && !@$newcomments && !$isnew) {
if ($difftext eq "" && !scalar(@$newcomments) && !$isnew) {
# Whoops, no differences!
return 0;
}
my $diffs = $difftext;
# Remove extra newlines.
$diffs =~ s/^\n+//s; $diffs =~ s/\n+$//s;
my @showfieldvalues = (); # for HTML emails
if ($isnew) {
my $head = "";
@ -724,9 +725,15 @@ sub get_comments_by_bug {
my $raw = 0; # Do not format comments which are not of type CMT_NORMAL.
my $comments = Bugzilla::Bug::GetComments($id, "oldest_to_newest", $start, $end, $raw);
my $attach_base = correct_urlbase() . 'attachment.cgi?id=';
foreach my $comment (@$comments) {
$comment->{count} = $count++;
# If an attachment was created, then add an URL. (Note: the 'g'lobal
# replace should work with comments with multiple attachments.)
if ($comment->{body} =~ /Created an attachment \(/) {
$comment->{body} =~ s/(Created an attachment \(id=([0-9]+)\))/$1\n --> \($attach_base$2\)/g;
}
}
if (Bugzilla->params->{'insidergroup'}) {

View File

@ -396,10 +396,10 @@ sub getVisibleSeries {
"LEFT JOIN category_group_map AS cgm " .
" ON series.category = cgm.category_id " .
" AND cgm.group_id NOT IN($grouplist) " .
"WHERE creator = " . Bugzilla->user->id . " OR " .
" cgm.category_id IS NULL " .
"WHERE creator = ? OR (is_public = 1 AND cgm.category_id IS NULL) " .
$dbh->sql_group_by('series.series_id', 'cc1.name, cc2.name, ' .
'series.name'));
'series.name'),
undef, Bugzilla->user->id);
foreach my $series (@$serieses) {
my ($cat, $subcat, $name, $series_id) = @$series;
$cats{$cat}{$subcat}{$name} = $series_id;

View File

@ -169,7 +169,7 @@ use File::Basename;
# CONSTANTS
#
# Bugzilla version
use constant BUGZILLA_VERSION => "3.4.1";
use constant BUGZILLA_VERSION => "3.4.2";
# These are unique values that are unlikely to match a string or a number,
# to be used in criteria for match() functions and other things. They start

View File

@ -747,6 +747,28 @@ sub bz_drop_fk {
}
sub bz_drop_related_fks {
my ($self, $table, $column) = @_;
my @tables = $self->_bz_real_schema->get_table_list();
my @dropped;
foreach my $check_table (@tables) {
my @columns = $self->bz_table_columns($check_table);
foreach my $check_column (@columns) {
my $def = $self->bz_column_info($check_table, $check_column);
my $fk = $def->{REFERENCES};
if ($fk
and (($fk->{TABLE} eq $table and $fk->{COLUMN} eq $column)
or ($check_column eq $column and $check_table eq $table)))
{
$self->bz_drop_fk($check_table, $check_column);
push(@dropped, [$check_table, $check_column, $fk]);
}
} # foreach $column
} # foreach $table
return \@dropped;
}
sub bz_drop_index {
my ($self, $table, $name) = @_;

View File

@ -325,7 +325,7 @@ EOT
my @isam_tables;
foreach my $row (@$table_status) {
my ($name, $type) = @$row;
push(@isam_tables, $name) if $type eq "ISAM";
push(@isam_tables, $name) if (defined($type) && $type eq "ISAM");
}
if(scalar(@isam_tables)) {
@ -370,7 +370,7 @@ EOT
my @myisam_tables;
foreach my $row (@$table_status) {
my ($name, $type) = @$row;
if ($type =~ /^MYISAM$/i
if (defined ($type) && $type =~ /^MYISAM$/i
&& !grep($_ eq $name, Bugzilla::DB::Schema::Mysql::MYISAM_TABLES))
{
push(@myisam_tables, $name) ;
@ -674,7 +674,7 @@ EOT
my $utf_table_status =
$self->selectall_arrayref("SHOW TABLE STATUS", {Slice=>{}});
$self->_after_table_status([map($_->{Name}, @$utf_table_status)]);
my @non_utf8_tables = grep($_->{Collation} !~ /^utf8/, @$utf_table_status);
my @non_utf8_tables = grep(defined($_->{Collation}) && $_->{Collation} !~ /^utf8/, @$utf_table_status);
if (Bugzilla->params->{'utf8'} && scalar @non_utf8_tables) {
print <<EOT;
@ -713,6 +713,7 @@ EOT
print "Converting table storage format to UTF-8. This may take a",
" while.\n";
my @dropped_fks;
foreach my $table ($self->bz_table_list_real) {
my $info_sth = $self->prepare("SHOW FULL COLUMNS FROM $table");
$info_sth->execute();
@ -749,13 +750,15 @@ EOT
$self->bz_drop_index('test_runs', 'test_runs_summary_idx');
}
my $dropped = $self->bz_drop_related_fks($table, $name);
push(@dropped_fks, @$dropped);
print "Converting $table.$name to be stored as UTF-8...\n";
my $col_info =
$self->bz_column_info_real($table, $name);
# CHANGE COLUMN doesn't take PRIMARY KEY
delete $col_info->{PRIMARYKEY};
my $sql_def = $self->_bz_schema->get_type_ddl($col_info);
# We don't want MySQL to actually try to *convert*
# from our current charset to UTF-8, we just want to
@ -782,7 +785,12 @@ EOT
}
$self->do("ALTER TABLE $table DEFAULT CHARACTER SET utf8");
} # foreach my $table (@tables)
foreach my $fk_args (@dropped_fks) {
$self->bz_add_fk(@$fk_args);
}
}
# Sometimes you can have a situation where all the tables are utf8,

View File

@ -478,6 +478,33 @@ Params:
=back
=head2 page-before_template
This is a simple way to add your own pages to Bugzilla. This hooks C<page.cgi>,
which loads templates from F<template/en/default/pages>. For example,
C<page.cgi?id=fields.html> loads F<template/en/default/pages/fields.html.tmpl>.
This hook is called right before the template is loaded, so that you can
pass your own variables to your own pages.
Params:
=over
=item C<page_id>
This is the name of the page being loaded, like C<fields.html>.
Note that if two extensions use the same name, it is uncertain which will
override the others, so you should be careful with how you name your pages.
=item C<vars>
This is a hashref--put variables into here if you want them passed to
your template.
=back
=head2 product-confirm_delete
Called before displaying the confirmation message when deleting a product.

View File

@ -65,7 +65,9 @@ sub REQUIRED_MODULES {
# Perl 5.10 requires CGI 3.33 due to a taint issue when
# uploading attachments, see bug 416382.
# Require CGI 3.21 for -httponly support, see bug 368502.
version => (vers_cmp($perl_ver, '5.10') > -1) ? '3.33' : '3.21'
version => (vers_cmp($perl_ver, '5.10') > -1) ? '3.33' : '3.21',
# CGI::Carp in 3.46 and 3.47 breaks Template Toolkit
blacklist => ['^3\.46$', '^3\.47$'],
},
{
package => 'Digest-SHA',
@ -92,11 +94,6 @@ sub REQUIRED_MODULES {
module => 'DateTime::TimeZone',
version => ON_WINDOWS ? '0.79' : '0.71'
},
{
package => 'PathTools',
module => 'File::Spec',
version => '0.84'
},
{
package => 'DBI',
module => 'DBI',
@ -229,9 +226,9 @@ sub OPTIONAL_MODULES {
{
package => 'SOAP-Lite',
module => 'SOAP::Lite',
version => 0,
# These versions (0.70 -> 0.710.05) are affected by bug 468009
blacklist => ['^0\.70', '^0\.710?\.0[1-5]$'],
# 0.710.04 is required for correct UTF-8 handling, but .04 and .05 are
# affected by bug 468009.
version => '0.710.06',
feature => 'XML-RPC Interface'
},
{

View File

@ -187,6 +187,7 @@ sub template_include_path {
my @include_path;
my @extensions = glob(bz_locations()->{'extensionsdir'} . "/*");
foreach my $extension (@extensions) {
next if -e "$extension/disabled";
foreach my $lang (@usedlanguages) {
_add_language_set(\@include_path, $lang, "$extension/template");
}

View File

@ -33,7 +33,7 @@ use constant max_retries => 725;
# The first few retries happen quickly, but after that we wait an hour for
# each retry.
sub retry_delay {
my $num_retries = shift;
my ($class, $num_retries) = @_;
if ($num_retries < 5) {
return (10, 30, 60, 300, 600)[$num_retries];
}

View File

@ -27,7 +27,9 @@
package Bugzilla::JobQueue::Runner;
use strict;
use Cwd qw(abs_path);
use File::Basename;
use File::Copy;
use Pod::Usage;
use Bugzilla::Constants;
@ -35,18 +37,61 @@ use Bugzilla::JobQueue;
use Bugzilla::Util qw(get_text);
BEGIN { eval "use base qw(Daemon::Generic)"; }
# Required because of a bug in Daemon::Generic where it won't use the
# "version" key from DAEMON_CONFIG.
our $VERSION = BUGZILLA_VERSION;
use constant DAEMON_CONFIG => (
progname => basename($0),
pidfile => bz_locations()->{datadir} . '/' . basename($0) . '.pid',
version => BUGZILLA_VERSION,
);
# Info we need to install/uninstall the daemon on RHEL/Fedora.
our $chkconfig = "/sbin/chkconfig";
our $initd = "/etc/init.d";
our $initscript = "bugzilla-queue";
# The Daemon::Generic docs say that it uses all sorts of
# things from gd_preconfig, but in fact it does not. The
# only thing it uses from gd_preconfig is the "pidfile"
# config parameter.
sub gd_preconfig {
return DAEMON_CONFIG;
my $self = shift;
my $pidfile = $self->{gd_args}{pidfile};
if (!$pidfile) {
$pidfile = bz_locations()->{datadir} . '/' . $self->{gd_progname}
. ".pid";
}
return (pidfile => $pidfile);
}
# All config other than the pidfile has to be done in gd_getopt
# in order for it to be set up early enough.
sub gd_getopt {
my $self = shift;
$self->SUPER::gd_getopt();
if ($self->{gd_args}{progname}) {
$self->{gd_progname} = $self->{gd_args}{progname};
}
else {
$self->{gd_progname} = basename($0);
}
# There are places that Daemon Generic's new() uses $0 instead of
# gd_progname, which it really shouldn't, but this hack fixes it.
$self->{_original_zero} = $0;
$0 = $self->{gd_progname};
}
sub gd_postconfig {
my $self = shift;
# See the hack above in gd_getopt. This just reverses it
# in case anything else needs the accurate $0.
$0 = delete $self->{_original_zero};
}
sub gd_more_opt {
my $self = shift;
return (
'pidfile=s' => \$self->{gd_args}{pidfile},
'n=s' => \$self->{gd_args}{progname},
);
}
sub gd_usage {
@ -54,6 +99,79 @@ sub gd_usage {
return 0
}
sub gd_can_install {
my $self = shift;
my $source_file = "contrib/$initscript";
my $dest_file = "$initd/$initscript";
my $sysconfig = '/etc/sysconfig';
my $config_file = "$sysconfig/$initscript";
if (!-x $chkconfig or !-d $initd) {
return $self->SUPER::gd_can_install(@_);
}
return sub {
if (!-w $initd) {
print "You must run the 'install' command as root.\n";
return;
}
if (-e $dest_file) {
print "$initscript already in $initd.\n";
}
else {
copy($source_file, $dest_file)
or die "Could not copy $source_file to $dest_file: $!";
chmod(0755, $dest_file)
or die "Could not change permissions on $dest_file: $!";
}
system($chkconfig, '--add', $initscript);
print "$initscript installed.",
" To start the daemon, do \"$dest_file start\" as root.\n";
if (-d $sysconfig and -w $sysconfig) {
if (-e $config_file) {
print "$config_file already exists.\n";
return;
}
open(my $config_fh, ">", $config_file)
or die "Could not write to $config_file: $!";
my $directory = abs_path(dirname($self->{_original_zero}));
my $owner_id = (stat $self->{_original_zero})[4];
my $owner = getpwuid($owner_id);
print $config_fh <<END;
#!/bin/sh
BUGZILLA="$directory"
USER=$owner
END
close($config_fh);
}
else {
print "Please edit $dest_file to configure the daemon.\n";
}
}
}
sub gd_can_uninstall {
my $self = shift;
if (-x $chkconfig and -d $initd) {
return sub {
if (!-e "$initd/$initscript") {
print "$initscript not installed.\n";
return;
}
system($chkconfig, '--del', $initscript);
print "$initscript disabled.",
" To stop it, run: $initd/$initscript stop\n";
}
}
return $self->SUPER::gd_can_install(@_);
}
sub gd_check {
my $self = shift;
@ -67,6 +185,12 @@ sub gd_check {
print get_text('job_queue_depth', { count => $count }) . "\n";
}
sub gd_setup_signals {
my $self = shift;
$self->SUPER::gd_setup_signals();
$SIG{TERM} = sub { $self->gd_quit_event(); }
}
sub gd_run {
my $self = shift;

View File

@ -164,7 +164,19 @@ sub match {
next if $field eq 'OFFSET';
if ( $field eq 'LIMIT' ) {
next unless defined $value;
$postamble = $dbh->sql_limit( $value, $criteria->{OFFSET} );
detaint_natural($value)
or ThrowCodeError('param_must_be_numeric',
{ param => 'LIMIT',
function => "${class}::match" });
my $offset;
if (defined $criteria->{OFFSET}) {
$offset = $criteria->{OFFSET};
detaint_signed($offset)
or ThrowCodeError('param_must_be_numeric',
{ param => 'OFFSET',
function => "${class}::match" });
}
$postamble = $dbh->sql_limit($value, $offset);
next;
}
elsif ( $field eq 'WHERE' ) {
@ -180,6 +192,8 @@ sub match {
next;
}
$class->_check_field($field, 'match');
if (ref $value eq 'ARRAY') {
# IN () is invalid SQL, and if we have an empty list
# to match against, we're just returning an empty
@ -345,6 +359,17 @@ sub create {
return $object;
}
# Used to validate that a field name is in fact a valid column in the
# current table before inserting it into SQL.
sub _check_field {
my ($invocant, $field, $function) = @_;
my $class = ref($invocant) || $invocant;
if (!Bugzilla->dbh->bz_column_info($class->DB_TABLE, $field)) {
ThrowCodeError('param_invalid', { param => $field,
function => "${class}::$function" });
}
}
sub check_required_create_fields {
my ($class, $params) = @_;
@ -387,6 +412,7 @@ sub insert_create_data {
my (@field_names, @values);
while (my ($field, $value) = each %$field_values) {
$class->_check_field($field, 'create');
push(@field_names, $field);
push(@values, $value);
}

View File

@ -79,34 +79,30 @@ sub new {
}
sub initFromDatabase {
my $self = shift;
my $series_id = shift;
my ($self, $series_id) = @_;
my $dbh = Bugzilla->dbh;
my $user = Bugzilla->user;
detaint_natural($series_id)
|| ThrowCodeError("invalid_series_id", { 'series_id' => $series_id });
my $dbh = Bugzilla->dbh;
my $grouplist = $user->groups_as_string;
my @series = $dbh->selectrow_array("SELECT series.series_id, cc1.name, " .
"cc2.name, series.name, series.creator, series.frequency, " .
"series.query, series.is_public " .
"FROM series " .
"LEFT JOIN series_categories AS cc1 " .
"INNER JOIN series_categories AS cc1 " .
" ON series.category = cc1.id " .
"LEFT JOIN series_categories AS cc2 " .
"INNER JOIN series_categories AS cc2 " .
" ON series.subcategory = cc2.id " .
"LEFT JOIN category_group_map AS cgm " .
" ON series.category = cgm.category_id " .
"LEFT JOIN user_group_map AS ugm " .
" ON cgm.group_id = ugm.group_id " .
" AND ugm.user_id = " . Bugzilla->user->id .
" AND isbless = 0 " .
"WHERE series.series_id = $series_id AND " .
"(is_public = 1 OR creator = " . Bugzilla->user->id . " OR " .
"(ugm.group_id IS NOT NULL)) " .
$dbh->sql_group_by('series.series_id', 'cc1.name, cc2.name, ' .
'series.name, series.creator, series.frequency, ' .
'series.query, series.is_public'));
" AND cgm.group_id NOT IN($grouplist) " .
"WHERE series.series_id = ? " .
" AND (creator = ? OR (is_public = 1 AND cgm.category_id IS NULL))",
undef, ($series_id, $user->id));
if (@series) {
$self->initFromParameters(@series);
return $self;

View File

@ -534,6 +534,7 @@ sub create {
$var =~ s/\n/\\n/g;
$var =~ s/\r/\\r/g;
$var =~ s/\@/\\x40/g; # anti-spam for email addresses
$var =~ s/</\\x3c/g;
return $var;
},

View File

@ -254,6 +254,7 @@ sub search {
}
$params = _map_fields($params);
delete $params->{WHERE};
# Do special search types for certain fields.
if ( my $bug_when = delete $params->{delta_ts} ) {

View File

@ -53,7 +53,9 @@ use constant WS_ERROR_CODE => {
param_required => 50,
params_required => 50,
object_does_not_exist => 51,
param_must_be_numeric => 52,
xmlrpc_invalid_value => 52,
param_invalid => 53,
# Bug errors usually occupy the 100-200 range.
improper_bug_id_field_value => 100,
bug_id_does_not_exist => 101,

View File

@ -161,16 +161,6 @@ sub new {
return $self;
}
sub as_string {
my $self = shift;
my ($value) = @_;
# Something weird happens with XML::Parser when we have upper-ASCII
# characters encoded as UTF-8, and this fixes it.
utf8::encode($value) if utf8::is_utf8($value)
&& $value =~ /^[\x00-\xff]+$/;
return $self->SUPER::as_string($value);
}
# Here the XMLRPC::Serializer is extended to use the XMLRPC nil extension.
sub encode_object {
my $self = shift;

View File

@ -30,12 +30,14 @@
# To run new charts for a specific date, pass it in on the command line in
# ISO (2004-08-14) format.
use AnyDBM_File;
use strict;
use lib qw(. lib);
use AnyDBM_File;
use IO::Handle;
use List::Util qw(first);
use Cwd;
use lib qw(. lib);
use Bugzilla;
use Bugzilla::Constants;
@ -111,6 +113,37 @@ my @resolutions = @{$fields->{'resolution'}};
# Exclude "" from the resolution list.
@resolutions = grep {$_} @resolutions;
# --regenerate was taking an enormous amount of time to query everything
# per bug, per day. Instead, we now just get all the data out of the DB
# at once and stuff it into some data structures.
my (%bug_status, %bug_resolution, %removed);
if ($regenerate) {
%bug_resolution = @{ $dbh->selectcol_arrayref(
'SELECT bug_id, resolution FROM bugs', {Columns=>[1,2]}) };
%bug_status = @{ $dbh->selectcol_arrayref(
'SELECT bug_id, bug_status FROM bugs', {Columns=>[1,2]}) };
my $removed_sth = $dbh->prepare(
q{SELECT bugs_activity.bug_id, bugs_activity.removed,}
. $dbh->sql_to_days('bugs_activity.bug_when')
. q{FROM bugs_activity
WHERE bugs_activity.fieldid = ?
ORDER BY bugs_activity.bug_when});
%removed = (bug_status => {}, resolution => {});
foreach my $field (qw(bug_status resolution)) {
my $field_id = Bugzilla::Field->check($field)->id;
my $rows = $dbh->selectall_arrayref($removed_sth, undef, $field_id);
my $hash = $removed{$field};
foreach my $row (@$rows) {
my ($bug_id, $removed, $when) = @$row;
$hash->{$bug_id} ||= [];
push(@{ $hash->{$bug_id} }, { when => int($when),
removed => $removed });
}
}
}
my $tstart = time;
foreach (@myproducts) {
my $dir = "$datadir/mining";
@ -118,7 +151,7 @@ foreach (@myproducts) {
&check_data_dir ($dir);
if ($regenerate) {
&regenerate_stats($dir, $_);
regenerate_stats($dir, $_, \%bug_resolution, \%bug_status, \%removed);
} else {
&collect_stats($dir, $_);
}
@ -343,8 +376,7 @@ sub calculate_dupes {
# This regenerates all statistics from the database.
sub regenerate_stats {
my $dir = shift;
my $product = shift;
my ($dir, $product, $bug_resolution, $bug_status, $removed) = @_;
my $dbh = Bugzilla->dbh;
my $when = localtime(time());
@ -356,8 +388,6 @@ sub regenerate_stats {
$file_product =~ s/\//-/gs;
my $file = join '/', $dir, $file_product;
my @bugs;
my $and_product = "";
my $from_product = "";
@ -387,7 +417,6 @@ sub regenerate_stats {
}
if (open DATA, ">$file") {
DATA->autoflush(1);
my $fields = join('|', ('DATE', @statuses, @resolutions));
print DATA <<FIN;
# Bugzilla Daily Bug Stats
@ -400,6 +429,7 @@ sub regenerate_stats {
FIN
# For each day, generate a line of statistics.
my $total_days = $end - $start;
my @bugs;
for (my $day = $start + 1; $day <= $end; $day++) {
# Some output feedback
my $percent_done = ($day - $start - 1) * 100 / $total_days;
@ -416,56 +446,25 @@ FIN
$and_product . q{ ORDER BY bug_id};
my $bug_ids = $dbh->selectcol_arrayref($query, undef, @values);
push(@bugs, @$bug_ids);
# For each bug that existed on that day, determine its status
# at the beginning of the day. If there were no status
# changes on or after that day, the status was the same as it
# is today, which can be found in the bugs table. Otherwise,
# the status was equal to the first "previous value" entry in
# the bugs_activity table for that bug made on or after that
# day.
my %bugcount;
foreach (@statuses) { $bugcount{$_} = 0; }
foreach (@resolutions) { $bugcount{$_} = 0; }
# Get information on bug states and resolutions.
$query = qq{SELECT bugs_activity.removed
FROM bugs_activity
INNER JOIN fielddefs
ON bugs_activity.fieldid = fielddefs.id
WHERE fielddefs.name = ?
AND bugs_activity.bug_id = ?
AND bugs_activity.bug_when >= } .
$dbh->sql_from_days($day) .
" ORDER BY bugs_activity.bug_when " .
$dbh->sql_limit(1);
my $sth_bug = $dbh->prepare($query);
my $sth_status = $dbh->prepare(q{SELECT bug_status
FROM bugs
WHERE bug_id = ?});
my $sth_reso = $dbh->prepare(q{SELECT resolution
FROM bugs
WHERE bug_id = ?});
for my $bug (@bugs) {
my $status = $dbh->selectrow_array($sth_bug, undef,
'bug_status', $bug);
unless ($status) {
$status = $dbh->selectrow_array($sth_status, undef, $bug);
}
my $status = _get_value(
$removed->{'bug_status'}->{$bug},
$bug_status, $day, $bug);
if (defined $bugcount{$status}) {
$bugcount{$status}++;
}
my $resolution = $dbh->selectrow_array($sth_bug, undef,
'resolution', $bug);
unless ($resolution) {
$resolution = $dbh->selectrow_array($sth_reso, undef, $bug);
}
my $resolution = _get_value(
$removed->{'resolution'}->{$bug},
$bug_resolution, $day, $bug);
if (defined $bugcount{$resolution}) {
$bugcount{$resolution}++;
}
@ -490,6 +489,24 @@ FIN
}
}
# A helper for --regenerate.
# For each bug that exists on a day, we determine its status/resolution
# at the beginning of the day. If there were no status/resolution
# changes on or after that day, the status was the same as it
# is today (the "current" value). Otherwise, the status was equal to the
# first "previous value" entry in the bugs_activity table for that
# bug made on or after that day.
sub _get_value {
my ($removed, $current, $day, $bug) = @_;
# Get the first change that's on or after this day.
my $item = first { $_->{when} >= $day } @{ $removed || [] };
# If there's no change on or after this day, then we just return the
# current value.
return $item ? $item->{removed} : $current->{$bug};
}
sub today {
my ($dom, $mon, $year) = (localtime(time))[3, 4, 5];
return sprintf "%04d%02d%02d", 1900 + $year, ++$mon, $dom;

View File

@ -6,7 +6,6 @@
<!ENTITY min-date-format-ver "2.21">
<!ENTITY min-datetime-ver "0.28">
<!ENTITY min-datetime-timezone-ver "0.71">
<!ENTITY min-file-spec-ver "0.84">
<!ENTITY min-dbi-ver "1.41">
<!ENTITY min-template-ver "2.22">
<!ENTITY min-email-send-ver "2.00">
@ -27,7 +26,7 @@
<!ENTITY min-net-ldap-ver "any">
<!ENTITY min-authen-sasl-ver "any">
<!ENTITY min-authen-radius-ver "any">
<!ENTITY min-soap-lite-ver "any">
<!ENTITY min-soap-lite-ver "0.710.06">
<!ENTITY min-html-parser-ver "3.40">
<!ENTITY min-html-scrubber-ver "any">
<!ENTITY min-email-mime-attachment-stripper-ver "any">

View File

@ -2,7 +2,7 @@
<HTML
><HEAD
><TITLE
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TITLE
><META
NAME="GENERATOR"
@ -43,7 +43,7 @@ CLASS="TITLEPAGE"
CLASS="title"
><A
NAME="AEN2"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</A
></H1
><H3
@ -51,7 +51,7 @@ CLASS="corpauthor"
>The Bugzilla Team</H3
><P
CLASS="pubdate"
>2009-08-01<BR></P
>2009-09-11<BR></P
><DIV
><DIV
CLASS="abstract"
@ -269,16 +269,11 @@ HREF="#security-os"
></DT
><DT
>4.2. <A
HREF="#security-mysql"
>MySQL</A
></DT
><DT
>4.3. <A
HREF="#security-webserver"
>Web server</A
></DT
><DT
>4.4. <A
>4.3. <A
HREF="#security-bugzilla"
>Bugzilla</A
></DT
@ -597,27 +592,6 @@ CLASS="LOT"
>List of Examples</B
></DT
><DT
>4-1. <A
HREF="#security-mysql-account-root"
>Assigning the MySQL <SPAN
CLASS="QUOTE"
>"root"</SPAN
> User a Password</A
></DT
><DT
>4-2. <A
HREF="#security-mysql-account-anonymous"
>Disabling the MySQL <SPAN
CLASS="QUOTE"
>"anonymous"</SPAN
> User</A
></DT
><DT
>4-3. <A
HREF="#security-mysql-network-ex"
>Disabling Networking in MySQL</A
></DT
><DT
>A-1. <A
HREF="#trbl-relogin-everyone-share"
>Examples of urlbase/cookiepath pairs for sharing login cookies</A
@ -714,7 +688,7 @@ NAME="newversions"
>1.3. New Versions</A
></H2
><P
>&#13; This is the 3.4.1 version of The Bugzilla Guide. It is so named
>&#13; This is the 3.4.2 version of The Bugzilla Guide. It is so named
to match the current version of Bugzilla.
</P
><P
@ -1959,11 +1933,6 @@ HREF="#install-modules-dbd-mysql"
></LI
><LI
><P
>&#13; File::Spec (0.84)
</P
></LI
><LI
><P
>&#13; <A
HREF="#install-modules-template"
>Template</A
@ -2083,7 +2052,7 @@ HREF="#install-modules-patchreader"
HREF="#install-modules-soap-lite"
>SOAP::Lite</A
>
(any) for the web service interface
(0.710.06) for the web service interface
</P
></LI
><LI
@ -2307,7 +2276,7 @@ CLASS="section"
CLASS="section"
><A
NAME="install-modules-soap-lite"
>2.1.5.8. SOAP::Lite (any)</A
>2.1.5.8. SOAP::Lite (0.710.06)</A
></H4
><P
>Installing SOAP::Lite enables your Bugzilla installation to be
@ -2713,12 +2682,33 @@ ALT="Caution"></TD
ALIGN="LEFT"
VALIGN="TOP"
><P
>&#13; MySQL's default configuration is very insecure.
<A
HREF="#security-mysql"
>Section 4.2</A
> has some good information for
improving your installation's security.
>&#13; MySQL's default configuration is insecure.
We highly recommend to run <TT
CLASS="filename"
>mysql_secure_installation</TT
>
on Linux or the MySQL installer on Windows, and follow the instructions.
Important points to note are:
<P
></P
><OL
TYPE="1"
><LI
><P
>Be sure that the root account has a secure password set.</P
></LI
><LI
><P
>Do not create an anonymous account, and if it exists, say "yes"
to remove it.</P
></LI
><LI
><P
>If your web server and MySQL server are on the same machine,
you should disable the network access.</P
></LI
></OL
>
</P
></TD
></TR
@ -2734,11 +2724,11 @@ NAME="mysql-max-allowed-packet"
></H5
><P
>By default, MySQL will only allow you to insert things
into the database that are smaller than 64KB. Attachments
into the database that are smaller than 1MB. Attachments
may be larger than this. Also, Bugzilla combines all comments
on a single bug into one field for full-text searching, and the
combination of all comments on a single bug are very likely to
be larger than 64KB.</P
combination of all comments on a single bug could in some cases
be larger than 1MB.</P
><P
>To change MySQL's default, you need to edit your MySQL
configuration file, which is usually <TT
@ -2772,7 +2762,7 @@ CLASS="section"
><HR><H5
CLASS="section"
><A
NAME="AEN477"
NAME="AEN482"
>2.2.2.2.2. Allow small words in full-text indexes</A
></H5
><P
@ -2913,7 +2903,7 @@ CLASS="section"
><HR><H5
CLASS="section"
><A
NAME="AEN504"
NAME="AEN509"
>2.2.2.2.4. Permit attachments table to grow beyond 4GB</A
></H5
><P
@ -3013,7 +3003,7 @@ CLASS="section"
><H5
CLASS="section"
><A
NAME="AEN520"
NAME="AEN525"
>2.2.2.3.1. Add a User to PostgreSQL</A
></H5
><P
@ -3098,7 +3088,7 @@ CLASS="section"
><HR><H5
CLASS="section"
><A
NAME="AEN536"
NAME="AEN541"
>2.2.2.3.2. Configure PostgreSQL</A
></H5
><P
@ -3159,7 +3149,7 @@ CLASS="section"
><H5
CLASS="section"
><A
NAME="AEN552"
NAME="AEN557"
>2.2.2.4.1. Create a New Tablespace</A
></H5
><P
@ -3211,7 +3201,7 @@ CLASS="section"
><HR><H5
CLASS="section"
><A
NAME="AEN560"
NAME="AEN565"
>2.2.2.4.2. Add a User to Oracle</A
></H5
><P
@ -3267,7 +3257,7 @@ CLASS="section"
><HR><H5
CLASS="section"
><A
NAME="AEN568"
NAME="AEN573"
>2.2.2.4.3. Configure the Web Server</A
></H5
><P
@ -3305,7 +3295,7 @@ CLASS="section"
><HR><H3
CLASS="section"
><A
NAME="AEN574"
NAME="AEN579"
>2.2.3. checksetup.pl</A
></H3
><P
@ -3360,7 +3350,7 @@ CLASS="filename"
not remotely available by properly applying the access controls in
<A
HREF="#security-webserver-access"
>Section 4.3.1</A
>Section 4.2.1</A
>. You can run
<TT
CLASS="filename"
@ -4035,7 +4025,7 @@ CLASS="filename"
> directory are
secured as described in <A
HREF="#security-webserver-access"
>Section 4.3.1</A
>Section 4.2.1</A
>.
</P
></DIV
@ -4160,7 +4150,7 @@ CLASS="section"
><HR><H3
CLASS="section"
><A
NAME="AEN728"
NAME="AEN733"
>2.3.1. Bug Graphs</A
></H3
><P
@ -4900,7 +4890,7 @@ NAME="win32-http"
you choose, be sure to pay attention to the security notes
in <A
HREF="#security-webserver-access"
>Section 4.3.1</A
>Section 4.2.1</A
>. More
information on configuring specific web servers can be found
in <A
@ -5294,7 +5284,7 @@ CLASS="section"
><H3
CLASS="section"
><A
NAME="AEN893"
NAME="AEN898"
>2.6.1. Introduction</A
></H3
><P
@ -5314,7 +5304,7 @@ CLASS="section"
><HR><H3
CLASS="section"
><A
NAME="AEN897"
NAME="AEN902"
>2.6.2. MySQL</A
></H3
><P
@ -5370,7 +5360,7 @@ CLASS="section"
><HR><H4
CLASS="section"
><A
NAME="AEN905"
NAME="AEN910"
>2.6.2.1. Running MySQL as Non-Root</A
></H4
><DIV
@ -5378,7 +5368,7 @@ CLASS="section"
><H5
CLASS="section"
><A
NAME="AEN907"
NAME="AEN912"
>2.6.2.1.1. The Custom Configuration Method</A
></H5
><P
@ -5422,7 +5412,7 @@ CLASS="section"
><HR><H5
CLASS="section"
><A
NAME="AEN911"
NAME="AEN916"
>2.6.2.1.2. The Custom Built Method</A
></H5
><P
@ -5445,7 +5435,7 @@ CLASS="section"
><HR><H5
CLASS="section"
><A
NAME="AEN916"
NAME="AEN921"
>2.6.2.1.3. Starting the Server</A
></H5
><P
@ -5573,7 +5563,7 @@ CLASS="section"
><HR><H3
CLASS="section"
><A
NAME="AEN932"
NAME="AEN937"
>2.6.3. Perl</A
></H3
><P
@ -5677,7 +5667,7 @@ CLASS="section"
><HR><H3
CLASS="section"
><A
NAME="AEN954"
NAME="AEN959"
>2.6.5. HTTP Server</A
></H3
><P
@ -5691,7 +5681,7 @@ CLASS="section"
><HR><H4
CLASS="section"
><A
NAME="AEN957"
NAME="AEN962"
>2.6.5.1. Running Apache as Non-Root</A
></H4
><P
@ -5773,7 +5763,7 @@ CLASS="section"
><HR><H3
CLASS="section"
><A
NAME="AEN966"
NAME="AEN971"
>2.6.6. Bugzilla</A
></H3
><P
@ -11190,7 +11180,7 @@ CLASS="section"
><HR><H3
CLASS="section"
><A
NAME="AEN2168"
NAME="AEN2173"
>3.15.4. Assigning Group Controls to Products</A
></H3
><P
@ -11458,244 +11448,8 @@ CLASS="section"
><HR><H2
CLASS="section"
><A
NAME="security-mysql"
>4.2. MySQL</A
></H2
><DIV
CLASS="section"
><H3
CLASS="section"
><A
NAME="security-mysql-account"
>4.2.1. The MySQL System Account</A
></H3
><P
>As mentioned in <A
HREF="#security-os-accounts"
>Section 4.1.2</A
>, the MySQL
daemon should run as a non-privileged, unique user. Be sure to consult
the MySQL documentation or the documentation that came with your system
for instructions.
</P
></DIV
><DIV
CLASS="section"
><HR><H3
CLASS="section"
><A
NAME="security-mysql-root"
>4.2.2. The MySQL <SPAN
CLASS="QUOTE"
>"root"</SPAN
> and <SPAN
CLASS="QUOTE"
>"anonymous"</SPAN
> Users</A
></H3
><P
>By default, MySQL comes with a <SPAN
CLASS="QUOTE"
>"root"</SPAN
> user with a
blank password and an <SPAN
CLASS="QUOTE"
>"anonymous"</SPAN
> user, also with a blank
password. In order to protect your data, the <SPAN
CLASS="QUOTE"
>"root"</SPAN
> user
should be given a password and the anonymous user should be disabled.
</P
><DIV
CLASS="example"
><A
NAME="security-mysql-account-root"
></A
><P
><B
>Example 4-1. Assigning the MySQL <SPAN
CLASS="QUOTE"
>"root"</SPAN
> User a Password</B
></P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="screen"
>&#13;<SAMP
CLASS="prompt"
>bash$</SAMP
> mysql mysql
<SAMP
CLASS="prompt"
>mysql&#62;</SAMP
> UPDATE user SET password = password('<TT
CLASS="replaceable"
><I
>new_password</I
></TT
>') WHERE user = 'root';
<SAMP
CLASS="prompt"
>mysql&#62;</SAMP
> FLUSH PRIVILEGES;
</PRE
></FONT
></TD
></TR
></TABLE
></DIV
><DIV
CLASS="example"
><A
NAME="security-mysql-account-anonymous"
></A
><P
><B
>Example 4-2. Disabling the MySQL <SPAN
CLASS="QUOTE"
>"anonymous"</SPAN
> User</B
></P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="screen"
>&#13;<SAMP
CLASS="prompt"
>bash$</SAMP
> mysql -u root -p mysql <A
NAME="security-mysql-account-anonymous-mysql"
><IMG
SRC="../images/callouts/1.gif"
HSPACE="0"
VSPACE="0"
BORDER="0"
ALT="(1)"></A
>
<SAMP
CLASS="prompt"
>Enter Password:</SAMP
> <TT
CLASS="replaceable"
><I
>new_password</I
></TT
>
<SAMP
CLASS="prompt"
>mysql&#62;</SAMP
> DELETE FROM user WHERE user = '';
<SAMP
CLASS="prompt"
>mysql&#62;</SAMP
> FLUSH PRIVILEGES;
</PRE
></FONT
></TD
></TR
></TABLE
><DIV
CLASS="calloutlist"
><DL
COMPACT="COMPACT"
><DT
><A
HREF="#security-mysql-account-anonymous-mysql"
><IMG
SRC="../images/callouts/1.gif"
HSPACE="0"
VSPACE="0"
BORDER="0"
ALT="(1)"></A
></DT
><DD
>This command assumes that you have already completed
<A
HREF="#security-mysql-account-root"
>Example 4-1</A
>.
</DD
></DL
></DIV
></DIV
></DIV
><DIV
CLASS="section"
><HR><H3
CLASS="section"
><A
NAME="security-mysql-network"
>4.2.3. Network Access</A
></H3
><P
>If MySQL and your web server both run on the same machine and you
have no other reason to access MySQL remotely, then you should disable
the network access. This, along with the suggestion in
<A
HREF="#security-os-ports"
>Section 4.1.1</A
>, will help protect your system from
any remote vulnerabilities in MySQL.
</P
><DIV
CLASS="example"
><A
NAME="security-mysql-network-ex"
></A
><P
><B
>Example 4-3. Disabling Networking in MySQL</B
></P
><P
>Simply enter the following in <TT
CLASS="filename"
>/etc/my.cnf</TT
>:
<TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="screen"
>&#13;[mysqld]
# Prevent network access to MySQL.
skip-networking
</PRE
></FONT
></TD
></TR
></TABLE
>
</P
></DIV
></DIV
></DIV
><DIV
CLASS="section"
><HR><H2
CLASS="section"
><A
NAME="security-webserver"
>4.3. Web server</A
>4.2. Web server</A
></H2
><DIV
CLASS="section"
@ -11703,7 +11457,7 @@ CLASS="section"
CLASS="section"
><A
NAME="security-webserver-access"
>4.3.1. Disabling Remote Access to Bugzilla Configuration Files</A
>4.2.1. Disabling Remote Access to Bugzilla Configuration Files</A
></H3
><P
>&#13; There are many files that are placed in the Bugzilla directory
@ -11972,7 +11726,7 @@ CLASS="section"
CLASS="section"
><A
NAME="security-bugzilla"
>4.4. Bugzilla</A
>4.3. Bugzilla</A
></H2
><DIV
CLASS="section"
@ -11980,7 +11734,7 @@ CLASS="section"
CLASS="section"
><A
NAME="security-bugzilla-charset"
>4.4.1. Prevent users injecting malicious Javascript</A
>4.3.1. Prevent users injecting malicious Javascript</A
></H3
><P
>If you installed Bugzilla version 2.22 or later from scratch,
@ -12759,7 +12513,7 @@ NAME="negation"
>&#13; At first glance, negation seems redundant. Rather than
searching for
<A
NAME="AEN2540"
NAME="AEN2500"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
@ -12770,7 +12524,7 @@ CLASS="BLOCKQUOTE"
>
one could search for
<A
NAME="AEN2542"
NAME="AEN2502"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
@ -12781,7 +12535,7 @@ CLASS="BLOCKQUOTE"
>
However, the search
<A
NAME="AEN2544"
NAME="AEN2504"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
@ -12793,7 +12547,7 @@ CLASS="BLOCKQUOTE"
would find every bug where anyone on the CC list did not contain
"@mozilla.org" while
<A
NAME="AEN2546"
NAME="AEN2506"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
@ -12807,7 +12561,7 @@ CLASS="BLOCKQUOTE"
complex expressions to be built using terms OR'd together and then
negated. Negation permits queries such as
<A
NAME="AEN2548"
NAME="AEN2508"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
@ -12820,7 +12574,7 @@ CLASS="BLOCKQUOTE"
to find bugs that are neither
in the update product or in the documentation component or
<A
NAME="AEN2550"
NAME="AEN2510"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
@ -12848,7 +12602,7 @@ NAME="multiplecharts"
a bug that has two different people cc'd on it, then you need
to use two boolean charts. A search for
<A
NAME="AEN2555"
NAME="AEN2515"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
@ -12863,7 +12617,7 @@ CLASS="BLOCKQUOTE"
containing "foo@" and someone else containing "@mozilla.org",
then you would need two boolean charts.
<A
NAME="AEN2557"
NAME="AEN2517"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
@ -13569,7 +13323,7 @@ CLASS="section"
><HR><H3
CLASS="section"
><A
NAME="AEN2693"
NAME="AEN2653"
>5.8.1. Autolinkification</A
></H3
><P
@ -14444,7 +14198,7 @@ CLASS="section"
><HR><H4
CLASS="section"
><A
NAME="AEN2890"
NAME="AEN2850"
>5.11.2.1. Creating Charts</A
></H4
><P
@ -14913,7 +14667,7 @@ CLASS="section"
><HR><H3
CLASS="section"
><A
NAME="AEN2950"
NAME="AEN2910"
>5.13.4. Saving Your Changes</A
></H3
><P
@ -15252,12 +15006,12 @@ VALIGN="TOP"
you run <B
CLASS="command"
>./checksetup.pl</B
> after creating or
> after
editing any templates in the <TT
CLASS="filename"
>template/en/default</TT
>
directory, and after editing any templates in the
directory, and after creating or editing any templates in the
<TT
CLASS="filename"
>custom</TT
@ -16779,7 +16533,7 @@ NAME="trbl-relogin-everyone-share"
>Example A-1. Examples of urlbase/cookiepath pairs for sharing login cookies</B
></P
><A
NAME="AEN3256"
NAME="AEN3216"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
@ -16820,7 +16574,7 @@ NAME="trbl-relogin-everyone-restrict"
>Example A-2. Examples of urlbase/cookiepath pairs to restrict the login cookie</B
></P
><A
NAME="AEN3263"
NAME="AEN3223"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
@ -17440,24 +17194,6 @@ TARGET="_top"
>
</P
><P
>&#13; File::Spec:
<P
CLASS="literallayout"
><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CPAN&nbsp;Download&nbsp;Page:&nbsp;<A
HREF="http://search.cpan.org/dist/File-Spec/"
TARGET="_top"
>http://search.cpan.org/dist/File-Spec/</A
><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Documentation:&nbsp;<A
HREF="http://perldoc.perl.org/File/Spec.html"
TARGET="_top"
>http://perldoc.perl.org/File/Spec.html</A
><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</P
>
</P
><P
>&#13; Template-Toolkit:
<P
CLASS="literallayout"
@ -17658,7 +17394,7 @@ NAME="gfdl"
><P
>Version 1.1, March 2000</P
><A
NAME="AEN3436"
NAME="AEN3392"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
@ -18121,7 +17857,7 @@ NAME="gfdl-howto"
of the License in the document and put the following copyright and
license notices just after the title page:</P
><A
NAME="AEN3526"
NAME="AEN3482"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
@ -18158,7 +17894,7 @@ CLASS="glossdiv"
><H1
CLASS="glossdiv"
><A
NAME="AEN3531"
NAME="AEN3487"
>0-9, high ascii</A
></H1
><DL
@ -18745,11 +18481,7 @@ TARGET="_top"
></DT
><DD
><P
>Much more detailed information about the suggestions in
<A
HREF="#security-mysql"
>Section 4.2</A
>.
>Information about how to protect your MySQL server.
</P
></DD
></DL
@ -19068,7 +18800,7 @@ NAME="gloss-zarro"
Terry had the following to say:
</P
><A
NAME="AEN3776"
NAME="AEN3731"
></A
><TABLE
BORDER="0"

View File

@ -7,11 +7,11 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="PREVIOUS"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="NEXT"
@ -36,7 +36,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR
@ -154,7 +154,7 @@ ACCESSKEY="N"
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TD
><TD
WIDTH="34%"

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="PREVIOUS"
@ -35,7 +35,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR
@ -359,7 +359,7 @@ HREF="groups.html#users-and-groups"
></DT
><DT
>3.15.4. <A
HREF="groups.html#AEN2168"
HREF="groups.html#AEN2173"
>Assigning Group Controls to Products</A
></DT
></DL

View File

@ -40,6 +40,7 @@ Bugzilla::Hook</title>
<li class='indexItem indexItem2'><a href='#install-update_db'>install-update_db</a>
<li class='indexItem indexItem2'><a href='#db_schema-abstract_schema'>db_schema-abstract_schema</a>
<li class='indexItem indexItem2'><a href='#mailer-before_send'>mailer-before_send</a>
<li class='indexItem indexItem2'><a href='#page-before_template'>page-before_template</a>
<li class='indexItem indexItem2'><a href='#product-confirm_delete'>product-confirm_delete</a>
<li class='indexItem indexItem2'><a href='#webservice'>webservice</a>
<li class='indexItem indexItem2'><a href='#webservice-error_codes'>webservice-error_codes</a>
@ -421,6 +422,33 @@ name="mailer-before_send"
><code class="code">email</code> - The <code class="code">Email::MIME</code> object that&#39;s about to be sent.</a></dt>
</dl>
<h2><a class='u' href='#___top' title='click to go to top of document'
name="page-before_template"
>page-before_template</a></h2>
<p>This is a simple way to add your own pages to Bugzilla. This hooks <code class="code">page.cgi</code>, which loads templates from <em class="code">template/en/default/pages</em>. For example, <code class="code">page.cgi?id=fields.html</code> loads <em class="code">template/en/default/pages/fields.html.tmpl</em>.</p>
<p>This hook is called right before the template is loaded, so that you can pass your own variables to your own pages.</p>
<p>Params:</p>
<dl>
<dt><a name="page_id"
><code class="code">page_id</code></a></dt>
<dd>
<p>This is the name of the page being loaded, like <code class="code">fields.html</code>.</p>
<p>Note that if two extensions use the same name, it is uncertain which will override the others, so you should be careful with how you name your pages.</p>
<dt><a name="vars"
><code class="code">vars</code></a></dt>
<dd>
<p>This is a hashref--put variables into here if you want them passed to your template.</p>
</dd>
</dl>
<h2><a class='u' href='#___top' title='click to go to top of document'
name="product-confirm_delete"
>product-confirm_delete</a></h2>

View File

@ -2,13 +2,13 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Bugzilla 3.4.1 API Documentation</title>
<title>Bugzilla 3.4.2 API Documentation</title>
<link rel="stylesheet" title="style" type="text/css" href="./../../../style.css" media="all" >
</head>
<body class="contentspage">
<h1>Bugzilla 3.4.1 API Documentation</h1>
<h1>Bugzilla 3.4.2 API Documentation</h1>
<dl class='superindex'>
<dt><a name="Files">Files</a></dt>
<dd>

View File

@ -15,6 +15,7 @@ jobqueue.pl</title>
<li class='indexItem indexItem1'><a href='#NAME'>NAME</a>
<li class='indexItem indexItem1'><a href='#SYNOPSIS'>SYNOPSIS</a>
<li class='indexItem indexItem1'><a href='#DESCRIPTION'>DESCRIPTION</a>
<li class='indexItem indexItem1'><a href='#Running_jobqueue.pl_as_a_System_Service'>Running jobqueue.pl as a System Service</a>
</ul>
</div>
@ -28,15 +29,26 @@ name="NAME"
name="SYNOPSIS"
>SYNOPSIS</a></h1>
<pre class="code"> ./jobqueue.pl [ -f ] [ -d ] { start | stop | restart | check | help | version }
<pre class="code"> ./jobqueue.pl [OPTIONS] COMMAND
OPTIONS:
-f Run in the foreground (don&#39;t detach)
-d Output a lot of debugging information
-p file Specify the file where jobqueue.pl should store its current
process id. Defaults to F&#60;data/jobqueue.pl.pid&#62;.
-n name What should this process call itself in the system log?
Defaults to the full path you used to invoke the script.
COMMANDS:
start Starts a new jobqueue daemon if there isn&#39;t one running already
stop Stops a running jobqueue daemon
restart Stops a running jobqueue if one is running, and then
starts a new one.
check Report the current status of the daemon.
install On some *nix systems, this automatically installs and
configures jobqueue.pl as a system service so that it will
start every time the machine boots.
uninstall Removes the system service for jobqueue.pl.
help Display this usage info
version Display the version of jobqueue.pl</pre>
@ -47,6 +59,17 @@ name="DESCRIPTION"
<p>See <a href="./Bugzilla/JobQueue.html" class="podlinkpod"
>Bugzilla::JobQueue</a> and <a href="./Bugzilla/JobQueue/Runner.html" class="podlinkpod"
>Bugzilla::JobQueue::Runner</a>.</p>
<h1><a class='u' href='#___top' title='click to go to top of document'
name="Running_jobqueue.pl_as_a_System_Service"
>Running jobqueue.pl as a System Service</a></h1>
<p>For systems that use Upstart or SysV Init, there is a SysV/Upstart init script included with Bugzilla for jobqueue.pl: <em class="code">contrib/bugzilla-queue</em>. It should work out-of-the-box on RHEL, Fedora, CentOS etc.</p>
<p>You can install it by doing <code class="code">./jobqueue.pl install</code> as root, after already having run <a href="./checksetup.html" class="podlinkpod"
>checksetup</a> at least once to completion on this Bugzilla installation.</p>
<p>If you are using a system that isn&#39;t RHEL, Fedora, CentOS, etc., then you may have to modify <em class="code">contrib/bugzilla-queue</em> and install it yourself manually in order to get <code class="code">jobqueue.pl</code> running as a system service.</p>
<p class="backlinkbottom"><b><a name="___bottom" href="index.html" title="All Documents">&lt;&lt;</a></b></p>
<!-- end doc -->

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR
@ -338,12 +338,33 @@ ALT="Caution"></TD
ALIGN="LEFT"
VALIGN="TOP"
><P
>&#13; MySQL's default configuration is very insecure.
<A
HREF="security-mysql.html"
>Section 4.2</A
> has some good information for
improving your installation's security.
>&#13; MySQL's default configuration is insecure.
We highly recommend to run <TT
CLASS="filename"
>mysql_secure_installation</TT
>
on Linux or the MySQL installer on Windows, and follow the instructions.
Important points to note are:
<P
></P
><OL
TYPE="1"
><LI
><P
>Be sure that the root account has a secure password set.</P
></LI
><LI
><P
>Do not create an anonymous account, and if it exists, say "yes"
to remove it.</P
></LI
><LI
><P
>If your web server and MySQL server are on the same machine,
you should disable the network access.</P
></LI
></OL
>
</P
></TD
></TR
@ -359,11 +380,11 @@ NAME="mysql-max-allowed-packet"
></H4
><P
>By default, MySQL will only allow you to insert things
into the database that are smaller than 64KB. Attachments
into the database that are smaller than 1MB. Attachments
may be larger than this. Also, Bugzilla combines all comments
on a single bug into one field for full-text searching, and the
combination of all comments on a single bug are very likely to
be larger than 64KB.</P
combination of all comments on a single bug could in some cases
be larger than 1MB.</P
><P
>To change MySQL's default, you need to edit your MySQL
configuration file, which is usually <TT
@ -397,7 +418,7 @@ CLASS="section"
><H4
CLASS="section"
><A
NAME="AEN477"
NAME="AEN482"
>2.2.2.2.2. Allow small words in full-text indexes</A
></H4
><P
@ -538,7 +559,7 @@ CLASS="section"
><H4
CLASS="section"
><A
NAME="AEN504"
NAME="AEN509"
>2.2.2.2.4. Permit attachments table to grow beyond 4GB</A
></H4
><P
@ -638,7 +659,7 @@ CLASS="section"
><H4
CLASS="section"
><A
NAME="AEN520"
NAME="AEN525"
>2.2.2.3.1. Add a User to PostgreSQL</A
></H4
><P
@ -723,7 +744,7 @@ CLASS="section"
><H4
CLASS="section"
><A
NAME="AEN536"
NAME="AEN541"
>2.2.2.3.2. Configure PostgreSQL</A
></H4
><P
@ -784,7 +805,7 @@ CLASS="section"
><H4
CLASS="section"
><A
NAME="AEN552"
NAME="AEN557"
>2.2.2.4.1. Create a New Tablespace</A
></H4
><P
@ -836,7 +857,7 @@ CLASS="section"
><H4
CLASS="section"
><A
NAME="AEN560"
NAME="AEN565"
>2.2.2.4.2. Add a User to Oracle</A
></H4
><P
@ -892,7 +913,7 @@ CLASS="section"
><H4
CLASS="section"
><A
NAME="AEN568"
NAME="AEN573"
>2.2.2.4.3. Configure the Web Server</A
></H4
><P
@ -930,7 +951,7 @@ CLASS="section"
><H2
CLASS="section"
><A
NAME="AEN574"
NAME="AEN579"
>2.2.3. checksetup.pl</A
></H2
><P
@ -985,7 +1006,7 @@ CLASS="filename"
not remotely available by properly applying the access controls in
<A
HREF="security-webserver.html#security-webserver-access"
>Section 4.3.1</A
>Section 4.2.1</A
>. You can run
<TT
CLASS="filename"
@ -1660,7 +1681,7 @@ CLASS="filename"
> directory are
secured as described in <A
HREF="security-webserver.html#security-webserver-access"
>Section 4.3.1</A
>Section 4.2.1</A
>.
</P
></DIV

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR
@ -310,12 +310,12 @@ VALIGN="TOP"
you run <B
CLASS="command"
>./checksetup.pl</B
> after creating or
> after
editing any templates in the <TT
CLASS="filename"
>template/en/default</TT
>
directory, and after editing any templates in the
directory, and after creating or editing any templates in the
<TT
CLASS="filename"
>custom</TT

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="PREVIOUS"
@ -35,7 +35,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR
@ -87,7 +87,7 @@ CLASS="section"
><H2
CLASS="section"
><A
NAME="AEN728"
NAME="AEN733"
>2.3.1. Bug Graphs</A
></H2
><P

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR
@ -83,7 +83,7 @@ NAME="gfdl-howto"
of the License in the document and put the following copyright and
license notices just after the title page:</P
><A
NAME="AEN3526"
NAME="AEN3482"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="PREVIOUS"
@ -35,7 +35,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR
@ -146,7 +146,7 @@ HREF="gfdl-howto.html"
><P
>Version 1.1, March 2000</P
><A
NAME="AEN3436"
NAME="AEN3392"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="PREVIOUS"
@ -32,7 +32,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR
@ -72,7 +72,7 @@ CLASS="glossdiv"
><H1
CLASS="glossdiv"
><A
NAME="AEN3531"
NAME="AEN3487"
>0-9, high ascii</A
></H1
><DL
@ -659,11 +659,7 @@ TARGET="_top"
></DT
><DD
><P
>Much more detailed information about the suggestions in
<A
HREF="security-mysql.html"
>Section 4.2</A
>.
>Information about how to protect your MySQL server.
</P
></DD
></DL
@ -982,7 +978,7 @@ NAME="gloss-zarro"
Terry had the following to say:
</P
><A
NAME="AEN3776"
NAME="AEN3731"
></A
><TABLE
BORDER="0"

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR
@ -506,7 +506,7 @@ CLASS="section"
><H2
CLASS="section"
><A
NAME="AEN2168"
NAME="AEN2173"
>3.15.4. Assigning Group Controls to Products</A
></H2
><P

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR
@ -86,7 +86,7 @@ CLASS="section"
><H2
CLASS="section"
><A
NAME="AEN2693"
NAME="AEN2653"
>5.8.1. Autolinkification</A
></H2
><P

View File

@ -2,7 +2,7 @@
<HTML
><HEAD
><TITLE
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TITLE
><META
NAME="GENERATOR"
@ -46,7 +46,7 @@ CLASS="TITLEPAGE"
CLASS="title"
><A
NAME="AEN2"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</A
></H1
><H3
@ -54,7 +54,7 @@ CLASS="corpauthor"
>The Bugzilla Team</H3
><P
CLASS="pubdate"
>2009-08-01<BR></P
>2009-09-11<BR></P
><DIV
><DIV
CLASS="abstract"
@ -272,16 +272,11 @@ HREF="security-os.html"
></DT
><DT
>4.2. <A
HREF="security-mysql.html"
>MySQL</A
></DT
><DT
>4.3. <A
HREF="security-webserver.html"
>Web server</A
></DT
><DT
>4.4. <A
>4.3. <A
HREF="security-bugzilla.html"
>Bugzilla</A
></DT
@ -600,27 +595,6 @@ CLASS="LOT"
>List of Examples</B
></DT
><DT
>4-1. <A
HREF="security-mysql.html#security-mysql-account-root"
>Assigning the MySQL <SPAN
CLASS="QUOTE"
>"root"</SPAN
> User a Password</A
></DT
><DT
>4-2. <A
HREF="security-mysql.html#security-mysql-account-anonymous"
>Disabling the MySQL <SPAN
CLASS="QUOTE"
>"anonymous"</SPAN
> User</A
></DT
><DT
>4-3. <A
HREF="security-mysql.html#security-mysql-network-ex"
>Disabling Networking in MySQL</A
></DT
><DT
>A-1. <A
HREF="trbl-relogin-everyone.html#trbl-relogin-everyone-share"
>Examples of urlbase/cookiepath pairs for sharing login cookies</A

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="PREVIOUS"
@ -35,7 +35,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR
@ -773,11 +773,6 @@ HREF="installation.html#install-modules-dbd-mysql"
></LI
><LI
><P
>&#13; File::Spec (0.84)
</P
></LI
><LI
><P
>&#13; <A
HREF="installation.html#install-modules-template"
>Template</A
@ -897,7 +892,7 @@ HREF="installation.html#install-modules-patchreader"
HREF="installation.html#install-modules-soap-lite"
>SOAP::Lite</A
>
(any) for the web service interface
(0.710.06) for the web service interface
</P
></LI
><LI
@ -1121,7 +1116,7 @@ CLASS="section"
CLASS="section"
><A
NAME="install-modules-soap-lite"
>2.1.5.8. SOAP::Lite (any)</A
>2.1.5.8. SOAP::Lite (0.710.06)</A
></H3
><P
>Installing SOAP::Lite enables your Bugzilla installation to be

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="PREVIOUS"
@ -35,7 +35,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR
@ -144,7 +144,7 @@ HREF="configuration.html#database-engine"
></DT
><DT
>2.2.3. <A
HREF="configuration.html#AEN574"
HREF="configuration.html#AEN579"
>checksetup.pl</A
></DT
><DT
@ -168,7 +168,7 @@ HREF="extraconfig.html"
><DL
><DT
>2.3.1. <A
HREF="extraconfig.html#AEN728"
HREF="extraconfig.html#AEN733"
>Bug Graphs</A
></DT
><DT
@ -229,17 +229,17 @@ HREF="nonroot.html"
><DL
><DT
>2.6.1. <A
HREF="nonroot.html#AEN893"
HREF="nonroot.html#AEN898"
>Introduction</A
></DT
><DT
>2.6.2. <A
HREF="nonroot.html#AEN897"
HREF="nonroot.html#AEN902"
>MySQL</A
></DT
><DT
>2.6.3. <A
HREF="nonroot.html#AEN932"
HREF="nonroot.html#AEN937"
>Perl</A
></DT
><DT
@ -249,12 +249,12 @@ HREF="nonroot.html#install-perlmodules-nonroot"
></DT
><DT
>2.6.5. <A
HREF="nonroot.html#AEN954"
HREF="nonroot.html#AEN959"
>HTTP Server</A
></DT
><DT
>2.6.6. <A
HREF="nonroot.html#AEN966"
HREF="nonroot.html#AEN971"
>Bugzilla</A
></DT
></DL

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR
@ -227,24 +227,6 @@ TARGET="_top"
>
</P
><P
>&#13; File::Spec:
<P
CLASS="literallayout"
><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CPAN&nbsp;Download&nbsp;Page:&nbsp;<A
HREF="http://search.cpan.org/dist/File-Spec/"
TARGET="_top"
>http://search.cpan.org/dist/File-Spec/</A
><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Documentation:&nbsp;<A
HREF="http://perldoc.perl.org/File/Spec.html"
TARGET="_top"
>http://perldoc.perl.org/File/Spec.html</A
><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</P
>
</P
><P
>&#13; Template-Toolkit:
<P
CLASS="literallayout"

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR
@ -79,7 +79,7 @@ NAME="newversions"
>1.3. New Versions</A
></H1
><P
>&#13; This is the 3.4.1 version of The Bugzilla Guide. It is so named
>&#13; This is the 3.4.2 version of The Bugzilla Guide. It is so named
to match the current version of Bugzilla.
</P
><P

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR
@ -83,7 +83,7 @@ CLASS="section"
><H2
CLASS="section"
><A
NAME="AEN893"
NAME="AEN898"
>2.6.1. Introduction</A
></H2
><P
@ -103,7 +103,7 @@ CLASS="section"
><H2
CLASS="section"
><A
NAME="AEN897"
NAME="AEN902"
>2.6.2. MySQL</A
></H2
><P
@ -159,7 +159,7 @@ CLASS="section"
><H3
CLASS="section"
><A
NAME="AEN905"
NAME="AEN910"
>2.6.2.1. Running MySQL as Non-Root</A
></H3
><DIV
@ -167,7 +167,7 @@ CLASS="section"
><H4
CLASS="section"
><A
NAME="AEN907"
NAME="AEN912"
>2.6.2.1.1. The Custom Configuration Method</A
></H4
><P
@ -211,7 +211,7 @@ CLASS="section"
><H4
CLASS="section"
><A
NAME="AEN911"
NAME="AEN916"
>2.6.2.1.2. The Custom Built Method</A
></H4
><P
@ -234,7 +234,7 @@ CLASS="section"
><H4
CLASS="section"
><A
NAME="AEN916"
NAME="AEN921"
>2.6.2.1.3. Starting the Server</A
></H4
><P
@ -362,7 +362,7 @@ CLASS="section"
><H2
CLASS="section"
><A
NAME="AEN932"
NAME="AEN937"
>2.6.3. Perl</A
></H2
><P
@ -466,7 +466,7 @@ CLASS="section"
><H2
CLASS="section"
><A
NAME="AEN954"
NAME="AEN959"
>2.6.5. HTTP Server</A
></H2
><P
@ -480,7 +480,7 @@ CLASS="section"
><H3
CLASS="section"
><A
NAME="AEN957"
NAME="AEN962"
>2.6.5.1. Running Apache as Non-Root</A
></H3
><P
@ -562,7 +562,7 @@ CLASS="section"
><H2
CLASS="section"
><A
NAME="AEN966"
NAME="AEN971"
>2.6.6. Bugzilla</A
></H2
><P

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR
@ -387,7 +387,7 @@ NAME="win32-http"
you choose, be sure to pay attention to the security notes
in <A
HREF="security-webserver.html#security-webserver-access"
>Section 4.3.1</A
>Section 4.2.1</A
>. More
information on configuring specific web servers can be found
in <A

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="PREVIOUS"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR
@ -207,7 +207,7 @@ NAME="negation"
>&#13; At first glance, negation seems redundant. Rather than
searching for
<A
NAME="AEN2540"
NAME="AEN2500"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
@ -218,7 +218,7 @@ CLASS="BLOCKQUOTE"
>
one could search for
<A
NAME="AEN2542"
NAME="AEN2502"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
@ -229,7 +229,7 @@ CLASS="BLOCKQUOTE"
>
However, the search
<A
NAME="AEN2544"
NAME="AEN2504"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
@ -241,7 +241,7 @@ CLASS="BLOCKQUOTE"
would find every bug where anyone on the CC list did not contain
"@mozilla.org" while
<A
NAME="AEN2546"
NAME="AEN2506"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
@ -255,7 +255,7 @@ CLASS="BLOCKQUOTE"
complex expressions to be built using terms OR'd together and then
negated. Negation permits queries such as
<A
NAME="AEN2548"
NAME="AEN2508"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
@ -268,7 +268,7 @@ CLASS="BLOCKQUOTE"
to find bugs that are neither
in the update product or in the documentation component or
<A
NAME="AEN2550"
NAME="AEN2510"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
@ -296,7 +296,7 @@ NAME="multiplecharts"
a bug that has two different people cc'd on it, then you need
to use two boolean charts. A search for
<A
NAME="AEN2555"
NAME="AEN2515"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
@ -311,7 +311,7 @@ CLASS="BLOCKQUOTE"
containing "foo@" and someone else containing "@mozilla.org",
then you would need two boolean charts.
<A
NAME="AEN2557"
NAME="AEN2517"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR
@ -193,7 +193,7 @@ CLASS="section"
><H3
CLASS="section"
><A
NAME="AEN2890"
NAME="AEN2850"
>5.11.2.1. Creating Charts</A
></H3
><P

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR
@ -76,7 +76,7 @@ CLASS="section"
CLASS="section"
><A
NAME="security-bugzilla"
>4.4. Bugzilla</A
>4.3. Bugzilla</A
></H1
><DIV
CLASS="section"
@ -84,7 +84,7 @@ CLASS="section"
CLASS="section"
><A
NAME="security-bugzilla-charset"
>4.4.1. Prevent users injecting malicious Javascript</A
>4.3.1. Prevent users injecting malicious Javascript</A
></H2
><P
>If you installed Bugzilla version 2.22 or later from scratch,

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -17,8 +17,8 @@ REL="PREVIOUS"
TITLE="Bugzilla Security"
HREF="security.html"><LINK
REL="NEXT"
TITLE="MySQL"
HREF="security-mysql.html"></HEAD
TITLE="Web server"
HREF="security-webserver.html"></HEAD
><BODY
CLASS="section"
BGCOLOR="#FFFFFF"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR
@ -61,7 +61,7 @@ WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="security-mysql.html"
HREF="security-webserver.html"
ACCESSKEY="N"
>Next</A
></TD
@ -259,7 +259,7 @@ WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="security-mysql.html"
HREF="security-webserver.html"
ACCESSKEY="N"
>Next</A
></TD
@ -283,7 +283,7 @@ ACCESSKEY="U"
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>MySQL</TD
>Web server</TD
></TR
></TABLE
></DIV

View File

@ -7,15 +7,15 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
TITLE="Bugzilla Security"
HREF="security.html"><LINK
REL="PREVIOUS"
TITLE="MySQL"
HREF="security-mysql.html"><LINK
TITLE="Operating System"
HREF="security-os.html"><LINK
REL="NEXT"
TITLE="Bugzilla"
HREF="security-bugzilla.html"></HEAD
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR
@ -47,7 +47,7 @@ WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="security-mysql.html"
HREF="security-os.html"
ACCESSKEY="P"
>Prev</A
></TD
@ -76,7 +76,7 @@ CLASS="section"
CLASS="section"
><A
NAME="security-webserver"
>4.3. Web server</A
>4.2. Web server</A
></H1
><DIV
CLASS="section"
@ -84,7 +84,7 @@ CLASS="section"
CLASS="section"
><A
NAME="security-webserver-access"
>4.3.1. Disabling Remote Access to Bugzilla Configuration Files</A
>4.2.1. Disabling Remote Access to Bugzilla Configuration Files</A
></H2
><P
>&#13; There are many files that are placed in the Bugzilla directory
@ -363,7 +363,7 @@ WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="security-mysql.html"
HREF="security-os.html"
ACCESSKEY="P"
>Prev</A
></TD
@ -391,7 +391,7 @@ ACCESSKEY="N"
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>MySQL</TD
>Operating System</TD
><TD
WIDTH="34%"
ALIGN="center"

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="PREVIOUS"
@ -35,7 +35,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR
@ -110,41 +110,11 @@ CLASS="filename"
></DD
><DT
>4.2. <A
HREF="security-mysql.html"
>MySQL</A
></DT
><DD
><DL
><DT
>4.2.1. <A
HREF="security-mysql.html#security-mysql-account"
>The MySQL System Account</A
></DT
><DT
>4.2.2. <A
HREF="security-mysql.html#security-mysql-root"
>The MySQL <SPAN
CLASS="QUOTE"
>"root"</SPAN
> and <SPAN
CLASS="QUOTE"
>"anonymous"</SPAN
> Users</A
></DT
><DT
>4.2.3. <A
HREF="security-mysql.html#security-mysql-network"
>Network Access</A
></DT
></DL
></DD
><DT
>4.3. <A
HREF="security-webserver.html"
>Web server</A
></DT
><DT
>4.4. <A
>4.3. <A
HREF="security-bugzilla.html"
>Bugzilla</A
></DT

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -39,7 +39,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -41,7 +41,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -9,7 +9,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -40,7 +40,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -8,7 +8,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -39,7 +39,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR
@ -120,7 +120,7 @@ NAME="trbl-relogin-everyone-share"
>Example A-1. Examples of urlbase/cookiepath pairs for sharing login cookies</B
></P
><A
NAME="AEN3256"
NAME="AEN3216"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"
@ -161,7 +161,7 @@ NAME="trbl-relogin-everyone-restrict"
>Example A-2. Examples of urlbase/cookiepath pairs to restrict the login cookie</B
></P
><A
NAME="AEN3263"
NAME="AEN3223"
></A
><BLOCKQUOTE
CLASS="BLOCKQUOTE"

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -38,7 +38,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

View File

@ -7,7 +7,7 @@
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.4.1
TITLE="The Bugzilla Guide - 3.4.2
Release"
HREF="index.html"><LINK
REL="UP"
@ -39,7 +39,7 @@ CELLSPACING="0"
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.4.1
>The Bugzilla Guide - 3.4.2
Release</TH
></TR
><TR

Some files were not shown because too many files have changed in this diff Show More