imapfeed patches
Russ Allbery
rra at stanford.edu
Sat Aug 31 04:36:07 UTC 2002
Ken Murchison <ken at oceana.com> writes:
> Sorry it took me so long to get back to this. I haven't looked into the
> STATS_MSG problem yet, because I had to fix some bugs first.
> Attached is a patch against today's snapshot which fixes some concat()
> related bugs which were preventing authentication to both imapd and
> lmtpd. Apparently we can't free the concat() buffer (at least not
> immediately) because the writes must be buffered and we need the pointer
> around until the data is output. This is obviously a memory leak which
> needs plugging.
Mea culpa; I messed up part of the concat change.
I don't think this is actually a memory leak; the function to send data to
the network actually frees the buffer it was passed after the data has
been sent. It's sort of odd, but it seems to work.
> This patch also allows imapfeed to deal with multi-line LMTP responses
> (Cyrus lmtpd sends multi-line 550 on RCPT TO failure).
Thanks, applied.
> BTW, Is there any anonymous CVS access so I can kep my eye on any
> imapfeed related changes?
No anonymous CVS, I'm afraid, but we do have CVSup access. Here are the
details.
Using CVSup
If you want to get updated INN source more easily or more quickly than
by downloading nightly snapshots, or if you want to see the full CVS
history, you may want to use CVSup to download the source. CVSup is a
client and server designed for replicating CVS repositories between
sites.
Unfortunately, CVSup is written in Modula-3, so getting a working binary
can be somewhat difficult. Binaries are available in the *BSD ports
collection or (for a wide variety of different platforms) available from
<ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/binaries/> and its mirrors.
Alternately, you can get a compiler from <http://m3.polymtl.ca/m3/>
(this is more actively maintained than the DEC Modula-3 compiler) and
the source from <ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/>.
After you have the CVSup client, you need to have space to download the
INN repository and space for CVSup to store its data files. You also
need to write a configuration file (a supfile) for CVSup. The following
supfile will download the latest versions from the mainline source:
*default host=inn-cvs.isc.org
*default base=<data-location>
*default prefix=<download-location>
*default release=cvs
*default tag=.
*default delete use-rel-suffix
inn
where <data-location> should be a directory where CVSup can put its data
files and <download-location> is where the downloaded source will go.
If you want to pull down the entire CVS repository instead (warning:
this is much larger than just the latest versions of the source), delete
the "*default tag=." line. The best way to download the CVS repository
is to download it into a portion of a locally-created CVS repository, so
that then you can perform standard CVS operations (like cvs log) against
the downloaded repository. Creating your own local CVS repository is
outside the scope of this document.
For more general information on using CVSup, see the FreeBSD page on it
at <http://www.freebsd.org/handbook/mirrors-cvsup.html>.
--
Russ Allbery (rra at stanford.edu) <http://www.eyrie.org/~eagle/>
More information about the inn-bugs
mailing list