autorespond

July 18, 2024 by Roberto Puzzanghera 22 comments

autorespond is used for vacation messages. It's required by qmailadmin.

The 2.0.7 version that we are going to install will solve a compilation break on Gentoo and several warnings. It also fixes the Message-ID to comply with RFC. autorespond will be installed in /usr/local

AR_VERSION=2.0.7
wget https://github.com/sagredo-dev/autorespond/archive/refs/tags/v${AR_VERSION}.tar.gz
tar xzf v${AR_VERSION}.tar.gz
cd autorespond-${AR_VERSION}
chown -R root:root .
make
make install

Our users will be able to easily set up out of office messages through their webmail with the "Out of office" Roundcube plugin that we'll configure later.

Comments

autorespond SEGV when DEFAULT_FROM = "$" in autorespond.c!

I tried autorespond 2.0.2 and 2.0.7 on 64bit Debian 12.

Line 603: rpath = safe_malloc( strlen(TheUser) + strlen(TheDomain) + 2);

leads to a SEGFAULT.

Only fix was changing DEFAULT_FROM to a valid eMail.

Is there a better solution?

Reply |

autorespond SEGV when DEFAULT_FROM =

I don't get the segfault here leaving #define DEFAULT_FROM "$"

How are you using autorespond from command line? Can you show how to reproduce the segfault?

Reply |

Autorespond fails to compile

Hi everyone, I get the following compile error on a recent gentoo installation. Anyone has a patch for this?

I found a bug report but no solution yet.

Thanks

Florian

make -j6 'CFLAGS=-march=ivybridge -O2 -pipe'  
gcc -O2 -march=ivybridge -O2 -pipe  autorespond.c -o autorespond
autorespond.c:379:7: error: conflicting types for ‘strcasestr’; have ‘char *(char *, char *)’
 379 | char *strcasestr( char *_s1, char *_s2 )
     |       ^~~~~~~~~~
In file included from autorespond.c:72:
/usr/include/string.h:380:14: note: previous declaration of ‘strcasestr’ with type ‘char *(const char *, const char *)’
 380 | extern char *strcasestr (const char *__haystack, const char *__needle)
     |              ^~~~~~~~~~
make: *** [Makefile:11: autorespond] Error 1

Reply |

Autorespond fails to compile

Thanks Roberto, program compiles now. (with some warnings, which I will ignore for now)

autorespond.c: In function ‘strcasestr’: 
autorespond.c:399:28: warning: return discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
 399 |                 return _s1 + (ptr - s1);
     |                        ~~~~^~~~~~~~~~~~
autorespond.c: In function ‘main’:
autorespond.c:600:17: warning: ‘__builtin_strncat’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
 600 |                 strncat( rpath, TheDomain, strlen(TheDomain) );
     |                 ^
autorespond.c:600:17: note: length computed here
 600 |                 strncat( rpath, TheDomain, strlen(TheDomain) );
    |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Reply |

Any Vacation module to replace Autorepsond

Hi Mr Roberto,

so far the autorespond no longer working in vpopmail, any solution for replacement which users can create themselves in Roundcube webmail?

thank you

Reply |

Any Vacation module to replace Autorepsond

Actually you can do it by means of a sieve rule (RC managesieve plugin). Remember to configure dovecot-lda as your delivery agent, otherwise it won't work.

Reply |

I set up an autoresponse for an email account. .qmail is created, so are the folder vacation and message. But it just would not autoreply. I am not seeing any logs related. Is it because of sieve

Reply |

you have to set vdelivermail as your delivery agent

Reply |

I amended

cat /var/qmail/control/defaultdelivery
| /home/vpopmail/bin/vdelivermail '' bounce-no-mailbox

and

cat /home/vpopmail/domains/mydomain.com/.qmail-default
|/var/qmail/bin/preline -f /usr/local/dovecot/libexec/dovecot/deliver -d $EXT@$USER

It is working now. So whenever i create a new domain, i have to include |/var/qmail/bin/preline -f /usr/local/dovecot/libexec/dovecot/deliver -d $EXT@$USER in the .qmail-default file?

Reply |

Yes

Yes

Reply |

So if i adjust .qmail-default with vdelivermail, will sieve still work?

Reply |

No

No

Reply |

No

So there is no way to have sieve and autoresponder to work together?

Reply |

No

https://plugins.roundcube.net/packages/gabtoth/vacation take a look to this RC plugin which can work as an autoresponder writing a sieve rule for you

Reply |

No

This plugin does not work. But the roundcube managesieve plugin works perfectly. With the latest version of roundcube 1.4.1, auto reply and email forwarding works side by side.

Thanks Roberto for the heads up with roundcube plugin

Reply |

No

No. And I think that this shouldn't be  considered a problem. Why let users use qmailadmin if they already have what they need with sieve via webmail?

Reply |

No

Hello Roberto,

I set up qmailadmin with the latest patch, everything working but:

- in the adminitration panel I can see "Messaggi inviati ad indirizzi non esistenti : raccolti dalla casella pred. user@$USER"

- if I set-up the catch-all account, qmail rewrites the .qmail-default file of the domain as | /home/vpopmail/bin/vdelivermail '' catchall@domain.com

So I have to manually re-edit the .qmail-default file.

Is there a way to tell qmail to use the vdeliver standard .qmail-file (/var/qmail/bin/preline -f /usr/local/dovecot/libexec/dovecot/deliver -d $EXT@$USER) ?

Thank you as always for your great support !

Reply |

No

Unfortunately there is no way to customize the line written by qmailadmin in the .qmail-default file (/var/qmail/bin/preline -f /usr/local/dovecot/libexec/dovecot/deliver -d $EXT@$USER), but patching would be needed. Anyway you can't have both .qmail files logic and dovecot-lda + sieve.

One have to choose between dovecot-lda/sieve and vdelivermail/.qmail files. In the first case users' .qmail files are ignored and setting the catchall and autoresponder is useless, in the second case you can't have sieve rules working

Reply |

No

Thank you very much Roberto, good to know !

(GRAZIE come sempre per il tuo prezioso supporto !)

Reply |

inter7 change site, i dont find autorespond

Hi Roberto.

Inter7 change all site, and i dont find autorespond.. see:

 wget -c  http://www.inter7.com/devel/autorespond-2.0.5.tar.gz
--2015-04-12 12:40:54--  http://www.inter7.com/devel/autorespond-2.0.5.tar.gz
Resolving www.inter7.com (www.inter7.com)... 184.154.94.18
Connecting to www.inter7.com (www.inter7.com)|184.154.94.18|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2015-04-12 12:40:55 ERROR 404: Not Found.

Reply |

Thanks for the advise. I have

Thanks for the advise. I have linked my local copy

Reply |

Recent comments
Recent posts

RSS feeds