Matee Moshkovits | 21 Oct 05:34 2014

[RCD] plugin request

is their an auto collect/auto fill/auto add plugin for the address book 
to roundcube?
like the one gmail or thunderbird has ...where if you compose an email 
to someone it auto adds them to your address book ... then once you 
start to type the start composing it suggest the addresses to fill in ....


If you have any questions, please do not hesitate to contact our office.
Thank You

Matee Moshkovits
Chief Technology Officer
AffordHost Inc.
Direct Telephone: (416)273-9914
Office Telephone: (416)238-7698 x 225
Email: mmmoshko <at>

Business-Class Web Hosting at Affordable Prices

Roundcube Development discussion mailing list
dev <at>

W. Michael Petullo | 18 Oct 20:05 2014

[RCD] Modification to movespam

I have modified Ythan's movespam plugin to permit moving spam based on
arbitrary IMF headers, instead of just based on message subjects. (Thank
you to Thomas Bruederli for answering the question I had earlier.) Would
it be possible to get this revision of the movespam plugin into
Roundcube's base set of plugins? I would be happy to continue maintaining
the plugin if necessary.

Thank you,



Roundcube Development discussion mailing list
dev <at>

W. Michael Petullo | 17 Oct 02:24 2014

[RCD] Arbitrary email headers

From what I can tell, Roundcube has a fixed set of email subjects that it
parses. I am interested in modifying Ythan's MoveSpam plugin to consider
bogofilter's X-Bogosity header (which Roundcube does not parse) instead
of a tagged Subject header.

Is there any interest in adding to Roundcube the ability to parse
arbitrary email headers? Is there a good reason that Roundcube only
supports a fixed set of headers?

Thank you,



Roundcube Development discussion mailing list
dev <at>

Phil Weir | 16 Oct 09:14 2014

[RCD] missgin git tags in packagist


Are there any Packagist experts out there? I have a number of plugins listed
on All of them include tags (or releases as github
calls them) and these tags used to be listed on the
page. A little ago all the tags disappeared and just the branches remain.

For example here you can
see tags like 1.3 and 2.0 but they do not show up on here 

I know very little about Packagist, is there is anyone who could help me
figure out why the tags are not showing up any more?

Thanks very much,


Roundcube Development discussion mailing list
dev <at>

Thomas Bruederli | 11 Oct 11:33 2014

[RCD] Our Wish List for Encryption Browser Extensions

Dear Roundcube devs and list lurkers

PGP encryption for Roundcube is a repeatedly popping up topic. Of
course we're also very much interested in providing a solid solution
for end-to-end encryption as a standard part of Roundcube. I therefore
tried to summarize the current situation in our wiki [1] and compiled
a few wishes to current and future encryption browser plugins - from a
webmail programmer's point of view of course:

I think the approach with a locally installed browser extension to do
the encryption part is the most sustainable at the moment. While
Mailvelope [2] already does a pretty good job, please also give your
attention to pEp [3] which adds some more simplicity and automation on
top of standard encryption methods like PGP and S/MIME. After a recent
meeting with the pEp developers, I'm really looking forward to see
this become available, eventually also as a browser extension. So
please support their crowd-funding campaign [4] and help them to make
encryption easy for everyone.

Kind regards,

Roundcube Development discussion mailing list
(Continue reading)

Alexander Fleites | 2 Oct 22:46 2014

[RCD] Roundcube Login

Hi I try to connect directly to the login page, but I gets an error Session Invalid or Expired

