annotate roundup-popgw @ 359:3903aaaef4e1

Added samples for "external" CGI config
author Jürgen Hermann <jhermann@users.sourceforge.net>
date Tue, 06 Nov 2001 22:22:20 +0000
parents 8ddc718c97b8
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
344
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
1 #! /usr/bin/python
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2 #
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
3 # Copyright (c) 2001 Bizar Software Pty Ltd (http://www.bizarsoftware.com.au/)
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
4 # This module is free software, and you may redistribute it and/or modify
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
5 # under the same terms as Python, so long as this copyright message and
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
6 # disclaimer are retained in their original form.
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
7 #
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
8 # IN NO EVENT SHALL BIZAR SOFTWARE PTY LTD BE LIABLE TO ANY PARTY FOR
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
9 # DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
10 # OUT OF THE USE OF THIS CODE, EVEN IF THE AUTHOR HAS BEEN ADVISED OF THE
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
11 # POSSIBILITY OF SUCH DAMAGE.
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
12 #
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
13 # BIZAR SOFTWARE PTY LTD SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
14 # BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
15 # FOR A PARTICULAR PURPOSE. THE CODE PROVIDED HEREUNDER IS ON AN "AS IS"
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
16 # BASIS, AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE,
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
17 # SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
18 #
346
Richard Jones <richard@users.sourceforge.net>
parents: 345
diff changeset
19 # $Id: roundup-popgw,v 1.3 2001-11-01 22:20:39 richard Exp $
344
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
20
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
21 import sys
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
22 if int(sys.version[0]) < 2:
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
23 print "Roundup requires Python 2.0 or newer."
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
24 sys.exit(1)
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
25
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
26 # figure the instance home
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
27 import os
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
28 if len(sys.argv) > 1:
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
29 instance_home = sys.argv[1]
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
30 else:
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
31 instance_home = os.environ.get('ROUNDUP_INSTANCE', '')
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
32 if not instance_home:
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
33 print 'No instance home specified'
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
34 sys.exit(1)
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
35
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
36 # get the instance
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
37 import roundup.instance
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
38 instance = roundup.instance.open(instance_home)
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
39
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
40 # invoke the mail handler
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
41 db = instance.open('admin')
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
42 handler = instance.MailGW(db)
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
43
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
44 import getpass, poplib
346
Richard Jones <richard@users.sourceforge.net>
parents: 345
diff changeset
45 from rfc822 import Message
344
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
46
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
47 M = poplib.POP3('localhost')
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
48 M.user(getpass.getuser())
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
49 M.pass_(getpass.getpass())
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
50 numMessages = len(M.list()[1])
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
51 for i in range(numMessages):
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
52 for j in M.retr(i+1)[1]:
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
53 s = cStringIO.StringIO('\n'.join(j))
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
54 s.seek(0)
345
09fbcb96d409 make popgw use the Message interface
Richard Jones <richard@users.sourceforge.net>
parents: 344
diff changeset
55 handler.handle_Message(Message(s))
344
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
56
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
57 #
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
58 # $Log: not supported by cvs2svn $
346
Richard Jones <richard@users.sourceforge.net>
parents: 345
diff changeset
59 # Revision 1.2 2001/11/01 22:09:36 richard
Richard Jones <richard@users.sourceforge.net>
parents: 345
diff changeset
60 # make popgw use the Message interface
Richard Jones <richard@users.sourceforge.net>
parents: 345
diff changeset
61 #
345
09fbcb96d409 make popgw use the Message interface
Richard Jones <richard@users.sourceforge.net>
parents: 344
diff changeset
62 # Revision 1.1 2001/11/01 22:07:11 richard
09fbcb96d409 make popgw use the Message interface
Richard Jones <richard@users.sourceforge.net>
parents: 344
diff changeset
63 # Completely untested pop gateway. It's a start.
09fbcb96d409 make popgw use the Message interface
Richard Jones <richard@users.sourceforge.net>
parents: 344
diff changeset
64 #
344
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
65 #
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
66 #
7d83d1401ac3 Completely untested pop gateway. It's a start.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
67 # vim: set filetype=python ts=4 sw=4 et si

Roundup Issue Tracker: http://roundup-tracker.org/