Re: Proposal: new approach to spooling
1) What are the benefits of inverting the queue = processor relation? It seems less clear than the current way and I don't see specific advantages. 2) Are you willing to actually implement this or is this just a discussion? I'm +1 to experiment and refactor the code to add some of the features you describe here (e.g: fallthrough, transactions) as a progressive evolution. About this proposal itself I'm +0 because imho it is too much things and I'm not able to evaluate the impact on our codebase. Stefano - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
[jira] Commented: (JAMES-522) Having the ClamAVScan mailet configured, but clamd unavailable when JAMES starts, keeps JAMES from starting.
[ http://issues.apache.org/jira/browse/JAMES-522?page=comments#action_12414751 ] Vincenzo Gianferrari Pini commented on JAMES-522: - I would keep things as now, because this was the intended behaviour. If maxPingsn/maxPings, with n 0, the desired behaviour is to delay the startup of James until clamd is up and running, *without allowing any message to flow without an anti-virus check*. Such situation could arise with a server startup, where clamd could take longer than james to start. If after some time clamd has not yet started, James must fail and the administrator shall intervene to fix clamd. If I don't want such safe behaviour, I can set maxPings0/maxPings as you did. BTW, I'm changing config.xml to have a commented invocation of ClamAVScan (plus some other enhancements). Having the ClamAVScan mailet configured, but clamd unavailable when JAMES starts, keeps JAMES from starting. Key: JAMES-522 URL: http://issues.apache.org/jira/browse/JAMES-522 Project: James Type: Bug Components: Matchers/Mailets (bundled) Reporter: Noel J. Bergman Assignee: Norman Maurer Priority: Trivial If JAMES attempts to start, ClamAVScan is configured, and clamd is not running, ClamAVScan.init() will throw an exception, terminating JAMES entirely. This can be seen in ${james}/logs/phoenix.log where the maxPings error will appear, and the spoolmanager component will be shown as failing. I'm marking this as minor since there is a work around, biut actually, I consider it a more major error. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
svn commit: r411787 - /james/server/trunk/src/conf/james-config.xml
Author: vincenzo Date: Mon Jun 5 06:48:27 2006 New Revision: 411787 URL: http://svn.apache.org/viewvc?rev=411787view=rev Log: 1) Added a (commented) ClamAVScan mailet entry. 2) Added a (commented) SMIMESign mailet entry. 3) Added a (commented) AttachmentFileNameIs check for potential infected attached file extensions. 4) Added/rearranged some entries to deal better with antivirus and spam checks and actions. Modified: james/server/trunk/src/conf/james-config.xml Modified: james/server/trunk/src/conf/james-config.xml URL: http://svn.apache.org/viewvc/james/server/trunk/src/conf/james-config.xml?rev=411787r1=411786r2=411787view=diff == --- james/server/trunk/src/conf/james-config.xml (original) +++ james/server/trunk/src/conf/james-config.xml Mon Jun 5 06:48:27 2006 @@ -151,6 +151,69 @@ !-- Important check to avoid looping -- mailet match=RelayLimit=30 class=Null/ + !-- Check for viruses -- + !-- -- + !-- Does an antivirus scan check using a ClamAV daemon (CLAMD). -- + !-- -- + !-- Interacts directly with the daemon using the stream method, -- + !-- which should have the lowest possible overhead. -- + !-- The CLAMD daemon will typically reside on localhost, but could reside on a -- + !-- different host. -- + !-- It may also consist on a set of multiple daemons, each residing on a different -- + !-- server and on different IP number. -- + !-- In such case a DNS host name with multiple IP addresses (round-robin load sharing) -- + !-- is supported by the mailet (but on the same port number). -- + !-- -- + !-- Handles the following init parameters: -- + !-- debug -- + !-- host: the host name of the server where CLAMD runs. It can either be -- + !-- a machine name, such as -- + !-- java.sun.com, or a textual representation of its -- + !-- IP address. If a literal IP address is supplied, only the -- + !-- validity of the address format is checked. -- + !-- If the machine name resolves to multiple IP addresses, round-robin load sharing will -- + !-- be used. -- + !-- The default is localhost. -- + !-- port: the port on which CLAMD listens. The default is 3310. -- + !-- maxPings: the maximum number of connection retries during startup. -- + !-- If the value is 0 no startup test will be done. -- + !-- The default is 6. -- + !-- pingIntervalMilli: the interval (in milliseconds) -- + !-- between each connection retry during startup. -- + !-- The default is 3 (30 seconds). -- + !-- streamBufferSize: the BufferedOutputStream buffer size to use -- + !-- writing to the stream connection. The default is 8192. -- + !-- + mailet match=All class=ClamAVScan onMailetException=ignore +debug true /debug + /mailet + -- + + !-- If infected go to virus processor -- + mailet match=HasMailAttributeWithValue=org.apache.james.infected, true class=ToProcessor +processor virus /processor + /mailet + + !-- Check attachment extensions for possible viruses -- + !-- The -z option requests the check to be non-recursively applied -- + !-- to the contents of any attached '*.zip' file. -- + !-- + mailet match=AttachmentFileNameIs=-d -z *.exe *.com *.bat *.cmd *.pif *.scr *.vbs *.avi *.mp3 *.mpeg *.shs class=Bounce onMatchException=error +inlineheads/inline +attachmentnone/attachment +passThroughfalse/passThrough +prefix[REJECTED]/prefix +notice +The Security Policy of XXX does not allow to forward messages containing attachments having any of the extensions .exe, .com, .bat, .cmd, .pif, .scr, .vbs, .avi, .mp3, .mpeg, .shs, therefore your message has been rejected. + +Please don't reply to this e-mail as it has been automatically sent by the antivirus system. + +Regards, Postmaster XXX.YYY +. +/notice + /mailet + -- + !-- not spam bayesian analysis feeder. -- !-- mailet match=[EMAIL PROTECTED] class=BayesianAnalysisFeeder @@ -169,6 +232,28 @@ /mailet -- + !-- sample SMIME mailets configuration -- + !-- In order to use SMIME capabilities you need to install the bouncycastle JCE -- + !-- provider in your environment (james/lib) -- + !-- e.g: bcprov-jdk14-129.jar from http://www.bouncycastle.org/latest_releases.html -- + !-- + mailet match=IsSMIMEEncrypted class=SMIMEDecrypt +keyStoreTypepkcs12/keyStoreType +keyStoreFileNamec:/path.pfx/keyStoreFileName +
svn commit: r411789 - /james/server/branches/v2.3/src/conf/james-config.xml
Author: vincenzo Date: Mon Jun 5 06:49:57 2006 New Revision: 411789 URL: http://svn.apache.org/viewvc?rev=411789view=rev Log: 1) Added a (commented) ClamAVScan mailet entry. 2) Added a (commented) SMIMESign mailet entry. 3) Added a (commented) AttachmentFileNameIs check for potential infected attached file extensions. 4) Added/rearranged some entries to deal better with antivirus and spam checks and actions. Modified: james/server/branches/v2.3/src/conf/james-config.xml Modified: james/server/branches/v2.3/src/conf/james-config.xml URL: http://svn.apache.org/viewvc/james/server/branches/v2.3/src/conf/james-config.xml?rev=411789r1=411788r2=411789view=diff == --- james/server/branches/v2.3/src/conf/james-config.xml (original) +++ james/server/branches/v2.3/src/conf/james-config.xml Mon Jun 5 06:49:57 2006 @@ -151,6 +151,69 @@ !-- Important check to avoid looping -- mailet match=RelayLimit=30 class=Null/ + !-- Check for viruses -- + !-- -- + !-- Does an antivirus scan check using a ClamAV daemon (CLAMD). -- + !-- -- + !-- Interacts directly with the daemon using the stream method, -- + !-- which should have the lowest possible overhead. -- + !-- The CLAMD daemon will typically reside on localhost, but could reside on a -- + !-- different host. -- + !-- It may also consist on a set of multiple daemons, each residing on a different -- + !-- server and on different IP number. -- + !-- In such case a DNS host name with multiple IP addresses (round-robin load sharing) -- + !-- is supported by the mailet (but on the same port number). -- + !-- -- + !-- Handles the following init parameters: -- + !-- debug -- + !-- host: the host name of the server where CLAMD runs. It can either be -- + !-- a machine name, such as -- + !-- java.sun.com, or a textual representation of its -- + !-- IP address. If a literal IP address is supplied, only the -- + !-- validity of the address format is checked. -- + !-- If the machine name resolves to multiple IP addresses, round-robin load sharing will -- + !-- be used. -- + !-- The default is localhost. -- + !-- port: the port on which CLAMD listens. The default is 3310. -- + !-- maxPings: the maximum number of connection retries during startup. -- + !-- If the value is 0 no startup test will be done. -- + !-- The default is 6. -- + !-- pingIntervalMilli: the interval (in milliseconds) -- + !-- between each connection retry during startup. -- + !-- The default is 3 (30 seconds). -- + !-- streamBufferSize: the BufferedOutputStream buffer size to use -- + !-- writing to the stream connection. The default is 8192. -- + !-- + mailet match=All class=ClamAVScan onMailetException=ignore +debug true /debug + /mailet + -- + + !-- If infected go to virus processor -- + mailet match=HasMailAttributeWithValue=org.apache.james.infected, true class=ToProcessor +processor virus /processor + /mailet + + !-- Check attachment extensions for possible viruses -- + !-- The -z option requests the check to be non-recursively applied -- + !-- to the contents of any attached '*.zip' file. -- + !-- + mailet match=AttachmentFileNameIs=-d -z *.exe *.com *.bat *.cmd *.pif *.scr *.vbs *.avi *.mp3 *.mpeg *.shs class=Bounce onMatchException=error +inlineheads/inline +attachmentnone/attachment +passThroughfalse/passThrough +prefix[REJECTED]/prefix +notice +The Security Policy of XXX does not allow to forward messages containing attachments having any of the extensions .exe, .com, .bat, .cmd, .pif, .scr, .vbs, .avi, .mp3, .mpeg, .shs, therefore your message has been rejected. + +Please don't reply to this e-mail as it has been automatically sent by the antivirus system. + +Regards, Postmaster XXX.YYY +. +/notice + /mailet + -- + !-- not spam bayesian analysis feeder. -- !-- mailet match=[EMAIL PROTECTED] class=BayesianAnalysisFeeder @@ -169,6 +232,28 @@ /mailet -- + !-- sample SMIME mailets configuration -- + !-- In order to use SMIME capabilities you need to install the bouncycastle JCE -- + !-- provider in your environment (james/lib) -- + !-- e.g: bcprov-jdk14-129.jar from http://www.bouncycastle.org/latest_releases.html -- + !-- + mailet match=IsSMIMEEncrypted class=SMIMEDecrypt +keyStoreTypepkcs12/keyStoreType +
svn commit: r411812 - /james/server/trunk/src/conf/james-config.xml
Author: vincenzo Date: Mon Jun 5 08:18:14 2006 New Revision: 411812 URL: http://svn.apache.org/viewvc?rev=411812view=rev Log: Minor change to the notice text to be sent in case over quota is met. Modified: james/server/trunk/src/conf/james-config.xml Modified: james/server/trunk/src/conf/james-config.xml URL: http://svn.apache.org/viewvc/james/server/trunk/src/conf/james-config.xml?rev=411812r1=411811r2=411812view=diff == --- james/server/trunk/src/conf/james-config.xml (original) +++ james/server/trunk/src/conf/james-config.xml Mon Jun 5 08:18:14 2006 @@ -449,8 +449,6 @@ It is likely that you have set, in your mail client account, the option leave a copy of messages on server. For any help ask your administrators. -Please don't reply to this e-mail as it has been automatically sent by the antivirus system. - Regards, Postmaster XXX.YYY . /message - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
svn commit: r411813 - /james/server/branches/v2.3/src/conf/james-config.xml
Author: vincenzo Date: Mon Jun 5 08:20:18 2006 New Revision: 411813 URL: http://svn.apache.org/viewvc?rev=411813view=rev Log: Minor change to the notice text to be sent in case over quota is met. Modified: james/server/branches/v2.3/src/conf/james-config.xml Modified: james/server/branches/v2.3/src/conf/james-config.xml URL: http://svn.apache.org/viewvc/james/server/branches/v2.3/src/conf/james-config.xml?rev=411813r1=411812r2=411813view=diff == --- james/server/branches/v2.3/src/conf/james-config.xml (original) +++ james/server/branches/v2.3/src/conf/james-config.xml Mon Jun 5 08:20:18 2006 @@ -449,8 +449,6 @@ It is likely that you have set, in your mail client account, the option leave a copy of messages on server. For any help ask your administrators. -Please don't reply to this e-mail as it has been automatically sent by the antivirus system. - Regards, Postmaster XXX.YYY . /message - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [jira] Assigned: (JAMES-123) List matchers and mailets
Hi Serge, why you want this at all ? What is the idea behind this feature ? Cause we cannot add/remove matchers/mailets dynamicly from RemoteManager it seems useless for me. bye Norman Am Sonntag, den 04.06.2006, 16:14 + schrieb Norman Maurer (JIRA): [ http://issues.apache.org/jira/browse/JAMES-123?page=all ] Norman Maurer reassigned JAMES-123: --- Assign To: Norman Maurer I will do a first version and only scan the packages which are configured for matcher and mailets. List matchers and mailets - Key: JAMES-123 URL: http://issues.apache.org/jira/browse/JAMES-123 Project: James Type: New Feature Components: Remote Manager Versions: 2.1 Environment: Operating System: Other Platform: Other Reporter: Serge Knystautas Assignee: Norman Maurer Priority: Minor Fix For: 2.4.0 Add to remote manager the ability to list what matchers and mailets are currently available in the classpath. This would have to be through reflection somehow, although the list of packages to scan would be defined in the conf file (and should be listed as part of these commands). signature.asc Description: Dies ist ein digital signierter Nachrichtenteil
using jMock in Apache projects
Hi! before starting a discussion about pro/contra jMock: Are there any license issues using it in Apache projects? It looks like a very liberal custom license. (I made the experience that this should always be the first question) Joachim - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: using jMock in Apache projects
On 6/5/06, Joachim Draeger [EMAIL PROTECTED] wrote: before starting a discussion about pro/contra jMock: Are there any license issues using it in Apache projects? It looks like a very liberal custom license. (I made the experience that this should always be the first question) Seems like a very relaxed license. My read says it's fine to use. http://www.jmock.org/license.html -- Serge Knystautas Lokitech software . strategy . design http://www.lokitech.com p. 301.656.5501 e. [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: using jMock in Apache projects
It seems a standard BSD license. Compatible ;-) Stefano Joachim Draeger wrote: Hi! before starting a discussion about pro/contra jMock: Are there any license issues using it in Apache projects? It looks like a very liberal custom license. (I made the experience that this should always be the first question) Joachim - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
[jira] Commented: (JSPF-7) Send openspf.org the link of this project on public release
[ http://issues.apache.org/jira/browse/JSPF-7?page=comments#action_12414845 ] Julian Mehnle commented on JSPF-7: -- I hope this hasn't been forgotten. What's the status of jSPF? Send openspf.org the link of this project on public release --- Key: JSPF-7 URL: http://issues.apache.org/jira/browse/JSPF-7 Project: jSPF Type: Task Reporter: Norman Maurer Assignee: Norman Maurer We should send the guys from openspf.org the link of this project if we have the first public release. They will include a link to their homepage. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Proposal: new approach to spooling
Noel J. Bergman wrote: Hi I think there is a lot of merit in coming up with a new queueing mechanism and I know this has been discussed on and off for awhile. Still, I think that before launching into concepts we should explain the benefits any proposed change is seeking to achieve. Without putting words into your mouth, might these be support for distributed operation, integration into other service oriented architectures? It would be better to clearly state the goals before we begin to ponder on how we might implement such a thing. Cheers -- Steve Concepts: - Each processor is a named queue entry. This is not a change from today, except that these may be real queues in the JMS sense of the word if the underlying queue manager uses JMS. But the approach should NOT be JSM/MQ specific. It should work just fine with JDBC-based queues. - A queue entry would normally contain a JAMES Mail object. JavaMail Message objects would be contained, or more likely referenced, by a JAMES Mail object. I say normally just in case we want to permit other message types, e.g., JAMES control messages, to be posted, since JAMES processors effectively become services. - Each processor is a transaction. What this means is that we can try to wrap a global transaction around behavior within the processor. This will have some impact on Mailets, too. - Each processor is associated with a queue manager and, optionally, a retry schedule. - I believe that a queue implementation independent scheduler that provides the next time at which a message should be processed may be sufficient. Each queue entry would carry a timestamp before which it should not be processed. Restarting the queue would be as simple as changing that timestamp entry. - A new RETRY Mail state can be set to rollback the transaction and put the Mail back into the queue. We should decide on commit and rollback semantics. - The processor acquires a new attribute that explicitly sets the fall-through state. The default shall be the new RETRY state, except for messages that exhause the retry schedule. There are all sorts of ways to express this in XML, one of which might be: processor name=queue-name [onException=...] [fallthrough=message-state def: RETRY] [class=class def: LinearProcessor] queue [queueManager=class def: DefaultQueueManager] !-- queue configuration -- /queue schedule [class=class def: DefaultScheduler] !-- see RemoteDelivery -- /schedule mailet ... /processor Despite that this defines the queue manager as a child of the processor, we would invert that in code, with the queue manager calling the processor. I believe that thread management is defined squarely on the queue manager. The concept still needs fleshing out, but I wanted to air the thoughts. This gives a lot of flexibility in implementation. For example, one might implement a processor as an MDB. The processor is responsible for workflow within the transaction, and for bridging between the queue manager and the mailet API. For this reason, I would not define interfaces for the queue manager and processor, but rather define semantics and responsibilities. The Mailet API is the inviolate API that all processors would be expected to support. A processor would accept the queue entry from the queue manager, invoke the mailet pipeline, handle any exceptions, etc. A queue manager would handle acquisition of appropriate entries from the queue queue, threading, calling the processor, etc. I envision enhancements to the ToProcessor mailet, and related calls, and am still debating how queue aliases might be handled, which can be quite powerful. --- Noel - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: ApacheCon
Noel J. Bergman wrote: Norman, As far as I know, it will be you, me, Danny and Vincenzo. I will arrive on Saturday and leave on the Wednesday after ApacheCon. I'll be here too! Regards, Alan - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]