ispman/lib mailbox_actions.lib, NONE, 1.1.2.2 mailbox_actions_courier.lib, NONE, 1.2.2.2 mailbox_actions_cyrus.lib, NONE, 1.1.2.2 CustomerMan.pm, 1.29, 1.29.6.1 dns.bind8.lib, 1.24, 1.24.2.1 create_domain_directories.lib, 1.7, NONE create_home_directory.lib, 1.9, NONE create_mailbox.lib, 1.4, NONE create_mailbox_courier.lib, 1.6, NONE create_mailbox_cyrus.lib, 1.5, NONE create_vhost_directories.lib, 1.15, NONE cyrusadmin.pm, 1.3.10.1, NONE delete_domain_directories.lib, 1.6, NONE delete_home_directory.lib, 1.6, NONE delete_mailbox.lib, 1.3, NONE delete_mailbox_courier.lib, 1.3, NONE delete_mailbox_cyrus.lib, 1.3, NONE delete_vhost_directories.lib, 1.6, NONE set_mailbox_quota.lib, 1.3, NONE set_mailbox_quota_courier.lib, 1.3, NONE set_mailbox_quota_cyrus.lib, 1.3, NONE

Pedro Algarvio <[email protected]>
Newsgroups gmane.comp.isp.ispman.cvs
Message-ID <[email protected]>
Update of /cvsroot/ispman/ispman/lib
In directory sc8-pr-cvs2.sourceforge.net:/tmp/cvs-serv14538/lib

Modified Files:
      Tag: dev_1_3-cyrus_virtdomain
	CustomerMan.pm dns.bind8.lib 
Added Files:
      Tag: dev_1_3-cyrus_virtdomain
	mailbox_actions.lib mailbox_actions_courier.lib 
	mailbox_actions_cyrus.lib 
Removed Files:
      Tag: dev_1_3-cyrus_virtdomain
	create_domain_directories.lib create_home_directory.lib 
	create_mailbox.lib create_mailbox_courier.lib 
	create_mailbox_cyrus.lib create_vhost_directories.lib 
	cyrusadmin.pm delete_domain_directories.lib 
	delete_home_directory.lib delete_mailbox.lib 
	delete_mailbox_courier.lib delete_mailbox_cyrus.lib 
	delete_vhost_directories.lib set_mailbox_quota.lib 
	set_mailbox_quota_courier.lib set_mailbox_quota_cyrus.lib 
Log Message:
Branch is now "aparently" updated to HEAD, though debuging is needed.


--- set_mailbox_quota.lib DELETED ---

--- cyrusadmin.pm DELETED ---

--- delete_mailbox_cyrus.lib DELETED ---

--- create_vhost_directories.lib DELETED ---

--- create_mailbox.lib DELETED ---

--- NEW FILE: mailbox_actions_courier.lib ---
# All mailbox actions necessary for Courier IMAP Server

sub create_mailbox {
    my $server            = shift;
    my $uid               = shift;
    my $imapMailboxPrefix = $ispman->getConf("imapMailboxPrefix");

    # remove the imapMailboxPrefix if present in the beginning of the uid
    # for example if the uid is Maildir/aghaffar_ispman_org, change it to
    # aghaffar_ispman_org
    $uid =~ s/^$imapMailboxPrefix//;

    $ispman->getUserInfo($uid);
    my $homeDirectory = $ispman->{'userinfo'}{$uid}{'homeDirectory'};
    my $uidNumber     = $ispman->{'userinfo'}{$uid}{'uidNumber'};
    my $gidNumber     = $ispman->{'userinfo'}{$uid}{'gidNumber'};

    my @commands = ();
    push @commands,
      "mkdir -p $homeDirectory/$imapMailboxPrefix/tmp $homeDirectory/$imapMailboxPrefix/cur $homeDirectory/$imapMailboxPrefix/new";
    push @commands,
      "chown  $uidNumber\.$gidNumber  $homeDirectory/$imapMailboxPrefix/tmp $homeDirectory/$imapMailboxPrefix/cur $homeDirectory/$imapMailboxPrefix/new $homeDirectory/$imapMailboxPrefix";
    push @commands, "chmod -R 700 $homeDirectory/$imapMailboxPrefix";
    for (@commands) {
        system($_);
    }
}

sub delete_mailbox {
    my $server  = shift;
    my $mailbox = shift;

    # courier users:
    # please add the logic here to set quota if necessary

    print STDERR "delete_mailbox not implemented!" return 1;
}

sub get_quota {
    my $server  = shift;
    my $mailbox = shift;

    # courier users:
    # please add the logic here to set quota if necessary

    print STDERR "get_quota not implemented!" return 1;
}

sub set_quota {
    my $server  = shift;
    my $mailbox = shift;
    my $quota   = shift;

    # courier users:
    # please add the logic here to set quota if necessary

    print STDERR "set_quota not implemented!" return 1;
}

sub list_mailboxes {
    my $server = shift;
    my $filter = shift;

    # courier users:
    # please add the logic here to set quota if necessary

    print STDERR "list_mailboxes not implemented!" return 1;
}

1;


--- delete_vhost_directories.lib DELETED ---

