Coder Social home page Coder Social logo

mlapd's Introduction

what it is

MLAPD is a mailing list access manager which uses LDAP to check for user's rights to post messages. It's designed to work in conjunction with Postfix as an Access Policy Delegation daemon. MLAPD manages mailing lists posting accesses and its goal is to read the data from LDAP, it listens on a TCP socket and can be queried concurrently by multiple Postfix instances.

how it works

MLAPD is written in Python and depends only on the standard Python environment plus the Python-LDAP module; it shouldn't be invasive.

details

MLAPD parses sender/receiver addresses from Postfix's incoming connections and gives back actions in return of a customizable lookup. The datasource is independent from the TCP server, includes LDAP support only but in theory others can be implemented.

There are some deployment details and notes about the integration of MLAPD in the wiki.

contact

This project was migrated from Google Code in March 2015, but it wasn't updated for years when there. It probably works in a similarily old environment, but it definitely needs some love (and restructuring).

There is a mailing list you could use and an issue tracker too.

mlapd's People

Contributors

gfidente avatar

Watchers

 avatar  avatar  avatar

mlapd's Issues

init script missing

Purpose of changes:
Zhang (Michael?) is trying to integrate mlapd in iRedMail and would like to
see an init script for red hat included in the tarball

Original issue reported on code.google.com by giulivo.navigante on 2 Apr 2009 at 10:11

path to config file configurable

Purpose of changes:
Zhange (Michael?) would see an option to use from the command line to
specify a different path for the configuration file

Original issue reported on code.google.com by giulivo.navigante on 2 Apr 2009 at 10:21

DN membership

Purpose of changes:

I could suggest to add dn based membership.
For instance:

  dn: cn=news,ou=groups,dc=example.com,dc=root,dc=dn
  uniqueMemeber: uid=gfidente,ou=people,dc=example.com,dc=root,dc=dn
  mgrpAllowedBroadcaster: [email protected] 

Original issue reported on code.google.com by [email protected] on 19 Jul 2011 at 7:56

Init script and rpm package

I've packaged mlapd for CentOS 5 and corrected the init script for the same. 
I'm attaching the spec file and the init script here.

Please let me know if anything needs improvement and/or fixing. And it'd be 
great if we can push this into the repo.

Cheers,
Mrugesh

Original issue reported on code.google.com by [email protected] on 26 May 2010 at 3:45

Attachments:

allow case insensitive sender

What steps will reproduce the problem?
1. Subscribe to mailing list using email address, with all lowercase. ex: 
[email protected]
2. Send an email to the mailing list, with mixed case. ex: [email protected]

What is the expected output? 
The email should be sent successfully

What do you see instead?
The email is bounced back.

Oct 15 18:04:09 generic01 postfix/smtpd30527: NOQUEUE: reject: RCPT from 
na3sys009aog105.obsmtp.com[74.125.149.75]: 554 5.7.1 
<alluse​[email protected]​ist.cvsdud​e.com>: Recipient address rejected: Not 
Authorized; from=<[email protected]​> 
to=<all​users@jabi​l.list.cvs​dude.com​> proto=ESMTP 
helo=<na3sys009aog105.obsmtp.com>

What version of the product are you using? On what operating system?
0.2. Redhat Linux

Please provide any additional information below.
Please find attached the patch that fixes this problem. We've this patch in 
production and it's working. In our case, we did patch ldapmodel.py script, 
however this script has been removed in r96.

Please find the relevant patch to mlapd.py script.

Pre-commit log message:

If sender is in mixed case, allow the email to be posted, as long as he's 
authorized.

  * src/ldapmodel.py
    __get_action(): Do a case insensitive search to accept the email.

Original issue reported on code.google.com by [email protected] on 2 Nov 2010 at 4:39

Attachments:

POLICYATTR values renaming

Purpose of changes:
Zhang (Michael?) suggests to rename the values used to identify which kind
of filter should be applied to the mailing lists to make them more intuitive

Please provide any additional information below:
The values are open, domain, internals, filter. I tested them and
suggest change internals to 'member', filter to 'owner'.

Original issue reported on code.google.com by giulivo.navigante on 2 Apr 2009 at 10:16

Parsing of postfix keyvalue pair fails for sender containing =

Hi,

While debugging a nagging problem with mlapd and mails from black berry I found 
that parsing of sender= line from postfix with from address containing = fails 
in mlapd. To verify this you can use a sender address like 

[email protected]

I have a simple patch (hopefully) fixing this problem. Pl take a look:

--- mlapd.py.orig   2010-12-20 22:08:03.000000000 +0530
+++ mlapd.py    2010-12-20 22:08:15.000000000 +0530
@@ -141,7 +141,7 @@
             logging.debug("parsing: " + self.line)
             if self.line.find('=') != -1:
                 self.key = self.line.split('=')[0]
-                self.value = self.line.split('=')[1]
+                self.value = self.line.split('=', 1)[1]
                 self.map[self.key] = self.value
         elif len(self.map) is not 0:
             try:

This patch is against the latest released version of mlapd.

with regards,

raj

Original issue reported on code.google.com by [email protected] on 20 Dec 2010 at 4:47

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.