[Mailman-Developers] mailman and voting

Marilyn Davis marilyn@deliberate.com
Sat Nov 16 18:43:32 2002

On Sat, 16 Nov 2002, Barry A. Warsaw wrote:

> >>>>> "MD" == Marilyn Davis <marilyn@deliberate.com> writes:
>     MD> Thank you Barry.  I'm so glad you find it interesting.
>     MD> A copy of the article that they are (finally) going to publish
>     MD> (maybe) is at
>     MD> http://www.deliberate.com/eVote/papers/ljarticle.html.  You
>     MD> can see that it talks about "majordomo" and I am to
>     MD> search-and-replace with "mailman" and make it work.
> Cool.  I've only just skimmed the article, but it looks interesting.
> I think MM2.1 might provide a very nice platform for eVote.  For

2.1?  I got 2.0.13 from gnu.org.  It's already obsolete?  What a
business, this!

> example, MM2.1 supports virtual lists, so you could do something like,
> set up one or a small number of voting lists, and manipulate the
> recipients via the Mailman/Post.py interface.
>     MD> I do have a question.  To milk mailman for password
>     MD> verification and the list of addresses, I fork and exec to
>     MD> withlist, attaching withlist's stdout to eVote's stdin to
>     MD> collect my answers. (eVote is written in C.)  But withlist
>     MD> also writes to stderr - when there is no error.  Might the
>     MD> mailman authors consider only writing to stderr when there's
>     MD> an error?
> I'm thinking that withlist might be a hammer when you need a
> screwdriver.  Remember that there really isn't anything special about
> withlist -- it just imports a few Python modules and manipulates those
> modules.  So there's certainly nothing stopping you from writing a
> script that is much more appropriate for your task.

Yes.  I could.  And I'd like to.

But I'm afraid of licensing issues.  eVote/Clerk's license is not GPL
but GPL-like.  There is a clause in the license to try to protect the
voter from a cheating administrator, so it's not as free as Richard
Stallman would like.

    c) If the modified program supports non-public voting, i.e.
    voting in which the participants cannot see the votes of the other
    participants, when run, you must cause the program, to announce
    the following whenever it gives instructions for non-public voting,
    and whenever it generates receipts and reports pertaining to the
    non-public vote:

       Warnings: Although eVote will not reveal your vote to the other
       members of the voting community, the system administrator of the
       computer that stores your vote can quite easily see the voting
       records of individuals. Also, there is the possibility that your
       ballot can be seen by a "snooper", someone who intercepts your 
       ballot in transit.

       The integrity of the poll, i.e., the accuracy of the count, is
       susceptible to being tampered with by the system administrator
       of the computer running the eVote(R)/Clerk software.

       Both the privacy of your vote and the integrity of the poll are
       susceptible to attack at your own computer. 

So, to stay beyond reproach, I'd better not glue the two softwares
together too tightly just yet.

I just learned how to redirect stderr into my program so there's no

Thank you again.


More information about the Mailman-Developers mailing list