/[pkg-mixmaster]/trunk/Mix/Src/mix.c
ViewVC logotype

Log of /trunk/Mix/Src/mix.c

Parent Directory Parent Directory | Revision Log Revision Log


Links to HEAD: (view) (download) (annotate)
Sticky Revision:

Revision 498 - (view) (download) (annotate) - [select for diffs]
Modified Sat May 3 01:56:08 2003 UTC (10 years ago) by weaselp
File length: 30586 byte(s)
Diff to previous 494 , to selected 189
In client mode (REMAIL n) the pool is flushed every time mixmaster is run
unless CLIENTAUTOFLUSH is set to n.  (closes: #676794: Rate implementation
doubled)

Revision 494 - (view) (download) (annotate) - [select for diffs]
Modified Wed Apr 9 10:36:34 2003 UTC (10 years, 1 month ago) by weaselp
File length: 30502 byte(s)
Diff to previous 477 , to selected 189
In order to serve help files in different languages we need a way to reply to
requests like remailer-help-it.  In order to not have to modify the code for
each and every new ressource, Mixmaster now sends the file
requests/remailer-<something> to remailer-<something> requests.
remailer-{help,key, stats,conf,adminkey} still are special cases tho.

Revision 477 - (view) (download) (annotate) - [select for diffs]
Modified Sat Feb 15 00:29:36 2003 UTC (10 years, 3 months ago) by weaselp
File length: 30401 byte(s)
Diff to previous 392 , to selected 189
Add max capability to Type I

