diff options
-rwxr-xr-x | backdoor.cgi | 178 |
1 files changed, 0 insertions, 178 deletions
diff --git a/backdoor.cgi b/backdoor.cgi deleted file mode 100755 index f46cb6759..000000000 --- a/backdoor.cgi +++ /dev/null @@ -1,178 +0,0 @@ -#!/usr/bonsaitools/bin/perl -w -# -*- Mode: perl; indent-tabs-mode: nil -*- -# -# The contents of this file are subject to the Mozilla Public -# License Version 1.1 (the "License"); you may not use this file -# except in compliance with the License. You may obtain a copy of -# the License at http://www.mozilla.org/MPL/ -# -# Software distributed under the License is distributed on an "AS -# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or -# implied. See the License for the specific language governing -# rights and limitations under the License. -# -# The Original Code is the Bugzilla Bug Tracking System. -# -# The Initial Developer of the Original Code is Netscape Communications -# Corporation. Portions created by Netscape are -# Copyright (C) 1998 Netscape Communications Corporation. All -# Rights Reserved. -# -# Contributor(s): Terry Weissman <terry@mozilla.org> - -# Provides a silly 'back-door' mechanism to let me automatically insert -# bugs from the netscape bugsystem. Other installations of Bugzilla probably -# don't need to worry about this file any. - -use diagnostics; -use strict; - -require "CGI.pl"; - -# Shut up misguided -w warnings about "used only once": - -use vars %::versions; - - -ConnectToDatabase(); - -print "Content-type: text/plain\n\n"; - -# while (my ($key,$value) = each %ENV) { -# print "$key=$value\n"; -# } - -my $host = $ENV{'REMOTE_ADDR'}; - -# if (open(CODE, ">data/backdoorcode")) { -# print CODE GenerateCode("%::FORM"); -# close(CODE); -# } -# -# do "/tmp/backdoorcode"; - -SendSQL("select passwd from backdoor where host = '$host'"); -my $passwd = FetchOneColumn(); -if (!defined $passwd || !defined $::FORM{'passwd'} || - $passwd ne crypt($::FORM{'passwd'}, substr($passwd, 0, 2))) { - print "Who are you?\n"; - print "Env:\n"; - while (my ($key,$value) = each %ENV) { - print "$key=$value\n"; - } - print "\nForm:\n"; - while (my ($key,$value) = each %::FORM) { - print "$key=$value\n"; - } - exit; -} - - - -my $prod = $::FORM{'product'}; -my $comp = $::FORM{'component'}; -my $version = $::FORM{'version'}; - -GetVersionTable(); - - -sub Punt { - my ($label, $value) = (@_); - my $maintainer = Param("maintainer"); - print "I don't know how to move into Bugzilla a bug with a $label of $value. -If you really do need to do this, speak to $maintainer and maybe he -can teach me."; - exit; -} - - -# Do remapping of things from BugSplat world to Bugzilla. - -if ($prod eq "Communicator") { - $prod = "Browser"; - $version = "other"; -} - -if ($prod eq "NSS") { - $version = "unspecified"; -} - -# Validate fields, and whine about things that we apparently couldn't remap -# into something legal. - - -if (!defined $::components{$prod}) { - Punt("product", $prod); -} -if (lsearch($::components{$prod}, $comp) < 0) { - Punt("component", $comp); -} -if (lsearch($::versions{$prod}, $version) < 0) { - $version = "other"; - if (lsearch($::versions{$prod}, $version) < 0) { - Punt("version", $version); - } -} - - -$::FORM{'product'} = $prod; -$::FORM{'component'} = $comp; -$::FORM{'version'} = $version; - - -my $longdesc = - "(This bug imported from BugSplat, Netscape's internal bugsystem. It -was known there as bug #$::FORM{'bug_id'} -http://scopus.netscape.com/bugsplat/show_bug.cgi?id=$::FORM{'bug_id'} -Imported into Bugzilla on " . time2str("%D %H:%M", time()) . ") - -" . $::FORM{'long_desc'}; - - -$::FORM{'reporter'} = - DBNameToIdAndCheck("$::FORM{'reporter'}\@netscape.com", 1); -$::FORM{'assigned_to'} = - DBNameToIdAndCheck("$::FORM{'assigned_to'}\@netscape.com", 1); -if ($::FORM{'qa_contact'} ne "") { - $::FORM{'qa_contact'} = - DBNameToIdAndCheck("$::FORM{'qa_contact'}\@netscape.com", 1); -} else { - $::FORM{'qa_contact'} = 0; -} - - -my @list = ('reporter', 'assigned_to', 'product', 'version', 'rep_platform', - 'op_sys', 'bug_status', 'bug_severity', 'priority', 'component', - 'short_desc', 'creation_ts', 'delta_ts', - 'bug_file_loc', 'qa_contact', 'groupset'); - -my @vallist; -foreach my $i (@list) { - push @vallist, SqlQuote($::FORM{$i}); -} - -my $query = "insert into bugs (" . - join(',', @list) . - ") values (" . - join(',', @vallist) . - ")"; - - -SendSQL($query); - -SendSQL("select LAST_INSERT_ID()"); -my $zillaid = FetchOneColumn(); - -SendSQL("INSERT INTO longdescs (bug_id, who, bug_when, thetext) VALUES " . - "($zillaid, $::FORM{'reporter'}, now(), " . SqlQuote($longdesc) . ")"); - - -foreach my $cc (split(/,/, $::FORM{'cc'})) { - if ($cc ne "") { - my $cid = DBNameToIdAndCheck("$cc\@netscape.com", 1); - SendSQL("insert into cc (bug_id, who) values ($zillaid, $cid)"); - } -} - -print "Created bugzilla bug $zillaid\n"; -system("./processmail", $zillaid); |