From d6fe62579ecd47f5fb679ea0536c5157030ac4df Mon Sep 17 00:00:00 2001 From: "jake%bugzilla.org" <> Date: Tue, 8 Jul 2003 09:03:00 +0000 Subject: Recompile the docs --- docs/html/Bugzilla-Guide.html | 797 +++++++++++++++++++++++++++-------------- docs/html/administration.html | 8 +- docs/html/cust-templates.html | 8 +- docs/html/dbdoc.html | 4 +- docs/html/extraconfig.html | 339 ++++++++++++------ docs/html/faq.html | 4 +- docs/html/gfdl-howto.html | 2 +- docs/html/gfdl.html | 2 +- docs/html/glossary.html | 60 +++- docs/html/installation.html | 4 +- docs/html/os-specific.html | 234 +++++++----- docs/html/stepbystep.html | 110 +++--- docs/html/troubleshooting.html | 4 +- docs/html/upgrading.html | 30 ++ 14 files changed, 1058 insertions(+), 548 deletions(-) (limited to 'docs/html') diff --git a/docs/html/Bugzilla-Guide.html b/docs/html/Bugzilla-Guide.html index d8d9f7779..7d2e8b7d0 100644 --- a/docs/html/Bugzilla-Guide.html +++ b/docs/html/Bugzilla-Guide.html @@ -2699,174 +2699,174 @@ CLASS="QUOTE" >

Perl Modules (minimum version): -

  1. Bundle::Bugzilla - (Will allow you to skip the rest) -

  2. AppConfig - (1.52) -

  3. CGI - (2.88) -

  4. Data::Dumper - (any) -

  5. Date::Format - (2.21) -

  6. DBI - (1.32) -

  7. DBD::mysql - (2.1010) -

  8. File::Spec - (0.82) -

  9. File::Temp - (any) -

  10. Template Toolkit - (2.08) -

  11. Text::Wrap - (2001.0131) -

- and, optionally: -

  1. GD - (1.20) for bug charting -

  2. Chart::Base - (0.99c) for bug charting -

  3. XML::Parser - (any) for the XML interface -

  4. GD::Graph - (any) for bug charting -

  5. GD::Text::Align - (any) for bug charting -

  6. MIME::Parser - (any) for the email interface -

-


4.2.4. LDAP Authentication

This information on using the LDAP - authentication options with Bugzilla is old, and the authors do - not know of anyone who has tested it. Approach with caution. +>LDAP authentication has been rewritten for the 2.18 release of + Bugzilla. It no longer requires the Mozilla::LDAP module and now uses + Net::LDAP instead. This rewrite was part of a larger landing that + allowed for additional authentication schemes to be easily added + (bug + 180642). +

This patch originally landed in 21-Mar-2003 and was included + in the 2.17.4 development release.

-

The existing authentication scheme for Bugzilla uses email addresses as the primary user ID, and a @@ -4313,92 +4321,189 @@ VALIGN="TOP" email address, not LDAP username. You still assign bugs by email address, query on users by email address, etc.

Using LDAP for Bugzilla authentication requires the - Mozilla::LDAP (aka PerLDAP) Perl module. The - Mozilla::LDAP module in turn requires Netscape's Directory SDK for C. - After you have installed the SDK, then install the PerLDAP module. - Mozilla::LDAP and the Directory SDK for C are both -

Because the Bugzilla account is not created until the first time + a user logs in, a user who has not yet logged is unknown to Bugzilla. + This means they cannot be used as an assignee or QA contact (default or + otherwise), added to any cc list, or any other such operation. One + possible workaround is the bugzilla_ldapsync.rb + script in the + contrib directory. Another possible solution is fixing + available for - download from mozilla.org. -

bug + 201069. +

Set the Param 'useLDAP' to "On" **only** if you will be using an LDAP - directory for - authentication. Be very careful when setting up this parameter; if you - set LDAP authentication, but do not have a valid LDAP directory set up, - you will not be able to log back in to Bugzilla once you log out. (If - this happens, you can get back in by manually editing the data/params - file, and setting useLDAP back to 0.) -

Parameters required to use LDAP Authentication:

If using LDAP, you must set the - three additional parameters: Set LDAPserver to the name (and optionally - port) of your LDAP server. If no port is specified, it defaults to the - default port of 389. (e.g "ldap.mycompany.com" or - "ldap.mycompany.com:1234") Set LDAPBaseDN to the base DN for searching - for users in your LDAP directory. (e.g. "ou=People,o=MyCompany") uids - must be unique under the DN specified here. Set LDAPmailattribute to - the name of the attribute in your LDAP directory which contains the - primary email address. On most directory servers available, this is - "mail", but you may need to change this. -