Revision 392 - (view) (download) (annotate) - [select for diffs]
Modified Sun Dec 8 00:56:23 2002 UTC (10 years, 5 months ago) by weaselp
File length: 30283 byte(s)
Diff to previous 387 , to selected 189
Have stats on intermediate vs. final hop count (closes: #649900).

Revision 387 - (view) (download) (annotate) - [select for diffs]
Modified Thu Dec 5 04:26:24 2002 UTC (10 years, 5 months ago) by weaselp
File length: 30213 byte(s)
Diff to previous 378 , to selected 189
Applied Colin's star exclude patch

Revision 378 - (view) (download) (annotate) - [select for diffs]
Modified Fri Oct 18 20:42:35 2002 UTC (10 years, 7 months ago) by rabbi
File length: 30132 byte(s)
Diff to previous 375 , to selected 189
We've changed the client defaults to send messages immediately, rather
than pool messages. Also, I've removed some automatically generated files,
which never should have been in CVS in the first place.

Revision 375 - (view) (download) (annotate) - [select for diffs]
Modified Fri Oct 18 00:45:12 2002 UTC (10 years, 7 months ago) by rabbi
File length: 30125 byte(s)
Diff to previous 360 , to selected 189
Fixed some comments.

Revision 360 - (view) (download) (annotate) - [select for diffs]
Modified Fri Oct 11 01:18:00 2002 UTC (10 years, 7 months ago) by weaselp
File length: 30029 byte(s)
Diff to previous 351 , to selected 189
Make sure that the daemon does sleep at least 5 seconds between runs

Revision 351 - (view) (download) (annotate) - [select for diffs]
Modified Thu Oct 10 13:02:11 2002 UTC (10 years, 7 months ago) by weaselp
File length: 29848 byte(s)
Diff to previous 338 , to selected 189
Move Win32 Service termination handling a bit up

Revision 338 - (view) (download) (annotate) - [select for diffs]
Modified Wed Oct 9 21:40:03 2002 UTC (10 years, 7 months ago) by weaselp
File length: 29771 byte(s)
Diff to previous 332 , to selected 189
Rewriting the timing logic in mix_daemon() a little bit (optically at least)

Revision 332 - (view) (download) (annotate) - [select for diffs]
Modified Wed Oct 9 20:53:32 2002 UTC (10 years, 7 months ago) by weaselp
File length: 29788 byte(s)
Diff to previous 299 , to selected 189
Whitespace cleanup:
for i in *.c; do cp -a $i $i.orig; sed -e 's/^        /<TAB>/' $i.orig > $i; rm $i.orig; done
for i in *.c *.h; do cp -a $i $i.orig; sed -e 's/[ <TAB>]*$//' $i.orig > $i; rm $i.orig; done

Revision 299 - (view) (download) (annotate) - [select for diffs]
Modified Wed Oct 2 07:57:32 2002 UTC (10 years, 7 months ago) by weaselp
File length: 29850 byte(s)
Diff to previous 280 , to selected 189
Graceperiod smaller, default keylifetime upped to one year

Revision 280 - (view) (download) (annotate) - [select for diffs]
Modified Thu Sep 26 12:34:53 2002 UTC (10 years, 7 months ago) by disastry
File length: 29848 byte(s)
Diff to previous 269 , to selected 189
remove incorrect checks for Win NT Service,
these gave false posetives when used from QS

Revision 269 - (view) (download) (annotate) - [select for diffs]
Modified Wed Sep 25 23:02:44 2002 UTC (10 years, 7 months ago) by ulfm
File length: 30187 byte(s)
Diff to previous 265 , to selected 189
AUTH LOGIN support for SMTP.

Revision 265 - (view) (download) (annotate) - [select for diffs]
Modified Fri Sep 20 19:01:34 2002 UTC (10 years, 8 months ago) by disastry
File length: 30071 byte(s)
Diff to previous 262 , to selected 189
add commandline option --config=file
this allows to use alternate configuration file
(for example on encrypted partition)

also make pool directory configurable

Revision 262 - (view) (download) (annotate) - [select for diffs]
Modified Wed Sep 18 23:26:17 2002 UTC (10 years, 8 months ago) by rabbi
File length: 30041 byte(s)
Diff to previous 221 , to selected 189
Added closing comments for all #ifdef statements. All #endif's, as well as
nested braces, should be commented to reference their start.

We need to provide comments before every function as well.

Revision 221 - (view) (download) (annotate) - [select for diffs]
Modified Fri Sep 6 22:45:06 2002 UTC (10 years, 8 months ago) by rabbi
File length: 28969 byte(s)
Diff to previous 220 , to selected 189
Standardized commenting conventions.

Revision 220 - (view) (download) (annotate) - [select for diffs]
Modified Fri Sep 6 21:04:16 2002 UTC (10 years, 8 months ago) by rabbi
File length: 28954 byte(s)
Diff to previous 219 , to selected 189
Updated documentation for {IN,OUT}DUMMYP, and to reflect changes in
remailer defaults.

Mixmaster now has a sanity-check on the number of dummy messages
generated automatically.

Fixed typos in mix.1 and Install.

Install now prompts before using a previously generated Makefile.

Revision 219 - (view) (download) (annotate) - [select for diffs]
Modified Fri Sep 6 11:34:10 2002 UTC (10 years, 8 months ago) by weaselp
File length: 28680 byte(s)
Diff to previous 218 , to selected 189
Allow setting dummy parameters

Revision 218 - (view) (download) (annotate) - [select for diffs]
Modified Fri Sep 6 07:38:08 2002 UTC (10 years, 8 months ago) by rabbi
File length: 28596 byte(s)
Diff to previous 214 , to selected 189
We now generate dummy messages as mail enters and exits the pool.

Revision 214 - (view) (download) (annotate) - [select for diffs]
Modified Thu Sep 5 01:21:54 2002 UTC (10 years, 8 months ago) by weaselp
File length: 28259 byte(s)
Diff to previous 205 , to selected 189
Mixmaster keys now have creation and expiration date.
It is not secured by any crypto voodoo, it's only
informational for clients to decide which keys to
use should they have more.
- on the client side we do not show remailers (and
  therefore not use them) if their key is expired.
- the remailer refuses to decrypt messages to keys
  that expired one month ago or earlier.
- the remailer automatically creates new mixmaster
  keys if the current one are about to expire or
  already are expired.
- the latest key from secring.mix is written to
  key.txt. It used to be the first one. Since
  creation of new mix key appends the key, this
  seemed sensible.

Revision 205 - (view) (download) (annotate) - [select for diffs]
Modified Thu Aug 29 08:50:00 2002 UTC (10 years, 8 months ago) by weaselp
File length: 27815 byte(s)
Diff to previous 199 , to selected 189
When creating new OpenPGP keys, also set an expiry date. Key lifetime
defaults to 8 months but can be overriden by the KEYLIFETIME configuration
option.

We currently do not store the self signature and the keybinding (which hold
the expiry information in DSA keys) in the secret keyring. This is
unfortunate because we use the current KEYLIFETIME when recreating them
should the public keyring need to be rewritten. The solution is to store
them in the secret keyring (like GnuPG does) and not recreate them later
if we already have them.

Revision 199 - (view) (download) (annotate) - [select for diffs]
Modified Wed Aug 28 16:29:28 2002 UTC (10 years, 8 months ago) by weaselp
File length: 27406 byte(s)
Diff to previous 198 , to selected 189
new MSVC patch by Disastry

Revision 198 - (view) (download) (annotate) - [select for diffs]
Modified Wed Aug 28 15:18:35 2002 UTC (10 years, 8 months ago) by weaselp
File length: 27386 byte(s)
Diff to previous 197 , to selected 189
Disatry prefers it this way. C is broken

Revision 197 - (view) (download) (annotate) - [select for diffs]
Modified Wed Aug 28 09:35:25 2002 UTC (10 years, 8 months ago) by weaselp
File length: 27402 byte(s)
Diff to previous 189
Write a pid file

Revision 189 - (view) (download) (annotate) - [selected]
Modified Mon Aug 26 19:38:51 2002 UTC (10 years, 8 months ago) by weaselp
File length: 27302 byte(s)
Diff to previous 183
Entered passphrase was overwritten with SIGHUP. It's now stored to a
second variable.

Revision 183 - (view) (download) (annotate) - [select for diffs]
Modified Mon Aug 26 18:08:05 2002 UTC (10 years, 8 months ago) by weaselp
File length: 27119 byte(s)
Diff to previous 177 , to selected 189
Previosly when we ran Mixmaster in daemon mode and injected mail either
via pop3 or the MAILIN method (reading a Maildir or an mbox), Mixmaster
only processed remailer-xxx requests at SENDPOOLTIME intervalls.

It might be in the interest of an operator to have a high SENDPOOLTIME -
like say an hour or two - to provide better security to their user.

However it is also important to answer remailer-xxx requests in a timely
manner.

This conflict of interests can be solved by adding yet another config
option: MAILINTIME.

MAILINTIME specifies the amount of time between reading MAILIN and
processing those mails (as well as those injected via POP3). Processing
here means to answer -xxx requests and to add remailer mails to the
pool.

This is also done implicitly whenever Mixmaster is about to process its
pool or just fetched mail via pop3.

Revision 177 - (view) (download) (annotate) - [select for diffs]
Modified Sun Aug 25 07:47:23 2002 UTC (10 years, 8 months ago) by weaselp
File length: 26509 byte(s)
Diff to previous 176 , to selected 189
Mixmaster in daemon mode will now reload its configuration upon receiving a
SIGHUP.

It was necessary to set the defaults in their own function rather than when
defining the variables.

It will also catch SIGTERM and SIGINT and exit in a sane way, first finishing
the current action.

New option --no-detach will prevent mixmaster in daemon mode from detaching
from the terminal.

Revision 176 - (view) (download) (annotate) - [select for diffs]
Modified Fri Aug 23 03:25:48 2002 UTC (10 years, 9 months ago) by weaselp
File length: 21863 byte(s)
Diff to previous 168 , to selected 189
Fix timings. Probably only interesting for Mixmaster in daemon mode.
If your computer was fast enough to do all the regular remailer stuff
within one second the next time mix_regular() was called it didn't
consider it time for yet another run. Now using >= rather than > for
those comparisons.

Revision 168 - (view) (download) (annotate) - [select for diffs]
Modified Thu Aug 22 05:18:26 2002 UTC (10 years, 9 months ago) by weaselp
File length: 21860 byte(s)
Diff to previous 166 , to selected 189
List known mixmasters in remailer-conf replies. How do I get a list of
the pgp keyring so I can also list type I remailers? Do we need to list
type I remailers?

Revision 166 - (view) (download) (annotate) - [select for diffs]
Modified Thu Aug 22 04:29:43 2002 UTC (10 years, 9 months ago) by weaselp
File length: 21748 byte(s)
Diff to previous 163 , to selected 189
Enable exit hop to add footers.

Revision 163 - (view) (download) (annotate) - [select for diffs]
Modified Wed Aug 21 19:28:04 2002 UTC (10 years, 9 months ago) by weaselp
File length: 21664 byte(s)
Diff to previous 137 , to selected 189
Make sure to deliver to the right directory with Maildir deliveries. Since
we do not chdir() to the Mixmaster base directory we need to take care of
this whenever we do file or directory operations. Fortunatly the function
mixfile() helps here. mixfile() was extended to handle paths starting
with "~/". '~' is replaced by the HOME environment variable if defined.

Implement MAILIN option: If set Mixmaster reads mails from either a mbox
or a Maildir mail folder when processing its queue (-M or daemon). After
reading the mail folder is emtpied. If MAILIN ends with / it is expected
to be a Maildir, mbox oterhwise.

I hope that I did not break anything with the change to mixfile(). Maildir
drop and reading from both Maildir and mbox has been tested a little. Seems
to work fine so far.

Revision 137 - (view) (download) (annotate) - [select for diffs]
Modified Mon Aug 19 19:55:58 2002 UTC (10 years, 9 months ago) by rabbi
File length: 21665 byte(s)
Diff to previous 114 , to selected 189
Mixmaster now defaults to not offering network services if the line
"REMAIL = Y" is not present in mix.cfg.

Revision 114 - (view) (download) (annotate) - [select for diffs]
Modified Mon Jul 29 12:42:56 2002 UTC (10 years, 9 months ago) by weaselp
File length: 21667 byte(s)
Diff to previous 105 , to selected 189
Fix unused variable warning on OpenBSD

Revision 105 - (view) (download) (annotate) - [select for diffs]
Modified Wed Jul 24 09:00:11 2002 UTC (10 years, 10 months ago) by weaselp
File length: 21639 byte(s)
Diff to previous 102 , to selected 189
Make all filenames configurable in mix.cfg.
Add global mix.cfg support (compile time option).

Revision 102 - (view) (download) (annotate) - [select for diffs]
Modified Wed Jul 24 07:48:50 2002 UTC (10 years, 10 months ago) by rabbi
File length: 18692 byte(s)
Diff to previous 96 , to selected 189
We have changed the compile-time option PASSPHRASE to be named
COMPILEDPASS. We have changed the configuration file option PASS_PHRASE to
be named PASSPHRASE. We have added documentation for the new configuration
file option and made changes in the man page to reflect the name change.

This was done to avoid confusion due to the similarity in names of the
options.

Revision 96 - (view) (download) (annotate) - [select for diffs]
Modified Sun Jul 21 16:28:14 2002 UTC (10 years, 10 months ago) by weaselp
File length: 18693 byte(s)
Diff to previous 91 , to selected 189
Fix a strncat() to undefined string variable (Closes: #584381)

Revision 91 - (view) (download) (annotate) - [select for diffs]
Modified Wed Jul 10 01:58:49 2002 UTC (10 years, 10 months ago) by rabbi
File length: 18663 byte(s)
Diff to previous 62 , to selected 189
Added the ability to store the key passphrase in the mix.cfg file instead of
having it compiled into the binary. This offers a number of advantages over the
compiled-in method and still allows for encrypted remote storage of keys.

In order to take advantage of the new changes, the Install script will need to
be modified. As this is being replaced with a proper autoconf system, we're
defering that until later.

The changes we're committing replace PASSPHRASE with PASS_PHRASE, which is read
from the config. If the compiled-in passphrase, PASSPHRASE, is set, that is
used instead. (This is how Mixmaster will function if you use the Install
script.)

Revision 62 - (view) (download) (annotate) - [select for diffs]
Modified Thu Jan 10 23:59:16 2002 UTC (11 years, 4 months ago) by rabbi
File length: 18531 byte(s)
Diff to previous 37 , to selected 189
Patches to support the Encrypt-To directive (by Disastry).

Revision 37 - (view) (download) (annotate) - [select for diffs]
Modified Wed Dec 12 18:50:09 2001 UTC (11 years, 5 months ago) by rabbi
File length: 18491 byte(s)
Diff to previous 30 , to selected 189
Win32 service optimization, commandline args tweaked, help updated.

Revision 30 - (view) (download) (annotate) - [select for diffs]
Modified Tue Dec 11 20:59:26 2001 UTC (11 years, 5 months ago) by rabbi
File length: 18702 byte(s)
Diff to previous 11 , to selected 189
Changes for WIN32 Service support. service.c is totally re-written,
service.h is removed. main.c is now cleaner.

TODO: better solution to the Win32/Unix directory seperation issue. Sring
operations on every path is a lot of extra work. Why not fopen() ?

Revision 11 - (view) (download) (annotate) - [select for diffs]
Modified Tue Nov 6 23:41:58 2001 UTC (11 years, 6 months ago) by rabbi
File length: 17353 byte(s)
Diff to previous 1 , to selected 189
First round of changes adding support for Mixmaster as a service under
Windows NT.

Revision 1 - (view) (download) (annotate) - [select for diffs]
Added Wed Oct 31 08:19:51 2001 UTC (11 years, 6 months ago) by rabbi
File length: 16902 byte(s)
Diff to selected 189
Initial revision

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.

  Diffs between and
  Type of Diff should be a

  ViewVC Help
Powered by ViewVC 1.1.5