[DFW.pm] Update on our collaborative git/catalyst project "SpamMeNot"

Tommy Butler dfwpm at internetalias.net
Fri Mar 22 21:50:18 PDT 2013


Ladies, gentlemen, aliens, robots, and other DFW Perl mongers,

We've got a working mail server now in our git repo!  I'm not saying it
works "right" though ;-) , because it needs to correctly follow and
appropriately respond to all parts of an RFC-compliant SMTP
conversation.  Right now you can kick it off, connect to it, send some
arbitrary recognized SMTP commands, compose an email, and disconnect. 
The email is stored on disk on the server in a configurable location.

The area of the code that needs love is the actual SMTP logic.  The work
of getting a functional and secure daemon safely routing to a catalyst
application back end has been done for us by some random nice person. 
What remains is for us to fill in the SMTP logic, and as John, the
"iceman" Fields suggests-- we can do this as part of our next meeting by
studying an actual SMTP conversation and filling in the "holes" that
remain in the business logic of this very catalyst controller module:
https://github.com/dfwperl/spammenot/blob/catalyst_app/lib/SpamMeNot/Controller/Root.pm

Examples of SMTP conversations can be found via Google.  Here's just one
example: http://www.samlogic.net/articles/smtp-commands-reference.htm

If anyone wants to hack on that in between now and the next meeting,
that is greatly encouraged.  Clone the repo with git, do a git checkout
of the "catalyst_app" branch, and work on the Root.pm controller. 
Please keep everyone posted of your progress and thoughts if you do. 
Certainly this isn't mandatory; no one need feel obligated to join in. 
This is purely for fun and learning.

Things to be aware of include the fact that the app is comprised of two
running services: the daemon and the catalyst app backend, and both of
them run in the foreground when launched from their shell scripts:
"./spammenot" and "./backend" respectively.  This is so you can easily
kill them off and restart them after hacking on the code.  Obviously
this behavior will be changed when the code is out of "alpha" status. 
Another thing to note is that this hasn't been tested on Windows or
Mac.  It depends on /dev/shm at the moment so you can try to run it on
non-Linux platforms but probably with limited success.  Check out
README.md (in the aforementioned git repo branch) for notes on getting
started.

If you want some place to test the code and don't have your own Linux
machine or server, ping me and I'll get you appropriate access to the
group's server so you test it out, and/or try to break it.

Cheers!

--Tommy Butler
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.pm.org/pipermail/dfw-pm/attachments/20130322/08a3b59c/attachment.html>


More information about the Dfw-pm mailing list