loginmethod

You can also try using OpenLDAP with Bugzilla, using any of a number of administration - tools. You should apply the patch attached to - bug 158630This parameter should be set to "LDAP" - , then set the following object classes for your users: - -

only if you will be using an LDAP directory + for authentication. If you set this param to "LDAP" but + fail to set up the other parameters listed below you will not be + able to log back in to Bugzilla one you log out. If this happens + to you, you will need to manually edit + data/params and set loginmethod to + "DB". +

LDAPserver

This parameter should be set to the name (and optionally the + port) of your LDAP server. If no port is specified, it assumes + the default LDAP port of 389. +

Ex. "ldap.company.com" + or "ldap.company.com:3268" +

LDAPbinddn [Optional]

Some LDAP servers will not allow an anonymous bind to search + the directory. If this is the case with your configuration you + should set the LDAPbinddn parameter to the user account Bugzilla + should use instead of the anonymous bind. +

Ex. "cn=default,cn=user:password"

LDAPBaseDN

objectClass: person

  • The LDAPBaseDN parameter should be set to the location in + your LDAP tree that you would like to search for e-mail addresses. + Your uids should be unique under the DN specified here. +

    objectClass: organizationalPerson

  • Ex. "ou=People,o=Company"

  • LDAPuidattribute

    objectClass: inetOrgPerson

  • The LDAPuidattribute parameter should be set to the attribute + which contains the unique UID of your users. The value retrieved + from this attribute will be used when attempting to bind as the + user to confirm their password. +

    objectClass: top

  • Ex. "uid"

  • LDAPmailattribute

    objectClass: posixAccount

  • The LDAPmailattribute parameter should be the name of the + attribute which contains the e-mail address your users will enter + into the Bugzilla login boxes. +

    objectClass: shadowAccount

  • - - Please note that this patch has not yet been - accepted by the Bugzilla team, and so you may need to do some - manual tweaking. That said, it looks like Net::LDAP is probably - the way to go in the future. -

    Ex. "mail"

    http://www.cet.org/tech_tips/malicious_code_mitigation.html/#3. - Executing the following code snippet from a UNIX command shell will - rectify the problem if your Bugzilla installation is intended for an - English-speaking audience. As always, be sure your Bugzilla - installation has a good backup before making changes, and I recommend - you understand what the script is doing before executing it.

    Telling Bugzilla to output a charset as part of the HTTP header is + much easier in version 2.18 and higher (including any cvs + pull after 4-May-2003 and development release after 2.17.5) than it was + in previous versions. Simply locate the following line in + Bugzilla/CGI.pm: +
    
bash# perl -pi -e "s/Content-Type\: text\/html/Content-Type\: text\/html\; charset=ISO-8859-1/i" *.cgi *.pl
    -        
    # Make sure that we don't send any charset headers + $self->charset(''); +
    -

    All this one-liner command does is search for all instances of - "Content-type: text/html" - - and replaces it with - "Content-Type: text/html; charset=ISO-8859-1"

    
    # Send all data using the ISO-8859-1 charset
    +    $self->charset('ISO-8859-1');
    +      
    - - . This specification prevents possible Javascript attacks on the - browser, and is suggested for all English-speaking sites. For - non-English-speaking Bugzilla sites, I suggest changing - "ISO-8859-1", above, to - "UTF-8".

    
