ftnapps-svn Mailing List for FTN Applications (Page 4)
Brought to you by:
jame
You can subscribe to this list here.
2008 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(22) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2009 |
Jan
|
Feb
(13) |
Mar
(21) |
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(1) |
Sep
(3) |
Oct
(5) |
Nov
(1) |
Dec
|
2011 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(33) |
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
(9) |
2012 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(4) |
Nov
|
Dec
|
From: <ja...@us...> - 2009-03-07 17:37:50
|
Revision: 41 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=41&view=rev Author: jame Date: 2009-03-07 17:37:45 +0000 (Sat, 07 Mar 2009) Log Message: ----------- Add link to the GIT repo to the Crashmail web page. Modified Paths: -------------- htdocs/online/crashmail.html Modified: htdocs/online/crashmail.html =================================================================== --- htdocs/online/crashmail.html 2009-03-07 17:22:27 UTC (rev 40) +++ htdocs/online/crashmail.html 2009-03-07 17:37:45 UTC (rev 41) @@ -46,6 +46,7 @@ <ul> <li>Browse <a href="http://ftnapps.svn.sourceforge.net/viewvc/ftnapps/crashmail/">crashmail</a> in the ftnapps SVN repository.</li> + <li>Browse the <a href="http://git.debian.org/?p=crashmail/crashmail.git">GIT</a> repository for Crashmail at git.debian.org.</li> <li>Information about Crashmail II in <a href="http://packages.debian.org/search?keywords=crashmail">Debian</a> and <a href="http://packages.ubuntu.com/search?keywords=crashmail">Ubuntu</a>. </ul> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ja...@us...> - 2009-03-07 17:22:42
|
Revision: 40 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=40&view=rev Author: jame Date: 2009-03-07 17:22:27 +0000 (Sat, 07 Mar 2009) Log Message: ----------- Add TinyTIC to the ftnapps project pages. Modified Paths: -------------- htdocs/online/crashmail.html htdocs/online/index.html htdocs/online/information.html htdocs/online/jamnntpd.html htdocs/online/vireq.html Added Paths: ----------- htdocs/online/tinytic.html Modified: htdocs/online/crashmail.html =================================================================== --- htdocs/online/crashmail.html 2009-03-07 16:26:15 UTC (rev 39) +++ htdocs/online/crashmail.html 2009-03-07 17:22:27 UTC (rev 40) @@ -22,8 +22,8 @@ <a href="/index.html">Home</a> | <a href="/crashmail.html">Crashmail</a> | <a href="/jamnntpd.html">JamNNTPd</a> | + <a href="/tinytic.html">TinyTIC</a> | <a href="/vireq.html">VIReq</a> | -<!-- <a href="/links.html">Links</a> | --> <a href="/information.html">Info</a> </div> </div> Modified: htdocs/online/index.html =================================================================== --- htdocs/online/index.html 2009-03-07 16:26:15 UTC (rev 39) +++ htdocs/online/index.html 2009-03-07 17:22:27 UTC (rev 40) @@ -22,8 +22,8 @@ <a href="/index.html">Home</a> | <a href="/crashmail.html">Crashmail</a> | <a href="/jamnntpd.html">JamNNTPd</a> | + <a href="/tinytic.html">TinyTIC</a> | <a href="/vireq.html">VIReq</a> | -<!-- <a href="/links.html">Links</a> | --> <a href="/information.html">Info</a> </div> </div> @@ -42,6 +42,7 @@ <ul> <li><a href="crashmail.html"><b>Crashmail II</b></a> - A JAM and *.MSG capable Fidonet tosser</li> <li><a href="jamnntpd.html"><b>JamNNTPd</b></a> - an NNTP server that allows newsreaders to access a JAM messagebase</li> + <li><a href="tinytic.html"><b>TinyTIC</b></a> - Small, simple TIC processor</li> <li><a href="vireq.html"><b>VIReq</b></a> - SRIF File request processor</li> </ul> Modified: htdocs/online/information.html =================================================================== --- htdocs/online/information.html 2009-03-07 16:26:15 UTC (rev 39) +++ htdocs/online/information.html 2009-03-07 17:22:27 UTC (rev 40) @@ -22,8 +22,8 @@ <a href="/index.html">Home</a> | <a href="/crashmail.html">Crashmail</a> | <a href="/jamnntpd.html">JamNNTPd</a> | + <a href="/tinytic.html">TinyTIC</a> | <a href="/vireq.html">VIReq</a> | -<!-- <a href="./links.html">Links</a> | --> <a href="/information.html">Info</a> </div> </div> Modified: htdocs/online/jamnntpd.html =================================================================== --- htdocs/online/jamnntpd.html 2009-03-07 16:26:15 UTC (rev 39) +++ htdocs/online/jamnntpd.html 2009-03-07 17:22:27 UTC (rev 40) @@ -22,8 +22,8 @@ <a href="/index.html">Home</a> | <a href="/crashmail.html">Crashmail</a> | <a href="/jamnntpd.html">JamNNTPd</a> | + <a href="/tinytic.html">TinyTIC</a> | <a href="/vireq.html">VIReq</a> | -<!-- <a href="/links.html">Links</a> | --> <a href="/information.html">Info</a> </div> </div> Copied: htdocs/online/tinytic.html (from rev 39, htdocs/online/jamnntpd.html) =================================================================== --- htdocs/online/tinytic.html (rev 0) +++ htdocs/online/tinytic.html 2009-03-07 17:22:27 UTC (rev 40) @@ -0,0 +1,74 @@ +<html> + <head> + <title>ftnapps: TinyTIC</title> + <meta name="author" content="Robert James Clay"> + <meta name="keywords" CONTENT="Fidonet FTN BBS SRIF file request"> + <meta http-equiv="KEYWORDS" CONTENT="Fidonet, FTN, BBS, JAM, message base, NNTP"> + <meta name="description" CONTENT="Information and links about TinyTIC. "> + <link rel="stylesheet" type="text/css" href="/screen.css" media="screen, tv, projection" title="Default" /> + <link rel="stylesheet" type="text/css" href="/print.css" media="print" /> + </head> + <body> + + <div id="header"> + <div class="Header"> + <h1 class="headerTitle" lang="en">TinyTIC</h1> + <div class="headerSubTitle" title="Description of page"> + A small, simple TIC processor. + </div> + </div> + <div class="subHeader"> + <span class="doNotDisplay">Navigation:</span> + <a href="/index.html">Home</a> | + <a href="/crashmail.html">Crashmail</a> | + <a href="/jamnntpd.html">JamNNTPd</a> | + <a href="/tinytic.html">TinyTIC</a> | + <a href="/vireq.html">VIReq</a> | + <a href="/information.html">Info</a> + </div> + </div> + + <div id="mainbody"> + <div class="rowOfBoxes"> + <div class="twoThirds noBorderOnLeft"> + <p> + TinyTIC was written in response for a need for a small, simple TIC processor + that will work with Synchronet BBS software. It was primarily designed with + the Synchronet sysop in mind, but can be used with any BBS software that will + allow importation of a text message into its message base format, like + Synchronet does. For information, please see the documentation included + in the TinyTIC archive. + </p> + </div> + + <div class="oneThird"> + + <h2>TinyTIC links</h2> + + <ul> + <li>Browse <a href="http://ftnapps.svn.sourceforge.net/viewvc/ftnapps/TinyTIC/">TinyTIC</a> in the SVN repository.</li> + </ul> + + <p class="filler"><!-- Filler para to extend left vertical line --></p> + + </div> + </div> + + </div> + + <div id="footer"> + <table width="100%"> + <tr><td> + + <a href="http://sourceforge.net"> + <img src="http://sflogo.sourceforge.net/sflogo.php?group_id=29063&type=1" + width="88" height="31" border="0" alt="SourceForge Logo"/></a> + + </td><td align="right"> + <font size="-2">Copyright © 2009 Robert James Clay</font> + </td></tr) + </table> + </div> + + </body> +</html> Modified: htdocs/online/vireq.html =================================================================== --- htdocs/online/vireq.html 2009-03-07 16:26:15 UTC (rev 39) +++ htdocs/online/vireq.html 2009-03-07 17:22:27 UTC (rev 40) @@ -22,8 +22,8 @@ <a href="/index.html">Home</a> | <a href="/crashmail.html">Crashmail</a> | <a href="/jamnntpd.html">JamNNTPd</a> | + <a href="/tinytic.html">TinyTIC</a> | <a href="/vireq.html">VIReq</a> | -<!-- <a href="/links.html">Links</a> | --> <a href="/information.html">Info</a> </div> </div> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ja...@us...> - 2009-03-07 16:26:46
|
Revision: 39 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=39&view=rev Author: jame Date: 2009-03-07 16:26:15 +0000 (Sat, 07 Mar 2009) Log Message: ----------- Reference Debian ITP, plus other content edits, to the JamNNTPd web page. Modified Paths: -------------- htdocs/online/jamnntpd.html Modified: htdocs/online/jamnntpd.html =================================================================== --- htdocs/online/jamnntpd.html 2009-03-07 16:04:29 UTC (rev 38) +++ htdocs/online/jamnntpd.html 2009-03-07 16:26:15 UTC (rev 39) @@ -32,11 +32,15 @@ <div class="rowOfBoxes"> <div class="twoThirds noBorderOnLeft"> - <p>JamNNTPd is an attempt to merge fidonet technology with Usenet newsreaders. - Basically, JamNNTPd is an NNTP server that allows newsreaders to access a - JAM messagebase. + <p> + JamNNTPd is an attempt to merge Fidonet technology with Usenet newsreaders. + Basically, JamNNTPd is an NNTP server that allows newsreaders to access a + JAM messagebase. </p> - + <p> + JamNNTPd is open source and can be used with both Linux and Windows. There + is also a Debian <a href="http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=223905">ITP</a> (Intend To Package) for it. + </p> </div> <div class="oneThird"> @@ -44,7 +48,7 @@ <h2>JamNNTPd links</h2> <ul> - <li>Browse <a href="http://ftnapps.svn.sourceforge.net/viewvc/ftnapps/jamnntpd/">JammNNTPd</a> in the SVN repository.</li> + <li>Browse <a href="http://ftnapps.svn.sourceforge.net/viewvc/ftnapps/jamnntpd/">JamNNTPd</a> in the SVN repository.</li> <li>Browse the <a href="http://git.debian.org/?p=crashmail/jamnntpd.git">GIT</a> repository for JamNNTPd at git.debian.org.</li> </ul> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ja...@us...> - 2009-03-07 16:04:56
|
Revision: 38 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=38&view=rev Author: jame Date: 2009-03-07 16:04:29 +0000 (Sat, 07 Mar 2009) Log Message: ----------- Add link to the GIT repo to the JamNNTPd web page. Modified Paths: -------------- htdocs/online/jamnntpd.html Modified: htdocs/online/jamnntpd.html =================================================================== --- htdocs/online/jamnntpd.html 2009-02-21 16:29:46 UTC (rev 37) +++ htdocs/online/jamnntpd.html 2009-03-07 16:04:29 UTC (rev 38) @@ -45,6 +45,7 @@ <ul> <li>Browse <a href="http://ftnapps.svn.sourceforge.net/viewvc/ftnapps/jamnntpd/">JammNNTPd</a> in the SVN repository.</li> + <li>Browse the <a href="http://git.debian.org/?p=crashmail/jamnntpd.git">GIT</a> repository for JamNNTPd at git.debian.org.</li> </ul> <p class="filler"><!-- Filler para to extend left vertical line --></p> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ja...@us...> - 2009-02-21 16:29:51
|
Revision: 37 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=37&view=rev Author: jame Date: 2009-02-21 16:29:46 +0000 (Sat, 21 Feb 2009) Log Message: ----------- Import TinyTIC v0.0.5.3-r1 Added Paths: ----------- tinytic/branches/vendor/0.0.5.3-r1/ tinytic/branches/vendor/0.0.5.3-r1/CDirect.cpp tinytic/branches/vendor/0.0.5.3-r1/CDirect.h tinytic/branches/vendor/0.0.5.3-r1/TinyTIC.dsp tinytic/branches/vendor/0.0.5.3-r1/TinyTIC.dsw tinytic/branches/vendor/0.0.5.3-r1/compile.txt tinytic/branches/vendor/0.0.5.3-r1/file_id.diz tinytic/branches/vendor/0.0.5.3-r1/filecopy.cpp tinytic/branches/vendor/0.0.5.3-r1/filecopy.h tinytic/branches/vendor/0.0.5.3-r1/headers.h tinytic/branches/vendor/0.0.5.3-r1/license.txt tinytic/branches/vendor/0.0.5.3-r1/parse.cpp tinytic/branches/vendor/0.0.5.3-r1/parse.h tinytic/branches/vendor/0.0.5.3-r1/pkg/ tinytic/branches/vendor/0.0.5.3-r1/pkg/AUTORULE.BAT tinytic/branches/vendor/0.0.5.3-r1/pkg/EXAMPLE.CFG tinytic/branches/vendor/0.0.5.3-r1/pkg/FOOTER.TXT tinytic/branches/vendor/0.0.5.3-r1/pkg/HEADER.TXT tinytic/branches/vendor/0.0.5.3-r1/pkg/MAILPROC.BAT tinytic/branches/vendor/0.0.5.3-r1/pkg/MPOST.DOC tinytic/branches/vendor/0.0.5.3-r1/pkg/SYNC.DOC tinytic/branches/vendor/0.0.5.3-r1/pkg/SYSOP.DOC tinytic/branches/vendor/0.0.5.3-r1/pkg/TINYTIC.CFG tinytic/branches/vendor/0.0.5.3-r1/pkg/license.txt tinytic/branches/vendor/0.0.5.3-r1/pkg/packing.lst tinytic/branches/vendor/0.0.5.3-r1/pkg/tinytic.rev tinytic/branches/vendor/0.0.5.3-r1/ticlog.cpp tinytic/branches/vendor/0.0.5.3-r1/ticlog.h tinytic/branches/vendor/0.0.5.3-r1/tinytic.cpp tinytic/branches/vendor/0.0.5.3-r1/tinytic.h tinytic/branches/vendor/0.0.5.3-r1/tprocess.cpp tinytic/branches/vendor/0.0.5.3-r1/tprocess.h Added: tinytic/branches/vendor/0.0.5.3-r1/CDirect.cpp =================================================================== --- tinytic/branches/vendor/0.0.5.3-r1/CDirect.cpp (rev 0) +++ tinytic/branches/vendor/0.0.5.3-r1/CDirect.cpp 2009-02-21 16:29:46 UTC (rev 37) @@ -0,0 +1,416 @@ +/********************************************************************** + Copyright (c) 2000-2002, Michael Dillon + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + Neither the name of Crystalline Realms, Midnight's Hour BBS, + Elysium Software nor the names of their contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + OF THE POSSIBILITY OF SUCH DAMAGE. + *********************************************************************/ +/********************************************************************* + CDirect.cpp - Cross-platform directory searching class. + *********************************************************************/ +#include "CDirect.h" + +// Default constructor, looks in current directory and searches for all files +CDirect::CDirect() +{ + // Default to searching for all files + _pattern = "*.*"; + // Default to current directory + _directory = "."; + + // Flag the directory as "Not-in-use" + _open = false; + + // Call the FixPath to make sure the directory has a trailing slash + FixPath(); + + // Set the Max count to 0 + _MaxFiles = 0L; + + // Get the max count + GetMaxFiles(); +} + +// Secondary constructor, allows for specified directory and match pattern +CDirect::CDirect( const char *pattern, const char *directory ) +{ + // Use the given pattern + _pattern = pattern; + // Use the given directory + _directory = directory; + + // flag the directory as "Not-In-Use" + _open = false; + + // Call FixPath to make sure the directory has a trailing slash + FixPath(); + + // Set the Max count to 0 + _MaxFiles = 0L; + + // Get the max count + GetMaxFiles(); +} + +// Destructor, closes anything that was opened +CDirect::~CDirect() +{ + // Check to see if the directory was in use or was opened. + if (_open == true) + { +#if defined(__DIRECT__FILE_SEARCH_WINDOWS) || defined(__DIRECT__FILE_SEARCH_OS2) +// ----------------------- +// Windows & OS/2 Specific +// ----------------------- + // Close the find search + _findclose(hFileSearch); +#elif defined(__DIRECT_FILE_SEARCH_POSIX) +// ----------------------- +// POSIX Specific +// ----------------------- + // Close the open directory + closedir(hDir); +#endif + } +} + +// Find: +// Searches for entries of files matching the pattern +// +bool CDirect::Find( void ) +{ + // Return value for this function + bool _FindReturn = false; + + // Has the directory been accessed already ? + if (_open == false) + { + // No, find the first file entry matching the pattern. + _open = FindFirst(); + // Set the return to that of FindFirst(); + _FindReturn = _open; + } + else + { + // Yes, Find the next file entry + _FindReturn = FindNext(); + } + + // Return + return ( _FindReturn ); +} + +// FindFirst: Searches for the first entry matching the pattern +bool CDirect::FindFirst(void) +{ + // Return value for FindFirst() + bool _FindFirstReturn = false; + +#if defined(__DIRECT__FILE_SEARCH_WINDOWS) || defined(__DIRECT__FILE_SEARCH_OS2) +// ------------------------ +// Windows & OS/2 Specific +// ------------------------ + // Create a temporary buffer + string szTmpBuf; + + // Copy the given directory to the temporary buffer + szTmpBuf = _directory.c_str(); + + // Copy the pattern to the buffer + szTmpBuf += _pattern.c_str(); + + // Search for the first entry matching the pattern + if ((hFileSearch = _findfirst(szTmpBuf.c_str(), &hFindData)) > -1L) + { + // Entry found, update the hFileData structure + ValidateData(); + // Set the return to true + _FindFirstReturn = true; + } +#elif defined(__DIRECT__FILE_SEARCH_POSIX) +// ------------------------- +// POSIX Specific +// ------------------------- + // Attempt to open the specified directory + if ((hDir = opendir(_directory.c_str())) != NULL) + { + // Read each entry of the directory until a match was found + // or the directory has no more entries. + while ((hDirent = readdir(hDir)) != NULL) + { + // Check to see if the file's name matches the given + // pattern. +#if defined(DJGPP) + if (fnmatch(_pattern.c_str(), hDirent->d_name, FNM_NOESCAPE | FNM_NOCASE) == 0) +#else + if (fnmatch(_pattern.c_str(), hDirent->d_name, 0) == 0) +#endif + { + // Yes, update the hFileData structure + ValidateData(); + // Set the return to true + _FindFirstReturn = true; + // Get out of the loop + break; + } + } + } +#endif + + // Return + return (_FindFirstReturn); +} + +// FindNext: Searches for the next entry in the directory matching the pattern +bool CDirect::FindNext(void) +{ + // Clear the value of hFileData + DestroyValues(); + // Return value for FindNext + bool _FindNextReturn = false; + +#if defined(__DIRECT__FILE_SEARCH_WINDOWS) || defined(__DIRECT__FILE_SEARCH_OS2) +// ------------------------ +// Windows & OS/2 Specific +// ------------------------ + // Search for the next entry + if (_findnext(hFileSearch, &hFindData) == 0) + { + // Found, Update the hFileData structure + ValidateData(); + // Set the return to true + _FindNextReturn = true; + } +#elif defined(__DIRECT__FILE_SEARCH_POSIX) +// ------------------------- +// POSIX Specific +// ------------------------- + // Attempt to read the directory for more entries or + // until there are no more entries to be found. + while ( ( hDirent = readdir( hDir ) ) != NULL ) + { + // Check to see if the file name matches that of the pattern +#if defined(DJGPP) + if (fnmatch(_pattern.c_str(), hDirent->d_name, FNM_NOESCAPE | FNM_NOCASE) == 0) +#else + if (fnmatch(_pattern.c_str(), hDirent->d_name, 0) == 0) +#endif + { + // Yes, update the hFileData structure + ValidateData(); + // Set the return to true + _FindNextReturn = true; + // Get Out of the loop + break; + } + } +#endif + + // Return + return (_FindNextReturn); +} + +// ValidateData: Updates the values for the hFileData structure +void CDirect::ValidateData(void) +{ + // Temporary string + string szTmpBuffer; + + // Copy the directory to the TempBuffer + szTmpBuffer = _directory.c_str(); + +#if defined(__DIRECT__FILE_SEARCH_WINDOWS) || defined(__DIRECT__FILE_SEARCH_OS2) +// ----------------------- +// Windows & OS/2 Specific +// ----------------------- + // Copy the file name found in the search to the hFileData structure + strcpy(hFileData.Name, hFindData.name); +#elif defined(__DIRECT__FILE_SEARCH_POSIX) +// ----------------------- +// POSIX Specific +// ----------------------- + // Copy the file name found with readdir() to the hFileData structure + strcpy(hFileData.Name, hDirent->d_name); +#endif + + // Copy the file name onto the directory + szTmpBuffer += hFileData.Name; + + // Call stat() to get information about the file. + if (stat(szTmpBuffer.c_str(), &hFStat) == 0) + { + // Set the last access time + hFileData.AccessTime = ( time_t )hFStat.st_atime; + // Set the creation time + hFileData.CreateTime = ( time_t )hFStat.st_ctime; + // Set the last write time + hFileData.WriteTime = ( time_t )hFStat.st_mtime; + // Set the size + hFileData.Size = hFStat.st_size; + // Set the mode + hFileData.Mode = hFStat.st_mode; + } + else + { + // Stat failed, destroy all values except the file's name + hFileData.AccessTime = ( time_t )0; + hFileData.CreateTime = ( time_t )0; + hFileData.WriteTime = ( time_t )0; + hFileData.Size = 0L; + hFileData.Mode = 0; + } +} + +// GetInfo: Return's the current entry for a matching file (if any) +FileData CDirect::GetInfo(void) +{ + // Return the hFileData structure + return (hFileData); +} + +// Clears the values for the hFileData structure +void CDirect::DestroyValues(void) +{ + // Set all values to that equivalent to NULL + hFileData.Mode = 0; + hFileData.AccessTime = ( time_t )0; + hFileData.CreateTime = ( time_t )0; + hFileData.WriteTime = ( time_t )0; + hFileData.Size = 0L; + memset(hFileData.Name, 0, sizeof(hFileData.Name)); +} + +// FixPath: Ensure there's a trailing slash on the directory name +void CDirect::FixPath(void) +{ + // Temporary buffer + string szTmpBuffer; + + // Temporary iterator + string::iterator idx; + + // Copy the directory into the buffer + szTmpBuffer = _directory.c_str(); + + // Set the iterator to the end of the buffer + idx = szTmpBuffer.end(); + +#if defined(__DIRECT__FILE_SEARCH_WINDOWS) || defined(__DIRECT__FILE_SEARCH_OS2) +// ----------------------- +// Windows & OS/2 Specific +// ----------------------- + // Check to see if there's a trailing backslash + if (*idx != '\\') + { + // No, add one. + szTmpBuffer += '\\'; + } +#elif defined(__DIRECT__FILE_SEARCH_POSIX) +// ----------------------- +// POSIX Specific +// ----------------------- + // Check for a trailing slash + if (*idx != '/') + { + // No, add one. + szTmpBuffer += '/'; + } +#endif + + // Save the changes + _directory = szTmpBuffer; +} + +void CDirect::GetMaxFiles(void) +{ +#if defined(__DIRECT__FILE_SEARCH_WINDOWS) || defined(__DIRECT_FILE_SEARCH_OS2) +// ------------------------ +// Windows & OS/2 Specific +// ------------------------ + // Create a search handle + long hSearch = -1L; + // Create a find data structure to hold information + struct _finddata_t hFData; + // Temporary string to hold the full path & pattern + string szTmp; + + // Combine the directory and pattern into a full path + szTmp = _directory.c_str(); + szTmp += _pattern.c_str(); + // Create a search handle and try to find the first instance of + // a file matching the pattern, if none then MaxFiles will remain + // zero + if ((hSearch = _findfirst(szTmp.c_str(), &hFData)) > -1L) + { + // increment the max files value + _MaxFiles++; + // Search for other files after the first one until + // there are no more files to search through. + while (_findnext(hSearch, &hFData) == 0) + { + // increment, file found. + _MaxFiles++; + } + // Close the search, finish. + _findclose(hSearch); + } +#elif defined(__DIRECT__FILE_SEARCH_POSIX) +// ------------------------- +// POSIX Specific +// ------------------------- + // Create a DIRectory structure + DIR *hDirec; + // Create a local instance to hold information obtained + struct dirent *hDirentLocal; + // Attempt to open the specified directory + if ((hDirec = opendir( _directory.c_str())) != NULL) + { + // Read each entry of the directory until a match was found + // or the directory has no more entries. + while ((hDirentLocal = readdir(hDirec)) != NULL) + { + // Check to see if the file's name matches the given + // pattern. +#if defined(DJGPP) + if (fnmatch(_pattern.c_str(), hDirentLocal->d_name, FNM_NOESCAPE | FNM_NOCASE) == 0) +#else + if (fnmatch(_pattern.c_str(), hDirentLocal->d_name, 0) == 0) +#endif + { + // increment the file count. + _MaxFiles++; + } + } + // Terminate the search + closedir(hDirec); + } +#endif +} + Added: tinytic/branches/vendor/0.0.5.3-r1/CDirect.h =================================================================== --- tinytic/branches/vendor/0.0.5.3-r1/CDirect.h (rev 0) +++ tinytic/branches/vendor/0.0.5.3-r1/CDirect.h 2009-02-21 16:29:46 UTC (rev 37) @@ -0,0 +1,172 @@ +/********************************************************************** + Copyright (c) 2000-2002, Michael Dillon + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + Neither the name of Crystalline Realms, Midnight's Hour BBS, + Elysium Software nor the names of their contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + OF THE POSSIBILITY OF SUCH DAMAGE. + *********************************************************************/ +/********************************************************************* + CDirect.h - class for handling cross-platform directory searching. + *********************************************************************/ +#if !defined (__DIRECT__FILE_SEARCH___H) +#define __DIRECT__FILE_SEARCH___H 1 + +#ifndef __cplusplus +# error "This source REQUIRES C++ to function" +#endif + +//#include <iostream> +//#include <string> // STL String header + +#include "headers.h" +#include "tinytic.h" // This will define the system type we can use + +//#ifndef __NAMESPACE_SET +//# if !defined(STLPORT) || defined(_STL_USE_NAMESPACES) +// using namespace std ; +//# endif /* !STL_PORT || _STL_USE_NAMESPACES */ +//# define __NAMESPACE_SET 1 +//#endif /* __NAMESPACE_SET */ + +#include <sys/types.h> // Required for stat() +#include <sys/stat.h> // Definition for stat() + +// Check to see if the definitions are already set, if they are +// then undefine them. +// __DIRECT__FILE_SEARCH_WINDOWS : Definition set for Windows based systems +// __DIRECT__FILE_SEARCH_POSIX : Definition set for POSIX enabled systems + +#undef __DIRECT__FILE_SEARCH_WINDOWS +#undef __DIRECT__FILE_SEARCH_POSIX +#undef __DIRECT__FILE_SEARCH_OS2 + +#if defined(__TINYTIC_WINDOWS) +# define __DIRECT__FILE_SEARCH_WINDOWS +# include <io.h> +# include <direct.h> +#elif defined(__TINYTIC_POSIX) +# define __DIRECT__FILE_SEARCH_POSIX +# include <dirent.h> +# include <fnmatch.h> +#elif defined(__TINYTIC_OS2) +# define __DIRECT__FILE_SEARCH_OS2 +# include <io.h> +#else +# error "Please define the correct compiler type" +#endif + +// Primary structure used by CDirect +typedef struct { + unsigned short int Mode; // File's Mode settings + time_t AccessTime; // Last Access Time + time_t CreateTime; // File creation date + time_t WriteTime; // Last Write time + unsigned long int Size; // Size of file + char Name[4096]; // File's Name +} FileData; + +class CDirect +{ +public: + CDirect(); + CDirect(const char *pattern, const char *directory = "."); + ~CDirect(); + + // Find: Calls on FindNext or FindFirst depending on if the + // directory has been opened. + bool Find(void); + // GetInfo: Returns the current FileData for any given file + // found. + FileData GetInfo(void); + // GetCount: Returns the number of files that matched the pattern + // in the given directory. + unsigned long int GetCount(void) { return (_MaxFiles); } + +private: + // FindFirst: Searches for the first entry matching the given pattern + bool FindFirst(void); + // FindNext: Searches for the next relevant entry matching the given + // pattern + bool FindNext(void); + // ValidateData: Sets the values for the FileData structure + void ValidateData(void); + // DestroyValues: Clears the values for the FileData structure + // This is done before each call to FindNext and + // FindFirst + void DestroyValues(void); + // FixPath: Makes sure there is a trailing slash for the directory + // given + void FixPath(void); + // GetMaxFiles: Count the number of files matching the pattern in + // the directory. + void GetMaxFiles(void); + + // hFileData: Internal FileData structure, this will be modified + // by ValidateData primarily, and sent to a requesting + // program by GetInfo + FileData hFileData; + // _pattern: Internal storage for the 'pattern' passed at + // construction time. + string _pattern; + // _directory: Internal storage for the 'directory' passed at + // construction time. + string _directory; + + // _open: Internal flag to see if the directory is in access or + // was unable to be opened. + bool _open; + // hFStat: Structure used to gather info from stat() and put it + // in the hFileData structure + struct stat hFStat; + // _MaxFiles: Internal value that indicates how many files were + // found matching the pattern + unsigned long int _MaxFiles; + +#if defined(__DIRECT__FILE_SEARCH_WINDOWS) || defined(__DIRECT__FILE_SEARCH_OS2) +// -------------------------- +// Windows & OS/2 Specific additions +// -------------------------- + // hFileSearch: Find handle passed by findfirst() + long hFileSearch; + // hFindData: Structure used by findfirst() and findnext() + struct _finddata_t hFindData; +#elif defined(__DIRECT__FILE_SEARCH_POSIX) +// -------------------------- +// POSIX Specific additions +// -------------------------- + // hDir: Directory handle passed from opendir() + DIR *hDir; + // hDirent: Passed from readdir(), holds the file that was found. + struct dirent *hDirent; +#endif +}; + + +#endif Added: tinytic/branches/vendor/0.0.5.3-r1/TinyTIC.dsp =================================================================== --- tinytic/branches/vendor/0.0.5.3-r1/TinyTIC.dsp (rev 0) +++ tinytic/branches/vendor/0.0.5.3-r1/TinyTIC.dsp 2009-02-21 16:29:46 UTC (rev 37) @@ -0,0 +1,149 @@ +# Microsoft Developer Studio Project File - Name="TinyTIC" - Package Owner=<4> +# Microsoft Developer Studio Generated Build File, Format Version 6.00 +# ** DO NOT EDIT ** + +# TARGTYPE "Win32 (x86) Console Application" 0x0103 + +CFG=TinyTIC - Win32 Debug +!MESSAGE This is not a valid makefile. To build this project using NMAKE, +!MESSAGE use the Export Makefile command and run +!MESSAGE +!MESSAGE NMAKE /f "TinyTIC.mak". +!MESSAGE +!MESSAGE You can specify a configuration when running NMAKE +!MESSAGE by defining the macro CFG on the command line. For example: +!MESSAGE +!MESSAGE NMAKE /f "TinyTIC.mak" CFG="TinyTIC - Win32 Debug" +!MESSAGE +!MESSAGE Possible choices for configuration are: +!MESSAGE +!MESSAGE "TinyTIC - Win32 Release" (based on "Win32 (x86) Console Application") +!MESSAGE "TinyTIC - Win32 Debug" (based on "Win32 (x86) Console Application") +!MESSAGE + +# Begin Project +# PROP AllowPerConfigDependencies 0 +# PROP Scc_ProjName "" +# PROP Scc_LocalPath "" +CPP=cl.exe +RSC=rc.exe + +!IF "$(CFG)" == "TinyTIC - Win32 Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release" +# PROP BASE Intermediate_Dir "Release" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release" +# PROP Intermediate_Dir "Release" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c +# ADD CPP /nologo /MD /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 + +!ELSEIF "$(CFG)" == "TinyTIC - Win32 Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug" +# PROP BASE Intermediate_Dir "Debug" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug" +# PROP Intermediate_Dir "Debug" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c +# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept + +!ENDIF + +# Begin Target + +# Name "TinyTIC - Win32 Release" +# Name "TinyTIC - Win32 Debug" +# Begin Group "Source Files" + +# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat" +# Begin Source File + +SOURCE=.\CDirect.cpp +# End Source File +# Begin Source File + +SOURCE=.\filecopy.cpp +# End Source File +# Begin Source File + +SOURCE=.\parse.cpp +# End Source File +# Begin Source File + +SOURCE=.\ticlog.cpp +# End Source File +# Begin Source File + +SOURCE=.\tinytic.cpp +# End Source File +# Begin Source File + +SOURCE=.\tprocess.cpp +# End Source File +# End Group +# Begin Group "Header Files" + +# PROP Default_Filter "h;hpp;hxx;hm;inl" +# Begin Source File + +SOURCE=.\CDirect.h +# End Source File +# Begin Source File + +SOURCE=.\filecopy.h +# End Source File +# Begin Source File + +SOURCE=.\headers.h +# End Source File +# Begin Source File + +SOURCE=.\parse.h +# End Source File +# Begin Source File + +SOURCE=.\ticlog.h +# End Source File +# Begin Source File + +SOURCE=.\tinytic.h +# End Source File +# Begin Source File + +SOURCE=.\tprocess.h +# End Source File +# End Group +# Begin Group "Resource Files" + +# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe" +# End Group +# End Target +# End Project Added: tinytic/branches/vendor/0.0.5.3-r1/TinyTIC.dsw =================================================================== --- tinytic/branches/vendor/0.0.5.3-r1/TinyTIC.dsw (rev 0) +++ tinytic/branches/vendor/0.0.5.3-r1/TinyTIC.dsw 2009-02-21 16:29:46 UTC (rev 37) @@ -0,0 +1,29 @@ +Microsoft Developer Studio Workspace File, Format Version 6.00 +# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE! + +############################################################################### + +Project: "TinyTIC"=.\TinyTIC.dsp - Package Owner=<4> + +Package=<5> +{{{ +}}} + +Package=<4> +{{{ +}}} + +############################################################################### + +Global: + +Package=<5> +{{{ +}}} + +Package=<3> +{{{ +}}} + +############################################################################### + Added: tinytic/branches/vendor/0.0.5.3-r1/compile.txt =================================================================== --- tinytic/branches/vendor/0.0.5.3-r1/compile.txt (rev 0) +++ tinytic/branches/vendor/0.0.5.3-r1/compile.txt 2009-02-21 16:29:46 UTC (rev 37) @@ -0,0 +1,25 @@ +INFORMATION ON COMPILING TINYTIC: + +Files that have to be compiled: +CDirect.cpp, filecopy.cpp, tprocess.cpp, parse.cpp, ticlog.cpp, and +tinytic.cpp + +Replace <file> with one of those required, listed above. + +I wrote this short document because I am not good at writing +makefiles ;) + +Watcom C++: +[DOS/16]: wpp <file> -bt=dos -l=dos -zq -Ox -d0 -d_NOTHREADS -W3 +[DOS/32]: wpp386 <file> -bt=dos -l=dos32x -zq -Ox -d0 -d_NOTHREADS -W3 +[OS/2]: wpp386 <file> -bt=os2 -l=os2v2 -zq -Ox -d0 -W3 +[Windows]: wpp386 <file> -bt=windows -l=windows -zq -Ox -d0 -W3 + +Do note that I used STLport to compile these under Watcom C++! + +Visual C++ v6: +[Windows]: cl <file> -Ox -nologo -d0 -GX -W3 + +GCC 2.9+: +[ALL]: g++ <file> -Wall -s -c + g++ *.o -o tinytic \ No newline at end of file Added: tinytic/branches/vendor/0.0.5.3-r1/file_id.diz =================================================================== --- tinytic/branches/vendor/0.0.5.3-r1/file_id.diz (rev 0) +++ tinytic/branches/vendor/0.0.5.3-r1/file_id.diz 2009-02-21 16:29:46 UTC (rev 37) @@ -0,0 +1,8 @@ +TinyTIC 0.0.5.3-r1 source +------------------------- +Source code to TinyTIC. +Written in C++, released +under the BSD license. +Author(s): +Mike Dillon (GSValore) +Sean Dennis (HausMaus) Added: tinytic/branches/vendor/0.0.5.3-r1/filecopy.cpp =================================================================== --- tinytic/branches/vendor/0.0.5.3-r1/filecopy.cpp (rev 0) +++ tinytic/branches/vendor/0.0.5.3-r1/filecopy.cpp 2009-02-21 16:29:46 UTC (rev 37) @@ -0,0 +1,130 @@ +/********************************************************************** + Copyright (c) 2000-2002, Michael Dillon + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + Neither the name of Crystalline Realms, Midnight's Hour BBS, + Elysium Software nor the names of their contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + OF THE POSSIBILITY OF SUCH DAMAGE. + *********************************************************************/ +/********************************************************************* + filecopy.cpp - File copying functions + *********************************************************************/ +#include "tinytic.h" +#include "filecopy.h" + + +// Function-Program constants +#define COPY_BUFFER_SIZE 4096 +void FileCopyProgress(unsigned long int FileSize, unsigned long int Copied); + +bool FileCopy(const char *Source, const char *Dest) +{ + bool RValue = true; // Return Value + char Buffer[COPY_BUFFER_SIZE]; + ifstream SFile; + ofstream OFile; + unsigned long int SFileSize; + unsigned long int Copied; + + if (Source == NULL || Dest == NULL) + { + // One of the files specified isn't allowed to be used + return (false); + } + + // Attempt to open the file + if (!FOpen( Source, SFile, ios::in|ios::binary)) + RValue = false; + if (!FOpen( Dest, OFile, ios::out|ios::binary|ios::trunc)) + RValue = false; + + // Copy the data + memset(Buffer, '\x0', COPY_BUFFER_SIZE * sizeof(char)); + + if (RValue == true) + { + SFile.seekg(0L, ios::end); + SFileSize = SFile.tellg(); + SFile.seekg(0L, ios::beg); + cout << "Copy Progress: [" << setw(10) + << SFileSize << "/"; + Copied = 0; + do { + SFile.read(Buffer, COPY_BUFFER_SIZE); + OFile.write(Buffer, SFile.gcount()); + Copied += SFile.gcount(); + FileCopyProgress(SFileSize, Copied); + memset(Buffer, '\x0', COPY_BUFFER_SIZE * sizeof(char)); + } while ((SFile.eof() == 0) && (SFile.gcount() == COPY_BUFFER_SIZE)); + FileCopyProgress(SFileSize, SFileSize); + cout << endl; + } + + // Close any open files + if (FIsOpen(SFile) == true) + SFile.close(); + if (FIsOpen(OFile) == true) + OFile.close(); + // Return + return ( RValue ); +} + +// Originally FOpen() was a template, some compilers however did not +// appropriately handle the template. +bool FOpen(const char *FileName, ifstream &File, ios::openmode Flags) +{ + bool RValue = true; + File.open(FileName, Flags); + if (!File) + { + cerr << "Unable to open " << FileName << "." << endl; + RValue = false; + } + return (RValue); +} + +bool FOpen(const char *FileName, ofstream &File, ios::openmode Flags) +{ + bool RValue = true; + File.open(FileName, Flags); + if (!File) + { + cerr << "Unable to open " << FileName << "." << endl; + RValue = false; + } + return (RValue); +} + +void FileCopyProgress(unsigned long int FileSize, unsigned long int Copied) +{ + cout << setw(10) << Copied << "]"; + cout << "\x8\x8\x8\x8\x8\x8\x8\x8\x8\x8\x8"; + cout.flush(); + UNUSED_PARAM(FileSize); +} Added: tinytic/branches/vendor/0.0.5.3-r1/filecopy.h =================================================================== --- tinytic/branches/vendor/0.0.5.3-r1/filecopy.h (rev 0) +++ tinytic/branches/vendor/0.0.5.3-r1/filecopy.h 2009-02-21 16:29:46 UTC (rev 37) @@ -0,0 +1,58 @@ +/********************************************************************** + Copyright (c) 2000-2002, Michael Dillon + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + Neither the name of Crystalline Realms, Midnight's Hour BBS, + Elysium Software nor the names of their contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + OF THE POSSIBILITY OF SUCH DAMAGE. + *********************************************************************/ +/********************************************************************* + filecopy.h - Header for the file copy functions. + *********************************************************************/ +#if !defined( FILECOPY_HEADER__H ) +#define FILECOPY_HEADER__H 1 + +bool FOpen(const char *, ifstream &, ios::openmode); +bool FOpen(const char *, ofstream &, ios::openmode); + +// File IS_OPEN Template +template<class FSTREAM_TYPE_OPEN> +bool FIsOpen( FSTREAM_TYPE_OPEN &File ) +{ + filebuf *FileBuf; + + FileBuf = File.rdbuf(); + + return ( FileBuf->is_open() ); +} + +// Other function prototypes +bool FileCopy( const char *Source, const char *Dest ); + +#endif Added: tinytic/branches/vendor/0.0.5.3-r1/headers.h =================================================================== --- tinytic/branches/vendor/0.0.5.3-r1/headers.h (rev 0) +++ tinytic/branches/vendor/0.0.5.3-r1/headers.h 2009-02-21 16:29:46 UTC (rev 37) @@ -0,0 +1,79 @@ +/********************************************************************** + Copyright (c) 2000-2002, Michael Dillon + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + Neither the name of Crystalline Realms, Midnight's Hour BBS, + Elysium Software nor the names of their contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + OF THE POSSIBILITY OF SUCH DAMAGE. + *********************************************************************/ +/********************************************************************* + headers.h - Used to include various headers for specific platforms + and standard headers. + *********************************************************************/ +#ifndef TINYTIC_HEADERS__H +#define TINYTIC_HEADERS__H 1 + +#if !defined(__cplusplus) +# error "C++ only!" +#endif /* __cplusplus */ + +#include <iostream> +#include <iomanip> +#include <fstream> +#include <string> +#include <sstream> +#include <cerrno> +#include <cctype> +#include <cstring> +#include <cstdio> +#include <cstdlib> + +#ifndef __NAMESPACE_SET +# if !defined(_STLPORT_VERSION) || defined(_STL_USE_NAMESPACES) + using namespace std; +# endif /* !_STLPORT || _STL_USE_NAMESPACES */ +# define __NAMESPACE_SET 1 +#endif /* __NAMESPACE_SET */ + +#if defined(__WATCOMC__) || defined(_WIN32) +# include <direct.h> +# include <process.h> +#endif /* __WATCOMC__ || _WIN32 */ + +#if defined(_WIN32) +# include <windows.h> +#endif /* _WIN32 */ + +#if defined(unix) || defined(linux) || defined(__GNUC__) +# include <unistd.h> +#endif /* unix || linux || __GNUC__ */ + +#include <time.h> + +#endif /* TINYTIC_HEADERS__H */ Added: tinytic/branches/vendor/0.0.5.3-r1/license.txt =================================================================== --- tinytic/branches/vendor/0.0.5.3-r1/license.txt (rev 0) +++ tinytic/branches/vendor/0.0.5.3-r1/license.txt 2009-02-21 16:29:46 UTC (rev 37) @@ -0,0 +1,32 @@ +Copyright (c) 2000-2002, Michael Dillon +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + Neither the name of Crystalline Realms, Midnight's Hour BBS, + Elysium Software nor the names of their contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. \ No newline at end of file Added: tinytic/branches/vendor/0.0.5.3-r1/parse.cpp =================================================================== --- tinytic/branches/vendor/0.0.5.3-r1/parse.cpp (rev 0) +++ tinytic/branches/vendor/0.0.5.3-r1/parse.cpp 2009-02-21 16:29:46 UTC (rev 37) @@ -0,0 +1,167 @@ +/********************************************************************** + Copyright (c) 2000-2002, Michael Dillon + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + Neither the name of Crystalline Realms, Midnight's Hour BBS, + Elysium Software nor the names of their contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + OF THE POSSIBILITY OF SUCH DAMAGE. + *********************************************************************/ +/********************************************************************* + parse.cpp - Functions for reading the configuration file. + *********************************************************************/ +#include "tinytic.h" +#include "parse.h" +#include "ticlog.h" +#include "tprocess.h" + +string szConfigFile = "tinytic.cfg"; + +// Define the strings +string Inbound; +string DataFile; +string LogFile; + +bool ReadConfigFile(void) +{ + string Log; + string szTmp; + char szTmpBuffer[ BUFFER_MAXLEN ] = "\x0"; + ifstream fConfig; + + // Is a command line config file specified ? + if (szCmdConfigFile != "") + { + // Yes, use it (overrides default) + fConfig.open(szCmdConfigFile.c_str(), ios::in); + } + else + { + // No, use defaulted config file. + szTmp = szHomeDir + szConfigFile; + fConfig.open(szTmp.c_str(), ios::in); + } + + if (!fConfig) + { + cerr << "Unable to open " << szConfigFile.c_str() << "!" << endl; + cerr << "Make sure this file is in the same directory as this program." << endl; + + return (false); + } + + + while (!fConfig.eof()) + { + fConfig >> ws >> szTmpBuffer; + if (*szTmpBuffer == '#' || *szTmpBuffer == ';') + { + // This is commments, ignore + fConfig.getline(szTmpBuffer, BUFFER_MAXLEN); + } + else + { + if (stricmp(szTmpBuffer, "Inbound") == 0) + { + // Inbound directory specified + fConfig >> ws >> szTmpBuffer; + Inbound = szTmpBuffer; + + if ((Inbound == "") || (VerifyDirectory(Inbound.c_str()) == false)) + { +#if defined(__TINYTIC_WINDOWS) || defined(__TINYTIC_OS2) + Inbound = ".\\"; +#elif defined(__TINYTIC_POSIX) + Inbound = "./"; +#endif + } + + Log = "Checking for .TIC files in \'"; + Log += szTmpBuffer; + Log += "\'."; + PutLog(Log.c_str(), INFO); + } + else if (stricmp(szTmpBuffer, "DataFile") == 0) + { + // DataFile directory/file specified + fConfig >> ws >> szTmpBuffer; + DataFile = szTmpBuffer; + + if ((DataFile == "") || (VerifyFileUsable(DataFile.c_str()) == false)) + { +#if defined(__TINYTIC_WINDOWS) || defined(__TINYTIC_OS2) + DataFile = ".\\tinytic.dat"; +#elif defined(__TINYTIC_POSIX) + DataFile = "./tinytic.dat"; +#endif + } + + + if (szCmdDataFile == "") + { + Log = "Saving new entries to \'"; + Log += szTmpBuffer; + Log += "\'."; + PutLog( Log.c_str(), INFO ); + } + } + else if (stricmp(szTmpBuffer, "LogFile") == 0) + { + // DataFile directory/file specified + fConfig >> ws >> szTmpBuffer; + szLogFile = szTmpBuffer; + + if ((szLogFile == "") || (VerifyFileUsable(szLogFile.c_str()) == false)) + { +#if defined(__TINYTIC_WINDOWS) || defined(__TINYTIC_OS2) + szLogFile = ".\\tinytic.log"; +#elif defined(__TINYTIC_POSIX) + szLogFile = "./tinytic.log"; +#endif + } + + if (szCmdLogFile == "") + { + cout << "Using LogFile \'" + << szLogFile.c_str() + << "\'." + << endl; + } + } + else + { + fConfig.getline(szTmpBuffer, BUFFER_MAXLEN); + } + } + } + + fConfig.close(); + + return (true); +} + Added: tinytic/branches/vendor/0.0.5.3-r1/parse.h =================================================================== --- tinytic/branches/vendor/0.0.5.3-r1/parse.h (rev 0) +++ tinytic/branches/vendor/0.0.5.3-r1/parse.h 2009-02-21 16:29:46 UTC (rev 37) @@ -0,0 +1,55 @@ +/********************************************************************** + Copyright (c) 2000-2002, Michael Dillon + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + Neither the name of Crystalline Realms, Midnight's Hour BBS, + Elysium Software nor the names of their contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + OF THE POSSIBILITY OF SUCH DAMAGE. + *********************************************************************/ +/********************************************************************** + parse.h - Header file for the config file parser function + *********************************************************************/ +#if !defined( PARSE_HEADER__H ) +#define PARSE_HEADER__H 1 + +extern string szConfigFile; +#define BUFFER_MAXLEN 1024 + +// Inbound and DataFile directory names +extern string Inbound; +extern string DataFile; +extern string LogFile; + +// Function Prototypes +bool ReadConfigFile(void) ; // Reads the file specified by 'CONF' + +#endif + + + Added: tinytic/branches/vendor/0.0.5.3-r1/pkg/AUTORULE.BAT =================================================================== --- tinytic/branches/vendor/0.0.5.3-r1/pkg/AUTORULE.BAT (rev 0) +++ tinytic/branches/vendor/0.0.5.3-r1/pkg/AUTORULE.BAT 2009-02-21 16:29:46 UTC (rev 37) @@ -0,0 +1,19 @@ +@echo off +cls +d: +cd \tg\post +mpostnti -tbbscarn.txt -cbbscarn.cfg +mpostnti -taudio.txt -caudio.cfg +mpostnti -tmodems.txt -cmodems.cfg +mpostnti -tgenbbs.txt -cgenbbs.cfg +mpostnti -toschat.txt -coschat.cfg +mpostnti -tstntom.txt -ctomor.cfg +mpostnti -tstnshot.txt -cshotgun.cfg +mpostnti -tstnbbssoft.txt -cbbssoft.cfg +mpostnti -tstndoors.txt -cdoors.cfg +mpostnti -tfrontend.txt -cfront.cfg + + + + + Property changes on: tinytic/branches/vendor/0.0.5.3-r1/pkg/AUTORULE.BAT ___________________________________________________________________ Added: svn:executable + * Added: tinytic/branches/vendor/0.0.5.3-r1/pkg/EXAMPLE.CFG =================================================================== --- tinytic/branches/vendor/0.0.5.3-r1/pkg/EXAMPLE.CFG (rev 0) +++ tinytic/branches/vendor/0.0.5.3-r1/pkg/EXAMPLE.CFG 2009-02-21 16:29:46 UTC (rev 37) @@ -0,0 +1,24 @@ +; Configuration File + +; Inbound : This specifies where your mailer will store the TIC files +; and their companion files. +Inbound /home/user + +; DataFile : This tells what file will be modified when a TIC was sucessfully +; processed, it will contain the Filename, it's size, and +; a copy of the description field within the TIC. +DataFile /home/user/datafile.txt + +; LogFile : This tells TinyTic where to store the log file and what it will +; be called. +LogFile /home/user/tinytic.log + +; AreaName : Use this to specify the existance of areas. An area is given +; in each TIC file and will be looked up here. If a TIC file has +; and area not given here, that TIC will be left alone. +; Format for AreaName is: +; Areaname <NAME_TAG> <Destination> +; NAME_TAG is the Area tag that is given in the TIC files. +; Destination is where the files will be stored if they are associated +; with the specified area. +AreaName FIDONEWS /home/user/fidonews Added: tinytic/branches/vendor/0.0.5.3-r1/pkg/FOOTER.TXT =================================================================== --- tinytic/branches/vendor/0.0.5.3-r1/pkg/FOOTER.TXT (rev 0) +++ tinytic/branches/vendor/0.0.5.3-r1/pkg/FOOTER.TXT 2009-02-21 16:29:46 UTC (rev 37) @@ -0,0 +1,14 @@ + +------------------------------------------------------------------------------- + +All of the above files are available via email FREQ. To do so, simply send +an email to ah...@so... with the subject of FREQ and in the message +body, FREQ <filename>. For a list of magic names, FREQ MAGIC. + +------------------------------------------------------------------------------- + + This new files announcement was created using TinyTic/Win32 v0.0.5b. + (http://members.darktech.org/gsvalore) + +------------------------------------------------------------------------------- + Added: tinytic/branches/vendor/0.0.5.3-r1/pkg/HEADER.TXT =================================================================== --- tinytic/branches/vendor/0.0.5.3-r1/pkg/HEADER.TXT (rev 0) +++ tinytic/branches/vendor/0.0.5.3-r1/pkg/HEADER.TXT 2009-02-21 16:29:46 UTC (rev 37) @@ -0,0 +1,11 @@ + ___ __ __ _________ + .---.-.' _| |_.-----.----. |--.-----.--.--.----.-----. / /__ | + | _ | _| _| -__| _| | _ | | | _|__ --|,' ,'| __| + |___._|__| |____|_____|__| |__|__|_____|_____|__| |_____/__/ |______| + + http://ah2.darktech.org +------------------------------------------------------------------------------- + + The following files were received today: + + \ No newline at end of file Added: tinytic/branches/vendor/0.0.5.3-r1/pkg/MAILPROC.BAT =================================================================== --- tinytic/branches/vendor/0.0.5.3-r1/pkg/MAILPROC.BAT (rev 0) +++ tinytic/branches/vendor/0.0.5.3-r1/pkg/MAILPROC.BAT 2009-02-21 16:29:46 UTC (rev 37) @@ -0,0 +1,21 @@ +@echo off +cd d:\sbbs\exec + +rem Process inbound mail +sbbsecho /lesy + +rem Process TIC files +tinytic + +rem Adds new files to the message base +addfiles * /s /z + +rem Combines header-announcement-footer together +copy header.txt+newfiles.txt+footer.txt announce.txt + +rem Posts new file announcement into an echo +smbutil id:\sbbs\exec\newfiles.txt d:\sbbs\data\fidoreq.shd < d:\sbbs\exec\fido.hdr + +rem Process outbound mail (to include file announcements) +sbbsecho /linf + Property changes on: tinytic/branches/vendor/0.0.5.3-r1/pkg/MAILPROC.BAT ___________________________________________________________________ Added: svn:executable + * Added: tinytic/branches/vendor/0.0.5.3-r1/pkg/MPOST.DOC =================================================================== --- tinytic/branches/vendor/0.0.5.3-r1/pkg/MPOST.DOC (rev 0) +++ tinytic/branches/vendor/0.0.5.3-r1/pkg/MPOST.DOC 2009-02-21 16:29:46 UTC (rev 37) @@ -0,0 +1,87 @@ +MPOST.DOC +Supplement for TinyTIC File Handler... [truncated message content] |
From: <ja...@us...> - 2009-02-21 16:27:05
|
Revision: 36 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=36&view=rev Author: jame Date: 2009-02-21 16:26:55 +0000 (Sat, 21 Feb 2009) Log Message: ----------- Import TinyTIC v0.0.5.3 Added Paths: ----------- tinytic/branches/vendor/0.0.5.3/ tinytic/branches/vendor/0.0.5.3/CDirect.cpp tinytic/branches/vendor/0.0.5.3/CDirect.h tinytic/branches/vendor/0.0.5.3/TinyTIC.dsp tinytic/branches/vendor/0.0.5.3/TinyTIC.dsw tinytic/branches/vendor/0.0.5.3/compile.txt tinytic/branches/vendor/0.0.5.3/filecopy.cpp tinytic/branches/vendor/0.0.5.3/filecopy.h tinytic/branches/vendor/0.0.5.3/headers.h tinytic/branches/vendor/0.0.5.3/license.txt tinytic/branches/vendor/0.0.5.3/parse.cpp tinytic/branches/vendor/0.0.5.3/parse.h tinytic/branches/vendor/0.0.5.3/pkg/ tinytic/branches/vendor/0.0.5.3/pkg/AUTORULE.BAT tinytic/branches/vendor/0.0.5.3/pkg/EXAMPLE.CFG tinytic/branches/vendor/0.0.5.3/pkg/FOOTER.TXT tinytic/branches/vendor/0.0.5.3/pkg/HEADER.TXT tinytic/branches/vendor/0.0.5.3/pkg/MAILPROC.BAT tinytic/branches/vendor/0.0.5.3/pkg/MPOST.DOC tinytic/branches/vendor/0.0.5.3/pkg/SYNC.DOC tinytic/branches/vendor/0.0.5.3/pkg/SYSOP.DOC tinytic/branches/vendor/0.0.5.3/pkg/TINYTIC.CFG tinytic/branches/vendor/0.0.5.3/pkg/license.txt tinytic/branches/vendor/0.0.5.3/pkg/packing.lst tinytic/branches/vendor/0.0.5.3/pkg/tinytic.rev tinytic/branches/vendor/0.0.5.3/ticlog.cpp tinytic/branches/vendor/0.0.5.3/ticlog.h tinytic/branches/vendor/0.0.5.3/tinytic.cpp tinytic/branches/vendor/0.0.5.3/tinytic.h tinytic/branches/vendor/0.0.5.3/tprocess.cpp tinytic/branches/vendor/0.0.5.3/tprocess.h Added: tinytic/branches/vendor/0.0.5.3/CDirect.cpp =================================================================== --- tinytic/branches/vendor/0.0.5.3/CDirect.cpp (rev 0) +++ tinytic/branches/vendor/0.0.5.3/CDirect.cpp 2009-02-21 16:26:55 UTC (rev 36) @@ -0,0 +1,416 @@ +/********************************************************************** + Copyright (c) 2000-2002, Michael Dillon + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + Neither the name of Crystalline Realms, Midnight's Hour BBS, + Elysium Software nor the names of their contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + OF THE POSSIBILITY OF SUCH DAMAGE. + *********************************************************************/ +/********************************************************************* + CDirect.cpp - Cross-platform directory searching class. + *********************************************************************/ +#include "CDirect.h" + +// Default constructor, looks in current directory and searches for all files +CDirect::CDirect() +{ + // Default to searching for all files + _pattern = "*.*"; + // Default to current directory + _directory = "."; + + // Flag the directory as "Not-in-use" + _open = false; + + // Call the FixPath to make sure the directory has a trailing slash + FixPath(); + + // Set the Max count to 0 + _MaxFiles = 0L; + + // Get the max count + GetMaxFiles(); +} + +// Secondary constructor, allows for specified directory and match pattern +CDirect::CDirect( const char *pattern, const char *directory ) +{ + // Use the given pattern + _pattern = pattern; + // Use the given directory + _directory = directory; + + // flag the directory as "Not-In-Use" + _open = false; + + // Call FixPath to make sure the directory has a trailing slash + FixPath(); + + // Set the Max count to 0 + _MaxFiles = 0L; + + // Get the max count + GetMaxFiles(); +} + +// Destructor, closes anything that was opened +CDirect::~CDirect() +{ + // Check to see if the directory was in use or was opened. + if (_open == true) + { +#if defined(__DIRECT__FILE_SEARCH_WINDOWS) || defined(__DIRECT__FILE_SEARCH_OS2) +// ----------------------- +// Windows & OS/2 Specific +// ----------------------- + // Close the find search + _findclose(hFileSearch); +#elif defined(__DIRECT_FILE_SEARCH_POSIX) +// ----------------------- +// POSIX Specific +// ----------------------- + // Close the open directory + closedir(hDir); +#endif + } +} + +// Find: +// Searches for entries of files matching the pattern +// +bool CDirect::Find( void ) +{ + // Return value for this function + bool _FindReturn = false; + + // Has the directory been accessed already ? + if (_open == false) + { + // No, find the first file entry matching the pattern. + _open = FindFirst(); + // Set the return to that of FindFirst(); + _FindReturn = _open; + } + else + { + // Yes, Find the next file entry + _FindReturn = FindNext(); + } + + // Return + return ( _FindReturn ); +} + +// FindFirst: Searches for the first entry matching the pattern +bool CDirect::FindFirst(void) +{ + // Return value for FindFirst() + bool _FindFirstReturn = false; + +#if defined(__DIRECT__FILE_SEARCH_WINDOWS) || defined(__DIRECT__FILE_SEARCH_OS2) +// ------------------------ +// Windows & OS/2 Specific +// ------------------------ + // Create a temporary buffer + string szTmpBuf; + + // Copy the given directory to the temporary buffer + szTmpBuf = _directory.c_str(); + + // Copy the pattern to the buffer + szTmpBuf += _pattern.c_str(); + + // Search for the first entry matching the pattern + if ((hFileSearch = _findfirst(szTmpBuf.c_str(), &hFindData)) > -1L) + { + // Entry found, update the hFileData structure + ValidateData(); + // Set the return to true + _FindFirstReturn = true; + } +#elif defined(__DIRECT__FILE_SEARCH_POSIX) +// ------------------------- +// POSIX Specific +// ------------------------- + // Attempt to open the specified directory + if ((hDir = opendir(_directory.c_str())) != NULL) + { + // Read each entry of the directory until a match was found + // or the directory has no more entries. + while ((hDirent = readdir(hDir)) != NULL) + { + // Check to see if the file's name matches the given + // pattern. +#if defined(DJGPP) + if (fnmatch(_pattern.c_str(), hDirent->d_name, FNM_NOESCAPE | FNM_NOCASE) == 0) +#else + if (fnmatch(_pattern.c_str(), hDirent->d_name, 0) == 0) +#endif + { + // Yes, update the hFileData structure + ValidateData(); + // Set the return to true + _FindFirstReturn = true; + // Get out of the loop + break; + } + } + } +#endif + + // Return + return (_FindFirstReturn); +} + +// FindNext: Searches for the next entry in the directory matching the pattern +bool CDirect::FindNext(void) +{ + // Clear the value of hFileData + DestroyValues(); + // Return value for FindNext + bool _FindNextReturn = false; + +#if defined(__DIRECT__FILE_SEARCH_WINDOWS) || defined(__DIRECT__FILE_SEARCH_OS2) +// ------------------------ +// Windows & OS/2 Specific +// ------------------------ + // Search for the next entry + if (_findnext(hFileSearch, &hFindData) == 0) + { + // Found, Update the hFileData structure + ValidateData(); + // Set the return to true + _FindNextReturn = true; + } +#elif defined(__DIRECT__FILE_SEARCH_POSIX) +// ------------------------- +// POSIX Specific +// ------------------------- + // Attempt to read the directory for more entries or + // until there are no more entries to be found. + while ( ( hDirent = readdir( hDir ) ) != NULL ) + { + // Check to see if the file name matches that of the pattern +#if defined(DJGPP) + if (fnmatch(_pattern.c_str(), hDirent->d_name, FNM_NOESCAPE | FNM_NOCASE) == 0) +#else + if (fnmatch(_pattern.c_str(), hDirent->d_name, 0) == 0) +#endif + { + // Yes, update the hFileData structure + ValidateData(); + // Set the return to true + _FindNextReturn = true; + // Get Out of the loop + break; + } + } +#endif + + // Return + return (_FindNextReturn); +} + +// ValidateData: Updates the values for the hFileData structure +void CDirect::ValidateData(void) +{ + // Temporary string + string szTmpBuffer; + + // Copy the directory to the TempBuffer + szTmpBuffer = _directory.c_str(); + +#if defined(__DIRECT__FILE_SEARCH_WINDOWS) || defined(__DIRECT__FILE_SEARCH_OS2) +// ----------------------- +// Windows & OS/2 Specific +// ----------------------- + // Copy the file name found in the search to the hFileData structure + strcpy(hFileData.Name, hFindData.name); +#elif defined(__DIRECT__FILE_SEARCH_POSIX) +// ----------------------- +// POSIX Specific +// ----------------------- + // Copy the file name found with readdir() to the hFileData structure + strcpy(hFileData.Name, hDirent->d_name); +#endif + + // Copy the file name onto the directory + szTmpBuffer += hFileData.Name; + + // Call stat() to get information about the file. + if (stat(szTmpBuffer.c_str(), &hFStat) == 0) + { + // Set the last access time + hFileData.AccessTime = ( time_t )hFStat.st_atime; + // Set the creation time + hFileData.CreateTime = ( time_t )hFStat.st_ctime; + // Set the last write time + hFileData.WriteTime = ( time_t )hFStat.st_mtime; + // Set the size + hFileData.Size = hFStat.st_size; + // Set the mode + hFileData.Mode = hFStat.st_mode; + } + else + { + // Stat failed, destroy all values except the file's name + hFileData.AccessTime = ( time_t )0; + hFileData.CreateTime = ( time_t )0; + hFileData.WriteTime = ( time_t )0; + hFileData.Size = 0L; + hFileData.Mode = 0; + } +} + +// GetInfo: Return's the current entry for a matching file (if any) +FileData CDirect::GetInfo(void) +{ + // Return the hFileData structure + return (hFileData); +} + +// Clears the values for the hFileData structure +void CDirect::DestroyValues(void) +{ + // Set all values to that equivalent to NULL + hFileData.Mode = 0; + hFileData.AccessTime = ( time_t )0; + hFileData.CreateTime = ( time_t )0; + hFileData.WriteTime = ( time_t )0; + hFileData.Size = 0L; + memset(hFileData.Name, 0, sizeof(hFileData.Name)); +} + +// FixPath: Ensure there's a trailing slash on the directory name +void CDirect::FixPath(void) +{ + // Temporary buffer + string szTmpBuffer; + + // Temporary iterator + string::iterator idx; + + // Copy the directory into the buffer + szTmpBuffer = _directory.c_str(); + + // Set the iterator to the end of the buffer + idx = szTmpBuffer.end(); + +#if defined(__DIRECT__FILE_SEARCH_WINDOWS) || defined(__DIRECT__FILE_SEARCH_OS2) +// ----------------------- +// Windows & OS/2 Specific +// ----------------------- + // Check to see if there's a trailing backslash + if (*idx != '\\') + { + // No, add one. + szTmpBuffer += '\\'; + } +#elif defined(__DIRECT__FILE_SEARCH_POSIX) +// ----------------------- +// POSIX Specific +// ----------------------- + // Check for a trailing slash + if (*idx != '/') + { + // No, add one. + szTmpBuffer += '/'; + } +#endif + + // Save the changes + _directory = szTmpBuffer; +} + +void CDirect::GetMaxFiles(void) +{ +#if defined(__DIRECT__FILE_SEARCH_WINDOWS) || defined(__DIRECT_FILE_SEARCH_OS2) +// ------------------------ +// Windows & OS/2 Specific +// ------------------------ + // Create a search handle + long hSearch = -1L; + // Create a find data structure to hold information + struct _finddata_t hFData; + // Temporary string to hold the full path & pattern + string szTmp; + + // Combine the directory and pattern into a full path + szTmp = _directory.c_str(); + szTmp += _pattern.c_str(); + // Create a search handle and try to find the first instance of + // a file matching the pattern, if none then MaxFiles will remain + // zero + if ((hSearch = _findfirst(szTmp.c_str(), &hFData)) > -1L) + { + // increment the max files value + _MaxFiles++; + // Search for other files after the first one until + // there are no more files to search through. + while (_findnext(hSearch, &hFData) == 0) + { + // increment, file found. + _MaxFiles++; + } + // Close the search, finish. + _findclose(hSearch); + } +#elif defined(__DIRECT__FILE_SEARCH_POSIX) +// ------------------------- +// POSIX Specific +// ------------------------- + // Create a DIRectory structure + DIR *hDirec; + // Create a local instance to hold information obtained + struct dirent *hDirentLocal; + // Attempt to open the specified directory + if ((hDirec = opendir( _directory.c_str())) != NULL) + { + // Read each entry of the directory until a match was found + // or the directory has no more entries. + while ((hDirentLocal = readdir(hDirec)) != NULL) + { + // Check to see if the file's name matches the given + // pattern. +#if defined(DJGPP) + if (fnmatch(_pattern.c_str(), hDirentLocal->d_name, FNM_NOESCAPE | FNM_NOCASE) == 0) +#else + if (fnmatch(_pattern.c_str(), hDirentLocal->d_name, 0) == 0) +#endif + { + // increment the file count. + _MaxFiles++; + } + } + // Terminate the search + closedir(hDirec); + } +#endif +} + Added: tinytic/branches/vendor/0.0.5.3/CDirect.h =================================================================== --- tinytic/branches/vendor/0.0.5.3/CDirect.h (rev 0) +++ tinytic/branches/vendor/0.0.5.3/CDirect.h 2009-02-21 16:26:55 UTC (rev 36) @@ -0,0 +1,172 @@ +/********************************************************************** + Copyright (c) 2000-2002, Michael Dillon + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + Neither the name of Crystalline Realms, Midnight's Hour BBS, + Elysium Software nor the names of their contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + OF THE POSSIBILITY OF SUCH DAMAGE. + *********************************************************************/ +/********************************************************************* + CDirect.h - class for handling cross-platform directory searching. + *********************************************************************/ +#if !defined (__DIRECT__FILE_SEARCH___H) +#define __DIRECT__FILE_SEARCH___H 1 + +#ifndef __cplusplus +# error "This source REQUIRES C++ to function" +#endif + +//#include <iostream> +//#include <string> // STL String header + +#include "headers.h" +#include "tinytic.h" // This will define the system type we can use + +//#ifndef __NAMESPACE_SET +//# if !defined(STLPORT) || defined(_STL_USE_NAMESPACES) +// using namespace std ; +//# endif /* !STL_PORT || _STL_USE_NAMESPACES */ +//# define __NAMESPACE_SET 1 +//#endif /* __NAMESPACE_SET */ + +#include <sys/types.h> // Required for stat() +#include <sys/stat.h> // Definition for stat() + +// Check to see if the definitions are already set, if they are +// then undefine them. +// __DIRECT__FILE_SEARCH_WINDOWS : Definition set for Windows based systems +// __DIRECT__FILE_SEARCH_POSIX : Definition set for POSIX enabled systems + +#undef __DIRECT__FILE_SEARCH_WINDOWS +#undef __DIRECT__FILE_SEARCH_POSIX +#undef __DIRECT__FILE_SEARCH_OS2 + +#if defined(__TINYTIC_WINDOWS) +# define __DIRECT__FILE_SEARCH_WINDOWS +# include <io.h> +# include <direct.h> +#elif defined(__TINYTIC_POSIX) +# define __DIRECT__FILE_SEARCH_POSIX +# include <dirent.h> +# include <fnmatch.h> +#elif defined(__TINYTIC_OS2) +# define __DIRECT__FILE_SEARCH_OS2 +# include <io.h> +#else +# error "Please define the correct compiler type" +#endif + +// Primary structure used by CDirect +typedef struct { + unsigned short int Mode; // File's Mode settings + time_t AccessTime; // Last Access Time + time_t CreateTime; // File creation date + time_t WriteTime; // Last Write time + unsigned long int Size; // Size of file + char Name[4096]; // File's Name +} FileData; + +class CDirect +{ +public: + CDirect(); + CDirect(const char *pattern, const char *directory = "."); + ~CDirect(); + + // Find: Calls on FindNext or FindFirst depending on if the + // directory has been opened. + bool Find(void); + // GetInfo: Returns the current FileData for any given file + // found. + FileData GetInfo(void); + // GetCount: Returns the number of files that matched the pattern + // in the given directory. + unsigned long int GetCount(void) { return (_MaxFiles); } + +private: + // FindFirst: Searches for the first entry matching the given pattern + bool FindFirst(void); + // FindNext: Searches for the next relevant entry matching the given + // pattern + bool FindNext(void); + // ValidateData: Sets the values for the FileData structure + void ValidateData(void); + // DestroyValues: Clears the values for the FileData structure + // This is done before each call to FindNext and + // FindFirst + void DestroyValues(void); + // FixPath: Makes sure there is a trailing slash for the directory + // given + void FixPath(void); + // GetMaxFiles: Count the number of files matching the pattern in + // the directory. + void GetMaxFiles(void); + + // hFileData: Internal FileData structure, this will be modified + // by ValidateData primarily, and sent to a requesting + // program by GetInfo + FileData hFileData; + // _pattern: Internal storage for the 'pattern' passed at + // construction time. + string _pattern; + // _directory: Internal storage for the 'directory' passed at + // construction time. + string _directory; + + // _open: Internal flag to see if the directory is in access or + // was unable to be opened. + bool _open; + // hFStat: Structure used to gather info from stat() and put it + // in the hFileData structure + struct stat hFStat; + // _MaxFiles: Internal value that indicates how many files were + // found matching the pattern + unsigned long int _MaxFiles; + +#if defined(__DIRECT__FILE_SEARCH_WINDOWS) || defined(__DIRECT__FILE_SEARCH_OS2) +// -------------------------- +// Windows & OS/2 Specific additions +// -------------------------- + // hFileSearch: Find handle passed by findfirst() + long hFileSearch; + // hFindData: Structure used by findfirst() and findnext() + struct _finddata_t hFindData; +#elif defined(__DIRECT__FILE_SEARCH_POSIX) +// -------------------------- +// POSIX Specific additions +// -------------------------- + // hDir: Directory handle passed from opendir() + DIR *hDir; + // hDirent: Passed from readdir(), holds the file that was found. + struct dirent *hDirent; +#endif +}; + + +#endif Added: tinytic/branches/vendor/0.0.5.3/TinyTIC.dsp =================================================================== --- tinytic/branches/vendor/0.0.5.3/TinyTIC.dsp (rev 0) +++ tinytic/branches/vendor/0.0.5.3/TinyTIC.dsp 2009-02-21 16:26:55 UTC (rev 36) @@ -0,0 +1,149 @@ +# Microsoft Developer Studio Project File - Name="TinyTIC" - Package Owner=<4> +# Microsoft Developer Studio Generated Build File, Format Version 6.00 +# ** DO NOT EDIT ** + +# TARGTYPE "Win32 (x86) Console Application" 0x0103 + +CFG=TinyTIC - Win32 Debug +!MESSAGE This is not a valid makefile. To build this project using NMAKE, +!MESSAGE use the Export Makefile command and run +!MESSAGE +!MESSAGE NMAKE /f "TinyTIC.mak". +!MESSAGE +!MESSAGE You can specify a configuration when running NMAKE +!MESSAGE by defining the macro CFG on the command line. For example: +!MESSAGE +!MESSAGE NMAKE /f "TinyTIC.mak" CFG="TinyTIC - Win32 Debug" +!MESSAGE +!MESSAGE Possible choices for configuration are: +!MESSAGE +!MESSAGE "TinyTIC - Win32 Release" (based on "Win32 (x86) Console Application") +!MESSAGE "TinyTIC - Win32 Debug" (based on "Win32 (x86) Console Application") +!MESSAGE + +# Begin Project +# PROP AllowPerConfigDependencies 0 +# PROP Scc_ProjName "" +# PROP Scc_LocalPath "" +CPP=cl.exe +RSC=rc.exe + +!IF "$(CFG)" == "TinyTIC - Win32 Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release" +# PROP BASE Intermediate_Dir "Release" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release" +# PROP Intermediate_Dir "Release" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c +# ADD CPP /nologo /MD /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 + +!ELSEIF "$(CFG)" == "TinyTIC - Win32 Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug" +# PROP BASE Intermediate_Dir "Debug" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug" +# PROP Intermediate_Dir "Debug" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c +# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept + +!ENDIF + +# Begin Target + +# Name "TinyTIC - Win32 Release" +# Name "TinyTIC - Win32 Debug" +# Begin Group "Source Files" + +# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat" +# Begin Source File + +SOURCE=.\CDirect.cpp +# End Source File +# Begin Source File + +SOURCE=.\filecopy.cpp +# End Source File +# Begin Source File + +SOURCE=.\parse.cpp +# End Source File +# Begin Source File + +SOURCE=.\ticlog.cpp +# End Source File +# Begin Source File + +SOURCE=.\tinytic.cpp +# End Source File +# Begin Source File + +SOURCE=.\tprocess.cpp +# End Source File +# End Group +# Begin Group "Header Files" + +# PROP Default_Filter "h;hpp;hxx;hm;inl" +# Begin Source File + +SOURCE=.\CDirect.h +# End Source File +# Begin Source File + +SOURCE=.\filecopy.h +# End Source File +# Begin Source File + +SOURCE=.\headers.h +# End Source File +# Begin Source File + +SOURCE=.\parse.h +# End Source File +# Begin Source File + +SOURCE=.\ticlog.h +# End Source File +# Begin Source File + +SOURCE=.\tinytic.h +# End Source File +# Begin Source File + +SOURCE=.\tprocess.h +# End Source File +# End Group +# Begin Group "Resource Files" + +# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe" +# End Group +# End Target +# End Project Added: tinytic/branches/vendor/0.0.5.3/TinyTIC.dsw =================================================================== --- tinytic/branches/vendor/0.0.5.3/TinyTIC.dsw (rev 0) +++ tinytic/branches/vendor/0.0.5.3/TinyTIC.dsw 2009-02-21 16:26:55 UTC (rev 36) @@ -0,0 +1,29 @@ +Microsoft Developer Studio Workspace File, Format Version 6.00 +# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE! + +############################################################################### + +Project: "TinyTIC"=.\TinyTIC.dsp - Package Owner=<4> + +Package=<5> +{{{ +}}} + +Package=<4> +{{{ +}}} + +############################################################################### + +Global: + +Package=<5> +{{{ +}}} + +Package=<3> +{{{ +}}} + +############################################################################### + Added: tinytic/branches/vendor/0.0.5.3/compile.txt =================================================================== --- tinytic/branches/vendor/0.0.5.3/compile.txt (rev 0) +++ tinytic/branches/vendor/0.0.5.3/compile.txt 2009-02-21 16:26:55 UTC (rev 36) @@ -0,0 +1,25 @@ +INFORMATION ON COMPILING TINYTIC: + +Files that have to be compiled: +CDirect.cpp, filecopy.cpp, tprocess.cpp, parse.cpp, ticlog.cpp, and +tinytic.cpp + +Replace <file> with one of those required, listed above. + +I wrote this short document because I am not good at writing +makefiles ;) + +Watcom C++: +[DOS/16]: wpp <file> -bt=dos -l=dos -zq -Ox -d0 -d_NOTHREADS -W3 +[DOS/32]: wpp386 <file> -bt=dos -l=dos32x -zq -Ox -d0 -d_NOTHREADS -W3 +[OS/2]: wpp386 <file> -bt=os2 -l=os2v2 -zq -Ox -d0 -W3 +[Windows]: wpp386 <file> -bt=windows -l=windows -zq -Ox -d0 -W3 + +Do note that I used STLport to compile these under Watcom C++! + +Visual C++ v6: +[Windows]: cl <file> -Ox -nologo -d0 -GX -W3 + +GCC 2.9+: +[ALL]: g++ <file> -Wall -s -c + g++ *.o -o tinytic \ No newline at end of file Added: tinytic/branches/vendor/0.0.5.3/filecopy.cpp =================================================================== --- tinytic/branches/vendor/0.0.5.3/filecopy.cpp (rev 0) +++ tinytic/branches/vendor/0.0.5.3/filecopy.cpp 2009-02-21 16:26:55 UTC (rev 36) @@ -0,0 +1,130 @@ +/********************************************************************** + Copyright (c) 2000-2002, Michael Dillon + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + Neither the name of Crystalline Realms, Midnight's Hour BBS, + Elysium Software nor the names of their contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + OF THE POSSIBILITY OF SUCH DAMAGE. + *********************************************************************/ +/********************************************************************* + filecopy.cpp - File copying functions + *********************************************************************/ +#include "tinytic.h" +#include "filecopy.h" + + +// Function-Program constants +#define COPY_BUFFER_SIZE 4096 +void FileCopyProgress(unsigned long int FileSize, unsigned long int Copied); + +bool FileCopy(const char *Source, const char *Dest) +{ + bool RValue = true; // Return Value + char Buffer[COPY_BUFFER_SIZE]; + ifstream SFile; + ofstream OFile; + unsigned long int SFileSize; + unsigned long int Copied; + + if (Source == NULL || Dest == NULL) + { + // One of the files specified isn't allowed to be used + return (false); + } + + // Attempt to open the file + if (!FOpen( Source, SFile, ios::in|ios::binary)) + RValue = false; + if (!FOpen( Dest, OFile, ios::out|ios::binary|ios::trunc)) + RValue = false; + + // Copy the data + memset(Buffer, '\x0', COPY_BUFFER_SIZE * sizeof(char)); + + if (RValue == true) + { + SFile.seekg(0L, ios::end); + SFileSize = SFile.tellg(); + SFile.seekg(0L, ios::beg); + cout << "Copy Progress: [" << setw(10) + << SFileSize << "/"; + Copied = 0; + do { + SFile.read(Buffer, COPY_BUFFER_SIZE); + OFile.write(Buffer, SFile.gcount()); + Copied += SFile.gcount(); + FileCopyProgress(SFileSize, Copied); + memset(Buffer, '\x0', COPY_BUFFER_SIZE * sizeof(char)); + } while ((SFile.eof() == 0) && (SFile.gcount() == COPY_BUFFER_SIZE)); + FileCopyProgress(SFileSize, SFileSize); + cout << endl; + } + + // Close any open files + if (FIsOpen(SFile) == true) + SFile.close(); + if (FIsOpen(OFile) == true) + OFile.close(); + // Return + return ( RValue ); +} + +// Originally FOpen() was a template, some compilers however did not +// appropriately handle the template. +bool FOpen(const char *FileName, ifstream &File, const short int Flags) +{ + bool RValue = true; + File.open(FileName, Flags); + if (!File) + { + cerr << "Unable to open " << FileName << "." << endl; + RValue = false; + } + return (RValue); +} + +bool FOpen(const char *FileName, ofstream &File, const short int Flags) +{ + bool RValue = true; + File.open(FileName, Flags); + if (!File) + { + cerr << "Unable to open " << FileName << "." << endl; + RValue = false; + } + return (RValue); +} + +void FileCopyProgress(unsigned long int FileSize, unsigned long int Copied) +{ + cout << setw(10) << Copied << "]"; + cout << "\x8\x8\x8\x8\x8\x8\x8\x8\x8\x8\x8"; + cout.flush(); + UNUSED_PARAM(FileSize); +} Added: tinytic/branches/vendor/0.0.5.3/filecopy.h =================================================================== --- tinytic/branches/vendor/0.0.5.3/filecopy.h (rev 0) +++ tinytic/branches/vendor/0.0.5.3/filecopy.h 2009-02-21 16:26:55 UTC (rev 36) @@ -0,0 +1,58 @@ +/********************************************************************** + Copyright (c) 2000-2002, Michael Dillon + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + Neither the name of Crystalline Realms, Midnight's Hour BBS, + Elysium Software nor the names of their contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + OF THE POSSIBILITY OF SUCH DAMAGE. + *********************************************************************/ +/********************************************************************* + filecopy.h - Header for the file copy functions. + *********************************************************************/ +#if !defined( FILECOPY_HEADER__H ) +#define FILECOPY_HEADER__H 1 + +bool FOpen(const char *, ifstream &, const short int); +bool FOpen(const char *, ofstream &, const short int); + +// File IS_OPEN Template +template<class FSTREAM_TYPE_OPEN> +bool FIsOpen( FSTREAM_TYPE_OPEN &File ) +{ + filebuf *FileBuf; + + FileBuf = File.rdbuf(); + + return ( FileBuf->is_open() ); +} + +// Other function prototypes +bool FileCopy( const char *Source, const char *Dest ); + +#endif Added: tinytic/branches/vendor/0.0.5.3/headers.h =================================================================== --- tinytic/branches/vendor/0.0.5.3/headers.h (rev 0) +++ tinytic/branches/vendor/0.0.5.3/headers.h 2009-02-21 16:26:55 UTC (rev 36) @@ -0,0 +1,79 @@ +/********************************************************************** + Copyright (c) 2000-2002, Michael Dillon + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + Neither the name of Crystalline Realms, Midnight's Hour BBS, + Elysium Software nor the names of their contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + OF THE POSSIBILITY OF SUCH DAMAGE. + *********************************************************************/ +/********************************************************************* + headers.h - Used to include various headers for specific platforms + and standard headers. + *********************************************************************/ +#ifndef TINYTIC_HEADERS__H +#define TINYTIC_HEADERS__H 1 + +#if !defined(__cplusplus) +# error "C++ only!" +#endif /* __cplusplus */ + +#include <iostream> +#include <iomanip> +#include <fstream> +#include <string> +#include <strstream> +#include <cerrno> +#include <cctype> +#include <cstring> +#include <cstdio> +#include <cstdlib> + +#ifndef __NAMESPACE_SET +# if !defined(_STLPORT_VERSION) || defined(_STL_USE_NAMESPACES) + using namespace std; +# endif /* !_STLPORT || _STL_USE_NAMESPACES */ +# define __NAMESPACE_SET 1 +#endif /* __NAMESPACE_SET */ + +#if defined(__WATCOMC__) || defined(_WIN32) +# include <direct.h> +# include <process.h> +#endif /* __WATCOMC__ || _WIN32 */ + +#if defined(_WIN32) +# include <windows.h> +#endif /* _WIN32 */ + +#if defined(unix) || defined(linux) || defined(__GNUC__) +# include <unistd.h> +#endif /* unix || linux || __GNUC__ */ + +#include <time.h> + +#endif /* TINYTIC_HEADERS__H */ \ No newline at end of file Added: tinytic/branches/vendor/0.0.5.3/license.txt =================================================================== --- tinytic/branches/vendor/0.0.5.3/license.txt (rev 0) +++ tinytic/branches/vendor/0.0.5.3/license.txt 2009-02-21 16:26:55 UTC (rev 36) @@ -0,0 +1,32 @@ +Copyright (c) 2000-2002, Michael Dillon +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + Neither the name of Crystalline Realms, Midnight's Hour BBS, + Elysium Software nor the names of their contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. \ No newline at end of file Added: tinytic/branches/vendor/0.0.5.3/parse.cpp =================================================================== --- tinytic/branches/vendor/0.0.5.3/parse.cpp (rev 0) +++ tinytic/branches/vendor/0.0.5.3/parse.cpp 2009-02-21 16:26:55 UTC (rev 36) @@ -0,0 +1,167 @@ +/********************************************************************** + Copyright (c) 2000-2002, Michael Dillon + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + Neither the name of Crystalline Realms, Midnight's Hour BBS, + Elysium Software nor the names of their contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + OF THE POSSIBILITY OF SUCH DAMAGE. + *********************************************************************/ +/********************************************************************* + parse.cpp - Functions for reading the configuration file. + *********************************************************************/ +#include "tinytic.h" +#include "parse.h" +#include "ticlog.h" +#include "tprocess.h" + +string szConfigFile = "tinytic.cfg"; + +// Define the strings +string Inbound; +string DataFile; +string LogFile; + +bool ReadConfigFile(void) +{ + string Log; + string szTmp; + char szTmpBuffer[ BUFFER_MAXLEN ] = "\x0"; + ifstream fConfig; + + // Is a command line config file specified ? + if (szCmdConfigFile != "") + { + // Yes, use it (overrides default) + fConfig.open(szCmdConfigFile.c_str(), ios::in); + } + else + { + // No, use defaulted config file. + szTmp = szHomeDir + szConfigFile; + fConfig.open(szTmp.c_str(), ios::in); + } + + if (!fConfig) + { + cerr << "Unable to open " << szConfigFile.c_str() << "!" << endl; + cerr << "Make sure this file is in the same directory as this program." << endl; + + return (false); + } + + + while (!fConfig.eof()) + { + fConfig >> ws >> szTmpBuffer; + if (*szTmpBuffer == '#' || *szTmpBuffer == ';') + { + // This is commments, ignore + fConfig.getline(szTmpBuffer, BUFFER_MAXLEN); + } + else + { + if (stricmp(szTmpBuffer, "Inbound") == 0) + { + // Inbound directory specified + fConfig >> ws >> szTmpBuffer; + Inbound = szTmpBuffer; + + if ((Inbound == "") || (VerifyDirectory(Inbound.c_str()) == false)) + { +#if defined(__TINYTIC_WINDOWS) || defined(__TINYTIC_OS2) + Inbound = ".\\"; +#elif defined(__TINYTIC_POSIX) + Inbound = "./"; +#endif + } + + Log = "Checking for .TIC files in \'"; + Log += szTmpBuffer; + Log += "\'."; + PutLog(Log.c_str(), INFO); + } + else if (stricmp(szTmpBuffer, "DataFile") == 0) + { + // DataFile directory/file specified + fConfig >> ws >> szTmpBuffer; + DataFile = szTmpBuffer; + + if ((DataFile == "") || (VerifyFileUsable(DataFile.c_str()) == false)) + { +#if defined(__TINYTIC_WINDOWS) || defined(__TINYTIC_OS2) + DataFile = ".\\tinytic.dat"; +#elif defined(__TINYTIC_POSIX) + DataFile = "./tinytic.dat"; +#endif + } + + + if (szCmdDataFile == "") + { + Log = "Saving new entries to \'"; + Log += szTmpBuffer; + Log += "\'."; + PutLog( Log.c_str(), INFO ); + } + } + else if (stricmp(szTmpBuffer, "LogFile") == 0) + { + // DataFile directory/file specified + fConfig >> ws >> szTmpBuffer; + szLogFile = szTmpBuffer; + + if ((szLogFile == "") || (VerifyFileUsable(szLogFile.c_str()) == false)) + { +#if defined(__TINYTIC_WINDOWS) || defined(__TINYTIC_OS2) + szLogFile = ".\\tinytic.log"; +#elif defined(__TINYTIC_POSIX) + szLogFile = "./tinytic.log"; +#endif + } + + if (szCmdLogFile == "") + { + cout << "Using LogFile \'" + << szLogFile.c_str() + << "\'." + << endl; + } + } + else + { + fConfig.getline(szTmpBuffer, BUFFER_MAXLEN); + } + } + } + + fConfig.close(); + + return (true); +} + Added: tinytic/branches/vendor/0.0.5.3/parse.h =================================================================== --- tinytic/branches/vendor/0.0.5.3/parse.h (rev 0) +++ tinytic/branches/vendor/0.0.5.3/parse.h 2009-02-21 16:26:55 UTC (rev 36) @@ -0,0 +1,55 @@ +/********************************************************************** + Copyright (c) 2000-2002, Michael Dillon + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + Neither the name of Crystalline Realms, Midnight's Hour BBS, + Elysium Software nor the names of their contributors may be + used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + OF THE POSSIBILITY OF SUCH DAMAGE. + *********************************************************************/ +/********************************************************************** + parse.h - Header file for the config file parser function + *********************************************************************/ +#if !defined( PARSE_HEADER__H ) +#define PARSE_HEADER__H 1 + +extern string szConfigFile; +#define BUFFER_MAXLEN 1024 + +// Inbound and DataFile directory names +extern string Inbound; +extern string DataFile; +extern string LogFile; + +// Function Prototypes +bool ReadConfigFile(void) ; // Reads the file specified by 'CONF' + +#endif + + + Added: tinytic/branches/vendor/0.0.5.3/pkg/AUTORULE.BAT =================================================================== --- tinytic/branches/vendor/0.0.5.3/pkg/AUTORULE.BAT (rev 0) +++ tinytic/branches/vendor/0.0.5.3/pkg/AUTORULE.BAT 2009-02-21 16:26:55 UTC (rev 36) @@ -0,0 +1,19 @@ +@echo off +cls +d: +cd \tg\post +mpostnti -tbbscarn.txt -cbbscarn.cfg +mpostnti -taudio.txt -caudio.cfg +mpostnti -tmodems.txt -cmodems.cfg +mpostnti -tgenbbs.txt -cgenbbs.cfg +mpostnti -toschat.txt -coschat.cfg +mpostnti -tstntom.txt -ctomor.cfg +mpostnti -tstnshot.txt -cshotgun.cfg +mpostnti -tstnbbssoft.txt -cbbssoft.cfg +mpostnti -tstndoors.txt -cdoors.cfg +mpostnti -tfrontend.txt -cfront.cfg + + + + + Added: tinytic/branches/vendor/0.0.5.3/pkg/EXAMPLE.CFG =================================================================== --- tinytic/branches/vendor/0.0.5.3/pkg/EXAMPLE.CFG (rev 0) +++ tinytic/branches/vendor/0.0.5.3/pkg/EXAMPLE.CFG 2009-02-21 16:26:55 UTC (rev 36) @@ -0,0 +1,24 @@ +; Configuration File + +; Inbound : This specifies where your mailer will store the TIC files +; and their companion files. +Inbound /home/user + +; DataFile : This tells what file will be modified when a TIC was sucessfully +; processed, it will contain the Filename, it's size, and +; a copy of the description field within the TIC. +DataFile /home/user/datafile.txt + +; LogFile : This tells TinyTic where to store the log file and what it will +; be called. +LogFile /home/user/tinytic.log + +; AreaName : Use this to specify the existance of areas. An area is given +; in each TIC file and will be looked up here. If a TIC file has +; and area not given here, that TIC will be left alone. +; Format for AreaName is: +; Areaname <NAME_TAG> <Destination> +; NAME_TAG is the Area tag that is given in the TIC files. +; Destination is where the files will be stored if they are associated +; with the specified area. +AreaName FIDONEWS /home/user/fidonews Added: tinytic/branches/vendor/0.0.5.3/pkg/FOOTER.TXT =================================================================== --- tinytic/branches/vendor/0.0.5.3/pkg/FOOTER.TXT (rev 0) +++ tinytic/branches/vendor/0.0.5.3/pkg/FOOTER.TXT 2009-02-21 16:26:55 UTC (rev 36) @@ -0,0 +1,14 @@ + +------------------------------------------------------------------------------- + +All of the above files are available via email FREQ. To do so, simply send +an email to ah...@so... with the subject of FREQ and in the message +body, FREQ <filename>. For a list of magic names, FREQ MAGIC. + +------------------------------------------------------------------------------- + + This new files announcement was created using TinyTic/Win32 v0.0.5b. + (http://members.darktech.org/gsvalore) + +------------------------------------------------------------------------------- + Added: tinytic/branches/vendor/0.0.5.3/pkg/HEADER.TXT =================================================================== --- tinytic/branches/vendor/0.0.5.3/pkg/HEADER.TXT (rev 0) +++ tinytic/branches/vendor/0.0.5.3/pkg/HEADER.TXT 2009-02-21 16:26:55 UTC (rev 36) @@ -0,0 +1,11 @@ + ___ __ __ _________ + .---.-.' _| |_.-----.----. |--.-----.--.--.----.-----. / /__ | + | _ | _| _| -__| _| | _ | | | _|__ --|,' ,'| __| + |___._|__| |____|_____|__| |__|__|_____|_____|__| |_____/__/ |______| + + http://ah2.darktech.org +------------------------------------------------------------------------------- + + The following files were received today: + + \ No newline at end of file Added: tinytic/branches/vendor/0.0.5.3/pkg/MAILPROC.BAT =================================================================== --- tinytic/branches/vendor/0.0.5.3/pkg/MAILPROC.BAT (rev 0) +++ tinytic/branches/vendor/0.0.5.3/pkg/MAILPROC.BAT 2009-02-21 16:26:55 UTC (rev 36) @@ -0,0 +1,21 @@ +@echo off +cd d:\sbbs\exec + +rem Process inbound mail +sbbsecho /lesy + +rem Process TIC files +tinytic + +rem Adds new files to the message base +addfiles * /s /z + +rem Combines header-announcement-footer together +copy header.txt+newfiles.txt+footer.txt announce.txt + +rem Posts new file announcement into an echo +smbutil id:\sbbs\exec\newfiles.txt d:\sbbs\data\fidoreq.shd < d:\sbbs\exec\fido.hdr + +rem Process outbound mail (to include file announcements) +sbbsecho /linf + Added: tinytic/branches/vendor/0.0.5.3/pkg/MPOST.DOC =================================================================== --- tinytic/branches/vendor/0.0.5.3/pkg/MPOST.DOC (rev 0) +++ tinytic/branches/vendor/0.0.5.3/pkg/MPOST.DOC 2009-02-21 16:26:55 UTC (rev 36) @@ -0,0 +1,87 @@ +MPOST.DOC +Supplement for TinyTIC File Handler +Written by Sean Dennis +Version 1.0.0 +Copyright (C) 2000 by Sean Dennis. + +TinyTIC is a trademark of Mike Dillon and Sean Dennis. + +MPost +===== +From the MPost documentation: +"Mpost is a program to post a text file as netmail and echomail message into +a Squish or *.MSG style message area from command line. It is useful in +shell or REXX scripts or batch files for system maintanance purposes, like +posting a monthly echomail statistics, posting rules files, or similar +tasks. + +Mpost is (C) by Codeland Australia and has been written by Colin Wheat, +originally for OS/2 only. The last release of MPost before this version +was MPost 1.10. The exact license status of MPost is questionable; but it +seems to be freeware as its source code is available. I decided to leave +in the Codeland Copyright statement. + +In 1999, I (Tobias Ernst) have done some modifications to this source code. +Year 2000 bugs had to be fixed, I added a way to add FTSC 0054 charset +kludges to the posted mails, and I ported the software to Unix, NT and DPMI +DOS. In order to make the public profit from... [truncated message content] |
From: <ja...@us...> - 2009-02-21 16:06:47
|
Revision: 35 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=35&view=rev Author: jame Date: 2009-02-21 16:06:38 +0000 (Sat, 21 Feb 2009) Log Message: ----------- Add SVN directory structure for TinyTIC. Added Paths: ----------- tinytic/ tinytic/branches/ tinytic/branches/vendor/ tinytic/tags/ tinytic/trunk/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ja...@us...> - 2009-02-07 21:03:16
|
Revision: 34 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=34&view=rev Author: jame Date: 2009-02-07 21:03:10 +0000 (Sat, 07 Feb 2009) Log Message: ----------- Import Debian package crashmail-0.71-2 into the repository at crashmail/branches/vendor/0.71-2 Added Paths: ----------- crashmail/branches/vendor/0.71-2/ crashmail/branches/vendor/0.71-2/Makefile crashmail/branches/vendor/0.71-2/debian/ crashmail/branches/vendor/0.71-2/debian/changelog crashmail/branches/vendor/0.71-2/debian/compat crashmail/branches/vendor/0.71-2/debian/control crashmail/branches/vendor/0.71-2/debian/copyright crashmail/branches/vendor/0.71-2/debian/rules crashmail/branches/vendor/0.71-2/doc/ crashmail/branches/vendor/0.71-2/doc/AreafixHelp.txt crashmail/branches/vendor/0.71-2/doc/History.txt crashmail/branches/vendor/0.71-2/doc/ReadMe.txt crashmail/branches/vendor/0.71-2/doc/example.prefs crashmail/branches/vendor/0.71-2/doc/filter.txt crashmail/branches/vendor/0.71-2/man/ crashmail/branches/vendor/0.71-2/man/crashexport.1 crashmail/branches/vendor/0.71-2/man/crashgetnode.1 crashmail/branches/vendor/0.71-2/man/crashlist.1 crashmail/branches/vendor/0.71-2/man/crashmail.1 crashmail/branches/vendor/0.71-2/man/crashmaint.1 crashmail/branches/vendor/0.71-2/man/crashstats.1 crashmail/branches/vendor/0.71-2/man/crashwrite.1 crashmail/branches/vendor/0.71-2/src/ crashmail/branches/vendor/0.71-2/src/Makefile crashmail/branches/vendor/0.71-2/src/Makefile.linux crashmail/branches/vendor/0.71-2/src/Makefile.os2 crashmail/branches/vendor/0.71-2/src/Makefile.win32 crashmail/branches/vendor/0.71-2/src/ReadMe.txt crashmail/branches/vendor/0.71-2/src/cmnllib/ crashmail/branches/vendor/0.71-2/src/cmnllib/Makefile.linux crashmail/branches/vendor/0.71-2/src/cmnllib/Makefile.os2 crashmail/branches/vendor/0.71-2/src/cmnllib/Makefile.win32 crashmail/branches/vendor/0.71-2/src/cmnllib/cmnllib.c crashmail/branches/vendor/0.71-2/src/cmnllib/cmnllib.h crashmail/branches/vendor/0.71-2/src/crashmail/ crashmail/branches/vendor/0.71-2/src/crashmail/areafix.c crashmail/branches/vendor/0.71-2/src/crashmail/areafix.h crashmail/branches/vendor/0.71-2/src/crashmail/config.c crashmail/branches/vendor/0.71-2/src/crashmail/config.h crashmail/branches/vendor/0.71-2/src/crashmail/crashmail.c crashmail/branches/vendor/0.71-2/src/crashmail/crashmail.h crashmail/branches/vendor/0.71-2/src/crashmail/dupe.c crashmail/branches/vendor/0.71-2/src/crashmail/dupe.h crashmail/branches/vendor/0.71-2/src/crashmail/filter.c crashmail/branches/vendor/0.71-2/src/crashmail/filter.h crashmail/branches/vendor/0.71-2/src/crashmail/handle.c crashmail/branches/vendor/0.71-2/src/crashmail/handle.h crashmail/branches/vendor/0.71-2/src/crashmail/logwrite.c crashmail/branches/vendor/0.71-2/src/crashmail/logwrite.h crashmail/branches/vendor/0.71-2/src/crashmail/mb.c crashmail/branches/vendor/0.71-2/src/crashmail/mb.h crashmail/branches/vendor/0.71-2/src/crashmail/mb_jam.c crashmail/branches/vendor/0.71-2/src/crashmail/mb_jam.h crashmail/branches/vendor/0.71-2/src/crashmail/mb_msg.c crashmail/branches/vendor/0.71-2/src/crashmail/mb_msg.h crashmail/branches/vendor/0.71-2/src/crashmail/memmessage.c crashmail/branches/vendor/0.71-2/src/crashmail/memmessage.h crashmail/branches/vendor/0.71-2/src/crashmail/misc.c crashmail/branches/vendor/0.71-2/src/crashmail/misc.h crashmail/branches/vendor/0.71-2/src/crashmail/nl.c crashmail/branches/vendor/0.71-2/src/crashmail/nl.h crashmail/branches/vendor/0.71-2/src/crashmail/nl_cmnl.c crashmail/branches/vendor/0.71-2/src/crashmail/nl_cmnl.h crashmail/branches/vendor/0.71-2/src/crashmail/nl_v7p.c crashmail/branches/vendor/0.71-2/src/crashmail/nl_v7p.h crashmail/branches/vendor/0.71-2/src/crashmail/node4dpat.c crashmail/branches/vendor/0.71-2/src/crashmail/node4dpat.h crashmail/branches/vendor/0.71-2/src/crashmail/outbound.c crashmail/branches/vendor/0.71-2/src/crashmail/outbound.h crashmail/branches/vendor/0.71-2/src/crashmail/pkt.c crashmail/branches/vendor/0.71-2/src/crashmail/pkt.h crashmail/branches/vendor/0.71-2/src/crashmail/safedel.c crashmail/branches/vendor/0.71-2/src/crashmail/safedel.h crashmail/branches/vendor/0.71-2/src/crashmail/scan.c crashmail/branches/vendor/0.71-2/src/crashmail/scan.h crashmail/branches/vendor/0.71-2/src/crashmail/stats.c crashmail/branches/vendor/0.71-2/src/crashmail/stats.h crashmail/branches/vendor/0.71-2/src/crashmail/toss.c crashmail/branches/vendor/0.71-2/src/crashmail/toss.h crashmail/branches/vendor/0.71-2/src/jamlib/ crashmail/branches/vendor/0.71-2/src/jamlib/LICENSE crashmail/branches/vendor/0.71-2/src/jamlib/Makefile.linux crashmail/branches/vendor/0.71-2/src/jamlib/Makefile.os2 crashmail/branches/vendor/0.71-2/src/jamlib/Makefile.win32 crashmail/branches/vendor/0.71-2/src/jamlib/crc32.c crashmail/branches/vendor/0.71-2/src/jamlib/jam.h crashmail/branches/vendor/0.71-2/src/jamlib/jamlib.doc crashmail/branches/vendor/0.71-2/src/jamlib/lastread.c crashmail/branches/vendor/0.71-2/src/jamlib/mbase.c crashmail/branches/vendor/0.71-2/src/jamlib/message.c crashmail/branches/vendor/0.71-2/src/jamlib/structrw.c crashmail/branches/vendor/0.71-2/src/jamlib/structrw.h crashmail/branches/vendor/0.71-2/src/jamlib/subpack.c crashmail/branches/vendor/0.71-2/src/obj/ crashmail/branches/vendor/0.71-2/src/oslib/ crashmail/branches/vendor/0.71-2/src/oslib/os.h crashmail/branches/vendor/0.71-2/src/oslib/osdir.h crashmail/branches/vendor/0.71-2/src/oslib/osfile.h crashmail/branches/vendor/0.71-2/src/oslib/osmem.h crashmail/branches/vendor/0.71-2/src/oslib/osmisc.h crashmail/branches/vendor/0.71-2/src/oslib/ospattern.h crashmail/branches/vendor/0.71-2/src/oslib_linux/ crashmail/branches/vendor/0.71-2/src/oslib_linux/Makefile crashmail/branches/vendor/0.71-2/src/oslib_linux/os.c crashmail/branches/vendor/0.71-2/src/oslib_linux/os_linux.h crashmail/branches/vendor/0.71-2/src/oslib_linux/osdir.c crashmail/branches/vendor/0.71-2/src/oslib_linux/osfile.c crashmail/branches/vendor/0.71-2/src/oslib_linux/osmem.c crashmail/branches/vendor/0.71-2/src/oslib_linux/osmisc.c crashmail/branches/vendor/0.71-2/src/oslib_linux/ospattern.c crashmail/branches/vendor/0.71-2/src/oslib_os2/ crashmail/branches/vendor/0.71-2/src/oslib_os2/Makefile crashmail/branches/vendor/0.71-2/src/oslib_os2/os.c crashmail/branches/vendor/0.71-2/src/oslib_os2/os_os2.h crashmail/branches/vendor/0.71-2/src/oslib_os2/osdir.c crashmail/branches/vendor/0.71-2/src/oslib_os2/osfile.c crashmail/branches/vendor/0.71-2/src/oslib_os2/osmem.c crashmail/branches/vendor/0.71-2/src/oslib_os2/osmisc.c crashmail/branches/vendor/0.71-2/src/oslib_os2/ospattern.c crashmail/branches/vendor/0.71-2/src/oslib_win32/ crashmail/branches/vendor/0.71-2/src/oslib_win32/Makefile crashmail/branches/vendor/0.71-2/src/oslib_win32/os.c crashmail/branches/vendor/0.71-2/src/oslib_win32/os_win32.h crashmail/branches/vendor/0.71-2/src/oslib_win32/osdir.c crashmail/branches/vendor/0.71-2/src/oslib_win32/osfile.c crashmail/branches/vendor/0.71-2/src/oslib_win32/osmem.c crashmail/branches/vendor/0.71-2/src/oslib_win32/osmisc.c crashmail/branches/vendor/0.71-2/src/oslib_win32/ospattern.c crashmail/branches/vendor/0.71-2/src/shared/ crashmail/branches/vendor/0.71-2/src/shared/expr.c crashmail/branches/vendor/0.71-2/src/shared/expr.h crashmail/branches/vendor/0.71-2/src/shared/fidonet.h crashmail/branches/vendor/0.71-2/src/shared/jblist.c crashmail/branches/vendor/0.71-2/src/shared/jblist.h crashmail/branches/vendor/0.71-2/src/shared/jbstrcpy.c crashmail/branches/vendor/0.71-2/src/shared/jbstrcpy.h crashmail/branches/vendor/0.71-2/src/shared/mystrncpy.c crashmail/branches/vendor/0.71-2/src/shared/mystrncpy.h crashmail/branches/vendor/0.71-2/src/shared/node4d.c crashmail/branches/vendor/0.71-2/src/shared/node4d.h crashmail/branches/vendor/0.71-2/src/shared/parseargs.c crashmail/branches/vendor/0.71-2/src/shared/parseargs.h crashmail/branches/vendor/0.71-2/src/shared/path.c crashmail/branches/vendor/0.71-2/src/shared/path.h crashmail/branches/vendor/0.71-2/src/shared/storedmsg.h crashmail/branches/vendor/0.71-2/src/shared/types.h crashmail/branches/vendor/0.71-2/src/tools/ crashmail/branches/vendor/0.71-2/src/tools/crashexport.c crashmail/branches/vendor/0.71-2/src/tools/crashgetnode.c crashmail/branches/vendor/0.71-2/src/tools/crashlist.c crashmail/branches/vendor/0.71-2/src/tools/crashlistout.c crashmail/branches/vendor/0.71-2/src/tools/crashmaint.c crashmail/branches/vendor/0.71-2/src/tools/crashstats.c crashmail/branches/vendor/0.71-2/src/tools/crashwrite.c Added: crashmail/branches/vendor/0.71-2/Makefile =================================================================== --- crashmail/branches/vendor/0.71-2/Makefile (rev 0) +++ crashmail/branches/vendor/0.71-2/Makefile 2009-02-07 21:03:10 UTC (rev 34) @@ -0,0 +1,34 @@ +# Created for Debian by Peter Karlsson <pe...@de...> + +DESTDIR = +BINDIR = $(DESTDIR)/usr/bin +DOCDIR = $(DESTDIR)/usr/share/doc/crashmail +MANDIR = $(DESTDIR)/usr/share/man/man1 +DATADIR = $(DESTDIR)/usr/share/crashmail + +all: + mkdir bin + make -C src linux + +install: + install -d $(BINDIR) + install bin/crashmail $(BINDIR) + install bin/crashstats $(BINDIR) + install bin/crashlist $(BINDIR) + install bin/crashgetnode $(BINDIR) + install bin/crashmaint $(BINDIR) + install bin/crashwrite $(BINDIR) + install bin/crashexport $(BINDIR) + install -d $(MANDIR) + cp -a man/* $(MANDIR)/ + install -d $(DOCDIR) + install -m 644 doc/ReadMe.txt $(DOCDIR) + install -m 644 doc/filter.txt $(DOCDIR) + install -d $(DOCDIR)/examples + install -m 644 doc/example.prefs $(DOCDIR)/examples + install -d $(DATADIR) + install -m 644 doc/AreafixHelp.txt $(DATADIR) + +clean: + make -C src cleanlinux + -rm -rf bin Added: crashmail/branches/vendor/0.71-2/debian/changelog =================================================================== --- crashmail/branches/vendor/0.71-2/debian/changelog (rev 0) +++ crashmail/branches/vendor/0.71-2/debian/changelog 2009-02-07 21:03:10 UTC (rev 34) @@ -0,0 +1,66 @@ +crashmail (0.71-2) unstable; urgency=low + + * Added support for installing unstripped binaries. + (Closes: Bug#436670) + * Updated policy and debhelper usage. + + -- Peter Karlsson <pe...@de...> Sun, 02 Sep 2007 20:45:00 +0100 + +crashmail (0.71-1) unstable; urgency=low + + * New upstream release. + + -- Peter Karlsson <pe...@de...> Wed, 28 Jul 2004 19:20:00 +0100 + +crashmail (0.70-2) unstable; urgency=low + + * Added missing document "filter.txt" to the package. + + -- Peter Karlsson <pe...@de...> Mon, 22 Dec 2003 21:00:00 +0100 + +crashmail (0.70-1) unstable; urgency=low + + * New upstream release. + * Updated copyright file to match current license terms. + + -- Peter Karlsson <pe...@de...> Sun, 14 Dec 2003 00:00:00 +0100 + +crashmail (0.62-1) unstable; urgency=low + + * New upstream release. + * Updated to Standards-Version 3.5.5: + - Move the AreafixHelp.txt to /usr/share/crashmail since it is + referenced from the sample configuration. + + -- peter karlsson <pe...@de...> Fri, 17 Aug 2001 22:45:00 +0200 + +crashmail (0.60-3) unstable; urgency=low + + * Bugfix for crashwrite: No longer cut lines longer than 100 characters. + + -- peter karlsson <pe...@de...> Fri, 16 Mar 2001 22:45:00 +0100 + +crashmail (0.60-2) unstable; urgency=low + + * New maintainer (previously sponsored). + * Updated to Standards-Version 3.0.1. + * Added Build-Depends. + * Suggests goldedplus (Fidonet reader). + * Move sample preferences file to be compliant with debian-policy. + + -- peter karlsson <pe...@de...> Fri, 25 Aug 2000 20:10:00 +0200 + +crashmail (0.60-1) unstable; urgency=low + + * New upstream release. + * Changed sample preferences to reflect Debian GNU/Linux paths. + * AreaFixHelp.txt no longer compressed, so crashmail can use it directly. + * Suggests zip, unzip and lha for [de]compression of mail bundles. + + -- Per Lundberg <pl...@de...> Sun, 21 Nov 1999 20:30:47 +0100 + +crashmail (0.52-1) unstable; urgency=low + + * Initial Release. + + -- Per Lundberg <pl...@de...> Tue, 19 Oct 1999 20:54:38 +0200 Added: crashmail/branches/vendor/0.71-2/debian/compat =================================================================== --- crashmail/branches/vendor/0.71-2/debian/compat (rev 0) +++ crashmail/branches/vendor/0.71-2/debian/compat 2009-02-07 21:03:10 UTC (rev 34) @@ -0,0 +1 @@ +5 Added: crashmail/branches/vendor/0.71-2/debian/control =================================================================== --- crashmail/branches/vendor/0.71-2/debian/control (rev 0) +++ crashmail/branches/vendor/0.71-2/debian/control 2009-02-07 21:03:10 UTC (rev 34) @@ -0,0 +1,19 @@ +Source: crashmail +Section: mail +Priority: extra +Maintainer: Peter Karlsson <pe...@de...> +Standards-Version: 3.7.2 +Build-Depends: debhelper (>= 5.0.0) + +Package: crashmail +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Suggests: zip, unzip, lha, goldedplus | jamnntpd +Description: JAM and *.MSG capable Fidonet tosser + CrashMail II is basically a more portable version of + CrashMail, a tosser for Amiga computers. Users of the old + Amiga version will probably find some things familiar + while some features are gone such as the ARexx port (for + obvious reasons!) and the GUI configuration editor. The + only feature that CrashMail II has and the old CrashMail + hasn't is support for JAM messagebases. Added: crashmail/branches/vendor/0.71-2/debian/copyright =================================================================== --- crashmail/branches/vendor/0.71-2/debian/copyright (rev 0) +++ crashmail/branches/vendor/0.71-2/debian/copyright 2009-02-07 21:03:10 UTC (rev 34) @@ -0,0 +1,25 @@ +Obtained from: http://www.billingware.org/crashmail.html +Packaged for Debian by: Peter Karlsson <2:204/254.222> <pe...@de...> +Upstream author: Johan Billing <2:201/128.77> <bi...@df...> + +JAMLIB is copyright 1999 Bj\xF6rn Stenberg. JAMLIB is released under the +GNU Lesser General Public License. On Debian systems, the complete text of +the GNU Lesser General Public License can be found in the +/usr/share/common-licenses/LGPL file. + +Except where explicitly stated otherwise, all other parts of CrashMail are +copyright 1999 Johan Billing. Permission to use, copy and distribute +CrashMail is granted provided that this copyright notice is included. +Permission to modify CrashMail is granted. Distributing modified versions of +CrashMail is allowed provided that the documentation clearly states that it +is a modified version. Parts of CrashMail may be freely used in other +projects as long as the documentation mentions the original copyright +holder. + +The JAM message base proposal is: +JAM(mbp) - Copyright 1993 Joaquim Homrighausen, Andrew Milner, + Mats Birch, Mats Wallin. + ALL RIGHTS RESERVED + +This version constitutes a modified version, as some of the of the +configuration defaults have been changed to conform to the Debian policy. Added: crashmail/branches/vendor/0.71-2/debian/rules =================================================================== --- crashmail/branches/vendor/0.71-2/debian/rules (rev 0) +++ crashmail/branches/vendor/0.71-2/debian/rules 2009-02-07 21:03:10 UTC (rev 34) @@ -0,0 +1,60 @@ +#!/usr/bin/make -f +# This is the rules for building CrashMail packages for Debian. +# Based on sample: "GNU copyright 1997 to 1999 by Joey Hess". + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +build: build-stamp +build-stamp: + dh_testdir + + + # Add here commands to compile the package. + $(MAKE) + + touch build-stamp + +clean: + dh_testdir + dh_testroot + rm -f build-stamp + + # Add here commands to clean up after the build process. + $(MAKE) clean + + dh_clean + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + + # Add here commands to install the package into debian/crashmail. + $(MAKE) install DESTDIR=`pwd`/debian/crashmail + + +# Build architecture-independent files here. +binary-indep: build install +# We have nothing to do by default. + +# Build architecture-dependent files here. +binary-arch: build install + dh_testdir + dh_testroot + dh_installdocs + dh_installman + dh_installchangelogs doc/History.txt + dh_link + dh_strip + dh_compress + dh_fixperms + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install Property changes on: crashmail/branches/vendor/0.71-2/debian/rules ___________________________________________________________________ Added: svn:executable + * Added: crashmail/branches/vendor/0.71-2/doc/AreafixHelp.txt =================================================================== --- crashmail/branches/vendor/0.71-2/doc/AreafixHelp.txt (rev 0) +++ crashmail/branches/vendor/0.71-2/doc/AreafixHelp.txt 2009-02-07 21:03:10 UTC (rev 34) @@ -0,0 +1,114 @@ + + Description of CrashMail's built-in AreaFix + =========================================== + +What is AreaFix? +---------------- +AreaFix is a feature present at most FidoNet nodes, either built-in in +the tosser or as a stand-alone program. AreaFix allows you to connect +and disconnect to echomail areas, change your password and change some +other things in your configuration without asking your feed/boss to do +it for you. + +How do I talk to AreaFix? +------------------------- +You communicate with AreaFix using netmail messages. The message header +of a message to AreaFix should look like this: + +From: Johan Billing + To: AreaFix +Subj: <password> [<switches>] + +<AreaFix commands> +... +--- + +<Password> is your private AreaFix password that you need to make sure +that nobody else alters your configuration. Your AreaFix password is +assigned to you by your boss/feed, so you may have to ask him about a +password. + +[<switches>] are extra commands that you can send to AreaFix. Currently +there is only one switch: + + -l or -q Send list of all areas + +This switch is only here to be compatible with other AreaFix programs. +It is recommended that you use the %-commands described later instead. + +"---" marks the end of an AreaFix message. + +NOTE: The name doesn't necessarily have to be AreaFix, your boss may have +configured CrashMail to use other names instead. + +What commands can I put in the text? +------------------------------------ + +Change connected areas: + +[+]areaname[,R=<max>] Connect to an area. The '+' is optional. If + the R option is specified after the area, + the specified number of old messages in the area + will be rescanned and sent to you. + +-areaname Disconnect from an area + +=areaname[,R=<max>] Update. You can use this to rescan an area which you + already are connected to. + +Special commands + +%HELP Send this text + +%LIST Send list of all areas +%QUERY Send list of all linked areas +%UNLINKED Send list of all unlinked areas + +%PAUSE Do not send any echomail until a %RESUME is sent +%RESUME Send echomail again. These commands can be useful + if you are away for a few weeks and don't want to + get any echomail. + +%PWD <pw> Changes your AreaFix password to the new password + specified after the command. + +%COMPRESS <name> Changes the packer used to compress your mail to + the packer specified after the command. Send + "%COMPRESS ?" to get a list of packers. + +%RESCAN All areas that are added or updated after this + line will be rescanned, that is all old messages + in those areas will be sent to you. This can be + very dangerous since you don't know how many + messages you will get so in most cases, it is + better to use the R option when adding/updating + areas instead. + +Examples: +========= + +R20_TRASHCAN Connect to R20_TRASHCAN + +%LIST Send list of areas + +R20_AMIGA,R=50 Connect to R20_AMIGA and get the last 50 messages + in the area. + +%PWD xyzzy Change your AreaFix password to "xyzzy". + +%COMPRESS ZIP Change your compression method to ZIP. + +%PAUSE Turn off echomail for a while + +%RESUME Turn on echomail again + +=R20_AMIGA,R=100 Get the last 100 messages in R20_AMIGA (if you are + already connected to the area) + +A few words on rescan +===================== +Messages that are rescanned might not look exactly like they originally did +because of the way they are stored locally. When messages are rescanned from +a JAM messagebase, all control lines ("kludges") will be at the beginning of +the message regardless of where they originally were. You can easily tell if +a message has been rescanned, just look for the RESCANNED control line. Added: crashmail/branches/vendor/0.71-2/doc/History.txt =================================================================== --- crashmail/branches/vendor/0.71-2/doc/History.txt (rev 0) +++ crashmail/branches/vendor/0.71-2/doc/History.txt 2009-02-07 21:03:10 UTC (rev 34) @@ -0,0 +1,435 @@ +Version 0.7 was probably the last major revision of CrashMail. If you +are using CrashMail, please send me an e-mail (bi...@df...). +I am curious about how many CrashMail users there still are... + +Changes in version 0.71 + + - Fixed a bug that could cause CrashMail to crash when exporting messages + from a JAM area with deleted messages. + + - Updated JAMLIB to 1.3.2 + + - Win32 binaries are now compiled with MinGW 3.1.0-1 instead of + gcc-2.95-mingw32. + +Changes in version 0.7 + + - Implemented a message filter. Using this feature, you can filter out messages + that match specified criteria and perform a number of commands on them. This + filter will for example copy echomail messages addressed to me to a special + area (the area needs to be configured as a local area using LOCALAREA): + + FILTER SOURCE=TOSSED and TYPE=ECHOMAIL and TONAME="Johan Billing" + COPY PERSONAL_MESSAGES + + See doc/filter.txt for a complete description of the new message filter. + + - The new message filter replaces the configuration keywords ROBOTNAME, REMAP + and REMAPNODE since the message filter can perform these tasks. + + Replacement for ROBOTNAME <name> <command>: + + FILTER TYPE=NETMAIL and TOLOCALAKA and TONAME=<name> + EXECUTE <command> + + Replacement for REMAP <pattern> <new name> <destination pattern> + + FILTER TYPE=NETMAIL and TOLOCALAKA and TONAME=<pattern> + REMAPMSG <new name> <destination pattern> + + Replacement for REMAPNODE <node pattern> <destination pattern> + + FILTER TYPE=NETMAIL and TOADDR=<node pattern> + REMAPMSG "*" <destination pattern> + + - Rewrote the dupe-checking. CrashMail now no longer needs to load the entire + dupe buffer into memory. This means that you now can keep a much large dupe + buffer without using a lot of memory. + + CrashMail will not read your old dupe file, you have to delete it. + + Also note that the second argument for DUPEFILE has changed from the size + of the dupe buffer in KB to the maximum number of messages that should be + stored in the dupe buffer. If you don't update your configuration, you will + only have a very small dupe buffer. + + - CrashMail no longer keeps zero-length files in the packet directory for use + in naming new bundles. Instead it relies solely on the cmindex file. + + - CrashMail now also supports nodelists in the Version 7+ format in addition + to its own format. (Note: It seems like the Linux version of FastLst does + not include hub/region in the compiled nodelist for some reason. This means + that node patterns with HUB/REGION won't work.) + + - New tool in the CrashMail suite: crashlistout. This tool can list your + outbound directory in a pretty way. + + - New configuration keywords: BEFORETOSS and BEFOREPACK. You can use these + to execute custom commands before tossing/packing a *.pkt file. + + - New keyword PKTFROM in node configuration. You can use this if you want + to set the originating address of .pkt files to something other than the + default. + + - New configuration switches: FLOWCRLF and NOEXPORTNETMAIL. FLOWCRLF makes + CrashMail use CRLF as end-of-line characters in flow files instead of + just LF. NOEXPORTNETMAIL makes CrashMail ignore netmail areas with + SCAN and SCANLIST. This together with NOROUTE makes it possible to use + an external program for handling netmail. + + - New switch NEEDSPLUS for the REMOTEAF keyword. + + - New commandline argument: SCANDOTJAM. This can be used for scanning areas + listed in echomail.jam/netmail.jam files. + + - In addition to "programname ?", you can now also use -h, --help, help, /? + and /h with CrashMail and the related utilities to show the commandline help. + + - Improved the time it takes for CrashMail to load the configuration file. + Only noticable if you have a huge number of pass-through areas. + + - Fixed some bugs found in the ChangeLog from CrashEcho (thanks guys!) + + - SCANLIST does not abort anymore if an area cannot be scanned + + - RESCAN was broken and always returned an "unknown area" error + + - Added sanity checks to JAM linking to prevent CrashMail from crashing + on messagebases with broken reply links + + - Fixed some memory leaks in the JAM handling. + + - Upgraded JAMLIB to version 1.3.1 + + - Some minor cosmetic changes. + + - Cleaned up the source in various places. + + +Changes in version 0.62: + + CrashMail + + - CrashMail would check packet passwords even if the command-line option + NOSECURITY was used. Fixed. + + - The Local flag is now cleared and the Sent flag is set before messages + are imported to the messagebase. In previous versions of CrashMail, + imported messages with Local flag and no Sent flag were re-exported the + next time CrashMail SCAN was run. Fixed. + + - CrashMail no longer leaves empty lines in the config file when areas are + removed by the AreaFix. + + CrashMaint + + - CrashMaint used local time instead of UTC when deleting old messages in + JAM areas. This could cause messages to be deleted ahead of time. Thanks + to Alexander S Aganichev for noticing this and sending me a patch. + + JAMLIB + + - There was a bug in JAMLIB that caused the Linux version of CrashMail to fail + when trying to import an empty message to the messagebase. The bug has been + fixed and CrashMail now uses the new version of JAMLIB. + + +Changes in version 0.61: + + CrashMail: + + - CrashMail incorrectly bounced netmails to nodes listed as hold in the + nodelist are no longer bounced. Fixed. Netmails to nodes listed as down + are still bounced. + + - The CrashMail REMOVE command didn't work. Fixed. + + - The AreaFix would sometimes miss some areas when you unsubscribed to areas + using patterns. + + - The AreaFix no longer crashes when it tries to remove areas after the + feed has unsubscribed to them. + + - JAM_LINK and JAM_HIGHWATER would turn on both linking and the use of + highwater marks. Fixed. + + - TINYSEENBY didn't work. Fixed. + + - CrashMail had problems with backslashes in file-attaches. Fixed. + + JAMLIB + + - Changed to latest version of JAMLIB. + + CrashWrite: + + - PKTFROMADDR/PKTTOADDR didn't work. Fixed. + + - CrashWrite had problems with paragraphs longer than 100 characters. Fixed. + + +Changes in version 0.6 + + CrashMail: + + - The AreaFix no longer truncates area names longer than 30 characters in + the response messages. + + - The Linux version of CrashMail now shows the real return code (using + WEXITSTATUS()) when an external command returns an error. + + - Two default areas may now have the same path + + - Cleaned up the Makefiles + + - CrashMail no longer sets the Sent flag on all imported message. CrashMail + now only exports messages with the Local flag set and the Sent flag cleared. + + - CrashMail can now also export JAM messages with very long kludges without + problems. Previous versions had problems with kludges longer than 200 chars. + + - LF characters are stripped when importing messsages to a JAM messagebase. + + - Space characters are stripped in AreaFix commands. This means that AreaFix + commands will work even if they begin with one or several space characters. + + - Node numbers can now be abbreviated on the EXPORT lines. See example.prefs + for an example on how this works. Thanks to Per Lundberg for idea and + original patch. + + - You can now define local areas in crashmail.prefs using the keyword + LOCALAREA. Local areas are not used by CrashMail, but are included in config + files created by CrashExport and are maintained when running CrashMaint. + + CrashWrite: + + - There are two new options PKTFROMADDR and PKTTOADDR that can be used to + set the origin and destination address to something other than the origin + and destination address of the message inside the packet. + + - A new option PASSWORD that can be used to set the password of the created + packet. + + JAMLIB: + + - JAMLIB could crash on corrupt messagebases. Fixed. + + - JAMLIB lo longer reads or writes structures directly from/to disk. This + makes JAMLIB even more portable and ensures that the Intel byte-order will + be used on all platforms regardless of the processor used. + + All programs: + + - The Win32 version of CrashMail did not work if you were tossing mail to + many downlinks since you could only open a limited number of files with + fopen() (about 40). Because of this, the Win32 version has been rewritten + to use Windows' I/O functions rather than the standard C stdio. The problem + is solved and the Win32 version is now also slightly faster. Note that + JAMLIB still uses fopen() so do not use too high a value for JAM_MAXOPEN. + + - Improved the error messages in all programs. Now CrashMail will also + tell you why an I/O error occurred using the response given by the + operating system. (To do this, the functions osError() and osErrorMsg() + were added to oslib.) + + - Added function osVFPrintf() to oslib + + - Changed error message "Too many arguments" in command line parsing to + to "Unknown keyword %s". This should make it easier to find the + problem. + + - Several cosmetic changes to program output and source code + + +Changes in version 0.52 + + CrashMail: + + - Three new flags for the NODE keyword: CRASH, DIRECT and HOLD. With these + flags, you can set the priority for packed and unpacked netmail. + + - When the packet directory was missing, the error message said that the + outbound directory was missing. This could be very confusing. Fixed. + + - Fixed a Y2K-related bug in the JAM import function. + + - Node patterns with REGION or HUB did not work for points. Fixed. + + - Added the new %-code %R for the ROBOTNAME keyword. %R gives the message + in RFC-format with the addresses in RFC-format (na...@pX...main). + + - When importing messages, CrashMail now checks for robot and AreaFix names + before messages are remapped. If you want to remap messages to AreaFix, you + have to make sure that no AreaFix names are configured. REMAPNODE still + works as before. + + - CrashMail now updates the DateProcessed field when exporting messages from + a JAM area. + + - CrashMail no longer is so strict with names of packet files names. Packet + names are now considered valid even if they contain non-hexadecimal + characters. + + - When glibc 2.1 was used, the Linux version of CrashMail exported messages + from JAM messagebases with an incorrect date. The time was one hour ahead. + This has now been fixed. + + - Dates in Via lines were one month early. Fixed. + + - If a netmail area had an IMPORT line, all netmails would be imported to + that area. This has been fixed and IMPORT now works as intended. + + - CrashMail no longer aborts if a JAM area could not be opened when exporting + messages. CrashMail instead continues and exports mail from all other areas. + + - CrashMail used to create an invalid configuration file when auto-adding + areas to a config file where the last line did not end with an end-of-line + character. This has now been fixed. + + - You can now use the environment variable CMCONFIGFILE to set the default + configuration file for CrashMail. + + - CrashMail would incorrectly import FMPT kludges to JAM areas. Fixed. + + CrashExport: + + - CrashExport did not write netmail areas correctly to a GoldED configuration + file. This has now been fixed. + + - CrashExport can now also create en area configuration file for timEd. + + - CrashExport no longer exports areas with the UNCONFIRMED keyword. + + CrashStats: + + - The total number of messages per day were not calculated correctly in the + LAST7 mode, instead a random number would be shown. The average total number + of messages per day was also incorrect. These bugs have now been fixed. + + CrashMaint: + + - You can now use the environment variable CMCONFIGFILE to set the default + configuration file for CrashMail. + + All programs: + + - The argument parsing has been improved. The main change for the user is that + "programname ?" now gives a more helpful output. + + - The functions remove(), rename() and system() has been moved to the oslib. + This change should not be noticable for the user. + + - Peter Karlsson has prepared man-pages for CrashMail and all related tools. + Thanks, Peter! These are handy under Linux, but can also be used on other + platforms if you install a "man"-program. + + - Peter Karlsson has ported CrashMail II to OS/2. Thanks, Peter! + + +Changes in version 0.5 + + CrashMail: + + - Because of a bug in the pattern matching, an empty string would match any + pattern. Fixed. + + - Areas belonging to the same group were not listed together in the area lists + generated by the Areafix. + + - CrashMail showed the same error message twice when the packer returned an + error when unarchiving a bundle. Fixed. + + - If the highwater mark was lower than the lowest messagenumber in a JAM area, + CrashMail would still try to export messages beginning from the highwater + mark. Unfortunately this would cause a crash because of another bug + that appeared when CrashMail tried to export an unreadable message. + All this has now been fixed. + + - CrashMail no longer stops exporting when it encounters an unreadable message + + - CrashMail no longer adds its own node number to the path if it already + exists as the last node in the path lines. + + - CrashMail could sometimes create circular reply links and get caught in + infinite loops when dupes were imported to a JAM messagebase. Fixed. + + - New config option: ALLOWKILLSENT + + - New command-line keyword for CrashMail: TOSSDIR + + - New command-line keyword for CrashMail: NOSECURITY. If this keyword is + used, all packets will be tossed without security checks. This is mainly + intended to be used together with TOSSFILE/TOSSDIR and packets + generated by CrashWrite. + + CrashMaint: + + - CrashMaint no longer checks the ActiveMsgs counter in the JAM messagebase + to determine if the area needs to be packed. This check did not always work, + among other things because all programs did not update the counter + properly. JAM areas are now always packed when "crashmaint pack" is + used. + + - CrashMaint now rebuilds the ActiveMsgs counter when packing a JAM area. + + - CrashMaint did not update the messagebase header when removing all messages + from a JAM area. This would cause some messages not to be exported when + highwater marks were used. (If you suspect that this has happened to + you, remove all *.cmhw files.) + + - Improved the error handling a bit in CrashMaint. Now you get an error if + an area couldn't be updated since it was in use by another program. + + CrashWrite: + + - Included CrashWrite, a new tool for CrashMail. CrashWrite reads a text + file and then creates a packet file that can be tossed by CrashMail. + + CrashExport: + + - CrashAreasBBS and CrashForward have been replaced by the new program + CrashExport. In addition to the old formats, CrashExport can also + create arealists in GoldED format. The old version of CrashAreasBBS had + some trouble with pass-through areas, this is gone in CrashExport. + + +Changes in version 0.42 + + - Fixed bug that occurred when sending mail to nodes with long addresses + (e.g. 9999:8888/7777.6666) + + - Fixed an error message in the outbound handling + + - Fixed a bug that occurred when auto-adding pass-through areas + + - Fixed a small memory leak + + - CrashMail got caught in an infinite loop when an unknown nodelist format + was specified in the config. This is now fixed. + + - CrashMail no longer segfaults at startup when pass-through areas are used! + + - CrashMail now adds packets to bundles in the correct order + + - CrashMail would under some circumstances use the same bundle for more than + one node. This has been fixed and a mechanism that checks that the same + bundle is not used for more than one node has been added. + + - Routing did not work properly when BOUNCEPOINTS was turned on. Fixed. + + - Removed an unnecessary linebreak from the bounce messages. + + - New configuration keyword: NOMAXOUTBOUNDZONE. See example.prefs for more + information. + + - CrashList did not handle Pvt nodes correctly. Fixed. + + - There was a small mistake in the example configuration file. The keyword is + REMOTEAF, not REMOTEAREAFIX. + + +Changes in version 0.4 + + - First public release + + Added: crashmail/branches/vendor/0.71-2/doc/ReadMe.txt =================================================================== --- crashmail/branches/vendor/0.71-2/doc/ReadMe.txt (rev 0) +++ crashmail/branches/vendor/0.71-2/doc/ReadMe.txt 2009-02-07 21:03:10 UTC (rev 34) @@ -0,0 +1,499 @@ + + CrashMail II + + The Next Generation! + + ...a stranger in a strange land... + + +============ +Introduction +============ +Welcome to CrashMail II! CrashMail II is basically a more portable version +of CrashMail, my tosser for Amiga computers. Users of the old Amiga +version will probably find some things familiar while some features are +gone such as the ARexx port (for obvious reasons!) and the GUI +configuration editor. The only feature that CrashMail II has and the old +CrashMail hasn't is support for JAM messagebases. (By the way, I have also +written a tick file processor called CrashTick for the Amiga. If someone +wants to port it, contect me and I'll give you the source.) + +For suggestions, bug reports and questions, don't hesitate to contact me at: + + bi...@df... + +========= +Copyright +========= +JAMLIB is copyright (c) 1999 Bj\xF6rn Stenberg. JAMLIB is released under the +GNU Lesser General Public License, See src/jamlib/jamlib.doc for more +information. + +Except where explicitly stated otherwise, all other parts of CrashMail are +copyright 1999 Johan Billing. Permission to use, copy and distribute CrashMail +is granted provided that this copyright notice is included. Permission to +modify CrashMail is granted. Distributing modified versions of CrashMail is +allowed provided that the documentation clearly states that it is a modified +version. Parts of CrashMail may be freely used in other projects as long as +the documentation mentions the original copyright holder. + +================ +Acknowledgements +================ +Many thanks to Bj\xF6rn Stenberg for creating the excellent subroutine library +JAMLIB which CrashMail uses for handling JAM messagebases. + +Thanks for Peter Karlsson for porting CrashMail II to OS/2 and the man pages. + +============= +Documentation +============= +The documentation is very brief and CrashMail probably isn't the ideal +choice for Fidonet beginners. All documentation of the available keywords +in the configuration file can be found in the example crashmail.prefs file. +Some other items about CrashMail that are worth mentioning can be found in +the section below. + +Items that need to be discussed +=============================== + +Platforms +--------- +This version of CrashMail can be compiled for Win32, Linux and OS/2. If you +are interested in running CrashMail on another platform, please contact me if +you are willing to do the work necessary to adapt CrashMail to your platform. +The amount of work required mostly depends on whether your C-compiler supports +some common POSIX-functions which CrashMail uses. + +Some notes on different platforms: + + Win32 & OS/2 + + If you want to use an old reader that only can handle 8+3 filenames, + you have to use %8 in the path of your DEFAULT area if you are using + the auto-add feature. This creates an 8 digit serial number to use as + the path for the area. Note that if CrashMail is run twice in a short + period of time (a few seconds), it might create duplicate paths. Avoid + %8 if it is at all possible. + + Linux + + Don't use the ~ character in paths. Such paths are expanded to point + to your home directory by the shell and not by the i/o functions in + the system. They will not work in CrashMail. + + In *.msg areas, make sure that all files are named *.msg and not *.MSG! + If they are not named in lowercase, CrashMail will not export them. + + As an extra bonus, the Linux version of CrashMail can use the syslog instead + of using its own log file. Just use "syslog" as the name of your log file. + + If the precompiled binaries in the CrashMail archive don't work on your + system, you will have to compile your own. See src/ReadMe.txt for more + information about this. + +Arguments +--------- +Available arguments for CrashMail: + +SCAN + + Scan all areas for messages to export. + +TOSS + + Toss all .pkt files and bundles in inbound directory. + +TOSSFILE <string> + + Toss the specified file. + +TOSSDIR <string> + + Toss all files in the specified directory. + +SCANAREA <string> + + Scan the specified area. + +SCANLIST <string> + + Scan all areas listed in the specified file. + +SCANDOTJAM <string> + + Scan all areas listed in an echomail.jam/netmail.jam file. The main difference + between SCANDOTJAM and SCANLIST is that a *.jam file contains the paths to the + messagebases instead of tagnames. Areas are only scanned once even if listed + multiple times. + +RESCAN <string> +RESCANNODE <string> +RESCANMAX <string> + + Rescans the specied area for the specied node. If RESCANMAX is specified, + it sets the maximum number of messages to rescan. + +SETTINGS <string> + + Use this configuration file instead of the default. You can use the + environment variable CMCONFIGFILE to set the default configuration file. + +VERSION + + Show version information about CrashMail. + +LOCK + + Locks CrashMail's configuration file and then exits. CrashMail has a simple + locking mechanism to ensure that two instances of CrashMail never use the + same configuration file at the same time. You can use this if you want to + temporarily want to stop CrashMail from running, e.g. when updating the + nodelist. + +UNLOCK + + Removes the lock on CrashMail's configuration file. Only use this when the + configuration file previously has been locked with LOCK, otherwise terrible + things might happen. + +NOSECURITY + + Process all packets without security checks. This is intended to be used + mainly with TOSSDIR/TOSSFILE and with packets created by CrashWrite. + +Support programs +---------------- + +crashexport <crashmail.prefs> <output file> <format> [GROUP <groups>] + + This command reads a CrashMail configuration file and creates an arealist. + If the GROUP keyword is used, only areas in the specified groups are + included. CrashExport can create lists in these formats: + + AREASBBS + + A standard areas.bbs file that can be read by many programs + + FORWARD + + A list of areas that can be used for forward-requests on other nodes. + The file is a pure ASCII file where each line contains the name of the + area and its description. + + FORWARDNODESC + + Same as FORWARD but without area descriptions. + + GOLDED + + Creates an area configuration file in GoldED format. + + TIMED + + Creates an area configuration file in timEd format. + +crashstats <statsfile> [SORT <mode>] [LAST7] [NONODES] [NOAREAS] + + This command displays the statistics file created by CrashMail. With the + SORT keyword you can specify these sort modes: + + a Sort alphabetically + t Sort by total number of messages + m Sort by msgs/day + d Sort by first time messages were imported + l Sort by last time messages were importd + u Sort by number of dupes + + With LAST7, you can see detailed information about the flow of messages in + area areas for the last seven days. With NONODES and NOAREAS you can decide + to hide node or area statistics. + +crashlist [<dir>] + + Builds an index for the nodelists in the specified directory (or in the + current directory if no directory is specified). To find out what + nodelists to read, CrashList uses a file called cmnodelist.prefs in the + nodelist directory. The format of this file is as follows: + + <nodelist name> [<default zone>] + + As the name of the nodelist, you can either specify the full name of the + nodelist or just the base name of the nodelist (without .xxx at the end). + If you just specify the base name, CrashList will use the latest nodelist + with that name (selected by date, not the extension). A default zone can + be used for regional nodelists without a Zone line. All lines beginning + with a semicolon are treated as comments. Pointlists should be in + BinkleyTerm format and should be specified after the real nodelists. + + Example cmnodelist.prefs: + + ; Configuration for CrashList + ; + ; Format: <nodelist> [<default zone>] + NODELIST + BTPOINT + +crashgetnode <node> [<nodelist dir>] + + Looks up the specified node in the nodelist and prints the information + that was found. If no nodelist directory is specified, CrashGetNode uses + the path specified in the environment variable CMNODELISTDIR. + +crashmaint [MAINT] [PACK] [VERBOSE] [SETTINGS <filename>] [PATTERN <pattern>] + + Deletes old messages according to KEEPNUM and KEEPDAYS in crashmail.prefs. The + program can do two different operations on a messagebase, MAINT and PACK. The + meaning of these two modes are different for different messagebase formats. + + *.msg + + MAINT deletes messages and PACK renumbers the area. + + JAM + + MAINT sets the Deleted flag for the messages. PACK removes all messages with + the Deleted flag from the messagebase. + + Both MAINT and PACK can be specified at the same time. You can specify a + config file other than the default with the SETTINGS keyword (use the + environment variable CMCONFIGFILE to set the default configuration file). + Using the PATTERN keyword, you can perform the operations on only some of your + areas. VERBOSE gives you a lot of information which you don't really need. + + Example: crashmaint MAINT PACK PATTERN R20_AMIGA* + +crashwrite DIR <directory> ... + + CrashWrite reads a text file and creates a .pkt file that can be processed + by CrashMail. This can be used to post announcements and other messages in + areas. The best way to use CrashWrite is to let it generate packets in a + separate directory and then toss them with TOSSDIR NOSECURITY. + + There are many keywords for CrashWrite. All keywords are optional except for + DIRECTORY. If you do not enter a keyword, a default value will be used. + + FROMNAME <string> + FROMADDR <node> + TONAME <string> + TOADDR <node> + SUBJECT <string> + + Use these keywords to set the header of the message. You only need to enter + TONAME and TOADDR for netmails. + + PKTFROMADDR <string> + PKTTOADDR <string> + + Use these if you want to set the origin and destination address of the packet + to something other than the origin and destination address of the message + inside the packet. If you do not specify these keywords, FROMADDR and + TOADDR will be used for the packet as well. + + PASSWORD <string> + + You can use this keyword to set a password for the packet. The maximum + length of the password is eight characters. + + AREA <area> + + The area the message should be posted in. If you do not enter an area, the + message will be sent as a netmail. + + ORIGIN <origin> + + The origin line for the message. This keyword has no effect for netmail + messages. + + DIR <dir> + + The directory where the packet should be placed. + + TEXT <filename> + + The name of a text file that should be included as the message text. + + NOMSGID + + Prevents CrashWrite from adding a MSGID line. + + FILEATTACH + + Sets the file-attach flag for netmails. The filename should be put in the + subject line. + +crashlistout <directory> [<zone>] [<pattern>] VERBOSE + + This command lists the contents of a outbound directory. Use zone to specify + which zone the directory is for (the default is 2). It is possible to only + list files for nodes that match a specified pattern. If you use the VERBOSE + switch, crashlistout will also list the contents of any *.req and flow files. + + +Paths +----- +You should always use absolute paths in crashmail.prefs, otherwise CrashMail +will fail to unpack incoming bundles. If you use relative paths, CrashMail +will also use relative paths in flow files which might confuse your mailer. + +Outbound +-------- +CrashMail uses a 5D BinkleyTerm outbound. If there is a demand for FrontDoor +style outbounds (*.msg based), it might be implemented in a future version. + +Messagebase formats +------------------- +CrashMail currently can use *.msg messagebase and JAM messagebases. + +Some notes on the different messagebase formats: + + *.msg + + *.msg is the most basic format for Fidonet messages. It is specified in + FTS-0001 and most Fidonet programs can handle this. There are however some + variations. There are Zone and Point fields in the message header, but + since some programs use them for other purposes, CrashMail doesn't read + them. This means that CrashMail won't work if your reader doesn't create + INTL, TOPT and FMPT kludge lines. Most readers do so this probably won't + be a problem. + + JAM + + JAM is a newer messageformat which while not perfect at least is much + better than *.msg. It provides reply-linking, but unfortunately not + between areas. JAM has a few odd features which CrashMail does not + support. CrashMail will not create TRACE fields from Via kludges, it + does not support messages with multiple recipients (carbon copies) and + it does not support file-attaches with wildcards, indirect file-attaches + or file-attaches with aliases. CrashMail also handles only one attached + file/file request per message. + +Highwater marks +--------------- +CrashMail can use highwater marks to speed up the exporting of messages. The +highwater mark is only the number of the highest exported message in an area. +If you decide to use highwater marks, CrashMail will only export messages +with a message number that is higher that the old highwater mark. If you want +to export messages with a lower number than the highwater mark, you have to +force CrashMail to scan the whole area by deleting the file where the +highwater mark is stored. In *.msg areas the highwater mark is stored in the +first message of the area (1.msg) and in JAM areas it is stored in the +<basename>.cmhw file. (Also note that this is why the first message in a +*.msg area never is exported.) + +Nodelists +--------- +CrashMail can use two nodelist formats: + +1) Its own nodelist format ("CMNL"). The format consists of a rather simple +index which is created by the program CrashList. See the descriptions of +CrashList and CrashGetNode for more information. + +2) A nodelist in the Version7+ format ("V7+") used by BinkleyTerm and other +programs. + +Patterns +-------- + + String patterns + + String patterns are rather primitive in CrashMail. There are two available + wildcards, ? and *. ? matches any character and * matches the rest of the + string. ab*, ab*de and ab*de* are therefore equivalent and all match all + strings beginning with ab. String patterns are used for robot names, remap + names etc. + + Node patterns + + CrashMail has very powerful pattern matching for nodes. "*" and "?" can + be used as wildcards and there a special keywords that matches all nodes + that belongs to a zone, region, net, hub or a node. + + 2:200/207.* + + This would match 2:200/207.1, 2:200/207.2, 2:200/207.42 etc + + 2:200/2*.* + + This would match 2:200/213.99, 2:200/224.48, 2:200/207.0 etc. + This would NOT match 2:200/103.42. + + 2:200/2?.* + + This would match 2:200/24.42, 2:200/25.52 but not 2:200/200.0. + + 2:*/100.0 + + This would match 2:200/100.0, 2:200/100.0, 2:300/100.0 etc. + + ZONE 2 + + This matches everything in zone 2. This has the same effect as 2:*/*.*. + + REGION 2:20 + + This matches everything in region 2:20. You can only use the REGION + keyword if you use a nodelist. + + NET 2:200 + + Matches everything in net 2:200. This is the same as 2:200/*.*. + + HUB 2:205/300 + + Matches all node that belongs to the hub 2:205/300. You can only use + the HUB keyword if you use a nodelist. + + NODE 2:200/108 + + Matches the node 2:200/108 and all its points. This does exactly the + same as 2:200/108.*. + + *:*/*.* + + This would match everything. + + Destination node patterns + + These are a bit more complicated since the destination node of the + operation is also involved. This is best explained with netmail routing + as an example. In CrashMail, destination node patterns are also used + in the remap function, but it works very similarly there. + + *:*/*.0, netmail for 2:200/108.7 + + This netmail would be routed to 2:200/108.0 + + *:*/0.0, netmail for 2:200/108.7 + + This netmail would be routed to 2:200/0.0 + + ZONE, netmail for 2:201/274 + + This netmail is routed to the Zone Coordinator, in this case 2:2/0. + + REGION, netmail for 2:200/207.5 + + This netmail is routed to the Region Coordinator, in this case 2:20/0. + You can only use this keyword if you use a nodelist. + + NET, netmail for 2:200/108.7 + + This netmail is routed to the host of the net, in this case 2:200/0. + This is the same as *:*/0.0 + + HUB, netmail for 2:200/108.7 + + This netmail is routed to the hub of the node, in this case 2:200/100. + You can only use this keyword if you use a nodelist. + + NODE, netmail for 2:200/108.7 + + This netmail is routed to the boss of the point, in this case 2:200/108.0. + This is equivalent to *:*/*.0. + + *:*/*.*, mail for 2:203/699.0 + + This would be routed to 2:203/699.0 + + Added: crashmail/branches/vendor/0.71-2/doc/example.prefs =================================================================== --- crashmail/branches/vendor/0.71-2/doc/example.prefs (rev 0) +++ crashmail/branches/vendor/0.71-2/doc/example.prefs 2009-02-07 21:03:10 UTC (rev 34) @@ -0,0 +1,714 @@ +; Example configuration file for CrashMail II +; +; This file demonstrates all keywords you can use in the configuration file. +; +; General configuration +; ===================== +; +; SYSOP <name> +; +; This keyword lets you configure the name of the system operator. It is used +; as the sender name of all messages that CrashMail generates. (Bounce +; messages, receipts, AreaFix responses.) Max 36 characters. + +SYSOP "Johan Billing" + +; LOGFILE <filename> +; LOGLEVEL <level> +; +; Here you can configure the logging in CrashMail. CrashMail will write all +; log messages with a level lower than the level configured here both to the +; console and to the specified file. +; +; The following loglevels exist: +; +; 1 Minimum +; 2 Small +; 3 Normal +; 4 Extra +; 5 Extreme +; 6 Debug +; +; In the Linux version of CrashMail, it is possible to enter "syslog" as the +; filename. If you do this, everything will be logged to the syslog instead. + +LOGFILE "/var/log/crashmail.log" +LOGLEVEL 5 + +; DUPEFILE <filename> <maxnumber> +; DUPEMODE BAD/KILL/IGNORE +; +; Here the file that CrashMail uses for its duplicate detection is specified. +; Maxnumber is the maximum number of the messages that should be stored in the +; dupe buffer. Each message in the dupe buffer consumes 8 bytes of RAM and on +; average about 40 bytes of disk space. +; +; These are the available modes for dupe checking: +; +; BAD Dupes are moved to the BAD area +; KILL Dupes are killed +; IGNORE No dupechecking + +DUPEFILE "/var/log/crashmail.dupes" 200 +DUPEMODE BAD + +; LOOPMODE IGNORE/LOG/LOG+BAD +; +; Loop-mails are netmails that are routed between two systems in an infite +; loop. CrashMail can detect such mails by checking if you system is already +; listed in the ^Via lines of the message. This keyword decides what +; CrashMail should do when such a message is encountered. +; +; IGNORE do nothing at all +; LOG CrashMail logs that it has encountered a loop-mail. +; LOG+BAD CrashMail logs the loop-mail and imports a copy to your BAD area. +; Only the kludges are imported to preserve privacy. + +LOOPMODE LOG+BAD + +; MAXPKTSIZE <maxsize> +; MAXBUNDLESIZE <maxsize> +; +; Here you can configure the maximum size of the .pkt files and bundles that +; CrashMail generates. If a file grows bigger than this limit, CrashMail +; starts a new bundle/pkt instead. The limits are in KB. + +MAXPKTSIZE 50 +MAXBUNDLESIZE 100 + +; DEFAULTZONE <zone> +; +; If CrashMail can't figure out the zone of a message in another way, the +; zone configured here is used. + +DEFAULTZONE 2 + +; NODELIST <path> <type> +; +; This is the nodelist that CrashMail should use. To see the supported +; nodelist formats, type "crashmail version". The meaning of path may +; be different for different nodelist formats. + +; Paths +; ===== +; +; INBOUND <directory> +; +; The inbound directory is the directory where CrashMail looks for .pkt files +; and bundles to toss. + +INBOUND "/var/spool/ftn/inb" + +; OUTBOUND <directory> +; +; The outbound directory is where CrashMail writes the flow files that tells +; the mailer what files to send. + +OUTBOUND "/var/spool/ftn/outb" + +; TEMPDIR <directory> +; +; This is the directory where CrashMail unpacks incoming bundles. +; + +TEMPDIR "/tmp" + +; CREATEPKTDIR <directory> +; +; This is the directory where CrashMail stores created .pkt files until they +; are stored in the packet directory. + +CREATEPKTDIR "/tmp" + +; PACKETDIR <directory> +; +; This is the directory where CrashMail stores generated bundles. + +PACKETDIR "/var/spool/ftn/outb" + +; STATSFILE <filename> +; +; This is the file where CrashMail stores statistics about areas and nodes. +; You can display the contents of this file with CrashStats. + +STATSFILE "/var/spool/ftn/data/crashmail.stats" + +; BEFORETOSS <command> +; +; CrashMail will execute this command before a *.pkt file is tossed. You can +; use %f for the filename of the packet. CrashMail will abort tossing if this +; command returns an error. + +;BEFORETOSS "cp %f /fido/toss-backup" + +; BEFOREPACK +; +; CrashMail will... [truncated message content] |
From: <ja...@us...> - 2009-02-07 20:45:27
|
Revision: 33 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=33&view=rev Author: jame Date: 2009-02-07 20:45:22 +0000 (Sat, 07 Feb 2009) Log Message: ----------- Import crashmail-0.71 into the repository at crashmail/branches/vendor/0.71 Added Paths: ----------- crashmail/branches/vendor/ crashmail/branches/vendor/0.71/ crashmail/branches/vendor/0.71/doc/ crashmail/branches/vendor/0.71/doc/AreafixHelp.txt crashmail/branches/vendor/0.71/doc/History.txt crashmail/branches/vendor/0.71/doc/ReadMe.txt crashmail/branches/vendor/0.71/doc/example.prefs crashmail/branches/vendor/0.71/doc/filter.txt crashmail/branches/vendor/0.71/man/ crashmail/branches/vendor/0.71/man/crashexport.1 crashmail/branches/vendor/0.71/man/crashgetnode.1 crashmail/branches/vendor/0.71/man/crashlist.1 crashmail/branches/vendor/0.71/man/crashmail.1 crashmail/branches/vendor/0.71/man/crashmaint.1 crashmail/branches/vendor/0.71/man/crashstats.1 crashmail/branches/vendor/0.71/man/crashwrite.1 crashmail/branches/vendor/0.71/src/ crashmail/branches/vendor/0.71/src/Makefile crashmail/branches/vendor/0.71/src/Makefile.linux crashmail/branches/vendor/0.71/src/Makefile.os2 crashmail/branches/vendor/0.71/src/Makefile.win32 crashmail/branches/vendor/0.71/src/ReadMe.txt crashmail/branches/vendor/0.71/src/cmnllib/ crashmail/branches/vendor/0.71/src/cmnllib/Makefile.linux crashmail/branches/vendor/0.71/src/cmnllib/Makefile.os2 crashmail/branches/vendor/0.71/src/cmnllib/Makefile.win32 crashmail/branches/vendor/0.71/src/cmnllib/cmnllib.c crashmail/branches/vendor/0.71/src/cmnllib/cmnllib.h crashmail/branches/vendor/0.71/src/crashmail/ crashmail/branches/vendor/0.71/src/crashmail/areafix.c crashmail/branches/vendor/0.71/src/crashmail/areafix.h crashmail/branches/vendor/0.71/src/crashmail/config.c crashmail/branches/vendor/0.71/src/crashmail/config.h crashmail/branches/vendor/0.71/src/crashmail/crashmail.c crashmail/branches/vendor/0.71/src/crashmail/crashmail.h crashmail/branches/vendor/0.71/src/crashmail/dupe.c crashmail/branches/vendor/0.71/src/crashmail/dupe.h crashmail/branches/vendor/0.71/src/crashmail/filter.c crashmail/branches/vendor/0.71/src/crashmail/filter.h crashmail/branches/vendor/0.71/src/crashmail/handle.c crashmail/branches/vendor/0.71/src/crashmail/handle.h crashmail/branches/vendor/0.71/src/crashmail/logwrite.c crashmail/branches/vendor/0.71/src/crashmail/logwrite.h crashmail/branches/vendor/0.71/src/crashmail/mb.c crashmail/branches/vendor/0.71/src/crashmail/mb.h crashmail/branches/vendor/0.71/src/crashmail/mb_jam.c crashmail/branches/vendor/0.71/src/crashmail/mb_jam.h crashmail/branches/vendor/0.71/src/crashmail/mb_msg.c crashmail/branches/vendor/0.71/src/crashmail/mb_msg.h crashmail/branches/vendor/0.71/src/crashmail/memmessage.c crashmail/branches/vendor/0.71/src/crashmail/memmessage.h crashmail/branches/vendor/0.71/src/crashmail/misc.c crashmail/branches/vendor/0.71/src/crashmail/misc.h crashmail/branches/vendor/0.71/src/crashmail/nl.c crashmail/branches/vendor/0.71/src/crashmail/nl.h crashmail/branches/vendor/0.71/src/crashmail/nl_cmnl.c crashmail/branches/vendor/0.71/src/crashmail/nl_cmnl.h crashmail/branches/vendor/0.71/src/crashmail/nl_v7p.c crashmail/branches/vendor/0.71/src/crashmail/nl_v7p.h crashmail/branches/vendor/0.71/src/crashmail/node4dpat.c crashmail/branches/vendor/0.71/src/crashmail/node4dpat.h crashmail/branches/vendor/0.71/src/crashmail/outbound.c crashmail/branches/vendor/0.71/src/crashmail/outbound.h crashmail/branches/vendor/0.71/src/crashmail/pkt.c crashmail/branches/vendor/0.71/src/crashmail/pkt.h crashmail/branches/vendor/0.71/src/crashmail/safedel.c crashmail/branches/vendor/0.71/src/crashmail/safedel.h crashmail/branches/vendor/0.71/src/crashmail/scan.c crashmail/branches/vendor/0.71/src/crashmail/scan.h crashmail/branches/vendor/0.71/src/crashmail/stats.c crashmail/branches/vendor/0.71/src/crashmail/stats.h crashmail/branches/vendor/0.71/src/crashmail/toss.c crashmail/branches/vendor/0.71/src/crashmail/toss.h crashmail/branches/vendor/0.71/src/jamlib/ crashmail/branches/vendor/0.71/src/jamlib/LICENSE crashmail/branches/vendor/0.71/src/jamlib/Makefile.linux crashmail/branches/vendor/0.71/src/jamlib/Makefile.os2 crashmail/branches/vendor/0.71/src/jamlib/Makefile.win32 crashmail/branches/vendor/0.71/src/jamlib/crc32.c crashmail/branches/vendor/0.71/src/jamlib/jam.h crashmail/branches/vendor/0.71/src/jamlib/jamlib.doc crashmail/branches/vendor/0.71/src/jamlib/lastread.c crashmail/branches/vendor/0.71/src/jamlib/mbase.c crashmail/branches/vendor/0.71/src/jamlib/message.c crashmail/branches/vendor/0.71/src/jamlib/structrw.c crashmail/branches/vendor/0.71/src/jamlib/structrw.h crashmail/branches/vendor/0.71/src/jamlib/subpack.c crashmail/branches/vendor/0.71/src/obj/ crashmail/branches/vendor/0.71/src/oslib/ crashmail/branches/vendor/0.71/src/oslib/os.h crashmail/branches/vendor/0.71/src/oslib/osdir.h crashmail/branches/vendor/0.71/src/oslib/osfile.h crashmail/branches/vendor/0.71/src/oslib/osmem.h crashmail/branches/vendor/0.71/src/oslib/osmisc.h crashmail/branches/vendor/0.71/src/oslib/ospattern.h crashmail/branches/vendor/0.71/src/oslib_linux/ crashmail/branches/vendor/0.71/src/oslib_linux/Makefile crashmail/branches/vendor/0.71/src/oslib_linux/os.c crashmail/branches/vendor/0.71/src/oslib_linux/os_linux.h crashmail/branches/vendor/0.71/src/oslib_linux/osdir.c crashmail/branches/vendor/0.71/src/oslib_linux/osfile.c crashmail/branches/vendor/0.71/src/oslib_linux/osmem.c crashmail/branches/vendor/0.71/src/oslib_linux/osmisc.c crashmail/branches/vendor/0.71/src/oslib_linux/ospattern.c crashmail/branches/vendor/0.71/src/oslib_os2/ crashmail/branches/vendor/0.71/src/oslib_os2/Makefile crashmail/branches/vendor/0.71/src/oslib_os2/os.c crashmail/branches/vendor/0.71/src/oslib_os2/os_os2.h crashmail/branches/vendor/0.71/src/oslib_os2/osdir.c crashmail/branches/vendor/0.71/src/oslib_os2/osfile.c crashmail/branches/vendor/0.71/src/oslib_os2/osmem.c crashmail/branches/vendor/0.71/src/oslib_os2/osmisc.c crashmail/branches/vendor/0.71/src/oslib_os2/ospattern.c crashmail/branches/vendor/0.71/src/oslib_win32/ crashmail/branches/vendor/0.71/src/oslib_win32/Makefile crashmail/branches/vendor/0.71/src/oslib_win32/os.c crashmail/branches/vendor/0.71/src/oslib_win32/os_win32.h crashmail/branches/vendor/0.71/src/oslib_win32/osdir.c crashmail/branches/vendor/0.71/src/oslib_win32/osfile.c crashmail/branches/vendor/0.71/src/oslib_win32/osmem.c crashmail/branches/vendor/0.71/src/oslib_win32/osmisc.c crashmail/branches/vendor/0.71/src/oslib_win32/ospattern.c crashmail/branches/vendor/0.71/src/shared/ crashmail/branches/vendor/0.71/src/shared/expr.c crashmail/branches/vendor/0.71/src/shared/expr.h crashmail/branches/vendor/0.71/src/shared/fidonet.h crashmail/branches/vendor/0.71/src/shared/jblist.c crashmail/branches/vendor/0.71/src/shared/jblist.h crashmail/branches/vendor/0.71/src/shared/jbstrcpy.c crashmail/branches/vendor/0.71/src/shared/jbstrcpy.h crashmail/branches/vendor/0.71/src/shared/mystrncpy.c crashmail/branches/vendor/0.71/src/shared/mystrncpy.h crashmail/branches/vendor/0.71/src/shared/node4d.c crashmail/branches/vendor/0.71/src/shared/node4d.h crashmail/branches/vendor/0.71/src/shared/parseargs.c crashmail/branches/vendor/0.71/src/shared/parseargs.h crashmail/branches/vendor/0.71/src/shared/path.c crashmail/branches/vendor/0.71/src/shared/path.h crashmail/branches/vendor/0.71/src/shared/storedmsg.h crashmail/branches/vendor/0.71/src/shared/types.h crashmail/branches/vendor/0.71/src/tools/ crashmail/branches/vendor/0.71/src/tools/crashexport.c crashmail/branches/vendor/0.71/src/tools/crashgetnode.c crashmail/branches/vendor/0.71/src/tools/crashlist.c crashmail/branches/vendor/0.71/src/tools/crashlistout.c crashmail/branches/vendor/0.71/src/tools/crashmaint.c crashmail/branches/vendor/0.71/src/tools/crashstats.c crashmail/branches/vendor/0.71/src/tools/crashwrite.c Property changes on: crashmail/branches/vendor/0.71 ___________________________________________________________________ Added: svn:mergeinfo + Added: crashmail/branches/vendor/0.71/doc/AreafixHelp.txt =================================================================== --- crashmail/branches/vendor/0.71/doc/AreafixHelp.txt (rev 0) +++ crashmail/branches/vendor/0.71/doc/AreafixHelp.txt 2009-02-07 20:45:22 UTC (rev 33) @@ -0,0 +1,114 @@ + + Description of CrashMail's built-in AreaFix + =========================================== + +What is AreaFix? +---------------- +AreaFix is a feature present at most FidoNet nodes, either built-in in +the tosser or as a stand-alone program. AreaFix allows you to connect +and disconnect to echomail areas, change your password and change some +other things in your configuration without asking your feed/boss to do +it for you. + +How do I talk to AreaFix? +------------------------- +You communicate with AreaFix using netmail messages. The message header +of a message to AreaFix should look like this: + +From: Johan Billing + To: AreaFix +Subj: <password> [<switches>] + +<AreaFix commands> +... +--- + +<Password> is your private AreaFix password that you need to make sure +that nobody else alters your configuration. Your AreaFix password is +assigned to you by your boss/feed, so you may have to ask him about a +password. + +[<switches>] are extra commands that you can send to AreaFix. Currently +there is only one switch: + + -l or -q Send list of all areas + +This switch is only here to be compatible with other AreaFix programs. +It is recommended that you use the %-commands described later instead. + +"---" marks the end of an AreaFix message. + +NOTE: The name doesn't necessarily have to be AreaFix, your boss may have +configured CrashMail to use other names instead. + +What commands can I put in the text? +------------------------------------ + +Change connected areas: + +[+]areaname[,R=<max>] Connect to an area. The '+' is optional. If + the R option is specified after the area, + the specified number of old messages in the area + will be rescanned and sent to you. + +-areaname Disconnect from an area + +=areaname[,R=<max>] Update. You can use this to rescan an area which you + already are connected to. + +Special commands + +%HELP Send this text + +%LIST Send list of all areas +%QUERY Send list of all linked areas +%UNLINKED Send list of all unlinked areas + +%PAUSE Do not send any echomail until a %RESUME is sent +%RESUME Send echomail again. These commands can be useful + if you are away for a few weeks and don't want to + get any echomail. + +%PWD <pw> Changes your AreaFix password to the new password + specified after the command. + +%COMPRESS <name> Changes the packer used to compress your mail to + the packer specified after the command. Send + "%COMPRESS ?" to get a list of packers. + +%RESCAN All areas that are added or updated after this + line will be rescanned, that is all old messages + in those areas will be sent to you. This can be + very dangerous since you don't know how many + messages you will get so in most cases, it is + better to use the R option when adding/updating + areas instead. + +Examples: +========= + +R20_TRASHCAN Connect to R20_TRASHCAN + +%LIST Send list of areas + +R20_AMIGA,R=50 Connect to R20_AMIGA and get the last 50 messages + in the area. + +%PWD xyzzy Change your AreaFix password to "xyzzy". + +%COMPRESS ZIP Change your compression method to ZIP. + +%PAUSE Turn off echomail for a while + +%RESUME Turn on echomail again + +=R20_AMIGA,R=100 Get the last 100 messages in R20_AMIGA (if you are + already connected to the area) + +A few words on rescan +===================== +Messages that are rescanned might not look exactly like they originally did +because of the way they are stored locally. When messages are rescanned from +a JAM messagebase, all control lines ("kludges") will be at the beginning of +the message regardless of where they originally were. You can easily tell if +a message has been rescanned, just look for the RESCANNED control line. Added: crashmail/branches/vendor/0.71/doc/History.txt =================================================================== --- crashmail/branches/vendor/0.71/doc/History.txt (rev 0) +++ crashmail/branches/vendor/0.71/doc/History.txt 2009-02-07 20:45:22 UTC (rev 33) @@ -0,0 +1,435 @@ +Version 0.7 was probably the last major revision of CrashMail. If you +are using CrashMail, please send me an e-mail (bi...@df...). +I am curious about how many CrashMail users there still are... + +Changes in version 0.71 + + - Fixed a bug that could cause CrashMail to crash when exporting messages + from a JAM area with deleted messages. + + - Updated JAMLIB to 1.3.2 + + - Win32 binaries are now compiled with MinGW 3.1.0-1 instead of + gcc-2.95-mingw32. + +Changes in version 0.7 + + - Implemented a message filter. Using this feature, you can filter out messages + that match specified criteria and perform a number of commands on them. This + filter will for example copy echomail messages addressed to me to a special + area (the area needs to be configured as a local area using LOCALAREA): + + FILTER SOURCE=TOSSED and TYPE=ECHOMAIL and TONAME="Johan Billing" + COPY PERSONAL_MESSAGES + + See doc/filter.txt for a complete description of the new message filter. + + - The new message filter replaces the configuration keywords ROBOTNAME, REMAP + and REMAPNODE since the message filter can perform these tasks. + + Replacement for ROBOTNAME <name> <command>: + + FILTER TYPE=NETMAIL and TOLOCALAKA and TONAME=<name> + EXECUTE <command> + + Replacement for REMAP <pattern> <new name> <destination pattern> + + FILTER TYPE=NETMAIL and TOLOCALAKA and TONAME=<pattern> + REMAPMSG <new name> <destination pattern> + + Replacement for REMAPNODE <node pattern> <destination pattern> + + FILTER TYPE=NETMAIL and TOADDR=<node pattern> + REMAPMSG "*" <destination pattern> + + - Rewrote the dupe-checking. CrashMail now no longer needs to load the entire + dupe buffer into memory. This means that you now can keep a much large dupe + buffer without using a lot of memory. + + CrashMail will not read your old dupe file, you have to delete it. + + Also note that the second argument for DUPEFILE has changed from the size + of the dupe buffer in KB to the maximum number of messages that should be + stored in the dupe buffer. If you don't update your configuration, you will + only have a very small dupe buffer. + + - CrashMail no longer keeps zero-length files in the packet directory for use + in naming new bundles. Instead it relies solely on the cmindex file. + + - CrashMail now also supports nodelists in the Version 7+ format in addition + to its own format. (Note: It seems like the Linux version of FastLst does + not include hub/region in the compiled nodelist for some reason. This means + that node patterns with HUB/REGION won't work.) + + - New tool in the CrashMail suite: crashlistout. This tool can list your + outbound directory in a pretty way. + + - New configuration keywords: BEFORETOSS and BEFOREPACK. You can use these + to execute custom commands before tossing/packing a *.pkt file. + + - New keyword PKTFROM in node configuration. You can use this if you want + to set the originating address of .pkt files to something other than the + default. + + - New configuration switches: FLOWCRLF and NOEXPORTNETMAIL. FLOWCRLF makes + CrashMail use CRLF as end-of-line characters in flow files instead of + just LF. NOEXPORTNETMAIL makes CrashMail ignore netmail areas with + SCAN and SCANLIST. This together with NOROUTE makes it possible to use + an external program for handling netmail. + + - New switch NEEDSPLUS for the REMOTEAF keyword. + + - New commandline argument: SCANDOTJAM. This can be used for scanning areas + listed in echomail.jam/netmail.jam files. + + - In addition to "programname ?", you can now also use -h, --help, help, /? + and /h with CrashMail and the related utilities to show the commandline help. + + - Improved the time it takes for CrashMail to load the configuration file. + Only noticable if you have a huge number of pass-through areas. + + - Fixed some bugs found in the ChangeLog from CrashEcho (thanks guys!) + + - SCANLIST does not abort anymore if an area cannot be scanned + + - RESCAN was broken and always returned an "unknown area" error + + - Added sanity checks to JAM linking to prevent CrashMail from crashing + on messagebases with broken reply links + + - Fixed some memory leaks in the JAM handling. + + - Upgraded JAMLIB to version 1.3.1 + + - Some minor cosmetic changes. + + - Cleaned up the source in various places. + + +Changes in version 0.62: + + CrashMail + + - CrashMail would check packet passwords even if the command-line option + NOSECURITY was used. Fixed. + + - The Local flag is now cleared and the Sent flag is set before messages + are imported to the messagebase. In previous versions of CrashMail, + imported messages with Local flag and no Sent flag were re-exported the + next time CrashMail SCAN was run. Fixed. + + - CrashMail no longer leaves empty lines in the config file when areas are + removed by the AreaFix. + + CrashMaint + + - CrashMaint used local time instead of UTC when deleting old messages in + JAM areas. This could cause messages to be deleted ahead of time. Thanks + to Alexander S Aganichev for noticing this and sending me a patch. + + JAMLIB + + - There was a bug in JAMLIB that caused the Linux version of CrashMail to fail + when trying to import an empty message to the messagebase. The bug has been + fixed and CrashMail now uses the new version of JAMLIB. + + +Changes in version 0.61: + + CrashMail: + + - CrashMail incorrectly bounced netmails to nodes listed as hold in the + nodelist are no longer bounced. Fixed. Netmails to nodes listed as down + are still bounced. + + - The CrashMail REMOVE command didn't work. Fixed. + + - The AreaFix would sometimes miss some areas when you unsubscribed to areas + using patterns. + + - The AreaFix no longer crashes when it tries to remove areas after the + feed has unsubscribed to them. + + - JAM_LINK and JAM_HIGHWATER would turn on both linking and the use of + highwater marks. Fixed. + + - TINYSEENBY didn't work. Fixed. + + - CrashMail had problems with backslashes in file-attaches. Fixed. + + JAMLIB + + - Changed to latest version of JAMLIB. + + CrashWrite: + + - PKTFROMADDR/PKTTOADDR didn't work. Fixed. + + - CrashWrite had problems with paragraphs longer than 100 characters. Fixed. + + +Changes in version 0.6 + + CrashMail: + + - The AreaFix no longer truncates area names longer than 30 characters in + the response messages. + + - The Linux version of CrashMail now shows the real return code (using + WEXITSTATUS()) when an external command returns an error. + + - Two default areas may now have the same path + + - Cleaned up the Makefiles + + - CrashMail no longer sets the Sent flag on all imported message. CrashMail + now only exports messages with the Local flag set and the Sent flag cleared. + + - CrashMail can now also export JAM messages with very long kludges without + problems. Previous versions had problems with kludges longer than 200 chars. + + - LF characters are stripped when importing messsages to a JAM messagebase. + + - Space characters are stripped in AreaFix commands. This means that AreaFix + commands will work even if they begin with one or several space characters. + + - Node numbers can now be abbreviated on the EXPORT lines. See example.prefs + for an example on how this works. Thanks to Per Lundberg for idea and + original patch. + + - You can now define local areas in crashmail.prefs using the keyword + LOCALAREA. Local areas are not used by CrashMail, but are included in config + files created by CrashExport and are maintained when running CrashMaint. + + CrashWrite: + + - There are two new options PKTFROMADDR and PKTTOADDR that can be used to + set the origin and destination address to something other than the origin + and destination address of the message inside the packet. + + - A new option PASSWORD that can be used to set the password of the created + packet. + + JAMLIB: + + - JAMLIB could crash on corrupt messagebases. Fixed. + + - JAMLIB lo longer reads or writes structures directly from/to disk. This + makes JAMLIB even more portable and ensures that the Intel byte-order will + be used on all platforms regardless of the processor used. + + All programs: + + - The Win32 version of CrashMail did not work if you were tossing mail to + many downlinks since you could only open a limited number of files with + fopen() (about 40). Because of this, the Win32 version has been rewritten + to use Windows' I/O functions rather than the standard C stdio. The problem + is solved and the Win32 version is now also slightly faster. Note that + JAMLIB still uses fopen() so do not use too high a value for JAM_MAXOPEN. + + - Improved the error messages in all programs. Now CrashMail will also + tell you why an I/O error occurred using the response given by the + operating system. (To do this, the functions osError() and osErrorMsg() + were added to oslib.) + + - Added function osVFPrintf() to oslib + + - Changed error message "Too many arguments" in command line parsing to + to "Unknown keyword %s". This should make it easier to find the + problem. + + - Several cosmetic changes to program output and source code + + +Changes in version 0.52 + + CrashMail: + + - Three new flags for the NODE keyword: CRASH, DIRECT and HOLD. With these + flags, you can set the priority for packed and unpacked netmail. + + - When the packet directory was missing, the error message said that the + outbound directory was missing. This could be very confusing. Fixed. + + - Fixed a Y2K-related bug in the JAM import function. + + - Node patterns with REGION or HUB did not work for points. Fixed. + + - Added the new %-code %R for the ROBOTNAME keyword. %R gives the message + in RFC-format with the addresses in RFC-format (na...@pX...main). + + - When importing messages, CrashMail now checks for robot and AreaFix names + before messages are remapped. If you want to remap messages to AreaFix, you + have to make sure that no AreaFix names are configured. REMAPNODE still + works as before. + + - CrashMail now updates the DateProcessed field when exporting messages from + a JAM area. + + - CrashMail no longer is so strict with names of packet files names. Packet + names are now considered valid even if they contain non-hexadecimal + characters. + + - When glibc 2.1 was used, the Linux version of CrashMail exported messages + from JAM messagebases with an incorrect date. The time was one hour ahead. + This has now been fixed. + + - Dates in Via lines were one month early. Fixed. + + - If a netmail area had an IMPORT line, all netmails would be imported to + that area. This has been fixed and IMPORT now works as intended. + + - CrashMail no longer aborts if a JAM area could not be opened when exporting + messages. CrashMail instead continues and exports mail from all other areas. + + - CrashMail used to create an invalid configuration file when auto-adding + areas to a config file where the last line did not end with an end-of-line + character. This has now been fixed. + + - You can now use the environment variable CMCONFIGFILE to set the default + configuration file for CrashMail. + + - CrashMail would incorrectly import FMPT kludges to JAM areas. Fixed. + + CrashExport: + + - CrashExport did not write netmail areas correctly to a GoldED configuration + file. This has now been fixed. + + - CrashExport can now also create en area configuration file for timEd. + + - CrashExport no longer exports areas with the UNCONFIRMED keyword. + + CrashStats: + + - The total number of messages per day were not calculated correctly in the + LAST7 mode, instead a random number would be shown. The average total number + of messages per day was also incorrect. These bugs have now been fixed. + + CrashMaint: + + - You can now use the environment variable CMCONFIGFILE to set the default + configuration file for CrashMail. + + All programs: + + - The argument parsing has been improved. The main change for the user is that + "programname ?" now gives a more helpful output. + + - The functions remove(), rename() and system() has been moved to the oslib. + This change should not be noticable for the user. + + - Peter Karlsson has prepared man-pages for CrashMail and all related tools. + Thanks, Peter! These are handy under Linux, but can also be used on other + platforms if you install a "man"-program. + + - Peter Karlsson has ported CrashMail II to OS/2. Thanks, Peter! + + +Changes in version 0.5 + + CrashMail: + + - Because of a bug in the pattern matching, an empty string would match any + pattern. Fixed. + + - Areas belonging to the same group were not listed together in the area lists + generated by the Areafix. + + - CrashMail showed the same error message twice when the packer returned an + error when unarchiving a bundle. Fixed. + + - If the highwater mark was lower than the lowest messagenumber in a JAM area, + CrashMail would still try to export messages beginning from the highwater + mark. Unfortunately this would cause a crash because of another bug + that appeared when CrashMail tried to export an unreadable message. + All this has now been fixed. + + - CrashMail no longer stops exporting when it encounters an unreadable message + + - CrashMail no longer adds its own node number to the path if it already + exists as the last node in the path lines. + + - CrashMail could sometimes create circular reply links and get caught in + infinite loops when dupes were imported to a JAM messagebase. Fixed. + + - New config option: ALLOWKILLSENT + + - New command-line keyword for CrashMail: TOSSDIR + + - New command-line keyword for CrashMail: NOSECURITY. If this keyword is + used, all packets will be tossed without security checks. This is mainly + intended to be used together with TOSSFILE/TOSSDIR and packets + generated by CrashWrite. + + CrashMaint: + + - CrashMaint no longer checks the ActiveMsgs counter in the JAM messagebase + to determine if the area needs to be packed. This check did not always work, + among other things because all programs did not update the counter + properly. JAM areas are now always packed when "crashmaint pack" is + used. + + - CrashMaint now rebuilds the ActiveMsgs counter when packing a JAM area. + + - CrashMaint did not update the messagebase header when removing all messages + from a JAM area. This would cause some messages not to be exported when + highwater marks were used. (If you suspect that this has happened to + you, remove all *.cmhw files.) + + - Improved the error handling a bit in CrashMaint. Now you get an error if + an area couldn't be updated since it was in use by another program. + + CrashWrite: + + - Included CrashWrite, a new tool for CrashMail. CrashWrite reads a text + file and then creates a packet file that can be tossed by CrashMail. + + CrashExport: + + - CrashAreasBBS and CrashForward have been replaced by the new program + CrashExport. In addition to the old formats, CrashExport can also + create arealists in GoldED format. The old version of CrashAreasBBS had + some trouble with pass-through areas, this is gone in CrashExport. + + +Changes in version 0.42 + + - Fixed bug that occurred when sending mail to nodes with long addresses + (e.g. 9999:8888/7777.6666) + + - Fixed an error message in the outbound handling + + - Fixed a bug that occurred when auto-adding pass-through areas + + - Fixed a small memory leak + + - CrashMail got caught in an infinite loop when an unknown nodelist format + was specified in the config. This is now fixed. + + - CrashMail no longer segfaults at startup when pass-through areas are used! + + - CrashMail now adds packets to bundles in the correct order + + - CrashMail would under some circumstances use the same bundle for more than + one node. This has been fixed and a mechanism that checks that the same + bundle is not used for more than one node has been added. + + - Routing did not work properly when BOUNCEPOINTS was turned on. Fixed. + + - Removed an unnecessary linebreak from the bounce messages. + + - New configuration keyword: NOMAXOUTBOUNDZONE. See example.prefs for more + information. + + - CrashList did not handle Pvt nodes correctly. Fixed. + + - There was a small mistake in the example configuration file. The keyword is + REMOTEAF, not REMOTEAREAFIX. + + +Changes in version 0.4 + + - First public release + + Added: crashmail/branches/vendor/0.71/doc/ReadMe.txt =================================================================== --- crashmail/branches/vendor/0.71/doc/ReadMe.txt (rev 0) +++ crashmail/branches/vendor/0.71/doc/ReadMe.txt 2009-02-07 20:45:22 UTC (rev 33) @@ -0,0 +1,499 @@ + + CrashMail II + + The Next Generation! + + ...a stranger in a strange land... + + +============ +Introduction +============ +Welcome to CrashMail II! CrashMail II is basically a more portable version +of CrashMail, my tosser for Amiga computers. Users of the old Amiga +version will probably find some things familiar while some features are +gone such as the ARexx port (for obvious reasons!) and the GUI +configuration editor. The only feature that CrashMail II has and the old +CrashMail hasn't is support for JAM messagebases. (By the way, I have also +written a tick file processor called CrashTick for the Amiga. If someone +wants to port it, contect me and I'll give you the source.) + +For suggestions, bug reports and questions, don't hesitate to contact me at: + + bi...@df... + +========= +Copyright +========= +JAMLIB is copyright (c) 1999 Bj\xF6rn Stenberg. JAMLIB is released under the +GNU Lesser General Public License, See src/jamlib/jamlib.doc for more +information. + +Except where explicitly stated otherwise, all other parts of CrashMail are +copyright 1999 Johan Billing. Permission to use, copy and distribute CrashMail +is granted provided that this copyright notice is included. Permission to +modify CrashMail is granted. Distributing modified versions of CrashMail is +allowed provided that the documentation clearly states that it is a modified +version. Parts of CrashMail may be freely used in other projects as long as +the documentation mentions the original copyright holder. + +================ +Acknowledgements +================ +Many thanks to Bj\xF6rn Stenberg for creating the excellent subroutine library +JAMLIB which CrashMail uses for handling JAM messagebases. + +Thanks for Peter Karlsson for porting CrashMail II to OS/2 and the man pages. + +============= +Documentation +============= +The documentation is very brief and CrashMail probably isn't the ideal +choice for Fidonet beginners. All documentation of the available keywords +in the configuration file can be found in the example crashmail.prefs file. +Some other items about CrashMail that are worth mentioning can be found in +the section below. + +Items that need to be discussed +=============================== + +Platforms +--------- +This version of CrashMail can be compiled for Win32, Linux and OS/2. If you +are interested in running CrashMail on another platform, please contact me if +you are willing to do the work necessary to adapt CrashMail to your platform. +The amount of work required mostly depends on whether your C-compiler supports +some common POSIX-functions which CrashMail uses. + +Some notes on different platforms: + + Win32 & OS/2 + + If you want to use an old reader that only can handle 8+3 filenames, + you have to use %8 in the path of your DEFAULT area if you are using + the auto-add feature. This creates an 8 digit serial number to use as + the path for the area. Note that if CrashMail is run twice in a short + period of time (a few seconds), it might create duplicate paths. Avoid + %8 if it is at all possible. + + Linux + + Don't use the ~ character in paths. Such paths are expanded to point + to your home directory by the shell and not by the i/o functions in + the system. They will not work in CrashMail. + + In *.msg areas, make sure that all files are named *.msg and not *.MSG! + If they are not named in lowercase, CrashMail will not export them. + + As an extra bonus, the Linux version of CrashMail can use the syslog instead + of using its own log file. Just use "syslog" as the name of your log file. + + If the precompiled binaries in the CrashMail archive don't work on your + system, you will have to compile your own. See src/ReadMe.txt for more + information about this. + +Arguments +--------- +Available arguments for CrashMail: + +SCAN + + Scan all areas for messages to export. + +TOSS + + Toss all .pkt files and bundles in inbound directory. + +TOSSFILE <string> + + Toss the specified file. + +TOSSDIR <string> + + Toss all files in the specified directory. + +SCANAREA <string> + + Scan the specified area. + +SCANLIST <string> + + Scan all areas listed in the specified file. + +SCANDOTJAM <string> + + Scan all areas listed in an echomail.jam/netmail.jam file. The main difference + between SCANDOTJAM and SCANLIST is that a *.jam file contains the paths to the + messagebases instead of tagnames. Areas are only scanned once even if listed + multiple times. + +RESCAN <string> +RESCANNODE <string> +RESCANMAX <string> + + Rescans the specied area for the specied node. If RESCANMAX is specified, + it sets the maximum number of messages to rescan. + +SETTINGS <string> + + Use this configuration file instead of the default. You can use the + environment variable CMCONFIGFILE to set the default configuration file. + +VERSION + + Show version information about CrashMail. + +LOCK + + Locks CrashMail's configuration file and then exits. CrashMail has a simple + locking mechanism to ensure that two instances of CrashMail never use the + same configuration file at the same time. You can use this if you want to + temporarily want to stop CrashMail from running, e.g. when updating the + nodelist. + +UNLOCK + + Removes the lock on CrashMail's configuration file. Only use this when the + configuration file previously has been locked with LOCK, otherwise terrible + things might happen. + +NOSECURITY + + Process all packets without security checks. This is intended to be used + mainly with TOSSDIR/TOSSFILE and with packets created by CrashWrite. + +Support programs +---------------- + +crashexport <crashmail.prefs> <output file> <format> [GROUP <groups>] + + This command reads a CrashMail configuration file and creates an arealist. + If the GROUP keyword is used, only areas in the specified groups are + included. CrashExport can create lists in these formats: + + AREASBBS + + A standard areas.bbs file that can be read by many programs + + FORWARD + + A list of areas that can be used for forward-requests on other nodes. + The file is a pure ASCII file where each line contains the name of the + area and its description. + + FORWARDNODESC + + Same as FORWARD but without area descriptions. + + GOLDED + + Creates an area configuration file in GoldED format. + + TIMED + + Creates an area configuration file in timEd format. + +crashstats <statsfile> [SORT <mode>] [LAST7] [NONODES] [NOAREAS] + + This command displays the statistics file created by CrashMail. With the + SORT keyword you can specify these sort modes: + + a Sort alphabetically + t Sort by total number of messages + m Sort by msgs/day + d Sort by first time messages were imported + l Sort by last time messages were importd + u Sort by number of dupes + + With LAST7, you can see detailed information about the flow of messages in + area areas for the last seven days. With NONODES and NOAREAS you can decide + to hide node or area statistics. + +crashlist [<dir>] + + Builds an index for the nodelists in the specified directory (or in the + current directory if no directory is specified). To find out what + nodelists to read, CrashList uses a file called cmnodelist.prefs in the + nodelist directory. The format of this file is as follows: + + <nodelist name> [<default zone>] + + As the name of the nodelist, you can either specify the full name of the + nodelist or just the base name of the nodelist (without .xxx at the end). + If you just specify the base name, CrashList will use the latest nodelist + with that name (selected by date, not the extension). A default zone can + be used for regional nodelists without a Zone line. All lines beginning + with a semicolon are treated as comments. Pointlists should be in + BinkleyTerm format and should be specified after the real nodelists. + + Example cmnodelist.prefs: + + ; Configuration for CrashList + ; + ; Format: <nodelist> [<default zone>] + NODELIST + BTPOINT + +crashgetnode <node> [<nodelist dir>] + + Looks up the specified node in the nodelist and prints the information + that was found. If no nodelist directory is specified, CrashGetNode uses + the path specified in the environment variable CMNODELISTDIR. + +crashmaint [MAINT] [PACK] [VERBOSE] [SETTINGS <filename>] [PATTERN <pattern>] + + Deletes old messages according to KEEPNUM and KEEPDAYS in crashmail.prefs. The + program can do two different operations on a messagebase, MAINT and PACK. The + meaning of these two modes are different for different messagebase formats. + + *.msg + + MAINT deletes messages and PACK renumbers the area. + + JAM + + MAINT sets the Deleted flag for the messages. PACK removes all messages with + the Deleted flag from the messagebase. + + Both MAINT and PACK can be specified at the same time. You can specify a + config file other than the default with the SETTINGS keyword (use the + environment variable CMCONFIGFILE to set the default configuration file). + Using the PATTERN keyword, you can perform the operations on only some of your + areas. VERBOSE gives you a lot of information which you don't really need. + + Example: crashmaint MAINT PACK PATTERN R20_AMIGA* + +crashwrite DIR <directory> ... + + CrashWrite reads a text file and creates a .pkt file that can be processed + by CrashMail. This can be used to post announcements and other messages in + areas. The best way to use CrashWrite is to let it generate packets in a + separate directory and then toss them with TOSSDIR NOSECURITY. + + There are many keywords for CrashWrite. All keywords are optional except for + DIRECTORY. If you do not enter a keyword, a default value will be used. + + FROMNAME <string> + FROMADDR <node> + TONAME <string> + TOADDR <node> + SUBJECT <string> + + Use these keywords to set the header of the message. You only need to enter + TONAME and TOADDR for netmails. + + PKTFROMADDR <string> + PKTTOADDR <string> + + Use these if you want to set the origin and destination address of the packet + to something other than the origin and destination address of the message + inside the packet. If you do not specify these keywords, FROMADDR and + TOADDR will be used for the packet as well. + + PASSWORD <string> + + You can use this keyword to set a password for the packet. The maximum + length of the password is eight characters. + + AREA <area> + + The area the message should be posted in. If you do not enter an area, the + message will be sent as a netmail. + + ORIGIN <origin> + + The origin line for the message. This keyword has no effect for netmail + messages. + + DIR <dir> + + The directory where the packet should be placed. + + TEXT <filename> + + The name of a text file that should be included as the message text. + + NOMSGID + + Prevents CrashWrite from adding a MSGID line. + + FILEATTACH + + Sets the file-attach flag for netmails. The filename should be put in the + subject line. + +crashlistout <directory> [<zone>] [<pattern>] VERBOSE + + This command lists the contents of a outbound directory. Use zone to specify + which zone the directory is for (the default is 2). It is possible to only + list files for nodes that match a specified pattern. If you use the VERBOSE + switch, crashlistout will also list the contents of any *.req and flow files. + + +Paths +----- +You should always use absolute paths in crashmail.prefs, otherwise CrashMail +will fail to unpack incoming bundles. If you use relative paths, CrashMail +will also use relative paths in flow files which might confuse your mailer. + +Outbound +-------- +CrashMail uses a 5D BinkleyTerm outbound. If there is a demand for FrontDoor +style outbounds (*.msg based), it might be implemented in a future version. + +Messagebase formats +------------------- +CrashMail currently can use *.msg messagebase and JAM messagebases. + +Some notes on the different messagebase formats: + + *.msg + + *.msg is the most basic format for Fidonet messages. It is specified in + FTS-0001 and most Fidonet programs can handle this. There are however some + variations. There are Zone and Point fields in the message header, but + since some programs use them for other purposes, CrashMail doesn't read + them. This means that CrashMail won't work if your reader doesn't create + INTL, TOPT and FMPT kludge lines. Most readers do so this probably won't + be a problem. + + JAM + + JAM is a newer messageformat which while not perfect at least is much + better than *.msg. It provides reply-linking, but unfortunately not + between areas. JAM has a few odd features which CrashMail does not + support. CrashMail will not create TRACE fields from Via kludges, it + does not support messages with multiple recipients (carbon copies) and + it does not support file-attaches with wildcards, indirect file-attaches + or file-attaches with aliases. CrashMail also handles only one attached + file/file request per message. + +Highwater marks +--------------- +CrashMail can use highwater marks to speed up the exporting of messages. The +highwater mark is only the number of the highest exported message in an area. +If you decide to use highwater marks, CrashMail will only export messages +with a message number that is higher that the old highwater mark. If you want +to export messages with a lower number than the highwater mark, you have to +force CrashMail to scan the whole area by deleting the file where the +highwater mark is stored. In *.msg areas the highwater mark is stored in the +first message of the area (1.msg) and in JAM areas it is stored in the +<basename>.cmhw file. (Also note that this is why the first message in a +*.msg area never is exported.) + +Nodelists +--------- +CrashMail can use two nodelist formats: + +1) Its own nodelist format ("CMNL"). The format consists of a rather simple +index which is created by the program CrashList. See the descriptions of +CrashList and CrashGetNode for more information. + +2) A nodelist in the Version7+ format ("V7+") used by BinkleyTerm and other +programs. + +Patterns +-------- + + String patterns + + String patterns are rather primitive in CrashMail. There are two available + wildcards, ? and *. ? matches any character and * matches the rest of the + string. ab*, ab*de and ab*de* are therefore equivalent and all match all + strings beginning with ab. String patterns are used for robot names, remap + names etc. + + Node patterns + + CrashMail has very powerful pattern matching for nodes. "*" and "?" can + be used as wildcards and there a special keywords that matches all nodes + that belongs to a zone, region, net, hub or a node. + + 2:200/207.* + + This would match 2:200/207.1, 2:200/207.2, 2:200/207.42 etc + + 2:200/2*.* + + This would match 2:200/213.99, 2:200/224.48, 2:200/207.0 etc. + This would NOT match 2:200/103.42. + + 2:200/2?.* + + This would match 2:200/24.42, 2:200/25.52 but not 2:200/200.0. + + 2:*/100.0 + + This would match 2:200/100.0, 2:200/100.0, 2:300/100.0 etc. + + ZONE 2 + + This matches everything in zone 2. This has the same effect as 2:*/*.*. + + REGION 2:20 + + This matches everything in region 2:20. You can only use the REGION + keyword if you use a nodelist. + + NET 2:200 + + Matches everything in net 2:200. This is the same as 2:200/*.*. + + HUB 2:205/300 + + Matches all node that belongs to the hub 2:205/300. You can only use + the HUB keyword if you use a nodelist. + + NODE 2:200/108 + + Matches the node 2:200/108 and all its points. This does exactly the + same as 2:200/108.*. + + *:*/*.* + + This would match everything. + + Destination node patterns + + These are a bit more complicated since the destination node of the + operation is also involved. This is best explained with netmail routing + as an example. In CrashMail, destination node patterns are also used + in the remap function, but it works very similarly there. + + *:*/*.0, netmail for 2:200/108.7 + + This netmail would be routed to 2:200/108.0 + + *:*/0.0, netmail for 2:200/108.7 + + This netmail would be routed to 2:200/0.0 + + ZONE, netmail for 2:201/274 + + This netmail is routed to the Zone Coordinator, in this case 2:2/0. + + REGION, netmail for 2:200/207.5 + + This netmail is routed to the Region Coordinator, in this case 2:20/0. + You can only use this keyword if you use a nodelist. + + NET, netmail for 2:200/108.7 + + This netmail is routed to the host of the net, in this case 2:200/0. + This is the same as *:*/0.0 + + HUB, netmail for 2:200/108.7 + + This netmail is routed to the hub of the node, in this case 2:200/100. + You can only use this keyword if you use a nodelist. + + NODE, netmail for 2:200/108.7 + + This netmail is routed to the boss of the point, in this case 2:200/108.0. + This is equivalent to *:*/*.0. + + *:*/*.*, mail for 2:203/699.0 + + This would be routed to 2:203/699.0 + + Added: crashmail/branches/vendor/0.71/doc/example.prefs =================================================================== --- crashmail/branches/vendor/0.71/doc/example.prefs (rev 0) +++ crashmail/branches/vendor/0.71/doc/example.prefs 2009-02-07 20:45:22 UTC (rev 33) @@ -0,0 +1,714 @@ +; Example configuration file for CrashMail II +; +; This file demonstrates all keywords you can use in the configuration file. +; +; General configuration +; ===================== +; +; SYSOP <name> +; +; This keyword lets you configure the name of the system operator. It is used +; as the sender name of all messages that CrashMail generates. (Bounce +; messages, receipts, AreaFix responses.) Max 36 characters. + +SYSOP "Johan Billing" + +; LOGFILE <filename> +; LOGLEVEL <level> +; +; Here you can configure the logging in CrashMail. CrashMail will write all +; log messages with a level lower than the level configured here both to the +; console and to the specified file. +; +; The following loglevels exist: +; +; 1 Minimum +; 2 Small +; 3 Normal +; 4 Extra +; 5 Extreme +; 6 Debug +; +; In the Linux version of CrashMail, it is possible to enter "syslog" as the +; filename. If you do this, everything will be logged to the syslog instead. + +LOGFILE "c:\\fido\\logs\\crashmail.log" +LOGLEVEL 5 + +; DUPEFILE <filename> <maxnumber> +; DUPEMODE BAD/KILL/IGNORE +; +; Here the file that CrashMail uses for its duplicate detection is specified. +; Maxnumber is the maximum number of the messages that should be stored in the +; dupe buffer. Each message in the dupe buffer consumes 8 bytes of RAM and on +; average about 40 bytes of disk space. +; +; These are the available modes for dupe checking: +; +; BAD Dupes are moved to the BAD area +; KILL Dupes are killed +; IGNORE No dupechecking + +DUPEFILE "c:\\fido\\logs\\crashmail.dupes" 200 +DUPEMODE BAD + +; LOOPMODE IGNORE/LOG/LOG+BAD +; +; Loop-mails are netmails that are routed between two systems in an infite +; loop. CrashMail can detect such mails by checking if you system is already +; listed in the ^Via lines of the message. This keyword decides what +; CrashMail should do when such a message is encountered. +; +; IGNORE do nothing at all +; LOG CrashMail logs that it has encountered a loop-mail. +; LOG+BAD CrashMail logs the loop-mail and imports a copy to your BAD area. +; Only the kludges are imported to preserve privacy. + +LOOPMODE LOG+BAD + +; MAXPKTSIZE <maxsize> +; MAXBUNDLESIZE <maxsize> +; +; Here you can configure the maximum size of the .pkt files and bundles that +; CrashMail generates. If a file grows bigger than this limit, CrashMail +; starts a new bundle/pkt instead. The limits are in KB. + +MAXPKTSIZE 50 +MAXBUNDLESIZE 100 + +; DEFAULTZONE <zone> +; +; If CrashMail can't figure out the zone of a message in another way, the +; zone configured here is used. + +DEFAULTZONE 2 + +; NODELIST <path> <type> +; +; This is the nodelist that CrashMail should use. To see the supported +; nodelist formats, type "crashmail version". The meaning of path may +; be different for different nodelist formats. + +; Paths +; ===== +; +; INBOUND <directory> +; +; The inbound directory is the directory where CrashMail looks for .pkt files +; and bundles to toss. + +INBOUND "c:\\fido\\inbound" + +; OUTBOUND <directory> +; +; The outbound directory is where CrashMail writes the flow files that tells +; the mailer what files to send. + +OUTBOUND "c:\\fido\\outbound" + +; TEMPDIR <directory> +; +; This is the directory where CrashMail unpacks incoming bundles. +; + +TEMPDIR "c:\\fido\\temp" + +; CREATEPKTDIR <directory> +; +; This is the directory where CrashMail stores created .pkt files until they +; are stored in the packet directory. + +CREATEPKTDIR "c:\\fido\\temp" + +; PACKETDIR <directory> +; +; This is the directory where CrashMail stores generated bundles. + +PACKETDIR "c:\\fido\\packets" + +; STATSFILE <filename> +; +; This is the file where CrashMail stores statistics about areas and nodes. +; You can display the contents of this file with CrashStats. + +STATSFILE "c:\\fido\\crashmail.stats" + +; BEFORETOSS <command> +; +; CrashMail will execute this command before a *.pkt file is tossed. You can +; use %f for the filename of the packet. CrashMail will abort tossing if this +; command returns an error. + +;BEFORETOSS "cp %f /fido/toss-backup" + +; BEFOREPACK +; +; CrashMail will execute this command before a *.pkt file is added to an +; archive. You can use %f for the filename of the packet. If the command +; fails, CrashMail will try again the next time it processes the outbound +; directory. + +;BEFOREPACK "cp %f /fido/pack-backup" + +; Switches +; ======== +; +; STRIPRE +; +; CrashMail should strip all occurences of "Re:", "Re[x]:" and "Re^x:" +; in the subject of messages before they are imported. +; +STRIPRE + +; FORCEINTL +; +; CrashMail should add an INTL line to all messages even when the sender +; and the destination are in the same zone. + +FORCEINTL + +; NOROUTE +; +; CrashMail should never route netmails and just import them instead. + +NOROUTE + +; +; ANSWERRECEIPT +; +; CrashMail should honor receipt requests. +; + +ANSWERRECEIPT + +; ANSWERAUDIT +; +; CrashMail should honor audit requests. +; + +ANSWERAUDIT + +; CHECKSEENBY +; +; CrashMail should never send echomail to nodes that already are in the +; SEEN-BY lines. + +CHECKSEENBY + +; CHECKPKTDEST +; +; CrashMail should check the destination node of all incoming .pkt files and +; only toss them if they are adressed to one of the local AKAs. + +;CHECKPKTDEST + +; PATH3D +; +; CrashMail also adds points to ^PATH lines. Not always a good idea since it +; is not allowed in the echomail standard. + +PATH3D + +; IMPORTEMPTYNETMAIL +; +; Some mailers like FrontDoor like to send meaningless empty netmails with +; no text. Spefify this options if you for some reason want to import such +; mails. + +;IMPORTEMPTYNETMAIL + +; IMPORTAREAFIX +; +; Use this if you want messages to CrashMail's internal AreaFix to be +; imported to your netmail area. + +IMPORTAREAFIX + +; NODIRECTATTACH +; +; Normally CrashMail changes all netmail messages with attached file to +; direct status. Use this to turn off this behaviour. + +;NODIRECTATTACH + +; BOUNCEPOINTS +; +; Use this to bounce netmail messages to non-existing points with one of +; your AKAs as boss. + +;BOUNCEPOINTS + +; IMPORTSEENBY +; +; Use this if you want to import the SEEN-BY lines. + +IMPORTSEENBY + +; AREAFIXREMOVE +; +; Use this to allow the AreaFix to remove areas when the last downlink +; unsubscribed. + +AREAFIXREMOVE + +; WEEKDAYNAMING +; +; Name bundles according to the day of the week they are created. + +WEEKDAYNAMING + +; ADDTID +; +; Add a ^TID line to all messages exported by CrashMail. + +ADDTID + +; ALLOWRESCAN +; +; Allow nodes to rescan areas in the AreaFix. + +ALLOWRESCAN + +; FORWARDPASSTHRU +; +; Make areas created when they were forward-requested by a downlink pass-thru +; rather than importing them to your messagebase. + +;FORWARDPASSTHRU + +; BOUNCEHEADERONLY +; +; Only write the header and do not include message text when messages are +; bounced. + +;BOUNCEHEADERONLY + +; REMOVEWHENFEED +; +; CrashMail should remove areas when the feed unsubscribes to them. AreaFix +; messages or notification messages can be sent to your downlinks, see the +; Node configuration. + +;REMOVEWHENFEED + +; INCLUDEFORWARD +; +; Include all forward-requestable areas in the area lists generated by the +; AreaFix. + +INCLUDEFORWARD + +; NOMAXOUTBOUNDZONE +; +; CrashMail normally puts outgoing mail for all zones >4095 in the outbound +; directory for zone 4095 (usually outbound.fff). If this switch is turned +; on, CrashMail will use separate outbound directories also for zones >4095. +; The background of this option is that the Binkley outbound style originated +; on platforms where file names were limited to 8+3 characters. For +; compatibility with many older mailers, leave this switch turned off. +; There are however some mailers that also expect to find mail for zones +; >4095 in separate outbound directories. + +;NOMAXOUTBOUNDZONE + +; ALLOWKILLSENT +; +; If this option is used, CrashMail will delete all netmail messages with +; the killsent flag after they have been expored + +;ALLOWKILLSENT + +; FLOWCRLF +; +; If this option is used, CrashMail writes CRLF as the end-of-line character +; in flow files instead of just LF. Apparently some mailers need this. + +;FLOWCRLF + +; NOEXPORTNETMAIL +; +; If this option is used, CrashMail will skip netmail areas when using the +; SCAN or SCANLIST arguments. Use this if you want to use another program +; to handle netmail. + +;NOEXPORTNETMAIL + +; Groupnames +; ========== +; +; GROUPNAME <letter> <description> +; +; Here you can describe you groups. These descriptions are used in the area +; lists created by the AreaFix. + +GROUPNAME A "Molia" +GROUPNAME H "Lokala" + +; Bounce +; ====== +; +; BOUNCE <pattern1> <pattern2> ... +; +; Bounce messages that match one of these pattern if the destination node +; doesn't exist in the nodelist. This only works if you use a nodelist with +; CrashMail. You can have multiple BOUNCE lines. + +BOUNCE "1:*/*.*" "2:*/*.*" "3:*/*.*" "4:*/*.*" "5:*/*.*" "6:*/*.*" + +; Fileattach +; ========== +; +; FILEATTACH <pattern1> <pattern2> ... +; +; CrashMail will refuse to route files to nodes that are not configured +; here and will send a bounce messages. Multiple FILEATTACH lines are +; allowed. + +FILEATTACH "2:200/207.5" + +; Change +; ====== +; +; CHANGE <old flavour> <pattern> <new flavour> +; +; CrashMail can change the flavour (also known as priority) of netmail. Note +; that this does not affect echomail. + +;CHANGE * 2:200/207.5 Hold +;CHANGE Normal,Direct 2:200/*.* Crash + +; Packers +; ======= +; +; PACKER <name> <pack command> <unpack command> <recog> +; +; Here you configure the external packers that CrashMail uses. %a stands for +; archive name and %f stands for file name. The recog string is used when +; CrashMail detects the packer used to pack a bundle. If the beginning of +; the bundle matches the recog string, CrashMail uses that packer. ? can be +; used as a wildcard and you can use $xx to specify a hexadecimal number. + +PACKER "LHA" "c:\\fido\\bin\\lha a %a %f" "c:\\fido\\bin\\lha x %a" "??-lh?-" +PACKER "ZIP" "c:\\fido\\bin\\pkzip %a %f" "c:\\fido\\bin\\pkunzip %a" "PK" + +; AKA +; === +; +; AKA <node> +; DOMAIN <domain> +; ADDNODE node1 node2 ... +; REMNODE nodepattern1 nodepattern2 ... +; +; Here you configure the adresses of your node. ADDNODE is used to add nodes +; the the SEEN-BY lines in areas with this AKA and REMNODE is used to remove +; nodes. Nodes for ADDNODE and REMNODE has to be 2D, that is only net/node +; should be specified. Patterns are allowed for REMNODE. + +AKA 2:200/207.6 +DOMAIN "FidoNet" + +AKA 2:200/108.7 +DOMAIN "FidoNet" + +; Nodes +; ===== +; +; NODE <node> <packer name> <packet password> [<flags>] +; PKTFROM <node> +; AREAFIXINFO <areafix password> <groups> <read-only groups> <add groups> +; DEFAULTGROUP <group> +; REMOTEAF <areafix name> <areafix password> [NEEDSPLUS] +; REMOTESYSOP <name> +; +; These are the nodes you interchange mail with. You can only send echomail +; to nodes specified here, but netmail can also be sent to other nodes. +; +; If PKTFROM is used, the node specified there will be used as the originating +; node in all packet files sent to this node. +; +; The groups decide what areas a node may subscribe to in the AreaFix. If the +; area is in one of the read-only groups, the node will be added as read-only. +; If a new area is added in one of the add groups, this node will automatically +; be subscribed to it. The default group is the group used for areas that are +; autoadded from this node. +; +; REMOTEAF and REMOTESYSOP are used when CrashMail needs to send messages to +; the AreaFix or the sysop of this node. Use NEEDSPLUS if the remote AreaFix +; needs commands wants "+area" when subscribing to new areas instead of just +; "area". +; +; The following flags can be set for a node: +; +; NOTIFY +; +; When a SENDQUERY, SENDLIST, SENDUNLINKED, SENDINFO or SENDHELP with the +; argument ALL is used on the command-line, messages will be sent to all +; nodes with this flag set. +; +; PASSIVE +; +; Echomail is never sent to this node. Used for the %PAUSE and %RESUME +; commands in the AreaFix. +; +; NOSEENBY +; +; No SEEN-BY lines are included in messages sent to this node. Should +; normally not be used. +; +; TINYSEENBY +; +; Only sender and destination is included in SEEN-BY lines in messages +; sent to this node. Should normally not be used. +; +; FORWARDREQ +; +; This node is allowed to do forward-requests. +; +; PACKNETMAIL +; +; Netmail to this node should be packed along with the echomail. +; +; SENDAREAFIX +; +; AreaFix disconnect requests should be sent to this node when the feed +; unsubscribes from an area. +; +; SENDTEXT +; +; Notification messages should be sent to the sysop of this node when the +; feed unsubscribes from an area. +; +; AUTOADD +; +; New areas from this node should be auto-added to the configurati... [truncated message content] |
From: <ja...@us...> - 2009-02-07 19:47:58
|
Revision: 32 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=32&view=rev Author: jame Date: 2009-02-07 19:47:53 +0000 (Sat, 07 Feb 2009) Log Message: ----------- Tag htdocs as of 7 Feb 2009. Added Paths: ----------- htdocs/tags/20090207/ htdocs/tags/20090207/crashmail.html htdocs/tags/20090207/index.html htdocs/tags/20090207/information.html htdocs/tags/20090207/jamnntpd.html htdocs/tags/20090207/vireq.html Removed Paths: ------------- htdocs/tags/20090207/index.html htdocs/tags/20090207/information.html htdocs/tags/20090207/jamnntpd.html htdocs/tags/20090207/vireq.html Property changes on: htdocs/tags/20090207 ___________________________________________________________________ Added: svn:mergeinfo + Copied: htdocs/tags/20090207/crashmail.html (from rev 27, htdocs/online/crashmail.html) =================================================================== --- htdocs/tags/20090207/crashmail.html (rev 0) +++ htdocs/tags/20090207/crashmail.html 2009-02-07 19:47:53 UTC (rev 32) @@ -0,0 +1,76 @@ +<html> + <head> + <title>ftnapps: Crashmail II</title> + <meta name="author" content="Robert James Clay"> + <meta name="keywords" CONTENT="Fidonet FTN BBS JAM .MSG Tosser packet"> + <meta http-equiv="KEYWORDS" CONTENT="Fidonet, FTN, BBS, SRIF, file request"> + <meta name="description" CONTENT="Information and links about the Crashmail II, an open source JAM and *.MSG capable Fidonet tosser. "> + <link rel="stylesheet" type="text/css" href="/screen.css" media="screen, tv, projection" title="Default" /> + <link rel="stylesheet" type="text/css" href="/print.css" media="print" /> + </head> + <body> + + <div id="header"> + <div class="Header"> + <h1 class="headerTitle" lang="en">Crashmail II</h1> + <div class="headerSubTitle" title="Description of page"> + JAM and *.MSG capable Fidonet tosser + </div> + </div> + <div class="subHeader"> + <span class="doNotDisplay">Navigation:</span> + <a href="/index.html">Home</a> | + <a href="/crashmail.html">Crashmail</a> | + <a href="/jamnntpd.html">JamNNTPd</a> | + <a href="/vireq.html">VIReq</a> | +<!-- <a href="/links.html">Links</a> | --> + <a href="/information.html">Info</a> + </div> + </div> + + <div id="mainbody"> + <div class="rowOfBoxes"> + <div class="twoThirds noBorderOnLeft"> + + <p> + CrashMail II is basically a more portable version of CrashMail, a tosser for Amiga computers. + Users of the old Amiga version will probably find some things familiar while some features are + gone such as the ARexx port (for obvious reasons!) and the GUI configuration editor. The only + feature that CrashMail II has and the old CrashMail hasn't is support for JAM messagebases. + </p> + </div> + + <div class="oneThird"> + + <h2>Crashmail links</h2> + + <ul> + <li>Browse <a href="http://ftnapps.svn.sourceforge.net/viewvc/ftnapps/crashmail/">crashmail</a> in the ftnapps SVN repository.</li> + <li>Information about Crashmail II in <a href="http://packages.debian.org/search?keywords=crashmail">Debian</a> and + <a href="http://packages.ubuntu.com/search?keywords=crashmail">Ubuntu</a>. + </ul> + + <p class="filler"><!-- Filler para to extend left vertical line --></p> + <p class="filler"><!-- Filler para to extend left vertical line --></p> + + </div> + </div> + + </div> + + <div id="footer"> + <table width="100%"> + <tr><td> + + <a href="http://sourceforge.net"> + <img src="http://sflogo.sourceforge.net/sflogo.php?group_id=29063&type=1" + width="88" height="31" border="0" alt="SourceForge Logo"/></a> + + </td><td align="right"> + <font size="-2">Copyright © 2009 Robert James Clay</font> + </td></tr) + </table> + </div> + + </body> +</html> Deleted: htdocs/tags/20090207/index.html =================================================================== --- htdocs/online/index.html 2008-12-28 06:09:32 UTC (rev 24) +++ htdocs/tags/20090207/index.html 2009-02-07 19:47:53 UTC (rev 32) @@ -1,129 +0,0 @@ -<html> - <head> - <title>ftnapps: FTN Applications</title> - <meta name="author" content="Robert James Clay"> - <meta name="keywords" CONTENT="Fidonet FTN BBS"> - <meta http-equiv="KEYWORDS" CONTENT="Fidonet, FTN, BBS"> - <meta name="description" CONTENT="Information and links about applications for Fidonet systems. "> - <link rel="stylesheet" type="text/css" href="/screen.css" media="screen, tv, projection" title="Default" /> - <link rel="stylesheet" type="text/css" href="/print.css" media="print" /> - </head> - <body> - - <div id="header"> - <div class="Header"> - <h1 class="headerTitle" lang="en">Fidonet (FTN) Applications</h1> - <div class="headerSubTitle" title="Description of page"> - Fidonet (FTN) Applications Index - </div> - </div> - <div class="subHeader"> - <span class="doNotDisplay">Navigation:</span> - <a href="/index.html">Home</a> | - <a href="/jamnntpd.html">JamNNTPd</a> | - <a href="/vireq.html">vireq</a> | -<!-- <a href="/links.html">Links</a> | --> - <a href="/information.html">Info</a> - </div> - </div> - - <div id="mainbody"> - <div class="rowOfBoxes"> - <div class="twoThirds noBorderOnLeft"> - - <p> Fidonet is an international amateur network of computer systems, often - running public access bbs's, and all connected by modem (& often via the - internet as well). This site is intended to provide a repository for - applications, or links to where such applications might be found, for use for - Fidonet Technology Networks (FTN) systems; especially for those that do not - otherwise have public project space.</p> - - <ul> - <li><a href="jamnntpd.html"><b>JamNNTPd</b></a> - an NNTP server that allows newsreaders to access a JAM messagebase</li> - <li><a href="vireq.html"><b>vireq</b></a> - SRIF File request processor</li> - </ul> - - <dl> - - <dt>Information</dt> - <dd><a href="information.html#fidonet">Fidonet</a> Information</dd> - - </dl> - - </div> - - <div class="oneThird"> - - <h2>ftnapps Project links</h2> - - <ul>Home Page - <li><a href="http://ftnapps.sourceforge.net">ftnapps.sourceforge.net</a> or <a href="http://ftnapps.sf.net">ftnapps.sf.net</a> </li> - </ul> - - <ul>Summary Page - <li><a href="http://sourceforge.net/projects/ftnapps">http://sourceforge.net/projects/ftnapps</a></li> - </ul> - - <ul> - <li>Project <a href="http://sourceforge.net/news/?group_id=246543">News</a></li> - </ul> - - <ul>Project SVN Repository - <li><a href="http://ftnapps.svn.sourceforge.net/ftnapps">Browse the Project SVN repository</a></li> - </ul> - - <ul>Mailing Lists - <li>ftnapps-svn</li> - <li>Click on the <i>Mail/Forums</i> link on the Project Summary page for more information.</li> - - </uL> - - </div> - </div> - - <div class="rowOfBoxes"> -<!-- <div class="rowOfBoxes dividingBorderAbove"> --> - <div class="fullWidth"> - -<!-- -<table BORDER=0 CELLPADDING=0 > - <tr> - <td> - This <a href="http://www.fidonet.us/fidoring" target="_top">FidoRing-FidoNet Web Ring</a> site administered by <a href="mailto:ja...@us..." target="_top">Robert J. Clay</a>.<br> - <a href="http://www.fidonet.us/cgi-bin/fidoring/list.cgi?num=10&order=prev&link=31">Previous 10</a> | - <a href="http://www.fidonet.us/cgi-bin/fidoring/jump.cgi?action=previous&num=1&link=31" target="_top">Skip prev</a> | - <a href="http://www.fidonet.us/cgi-bin/fidoring/jump.cgi?action=previous&num=0&link=31" target="_top">Previous</a> | - <a href="http://www.fidonet.us/cgi-bin/fidoring/jump.cgi?action=next&num=0&link=31" target="_top">Next</a> | - <a href="http://www.fidonet.us/cgi-bin/fidoring/jump.cgi?action=next&num=1&link=31" target="_top">Skip next</a> | - <a href="http://www.fidonet.us/cgi-bin/fidoring/list.cgi?num=10&order=next&link=31">Next 10</a> | - <a href="http://www.fidonet.us/cgi-bin/fidoring/jump.cgi?action=random" target="_top">Random Site</a> | - <a href="http://www.fidonet.us/fidoring/sitelist.html" target="_top">List Sites</a> | - <a href="http://www.fidonet.us/fidoring" target="_top">Join FidoRing Web Ring</a> - </td> - <td> - <a href="http://www.fidonet.us/fidoring" target="_top"><img SRC="/smdogwhiteright.gif" BORDER=0 height=29 width=22></a> <br> - </td> - </tr> -</table> ---> - </div> - </div> - - </div> - - <div id="footer"> - <table width="100%"> - <tr><td> - - <a href="http://sourceforge.net"> - <img src="http://sflogo.sourceforge.net/sflogo.php?group_id=29063&type=1" - width="88" height="31" border="0" alt="SourceForge Logo"/></a> - - </td><td align="right"> - <font size="-2">Copyright © 2008 Robert James Clay</font> - </td></tr) - </table> - </div> - - </body> -</html> Copied: htdocs/tags/20090207/index.html (from rev 29, htdocs/online/index.html) =================================================================== --- htdocs/tags/20090207/index.html (rev 0) +++ htdocs/tags/20090207/index.html 2009-02-07 19:47:53 UTC (rev 32) @@ -0,0 +1,131 @@ +<html> + <head> + <title>ftnapps: FTN Applications</title> + <meta name="author" content="Robert James Clay"> + <meta name="keywords" CONTENT="Fidonet FTN BBS"> + <meta http-equiv="KEYWORDS" CONTENT="Fidonet, FTN, BBS"> + <meta name="description" CONTENT="Information and links about applications for Fidonet systems. "> + <link rel="stylesheet" type="text/css" href="/screen.css" media="screen, tv, projection" title="Default" /> + <link rel="stylesheet" type="text/css" href="/print.css" media="print" /> + </head> + <body> + + <div id="header"> + <div class="Header"> + <h1 class="headerTitle" lang="en">Fidonet (FTN) Applications</h1> + <div class="headerSubTitle" title="Description of page"> + Fidonet (FTN) Applications Index + </div> + </div> + <div class="subHeader"> + <span class="doNotDisplay">Navigation:</span> + <a href="/index.html">Home</a> | + <a href="/crashmail.html">Crashmail</a> | + <a href="/jamnntpd.html">JamNNTPd</a> | + <a href="/vireq.html">VIReq</a> | +<!-- <a href="/links.html">Links</a> | --> + <a href="/information.html">Info</a> + </div> + </div> + + <div id="mainbody"> + <div class="rowOfBoxes"> + <div class="twoThirds noBorderOnLeft"> + + <p> Fidonet is an international amateur network of computer systems, often + running public access bbs's, and all connected by modem (& often via the + internet as well). This site is intended to provide a repository for + applications, or links to where such applications might be found, for use for + Fidonet Technology Networks (FTN) systems; especially for those that do not + otherwise have public project space.</p> + + <ul> + <li><a href="crashmail.html"><b>Crashmail II</b></a> - A JAM and *.MSG capable Fidonet tosser</li> + <li><a href="jamnntpd.html"><b>JamNNTPd</b></a> - an NNTP server that allows newsreaders to access a JAM messagebase</li> + <li><a href="vireq.html"><b>VIReq</b></a> - SRIF File request processor</li> + </ul> + + <dl> + + <dt>Information</dt> + <dd><a href="information.html#fidonet">Fidonet</a> Information</dd> + + </dl> + + </div> + + <div class="oneThird"> + + <h2>ftnapps Project links</h2> + + <ul>Home Page + <li><a href="http://ftnapps.sourceforge.net">ftnapps.sourceforge.net</a> or <a href="http://ftnapps.sf.net">ftnapps.sf.net</a> </li> + </ul> + + <ul>Summary Page + <li><a href="http://sourceforge.net/projects/ftnapps">http://sourceforge.net/projects/ftnapps</a></li> + </ul> + + <ul> + <li>Project <a href="http://sourceforge.net/news/?group_id=246543">News</a></li> + </ul> + + <ul>Project SVN Repository + <li><a href="http://ftnapps.svn.sourceforge.net/ftnapps">Browse the Project SVN repository</a></li> + </ul> + + <ul>Mailing Lists + <li>ftnapps-svn</li> + <li>Click on the <i>Mail/Forums</i> link on the Project Summary page for more information.</li> + + </uL> + + </div> + </div> + + <div class="rowOfBoxes"> +<!-- <div class="rowOfBoxes dividingBorderAbove"> --> + <div class="fullWidth"> + +<!-- +<table BORDER=0 CELLPADDING=0 > + <tr> + <td> + This <a href="http://www.fidonet.us/fidoring" target="_top">FidoRing-FidoNet Web Ring</a> site administered by <a href="mailto:ja...@us..." target="_top">Robert J. Clay</a>.<br> + <a href="http://www.fidonet.us/cgi-bin/fidoring/list.cgi?num=10&order=prev&link=31">Previous 10</a> | + <a href="http://www.fidonet.us/cgi-bin/fidoring/jump.cgi?action=previous&num=1&link=31" target="_top">Skip prev</a> | + <a href="http://www.fidonet.us/cgi-bin/fidoring/jump.cgi?action=previous&num=0&link=31" target="_top">Previous</a> | + <a href="http://www.fidonet.us/cgi-bin/fidoring/jump.cgi?action=next&num=0&link=31" target="_top">Next</a> | + <a href="http://www.fidonet.us/cgi-bin/fidoring/jump.cgi?action=next&num=1&link=31" target="_top">Skip next</a> | + <a href="http://www.fidonet.us/cgi-bin/fidoring/list.cgi?num=10&order=next&link=31">Next 10</a> | + <a href="http://www.fidonet.us/cgi-bin/fidoring/jump.cgi?action=random" target="_top">Random Site</a> | + <a href="http://www.fidonet.us/fidoring/sitelist.html" target="_top">List Sites</a> | + <a href="http://www.fidonet.us/fidoring" target="_top">Join FidoRing Web Ring</a> + </td> + <td> + <a href="http://www.fidonet.us/fidoring" target="_top"><img SRC="/smdogwhiteright.gif" BORDER=0 height=29 width=22></a> <br> + </td> + </tr> +</table> +--> + </div> + </div> + + </div> + + <div id="footer"> + <table width="100%"> + <tr><td> + + <a href="http://sourceforge.net"> + <img src="http://sflogo.sourceforge.net/sflogo.php?group_id=29063&type=1" + width="88" height="31" border="0" alt="SourceForge Logo"/></a> + + </td><td align="right"> + <font size="-2">Copyright © 2008-2009 Robert James Clay</font> + </td></tr) + </table> + </div> + + </body> +</html> Deleted: htdocs/tags/20090207/information.html =================================================================== --- htdocs/online/information.html 2008-12-28 06:09:32 UTC (rev 24) +++ htdocs/tags/20090207/information.html 2009-02-07 19:47:53 UTC (rev 32) @@ -1,76 +0,0 @@ -<html> - <head> - <title>ftnapps.sf.net: Fidonet/FTN Information</title> - <meta name="author" content="Robert James Clay"> - <meta name="keywords" CONTENT="Fidonet FTN BBS"> - <meta http-equiv="KEYWORDS" CONTENT="Fidonet, FTN, Information"> - <meta name="description" CONTENT="Information and links about Fidonet and Perl. "> - <link rel="stylesheet" type="text/css" href="/screen.css" media="screen, tv, projection" title="Default" /> - <link rel="stylesheet" type="text/css" href="/print.css" media="print" /> - </head> - <body> - - <div id="header"> - <div class="Header"> - <h1 class="headerTitle" lang="en">Fidonet (FTN) Information</h1> - <div class="headerSubTitle" title="Description of page"> - Information and links about Fidonet/FTN. - </div> - </div> - <div class="subHeader"> - <span class="doNotDisplay">Navigation:</span> - <a href="/index.html">Home</a> | - <a href="/jamnntpd.html">JamNNTPd</a> | - <a href="/vireq.html">vireq</a> | -<!-- <a href="./links.html">Links</a> | --> - <a href="/information.html">Info</a> - </div> - </div> - - <div id="mainbody"> - - <div class="rowOfBoxes"> - - <div class="twoThirds noBorderOnLeft"> - <h2><a href="fidonet">Fidonet</a></h2> - <p> Fidonet is an international amateur network of computer systems, often - running public access bbs's, and all connected by modem (& often via the - internet as well). "Othernets" are distribution networks which use fidonet software. Also known as Fidonet Technogy Networks (FTN).</p> - - <p><a href="http://www.fidonet.org/inet92_Randy_Bush.txt">FidoNet: Technology, Use, Tools, and History</a>, By Randy Bush</p> - - <p>"Fido", "<a href="http://www.fidonet.org">Fidonet</a>", - and the dog-with-diskette are U.S. registered trademarks of Tom Jennings, to...@wp.... </p> - </div> - - <div class="oneThird"> - <h2>Fidonet Quick Links</h2> - <ul> - <li><a href="http://www.fidonet.org">www.fidonet.org</a></li> - <li><a href="http://www.z1.fidonet.org">www.z1.fidonet.org</a></li> - <li><a href="http://www.z3.fidonet.org">www.z3.fidonet.org</a></li> - <li><a href="http://www.fidonet.us">www.fidonet.us</a></li> - <li><a href="http://www.fidonet.ca">www.fidonet.ca</a></li> - <li><a href="http://www.ftsc.org">www.ftsc.org</a></li> - <li><a href="http://ns.z1.fidonet.net">ns.z1.fidonet.net</a></li> - </ul> - </div> - - </div> - - <div id="footer"> - <table width="100%"> - <tr><td> - - <a href="http://sourceforge.net"> - <img src="http://sflogo.sourceforge.net/sflogo.php?group_id=29063&type=1" - width="88" height="31" border="0" alt="SourceForge Logo"/></a> - - </td><td align="right"> - <font size="-2">Copyright © 2008 Robert James Clay</font> - </td></tr> - </table> - </div> - - </body> -</html> Copied: htdocs/tags/20090207/information.html (from rev 30, htdocs/online/information.html) =================================================================== --- htdocs/tags/20090207/information.html (rev 0) +++ htdocs/tags/20090207/information.html 2009-02-07 19:47:53 UTC (rev 32) @@ -0,0 +1,78 @@ +<html> + <head> + <title>ftnapps.sf.net: Fidonet/FTN Information</title> + <meta name="author" content="Robert James Clay"> + <meta name="keywords" CONTENT="Fidonet FTN BBS"> + <meta http-equiv="KEYWORDS" CONTENT="Fidonet, FTN, Information"> + <meta name="description" CONTENT="Information and links about Fidonet and Perl. "> + <link rel="stylesheet" type="text/css" href="/screen.css" media="screen, tv, projection" title="Default" /> + <link rel="stylesheet" type="text/css" href="/print.css" media="print" /> + </head> + <body> + + <div id="header"> + <div class="Header"> + <h1 class="headerTitle" lang="en">Fidonet (FTN) Information</h1> + <div class="headerSubTitle" title="Description of page"> + Information and links about Fidonet/FTN. + </div> + </div> + <div class="subHeader"> + <span class="doNotDisplay">Navigation:</span> + <a href="/index.html">Home</a> | + <a href="/crashmail.html">Crashmail</a> | + <a href="/jamnntpd.html">JamNNTPd</a> | + <a href="/vireq.html">VIReq</a> | +<!-- <a href="./links.html">Links</a> | --> + <a href="/information.html">Info</a> + </div> + </div> + + <div id="mainbody"> + + <div class="rowOfBoxes"> + + <div class="twoThirds noBorderOnLeft"> + <h2><a href="fidonet">Fidonet</a></h2> + <p> Fidonet is an international amateur network of computer systems, often + running public access bbs's, and all connected by modem (& often via the + internet as well). "Othernets" are distribution networks which use fidonet software. Also known as Fidonet Technogy Networks (FTN).</p> + + <p><a href="http://www.fidonet.org/inet92_Randy_Bush.txt">FidoNet: Technology, Use, Tools, and History</a>, By Randy Bush</p> + + <p>"Fido", "<a href="http://www.fidonet.org">Fidonet</a>", + and the dog-with-diskette were U.S. registered trademarks of Tom Jennings, to...@wp..., + but that has since lapsed. </p> + </div> + + <div class="oneThird"> + <h2>Fidonet Quick Links</h2> + <ul> + <li><a href="http://www.fidonet.org">www.fidonet.org</a></li> + <li><a href="http://www.z1.fidonet.org">www.z1.fidonet.org</a></li> + <li><a href="http://www.z3.fidonet.org">www.z3.fidonet.org</a></li> + <li><a href="http://www.fidonet.us">www.fidonet.us</a></li> + <li><a href="http://www.fidonet.ca">www.fidonet.ca</a></li> + <li><a href="http://www.ftsc.org">www.ftsc.org</a></li> + <li><a href="http://ns.z1.fidonet.net">ns.z1.fidonet.net</a></li> + </ul> + </div> + + </div> + + <div id="footer"> + <table width="100%"> + <tr><td> + + <a href="http://sourceforge.net"> + <img src="http://sflogo.sourceforge.net/sflogo.php?group_id=29063&type=1" + width="88" height="31" border="0" alt="SourceForge Logo"/></a> + + </td><td align="right"> + <font size="-2">Copyright © 2008-2009 Robert James Clay</font> + </td></tr> + </table> + </div> + + </body> +</html> Deleted: htdocs/tags/20090207/jamnntpd.html =================================================================== --- htdocs/online/jamnntpd.html 2008-12-28 06:09:32 UTC (rev 24) +++ htdocs/tags/20090207/jamnntpd.html 2009-02-07 19:47:53 UTC (rev 32) @@ -1,71 +0,0 @@ -<html> - <head> - <title>ftnapps: JamNNTPd</title> - <meta name="author" content="Robert James Clay"> - <meta name="keywords" CONTENT="Fidonet FTN BBS SRIF file request"> - <meta http-equiv="KEYWORDS" CONTENT="Fidonet, FTN, BBS, JAM, message base, NNTP"> - <meta name="description" CONTENT="Information and links about JamNNTPd. "> - <link rel="stylesheet" type="text/css" href="/screen.css" media="screen, tv, projection" title="Default" /> - <link rel="stylesheet" type="text/css" href="/print.css" media="print" /> - </head> - <body> - - <div id="header"> - <div class="Header"> - <h1 class="headerTitle" lang="en">JamNNTPd</h1> - <div class="headerSubTitle" title="Description of page"> - An NNTP server that allows newsreaders to access a JAM messagebase. - </div> - </div> - <div class="subHeader"> - <span class="doNotDisplay">Navigation:</span> - <a href="/index.html">Home</a> | - <a href="/jamnntpd.html">JamNNTPd</a> | - <a href="/vireq.html">vireq</a> | -<!-- <a href="/links.html">Links</a> | --> - <a href="/information.html">Info</a> - </div> - </div> - - <div id="mainbody"> - <div class="rowOfBoxes"> - <div class="twoThirds noBorderOnLeft"> - - <p>JamNNTPd is an attempt to merge fidonet technology with Usenet newsreaders. - Basically, JamNNTPd is an NNTP server that allows newsreaders to access a - JAM messagebase. - </p> - - </div> - - <div class="oneThird"> - - <h2>JamNNTPd links</h2> - - <ul> - <li>Browse <a href="http://ftnapps.svn.sourceforge.net/viewvc/ftnapps/jamnntpd/">JammNNTPd</a> in the SVN repository.</li> - </ul> - - <p class="filler"><!-- Filler para to extend left vertical line --></p> - - </div> - </div> - - </div> - - <div id="footer"> - <table width="100%"> - <tr><td> - - <a href="http://sourceforge.net"> - <img src="http://sflogo.sourceforge.net/sflogo.php?group_id=29063&type=1" - width="88" height="31" border="0" alt="SourceForge Logo"/></a> - - </td><td align="right"> - <font size="-2">Copyright © 2008 Robert James Clay</font> - </td></tr) - </table> - </div> - - </body> -</html> Copied: htdocs/tags/20090207/jamnntpd.html (from rev 28, htdocs/online/jamnntpd.html) =================================================================== --- htdocs/tags/20090207/jamnntpd.html (rev 0) +++ htdocs/tags/20090207/jamnntpd.html 2009-02-07 19:47:53 UTC (rev 32) @@ -0,0 +1,72 @@ +<html> + <head> + <title>ftnapps: JamNNTPd</title> + <meta name="author" content="Robert James Clay"> + <meta name="keywords" CONTENT="Fidonet FTN BBS SRIF file request"> + <meta http-equiv="KEYWORDS" CONTENT="Fidonet, FTN, BBS, JAM, message base, NNTP"> + <meta name="description" CONTENT="Information and links about JamNNTPd. "> + <link rel="stylesheet" type="text/css" href="/screen.css" media="screen, tv, projection" title="Default" /> + <link rel="stylesheet" type="text/css" href="/print.css" media="print" /> + </head> + <body> + + <div id="header"> + <div class="Header"> + <h1 class="headerTitle" lang="en">JamNNTPd</h1> + <div class="headerSubTitle" title="Description of page"> + An NNTP server that allows newsreaders to access a JAM messagebase. + </div> + </div> + <div class="subHeader"> + <span class="doNotDisplay">Navigation:</span> + <a href="/index.html">Home</a> | + <a href="/crashmail.html">Crashmail</a> | + <a href="/jamnntpd.html">JamNNTPd</a> | + <a href="/vireq.html">VIReq</a> | +<!-- <a href="/links.html">Links</a> | --> + <a href="/information.html">Info</a> + </div> + </div> + + <div id="mainbody"> + <div class="rowOfBoxes"> + <div class="twoThirds noBorderOnLeft"> + + <p>JamNNTPd is an attempt to merge fidonet technology with Usenet newsreaders. + Basically, JamNNTPd is an NNTP server that allows newsreaders to access a + JAM messagebase. + </p> + + </div> + + <div class="oneThird"> + + <h2>JamNNTPd links</h2> + + <ul> + <li>Browse <a href="http://ftnapps.svn.sourceforge.net/viewvc/ftnapps/jamnntpd/">JammNNTPd</a> in the SVN repository.</li> + </ul> + + <p class="filler"><!-- Filler para to extend left vertical line --></p> + + </div> + </div> + + </div> + + <div id="footer"> + <table width="100%"> + <tr><td> + + <a href="http://sourceforge.net"> + <img src="http://sflogo.sourceforge.net/sflogo.php?group_id=29063&type=1" + width="88" height="31" border="0" alt="SourceForge Logo"/></a> + + </td><td align="right"> + <font size="-2">Copyright © 2008-2009 Robert James Clay</font> + </td></tr) + </table> + </div> + + </body> +</html> Deleted: htdocs/tags/20090207/vireq.html =================================================================== --- htdocs/online/vireq.html 2008-12-28 06:09:32 UTC (rev 24) +++ htdocs/tags/20090207/vireq.html 2009-02-07 19:47:53 UTC (rev 32) @@ -1,75 +0,0 @@ -<html> - <head> - <title>ftnapps: vireq</title> - <meta name="author" content="Robert James Clay"> - <meta name="keywords" CONTENT="Fidonet FTN BBS SRIF file request"> - <meta http-equiv="KEYWORDS" CONTENT="Fidonet, FTN, BBS, SRIF, file request"> - <meta name="description" CONTENT="Information and links about the vireq, the SRIF File request processor for Linux. "> - <link rel="stylesheet" type="text/css" href="/screen.css" media="screen, tv, projection" title="Default" /> - <link rel="stylesheet" type="text/css" href="/print.css" media="print" /> - </head> - <body> - - <div id="header"> - <div class="Header"> - <h1 class="headerTitle" lang="en">VIREQ/x</h1> - <div class="headerSubTitle" title="Description of page"> - SRIF File request processor for Linux - </div> - </div> - <div class="subHeader"> - <span class="doNotDisplay">Navigation:</span> - <a href="/index.html">Home</a> | - <a href="/jamnntpd.html">JamNNTPd</a> | - <a href="/vireq.html">vireq</a> | -<!-- <a href="/links.html">Links</a> | --> - <a href="/information.html">Info</a> - </div> - </div> - - <div id="mainbody"> - <div class="rowOfBoxes"> - <div class="twoThirds noBorderOnLeft"> - - <p>VIREQ/x is a SRIF File request processor. Works with SRIF according to FSC-0086.001. - Neither filebase nor files.bbs files are neccessary. Usable with FTN mailers such as BinkD to - handle incoming file requests. - </p> - <p>The original source archives were downloaded and imported to the SVN repository. The license for it - was unclear, so the original author was contacted via email; the resulting conversation was added to the repository - as the file <a href="http://ftnapps.svn.sourceforge.net/viewvc/ftnapps/vireq/trunk/COPYING?revision=13&view=markup">COPYING</a>. - - </div> - - <div class="oneThird"> - - <h2>vireq links</h2> - - <ul> - <li>Browse <a href="http://ftnapps.svn.sourceforge.net/viewvc/ftnapps/vireq/">vireq</a> in the ftnapps SVN repository.</li> - </ul> - - <p class="filler"><!-- Filler para to extend left vertical line --></p> - <p class="filler"><!-- Filler para to extend left vertical line --></p> - - </div> - </div> - - </div> - - <div id="footer"> - <table width="100%"> - <tr><td> - - <a href="http://sourceforge.net"> - <img src="http://sflogo.sourceforge.net/sflogo.php?group_id=29063&type=1" - width="88" height="31" border="0" alt="SourceForge Logo"/></a> - - </td><td align="right"> - <font size="-2">Copyright © 2008 Robert James Clay</font> - </td></tr) - </table> - </div> - - </body> -</html> Copied: htdocs/tags/20090207/vireq.html (from rev 28, htdocs/online/vireq.html) =================================================================== --- htdocs/tags/20090207/vireq.html (rev 0) +++ htdocs/tags/20090207/vireq.html 2009-02-07 19:47:53 UTC (rev 32) @@ -0,0 +1,76 @@ +<html> + <head> + <title>ftnapps: vireq</title> + <meta name="author" content="Robert James Clay"> + <meta name="keywords" CONTENT="Fidonet FTN BBS SRIF file request"> + <meta http-equiv="KEYWORDS" CONTENT="Fidonet, FTN, BBS, SRIF, file request"> + <meta name="description" CONTENT="Information and links about the vireq, the SRIF File request processor for Linux. "> + <link rel="stylesheet" type="text/css" href="/screen.css" media="screen, tv, projection" title="Default" /> + <link rel="stylesheet" type="text/css" href="/print.css" media="print" /> + </head> + <body> + + <div id="header"> + <div class="Header"> + <h1 class="headerTitle" lang="en">VIREQ/x</h1> + <div class="headerSubTitle" title="Description of page"> + SRIF File request processor for Linux + </div> + </div> + <div class="subHeader"> + <span class="doNotDisplay">Navigation:</span> + <a href="/index.html">Home</a> | + <a href="/crashmail.html">Crashmail</a> | + <a href="/jamnntpd.html">JamNNTPd</a> | + <a href="/vireq.html">VIReq</a> | +<!-- <a href="/links.html">Links</a> | --> + <a href="/information.html">Info</a> + </div> + </div> + + <div id="mainbody"> + <div class="rowOfBoxes"> + <div class="twoThirds noBorderOnLeft"> + + <p>VIREQ/x is a SRIF File request processor. Works with SRIF according to FSC-0086.001. + Neither filebase nor files.bbs files are neccessary. Usable with FTN mailers such as BinkD to + handle incoming file requests. + </p> + <p>The original source archives were downloaded and imported to the SVN repository. The license for it + was unclear, so the original author was contacted via email; the resulting conversation was added to the repository + as the file <a href="http://ftnapps.svn.sourceforge.net/viewvc/ftnapps/vireq/trunk/COPYING?revision=13&view=markup">COPYING</a>. + + </div> + + <div class="oneThird"> + + <h2>VIReq links</h2> + + <ul> + <li>Browse <a href="http://ftnapps.svn.sourceforge.net/viewvc/ftnapps/vireq/">vireq</a> in the ftnapps SVN repository.</li> + </ul> + + <p class="filler"><!-- Filler para to extend left vertical line --></p> + <p class="filler"><!-- Filler para to extend left vertical line --></p> + + </div> + </div> + + </div> + + <div id="footer"> + <table width="100%"> + <tr><td> + + <a href="http://sourceforge.net"> + <img src="http://sflogo.sourceforge.net/sflogo.php?group_id=29063&type=1" + width="88" height="31" border="0" alt="SourceForge Logo"/></a> + + </td><td align="right"> + <font size="-2">Copyright © 2008-2009 Robert James Clay</font> + </td></tr) + </table> + </div> + + </body> +</html> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ja...@us...> - 2009-02-07 19:40:17
|
Revision: 31 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=31&view=rev Author: jame Date: 2009-02-07 19:40:16 +0000 (Sat, 07 Feb 2009) Log Message: ----------- htdocs/ToDo as of 7 Jan 2009. Modified Paths: -------------- htdocs/ToDo Modified: htdocs/ToDo =================================================================== --- htdocs/ToDo 2009-02-07 17:45:38 UTC (rev 30) +++ htdocs/ToDo 2009-02-07 19:40:16 UTC (rev 31) @@ -3,11 +3,13 @@ general - Add individual pages for apps/programs that are added here. -- Change link references for vireq to "VIReq" ? index.html - None +crashmail.html + - None + jamnntpd.html - Add reference for Debian ITP reference? This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ja...@us...> - 2009-02-07 17:45:40
|
Revision: 30 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=30&view=rev Author: jame Date: 2009-02-07 17:45:38 +0000 (Sat, 07 Feb 2009) Log Message: ----------- Update Fidonet Trademark information in information.html page. Modified Paths: -------------- htdocs/online/information.html Modified: htdocs/online/information.html =================================================================== --- htdocs/online/information.html 2009-02-07 17:32:40 UTC (rev 29) +++ htdocs/online/information.html 2009-02-07 17:45:38 UTC (rev 30) @@ -41,7 +41,8 @@ <p><a href="http://www.fidonet.org/inet92_Randy_Bush.txt">FidoNet: Technology, Use, Tools, and History</a>, By Randy Bush</p> <p>"Fido", "<a href="http://www.fidonet.org">Fidonet</a>", - and the dog-with-diskette are U.S. registered trademarks of Tom Jennings, to...@wp.... </p> + and the dog-with-diskette were U.S. registered trademarks of Tom Jennings, to...@wp..., + but that has since lapsed. </p> </div> <div class="oneThird"> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ja...@us...> - 2009-02-07 17:32:42
|
Revision: 29 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=29&view=rev Author: jame Date: 2009-02-07 17:32:40 +0000 (Sat, 07 Feb 2009) Log Message: ----------- Add info line for Crashmail to index web page. Modified Paths: -------------- htdocs/online/index.html Modified: htdocs/online/index.html =================================================================== --- htdocs/online/index.html 2009-02-07 17:14:44 UTC (rev 28) +++ htdocs/online/index.html 2009-02-07 17:32:40 UTC (rev 29) @@ -40,6 +40,7 @@ otherwise have public project space.</p> <ul> + <li><a href="crashmail.html"><b>Crashmail II</b></a> - A JAM and *.MSG capable Fidonet tosser</li> <li><a href="jamnntpd.html"><b>JamNNTPd</b></a> - an NNTP server that allows newsreaders to access a JAM messagebase</li> <li><a href="vireq.html"><b>VIReq</b></a> - SRIF File request processor</li> </ul> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ja...@us...> - 2009-02-07 17:14:47
|
Revision: 28 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=28&view=rev Author: jame Date: 2009-02-07 17:14:44 +0000 (Sat, 07 Feb 2009) Log Message: ----------- Update copyright dates for web pages. Modified Paths: -------------- htdocs/online/index.html htdocs/online/information.html htdocs/online/jamnntpd.html htdocs/online/vireq.html Modified: htdocs/online/index.html =================================================================== --- htdocs/online/index.html 2009-02-07 17:08:52 UTC (rev 27) +++ htdocs/online/index.html 2009-02-07 17:14:44 UTC (rev 28) @@ -121,7 +121,7 @@ width="88" height="31" border="0" alt="SourceForge Logo"/></a> </td><td align="right"> - <font size="-2">Copyright © 2008 Robert James Clay</font> + <font size="-2">Copyright © 2008-2009 Robert James Clay</font> </td></tr) </table> </div> Modified: htdocs/online/information.html =================================================================== --- htdocs/online/information.html 2009-02-07 17:08:52 UTC (rev 27) +++ htdocs/online/information.html 2009-02-07 17:14:44 UTC (rev 28) @@ -68,7 +68,7 @@ width="88" height="31" border="0" alt="SourceForge Logo"/></a> </td><td align="right"> - <font size="-2">Copyright © 2008 Robert James Clay</font> + <font size="-2">Copyright © 2008-2009 Robert James Clay</font> </td></tr> </table> </div> Modified: htdocs/online/jamnntpd.html =================================================================== --- htdocs/online/jamnntpd.html 2009-02-07 17:08:52 UTC (rev 27) +++ htdocs/online/jamnntpd.html 2009-02-07 17:14:44 UTC (rev 28) @@ -63,7 +63,7 @@ width="88" height="31" border="0" alt="SourceForge Logo"/></a> </td><td align="right"> - <font size="-2">Copyright © 2008 Robert James Clay</font> + <font size="-2">Copyright © 2008-2009 Robert James Clay</font> </td></tr) </table> </div> Modified: htdocs/online/vireq.html =================================================================== --- htdocs/online/vireq.html 2009-02-07 17:08:52 UTC (rev 27) +++ htdocs/online/vireq.html 2009-02-07 17:14:44 UTC (rev 28) @@ -67,7 +67,7 @@ width="88" height="31" border="0" alt="SourceForge Logo"/></a> </td><td align="right"> - <font size="-2">Copyright © 2008 Robert James Clay</font> + <font size="-2">Copyright © 2008-2009 Robert James Clay</font> </td></tr) </table> </div> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ja...@us...> - 2009-02-07 17:08:54
|
Revision: 27 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=27&view=rev Author: jame Date: 2009-02-07 17:08:52 +0000 (Sat, 07 Feb 2009) Log Message: ----------- Add web page for Crashmail II. Modified Paths: -------------- htdocs/online/index.html htdocs/online/information.html htdocs/online/jamnntpd.html htdocs/online/vireq.html Added Paths: ----------- htdocs/online/crashmail.html Copied: htdocs/online/crashmail.html (from rev 26, htdocs/online/vireq.html) =================================================================== --- htdocs/online/crashmail.html (rev 0) +++ htdocs/online/crashmail.html 2009-02-07 17:08:52 UTC (rev 27) @@ -0,0 +1,76 @@ +<html> + <head> + <title>ftnapps: Crashmail II</title> + <meta name="author" content="Robert James Clay"> + <meta name="keywords" CONTENT="Fidonet FTN BBS JAM .MSG Tosser packet"> + <meta http-equiv="KEYWORDS" CONTENT="Fidonet, FTN, BBS, SRIF, file request"> + <meta name="description" CONTENT="Information and links about the Crashmail II, an open source JAM and *.MSG capable Fidonet tosser. "> + <link rel="stylesheet" type="text/css" href="/screen.css" media="screen, tv, projection" title="Default" /> + <link rel="stylesheet" type="text/css" href="/print.css" media="print" /> + </head> + <body> + + <div id="header"> + <div class="Header"> + <h1 class="headerTitle" lang="en">Crashmail II</h1> + <div class="headerSubTitle" title="Description of page"> + JAM and *.MSG capable Fidonet tosser + </div> + </div> + <div class="subHeader"> + <span class="doNotDisplay">Navigation:</span> + <a href="/index.html">Home</a> | + <a href="/crashmail.html">Crashmail</a> | + <a href="/jamnntpd.html">JamNNTPd</a> | + <a href="/vireq.html">VIReq</a> | +<!-- <a href="/links.html">Links</a> | --> + <a href="/information.html">Info</a> + </div> + </div> + + <div id="mainbody"> + <div class="rowOfBoxes"> + <div class="twoThirds noBorderOnLeft"> + + <p> + CrashMail II is basically a more portable version of CrashMail, a tosser for Amiga computers. + Users of the old Amiga version will probably find some things familiar while some features are + gone such as the ARexx port (for obvious reasons!) and the GUI configuration editor. The only + feature that CrashMail II has and the old CrashMail hasn't is support for JAM messagebases. + </p> + </div> + + <div class="oneThird"> + + <h2>Crashmail links</h2> + + <ul> + <li>Browse <a href="http://ftnapps.svn.sourceforge.net/viewvc/ftnapps/crashmail/">crashmail</a> in the ftnapps SVN repository.</li> + <li>Information about Crashmail II in <a href="http://packages.debian.org/search?keywords=crashmail">Debian</a> and + <a href="http://packages.ubuntu.com/search?keywords=crashmail">Ubuntu</a>. + </ul> + + <p class="filler"><!-- Filler para to extend left vertical line --></p> + <p class="filler"><!-- Filler para to extend left vertical line --></p> + + </div> + </div> + + </div> + + <div id="footer"> + <table width="100%"> + <tr><td> + + <a href="http://sourceforge.net"> + <img src="http://sflogo.sourceforge.net/sflogo.php?group_id=29063&type=1" + width="88" height="31" border="0" alt="SourceForge Logo"/></a> + + </td><td align="right"> + <font size="-2">Copyright © 2009 Robert James Clay</font> + </td></tr) + </table> + </div> + + </body> +</html> Property changes on: htdocs/online/crashmail.html ___________________________________________________________________ Added: svn:mergeinfo + Modified: htdocs/online/index.html =================================================================== --- htdocs/online/index.html 2009-02-07 16:44:02 UTC (rev 26) +++ htdocs/online/index.html 2009-02-07 17:08:52 UTC (rev 27) @@ -20,6 +20,7 @@ <div class="subHeader"> <span class="doNotDisplay">Navigation:</span> <a href="/index.html">Home</a> | + <a href="/crashmail.html">Crashmail</a> | <a href="/jamnntpd.html">JamNNTPd</a> | <a href="/vireq.html">VIReq</a> | <!-- <a href="/links.html">Links</a> | --> Modified: htdocs/online/information.html =================================================================== --- htdocs/online/information.html 2009-02-07 16:44:02 UTC (rev 26) +++ htdocs/online/information.html 2009-02-07 17:08:52 UTC (rev 27) @@ -20,6 +20,7 @@ <div class="subHeader"> <span class="doNotDisplay">Navigation:</span> <a href="/index.html">Home</a> | + <a href="/crashmail.html">Crashmail</a> | <a href="/jamnntpd.html">JamNNTPd</a> | <a href="/vireq.html">VIReq</a> | <!-- <a href="./links.html">Links</a> | --> Modified: htdocs/online/jamnntpd.html =================================================================== --- htdocs/online/jamnntpd.html 2009-02-07 16:44:02 UTC (rev 26) +++ htdocs/online/jamnntpd.html 2009-02-07 17:08:52 UTC (rev 27) @@ -20,6 +20,7 @@ <div class="subHeader"> <span class="doNotDisplay">Navigation:</span> <a href="/index.html">Home</a> | + <a href="/crashmail.html">Crashmail</a> | <a href="/jamnntpd.html">JamNNTPd</a> | <a href="/vireq.html">VIReq</a> | <!-- <a href="/links.html">Links</a> | --> Modified: htdocs/online/vireq.html =================================================================== --- htdocs/online/vireq.html 2009-02-07 16:44:02 UTC (rev 26) +++ htdocs/online/vireq.html 2009-02-07 17:08:52 UTC (rev 27) @@ -20,6 +20,7 @@ <div class="subHeader"> <span class="doNotDisplay">Navigation:</span> <a href="/index.html">Home</a> | + <a href="/crashmail.html">Crashmail</a> | <a href="/jamnntpd.html">JamNNTPd</a> | <a href="/vireq.html">VIReq</a> | <!-- <a href="/links.html">Links</a> | --> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ja...@us...> - 2009-02-07 16:44:04
|
Revision: 26 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=26&view=rev Author: jame Date: 2009-02-07 16:44:02 +0000 (Sat, 07 Feb 2009) Log Message: ----------- Change link references for vireq to VIReq. Modified Paths: -------------- htdocs/online/index.html htdocs/online/information.html htdocs/online/jamnntpd.html htdocs/online/vireq.html Modified: htdocs/online/index.html =================================================================== --- htdocs/online/index.html 2009-02-07 16:29:09 UTC (rev 25) +++ htdocs/online/index.html 2009-02-07 16:44:02 UTC (rev 26) @@ -21,7 +21,7 @@ <span class="doNotDisplay">Navigation:</span> <a href="/index.html">Home</a> | <a href="/jamnntpd.html">JamNNTPd</a> | - <a href="/vireq.html">vireq</a> | + <a href="/vireq.html">VIReq</a> | <!-- <a href="/links.html">Links</a> | --> <a href="/information.html">Info</a> </div> @@ -40,7 +40,7 @@ <ul> <li><a href="jamnntpd.html"><b>JamNNTPd</b></a> - an NNTP server that allows newsreaders to access a JAM messagebase</li> - <li><a href="vireq.html"><b>vireq</b></a> - SRIF File request processor</li> + <li><a href="vireq.html"><b>VIReq</b></a> - SRIF File request processor</li> </ul> <dl> Modified: htdocs/online/information.html =================================================================== --- htdocs/online/information.html 2009-02-07 16:29:09 UTC (rev 25) +++ htdocs/online/information.html 2009-02-07 16:44:02 UTC (rev 26) @@ -21,7 +21,7 @@ <span class="doNotDisplay">Navigation:</span> <a href="/index.html">Home</a> | <a href="/jamnntpd.html">JamNNTPd</a> | - <a href="/vireq.html">vireq</a> | + <a href="/vireq.html">VIReq</a> | <!-- <a href="./links.html">Links</a> | --> <a href="/information.html">Info</a> </div> Modified: htdocs/online/jamnntpd.html =================================================================== --- htdocs/online/jamnntpd.html 2009-02-07 16:29:09 UTC (rev 25) +++ htdocs/online/jamnntpd.html 2009-02-07 16:44:02 UTC (rev 26) @@ -21,7 +21,7 @@ <span class="doNotDisplay">Navigation:</span> <a href="/index.html">Home</a> | <a href="/jamnntpd.html">JamNNTPd</a> | - <a href="/vireq.html">vireq</a> | + <a href="/vireq.html">VIReq</a> | <!-- <a href="/links.html">Links</a> | --> <a href="/information.html">Info</a> </div> Modified: htdocs/online/vireq.html =================================================================== --- htdocs/online/vireq.html 2009-02-07 16:29:09 UTC (rev 25) +++ htdocs/online/vireq.html 2009-02-07 16:44:02 UTC (rev 26) @@ -21,7 +21,7 @@ <span class="doNotDisplay">Navigation:</span> <a href="/index.html">Home</a> | <a href="/jamnntpd.html">JamNNTPd</a> | - <a href="/vireq.html">vireq</a> | + <a href="/vireq.html">VIReq</a> | <!-- <a href="/links.html">Links</a> | --> <a href="/information.html">Info</a> </div> @@ -43,7 +43,7 @@ <div class="oneThird"> - <h2>vireq links</h2> + <h2>VIReq links</h2> <ul> <li>Browse <a href="http://ftnapps.svn.sourceforge.net/viewvc/ftnapps/vireq/">vireq</a> in the ftnapps SVN repository.</li> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ja...@us...> - 2009-02-07 16:29:13
|
Revision: 25 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=25&view=rev Author: jame Date: 2009-02-07 16:29:09 +0000 (Sat, 07 Feb 2009) Log Message: ----------- Create repository directory structure for crashmail. Added Paths: ----------- crashmail/ crashmail/branches/ crashmail/tags/ crashmail/trunk/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ja...@us...> - 2008-12-28 06:09:45
|
Revision: 24 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=24&view=rev Author: jame Date: 2008-12-28 06:09:32 +0000 (Sun, 28 Dec 2008) Log Message: ----------- htdocs/ToDo as of 28 December 2008. Modified Paths: -------------- htdocs/ToDo Modified: htdocs/ToDo =================================================================== --- htdocs/ToDo 2008-12-28 06:04:27 UTC (rev 23) +++ htdocs/ToDo 2008-12-28 06:09:32 UTC (rev 24) @@ -3,15 +3,16 @@ general - Add individual pages for apps/programs that are added here. +- Change link references for vireq to "VIReq" ? index.html - None +jamnntpd.html + - Add reference for Debian ITP reference? + vireq.html - - Add info about where originally obtained the source archives - and about the COPYING file now in the source. - - Add html link for BinkD reference. - + - Add html link for BinkD reference. information.html - add 'dog /w diskette' gif to page? This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ja...@us...> - 2008-12-28 06:04:30
|
Revision: 23 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=23&view=rev Author: jame Date: 2008-12-28 06:04:27 +0000 (Sun, 28 Dec 2008) Log Message: ----------- index.html - Added jamnntpd reference. Updated vireq description. Modified Paths: -------------- htdocs/online/index.html Modified: htdocs/online/index.html =================================================================== --- htdocs/online/index.html 2008-12-28 05:49:46 UTC (rev 22) +++ htdocs/online/index.html 2008-12-28 06:04:27 UTC (rev 23) @@ -39,7 +39,8 @@ otherwise have public project space.</p> <ul> - <li><a href="vireq.html"><b>vireq</b></a> - SRIF File request processor for Linux</li> + <li><a href="jamnntpd.html"><b>JamNNTPd</b></a> - an NNTP server that allows newsreaders to access a JAM messagebase</li> + <li><a href="vireq.html"><b>vireq</b></a> - SRIF File request processor</li> </ul> <dl> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ja...@us...> - 2008-12-28 05:49:54
|
Revision: 22 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=22&view=rev Author: jame Date: 2008-12-28 05:49:46 +0000 (Sun, 28 Dec 2008) Log Message: ----------- Added jamnntpd.html to web site. Modified Paths: -------------- htdocs/online/index.html htdocs/online/information.html htdocs/online/vireq.html Added Paths: ----------- htdocs/online/jamnntpd.html Modified: htdocs/online/index.html =================================================================== --- htdocs/online/index.html 2008-12-28 05:25:47 UTC (rev 21) +++ htdocs/online/index.html 2008-12-28 05:49:46 UTC (rev 22) @@ -20,6 +20,7 @@ <div class="subHeader"> <span class="doNotDisplay">Navigation:</span> <a href="/index.html">Home</a> | + <a href="/jamnntpd.html">JamNNTPd</a> | <a href="/vireq.html">vireq</a> | <!-- <a href="/links.html">Links</a> | --> <a href="/information.html">Info</a> Modified: htdocs/online/information.html =================================================================== --- htdocs/online/information.html 2008-12-28 05:25:47 UTC (rev 21) +++ htdocs/online/information.html 2008-12-28 05:49:46 UTC (rev 22) @@ -20,6 +20,7 @@ <div class="subHeader"> <span class="doNotDisplay">Navigation:</span> <a href="/index.html">Home</a> | + <a href="/jamnntpd.html">JamNNTPd</a> | <a href="/vireq.html">vireq</a> | <!-- <a href="./links.html">Links</a> | --> <a href="/information.html">Info</a> Copied: htdocs/online/jamnntpd.html (from rev 19, htdocs/online/vireq.html) =================================================================== --- htdocs/online/jamnntpd.html (rev 0) +++ htdocs/online/jamnntpd.html 2008-12-28 05:49:46 UTC (rev 22) @@ -0,0 +1,71 @@ +<html> + <head> + <title>ftnapps: JamNNTPd</title> + <meta name="author" content="Robert James Clay"> + <meta name="keywords" CONTENT="Fidonet FTN BBS SRIF file request"> + <meta http-equiv="KEYWORDS" CONTENT="Fidonet, FTN, BBS, JAM, message base, NNTP"> + <meta name="description" CONTENT="Information and links about JamNNTPd. "> + <link rel="stylesheet" type="text/css" href="/screen.css" media="screen, tv, projection" title="Default" /> + <link rel="stylesheet" type="text/css" href="/print.css" media="print" /> + </head> + <body> + + <div id="header"> + <div class="Header"> + <h1 class="headerTitle" lang="en">JamNNTPd</h1> + <div class="headerSubTitle" title="Description of page"> + An NNTP server that allows newsreaders to access a JAM messagebase. + </div> + </div> + <div class="subHeader"> + <span class="doNotDisplay">Navigation:</span> + <a href="/index.html">Home</a> | + <a href="/jamnntpd.html">JamNNTPd</a> | + <a href="/vireq.html">vireq</a> | +<!-- <a href="/links.html">Links</a> | --> + <a href="/information.html">Info</a> + </div> + </div> + + <div id="mainbody"> + <div class="rowOfBoxes"> + <div class="twoThirds noBorderOnLeft"> + + <p>JamNNTPd is an attempt to merge fidonet technology with Usenet newsreaders. + Basically, JamNNTPd is an NNTP server that allows newsreaders to access a + JAM messagebase. + </p> + + </div> + + <div class="oneThird"> + + <h2>JamNNTPd links</h2> + + <ul> + <li>Browse <a href="http://ftnapps.svn.sourceforge.net/viewvc/ftnapps/jamnntpd/">JammNNTPd</a> in the SVN repository.</li> + </ul> + + <p class="filler"><!-- Filler para to extend left vertical line --></p> + + </div> + </div> + + </div> + + <div id="footer"> + <table width="100%"> + <tr><td> + + <a href="http://sourceforge.net"> + <img src="http://sflogo.sourceforge.net/sflogo.php?group_id=29063&type=1" + width="88" height="31" border="0" alt="SourceForge Logo"/></a> + + </td><td align="right"> + <font size="-2">Copyright © 2008 Robert James Clay</font> + </td></tr) + </table> + </div> + + </body> +</html> Property changes on: htdocs/online/jamnntpd.html ___________________________________________________________________ Added: svn:mergeinfo + Modified: htdocs/online/vireq.html =================================================================== --- htdocs/online/vireq.html 2008-12-28 05:25:47 UTC (rev 21) +++ htdocs/online/vireq.html 2008-12-28 05:49:46 UTC (rev 22) @@ -20,6 +20,7 @@ <div class="subHeader"> <span class="doNotDisplay">Navigation:</span> <a href="/index.html">Home</a> | + <a href="/jamnntpd.html">JamNNTPd</a> | <a href="/vireq.html">vireq</a> | <!-- <a href="/links.html">Links</a> | --> <a href="/information.html">Info</a> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ja...@us...> - 2008-12-28 05:25:52
|
Revision: 21 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=21&view=rev Author: jame Date: 2008-12-28 05:25:47 +0000 (Sun, 28 Dec 2008) Log Message: ----------- Import jamnntpd-0.5 into the repository at jamnntpd/branches/vendor/0.5. Added Paths: ----------- jamnntpd/branches/vendor/0.5/ jamnntpd/branches/vendor/0.5/History.txt jamnntpd/branches/vendor/0.5/ReadMe.txt jamnntpd/branches/vendor/0.5/examples/ jamnntpd/branches/vendor/0.5/examples/jamnntpd.allow jamnntpd/branches/vendor/0.5/examples/jamnntpd.groups jamnntpd/branches/vendor/0.5/examples/jamnntpd.users jamnntpd/branches/vendor/0.5/src/ jamnntpd/branches/vendor/0.5/src/Makefile jamnntpd/branches/vendor/0.5/src/Makefile.linux jamnntpd/branches/vendor/0.5/src/Makefile.win32 jamnntpd/branches/vendor/0.5/src/allow.c jamnntpd/branches/vendor/0.5/src/allow.h jamnntpd/branches/vendor/0.5/src/groups.c jamnntpd/branches/vendor/0.5/src/groups.h jamnntpd/branches/vendor/0.5/src/jamlib/ jamnntpd/branches/vendor/0.5/src/jamlib/LICENSE jamnntpd/branches/vendor/0.5/src/jamlib/Makefile.linux jamnntpd/branches/vendor/0.5/src/jamlib/Makefile.os2 jamnntpd/branches/vendor/0.5/src/jamlib/Makefile.win32 jamnntpd/branches/vendor/0.5/src/jamlib/crc32.c jamnntpd/branches/vendor/0.5/src/jamlib/jam.h jamnntpd/branches/vendor/0.5/src/jamlib/jamlib.doc jamnntpd/branches/vendor/0.5/src/jamlib/lastread.c jamnntpd/branches/vendor/0.5/src/jamlib/mbase.c jamnntpd/branches/vendor/0.5/src/jamlib/message.c jamnntpd/branches/vendor/0.5/src/jamlib/structrw.c jamnntpd/branches/vendor/0.5/src/jamlib/structrw.h jamnntpd/branches/vendor/0.5/src/jamlib/subpack.c jamnntpd/branches/vendor/0.5/src/login.c jamnntpd/branches/vendor/0.5/src/login.h jamnntpd/branches/vendor/0.5/src/main.c jamnntpd/branches/vendor/0.5/src/misc.c jamnntpd/branches/vendor/0.5/src/misc.h jamnntpd/branches/vendor/0.5/src/nntpserv.c jamnntpd/branches/vendor/0.5/src/nntpserv.h jamnntpd/branches/vendor/0.5/src/os.h jamnntpd/branches/vendor/0.5/src/os_linux.c jamnntpd/branches/vendor/0.5/src/os_linux.h jamnntpd/branches/vendor/0.5/src/os_win32.c jamnntpd/branches/vendor/0.5/src/os_win32.h jamnntpd/branches/vendor/0.5/src/sockio.c jamnntpd/branches/vendor/0.5/src/sockio.h jamnntpd/branches/vendor/0.5/src/xlat.c jamnntpd/branches/vendor/0.5/src/xlat.h Added: jamnntpd/branches/vendor/0.5/History.txt =================================================================== --- jamnntpd/branches/vendor/0.5/History.txt (rev 0) +++ jamnntpd/branches/vendor/0.5/History.txt 2008-12-28 05:25:47 UTC (rev 21) @@ -0,0 +1,20 @@ +Changes in version 0.5 + + - Superfluous space characters are now removed when lines are joined when + posting using format=flowed. + + - Implemented quote reformatting (-smartquote switch) + + - Changed % to $ in Message-Id and References line. + + - XOVER didn't work in groups with only one message. Fixed. + + - JAMLIB is now included in the JamNNTPd archive and no longer needs to be + downloaded separately. + + - Simplified the compilation process. Now "make linux" or "make win32" in + the src directory is enough. + +Changes in version 0.4 + + - First public release Added: jamnntpd/branches/vendor/0.5/ReadMe.txt =================================================================== --- jamnntpd/branches/vendor/0.5/ReadMe.txt (rev 0) +++ jamnntpd/branches/vendor/0.5/ReadMe.txt 2008-12-28 05:25:47 UTC (rev 21) @@ -0,0 +1,270 @@ + + JamNNTPd 0.5 + + by Johan Billing + + (bi...@df...) + + 2003-12-06 +1. Introduction +=============== +JamNNTPd is an attempt to merge dying fidonet technology with modern Usenet +newsreaders. Basically, JamNNTPd is NNTP server that allows newsreaders to +access a JAM messagebase. (If you didn't understand a word of this, you +probably don't want to use JamNNTPd anyway). + +JamNNTPd can be used with both Linux and Windows. An executable binary is +only suppplied for Windows, Linux users need to compile JamNNTPd themselves. + +2. Copyright +============ +The copyright of JamNNTPd belongs to Johan Billing. Permission to use, copy +and distribute JamNNTPd is granted provided that this copyright notice is +included. Permission to modify JamNNTPd is granted. Distributing modified +versions of JamNNTPd is allowed provided that the documentation clearly +states that it is a modified version. Parts of JamNNTPd may be freely used +in other projects as long as credit is given. + +JamNNTPd uses JAMLIB for reading and modifying JAM messagebases. JAMLIB is +copyright 1996 Bj\xF6rn Stenberg and is released under the GNU Lesser General +Public License (see included file src/jamlib/LICENSE). + +3. Security +=========== +I cannot guarantee that there are no security leaks in JamNNTPd. If you +decide to use it, you do it on your own risk. If you use JamNNTPd under +Linux, you should avoid running it with root privileges. + +4. Using JamNNTPd +================= + +4.1 Command-line options +------------------------ +Usage: jamnntpd [-debug] [-noecholog] [-noxlat] [-nostripre] [-notearline] + [-noreplyaddr] [-smartquote] [-p <port>] [-m <maxconn>] + [-def_flowed on/off] [-def_showto on/off] [-g <groupsfile>] + [-a <allowfile>] [-u <usersfile>] [-l <logfile>] + + -debug + + If this option is used, JamNNTPd will print att sent and received text + to the console window. Useful for testing. + + -noecholog + + Disables echoing of log messages to the console window. + + -noxlat + + Disables the chararacter set translation between IBMPC and iso-8859-1. + + -nostripre + + JamNNTPd normally strips "Re:" from subject lines of followups. Use + this option if you want to retain the "Re:". + + -notearline + + JamNNTPd normally puts the information from the X-Newsreader or User-Agent + header field in the tearline of posted messages. This option disables this + behaviour and leaves the tearline blank. + + -noreplyaddr + + JamNNTPd normally adds a REPLYADDR kludge with the e-mail address of the + sender in posted messages. Use this option if you don't want REPLYADDR + kludges. See also see section 6.4 below. + + -smartquote + + The quoting style of most newsreaders is different from traditional fidonet + software. If you enable this option, JamNNTPd will try to change any quoted + lines to fidonet style. This means that it will try to insert the initials + of the person you reply to before the '>' character and also that it will try + to compound multiple generations of quotes, i.e. "AA> BB>" will be changed + into "BB>>". + + Reformatting quotes in this way means that the user who posts a message will + no longer have final say over the final content of the message since it will + be changed after he or she sends it to JamNNTPd. Since this in principle is + a bad thing even if quoted text will look a lot better after reformatting, + this option is turned off by default. + + -p <port> + + Set the port where JamNNTPd listens for connections. The default is 5000. + + -m <maxconn> + + The maximum allowed number of connections at one time. The default is 5. + + -def_flowed on/off + -def_showto on/off + + Sets the default of the flowed and showto settings (if no default is + specified on the commandline, both will be on by default) + + flowed: If flowed is on, JamNNTPd will use format=flowed (section 6.5), + otherwise it will wrap long lines to a fixed width. + + showto: Since there is no receiver for news messages, JamNNTPd can display + the receiver name as a part of the sender name. With this option, + this behaviour can be turned on or off. + + These can be modified by the user by loggin in with parameters (section 4.4) + + -g <groupsfile> + -a <allowfile> + -u <usersfile> + + Use these to override the default locations of the config files. + + -l <logfile> + + Use this to override the default location of the log file. + +4.2 Access rights +----------------- +Access rights in JamNNTPd is based on access groups. Every newsgroup in +JamNNTPd belongs to an acess group. Access groups are named using one letter, +typically A to Z. + +When a user connects to the server, he/she gets access to two set of access +groups. The first set of groups are for read access and the second set of +groups are for post access. Users are only allowed to read newsgroups that +belong to an access group they have read access to and are only allowed to +post to newsgroups belong to an access group that they have post access to. +The default access groups for users are configured in the "allow" file. + +A user might get access to additional access groups if he/she logs in to the +server using the AUTHINFO command. The groups associated with a user are +defined in the "users" file. + +4.3 Configuration files +----------------------- +JamNNTPd uses three configuration files: + +1) In the "groups" file, the JAM areas that JamNNTPd should provide as + newsgroups are configured. + +2) In the "allow" file, the IP numbers that are allowed to use the server + are listed. Here you also set the default access rights for users before + they log in. + +3) In the "users" file, you can list users that should be given access to + additional groups if they log in. + +The format of these files can be seen in the example configuration files. + +4.4 Logging in with parameters +------------------------------ +Since it is likely that all users will not prefer the same settings for the +flowed and showto options (see section 4.1), these can be modified by the +user by logging in with parameters. + +If you want to set these options, login using a login name of this format: + + username/option1=on,option2=off + +If you want to set options without logging in, just omit the user name and +enter anything as your password. + +Examples: + + billing/showto=off + billing/flowed=on,showto=on + /flowed=off + +5. Compilation +============== +JamNNTPd should compile with most compilers. I use gcc under Linux and +gcc-mingw32 under Windows. To compile JamNNTPd, go to the src directory +and type either "make linux" or "make win32" depending on what platform +you are compiling JamNNTPd on. After a successful compilation, you will +find a file called "jamnntpd" or "jamnntpd.exe" in the src directory. + +6. Compatibility +================ + +6.1 The NNTP protocol +--------------------- +JamNNTPd supports most of the basic NNTP protocol as specified in RFC-977. +The commands IHAVE, NEWGROUPS and NEWNEWS are not implemented, but at least +give valid response codes if a newsreader tries to use them. JamNNTP also +supports the XOVER and AUTHINFO commands as specified in RFC-2980. XOVER +never sends information about the line counts and byte counts of messages. + +6.2 Format of news messages +--------------------------- +JamNNTPd probably breaks the RFC-1036 specification on some minor points, +but seems to work well enough with most newsreaders. + +Support for MIME is limited. Posted messages are only accepted if they are +in the format text/plain (i. e. HTML and multipart messages will be rejected). +JamNNTPd can handle the quoted-printable encoding in the headers, but the +body of the posted messages must be in normal 8bit or 7bit format of they +will be rejected. Crossposted messages are rejected. Messages longer than +10 000 bytes will also be rejected. + +6.3 MSGID / Message-ID +---------------------- +JamNNTPd does not present the MSGIDs found in the JAM messagebase as +Message-IDs to the newsreader, but rather uses its own dummy Message-IDs +instead. The references line in followups will be replaced by the proper +REPLY line. + +6.4 REPLYADDR +------------- +When a message is posted to a JAM messagebase, JamNNTPd converts the original +from address to a REPLYADDR kludge. According to FSC-0035, REPLYADDR kludges +should be accompanied by a REPLYTO line. JamNNTPd does not create a REPLYTO +line, but this should not be a major problem. If you want to disable the +REPLYADDR kludge altogether, use the -noreplyaddr option. + +6.5 format=flowed +----------------- +A recent extension to MIME (RFC-2646) specifies a format for "flowed" text, +i. e. text that only has line breaks between paragraphs and not after every +line. This format is more well-suited for fidonet messages than the +traditional format since fidonet has always used "flowed" text. + +JamNNTPd uses format=flowed unless disabled with the -def_flowed switch or +with login parameters, and it is preferable to use a newsreader that also +supports this format. Unfortunately, only few newsreaders support this format +today. JamNNTPd will also work with other newsreaders, but messages will look +slighty worse both on the NNTP and fidonet side. + +6.6 Character set translation +----------------------------- +JamNNTPd has only limited support for character sets. The program assumes +that the character set used by the newsreader is always iso-8859-1 and that +the character set for messages in the JAM messagebase is IBMPC Codepage 437 +unless it is set to LATIN-1 using the CHRS kludge. Other character sets are +not supported at the moment. This quick & dirty character set support can +be disabled with -noxlat. + +6.7 Tested newsreaders +---------------------- +JamNNTPd has been found to work with the following newsreaders: + + Mozilla 1.4.1 + Outlook Express 6.00.2800.1106 + KNode 0.7.2 + Xnews 5.04.25 + 40tude Dialog 2.0.7.1 + Forte Free Agent 1.93/32.576 + +Of these, only Mozilla seems to support format=flowed. + +7. Todo +======= +Here are some improvements that maybe ought to be done: + + * A configuration file instead of lots of commandline switches + * Proper charset support instead of quick and dirty for Swedish users + * Netmail handling + +But it is pointless for me to spend time on these improvements unless someone +out there needs them, because I don't. + + Added: jamnntpd/branches/vendor/0.5/examples/jamnntpd.allow =================================================================== --- jamnntpd/branches/vendor/0.5/examples/jamnntpd.allow (rev 0) +++ jamnntpd/branches/vendor/0.5/examples/jamnntpd.allow 2008-12-28 05:25:47 UTC (rev 21) @@ -0,0 +1,15 @@ +# Allowed IP numbers for JamNNTPd +# +# Syntax: +# +# <ip> <default read access groups> <default post access groups> +# +# If no access groups are configured, users connecting from that IP will +# not be able to access any newsgroups. +# +# "*" can be used as a wildcard. Everything after "*" is ignored, i. e. +# 127.0.*.1 is equivalent to 127.0.*. Just write "*" alone on a line to +# allow all IP numbbers. +# +127.0.0.1 AX A + Added: jamnntpd/branches/vendor/0.5/examples/jamnntpd.groups =================================================================== --- jamnntpd/branches/vendor/0.5/examples/jamnntpd.groups (rev 0) +++ jamnntpd/branches/vendor/0.5/examples/jamnntpd.groups 2008-12-28 05:25:47 UTC (rev 21) @@ -0,0 +1,10 @@ +# Groups configuration for JamNNTPd +# +# Syntax: +# +# <tagname> <access group> <aka> <jampath> +# +NETMAIL X 2:205/454.77 c:\fido\areas\NETMAIL +BAD X 2:205/454.77 c:\fido\areas\BAD +R20_TEKNISKT_RASERI A 2:205/454.77 c:\fido\areas\R20_TEKNISKT_RASERI +R20_KURIOSA A 2:205/454.77 c:\fido\areas\R20_KURIOSA Added: jamnntpd/branches/vendor/0.5/examples/jamnntpd.users =================================================================== --- jamnntpd/branches/vendor/0.5/examples/jamnntpd.users (rev 0) +++ jamnntpd/branches/vendor/0.5/examples/jamnntpd.users 2008-12-28 05:25:47 UTC (rev 21) @@ -0,0 +1,8 @@ +# User configuration file for JamNNTd +# +# Syntax: +# +# <username> <password> <readgroups> <postgroups> +# +billing password AX AX + Added: jamnntpd/branches/vendor/0.5/src/Makefile =================================================================== --- jamnntpd/branches/vendor/0.5/src/Makefile (rev 0) +++ jamnntpd/branches/vendor/0.5/src/Makefile 2008-12-28 05:25:47 UTC (rev 21) @@ -0,0 +1,24 @@ +# type either "make linux" or "make win32" to compile + +help: + @echo You can use this Makefile in the following ways: + @echo make linux ............ Make Linux binaries + @echo make win32 ............ Make Win32 binaries + @echo make cleanlinux ....... Remove object files under Linux + @echo make cleanwin32 ....... Remove object files under Win32 + +linux : + make -C jamlib -f Makefile.linux + make -f Makefile.linux + +win32 : + make -C jamlib -f Makefile.win32 + make -f Makefile.win32 + +cleanlinux : + make -C jamlib -f Makefile.linux clean + make -f Makefile.linux clean + +cleanwin32 : + make -C jamlib -f Makefile.win32 clean + make -f Makefile.win32 clean Added: jamnntpd/branches/vendor/0.5/src/Makefile.linux =================================================================== --- jamnntpd/branches/vendor/0.5/src/Makefile.linux (rev 0) +++ jamnntpd/branches/vendor/0.5/src/Makefile.linux 2008-12-28 05:25:47 UTC (rev 21) @@ -0,0 +1,46 @@ +# Makefile for Linux + +# General + +PLATFORMDEF = -DPLATFORM_LINUX +EXESUFFIX = + +CC = gcc $(DEFS) -Wall +RM = rm -f +STRIP = strip + +OBJS = main.o nntpserv.o os_linux.o sockio.o groups.o misc.o xlat.o allow.o login.o + +jamnntpd : $(OBJS) + $(CC) -o jamnntpd$(EXESUFFIX) $(OBJS) jamlib/jamlib.a -lpthread + $(STRIP) jamnntpd$(EXESUFFIX) + +nntpserv.o : nntpserv.c + $(CC) $(PLATFORMDEF) -c nntpserv.c -o nntpserv.o + +os_linux.o : os_linux.c + $(CC) $(PLATFORMDEF) -c os_linux.c -o os_linux.o + +main.o : main.c + $(CC) $(PLATFORMDEF) -c main.c -o main.o + +sockio.o : sockio.c + $(CC) $(PLATFORMDEF) -c sockio.c -o sockio.o + +groups.o : groups.c + $(CC) $(PLATFORMDEF) -c groups.c -o groups.o + +misc.o : misc.c + $(CC) $(PLATFORMDEF) -c misc.c -o misc.o + +xlat.o : xlat.c + $(CC) $(PLATFORMDEF) -c xlat.c -o xlat.o + +allow.o : allow.c + $(CC) $(PLATFORMDEF) -c allow.c -o allow.o + +login.o : login.c + $(CC) $(PLATFORMDEF) -c login.c -o login.o + +clean : + $(RM) *.o Added: jamnntpd/branches/vendor/0.5/src/Makefile.win32 =================================================================== --- jamnntpd/branches/vendor/0.5/src/Makefile.win32 (rev 0) +++ jamnntpd/branches/vendor/0.5/src/Makefile.win32 2008-12-28 05:25:47 UTC (rev 21) @@ -0,0 +1,46 @@ +# Makefile for Linux + +# General + +PLATFORMDEF = -DPLATFORM_WIN32 +EXESUFFIX = .exe + +CC = gcc $(DEFS) -Wall +RM = del +STRIP = strip + +OBJS = main.o nntpserv.o os_win32.o sockio.o groups.o misc.o xlat.o allow.o login.o + +jamnntpd : $(OBJS) + $(CC) -o jamnntpd$(EXESUFFIX) $(OBJS) jamlib/jamlib.a -lwsock32 + $(STRIP) jamnntpd$(EXESUFFIX) + +nntpserv.o : nntpserv.c + $(CC) $(PLATFORMDEF) -c nntpserv.c -o nntpserv.o + +os_win32.o : os_win32.c + $(CC) $(PLATFORMDEF) -c os_win32.c -o os_win32.o + +main.o : main.c + $(CC) $(PLATFORMDEF) -c main.c -o main.o + +sockio.o : sockio.c + $(CC) $(PLATFORMDEF) -c sockio.c -o sockio.o + +groups.o : groups.c + $(CC) $(PLATFORMDEF) -c groups.c -o groups.o + +misc.o : misc.c + $(CC) $(PLATFORMDEF) -c misc.c -o misc.o + +xlat.o : xlat.c + $(CC) $(PLATFORMDEF) -c xlat.c -o xlat.o + +allow.o : allow.c + $(CC) $(PLATFORMDEF) -c allow.c -o allow.o + +login.o : login.c + $(CC) $(PLATFORMDEF) -c login.c -o login.o + +clean : + $(RM) *.o Added: jamnntpd/branches/vendor/0.5/src/allow.c =================================================================== --- jamnntpd/branches/vendor/0.5/src/allow.c (rev 0) +++ jamnntpd/branches/vendor/0.5/src/allow.c 2008-12-28 05:25:47 UTC (rev 21) @@ -0,0 +1,58 @@ +#include "nntpserv.h" + +bool compareip(uchar *ip,uchar *pat) +{ + int c; + + for(c=0;pat[c];c++) + { + if(pat[c]=='*') + return(TRUE); + + if(ip[c] != pat[c]) + return(FALSE); + } + + return(TRUE); +} + +bool checkallow(struct var *var,uchar *str) +{ + FILE *fp; + uchar s[1000]; + long c,d; + + if(!(fp=fopen(cfg_allowfile,"r"))) + { + os_logwrite("(%s) Can't read allow file %s",var->clientid,cfg_allowfile); + return(FALSE); + } + + while(fgets(s,999,fp)) + { + strip(s); + + if(s[0]!=0 && s[0]!='#') + { + for(c=0;!isspace(s[c]) && s[c]!=0;c++); + if(isspace(s[c])) s[c++]=0; + while(isspace(s[c])) c++; + + for(d=c;!isspace(s[d]) && s[d]!=0;d++); + if(isspace(s[d])) s[d++]=0; + while(isspace(s[d])) d++; + + if(compareip(str,s)) + { + mystrncpy(var->readgroups,&s[c],50); + mystrncpy(var->postgroups,&s[d],50); + + fclose(fp); + return(TRUE); + } + } + } + + fclose(fp); + return(FALSE); +} Added: jamnntpd/branches/vendor/0.5/src/allow.h =================================================================== --- jamnntpd/branches/vendor/0.5/src/allow.h (rev 0) +++ jamnntpd/branches/vendor/0.5/src/allow.h 2008-12-28 05:25:47 UTC (rev 21) @@ -0,0 +1 @@ +bool checkallow(struct var *var,uchar *str); Added: jamnntpd/branches/vendor/0.5/src/groups.c =================================================================== --- jamnntpd/branches/vendor/0.5/src/groups.c (rev 0) +++ jamnntpd/branches/vendor/0.5/src/groups.c 2008-12-28 05:25:47 UTC (rev 21) @@ -0,0 +1,79 @@ +#include "nntpserv.h" + +bool readgroups(struct var *var) +{ + FILE *fp; + uchar s[1000]; + long c,d,e; + struct group *newgroup,*lastgroup; + + if(!(fp=fopen(cfg_groupsfile,"r"))) + { + os_logwrite("(%s) Failed to read group configuration file %s",var->clientid,cfg_groupsfile); + return(FALSE); + } + + lastgroup=NULL; + var->firstgroup=NULL; + + while(fgets(s,999,fp)) + { + strip(s); + + if(s[0]!=0 && s[0]!='#') + { + for(c=0;!isspace(s[c]) && s[c]!=0;c++); + if(isspace(s[c])) s[c++]=0; + while(isspace(s[c])) c++; + + for(d=c;!isspace(s[d]) && s[d]!=0;d++); + if(isspace(s[d])) s[d++]=0; + while(isspace(s[d])) d++; + + for(e=d;!isspace(s[e]) && s[e]!=0;e++); + if(isspace(s[e])) s[e++]=0; + while(isspace(s[e])) e++; + + if(!(newgroup=(struct group *)malloc(sizeof(struct group)))) + { + fclose(fp); + return(FALSE); + } + + newgroup->next=NULL; + if(!var->firstgroup) var->firstgroup=newgroup; + if(lastgroup) lastgroup->next=newgroup; + lastgroup=newgroup; + + mystrncpy(newgroup->tagname,s,100); + newgroup->group=s[c]; + mystrncpy(newgroup->aka,&s[d],40); + mystrncpy(newgroup->jampath,&s[e],100); + } + } + + fclose(fp); + + if(!var->firstgroup) + { + os_logwrite("(%s) No groups configured",var->clientid); + return(FALSE); + } + + return(TRUE); +} + +void freegroups(struct var *var) +{ + struct group *gr,*gr2; + + gr=var->firstgroup; + + while(gr) + { + gr2=gr->next; + free(gr); + gr=gr2; + } +} + Added: jamnntpd/branches/vendor/0.5/src/groups.h =================================================================== --- jamnntpd/branches/vendor/0.5/src/groups.h (rev 0) +++ jamnntpd/branches/vendor/0.5/src/groups.h 2008-12-28 05:25:47 UTC (rev 21) @@ -0,0 +1,12 @@ +struct group +{ + struct group *next; + uchar tagname[100]; + uchar group; + uchar jampath[100]; + uchar aka[40]; +}; + +bool readgroups(struct var *var); +void freegroups(struct var *var); + Added: jamnntpd/branches/vendor/0.5/src/jamlib/LICENSE =================================================================== --- jamnntpd/branches/vendor/0.5/src/jamlib/LICENSE (rev 0) +++ jamnntpd/branches/vendor/0.5/src/jamlib/LICENSE 2008-12-28 05:25:47 UTC (rev 21) @@ -0,0 +1,504 @@ + GNU LESSER GENERAL PUBLIC LICENSE + Version 2.1, February 1999 + + Copyright (C) 1991, 1999 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +[This is the first released version of the Lesser GPL. It also counts + as the successor of the GNU Library Public License, version 2, hence + the version number 2.1.] + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +Licenses are intended to guarantee your freedom to share and change +free software--to make sure the software is free for all its users. + + This license, the Lesser General Public License, applies to some +specially designated software packages--typically libraries--of the +Free Software Foundation and other authors who decide to use it. You +can use it too, but we suggest you first think carefully about whether +this license or the ordinary General Public License is the better +strategy to use in any particular case, based on the explanations below. + + When we speak of free software, we are referring to freedom of use, +not price. Our General Public Licenses are designed to make sure that +you have the freedom to distribute copies of free software (and charge +for this service if you wish); that you receive source code or can get +it if you want it; that you can change the software and use pieces of +it in new free programs; and that you are informed that you can do +these things. + + To protect your rights, we need to make restrictions that forbid +distributors to deny you these rights or to ask you to surrender these +rights. These restrictions translate to certain responsibilities for +you if you distribute copies of the library or if you modify it. + + For example, if you distribute copies of the library, whether gratis +or for a fee, you must give the recipients all the rights that we gave +you. You must make sure that they, too, receive or can get the source +code. If you link other code with the library, you must provide +complete object files to the recipients, so that they can relink them +with the library after making changes to the library and recompiling +it. And you must show them these terms so they know their rights. + + We protect your rights with a two-step method: (1) we copyright the +library, and (2) we offer you this license, which gives you legal +permission to copy, distribute and/or modify the library. + + To protect each distributor, we want to make it very clear that +there is no warranty for the free library. Also, if the library is +modified by someone else and passed on, the recipients should know +that what they have is not the original version, so that the original +author's reputation will not be affected by problems that might be +introduced by others. + + Finally, software patents pose a constant threat to the existence of +any free program. We wish to make sure that a company cannot +effectively restrict the users of a free program by obtaining a +restrictive license from a patent holder. Therefore, we insist that +any patent license obtained for a version of the library must be +consistent with the full freedom of use specified in this license. + + Most GNU software, including some libraries, is covered by the +ordinary GNU General Public License. This license, the GNU Lesser +General Public License, applies to certain designated libraries, and +is quite different from the ordinary General Public License. We use +this license for certain libraries in order to permit linking those +libraries into non-free programs. + + When a program is linked with a library, whether statically or using +a shared library, the combination of the two is legally speaking a +combined work, a derivative of the original library. The ordinary +General Public License therefore permits such linking only if the +entire combination fits its criteria of freedom. The Lesser General +Public License permits more lax criteria for linking other code with +the library. + + We call this license the "Lesser" General Public License because it +does Less to protect the user's freedom than the ordinary General +Public License. It also provides other free software developers Less +of an advantage over competing non-free programs. These disadvantages +are the reason we use the ordinary General Public License for many +libraries. However, the Lesser license provides advantages in certain +special circumstances. + + For example, on rare occasions, there may be a special need to +encourage the widest possible use of a certain library, so that it becomes +a de-facto standard. To achieve this, non-free programs must be +allowed to use the library. A more frequent case is that a free +library does the same job as widely used non-free libraries. In this +case, there is little to gain by limiting the free library to free +software only, so we use the Lesser General Public License. + + In other cases, permission to use a particular library in non-free +programs enables a greater number of people to use a large body of +free software. For example, permission to use the GNU C Library in +non-free programs enables many more people to use the whole GNU +operating system, as well as its variant, the GNU/Linux operating +system. + + Although the Lesser General Public License is Less protective of the +users' freedom, it does ensure that the user of a program that is +linked with the Library has the freedom and the wherewithal to run +that program using a modified version of the Library. + + The precise terms and conditions for copying, distribution and +modification follow. Pay close attention to the difference between a +"work based on the library" and a "work that uses the library". The +former contains code derived from the library, whereas the latter must +be combined with the library in order to run. + + GNU LESSER GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License Agreement applies to any software library or other +program which contains a notice placed by the copyright holder or +other authorized party saying it may be distributed under the terms of +this Lesser General Public License (also called "this License"). +Each licensee is addressed as "you". + + A "library" means a collection of software functions and/or data +prepared so as to be conveniently linked with application programs +(which use some of those functions and data) to form executables. + + The "Library", below, refers to any such software library or work +which has been distributed under these terms. A "work based on the +Library" means either the Library or any derivative work under +copyright law: that is to say, a work containing the Library or a +portion of it, either verbatim or with modifications and/or translated +straightforwardly into another language. (Hereinafter, translation is +included without limitation in the term "modification".) + + "Source code" for a work means the preferred form of the work for +making modifications to it. For a library, complete source code means +all the source code for all modules it contains, plus any associated +interface definition files, plus the scripts used to control compilation +and installation of the library. + + Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running a program using the Library is not restricted, and output from +such a program is covered only if its contents constitute a work based +on the Library (independent of the use of the Library in a tool for +writing it). Whether that is true depends on what the Library does +and what the program that uses the Library does. + + 1. You may copy and distribute verbatim copies of the Library's +complete source code as you receive it, in any medium, provided that +you conspicuously and appropriately publish on each copy an +appropriate copyright notice and disclaimer of warranty; keep intact +all the notices that refer to this License and to the absence of any +warranty; and distribute a copy of this License along with the +Library. + + You may charge a fee for the physical act of transferring a copy, +and you may at your option offer warranty protection in exchange for a +fee. + + 2. You may modify your copy or copies of the Library or any portion +of it, thus forming a work based on the Library, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) The modified work must itself be a software library. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + c) You must cause the whole of the work to be licensed at no + charge to all third parties under the terms of this License. + + d) If a facility in the modified Library refers to a function or a + table of data to be supplied by an application program that uses + the facility, other than as an argument passed when the facility + is invoked, then you must make a good faith effort to ensure that, + in the event an application does not supply such function or + table, the facility still operates, and performs whatever part of + its purpose remains meaningful. + + (For example, a function in a library to compute square roots has + a purpose that is entirely well-defined independent of the + application. Therefore, Subsection 2d requires that any + application-supplied function or table used by this function must + be optional: if the application does not supply it, the square + root function must still compute square roots.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Library, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Library, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Library. + +In addition, mere aggregation of another work not based on the Library +with the Library (or with a work based on the Library) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may opt to apply the terms of the ordinary GNU General Public +License instead of this License to a given copy of the Library. To do +this, you must alter all the notices that refer to this License, so +that they refer to the ordinary GNU General Public License, version 2, +instead of to this License. (If a newer version than version 2 of the +ordinary GNU General Public License has appeared, then you can specify +that version instead if you wish.) Do not make any other change in +these notices. + + Once this change is made in a given copy, it is irreversible for +that copy, so the ordinary GNU General Public License applies to all +subsequent copies and derivative works made from that copy. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 4. You may copy and distribute the Library (or a portion or +derivative of it, under Section 2) in object code or executable form +under the terms of Sections 1 and 2 above provided that you accompany +it with the complete corresponding machine-readable source code, which +must be distributed under the terms of Sections 1 and 2 above on a +medium customarily used for software interchange. + + If distribution of object code is made by offering access to copy +from a designated place, then offering equivalent access to copy the +source code from the same place satisfies the requirement to +distribute the source code, even though third parties are not +compelled to copy the source along with the object code. + + 5. A program that contains no derivative of any portion of the +Library, but is designed to work with the Library by being compiled or +linked with it, is called a "work that uses the Library". Such a +work, in isolation, is not a derivative work of the Library, and +therefore falls outside the scope of this License. + + However, linking a "work that uses the Library" with the Library +creates an executable that is a derivative of the Library (because it +contains portions of the Library), rather than a "work that uses the +library". The executable is therefore covered by this License. +Section 6 states terms for distribution of such executables. + + When a "work that uses the Library" uses material from a header file +that is part of the Library, the object code for the work may be a +derivative work of the Library even though the source code is not. +Whether this is true is especially significant if the work can be +linked without the Library, or if the work is itself a library. The +threshold for this to be true is not precisely defined by law. + + If such an object file uses only numerical parameters, data +structure layouts and accessors, and small macros and small inline +functions (ten lines or less in length), then the use of the object +file is unrestricted, regardless of whether it is legally a derivative +work. (Executables containing this object code plus portions of the +Library will still fall under Section 6.) + + Otherwise, if the work is a derivative of the Library, you may +distribute the object code for the work under the terms of Section 6. +Any executables containing that work also fall under Section 6, +whether or not they are linked directly with the Library itself. + + 6. As an exception to the Sections above, you may also combine or +link a "work that uses the Library" with the Library to produce a +work containing portions of the Library, and distribute that work +under terms of your choice, provided that the terms permit +modification of the work for the customer's own use and reverse +engineering for debugging such modifications. + + You must give prominent notice with each copy of the work that the +Library is used in it and that the Library and its use are covered by +this License. You must supply a copy of this License. If the work +during execution displays copyright notices, you must include the +copyright notice for the Library among them, as well as a reference +directing the user to the copy of this License. Also, you must do one +of these things: + + a) Accompany the work with the complete corresponding + machine-readable source code for the Library including whatever + changes were used in the work (which must be distributed under + Sections 1 and 2 above); and, if the work is an executable linked + with the Library, with the complete machine-readable "work that + uses the Library", as object code and/or source code, so that the + user can modify the Library and then relink to produce a modified + executable containing the modified Library. (It is understood + that the user who changes the contents of definitions files in the + Library will not necessarily be able to recompile the application + to use the modified definitions.) + + b) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (1) uses at run time a + copy of the library already present on the user's computer system, + rather than copying library functions into the executable, and (2) + will operate properly with a modified version of the library, if + the user installs one, as long as the modified version is + interface-compatible with the version that the work was made with. + + c) Accompany the work with a written offer, valid for at + least three years, to give the same user the materials + specified in Subsection 6a, above, for a charge no more + than the cost of performing this distribution. + + d) If distribution of the work is made by offering access to copy + from a designated place, offer equivalent access to copy the above + specified materials from the same place. + + e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + For an executable, the required form of the "work that uses the +Library" must include any data and utility programs needed for +reproducing the executable from it. However, as a special exception, +the materials to be distributed need not include anything that is +normally distributed (in either source or binary form) with the major +components (compiler, kernel, and so on) of the operating system on +which the executable runs, unless that component itself accompanies +the executable. + + It may happen that this requirement contradicts the license +restrictions of other proprietary libraries that do not normally +accompany the operating system. Such a contradiction means you cannot +use both them and the Library together in an executable that you +distribute. + + 7. You may place library facilities that are a work based on the +Library side-by-side in a single library together with other library +facilities not covered by this License, and distribute such a combined +library, provided that the separate distribution of the work based on +the Library and of the other library facilities is otherwise +permitted, and provided that you do these two things: + + a) Accompany the combined library with a copy of the same work + based on the Library, uncombined with any other library + facilities. This must be distributed under the terms of the + Sections above. + + b) Give prominent notice with the combined library of the fact + that part of it is a work based on the Library, and explaining + where to find the accompanying uncombined form of the same work. + + 8. You may not copy, modify, sublicense, link with, or distribute +the Library except as expressly provided under this License. Any +attempt otherwise to copy, modify, sublicense, link with, or +distribute the Library is void, and will automatically terminate your +rights under this License. However, parties who have received copies, +or rights, from you under this License will not have their licenses +terminated so long as such parties remain in full compliance. + + 9. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Library or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Library (or any work based on the +Library), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + + 10. Each time you redistribute the Library (or any work based on the +Library), the recipient automatically receives a license from the +original licensor to copy, distribute, link with or modify the Library +subject to these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties with +this License. + + 11. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Library at all. For example, if a patent +license would not permit royalty-free redistribution of the Library by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 12. If the distribution and/or use of the Library is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Library under this License may add +an explicit geographical distribution limitation excluding those countries, +so that distribution is permitted only in or among countries not thus +excluded. In such case, this License incorporates the limitation as if +written in the body of this License. + + 13. The Free Software Foundation may publish revised and/or new +versions of the Lesser General Public License from time to time. +Such new versions will be similar in spirit to the present version, +but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library +specifies a version number of this License which applies to it and +"any later version", you have the option of following the terms and +conditions either of that version or of any later version published by +the Free Software Foundation. If the Library does not specify a +license version number, you may choose any version ever published by +the Free Software Foundation. + + 14. If you wish to incorporate parts of the Library into other free +programs whose distribution conditions are incompatible with these, +write to the author to ask for permission. For software which is +copyrighted by the Free Software Foundation, write to the Free +Software Foundation; we sometimes make exceptions for this. Our +decision will be guided by the two goals of preserving the free status +of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + + 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO +WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR +OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY +KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE +LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY +AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU +FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE +LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A +FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Libraries + + If you develop a new library, and you want it to be of the greatest +possible use to the public, we recommend making it free software that +everyone can redistribute and change. You can do so by permitting +redistribution under these terms (or, alternatively, under the terms of the +ordinary General Public License). + + To apply these terms, attach the following notices to the library. It is +safest to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least the +"copyright" line and a pointer to where the full notice is found. + + <one line to give the library's name and a brief idea of what it does.> + Copyright (C) <year> <name of author> + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +Also add information on how to contact you by electronic and paper mail. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the library, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the + library `Frob' (a library for tweaking knobs) written by James Random Hacker. + + <signature of Ty Coon>, 1 April 1990 + Ty Coon, President of Vice + +That's all there is to it! + + Added: jamnntpd/branches/vendor/0.5/src/jamlib/Makefile.linux =================================================================== --- jamnntpd/branches/vendor/0.5/src/jamlib/Makefile.linux (rev 0) +++ jamnntpd/branches/vendor/0.5/src/jamlib/Makefile.linux 2008-12-28 05:25:47 UTC (rev 21) @@ -0,0 +1,29 @@ +CC = gcc -D__LINUX__ -Wall +AR = ar -ru +RM = rm -f + +OBJS = crc32.o mbase.o message.o lastread.o subpack.o structrw.o + +jamlib.a : $(OBJS) + $(AR) jamlib.a $(OBJS) + +crc32.o: crc32.c jam.h + $(CC) -c crc32.c -o crc32.o + +mbase.o: mbase.c jam.h + $(CC) -c mbase.c -o mbase.o + +message.o: message.c jam.h + $(CC) -c message.c -o message.o + +lastread.o: lastread.c jam.h + $(CC) -c lastread.c -o lastread.o + +subpack.o: subpack.c jam.h + $(CC) -c subpack.c -o subpack.o + +structrw.o: structrw.c jam.h + $(CC) -c structrw.c -o structrw.o + +clean: + $(RM) *.o *.a Added: jamnntpd/branches/vendor/0.5/src/jamlib/Makefile.os2 =================================================================== --- jamnntpd/branches/vendor/0.5/src/jamlib/Makefile.os2 (rev 0) +++ jamnntpd/branches/vendor/0.5/src/jamlib/Makefile.os2 2008-12-28 05:25:47 UTC (rev 21) @@ -0,0 +1,30 @@ +CC = gcc -Wall -D__OS2__ -DINCL_DOSPROCESS +AR = ar -ru +RM = del + +OBJS = crc32.o mbase.o message.o lastread.o subpack.o structrw.o + +jamlib.a: $(OBJS) + $(AR) jamlib.a $(OBJS) + +crc32.o: crc32.c jam.h + $(CC) -c crc32.c -o crc32.o + +mbase.o: mbase.c jam.h + $(CC) -c mbase.c -o mbase.o + +message.o: message.c jam.h + $(CC) -c message.c -o message.o + +lastread.o: lastread.c jam.h + $(CC) -c lastread.c -o lastread.o + +subpack.o: subpack.c jam.h + $(CC) -c subpack.c -o subpack.o + +structrw.o: structrw.c jam.h + $(CC) -c structrw.c -o structrw.o + +clean: + $(RM) *.o *.a + Added: jamnntpd/branches/vendor/0.5/src/jamlib/Makefile.win32 =================================================================== --- jamnntpd/branches/vendor/0.5/src/jamlib/Makefile.win32 (rev 0) +++ jamnntpd/branches/vendor/0.5/src/jamlib/Makefile.win32 2008-12-28 05:25:47 UTC (rev 21) @@ -0,0 +1,29 @@ +CC = gcc -Wall +AR = ar -ru +RM = del + +OBJS = crc32.o mbase.o message.o lastread.o subpack.o structrw.o + +jamlib.a : $(OBJS) + $(AR) jamlib.a $(OBJS) + +crc32.o: crc32.c jam.h + $(CC) -c crc32.c -o crc32.o + +mbase.o: mbase.c jam.h + $(CC) -c mbase.c -o mbase.o + +message.o: message.c jam.h + $(CC) -c message.c -o message.o + +lastread.o: lastread.c jam.h + $(CC) -c lastread.c -o lastread.o + +subpack.o: subpack.c jam.h + $(CC) -c subpack.c -o subpack.o + +structrw.o: structrw.c jam.h + $(CC) -c structrw.c -o structrw.o + +clean: + $(RM) *.o *.a Added: jamnntpd/branches/vendor/0.5/src/jamlib/crc32.c =================================================================== --- jamnntpd/branches/vendor/0.5/src/jamlib/crc32.c (rev 0) +++ jamnntpd/branches/vendor/0.5/src/jamlib/crc32.c 2008-12-28 05:25:47 UTC (rev 21) @@ -0,0 +1,78 @@ +/* + Crc32 - CRC32-calculation for JAM + Copyright (C) 2000 Johan Billing + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + Changes made by Johan Billing 2003-10-22 + + - Fixed comparison between signed and unsigned variable in JAM_Crc32() +*/ + +#include "jam.h" + +ulong crc32tab[] = { /* CRC polynomial 0xedb88320 */ +0x00000000, 0x77073096, 0xee0e612c, 0x990951ba, 0x076dc419, 0x706af48f, 0xe963a535, 0x9e6495a3, +0x0edb8832, 0x79dcb8a4, 0xe0d5e91e, 0x97d2d988, 0x09b64c2b, 0x7eb17cbd, 0xe7b82d07, 0x90bf1d91, +0x1db71064, 0x6ab020f2, 0xf3b97148, 0x84be41de, 0x1adad47d, 0x6ddde4eb, 0xf4d4b551, 0x83d385c7, +0x136c9856, 0x646ba8c0, 0xfd62f97a, 0x8a65c9ec, 0x14015c4f, 0x63066cd9, 0xfa0f3d63, 0x8d080df5, +0x3b6e20c8, 0x4c69105e, 0xd56041e4, 0xa2677172, 0x3c03e4d1, 0x4b04d447, 0xd20d85fd, 0xa50ab56b, +0x35b5a8fa, 0x42b2986c, 0xdbbbc9d6, 0xacbcf940, 0x32d86ce3, 0x45df5c75, 0xdcd60dcf, 0xabd13d59, +0x26d930ac, 0x51de003a, 0xc8d75180, 0xbfd06116, 0x21b4f4b5, 0x56b3c423, 0xcfba9599, 0xb8bda50f, +0x2802b89e, 0x5f058808, 0xc60cd9b2, 0xb10be924, 0x2f6f7c87, 0x58684c11, 0xc1611dab, 0xb6662d3d, +0x76dc4190, 0x01db7106, 0x98d220bc, 0xefd5102a, 0x71b18589, 0x06b6b51f, 0x9fbfe4a5, 0xe8b8d433, +0x7807c9a2, 0x0f00f934, 0x9609a88e, 0xe10e9818, 0x7f6a0dbb, 0x086d3d2d, 0x91646c97, 0xe6635c01, +0x6b6b51f4, 0x1c6c6162, 0x856530d8, 0xf262004e, 0x6c0695ed, 0x1b01a57b, 0x8208f4c1, 0xf50fc457, +0x65b0d9c6, 0x12b7e950, 0x8bbeb8ea, 0xfcb9887c, 0x62dd1ddf, 0x15da2d49, 0x8cd37cf3, 0xfbd44c65, +0x4db26158, 0x3ab551ce, 0xa3bc0074, 0xd4bb30e2, 0x4adfa541, 0x3dd895d7, 0xa4d1c46d, 0xd3d6f4fb, +0x4369e96a, 0x346ed9fc, 0xad678846, 0xda60b8d0, 0x44042d73, 0x33031de5, 0xaa0a4c5f, 0xdd0d7cc9, +0x5005713c, 0x270241aa, 0xbe0b1010, 0xc90c2086, 0x5768b525, 0x206f85b3, 0xb966d409, 0xce61e49f, +0x5edef90e, 0x29d9c998, 0xb0d09822, 0xc7d7a8b4, 0x59b33d17, 0x2eb40d81, 0xb7bd5c3b, 0xc0ba6cad, +0xedb88320, 0x9abfb3b6, 0x03b6e20c, 0x74b1d29a, 0xead54739, 0x9dd277af, 0x04db2615, 0x73dc1683, +0xe3630b12, 0x94643b84, 0x0d6d6a3e, 0x7a6a5aa8, 0xe40ecf0b, 0x9309ff9d, 0x0a00ae27, 0x7d079eb1, +0xf00f9344, 0x8708a3d2, 0x1e01f268, 0x6906c2fe, 0xf762575d, 0x806567cb, 0x196c3671, 0x6e6b06e7, +0xfed41b76, 0x89d32be0, 0x10da7a5a, 0x67dd4acc, 0xf9b9df6f, 0x8ebeeff9, 0x17b7be43, 0x60b08ed5, +0xd6d6a3e8, 0xa1d1937e, 0x38d8c2c4, 0x4fdff252, 0xd1bb67f1, 0xa6bc5767, 0x3fb506dd, 0x48b2364b, +0xd80d2bda, 0xaf0a1b4c, 0x36034af6, 0x41047a60, 0xdf60efc3, 0xa867df55, 0x316e8eef, 0x4669be79, +0xcb61b38c, 0xbc66831a, 0x256fd2a0, 0x5268e236, 0xcc0c7795, 0xbb0b4703, 0x220216b9, 0x5505262f, +0xc5ba3bbe, 0xb2bd0b28, 0x2bb45a92, 0x5cb36a04, 0xc2d7ffa7, 0xb5d0cf31, 0x2cd99e8b, 0x5bdeae1d, +0x9b64c2b0, 0xec63f226, 0x756aa39c, 0x026d930a, 0x9c0906a9, 0xeb0e363f, 0x72076785, 0x05005713, +0x95bf4a82, 0xe2b87a14, 0x7bb12bae, 0x0cb61b38, 0x92d28e9b, 0xe5d5be0d, 0x7cdcefb7, 0x0bdbdf21, +0x86d3d2d4, 0xf1d4e242, 0x68ddb3f8, 0x1fda836e, 0x81be16cd, 0xf6b9265b, 0x6fb077e1, 0x18b74777, +0x88085ae6, 0xff0f6a70, 0x66063bca, 0x11010b5c, 0x8f659eff, 0xf862ae69, 0x616bffd3, 0x166ccf45, +0xa00ae278, 0xd70dd2ee, 0x4e048354, 0x3903b3c2, 0xa7672661, 0xd06016f7, 0x4969474d, 0x3e6e77db, +0xaed16a4a, 0xd9d65adc, 0x40df0b66, 0x37d83bf0, 0xa9bcae53, 0xdebb9ec5, 0x47b2cf7f, 0x30b5ffe9, +0xbdbdf21c, 0xcabac28a, 0x53b39330, 0x24b4a3a6, 0xbad03605, 0xcdd70693, 0x54de5729, 0x23d967bf, +0xb3667a2e, 0xc4614ab8, 0x5d681b02, 0x2a6f2b94, 0xb40bbe37, 0xc30c8ea1, 0x5a05df1b, 0x2d02ef8d +}; + +/*********************************************************************** +** +** JAM_Crc32 - Calculates CRC-32 +** +***********************************************************************/ + +ulong JAM_Crc32(uchar *Buffer_PC, ulong Length_I) +{ + ulong Crc_I; + ulong c; + + Crc_I=0xffffffff; + + for(c=0;c < Length_I; c++) + Crc_I=(Crc_I>>8) ^ crc32tab[(uchar)Crc_I ^ tolower(Buffer_PC[c])]; + + return(Crc_I); +} Added: jamnntpd/branches/vendor/0.5/src/jamlib/jam.h =================================================================== --- jamnntpd/branches/vendor/0.5/src/jamlib/jam.h (rev 0) +++ jamnntpd/branches/vendor/0.5/src/jamlib/jam.h 2008-12-28 05:25:47 UTC (rev 21) @@ -0,0 +1,332 @@ +/* + JAMLIB - A JAM subroutine library + Copyright (C) 1999 Bj\xF6rn Stenberg + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + Changes made by Johan Billing 2000-04-16: + + - Added #defines for JAM_NO_MESSAGE and JAM_CORRUPT_MSG + - Added #ifndef linux around typedefs for ushort and ulong + - Added prototype for JAM_AddEmptyMessage() + + Backported changes from JAMLIB 1.4.7 made by Johan Billing 2003-10-26 + + - Added prototype for JAM_DeleteMessage() +*/ + +/*********************************************************************** +** +** JAM Definitions +** +***********************************************************************/ + +#ifndef __JAM_H__ +#define __JAM_H__ + +#include <stdlib.h> +#include <stdio.h> +#include <ctype.h> + +#ifndef linux +typedef unsigned short ushort; /* must be 16 bits wide */ +typedef unsigned long ulong; /* must be ... [truncated message content] |
From: <ja...@us...> - 2008-12-28 05:15:31
|
Revision: 20 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=20&view=rev Author: jame Date: 2008-12-28 05:15:22 +0000 (Sun, 28 Dec 2008) Log Message: ----------- Create repository structure for jamnntpd. Added Paths: ----------- jamnntpd/ jamnntpd/branches/ jamnntpd/branches/vendor/ jamnntpd/tags/ jamnntpd/trunk/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ja...@us...> - 2008-12-28 05:00:18
|
Revision: 19 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=19&view=rev Author: jame Date: 2008-12-28 05:00:15 +0000 (Sun, 28 Dec 2008) Log Message: ----------- Added note about obtaining the source archives & contacting the author to htdocs/vireq.html. Modified Paths: -------------- htdocs/online/vireq.html Modified: htdocs/online/vireq.html =================================================================== --- htdocs/online/vireq.html 2008-12-28 04:20:11 UTC (rev 18) +++ htdocs/online/vireq.html 2008-12-28 05:00:15 UTC (rev 19) @@ -30,12 +30,14 @@ <div class="rowOfBoxes"> <div class="twoThirds noBorderOnLeft"> - <p>VIREQ/x is a SRIF File request processor for Linux. Works with SRIF according to FSC-0086.001. + <p>VIREQ/x is a SRIF File request processor. Works with SRIF according to FSC-0086.001. Neither filebase nor files.bbs files are neccessary. Usable with FTN mailers such as BinkD to handle incoming file requests. </p> - - + <p>The original source archives were downloaded and imported to the SVN repository. The license for it + was unclear, so the original author was contacted via email; the resulting conversation was added to the repository + as the file <a href="http://ftnapps.svn.sourceforge.net/viewvc/ftnapps/vireq/trunk/COPYING?revision=13&view=markup">COPYING</a>. + </div> <div class="oneThird"> @@ -46,6 +48,9 @@ <li>Browse <a href="http://ftnapps.svn.sourceforge.net/viewvc/ftnapps/vireq/">vireq</a> in the ftnapps SVN repository.</li> </ul> + <p class="filler"><!-- Filler para to extend left vertical line --></p> + <p class="filler"><!-- Filler para to extend left vertical line --></p> + </div> </div> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ja...@us...> - 2008-12-28 04:20:14
|
Revision: 18 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=18&view=rev Author: jame Date: 2008-12-28 04:20:11 +0000 (Sun, 28 Dec 2008) Log Message: ----------- Import the English translation of vireq.dok by Viktor Kafke as the file vireq/trunk/README. Added Paths: ----------- vireq/trunk/README Copied: vireq/trunk/README (from rev 15, vireq/branches/0.10.5-1/debian/README) =================================================================== --- vireq/trunk/README (rev 0) +++ vireq/trunk/README 2008-12-28 04:20:11 UTC (rev 18) @@ -0,0 +1,164 @@ + + VIREQ/x V0.10 + (c) 1998-2001 by Volker Imre + Fidonet 2:246/2098 + Email Vo...@im... + + Poorly translated from vireq.dok and upgraded for (vk) + patches by Viktor Kafke + Fidonet 2:2437/33 + Email vk...@fi... + +! Some important changes in (vk) versions are marked +! with a leading "!". + + +Short description: +----------------- + + VIREQ/x is a fidonet file request processor according to the + FSC-0086 SRIF standard. + + VIREQ/x is designed simply to be fast. Anyone who is looking for + easy setup programs, user data bases or stuff like mouse support + in a file request processor better should look around for another + software. + + VIREQ/x supports the wilcards '*' and '?' in file name entries. + The '*' wildcard may be used multiple times in single request + name entries. + + The configuration of this software is very simple and should be done + within 5 minutes - even on larger sites. VIREQ/x can be instructed to + search the complete paths to file areas recursively itself. + + There is no need for a BBS program or for FILES.BBS files to use + VIREQ/x. + +How to install: +-------------- + + 1. Create a new directory /usr/bin/vireq/ + 2. Extract the whole VIREQ/x archive to this new directory. + 3. Make sure that the user which runs binkd and vireq do have write + access to this directory and the files in it. E.g. via: + chown -R news.news /usr/bin/vireq + 4. Change the sample vireq.cfg and vireq.pwd to fit your system + requirements. The vireq.pwd file is not mandatory (see whatsnew). + 5. Run vimkidx + 6. Change your binkd.cfg as described below. + 7. Done. + + The vimkidx program should run periodically via cron to keep your + indexes up to date. + +The executables: +--------------- + + vimkidx -> Reads vireq.cfg and builds the needed index files + for your system (vifile<x>.idx und vipath.idx) + + vireq -> The request processor program to be called by the binkd + mailer for handling file requests. Change your binkd.cfg + as follows + + exec "/usr/bin/vireq/vireq *S" *.req + +The main configuration file vireq.cfg: +------------------------------------- + + In detail: + + Defines the log file for VIREQ/x. VIREQ/x will replace %u with the + content of the TASK environment variable. + + logfile vireq%u.log + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + Name for the logfile for all requested files from your system + including the whole path. This file is for later processing by a + download counter program. As before, %u is replaced by TASK + environment variable. + + dlc-log dlc%u.log + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + Your system name to be used in request responses. + + systemname Charleston BBS + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + Your fidonet address to be used as "from" address is request responses. + + aka 2:246/2098 + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + The path to use for temporary files when files from an optional + CD charger are requested (see "-local" below). + + cdtemp /tmp/ + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + The path to your alias definitions. Can be used multiple times. + + aliaslist /mnt/hdc5/system/im/aliases.lst + + In this file you can use the "newest" parameter, which will send + the most recent file only. + + NODEDIFF /var/spool/fnet/files/nodediff/NODEDIFF.A* [-newest] + + If -newest is not used, _ALL_ matching files will be sent. + +! Important change since version 0.10.5(vk): +! Alias names are case sensitive now! So "NODEDIFF" and "nodediff" +! are different aliases (magics). + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + Here you can list all path names to build the index for VIREQ/x. + This command can be used multiple times. + + include-file /path/to/filelist/to/include + + include-path /filebase1 [-s|-t] + + -s means: Include only subdirectories including a FILES.BBS file. + + -t means: Include all subdirectories. + + Further options for "include-file" and "include-path": + + -cd -> Include this only if vimkidx is run with the + "-force" switch. This saves time, since indices + for CDs areas are rarely changed. + + -local -> For those of you using a CD charger. + File in those directories will be copied in the + "cdtemp" directory during a request process and + will be deleted by the mailer after transfer. + + When "-local" is used in conjuction with "-s"/"-t" + or in a "include-path" entry, it is valid for all + subdirectires. + + +The password file vireq.pwd: +---------------------------- + + See "whatsnew" file. + + +Todo-List: +---------- + + Send me your suggestions, please... + + Support for request limits or different handling of + protected/unprotected sessions and listed/unlisted sessions is not + planned. Who really needs that. Property changes on: vireq/trunk/README ___________________________________________________________________ Added: svn:mergeinfo + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ja...@us...> - 2008-12-28 04:10:59
|
Revision: 17 http://ftnapps.svn.sourceforge.net/ftnapps/?rev=17&view=rev Author: jame Date: 2008-12-28 04:10:56 +0000 (Sun, 28 Dec 2008) Log Message: ----------- Add note about origin of vireq README file to debian/README.source. Modified Paths: -------------- vireq/branches/0.10.5-1/debian/README.source Modified: vireq/branches/0.10.5-1/debian/README.source =================================================================== --- vireq/branches/0.10.5-1/debian/README.source 2008-12-28 03:48:08 UTC (rev 16) +++ vireq/branches/0.10.5-1/debian/README.source 2008-12-28 04:10:56 UTC (rev 17) @@ -1,3 +1,8 @@ Creating a source archive Downloaded from ftp://ftp.fido.de/pub/fidonet/vireq/virexs105.zip + +The initial version of the English translation of vireq.dok by Viktor Kafke +was downloaded from ftp://ftp.fido.de/pub/fidonet/vireq/README + + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |