From 811ce266630864719df94f757cde407c2b0cdd7d Mon Sep 17 00:00:00 2001 From: "dane dane@31f1291d-b8d6-0310-a050-a5561fc1590b" Date: Sun, 28 Mar 2004 23:00:59 +0000 Subject: BUILD : 1.6.0 (4) BUGS : none NOTES : File cleanup and new AnopeManager script (bin/am) to work with Anope source control. Version schema change with no impact on cpp directives. git-svn-id: svn://svn.anope.org/anope/trunk@4 31f1291d-b8d6-0310-a050-a5561fc1590b git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2 5417fbe8-f217-4b02-8779-1006273d7864 --- .indent.pro | 1 - actions.c | 2 +- bin/am | 421 ++++++++++++++++++++++ bin/checklang | 16 - bin/fixlang | 17 - bin/getanope | 42 --- bin/langtool | 239 +++++++++++++ bin/langtool.pl | 239 ------------- bin/makepatch | 83 ----- bin/putanope | 104 ------ botserv.c | 2 +- channels.c | 2 +- chanserv.c | 2 +- commands.c | 2 +- compat.c | 2 +- config.c | 2 +- converter.c | 2 +- datafiles.c | 2 +- encrypt.c | 2 +- helpserv.c | 2 +- hostserv.c | 2 +- init.c | 2 +- lang/fixlang.pl | 118 ------- lang/obs.pl | 129 ------- language.c | 2 +- list.c | 2 +- log.c | 2 +- mail.c | 2 +- main.c | 2 +- memory.c | 2 +- memoserv.c | 2 +- messages.c | 2 +- misc.c | 2 +- modules.c | 2 +- mysql.c | 2 +- news.c | 2 +- nickserv.c | 2 +- operserv.c | 2 +- process.c | 2 +- protocol.c | 2 +- proxy.c | 2 +- rdb.c | 2 +- send.c | 2 +- sessions.c | 2 +- slist.c | 2 +- sockutil.c | 2 +- threads.c | 2 +- timeout.c | 2 +- users.c | 2 +- version.log | 1048 +------------------------------------------------------ version.sh | 11 +- vsnprintf.c | 2 +- 52 files changed, 710 insertions(+), 1836 deletions(-) delete mode 100644 .indent.pro create mode 100755 bin/am delete mode 100755 bin/checklang delete mode 100755 bin/fixlang delete mode 100755 bin/getanope create mode 100755 bin/langtool delete mode 100755 bin/langtool.pl delete mode 100755 bin/makepatch delete mode 100755 bin/putanope delete mode 100755 lang/fixlang.pl delete mode 100755 lang/obs.pl diff --git a/.indent.pro b/.indent.pro deleted file mode 100644 index a60379ba5..000000000 --- a/.indent.pro +++ /dev/null @@ -1 +0,0 @@ --kr -nut diff --git a/actions.c b/actions.c index b24c86ae4..ff164fe69 100644 --- a/actions.c +++ b/actions.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: actions.c,v 1.6 2003/07/20 01:15:49 dane Exp $ + * $Id$ * */ diff --git a/bin/am b/bin/am new file mode 100755 index 000000000..b63f185ce --- /dev/null +++ b/bin/am @@ -0,0 +1,421 @@ +#!/usr/bin/env perl + +# ==================================================================== +# anomgr: Anope Manager. Used to manage anope revision on SubVersion. +# +# For usage, see the usage subroutine or run the script with no +# command line arguments. +# +# $HeadURL: $ +# $LastChangedDate: $ +# $LastChangedBy: $ +# $LastChangedRevision: $ +# +# ==================================================================== +require 5.6.0; +use strict; +use Getopt::Std; +use Net::FTP; +use Cwd; + +###################################################################### +# Configuration section. +my $myver="1.0"; +my $svnrev="http://www.zero.org/anosvn.php"; +my $fhint="version.log"; + +# Default values, change or use environment variables instead. +my $copy="anope"; +my $svnpath="/usr/bin"; +my $svnroot="svn://zero.org/repos/$copy"; +my $editor="/usr/bin/vi"; + +# Environment variables SVNBINDIR and SVNROOT override the above +# hardcoded values. +$svnpath="$ENV{SVNBINDIR}" if ($ENV{SVNBINDIR}); +$svnroot="$ENV{SVNROOT}" if ($ENV{SVNROOT}); +$editor="$ENV{EDITOR}" if ($ENV{EDITOR}); + +# Svnlook path. +my $svnlook = "$svnpath/svnlook"; + +# Svn path. +my $svn = "$svnpath/svn"; + +# wget path. Need to change to a perl module instead... +my $wget = "$svnpath/wget"; + +my ( + $rev, + $branch, + $tag, + $ftp, + $dst, + $ver_major, + $ver_minor, + $ver_patch, + $ver_build, + $ver_revision, + $ver_comment, + $svn_comment, + $cver, + $nver, + $ctrlfile, + $tmpfile, + @source, + %opt +); + +{ + my $ok = 1; + foreach my $program ($svnlook, $svn, $editor) + { + if (-e $program) + { + unless (-x $program) + { + warn "$0: required program `$program' is not executable, ", + "edit $0.\n"; + $ok = 0; + } + } + else + { + warn "$0: required program `$program' does not exist, edit $0.\n"; + $ok = 0; + } + } + exit 1 unless $ok; +} + +sub usage() +{ + # More features to add: + # --diff N:M to produce a diff between revisions + # --bugs CLI method to add bug number to the commit message + # --mesg CLI methos to add the commit message + # --create-branch to create a branch + # --create-tag to create a tag + # --switch to switch between branches/tags + print "Usage: $0 <-g | -p | -f> [-r revision | -b branch | -t tag] \n"; + print " Operations:\n"; + print " -g Get Operation\n"; + print " -p Put Operation\n"; + print " -f[tar|diff] FTP Operation, retrieve latest tar or diff\n"; + print " Selector:\n"; + print " -r revision Retrieve by revision number\n"; + print " -b branch Retrieve by branch name\n"; + print " -t tag Retrieve by tag name\n"; + print " Destination:\n"; + print " The working copy to perform the operation in or to. The script will \n"; + print " try to guess where that is, unless you provide a specific path.\n"; + exit; +} + +sub banner() { + + print "Anope Source Managemnt Utility - Version $myver\n\n"; + +} + +sub getans { + my $ans; + while (! (($ans =~ /y/) || ($ans =~ /n/))) { + print "*** Ready to continue? (y/n): "; + $ans = ; + chomp($ans); + $ans = lc($ans); + # $ans = &getans(); + } + + # return $ans; + return ($ans eq "y") ? 1 : 0 +} + +sub find_conflict() { + + my $filename=shift; + my $retval=0; + open (IN2, "$filename") || die "Can't open $filename\n"; + while () { + if (/^<<<<<<new("ftp.zero.org"); + $ftpc->login("ftp","-anonymou@"); + $ftpc->cwd("/incoming"); + + if ( lc($ftp) eq "tar" ) { + print "Retrieving latest tar ball...\n"; + $ftpc->get("anope.tgz"); + } elsif ( lc($ftp) eq "diff" ) { + print "Retrieving latest patch file...\n"; + $ftpc->get("anope.diff"); + } else { + print "Unknown type $ftp, aborting...\n"; + } + $ftpc->quit(); +} + +sub do_get() { + + my $options = "" ; # Options to be passed to the svn command + my $selector = "" ; # Selector to be passed to the svn command + + if ($rev) { + $options .= "-r $rev"; + $selector = "trunk"; + $copy = $copy . "-$rev"; + } elsif ($tag) { + $selector = "tags/$tag"; + $copy = $copy . "-$tag"; + } elsif ($branch) { + $selector = "branches/$branch"; + $copy = $copy . "-$branch"; + } else { + $selector = "trunk"; + } + + if ($dst eq undef) { + my $cwd = &Cwd::cwd(); + if (-f "$cwd/$fhint") { + system("$svn update $options $cwd"); + } elsif (-f "$cwd/$copy/$fhint") { + system("$svn update $options $cwd/$copy"); + } else { + system("$svn checkout $svnroot/$selector $options $cwd/$copy"); + } + } else { + $dst = &Cwd::cwd() if ($dst eq "\.") ; + if (-f "$dst/$fhint") { + system("$svn update $options $dst"); + } else { + system("$svn checkout $svnroot/$selector $options $dst"); + } + } +} + +sub do_put() { + + if ($dst eq undef) { + my $cwd = &Cwd::cwd(); + if (-f "$cwd/$fhint") { + $dst = "$cwd"; + } elsif (-f "$cwd/$copy/$fhint") { + $dst .= "$cwd/$copy"; + } else { + print "Error: Unable to determine your working copy location.\n"; + exit; + } + } else { + $dst = &Cwd::cwd() if ($dst eq "\.") ; + if (! -f "$dst/$fhint") { + print "Error: Unable to determine your working copy location.\n"; + exit; + } + } + + # Check to see if we need to update our working copy first. + my $nupdate; + open (IN, "$svn status --show-updates --verbose $dst|"); + while () { + if (/\*/) { + $nupdate .= "$_"; + } + } + close(IN); + + if ($nupdate ne undef) { + print "*** Warning: There are files modified in the repository that need\n"; + print "*** to be merged back to your working copy before the commit can\n"; + print "*** take place. These files are:\n"; + print $nupdate; + print "Please use: $0 -g $dst\n"; + exit; + } + + # Get a prelim diff of the changes... + my $dcount=0; + my $conflict; + # open (IN, "$svn diff $dst|"); + open (IN, "$svn status $dst|"); + while () { + if (!/^\?/) { + $dcount++; + } + + if (/^C/) { + $_ =~ s/^C\s+//; + chomp($_); + # I don't want to use grep. But my find_conflict sub + # does not seem to work :( Too bad + if (`grep "^<<<<<<<" $_`) { + $conflict .= "$_\n" ; + } else { + system("$svn resolved $_"); + } + } + } + close(IN); + + if ($dcount == 0) { + print "*** Warning: There are no modified files to be commited. Are you\n"; + print "*** sure you are in the right working copy? Verify changes with:\n"; + print "*** $svn diff $dst\n"; + exit; + } + + if ($conflict ne undef) { + print "*** Warning: There are merge conflicts to be resolved! Please take\n"; + print "*** a look at the following files and resolve them manually:\n\n"; + print "$conflict\n"; + exit; + } + + $ctrlfile = "$dst/$fhint"; + # Grab the current revision number. Clunky way, I know! + $ver_revision=`$wget -qO - $svnrev`; + chomp($ver_revision); + + unless ($ver_revision =~ /^\d+/ and $ver_revision > 0) + { + print "*** Error: Got bogus result $ver_revision from $svnrev.\n"; + exit; + } + + $ver_revision++; + open (REV, "$ctrlfile") || die "Can't open $ctrlfile\n"; + while () { + push (@source, $_); + $ver_major = $_ if (/VERSION_MAJOR/); + $ver_minor = $_ if (/VERSION_MINOR/); + $ver_patch = $_ if (/VERSION_PATCH/); + $ver_build = $_ if (/VERSION_BUILD/); + } + close(REV); + + my $junk; + ($junk, $ver_major) = split('"', $ver_major); + ($junk, $ver_minor) = split('"', $ver_minor); + ($junk, $ver_patch) = split('"', $ver_patch); + ($junk, $ver_build) = split('"', $ver_build); + + $cver = "$ver_major.$ver_minor.$ver_patch ($ver_build)"; + $nver = "$ver_major.$ver_minor.$ver_patch ($ver_revision)"; + + # Greet the developer + banner(); + print "*** Repository : $svnroot \n"; + print "*** Working copy : $dst \n" ; + print "*** Current ver. : $cver \n"; + print "*** Updated ver. : $nver \n"; + print "*** Files Changed: $dcount (before indent and version change)\n"; + die ("Aborting...\n") unless &getans(); + + # Need to add a clause for -c "comment" and -b "buglist" + + # Get developers input for commit + $tmpfile=".commit"; + open (OUT, ">$tmpfile") or die ("*** Error! Unable to open $tmpfile file\n"); + print OUT "# Anope commit utility. Please use this template for your commits. +# Add Bugzilla bugs separated by spaces. The note part is free form. +BUILD : $nver +BUGS : +NOTES : "; + close(OUT); + + system("$editor $tmpfile"); + + my $tmp_comment=""; + $ver_comment="#\n"; + $svn_comment=""; + open (IN, "$tmpfile") or die ("*** Error! Unable to open $tmpfile file\n"); + while () { + if ( !/^#/) { + $tmp_comment.="$_"; + chomp($_); + $_ =~ s/\t/ /g; + $ver_comment.="# $_\n"; + $svn_comment.="$_ "; + } + } + close(IN); + + $svn_comment =~ s/\s\s+/ /g; + # Confirm the commit one last time... + print "*** Ready to commit, please verify:\n"; + print "\n$tmp_comment\n"; + + die ("Aborting...\n") unless &getans(); + + print "*** Running Indent...\n"; + system("indent -kr -nut *.c"); + system("rm -f *~"); + + print "*** Bumping the revision number...\n"; + # Re-write the control file + open(OUT, ">$ctrlfile") or die ("*** Error! Unable to open $ctrlfile ... aborting"); + foreach (@source) { + if (/^VERSION_BUILD/) { + $_ =~ s/\"\d+\"/\"$ver_revision\"/; + } elsif (/# \$Log\$/) { + $_ .= "$ver_comment"; + } + print OUT $_; + } + close(OUT); + + print "*** Starting the upload...\n\n"; + my $rval=system("$svn commit $dst --message '$svn_comment'"); + if ( $rval ) { + print "*** Error: Unable to complete commit. Rolling back....\n\n"; + system("$svn revert $ctrlfile"); + } + +} + +{ + usage() if (! @ARGV); + + my $opt = 'hgpf:r:b:t:'; + getopts ("$opt", \%opt) or usage(); + usage() if $opt{h}; + + usage() if ($opt{g} && $opt{p}); + usage() if ($opt{g} && $opt{f}); + usage() if ($opt{p} && $opt{f}); + usage() if ($opt{r} && $opt{b}); + usage() if ($opt{r} && $opt{t}); + usage() if ($opt{b} && $opt{t}); + + $rev = $opt{r} ; + $branch = $opt{b} ; + $tag = $opt{t} ; + $ftp = $opt{f} ; + $dst = shift; + + if ($rev ne undef) { + unless ($rev =~ /^\d+/ and $rev > 0) + { + print "*** Error: Revision number '$rev' must be an integer > 0.\n"; + exit; + } + } + + do_ftp() if $opt{f}; + do_get() if $opt{g}; + do_put() if $opt{p}; + print "*** Done!\n"; + +} + + diff --git a/bin/checklang b/bin/checklang deleted file mode 100755 index bcabe0d88..000000000 --- a/bin/checklang +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/bash -# -# $Id: checklang,v 1.1 2003/07/16 04:34:04 dane Exp $ -# - -if [ ! -f en_us.l ]; then - echo "*** You must run this script on the lang directory." - echo "" - exit 1 -fi - -for lang in $(ls *.l) -do - echo "*** CHECKING $lang ***" - ./obs.pl $lang -done diff --git a/bin/fixlang b/bin/fixlang deleted file mode 100755 index 1a1ea875a..000000000 --- a/bin/fixlang +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash -# -# $Id: fixlang,v 1.1 2003/07/16 04:34:04 dane Exp $ -# - -if [ ! -f en_us.l ]; then - echo "*** You must run this script on the lang directory." - echo "" - exit 1 -fi - -for lang in $(ls *.l) -do - echo "*** CHECKING $lang ***" - ./fixlang.pl $lang - mv fixed.l $lang -done diff --git a/bin/getanope b/bin/getanope deleted file mode 100755 index 58f4c0dc7..000000000 --- a/bin/getanope +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash -# -# $Id: getanope,v 1.2 2003/11/24 20:23:28 dane Exp $ -# - -MODULE="anope-dev" -BRANCH="" - -if [ "$1" == "" ]; then - DST="$MODULE" -else - DST="$1" -fi - -let cnt="$(echo $CVSROOT | grep anope | wc -l)" -if [ $cnt -eq 0 ]; then - echo "*** Environment variable CVSROOT is not set. Please set it" - echo "*** if you have a developer account with write access." - echo "" - echo "*** Assuming anonymous access. If prompted for a password," - echo "*** just press RETURN to continue." - echo "" - export CVSROOT=":pserver:pubcvs@zero.org:/home/cvs/anope" - - let login="$(grep "pubcvs@zero.org" ~/.cvspass 2> /dev/null | grep anope | wc -l)" - - if [ $login -eq 0 ]; then - cvs -d$CVSROOT login - fi -fi - -echo "Checking out $MODULE" - -if [ "$BRANCH" == "" ]; then - cvs -z3 -d$CVSROOT checkout -d$DST $MODULE -else - cvs -z3 -d$CVSROOT checkout -r$BRANCH -d$DST $MODULE -fi - -echo "*** All done!" - -exit 0 diff --git a/bin/langtool b/bin/langtool new file mode 100755 index 000000000..c1072760c --- /dev/null +++ b/bin/langtool @@ -0,0 +1,239 @@ +#!/usr/bin/perl +# +# Ribosome's all in one language tool +# 1) Compares to check for missing lines +# 2) Compares to check for equal lines +# 3) Fixes (on request) missing lines +# 4) Checks for errors in lines +# 5) Checks for long lines (>60 characters) +# + +# Check to see if we have received arguments +if (!$ARGV[0]) { +print "Usage: $0 [language file]\n"; +exit; +} + +# If yes, set $sourcefile to the language filename +$testagainst = $ARGV[0]; + +# Set $sourcefile to en_us language file +$sourcefile = "en_us.l"; + +# Number of Keys in File, Number of Equal Lines, Number of Missing Lines +# Fixed Lines (optional) and Number of Format Error Lines, Number of Long Lines +my $numberlines = 0; +my $equallines = 0; +my $missinglines = 0; +my $fixedlines = 0; +my $errorline = 0; +my $longlines = 0; + +# Array to hold the lines from the source file and explosion array for long line check + +my @sourcearray; +my @explosion; + +# Create associative arrays which will contain keys and definitions +# One for the control source and one for what is being tested against + +my %sourcehash= (); +my %testhash= (); + +# Check if Files Exist + +if (! -f $sourcefile) { +print "Critical Error: The source file does not exist or is unreadable.\nNote: This tool must be run from the language directory.\n"; +exit; +} + +if (! -f $testagainst) { +print "Critical Error: The language file does not exist or is unreadable\n"; +exit; +} +########################################### +# Function to load sourcefile into memory # +########################################### + +sub load_sourcefile { + + my $_key; # This variable will hold the key + my $_def; # This variable will hold the definition + my $line; # This variable will hold the current line + + open (SOURCEFILE, "< $sourcefile"); # Open the source file + while () { # For each line the source file + $line = $_; # $line is set to the line in the source file + + # Skip comments + if (/^#/) { # This checks for # which indicates comment + next; # If detected, the next line is skipped to + } + + # Start of a key + if (/^[A-Z]/) { # Checks to see if the line is a key + chomp($line); # Removes things that shouldn't be at the end + push (@sourcearray, $line); # Puts the line into the source array + # If a key is defined, load definition into the hash + if ($_key ne undef) { # If the key is defined + $sourcehash{$_key} = $_def; # Add the definition to the associative array + } + $_key=$line; # Set the key to the line + $_def=""; # Reset the definition + next; # Move onto the next line + } + + if ($_key ne undef) { # If the key is set already + $_def.=$line; # The definition is the current line + } + + $sourcehash{$_key} = $_def; # Load the definition into the associative array + } # End of while which reads lines + + close (SOURCEFILE); # Close the source file + +} # End of load_sourcefile function + +################################################# +# Function to load testagainst file into memory # +################################################# + +sub load_testagainst { + + my $_key; # This variable will hold the key + my $_def; # This variable will hold the definition + my $line; # This variable will hold the current line + + open (TESTAGAINSTFILE, "< $testagainst"); # Open the file containing the control lines + while () { # For each line in the file + $line = $_; # $line is set to the lines value + + + # Skip comments + if (/^#/) { # This checks for # which indicates comment + next; # If detected, the next line is skipped to + } + + # Start of a key + if (/^[A-Z]/) { # Checks to see if the line is a key + chomp($line); # Removes things that shouldn't be at the end + + + if ($_key ne undef) { # If the key is defined + $testhash{$_key} = $_def; # Add the definition to the associative array + } + $_key=$line; # Set the key to the line + $_def=""; # Reset the definition + next; # Move onto the next line + } + + if ($_key ne undef) { # If the key is set already + $_def.=$line; # The definition is the current line + } + + $testhash{$_key} = $_def; # Load the definition into the associative array + } # End of while which reads lines + close (TESTAGAINSTFILE); # Close the source file + +} + + +sub get_format { # Function to get the formatting from a string + my $fmt=""; + my $str=shift; # Get the input + + while ($str =~ m/%\w/g) { + $fmt .= $&; + } + + return $fmt; # Return the formatting +} + + +load_sourcefile; # Call function to load the source file +load_testagainst; # Call function to load the test file + +if (!grep(/^LANG_NAME/,%testhash)) { +print "Critical Error: $ARGV[0] is not a valid language file!\n"; +exit; +} + +open (LOG,"> langcheck.log"); # Open logfile for writing + +foreach $sourcearray (@sourcearray) { # For each key stored in the source array + my $_key=$_; # Store key from source array in $_key + + if ((get_format($sourcehash{$sourcearray})) ne (get_format($testhash{$sourcearray}))) { + if ($sourcearray !~ STRFTIME ) { + $errorline++; + print LOG "FORMAT: $sourcearray - (expecting '".get_format($sourcehash{$sourcearray})."' and got '".get_format($testhash{$sourcearray})."')\n"; + } } + + if ($testhash{$sourcearray} eq $sourcehash{$sourcearray} ) { + # If the definitions between the source and the test are equal + $equallines++; # Number of equal lines increases + print LOG "EQUAL: $sourcearray\n"; # Line is written to logfile + } + + if (!grep(/^$sourcearray/,%testhash)) { # If the key is found in the testhash associative array + $missinglines++; # Increase missing lines + print LOG "MISSING: $sourcearray\n"; # Line is written to logfile + } + + @explosion = split(/\n/, $testhash{$sourcearray}); + foreach $explosion (@explosion) { + $explosion =~ s/\002//g; + $explosion =~ s/\037//g; + if (length($explosion) > 61) { + print LOG "LONGLINE: $sourcearray (".substr($explosion,1,30)."...)\n"; + $longlines++; + } + } + +$numberlines++; # Increase the number of lines tested by 1 +} +close (LOG); # Close the logfile + + +######################### +# Show the test results # +######################### + +print "Calculation Results:\n"; +print "----------------------------------\n"; +print "[$numberlines] line(s) were compared\n"; +print "[$equallines] line(s) were found to equal their $sourcefile counterpart(s)\n"; +print "[$missinglines] line(s) were found to be missing\n"; +print "[$longlines] line(s) were found to be long (>60 chars)\n"; +print "[$errorline] line(s) were found to have formatting errors\n"; +print "The specific details of the test have been saved in langcheck.log\n"; + +if ($missinglines) { # If missing lines exist +print "----------------------------------\n"; +print "Missing line(s) have been detected in this test, would you like to fix the file?\n"; +print "This automatically inserts values from the control file ($sourcefile) for the missing values\n"; +print "y/N? (Default: No) "; + +my $input = ; # Ask if the file should be fixed +if ((substr($input,0,1) eq "y") || (substr($input,0,1) eq "Y")) { # If Yes... + +open (FIX, ">> $testagainst"); # Open the file and append changes + +foreach $sourcearray (@sourcearray) { # For each key stored in the source array + my $_key=$_; # Store key from source array in $_key + + if (!grep(/^$sourcearray/,%testhash)) { # If the key is not found in the testhash associative array + print FIX "$sourcearray\n$sourcehash{$sourcearray}"; # Add the line(s) to the language file + $fixedlines++; # Increase the fixed line count + } +} + +close (FIX); # Close file after fixing + +print "Fixing Compete. [$fixedlines] line(s) fixed.\n"; +exit; # And Exit! +} + # Otherwise, quit without fixing +print "Exiting. The language file has NOT been fixed.\n"; + +} diff --git a/bin/langtool.pl b/bin/langtool.pl deleted file mode 100755 index c1072760c..000000000 --- a/bin/langtool.pl +++ /dev/null @@ -1,239 +0,0 @@ -#!/usr/bin/perl -# -# Ribosome's all in one language tool -# 1) Compares to check for missing lines -# 2) Compares to check for equal lines -# 3) Fixes (on request) missing lines -# 4) Checks for errors in lines -# 5) Checks for long lines (>60 characters) -# - -# Check to see if we have received arguments -if (!$ARGV[0]) { -print "Usage: $0 [language file]\n"; -exit; -} - -# If yes, set $sourcefile to the language filename -$testagainst = $ARGV[0]; - -# Set $sourcefile to en_us language file -$sourcefile = "en_us.l"; - -# Number of Keys in File, Number of Equal Lines, Number of Missing Lines -# Fixed Lines (optional) and Number of Format Error Lines, Number of Long Lines -my $numberlines = 0; -my $equallines = 0; -my $missinglines = 0; -my $fixedlines = 0; -my $errorline = 0; -my $longlines = 0; - -# Array to hold the lines from the source file and explosion array for long line check - -my @sourcearray; -my @explosion; - -# Create associative arrays which will contain keys and definitions -# One for the control source and one for what is being tested against - -my %sourcehash= (); -my %testhash= (); - -# Check if Files Exist - -if (! -f $sourcefile) { -print "Critical Error: The source file does not exist or is unreadable.\nNote: This tool must be run from the language directory.\n"; -exit; -} - -if (! -f $testagainst) { -print "Critical Error: The language file does not exist or is unreadable\n"; -exit; -} -########################################### -# Function to load sourcefile into memory # -########################################### - -sub load_sourcefile { - - my $_key; # This variable will hold the key - my $_def; # This variable will hold the definition - my $line; # This variable will hold the current line - - open (SOURCEFILE, "< $sourcefile"); # Open the source file - while () { # For each line the source file - $line = $_; # $line is set to the line in the source file - - # Skip comments - if (/^#/) { # This checks for # which indicates comment - next; # If detected, the next line is skipped to - } - - # Start of a key - if (/^[A-Z]/) { # Checks to see if the line is a key - chomp($line); # Removes things that shouldn't be at the end - push (@sourcearray, $line); # Puts the line into the source array - # If a key is defined, load definition into the hash - if ($_key ne undef) { # If the key is defined - $sourcehash{$_key} = $_def; # Add the definition to the associative array - } - $_key=$line; # Set the key to the line - $_def=""; # Reset the definition - next; # Move onto the next line - } - - if ($_key ne undef) { # If the key is set already - $_def.=$line; # The definition is the current line - } - - $sourcehash{$_key} = $_def; # Load the definition into the associative array - } # End of while which reads lines - - close (SOURCEFILE); # Close the source file - -} # End of load_sourcefile function - -################################################# -# Function to load testagainst file into memory # -################################################# - -sub load_testagainst { - - my $_key; # This variable will hold the key - my $_def; # This variable will hold the definition - my $line; # This variable will hold the current line - - open (TESTAGAINSTFILE, "< $testagainst"); # Open the file containing the control lines - while () { # For each line in the file - $line = $_; # $line is set to the lines value - - - # Skip comments - if (/^#/) { # This checks for # which indicates comment - next; # If detected, the next line is skipped to - } - - # Start of a key - if (/^[A-Z]/) { # Checks to see if the line is a key - chomp($line); # Removes things that shouldn't be at the end - - - if ($_key ne undef) { # If the key is defined - $testhash{$_key} = $_def; # Add the definition to the associative array - } - $_key=$line; # Set the key to the line - $_def=""; # Reset the definition - next; # Move onto the next line - } - - if ($_key ne undef) { # If the key is set already - $_def.=$line; # The definition is the current line - } - - $testhash{$_key} = $_def; # Load the definition into the associative array - } # End of while which reads lines - close (TESTAGAINSTFILE); # Close the source file - -} - - -sub get_format { # Function to get the formatting from a string - my $fmt=""; - my $str=shift; # Get the input - - while ($str =~ m/%\w/g) { - $fmt .= $&; - } - - return $fmt; # Return the formatting -} - - -load_sourcefile; # Call function to load the source file -load_testagainst; # Call function to load the test file - -if (!grep(/^LANG_NAME/,%testhash)) { -print "Critical Error: $ARGV[0] is not a valid language file!\n"; -exit; -} - -open (LOG,"> langcheck.log"); # Open logfile for writing - -foreach $sourcearray (@sourcearray) { # For each key stored in the source array - my $_key=$_; # Store key from source array in $_key - - if ((get_format($sourcehash{$sourcearray})) ne (get_format($testhash{$sourcearray}))) { - if ($sourcearray !~ STRFTIME ) { - $errorline++; - print LOG "FORMAT: $sourcearray - (expecting '".get_format($sourcehash{$sourcearray})."' and got '".get_format($testhash{$sourcearray})."')\n"; - } } - - if ($testhash{$sourcearray} eq $sourcehash{$sourcearray} ) { - # If the definitions between the source and the test are equal - $equallines++; # Number of equal lines increases - print LOG "EQUAL: $sourcearray\n"; # Line is written to logfile - } - - if (!grep(/^$sourcearray/,%testhash)) { # If the key is found in the testhash associative array - $missinglines++; # Increase missing lines - print LOG "MISSING: $sourcearray\n"; # Line is written to logfile - } - - @explosion = split(/\n/, $testhash{$sourcearray}); - foreach $explosion (@explosion) { - $explosion =~ s/\002//g; - $explosion =~ s/\037//g; - if (length($explosion) > 61) { - print LOG "LONGLINE: $sourcearray (".substr($explosion,1,30)."...)\n"; - $longlines++; - } - } - -$numberlines++; # Increase the number of lines tested by 1 -} -close (LOG); # Close the logfile - - -######################### -# Show the test results # -######################### - -print "Calculation Results:\n"; -print "----------------------------------\n"; -print "[$numberlines] line(s) were compared\n"; -print "[$equallines] line(s) were found to equal their $sourcefile counterpart(s)\n"; -print "[$missinglines] line(s) were found to be missing\n"; -print "[$longlines] line(s) were found to be long (>60 chars)\n"; -print "[$errorline] line(s) were found to have formatting errors\n"; -print "The specific details of the test have been saved in langcheck.log\n"; - -if ($missinglines) { # If missing lines exist -print "----------------------------------\n"; -print "Missing line(s) have been detected in this test, would you like to fix the file?\n"; -print "This automatically inserts values from the control file ($sourcefile) for the missing values\n"; -print "y/N? (Default: No) "; - -my $input = ; # Ask if the file should be fixed -if ((substr($input,0,1) eq "y") || (substr($input,0,1) eq "Y")) { # If Yes... - -open (FIX, ">> $testagainst"); # Open the file and append changes - -foreach $sourcearray (@sourcearray) { # For each key stored in the source array - my $_key=$_; # Store key from source array in $_key - - if (!grep(/^$sourcearray/,%testhash)) { # If the key is not found in the testhash associative array - print FIX "$sourcearray\n$sourcehash{$sourcearray}"; # Add the line(s) to the language file - $fixedlines++; # Increase the fixed line count - } -} - -close (FIX); # Close file after fixing - -print "Fixing Compete. [$fixedlines] line(s) fixed.\n"; -exit; # And Exit! -} - # Otherwise, quit without fixing -print "Exiting. The language file has NOT been fixed.\n"; - -} diff --git a/bin/makepatch b/bin/makepatch deleted file mode 100755 index ed01d1b1b..000000000 --- a/bin/makepatch +++ /dev/null @@ -1,83 +0,0 @@ -#!/bin/bash -# Daniel Engel (dane@zero.org) -# -# Creates a patch from any version of Anope to another within the -# same CVS module (in this case, anope-rel). Usage: -# -# ./anope-mkpatch 1.5.1 1.5.5 -# -# The earliest version you can use is 1.5.1 (the first CVS tag) -# -# Feel free to improve this script at will. -# -CVSROOT=":pserver:pubcvs@zero.org:/home/cvs/anope" -MODULE="anope-dev" -OLD="$1" -NEW="$2" -NAME="$1-$2.diff" - -echo "*** Note: This script is able to create patches from one version of 1.5.x" -echo "*** to anoter. The earliest valid version is 1.5.1, and you can only make" -echo "*** a patch between two released versions (i.e. no -rnum versions)" -echo "" - -if [[ $OLD == "" ]]; then - echo "*** Usage: $0 [OLD] [NEW]" - exit 0 -fi - - -if [[ $NEW == "" ]]; then - echo "*** Usage: $0 [OLD] [NEW]" - exit 0 -fi - -OLD="anope-$OLD" -NEW="anope-$NEW" - -if [[ -d $OLD ]]; then - echo "*** Directory $OLD already exists... aborting." - exit 0 -fi - -if [[ -d $NEW ]]; then - echo "*** Directory $OLD already exists... aborting." - exit 0 -fi - -echo "*** Issuing the CVS login, when prompted for a password, just press RETURN..." -cvs -d $CVSROOT login - -if [[ $? -ne 0 ]]; then - echo "*** ERROR: CVS login failed... aborting." - exit 0 -fi - -TOLD="$(echo $OLD | sed 's/\./_/g')" -TNEW="$(echo $NEW | sed 's/\./_/g')" - -echo "*** Cheking out $MODULE ($TOLD)" -cvs -d $CVSROOT checkout -r $TOLD -d $OLD $MODULE > /dev/null 2>&1 -if [[ $? -ne 0 ]]; then - echo "*** ERROR: Unable to checkout $MODULE ($TNEW)... aborting." - exit 0 -fi - -echo "*** Cheking out $MODULE ($TNEW)" -cvs -d $CVSROOT checkout -r $TNEW -d $NEW $MODULE > /dev/null 2>&1 -if [[ $? -ne 0 ]]; then - echo "*** ERROR: Unable to checkout $MODULE ($TNEW)... aborting." - exit 0 -fi - -# I wish i could use cvsrmadm here, but not everybody has it :( -echo "*** Removing CVS control files" -find $OLD -name CVS -exec rm -rf {} \; > /dev/null 2>&1 -find $NEW -name CVS -exec rm -rf {} \; > /dev/null 2>&1 - -echo "*** Creating the patch..." -diff -urN $OLD $NEW > $NAME - -echo "*** Done! The patch is $NAME"; -echo "*** You might want to clean things up with:" -echo "*** rm -rf $OLD $NEW" diff --git a/bin/putanope b/bin/putanope deleted file mode 100755 index d07017dc3..000000000 --- a/bin/putanope +++ /dev/null @@ -1,104 +0,0 @@ -#!/bin/sh -# -# $Id: putanope,v 1.14 2003/12/02 23:02:28 joris Exp $ -# - -CTRL="version.log" -MODULE="anope-dev" -TMP="/tmp/putanope.$$" -TMP2="/tmp/putanope2.$$" - -# We need an editor for the log entry -if [ "$EDITOR" == "" ]; then - EDITOR="vi" -fi - -# Use default target, or provided? -if [ "$1" == "" ]; then - DST="$MODULE" -else - DST="$1" -fi - -# Find where to run the rest of the script from. -if [ ! -d $DST ]; then - cd .. - if [ ! -d $DST ]; then - cd .. - if [ ! -d $DST ]; then - echo "*** Directory $DST does not exist, what's going on?" - echo "" - exit 1 - fi - fi -fi - -# CVSROOT dosnt need to be set, just read it form the CVS file :-) -CVSROOT=`cat ${DST}/CVS/Root` - -cd $DST - -# source control file -. $CTRL - -# Version arithmetics -CVER="${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}.${VERSION_BUILD}" -let minor="$(echo $VERSION_BUILD)" -let new="$minor + 1" -NVER="${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}.${new}" - -# Greet the developer -echo "" -echo "*** Using CVSROOT: $CVSROOT" -echo "*** Using module : $MODULE" -echo "*** Current ver : $CVER" -echo "*** Updated ver : $NVER" -echo "" -echo "*** Make sure you have updated Changes, Changes.conf, and" -echo "*** Changes.lang acordingly before you proceed." -echo -n "*** Ready to continue? (RETURN if so, CTRL-C otherwise) " -read FOO - -cat > $TMP2 < $TMP -cat $TMP > $CTRL - -TS="$(date '+%F %R')" -grep -v "^#" $TMP2 > $TMP -echo "VTAG : cvs checkout -D \"$TS\" $MODULE" >> $TMP - -cd .. - -cvs -d$CVSROOT commit -F $TMP $DST - -rm -f $TMP $TMP2 - -echo "*** Done!" - -exit 0 diff --git a/botserv.c b/botserv.c index ddbfdf856..d0a64efcb 100644 --- a/botserv.c +++ b/botserv.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: botserv.c,v 1.46 2004/03/14 14:15:34 certus Exp $ + * $Id$ * */ diff --git a/channels.c b/channels.c index 485e9a020..0a26e3428 100644 --- a/channels.c +++ b/channels.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: channels.c,v 1.36 2004/03/11 16:50:01 rob Exp $ + * $Id$ * */ diff --git a/chanserv.c b/chanserv.c index 796a7817a..d3fe142a9 100644 --- a/chanserv.c +++ b/chanserv.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: chanserv.c,v 1.55 2004/03/17 20:08:49 ribosome Exp $ + * $Id$ * */ diff --git a/commands.c b/commands.c index 0e45603eb..9df040212 100644 --- a/commands.c +++ b/commands.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: commands.c,v 1.13 2003/09/22 21:40:23 rob Exp $ + * $Id$ * */ diff --git a/compat.c b/compat.c index 33b3f1480..15e99529b 100644 --- a/compat.c +++ b/compat.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: compat.c,v 1.5 2003/07/20 01:15:49 dane Exp $ + * $Id$ * */ diff --git a/config.c b/config.c index e2e34a33e..000266707 100644 --- a/config.c +++ b/config.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: config.c,v 1.56 2004/03/21 14:08:53 rob Exp $ + * $Id$ * */ diff --git a/converter.c b/converter.c index 31c0cb880..1db434a6c 100644 --- a/converter.c +++ b/converter.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: converter.c,v 1.5 2003/07/20 01:15:49 dane Exp $ + * $Id$ * */ diff --git a/datafiles.c b/datafiles.c index 6d4d4e4c2..cbd031cd8 100644 --- a/datafiles.c +++ b/datafiles.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: datafiles.c,v 1.8 2003/07/20 01:15:49 dane Exp $ + * $Id$ * */ diff --git a/encrypt.c b/encrypt.c index eaa8cc74c..39d6c6588 100644 --- a/encrypt.c +++ b/encrypt.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: encrypt.c,v 1.5 2003/07/20 01:15:49 dane Exp $ + * $Id$ * */ diff --git a/helpserv.c b/helpserv.c index d3f49ca5c..dfded27fc 100644 --- a/helpserv.c +++ b/helpserv.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: helpserv.c,v 1.2 2004/01/18 04:33:25 dane Exp $ + * $Id$ * */ diff --git a/hostserv.c b/hostserv.c index 71a29cbc9..cea1fe689 100644 --- a/hostserv.c +++ b/hostserv.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: hostserv.c,v 1.53 2004/02/15 22:40:46 dane Exp $ + * $Id$ * */ diff --git a/init.c b/init.c index 58110ac8a..c7df5e25a 100644 --- a/init.c +++ b/init.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: init.c,v 1.40 2004/03/13 13:55:59 dane Exp $ + * $Id$ * */ diff --git a/lang/fixlang.pl b/lang/fixlang.pl deleted file mode 100755 index bd0f175bf..000000000 --- a/lang/fixlang.pl +++ /dev/null @@ -1,118 +0,0 @@ -#!/usr/bin/perl -# -# Tries to fix a language file using the reference -# language (en_us), and injecting all new strings -# (in english) into the newly generated fixed.pl -# -# check the result with obs.pl then copy on top -# of the source language file. -# -my $srcfile = $ARGV[0]; -my $dstfile = "fixed.l"; -my $engfile = "en_us.l"; -my %is_there= (); -my $pos=0; -my $wc=0; - -my @defs; -my @efile; - -sub error { - - my $msg = shift ; - print "*** Error: $msg \n"; - exit ; -} - -sub not_del { - $line = shift; - if ($is_there{$line}) { - return 1; - } else { - return 0; - } - -} - -# Could not think of a worse of doing this... -sub new_def { - my $ndef; - my $start=0; - - $def = shift; - for (@efile) { - my $line = $_; - chomp $line; - - if (/^[A-Z]/) { - $start=0; - } - - if ($start) { - $ndef.=$_; - } - - if ($line eq $def) { - $ndef=$_; - $start=1; - } - - } - return $ndef; -} - -error("Usage $0 [lang.l]") unless ($srcfile); -error("Can't find language file: $srcfile") if (! -f $srcfile); -error("Can't find language file: $engfile") if (! -f $engfile); - -open (EFILE, "< $engfile"); -while () { - my $line = $_; - push(@efile, $line); - chomp $line; - if (/^[A-Z]/) { - $wc = push (@defs, $line); - } -} -close(EFILE); - -# Need to load entiry text into hash... -for (@defs) { - $is_there{$_} = 1; -} - -open (SFILE, "< $srcfile"); -open (DFILE, "> $dstfile"); -while () { - my $line = $_; - chomp $line; - if (/^[A-Z]/) { - - $del = 0; - if (not_del($line)) { - while ($line ne $defs[$pos]) { - print "ADD: $defs[$pos]\n"; - # Need to reference the hash... - my $ndef = new_def($defs[$pos]); - print DFILE $ndef; - $pos++; - } - $pos++; - } else { - $del = 1; - print "DEL: $line\n"; - } - } - - if (! $del) { - print DFILE "$line\n"; - } -} - -for($pos ; $pos < $wc; $pos++) { - print "ADD: $defs[$pos]\n"; - my $ndef = new_def($defs[$pos]); - print DFILE $ndef; -} -close(SFILE); -close(DFILE); diff --git a/lang/obs.pl b/lang/obs.pl deleted file mode 100755 index 305351648..000000000 --- a/lang/obs.pl +++ /dev/null @@ -1,129 +0,0 @@ -#!/usr/bin/perl -# -# Checks a language file against the reference language (en_us), and -# finds #define string diferences -# -my $srcfile = $ARGV[0]; -my $engfile = "en_us.l"; -my %is_there= (); -my $pos=0; -my $wc=0; -my $edef=""; -my $sdef=""; - -my @efile; -my @sfile; -my @defs; - -sub error { - - my $msg = shift ; - print "*** Error: $msg \n"; - exit ; -} - -sub not_del { - $line = shift; - if ($is_there{$line}) { - return 1; - } else { - return 0; - } - -} - -sub get_format { - my $fmt=""; - - my $str=shift; - - while ($str =~ m/%\w/g) { - $fmt .= $&; - } - - return $fmt; -} - -# Could not think of a worse of doing this... -sub get_def { - my $ndef; - my $start=0; - my $found=0; - - $buf = shift; - $def = shift; - for (@$buf) { - my $line = $_; - chomp $line; - - if (/^[A-Z]/) { - $start=0; - last if $found; - } - - if ($start) { - $found=1; - $ndef.=$_; - } - - if ($line eq $def) { - $start=1; - } - - } - return $ndef; -} - -error("Usage $0 [lang.l]") unless ($srcfile); -error("Can't find language file: $srcfile") if (! -f $srcfile); -error("Can't find language file: $engfile") if (! -f $engfile); - -open (EFILE, "< $engfile"); -while () { - my $line = $_; - push(@efile, $line); - chomp $line; - if (/^[A-Z]/) { - $wc = push (@defs, $line); - $is_there{$line} = 1; - } -} -close(EFILE); - -open (SFILE, "< $srcfile"); -while () { - push(@sfile, $_); -} -close(SFILE); - -#for (@defs) { -# $is_there{$_} = 1; -#} - -for (@sfile) { - my $line = $_; - chomp $line; - if (/^[A-Z]/) { - if (not_del($line)) { - while ($line ne $defs[$pos]) { - print "ADD: $defs[$pos]\n"; - $pos++; - } - if (! /^STRFTIME/ ) { - $edef = get_format(get_def(\@efile, $line)) ; - $sdef = get_format(get_def(\@sfile, $line)) ; - if ( $edef ne $sdef ) { - print "FORMAT: $line (expecting '$edef' and got '$sdef')\n"; - } - } - $pos++; - } else { - print "DEL: $line\n"; - } - } -} - -for($pos ; $pos < $wc; $pos++) { - print "ADD: $defs[$pos]\n"; -} - diff --git a/language.c b/language.c index b73e29f27..ce49e4be4 100644 --- a/language.c +++ b/language.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: language.c,v 1.9 2003/12/12 16:04:57 dane Exp $ + * $Id$ * */ diff --git a/list.c b/list.c index 0c3cc690f..da73f1ab7 100644 --- a/list.c +++ b/list.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: list.c,v 1.5 2003/07/20 01:15:49 dane Exp $ + * $Id$ * */ diff --git a/log.c b/log.c index c215e2ad2..a1b3c7622 100644 --- a/log.c +++ b/log.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: log.c,v 1.8 2003/07/20 01:15:49 dane Exp $ + * $Id$ * */ diff --git a/mail.c b/mail.c index 342d9b0ad..8ed48169b 100644 --- a/mail.c +++ b/mail.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: mail.c,v 1.9 2003/09/04 18:55:34 rob Exp $ + * $Id$ * */ diff --git a/main.c b/main.c index 8c104ca0b..516add1da 100644 --- a/main.c +++ b/main.c @@ -22,7 +22,7 @@ * along with this program (see the file COPYING); if not, write to the * Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: main.c,v 1.23 2004/03/13 13:55:59 dane Exp $ + * $Id$ * */ diff --git a/memory.c b/memory.c index 5bfcf395b..25c9bd328 100644 --- a/memory.c +++ b/memory.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: memory.c,v 1.7 2003/07/20 01:15:49 dane Exp $ + * $Id$ * */ diff --git a/memoserv.c b/memoserv.c index 94f096df5..e85700092 100644 --- a/memoserv.c +++ b/memoserv.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: memoserv.c,v 1.30 2004/03/22 18:52:47 dane Exp $ + * $Id$ * */ diff --git a/messages.c b/messages.c index 1123df345..1a1da4d75 100644 --- a/messages.c +++ b/messages.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: messages.c,v 1.31 2004/02/15 18:34:40 dane Exp $ + * $Id$ * */ diff --git a/misc.c b/misc.c index 02ab31aba..5bc22650e 100644 --- a/misc.c +++ b/misc.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: misc.c,v 1.14 2004/01/31 18:57:18 dane Exp $ + * $Id$ * */ diff --git a/modules.c b/modules.c index 99654792b..f6f47f216 100644 --- a/modules.c +++ b/modules.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: modules.c,v 1.37 2004/03/11 16:50:01 rob Exp $ + * $Id$ * */ #include "modules.h" diff --git a/mysql.c b/mysql.c index 3ca449c5f..e25f3aace 100644 --- a/mysql.c +++ b/mysql.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: mysql.c,v 1.33 2004/03/14 13:02:53 rob Exp $ + * $Id$ * */ #include "services.h" diff --git a/news.c b/news.c index 4255e5d7d..2c9d2c6d3 100644 --- a/news.c +++ b/news.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: news.c,v 1.11 2004/01/31 17:03:52 dane Exp $ + * $Id$ * */ diff --git a/nickserv.c b/nickserv.c index f6365ab93..f71aeb37b 100644 --- a/nickserv.c +++ b/nickserv.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: nickserv.c,v 1.93 2004/03/13 03:25:59 dane Exp $ + * $Id$ * */ diff --git a/operserv.c b/operserv.c index c93a94368..e9d4d294e 100644 --- a/operserv.c +++ b/operserv.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: operserv.c,v 1.89 2004/03/14 22:44:47 dane Exp $ + * $Id$ * */ diff --git a/process.c b/process.c index 84388d813..1f4290869 100644 --- a/process.c +++ b/process.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: process.c,v 1.18 2004/01/31 18:57:18 dane Exp $ + * $Id$ * */ diff --git a/protocol.c b/protocol.c index 58bdb21f1..0a6107d8c 100644 --- a/protocol.c +++ b/protocol.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: protocol.c,v 1.11 2003/07/20 01:15:50 dane Exp $ + * $Id$ * */ diff --git a/proxy.c b/proxy.c index e9c88238f..b2d8a915a 100644 --- a/proxy.c +++ b/proxy.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: proxy.c,v 1.11 2004/02/14 21:22:55 dane Exp $ + * $Id$ * */ diff --git a/rdb.c b/rdb.c index 6a2eda29f..1ed2d21ad 100644 --- a/rdb.c +++ b/rdb.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: rdb.c,v 1.11 2003/08/04 01:09:43 dane Exp $ + * $Id$ * */ #include "services.h" diff --git a/send.c b/send.c index 778b8662d..c841020a2 100644 --- a/send.c +++ b/send.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: send.c,v 1.11 2004/01/18 05:10:47 dane Exp $ + * $Id$ * */ diff --git a/sessions.c b/sessions.c index dfa0f3773..876bf5bcd 100644 --- a/sessions.c +++ b/sessions.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: sessions.c,v 1.10 2003/07/20 01:15:50 dane Exp $ + * $Id$ * */ diff --git a/slist.c b/slist.c index 7d41a0d71..5b2c0e774 100644 --- a/slist.c +++ b/slist.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: slist.c,v 1.6 2003/07/20 01:15:50 dane Exp $ + * $Id$ * */ diff --git a/sockutil.c b/sockutil.c index 4f41eee82..2ce091c2d 100644 --- a/sockutil.c +++ b/sockutil.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: sockutil.c,v 1.7 2003/07/20 01:15:50 dane Exp $ + * $Id$ * */ diff --git a/threads.c b/threads.c index 69c9b8fa2..aeb0f6a37 100644 --- a/threads.c +++ b/threads.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: threads.c,v 1.5 2003/07/20 01:15:50 dane Exp $ + * $Id$ * */ diff --git a/timeout.c b/timeout.c index 629cc009f..fd3c8c983 100644 --- a/timeout.c +++ b/timeout.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: timeout.c,v 1.7 2003/07/20 01:15:50 dane Exp $ + * $Id$ * */ diff --git a/users.c b/users.c index 31810c8c4..8a464c021 100644 --- a/users.c +++ b/users.c @@ -8,7 +8,7 @@ * Based on the original code of Epona by Lara. * Based on the original code of Services by Andy Church. * - * $Id: users.c,v 1.37 2004/02/18 19:00:33 rob Exp $ + * $Id$ * */ diff --git a/version.log b/version.log index d5c302b8b..c38b892e3 100644 --- a/version.log +++ b/version.log @@ -3,1053 +3,19 @@ # # Please read COPYING and README for furhter details. # -# $Id: version.log,v 1.102 2004/03/26 03:53:57 dane Exp $ +# $Id$ VERSION_MAJOR="1" VERSION_MINOR="6" VERSION_PATCH="0" -VERSION_BUILD="0" +VERSION_BUILD="4" VERSION_EXTRA="" -# $Log: version.log,v $ -# Revision 1.102 2004/03/26 03:53:57 dane -# Anope-1.6.0 Release +# $Log$ # -# Revision 1.101 2004/03/25 21:03:04 dane -# BUILD : 1.5.15.15 +# BUILD : 1.6.0 (4) # BUGS : none -# NOTES : Typos on docs and new es.l (from DrStein) -# VTAG : cvs checkout -D "2004-03-25 16:03" anope-dev -# -# Revision 1.100 2004/03/23 02:57:52 dane -# BUILD : 1.5.15.14 -# BUGS : none -# NOTES : Better tables.sql format -# VTAG : cvs checkout -D "2004-03-22 21:57" anope-dev -# -# Revision 1.99 2004/03/23 02:53:28 dane -# BUILD : 1.5.15.13 -# BUGS : none -# NOTES : Added bin/dbgen to help MySQL db schema. -# VTAG : cvs checkout -D "2004-03-22 21:53" anope-dev -# -# Revision 1.98 2004/03/22 18:52:47 dane -# BUILD : 1.5.15.12 -# BUGS : 347 -# NOTES : Proposed fix for crash on channel memo -# VTAG : cvs checkout -D "2004-03-22 13:52" anope-dev -# -# Revision 1.97 2004/03/21 21:20:32 dane -# BUILD : 1.5.15.11 -# BUGS : none -# NOTES : More documentation updates! -# VTAG : cvs checkout -D "2004-03-21 16:20" anope-dev -# -# Revision 1.96 2004/03/21 16:46:06 rob -# BUILD : 1.5.15.10 -# BUGS : N/A -# NOTES : (g)make in modules dir will now use -Wall by default -# VTAG : cvs checkout -D "2004-03-21 16:58" anope-dev -# -# Revision 1.95 2004/03/21 16:30:15 dane -# BUILD : 1.5.15.9 -# BUGS : none -# NOTES : Added docs/DEFCON documentation. -# VTAG : cvs checkout -D "2004-03-21 11:30" anope-dev -# -# Revision 1.94 2004/03/21 15:30:31 dane -# BUILD : 1.5.15.8 -# BUGS : none -# NOTES : Added "Support" section to docs/MODULES -# VTAG : cvs checkout -D "2004-03-21 10:30" anope-dev -# -# Revision 1.93 2004/03/21 15:13:25 dane -# BUILD : 1.5.15.7 -# BUGS : none -# NOTES : Added docs/MODULES -# VTAG : cvs checkout -D "2004-03-21 10:13" anope-dev -# -# Revision 1.92 2004/03/21 14:08:53 rob -# BUILD : 1.5.15.6 -# BUGS : N/A -# NOTES : Made startup check for NSGuestNickPrefix as servcies will seg without it, it has always been marked as [REQUIERED] in the .conf, but.... :) -# VTAG : cvs checkout -D "2004-03-21 14:21" anope-dev -# -# Revision 1.91 2004/03/21 13:41:55 rob -# BUILD : 1.5.15.5 -# BUGS : 0000467 -# NOTES : Anope will only check the existance of defcon config settings, if any of the pre-set defcon levels actaully need them, e.g. if session limit is never used in a defcon level, then DefConSessionLimit does not need to be defined. -# VTAG : cvs checkout -D "2004-03-21 13:54" anope-dev -# -# Revision 1.90 2004/03/21 13:05:05 ribosome -# BUILD : 1.5.15.4 -# BUGS : 0000468 -# NOTES : Changed mkdir to mkdir -p in ./configure to create parent dirs -# VTAG : cvs checkout -D "2004-03-21 13:00" anope-dev -# -# Revision 1.89 2004/03/17 20:08:49 ribosome -# BUILD : 1.5.15.3 -# BUGS : -# NOTES : Incorrect comment style (# rather than /* */) was resulting in compile warning -# VTAG : cvs checkout -D "2004-03-17 20:04" anope-dev -# -# Revision 1.88 2004/03/17 12:18:15 dane -# BUILD : 1.5.15.2 -# BUGS : none -# NOTES : Fix attempt for chan drop. -# VTAG : cvs checkout -D "2004-03-17 07:18" anope-dev -# -# Revision 1.87 2004/03/14 22:44:47 dane -# BUILD : 1.5.15.1 -# BUGS : none -# NOTES : 1.5.15 devel setup -# VTAG : cvs checkout -D "2004-03-14 17:44" anope-dev -# -# Revision 1.86 2004/03/14 21:39:18 dane -# 1.5.15 prep -# -# Revision 1.85 2004/03/14 17:36:58 rob -# BUILD : 1.5.14.12 -# BUGS : 0000465 -# NOTES : Fixed _tiny_ typo-bug in fr.l -# VTAG : cvs checkout -D "2004-03-14 17:48" anope-dev -# -# Revision 1.84 2004/03/14 17:24:52 keeper -# BUILD : 1.5.14.10 -# BUGS : 0000462 -# NOTES : Fixed bug channelmode +r not being removed when nick is dropped. -# -# Revision 1.83 2004/03/14 14:15:34 certus -# BUILD : 1.5.14.9 -# BUGS : 437 -# NOTES : Fixed bug with logchan and logbot -# VTAG : cvs checkout -D "2004-03-14 09:15" anope-dev -# -# Revision 1.82 2004/03/14 13:02:53 rob -# BUILD : 1.5.14.8 -# BUGS : 0000450 -# NOTES : Fixed cvs (null) values -# VTAG : cvs checkout -D "2004-03-14 13:14" anope-dev -# -# Revision 1.81 2004/03/13 13:55:59 dane -# BUILD : 1.5.14.7 -# BUGS : none -# NOTES : Added missing channel fields to MySQL table schema. Also -# forced a db save just after the initial db load to populate -# databases. -# VTAG : cvs checkout -D "2004-03-13 08:55" anope-dev -# -# Revision 1.80 2004/03/13 13:26:23 dane -# BUILD : 1.5.14.6 -# BUGS : none -# NOTES : Added a check for do_mysql on mysql_open() to return 0 if -# MySQL is disabled on the config file. -# VTAG : cvs checkout -D "2004-03-13 08:26" anope-dev -# -# Revision 1.79 2004/03/13 03:36:18 dane -# BUILD : 1.5.14.5 -# BUGS : 434 -# NOTES : Changed most varchars to text. -# VTAG : cvs checkout -D "2004-03-12 22:36" anope-dev -# -# Revision 1.78 2004/03/13 03:25:59 dane -# BUILD : 1.5.14.4 -# BUGS : 0000440 -# NOTES : Typo fixed. -# VTAG : cvs checkout -D "2004-03-12 22:25" anope-dev -# -# Revision 1.77 2004/03/11 17:37:31 rob -# BUILD : 1.5.14.3 -# BUGS : N/A -# NOTES : Fixed my goof with Changes file, and added CLIST to the spanish -# language file ( curtusy of DrStein ) -# -# VTAG : cvs checkout -D "2004-03-11 17:48" anope-dev -# -# Revision 1.76 2004/03/11 16:50:01 rob -# BUILD : 1.5.14.2 -# BUGS : 0000431 | 0000432 -# NOTES : Fixed a couple of module bugs, and incoperated dengel's patch for the malformed +b crash - YAY @ cvs being back :P -# -# VTAG : cvs checkout -D "2004-03-11 17:01" anope-dev -# -# Revision 1.75 2004/02/19 19:35:30 dane -# BUILD : 1.5.14.1 -# BUGS : none -# NOTES : Framework for development -# VTAG : cvs checkout -D "2004-02-19 14:35" anope-dev -# -# Revision 1.74 2004/02/19 18:51:04 dane -# Release 1.5.14-rc3 -# -# Revision 1.73 2004/02/19 16:46:29 ribosome -# BUILD : 1.5.13.18 -# BUGS : 0000406 -# NOTES : Fixed nickserv list bug where unconfirmed nicknames appear in the wrong place -# and changed [Hidden] to [Hostname Hidden] to make things a little clearer! -# VTAG : cvs checkout -D "2004-02-19 16:45" anope-dev -# -# Revision 1.72 2004/02/18 19:00:33 rob -# BUILD : 1.5.13.17 -# BUGS : 0000338 -# NOTES : user.c now has a UGLY hack to swap any %s in the real name to -s - this only effects anope when LOGUSERS is enabled in the .conf -# VTAG : cvs checkout -D "2004-02-18 19:10" anope-dev -# -# Revision 1.71 2004/02/17 22:16:40 joris -# BUILD : 1.5.13.16 -# BUGS : -# NOTES : Completely disable the modules on OpenBSD until we fixed them. -# VTAG : cvs checkout -D "2004-02-17 23:17" anope-dev -# -# Revision 1.70 2004/02/17 02:51:24 dane -# BUILD : 1.5.13.15 -# BUGS : none -# NOTES : Language context typo (thanx to alex323) -# VTAG : cvs checkout -D "2004-02-16 21:51" anope-dev -# -# Revision 1.69 2004/02/15 22:40:46 dane -# BUILD : 1.5.13.14 -# BUGS : 412 -# NOTES : Now is_host_setter() also validates aliases in a group. -# VTAG : cvs checkout -D "2004-02-15 17:40" anope-dev -# -# Revision 1.68 2004/02/15 18:34:40 dane -# BUILD : 1.5.13.13 -# BUGS : 404 -# NOTES : Added support for Viagra's "VS" command to make our vHost -# system work with it. -# VTAG : cvs checkout -D "2004-02-15 13:34" anope-dev -# -# Revision 1.67 2004/02/14 22:50:32 dane -# BUILD : 1.5.13.12 -# BUGS : 407 -# NOTES : Completed some DefCon work. -# VTAG : cvs checkout -D "2004-02-14 17:50" anope-dev -# -# Revision 1.66 2004/02/14 21:22:55 dane -# BUILD : 1.5.13.11 -# BUGS : 441 -# NOTES : Changed all hardcoded "OperServ" to s_OperServ -# VTAG : cvs checkout -D "2004-02-14 16:22" anope-dev -# -# Revision 1.65 2004/02/14 15:37:05 dane -# BUILD : 1.5.13.10 -# BUGS : none -# NOTES : Fixed compile error for CMODE_A (Thanx GeniusDex) -# VTAG : cvs checkout -D "2004-02-14 10:37" anope-dev -# -# Revision 1.64 2004/02/14 00:24:18 ribosome -# BUILD : 1.5.13.9 -# BUGS : -# NOTES : Fixed errors in en_us.l NICK_HELP_DROP -# VTAG : cvs checkout -D "2004-02-14 00:25" anope-dev -# -# Revision 1.63 2004/02/09 19:05:42 ribosome -# BUILD : 1.5.13.8 -# BUGS : Fixed a couple of language file bugs -# NOTES : Changed Services Admin -> Super Admin as required in language files -# VTAG : cvs checkout -D "2004-02-09 19:07" anope-dev -# -# Revision 1.62 2004/02/07 20:48:00 certus -# BUILD : 1.5.13.7 -# BUGS : -# NOTES : replaced is_identified with is_founder to make it more effective (covers real founder and superadmin, not only pw identify) -# VTAG : cvs checkout -D "2004-02-07 15:47" anope-dev -# -# Revision 1.61 2004/02/07 20:36:46 certus -# BUILD : 1.5.13.6 -# BUGS : -# NOTES : Fixed bug where you could /cs identify infinite times -# VTAG : cvs checkout -D "2004-02-07 15:36" anope-dev -# -# Revision 1.60 2004/02/07 20:11:14 ribosome -# BUILD : 1.5.13.5 -# BUGS : Fixed Bug 0000400 -# NOTES : Fixed registration via group on nicknames preconfirmation -# VTAG : cvs checkout -D "2004-02-07 13:10" anope-dev -# -# Revision 1.59 2004/02/07 18:53:59 dane -# BUILD : 1.5.13.4 -# BUGS : 403 -# NOTES : Only Admins are allowed to /OS MODE channels +A -# VTAG : cvs checkout -D "2004-02-07 13:53" anope-dev -# -# Revision 1.58 2004/02/07 18:38:47 certus -# BUILD : 1.5.13.3 -# BUGS : 0000030 -# NOTES : Channel '#' may no longer be registered due to several problems. -# VTAG : cvs checkout -D "2004-02-07 13:38" anope-dev -# -# Revision 1.57 2004/02/02 21:09:52 certus -# BUILD : 1.5.13.2 -# BUGS : -# NOTES : Fixed bug where non-id'ed nicks could do /cs identify -# VTAG : cvs checkout -D "2004-02-02 16:09" anope-dev -# -# Revision 1.56 2004/02/01 00:11:09 dane -# BUILD : 1.5.13.1 -# BUGS : none -# NOTES : Prep for 1.5.13.x -# VTAG : cvs checkout -D "2