use Net::SMTP;
    -$smtp_server = 'smtp.mycompany.com';  # change this
    +my $smtp_server = 'smtp.mycompany.com';  # change this
     
     # Use die on error, so that the mail will be in the 'unsent mails' and
     # can be sent from the sanity check page.
    @@ -5057,110 +5164,172 @@ TARGET="_top"
     >.

    Follow the instructions for setting up Fink. Once it's installed, - you'll want to run the following as root: - fink install gd + you'll want to use it to install the gd2 package.

    It will prompt you for a number of dependencies, type 'y' and hit - enter to install all of the dependencies. Then watch it work.

    To prevent creating conflicts with the software that Apple installs - by default, Fink creates its own directory tree at /sw where it installs - most of the software that it installs. This means your libraries and - headers for libgd will be at /sw/lib and /sw/include instead of /usr/lib - and /usr/local/include. Because of these changed locations for the - libraries, the Perl GD module will not install directly via CPAN, because it - looks for the specific paths instead of getting them from your - environment. But there's a way around that :-)

    Instead of typing - "install GD" - at the - cpan> - prompt, type - look GD. - This should go through the motions of downloading the latest version of - the GD module, then it will open a shell and drop you into the build - directory. Apply this patch - to the Makefile.PL file (save the - patch into a file and use the command - patch < patchfile.) + enter to install all of the dependencies and then watch it work. You will + then be able to use CPAN to + install the GD perl module.

    Then, run these commands to finish the installation of the GD - module: -

    To prevent creating conflicts with the software that Apple + installs by default, Fink creates its own directory tree at + /sw where it installs most of + the software that it installs. This means your libraries and headers be + at /sw/lib and + /sw/include instead of + /usr/lib and + /usr/local/include. When the + Perl module config script asks where your libgd is, be sure to tell it + /sw/lib. +

    perl Makefile.PL -
    make -

    Also available via Fink is expat. Once running using fink to + install the expat package you will be able to install + XML::Parser using CPAN. There is one caveat. Unlike recent versions of + the GD module, XML::Parser doesn't prompt for the location of the + required libraries. When using CPAN, you will need to use the following + command sequence: +

    make test
    