here is my code, if somebody can help me I appreciate that, Thank You.

          define('EOL', chr(10)); 
    define('ROUNDCUBE_HOST', ''); 
            define('ROUNDCUBE_FOLDER', 'email'); 
            define('ROUNDCUBE_LOGIN', 'test <at>'); 
            define('ROUNDCUBE_PASS', 'test <at> 2014'); 

   header('Cache-Control: private, no-cache, no-store, must-revalidate, post-check=0, pre-check=0');
   header('Pragma: no-cache');
   $header  = 'Host: ' . ROUNDCUBE_HOST . EOL;
   $header .= 'User-Agent: ' . $_SERVER['HTTP_USER_AGENT'] . EOL;
   $header .= 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' . EOL;
   $header .= 'Accept-Language: pt-br,en-us;q=0.7,en;q=0.3' . EOL;
   $header .= 'Connection: close' . EOL . EOL;
   $data = $this->getConn('GET', ROUNDCUBE_HOST, '/' . ROUNDCUBE_FOLDER . '/?_task=login', $header, 80);
   //echo str_replace(EOL, '<br>', $header);
   //echo '<hr>';
   $posToken = strpos($data['content'] ,'="_token"');
   if($posToken === false) {
    echo 'token not found';
   } else if ($data['status'] === '200') {
    $data['content'] = $this->getToken($data['content'], $posToken + 9);
$ddata['token'] = $data['content'];
    $postdata = http_build_query(
    '_token' => $data['content'],
    '_url' => '',
    '_task' => 'login',
    '_action' => 'login',
    '_timezone' => '__default__',
    '_user' => ROUNDCUBE_LOGIN,
    '_pass' => ROUNDCUBE_PASS
    $header  = 'Host: ' . ROUNDCUBE_HOST . EOL;
    $header .= 'User-Agent: ' . $_SERVER['HTTP_USER_AGENT'] . EOL;
    $header .= 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/'.'*;q=0.8' . EOL;
    $header .= 'Accept-Language: pt-br,en-us;q=0.7,en;q=0.3' . EOL;
    $header .= 'Referer: http://' . ROUNDCUBE_HOST . '/' . ROUNDCUBE_FOLDER . '/?_task=login' . EOL;
    if(count($data['cookies']) > 0) {
    $header .= 'Cookie: ' . implode('; ', $data['cookies']) . EOL;
    $header .= 'Connection: close' . EOL;
    $header .= 'Content-Type: application/x-www-form-urlencoded' . EOL;
    $header .= 'Content-Length: ' . strlen($postdata) . EOL . EOL;
    $header .= $postdata;
    $data = $this->getConn('POST', ROUNDCUBE_HOST, '/' . ROUNDCUBE_FOLDER . '/?_task=login', $header, 80);
    //echo str_replace(EOL, '<br>', $header);
    if($data['status'] === '0') { //0 = Not connected
    echo 'error_send_post(socket): ', $data['err'];
    } else if($data['status'] !== '302') { //If HTTP <> 302 has an issue
    echo 'error_send_post_http_' . $data['status'];
    } else {// If 302 (Moved page) login ok
    $j = count($data['cookies']);
    for($i = 0; $i < $j; $i++) {
    header('Set-Cookie: ' . $data['cookies'][$i] . '; path=/; httpOnly', false);
    header('X-DNS-Prefetch-Control: off');
    header('Vary: Accept-Encoding');
    //$this->load->view('email/login', $ddata);
    header('Location: http://' . ROUNDCUBE_HOST . '/' . ROUNDCUBE_FOLDER . '/?_task=mail');

Regards, Alex

Roundcube Development discussion mailing list
dev <at>
Arkadiusz Miśkiewicz | 1 Oct 13:44 2014

[RCD] backporting c5f06896d - Display full quota information in popup


I don't know what are the rules for 1.0 branch but I would like to propose to 
backport this change to 1.0 branch:

Display full quota information in popup (#1485769, #1486604)

I'm constantly getting reports of users confused about how quota is displayed 
by roundcube. It's quite small change and should be safe for 1.0.x.


Arkadiusz Miśkiewicz, arekm / ( | )
Roundcube Development discussion mailing list
dev <at>
Zhang Huangbin | 14 Sep 11:48 2014

[RCD] Possible bug in Roundcube password plugin: cannot generate correct bcrypt hash

Dear developers,

I'm running Roundcubemail-1.0.2 on OpenBSD 5.5, i tried to generate bcrypt password hash with
ldap_simple password driver, it generates password hash with prefix '{crypt}$2a$' which identities
it's a blowfish/bcrypt hash, but Dovecot cannot verify it.

Dovecot works fine if i generated password hash with Dovecot command 'doveadm pw -s BLF-CRYPT' or Python
bcrypt module. So i think there might be something wrong in Roundcube password driver. Could you help
inspect it?

Thank you very much.

Roundcube Development discussion mailing list
dev <at>

Dima Dorfman | 3 Sep 12:05 2014

[RCD] [PATCH] password plugin driver for ldappasswd(1)


I wrote a backend for the password plugin that uses OpenLDAP's
ldappasswd(1). My motivation for this was to remove the requirement to
retrieve the user's full LDAP record, which our policy does not allow,
but this method is also easier to configure, obviates the need for php
to be able to produce the password hash, and supports a more complete
range of password storage and authentication options (e.g. SASL binds)

In particular, this might satisfy New Feature Request #1486349:
password plugin: using LDAP EXOP for changing passwords (RFC3062)

From the comments:

* Advantages of this method:
*  - No extra configuration if OpenLDAP/ldappasswd are already configured
*  - Indifferent to password storage (attribute) and hashing details
*  - Future-proof: supports everything ldappasswd(1) can do now, and later
*  - TLS/SSF verification is done by OpenLDAP according to system settings
*  - Uses PASSMOD extended operation; no need to retrieve full user record

Please review. If possible, I would like to see this in the main tree so
I don't have to maintain it locally

Patch attached



Attachment (rc-ldappasswd.diff): text/x-patch, 6646 bytes
Roundcube Development discussion mailing list
dev <at>
Michael Heydekamp | 28 Aug 20:37 2014

[RCD] Login to git-master not working

Any idea why we can't login to git-master anymore...? After login, I'm
seeing ... nothing. RC attempts to load the page ****/?_task=login rather
than ****/?_task=mail (which would be the correct one).

We reverted back to the stage of Aug 26th, and everything is working again.

Win7/64, FF 27.0.1.


Michael Heydekamp
Roundcube Development discussion mailing list
dev <at>
Robert Bilbrey | 28 Aug 18:58 2014

[RCD] Feature Request

To be able to store PGP keys in the roundmail client,encrypt and
decrypt messages automatically.
Thanks, Bob

Robert Bilbrey, CISSP,PMP

If you wish to send me a private email,Please use the following key:
Version: GnuPG v1