--- create_home_directory.lib DELETED ---

--- delete_mailbox.lib DELETED ---

--- set_mailbox_quota_cyrus.lib DELETED ---

--- create_domain_directories.lib DELETED ---

--- NEW FILE: mailbox_actions_cyrus.lib ---
# All mailbox actions necessary for Cyrus IMAP Server

use IMAP::Admin;

# helper function to convert email into uid notation
sub email2uid {
    my $str = shift;
    ( $uid, $domain ) = split( '@', $str );
    if ( $ISPMan::Config->{'AllowFullEmailLogins'} ) {
        if ( $ISPMan::Config->{'CyrusUnixHierarchySep'} ) {
            if ($uid) {
                $uid =~s/\./\\./g;
            }
        }
        if ($domain) {
            $domain =~ s/\./\\./g;
            $str = join '\@', ( $uid, $domain );
        }
    } else {
        if ($domain) {
            $domain =~ s/\./_/g;
            $str = join '_', ( $uid, $domain );
        }
    }
    return $str;
}

# imap connection handle
my $imap_conn;

my $imap_mailbox_prefix = $ispman->getConf("imapMailboxPrefix");
if ( $ISPMan::Config->{'CyrusUnixHierarchySep'} ) {
    $imap_mailbox_prefix += '/';
} else {
    $imap_mailbox_prefix += '.';
}

sub _connect {
    my $server = shift;

    $imap_conn = IMAP::Admin->new(
        'Server'   => $server,
        'Port'     => $ispman->getConf("imapPort") || 143,
        'Login'    => $ispman->getConf("imapAdminUsername"),
        'Password' => $ispman->getConf("imapAdminPass")
    );
}

sub create_mailbox {
    my $server  = shift;
    my $mailbox = $imap_mailbox_prefix . shift;

    $imap_conn or _connect($server);

    return $imap_conn->create($mailbox);
}

sub delete_mailbox {
    my $server  = shift;
    my $mailbox = $imap_mailbox_prefix . shift;

    $imap_conn or _connect($server);
    $imap_conn->set_acl( $mailbox, $ispman->getConf("imapAdminUsername"),
        "lrswipcda" );
    return $imap_conn->delete($mailbox);
}

sub get_quota {
    my $server  = shift;
    my $mailbox = $imap_mailbox_prefix . shift;

    $imap_conn or _connect($server);
    return $imap_conn->get_quota($mailbox);
}

sub set_quota {
    my $server  = shift;
    my $mailbox = $imap_mailbox_prefix . email2uid(shift);
    my $quota   = shift;

    $imap_conn or _connect($server);
    return $imap_conn->set_quota( $mailbox, $quota );
}

sub list_mailboxes {
    my $server = shift;
    my $filter = shift;

    $imap_conn or _connect($server);
    return $imap_conn->list($filter);
}

END {
    $imap_conn->close();
}

1;


--- set_mailbox_quota_courier.lib DELETED ---

--- create_mailbox_courier.lib DELETED ---

--- delete_mailbox_courier.lib DELETED ---

Index: dns.bind8.lib
===================================================================
RCS file: /cvsroot/ispman/ispman/lib/dns.bind8.lib,v
retrieving revision 1.24
retrieving revision 1.24.2.1
diff -u -d -r1.24 -r1.24.2.1
--- dns.bind8.lib	6 Jun 2006 22:40:54 -0000	1.24
+++ dns.bind8.lib	11 Sep 2006 23:31:26 -0000	1.24.2.1
@@ -267,7 +267,7 @@
               "\n";
         }
 
-		# print CatchALL CNAME
+        # print CatchALL CNAME
         if (   $ispman->getConf('catchAllCNAME')
             && $ispman->getConf('catchAllCNAME') ne "none" )
         {

--- delete_home_directory.lib DELETED ---

--- NEW FILE: mailbox_actions.lib ---
# Wrapper script for all mailbox actions
# Depending on configured imapServerBackend, the appropiate library is loaded

use ISPMan;

$ispman = ISPMan->new() unless $ispman;

# determine imap backend
my $imapServerBackend = $ispman->getConf("imapServerBackend");

# load mailbox functions for this particular type
require "mailbox_actions_$imapServerBackend.lib";

1;


--- delete_domain_directories.lib DELETED ---

Index: CustomerMan.pm
===================================================================
RCS file: /cvsroot/ispman/ispman/lib/CustomerMan.pm,v
retrieving revision 1.29
retrieving revision 1.29.6.1
diff -u -d -r1.29 -r1.29.6.1
--- CustomerMan.pm	30 May 2004 23:35:36 -0000	1.29
+++ CustomerMan.pm	11 Sep 2006 23:31:26 -0000	1.29.6.1
@@ -4,7 +4,7 @@
 use ISPMan;
 use ISPMan::GetText;
 use CGI::Carp "fatalsToBrowser";
-use RFC::RFC822::Address;
+use Mail::RFC822::Address;
 
 require CustomerMan::Utils;              #different utility functions
 require CustomerMan::UserMan;            # functions to manage domainusers

--- create_mailbox_cyrus.lib DELETED ---


-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.