# perl -MCPAN -e'look XML::Parser'        
    -        
    make install -
    And don't forget to run - exit - - to get back to CPAN.

    -

    The look command will download the module and spawn a + new shell with the extracted files as the current working directory. + The exit command will return you to your original shell. +
    You should watch the output from these make commands, + especially "make test" as errors may prevent XML::Parser + from functioning correctly with Bugzilla. +

    4.5.1. Bundle::Bugzilla makes me upgrade to Perl 5.6.1


    4.5.2. DBD::Sponge::db prepare failed


    5.7.1. What to Edit


    5.7.2. How To Edit Templates


    5.7.3. Template Formats


    5.7.4. Particular Templates

    5.9. Upgrading to New Releases

    Upgrading is a one-way process. You should backup your database + and current Bugzilla directory before attempting the upgrade. If you wish + to revert to the old Bugzilla version for any reason, you will have to + restore from these backups. +

    Upgrading Bugzilla is something we all want to do from time to time, be it to get new features or pick up the latest security fix. How easy @@ -11005,7 +11204,7 @@ CLASS="answer" You can call bug_email.pl directly from your aliases file, with an entry like this:

    Microsoft has some advice on this matter, as well:


    B.2.1. Bugzilla Database Basics


    B.2.1.1. Bugzilla Database Tables

    Version 1.1, March 2000

    0-9, high ascii

    contrib

    The contrib directory is + a location to put scripts that have been contributed to Bugzilla but + are not a part of the official distribution. These scripts are written + by third parties and may be in languages other than perl. For those + that are in perl, there may be additional modules or other requirements + than those of the offical distribution. +

    Scripts in the contrib + directory are not offically supported by the Bugzilla team and may + break in between versions. +

    +

    5.7.1. What to Edit
    5.7.2. How To Edit Templates
    5.7.3. Template Formats
    5.7.4. Particular Templates

    5.7.1. What to Edit

    5.7.2. How To Edit Templates

    5.7.3. Template Formats

    5.7.4. Particular Templates

    B.2.1. Bugzilla Database Basics

    B.2.1.1. Bugzilla Database Tables

    4.2.4. LDAP Authentication

    This information on using the LDAP - authentication options with Bugzilla is old, and the authors do - not know of anyone who has tested it. Approach with caution. +>LDAP authentication has been rewritten for the 2.18 release of + Bugzilla. It no longer requires the Mozilla::LDAP module and now uses + Net::LDAP instead. This rewrite was part of a larger landing that + allowed for additional authentication schemes to be easily added + (bug + 180642). +

    This patch originally landed in 21-Mar-2003 and was included + in the 2.17.4 development release.

    -

    The existing authentication scheme for Bugzilla uses email addresses as the primary user ID, and a @@ -346,92 +354,189 @@ VALIGN="TOP" email address, not LDAP username. You still assign bugs by email address, query on users by email address, etc.

    Using LDAP for Bugzilla authentication requires the - Mozilla::LDAP (aka PerLDAP) Perl module. The - Mozilla::LDAP module in turn requires Netscape's Directory SDK for C. - After you have installed the SDK, then install the PerLDAP module. - Mozilla::LDAP and the Directory SDK for C are both -

    Because the Bugzilla account is not created until the first time + a user logs in, a user who has not yet logged is unknown to Bugzilla. + This means they cannot be used as an assignee or QA contact (default or + otherwise), added to any cc list, or any other such operation. One + possible workaround is the bugzilla_ldapsync.rb + script in the + contrib directory. Another possible solution is fixing + available for - download from mozilla.org. -

    bug + 201069. +

    Set the Param 'useLDAP' to "On" **only** if you will be using an LDAP - directory for - authentication. Be very careful when setting up this parameter; if you - set LDAP authentication, but do not have a valid LDAP directory set up, - you will not be able to log back in to Bugzilla once you log out. (If - this happens, you can get back in by manually editing the data/params - file, and setting useLDAP back to 0.) -

    Parameters required to use LDAP Authentication:

    If using LDAP, you must set the - three additional parameters: Set LDAPserver to the name (and optionally - port) of your LDAP server. If no port is specified, it defaults to the - default port of 389. (e.g "ldap.mycompany.com" or - "ldap.mycompany.com:1234") Set LDAPBaseDN to the base DN for searching - for users in your LDAP directory. (e.g. "ou=People,o=MyCompany") uids - must be unique under the DN specified here. Set LDAPmailattribute to - the name of the attribute in your LDAP directory which contains the - primary email address. On most directory servers available, this is - "mail", but you may need to change this. -

    loginmethod

    You can also try using OpenLDAP with Bugzilla, using any of a number of administration - tools. You should apply the patch attached to - bug 158630This parameter should be set to "LDAP" - , then set the following object classes for your users: - -

    only if you will be using an LDAP directory + for authentication. If you set this param to "LDAP" but + fail to set up the other parameters listed below you will not be + able to log back in to Bugzilla one you log out. If this happens + to you, you will need to manually edit + data/params and set loginmethod to + "DB". +

    LDAPserver

    This parameter should be set to the name (and optionally the + port) of your LDAP server. If no port is specified, it assumes + the default LDAP port of 389. +

    Ex. "ldap.company.com" + or "ldap.company.com:3268" +

    LDAPbinddn [Optional]

    Some LDAP servers will not allow an anonymous bind to search + the directory. If this is the case with your configuration you + should set the LDAPbinddn parameter to the user account Bugzilla + should use instead of the anonymous bind. +

    Ex. "cn=default,cn=user:password"

    LDAPBaseDN

    objectClass: person

  • The LDAPBaseDN parameter should be set to the location in + your LDAP tree that you would like to search for e-mail addresses. + Your uids should be unique under the DN specified here. +

    objectClass: organizationalPerson

  • Ex. "ou=People,o=Company"

  • LDAPuidattribute

    objectClass: inetOrgPerson

  • The LDAPuidattribute parameter should be set to the attribute + which contains the unique UID of your users. The value retrieved + from this attribute will be used when attempting to bind as the + user to confirm their password. +

    objectClass: top

  • Ex. "uid"

  • LDAPmailattribute

    objectClass: posixAccount

  • The LDAPmailattribute parameter should be the name of the + attribute which contains the e-mail address your users will enter + into the Bugzilla login boxes. +

    objectClass: shadowAccount

  • - - Please note that this patch has not yet been - accepted by the Bugzilla team, and so you may need to do some - manual tweaking. That said, it looks like Net::LDAP is probably - the way to go in the future. -

    Ex. "mail"

    http://www.cet.org/tech_tips/malicious_code_mitigation.html/#3. - Executing the following code snippet from a UNIX command shell will - rectify the problem if your Bugzilla installation is intended for an - English-speaking audience. As always, be sure your Bugzilla - installation has a good backup before making changes, and I recommend - you understand what the script is doing before executing it.

    Telling Bugzilla to output a charset as part of the HTTP header is + much easier in version 2.18 and higher (including any cvs + pull after 4-May-2003 and development release after 2.17.5) than it was + in previous versions. Simply locate the following line in + Bugzilla/CGI.pm: +
    
bash# perl -pi -e "s/Content-Type\: text\/html/Content-Type\: text\/html\; charset=ISO-8859-1/i" *.cgi *.pl
    -        
    # Make sure that we don't send any charset headers + $self->charset(''); +
    -

    All this one-liner command does is search for all instances of - "Content-type: text/html" - - and replaces it with - "Content-Type: text/html; charset=ISO-8859-1"

    
    # Send all data using the ISO-8859-1 charset
    +    $self->charset('ISO-8859-1');
    +      
    - - . This specification prevents possible Javascript attacks on the - browser, and is suggested for all English-speaking sites. For - non-English-speaking Bugzilla sites, I suggest changing - "ISO-8859-1", above, to - "UTF-8".

    Microsoft has some advice on this matter, as well:

    Version 1.1, March 2000

    0-9, high ascii

    contrib

    The contrib directory is + a location to put scripts that have been contributed to Bugzilla but + are not a part of the official distribution. These scripts are written + by third parties and may be in languages other than perl. For those + that are in perl, there may be additional modules or other requirements + than those of the offical distribution. +

    Scripts in the contrib + directory are not offically supported by the Bugzilla team and may + break in between versions. +

    +

    4.5.1. Bundle::Bugzilla makes me upgrade to Perl 5.6.1
    4.5.2. DBD::Sponge::db prepare failed
    
