james-server-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Kenny Smith <ke...@journalscape.com>
Subject Dynamic Domains?
Date Fri, 22 Nov 2002 17:50:18 GMT
Hello all,

Short Version:

I'm interested in adding some functionality to the pop server, but I'm not 
exactly sure how to approach it. I understand how to add mailets to process 
incoming mail, but I can't find any way to plug functionality into the POP 
server. Is there a way?

Long Version:

My high level goal:

I would like to be able to add a domain to James without having to hard 
code it in the config.xml and without having to restart.

My users are outside the network on dynamic IPs. Currently, I'm using 
SMTP-AUTH to allow them to send mail through James, but in order for that 
to work I have to hard code the domains in the <servernames/> block. That 
means every time I want to add a domain to James, I have to edit config.xml 
and restart, which isn't a pleasant situation. I'm using the all the JDBC 
classes so that my users and email aliases are all dynamic. The only piece 
missing is the above.

I have 2 ideas:

1) Write code to replace the <servername/> entries in the config.xml with 
JDBC calls
2) Stop using SMTP-AUTH (the thing requiring the hard coded domains), and 
write code to dynamically allow and disallow mail relay. This way 
JDBCVirtualUserTable will resolve the email from kenny@journalscape.com 
down to kenny@localhost and localhost _will_ be hard coded into the 
<servernames/> so the email will get delivered properly.

Option 1 involves getting down into the guts of James (at least I think so) 
so it's intimidating. Option 2 _feels_ like it can be done with mailets, 
which makes it feel inherently superior.

What I'd like to do:
I'd like to add a mailet to record the IP address and timestamp of a user 
when they make a successfully authenticated POP connection. Then I'd like 
to add a mailet to the root processor that checks the sender's IP address 
against the above record of IP addresses to see if they have been 
authenticated.

As far as I can tell this will allow me to dynamically add domains to James 
by just inserting new rows in the email alias table used by 
JDBCVirtualUserTable.

Any suggestions, comments, criticism are appreciated.

Kenny Smith
JournalScape.com


--
To unsubscribe, e-mail:   <mailto:james-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:james-dev-help@jakarta.apache.org>


Mime
View raw message