use Net::SMTP;
    -$smtp_server = 'smtp.mycompany.com';  # change this
    +my $smtp_server = 'smtp.mycompany.com';  # change this
     
     # Use die on error, so that the mail will be in the 'unsent mails' and
     # can be sent from the sanity check page.
    @@ -526,110 +526,172 @@ TARGET="_top"
     >.

    Follow the instructions for setting up Fink. Once it's installed, - you'll want to run the following as root: - fink install gd + you'll want to use it to install the gd2 package.

    It will prompt you for a number of dependencies, type 'y' and hit - enter to install all of the dependencies. Then watch it work.

    To prevent creating conflicts with the software that Apple installs - by default, Fink creates its own directory tree at /sw where it installs - most of the software that it installs. This means your libraries and - headers for libgd will be at /sw/lib and /sw/include instead of /usr/lib - and /usr/local/include. Because of these changed locations for the - libraries, the Perl GD module will not install directly via CPAN, because it - looks for the specific paths instead of getting them from your - environment. But there's a way around that :-)

    Instead of typing - "install GD" - at the - cpan> - prompt, type - look GD. - This should go through the motions of downloading the latest version of - the GD module, then it will open a shell and drop you into the build - directory. Apply this patch - to the Makefile.PL file (save the - patch into a file and use the command - patch < patchfile.) + enter to install all of the dependencies and then watch it work. You will + then be able to use CPAN to + install the GD perl module.

    Then, run these commands to finish the installation of the GD - module: -

    To prevent creating conflicts with the software that Apple + installs by default, Fink creates its own directory tree at + /sw where it installs most of + the software that it installs. This means your libraries and headers be + at /sw/lib and + /sw/include instead of + /usr/lib and + /usr/local/include. When the + Perl module config script asks where your libgd is, be sure to tell it + /sw/lib. +

    perl Makefile.PL -
    make -

    Also available via Fink is expat. Once running using fink to + install the expat package you will be able to install + XML::Parser using CPAN. There is one caveat. Unlike recent versions of + the GD module, XML::Parser doesn't prompt for the location of the + required libraries. When using CPAN, you will need to use the following + command sequence: +

    make test
    
# perl -MCPAN -e'look XML::Parser'        
    -        
    make install -
    And don't forget to run - exit - - to get back to CPAN.

    -

    The look command will download the module and spawn a + new shell with the extracted files as the current working directory. + The exit command will return you to your original shell. +
    You should watch the output from these make commands, + especially "make test" as errors may prevent XML::Parser + from functioning correctly with Bugzilla. +

    Perl Modules (minimum version): -

    1. Bundle::Bugzilla - (Will allow you to skip the rest) -

    2. AppConfig - (1.52) -

    3. CGI - (2.88) -

    4. Data::Dumper - (any) -

    5. Date::Format - (2.21) -

    6. DBI - (1.32) -

    7. DBD::mysql - (2.1010) -

    8. File::Spec - (0.82) -

    9. File::Temp - (any) -

    10. Template Toolkit - (2.08) -

    11. Text::Wrap - (2001.0131) -

    - and, optionally: -

    1. GD - (1.20) for bug charting -

    2. Chart::Base - (0.99c) for bug charting -

    3. XML::Parser - (any) for the XML interface -

    4. GD::Graph - (any) for bug charting -

    5. GD::Text::Align - (any) for bug charting -

    6. MIME::Parser - (any) for the email interface -

    -

    4.5.1. Bundle::Bugzilla makes me upgrade to Perl 5.6.1

    4.5.2. DBD::Sponge::db prepare failed

    5.9. Upgrading to New Releases

    Upgrading is a one-way process. You should backup your database + and current Bugzilla directory before attempting the upgrade. If you wish + to revert to the old Bugzilla version for any reason, you will have to + restore from these backups. +

    Upgrading Bugzilla is something we all want to do from time to time, be it to get new features or pick up the latest security fix. How easy -- cgit v1.2.1