summaryrefslogtreecommitdiff
path: root/net-mail/vpopmail
diff options
context:
space:
mode:
Diffstat (limited to 'net-mail/vpopmail')
-rw-r--r--net-mail/vpopmail/Manifest16
-rw-r--r--net-mail/vpopmail/files/vpopmail-5.4.33-clean-up-calling-maildrop.patch74
-rw-r--r--net-mail/vpopmail/files/vpopmail-5.4.33-fix-S-tag-in-case-spamassassin-changed-the-file-size.patch96
-rw-r--r--net-mail/vpopmail/files/vpopmail-5.4.33-fix-those-vfork-instances-that-do-more-than-exec.patch77
-rw-r--r--net-mail/vpopmail/files/vpopmail-5.4.33-remove-unneeded-forward-declaration.patch24
-rw-r--r--net-mail/vpopmail/files/vpopmail-5.4.33-strncat.patch166
-rw-r--r--net-mail/vpopmail/files/vpopmail-5.4.33-unistd.patch9
-rw-r--r--net-mail/vpopmail/files/vpopmail-5.4.33-vdelivermail-add-static.patch34
-rw-r--r--net-mail/vpopmail/vpopmail-5.4.33-r3.ebuild5
-rw-r--r--net-mail/vpopmail/vpopmail-5.4.33-r4.ebuild266
-rw-r--r--net-mail/vpopmail/vpopmail-5.4.33.ebuild5
11 files changed, 768 insertions, 4 deletions
diff --git a/net-mail/vpopmail/Manifest b/net-mail/vpopmail/Manifest
index 7bd9fa2e7c21..65cd709d59a9 100644
--- a/net-mail/vpopmail/Manifest
+++ b/net-mail/vpopmail/Manifest
@@ -1,10 +1,26 @@
AUX 99vpopmail 64 BLAKE2B ab9b8b28494fa8093f1a72e582fc10787eb1f9814b860b1c03f4e336c6a8563b50b34fcc2c33d95e45703ebad5b8155d9575551c894af4e7c12b52748b526216 SHA512 8e9323006ddafae6e4ee8da2e0c9753ce11fd3f6e7c8bb6931ccc147ab6c9782c71d704222343be902f8784aa27a4425fd04a1f11cff5421dfc25fd76d3de953
+<<<<<<< HEAD
+=======
+AUX vpopmail-5.4.33-clean-up-calling-maildrop.patch 2382 BLAKE2B 06f7ab5f6fdbb0dbade353dce74b2be585ed5a3f1ea617491ee437838f80c38b90f9e2c1a3a89efa6f788f30228e8e7449d8fdaa9db59c26231b16b849ce3f80 SHA512 99053bf41e405b22a4594104d3fce6ed831c6f5b8f8870bde7eb0e780948990de36158d7af055d881639503be1b911106a91f1787d524fe9c84fd3ec5503b055
+AUX vpopmail-5.4.33-fix-S-tag-in-case-spamassassin-changed-the-file-size.patch 3281 BLAKE2B 7eecc6c5dc2eef263d212ec6ca0534d0c00faeef04994e5410dbbff6e00beb7df249276fad928467b8cc87610d49666d9c63a629c87f8a07fb0ea5b35c298589 SHA512 1d170e611e914dc1ef5e7140b661558d93d2466fd310ebb50ecfcdadcb27cbfaa44b702ded5e02296835aea7c0a4c0d2de8ddf3cde236fe15a6fe0c37edb259a
+AUX vpopmail-5.4.33-fix-those-vfork-instances-that-do-more-than-exec.patch 2150 BLAKE2B 44d3226b95e19b60516dbd2c4ace2ada5ec53ee1479f45544113e207da79b7152958d85f3b0511565e820732e49f32d73ce74ef253dd286a0f960e6b7cb39a92 SHA512 077d8b035f2ae33354c4c51d9d4c068b4de4d0f56c1a076667425c903707a39460c03b83ee9163cf8ef11b424bdb0ddcf2e716d0cfdbd3b50863069035d2a66b
+AUX vpopmail-5.4.33-remove-unneeded-forward-declaration.patch 771 BLAKE2B 565944744d74b6c4077cef4534aa01c50af21fdb1f2da11fc2baf4659b953516e2b017412cfc64d1d5a06f8e6f5d7355903787188ae24f3579e0ac0d2087e369 SHA512 e1e4b2f3d0d3c51b6341dc14583f336b86766885767c0188ee170e07979fdd6d59360d1942df6593e7f11dc043f49143dff98898cca4a55ba697b429f98eb123
+AUX vpopmail-5.4.33-strncat.patch 6266 BLAKE2B 98656fb8d963df082ec48fbf7918423c8aeeeab6aebaab295f819b213e09d20e7b786057bf2c2fcf0a276cf9fc65c10978957cdb37dbc7cee57c0ff3eef9e78f SHA512 831ec541a52fe5e72f97832927ce0c6b8a90c2954d715be1c088f5886bba6058b313e4364e164c0af90d1de90f0890f9a1b64d1985ef1d448ac34e5951b0a16b
+AUX vpopmail-5.4.33-unistd.patch 266 BLAKE2B 19dd429573f0b45b93cd35d522787029ba445c2f363a7a270ab1c547e4f0c2a7be89c287642a3e5e8d69ea59a82271aff271670d19d3850146e92a3389aa3dc8 SHA512 1cc6e6a067cabc004224c022af8c3ee90125a3b3daa9c346ca8a57962be30681a6181605624fc09a8992a7e3d3e7b3d8d6c0ce95095399c1a5dec798e9d6f6cd
+AUX vpopmail-5.4.33-vdelivermail-add-static.patch 1017 BLAKE2B 279bd5c2b894268910a89d1df206289fce475df9b655febc27eca6f1ecf1ecd6bc55e250d0eeb5e86e89a5df0543a08af34b379888ecb4590b91ba62b521b9f2 SHA512 bcf80e30d5010decad135a84527985a29d61d054a0396af662f33bc4a63c3dc1dd0585e884376f25babf0ca263d2496991b16d1c215962a64597f4cd1cd50ca0
+>>>>>>> next
AUX vpopmail-5.4.9-access.violation.patch 922 BLAKE2B 038e5ee8483aceb521d2b8956af3fc2d166952d7ebba58960c247a90bda5ee73f2d33605c5e66f4ee667971a695251e1ef6b978d342bad9b4f34f0dfed0a6678 SHA512 eb9a37e3c2b5ad6faa9dcf8f07b240325ee2a3924dfc2abb3245972f8a892b7864f160c0475c1cbd3c5544f0844c20e20046b6a192b241bc8a3c90efe6797203
AUX vpopmail-Maildir-dotmaildir-fix.sh 1346 BLAKE2B efc7c1e97c201e9f36c3b817538b87c5522b0b2b16b681e0bbbf77bdd8537634d56cbe29b7eb26d657d83fb696b0fc00724dea9d03f246794c5631f8c2ca7ce1 SHA512 201ad103157add727560bc1596042ae621d1645abf912aa3b3ec1af71aaf65dff92c967f000b7a126e9f2eb5e351838c78ffee855402d93bdcf89e96ebb0d0e9
AUX vpopmail-double-free.patch 399 BLAKE2B ac2d7ad9b8b3e9cf25fbd973c7e42e48c1107edfca033126fb420420a9b1eb8866a53552df110e8dca8cced2d653181eb2a6dfc3c07e33a958d7f86ad4035285 SHA512 df7a99357d4673f9d5c4619d67e418a769b2ab72c95d0a7477f186bf15fc4d0f6bec93a64970660439c25573dc0cd2994f5f4aca335723eeaec6761a7838f332
AUX vpopmail-lazy.patch 328 BLAKE2B 90cc8d6329e04348291df0ddeb5deb385f33cc7601b97fc6237233fcd51c12fccad824b609911aa3025912cd16a06fcc6c45dcc3390e190343f3ebf50e2b0619 SHA512 e89756acf8be564db00883f8e68a50bc96abb50b682a181c191f12c39f16ae4c71d5861fadc3279dd4a7e5ee5b513f502905da36006da583f239c396618133d6
AUX vpopmail-vpgsql.patch 2670 BLAKE2B c295ed94b878f4f9cad64cc36647c470718043b889331c9eb94bfc762b4a6e317c7f35a7bbf0bc67569ec72533b3f25abdbbf1f5218cfa8af097b417cd4909e7 SHA512 45f516310f5cf47be7a297022b17e353d2794d156ece4d3b163747545379a018927fbf37b9986e8c939a987b07b13e959d8fd5322c23ce96b441f75cfe42448d
DIST vpopmail-5.4.33.tar.gz 612271 BLAKE2B 1dacc512c5d64e8f73a0630209407161afd87ebec510cdf57cb8aaa8be9b911141612d69892981a2545fc263e798f6e7dc9d5a283e1177e223f4a2e1fac80017 SHA512 abd5060d709c661d95ca442c6f77c4c27cf30a3c6790fc36d76ccf379ed2e08c1f0af697b2bcc57176a2cdb2cb67f6c27236d7b3fa69a135fa87f45a5df208ab
+<<<<<<< HEAD
EBUILD vpopmail-5.4.33-r3.ebuild 9013 BLAKE2B 625c32e0e532422b0479a34f7f1e40314508cad4c7dbe7b86b45372a73d66fb277de7d4f79263a4db8f4203b818fb33b370aad80162746e0d120ae51dccd5d4d SHA512 7d89ee3d3301face0016eb03cadedc64b618f8ad743346a829b9148e4803fda47f7931fae79028d86f88c93c5d994e20912a1dc9b0709a9acec642fb8ec9d3ac
EBUILD vpopmail-5.4.33.ebuild 7658 BLAKE2B 0c3d9c5736e549d84be9604ece0a11fb064b4966f600fea5c1456ac92ddc25a4488c0fe328b53d12869a229426d98f333170b703484286804db1962e1c72f358 SHA512 8ad7fed94d1cf598ff019c04363ad4d3262716c4d460597c3886826d12b746f1b4151813526c7923225adc29165ba91db2d98bc988b8545bc659df0f5fcee0f6
+=======
+EBUILD vpopmail-5.4.33-r3.ebuild 9013 BLAKE2B 52cf5e2fd6d298bc6360e5438c9f3361c6a8e942e8c1f94ce555391de350860469016b54d4cd133b2e045bb8ecc2289e547d93af9b8efa41ebc10d1bf7ca7d9c SHA512 d0e9373f3a207130c8281c91b955f62cccd40d7ad61a523aa823610783f2b0f675bfab038857693ece63a12e6022f6a7a8d177be1469b38327aeadaaee9d93d1
+EBUILD vpopmail-5.4.33-r4.ebuild 8003 BLAKE2B c1795b13757f230db9a86833c8cea20f78214303ff4d5a7d3d11210494c464661da9ae1ea1802c87a12584d274584c73933128624ca2b50b201a5f7eee5acc0f SHA512 79b283d5c5f5fd3ac42b950c517e1bdc1c71fc5db570722fbc7001175473974d48bdd2f392fd33a0322b595dbc65e34e07b31d1f3511d8b05030c466330988aa
+EBUILD vpopmail-5.4.33.ebuild 7658 BLAKE2B 585b4301997bcc0a13c40143338e29f2a054773c7477f3106dfd4ae71f787c15152f1fb9e84cf123c71092c42e0e42e96857ac5cb2ff1d918c87ffcb6f7c30fe SHA512 04ffa6437901fdb9f7d5a7f445dd60ff5f443d8c69add9a26d28c01f777195ea4d7f57bfef988c1452553b15d9a4fb8057ace7b6a004382f71e836fa4b9f9fdc
+>>>>>>> next
MISC metadata.xml 798 BLAKE2B 9d38645910ab93bb1557fb51895900fc5280086a702d1b561a7676206147498a6c1cba59dde1e3f320fc20d3099f304ec71056273cf4955530cc59f0cc0b4439 SHA512 b91e76e79c223a21648a2c380d4d81517b4bab65238b641734d173312e2ced4004e31b7d4aaced92962ae5cd65bfaafe7ab2f14612489d28598b8b1d0a9a5465
diff --git a/net-mail/vpopmail/files/vpopmail-5.4.33-clean-up-calling-maildrop.patch b/net-mail/vpopmail/files/vpopmail-5.4.33-clean-up-calling-maildrop.patch
new file mode 100644
index 000000000000..c85c1b3150d2
--- /dev/null
+++ b/net-mail/vpopmail/files/vpopmail-5.4.33-clean-up-calling-maildrop.patch
@@ -0,0 +1,74 @@
+From 692e6f75056d93f0e9a024e3638259d5ba0fe398 Mon Sep 17 00:00:00 2001
+From: Rolf Eike Beer <eike@sf-mail.de>
+Date: Thu, 21 Aug 2014 17:55:27 +0200
+Subject: [PATCH 4/5] clean up calling maildrop
+
+-add const for arguments
+-do not prepend "| " to call for preline, run_command() will then just skip
+ over this anyway
+-put the buffer for the maildrop command in the most local scope
+---
+ vdelivermail.c | 14 ++++++--------
+ 1 file changed, 6 insertions(+), 8 deletions(-)
+
+diff --git a/vpopmail-5.4.33/vdelivermail.c b/vpopmail-5.4.33/vdelivermail.c
+index be83a2a..2ad2e12 100644
+--- a/vdelivermail.c
++++ b/vdelivermail.c
+@@ -94,7 +94,7 @@ ssize_t get_message_size();
+ void deliver_mail(char *address, char *quota);
+ int check_forward_deliver(char *dir);
+ int is_looping( char *address );
+-void run_command(char *prog);
++static void run_command(const char *prog);
+ void checkuser(void);
+ void usernotfound(void);
+ int is_loop_match( const char *dt, const char *address);
+@@ -360,9 +360,6 @@ static int fdcopy (int write_fd, int read_fd, const char *extra_headers, size_t
+ long unsigned pid;
+ int pim[2];
+ #endif
+-#ifdef MAILDROP
+- char maildrop_command[256];
+-#endif
+
+ /* write the Return-Path: and Delivered-To: headers */
+ if (headerlen > 0) {
+@@ -409,7 +406,8 @@ static int fdcopy (int write_fd, int read_fd, const char *extra_headers, size_t
+ #ifdef MAILDROP
+ if ( limits.disable_maildrop==0 && vpw!=NULL &&
+ !(vpw->pw_gid & NO_MAILDROP) ) {
+- sprintf(maildrop_command, "| preline %s", MAILDROP_PROG);
++ char maildrop_command[256];
++ sprintf(maildrop_command, "preline %s", MAILDROP_PROG);
+ run_command(maildrop_command);
+ DeleteMail = 1;
+ return(0);
+@@ -896,13 +894,13 @@ void (*f)();
+ /* open a pipe to a command
+ * return the pid or -1 if error
+ */
+-void run_command(char *prog)
++void run_command(const char *prog)
+ {
+
+ #define MAX_ENV_BUFF 100
+
+ int child;
+- char *(args[4]);
++ const char *(args[4]);
+ int wstat;
+
+ while ((*prog == ' ') || (*prog == '|')) ++prog;
+@@ -915,7 +913,7 @@ void run_command(char *prog)
+ case 0:
+
+ putenv("SHELL=/bin/sh");
+- args[0] = "/bin/sh"; args[1] = "-c"; args[2] = prog; args[3] = 0;
++ args[0] = "/bin/sh"; args[1] = "-c"; args[2] = prog; args[3] = NULL;
+ sig_catch(SIGPIPE,SIG_DFL);
+ execv(*args,args);
+ printf("Unable to run /bin/sh: %d.", errno);
+--
+1.8.4.5
+
diff --git a/net-mail/vpopmail/files/vpopmail-5.4.33-fix-S-tag-in-case-spamassassin-changed-the-file-size.patch b/net-mail/vpopmail/files/vpopmail-5.4.33-fix-S-tag-in-case-spamassassin-changed-the-file-size.patch
new file mode 100644
index 000000000000..db22a6efde42
--- /dev/null
+++ b/net-mail/vpopmail/files/vpopmail-5.4.33-fix-S-tag-in-case-spamassassin-changed-the-file-size.patch
@@ -0,0 +1,96 @@
+From fd0a1034e3842ceb573851e62547b26a2b389263 Mon Sep 17 00:00:00 2001
+From: Rolf Eike Beer <eike@sf-mail.de>
+Date: Thu, 21 Aug 2014 18:48:52 +0200
+Subject: [PATCH 5/5] fix ,S= tag in case spamassassin changed the file size
+
+---
+ vdelivermail.c | 24 +++++++++++++++++++++---
+ 1 file changed, 21 insertions(+), 3 deletions(-)
+
+diff --git a/vpopmail-5.4.33/vdelivermail.c b/vpopmail-5.4.33/vdelivermail.c
+index 2ad2e12..3631c3c 100644
+--- a/vdelivermail.c
++++ b/vdelivermail.c
+@@ -351,6 +351,12 @@ static pid_t qmail_inject_open(char *address)
+ return(pid);
+ }
+
++/**
++ * @returns if delivery worked
++ * @retval 0 message was delivered as is
++ * @retval 1 the file has changed the size during delivery
++ * @retval -1 error
++ */
+ static int fdcopy (int write_fd, int read_fd, const char *extra_headers, size_t headerlen, char *address)
+ {
+ char msgbuf[4096];
+@@ -360,6 +366,7 @@ static int fdcopy (int write_fd, int read_fd, const char *extra_headers, size_t
+ long unsigned pid;
+ int pim[2];
+ #endif
++ int has_changed_size = 0;
+
+ /* write the Return-Path: and Delivered-To: headers */
+ if (headerlen > 0) {
+@@ -399,6 +406,7 @@ static int fdcopy (int write_fd, int read_fd, const char *extra_headers, size_t
+ close(pim[1]);
+ dup2(pim[0], 0);
+ close(pim[0]);
++ has_changed_size = 1;
+ }
+ }
+ #endif
+@@ -431,7 +439,7 @@ static int fdcopy (int write_fd, int read_fd, const char *extra_headers, size_t
+ if ( write(write_fd, msgbuf, file_count) == -1 ) return -1;
+ }
+
+- return 0;
++ return has_changed_size;
+ }
+
+ void read_quota_from_maildir (const char *maildir, char *qbuf, size_t qlen)
+@@ -493,6 +501,7 @@ int deliver_to_maildir (
+ size_t headerlen;
+ int write_fd;
+ char quota[80];
++ int fdr;
+
+ headerlen = strlen (extra_headers);
+ msgsize += headerlen;
+@@ -518,7 +527,8 @@ int deliver_to_maildir (
+ }
+
+ local = 1;
+- if (fdcopy(write_fd, read_fd, extra_headers, headerlen, maildir_to_email(maildir)) != 0) {
++ fdr = fdcopy(write_fd, read_fd, extra_headers, headerlen, maildir_to_email(maildir));
++ if (fdr < 0) {
+ /* Did the write fail because we were over quota? */
+ if ( errno == EDQUOT ) {
+ close(write_fd);
+@@ -530,6 +540,14 @@ int deliver_to_maildir (
+ unlink (local_file_tmp);
+ return -2;
+ }
++ } else if (fdr == 1) {
++ /* the file has changed it's size during delivery, e.g. because
++ * SpamAssassin has written it's report to it. */
++ struct stat st;
++
++ if (fstat(write_fd, &st) == 0 && st.st_size != msgsize)
++ snprintf(local_file_new, sizeof(local_file_new), "%snew/%lu.%lu.%.32s,S=%lu",
++ maildir, tm, pid, hostname, (long unsigned) st.st_size);
+ }
+
+ /* completed write to tmp directory, now move it into the new directory */
+@@ -777,7 +795,7 @@ void deliver_mail(char *address, char *quota)
+ }
+
+ local = 0;
+- if (fdcopy (fdm, 0, DeliveredTo, strlen(DeliveredTo), address) != 0) {
++ if (fdcopy (fdm, 0, DeliveredTo, strlen(DeliveredTo), address) < 0) {
+ printf ("write to qmail-inject failed: %d\n", errno);
+ close(fdm);
+ waitpid(inject_pid,&child,0);
+--
+1.8.4.5
+
diff --git a/net-mail/vpopmail/files/vpopmail-5.4.33-fix-those-vfork-instances-that-do-more-than-exec.patch b/net-mail/vpopmail/files/vpopmail-5.4.33-fix-those-vfork-instances-that-do-more-than-exec.patch
new file mode 100644
index 000000000000..4f154fcc8d33
--- /dev/null
+++ b/net-mail/vpopmail/files/vpopmail-5.4.33-fix-those-vfork-instances-that-do-more-than-exec.patch
@@ -0,0 +1,77 @@
+From de58b5d05fdabf2f17d8a6ec3ef804b59a013242 Mon Sep 17 00:00:00 2001
+From: Rolf Eike Beer <eike@sf-mail.de>
+Date: Thu, 21 Aug 2014 17:36:36 +0200
+Subject: [PATCH 2/5] fix those vfork() instances that do more than exec*()
+
+---
+ vdelivermail.c | 4 ++--
+ vpopmail.c | 8 ++++----
+ vqmaillocal.c | 2 +-
+ 3 files changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/vpopmail-5.4.33/vdelivermail.c b/vpopmail-5.4.33/vdelivermail.c
+index 241106e..be83a2a 100644
+--- a/vdelivermail.c
++++ b/vdelivermail.c
+@@ -330,7 +330,7 @@ static pid_t qmail_inject_open(char *address)
+
+ if ( pipe(pim) == -1) return 0;
+
+- switch(pid=vfork()){
++ switch(pid=fork()){
+ case -1:
+ close(pim[0]);
+ close(pim[1]);
+@@ -381,7 +381,7 @@ static int fdcopy (int write_fd, int read_fd, const char *extra_headers, size_t
+ !(vpw->pw_gid & NO_SPAMASSASSIN) ) {
+
+ if (!pipe(pim)) {
+- pid = vfork();
++ pid = fork();
+ switch (pid) {
+ case -1:
+ close(pim[0]);
+diff --git a/vpopmail-5.4.33/vpopmail.c b/vpopmail-5.4.33/vpopmail.c
+index 5aaeb32..334a8ab 100644
+--- a/vpopmail.c
++++ b/vpopmail.c
+@@ -1473,9 +1473,9 @@ int update_newu()
+ {
+ int pid;
+
+- pid=vfork();
++ pid=fork();
+ if ( pid==0){
+- umask(022);
++ umask(022);
+ execl(QMAILNEWU,"qmail-newu", NULL);
+ exit(127);
+ } else {
+@@ -3366,9 +3366,9 @@ long unsigned tcprules_open()
+ /* create a pair of filedescriptors for our pipe */
+ if (pipe(pim) == -1) { return(-1);}
+
+- switch( pid=vfork()){
++ switch( pid=fork()){
+ case -1:
+- /* vfork error. close pipes and exit */
++ /* fork error. close pipes and exit */
+ close(pim[0]); close(pim[1]);
+ return(-1);
+ case 0:
+diff --git a/vpopmail-5.4.33/vqmaillocal.c b/vpopmail-5.4.33/vqmaillocal.c
+index 6d3068c..80efa24 100644
+--- a/vqmaillocal.c
++++ b/vqmaillocal.c
+@@ -359,7 +359,7 @@ long unsigned qmail_inject_open(char *address)
+
+ if ( pipe(pim) == -1) return(-1);
+
+- switch(pid=vfork()){
++ switch(pid=fork()){
+ case -1:
+ close(pim[0]);
+ close(pim[1]);
+--
+1.8.4.5
+
diff --git a/net-mail/vpopmail/files/vpopmail-5.4.33-remove-unneeded-forward-declaration.patch b/net-mail/vpopmail/files/vpopmail-5.4.33-remove-unneeded-forward-declaration.patch
new file mode 100644
index 000000000000..23ec43be0242
--- /dev/null
+++ b/net-mail/vpopmail/files/vpopmail-5.4.33-remove-unneeded-forward-declaration.patch
@@ -0,0 +1,24 @@
+From 32ce986d86695dd55d4c888c30fe62b910b99f17 Mon Sep 17 00:00:00 2001
+From: Rolf Eike Beer <eike@sf-mail.de>
+Date: Thu, 21 Aug 2014 17:45:28 +0200
+Subject: [PATCH 3/5] remove unneeded forward declaration
+
+---
+ vchkpw.c | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/vpopmail-5.4.33/vchkpw.c b/vpopmail-5.4.33/vchkpw.c
+index b1c8a5d..d7d4351 100644
+--- a/vchkpw.c
++++ b/vchkpw.c
+@@ -91,7 +91,6 @@ void login_system_user();
+ void read_user_pass();
+ void vlog(int verror, char *TheUser, char *TheDomain, char *ThePass, char *TheName, char *IpAddr, char *LogLine);
+ void vchkpw_exit(int err);
+-void run_command(char *prog);
+ int authcram( char *response, char *challenge, char *password);
+ int authapop( char *password, char *timestamp, char *clearpass);
+
+--
+1.8.4.5
+
diff --git a/net-mail/vpopmail/files/vpopmail-5.4.33-strncat.patch b/net-mail/vpopmail/files/vpopmail-5.4.33-strncat.patch
new file mode 100644
index 000000000000..f3c9c71b2993
--- /dev/null
+++ b/net-mail/vpopmail/files/vpopmail-5.4.33-strncat.patch
@@ -0,0 +1,166 @@
+https://sourceforge.net/p/vpopmail/patches/98/
+
+--- a/vpopmaild.c (revision 998)
++++ b/vpopmaild.c (working copy)
+@@ -1326,7 +1326,7 @@
+ }
+ }
+ snprintf(newpath, MAXPATH, "%s",myvpw->pw_dir);
+- strncat(newpath, &path[i], MAXPATH );
++ strncat(newpath, &path[i], MAXPATH-strlen(newpath)-1);
+ } else { /* may be domain name */
+ for(i=0;path[i]!='/'&&path[i]!=0&&i<256;++i) {
+ thedomain[i] = path[i];
+@@ -1337,7 +1337,7 @@
+ return(9);
+ }
+ snprintf(newpath, MAXPATH, "%s", thedir);
+- strncat(newpath, &path[i], MAXPATH );
++ strncat(newpath, &path[i], MAXPATH-strlen(newpath)-1);
+ }
+ }
+
+@@ -1459,23 +1459,23 @@
+ }
+ snprintf( WriteBuf, sizeof(WriteBuf), "%s", mydirent->d_name);
+ if ( S_ISREG(statbuf.st_mode ) ) {
+- strncat(WriteBuf," file", sizeof(WriteBuf));
++ strncat(WriteBuf," file", sizeof(WriteBuf)-strlen(WriteBuf)-1);
+ } else if ( S_ISDIR(statbuf.st_mode ) ) {
+- strncat(WriteBuf," dir", sizeof(WriteBuf));
++ strncat(WriteBuf," dir", sizeof(WriteBuf)-strlen(WriteBuf)-1);
+ } else if ( S_ISCHR(statbuf.st_mode ) ) {
+- strncat(WriteBuf," chardev", sizeof(WriteBuf));
++ strncat(WriteBuf," chardev", sizeof(WriteBuf)-strlen(WriteBuf)-1);
+ } else if ( S_ISBLK(statbuf.st_mode ) ) {
+- strncat(WriteBuf," blkdev", sizeof(WriteBuf));
++ strncat(WriteBuf," blkdev", sizeof(WriteBuf)-strlen(WriteBuf)-1);
+ } else if ( S_ISFIFO(statbuf.st_mode ) ) {
+- strncat(WriteBuf," fifo", sizeof(WriteBuf));
++ strncat(WriteBuf," fifo", sizeof(WriteBuf)-strlen(WriteBuf)-1);
+ } else if ( S_ISLNK(statbuf.st_mode ) ) {
+- strncat(WriteBuf," link", sizeof(WriteBuf));
++ strncat(WriteBuf," link", sizeof(WriteBuf)-strlen(WriteBuf)-1);
+ } else if ( S_ISSOCK(statbuf.st_mode ) ) {
+- strncat(WriteBuf," sock", sizeof(WriteBuf));
++ strncat(WriteBuf," sock", sizeof(WriteBuf)-strlen(WriteBuf)-1);
+ } else {
+- strncat(WriteBuf," unknown", sizeof(WriteBuf));
++ strncat(WriteBuf," unknown", sizeof(WriteBuf)-strlen(WriteBuf)-1);
+ }
+- strncat(WriteBuf,RET_CRLF, sizeof(WriteBuf));
++ strncat(WriteBuf,RET_CRLF, sizeof(WriteBuf)-strlen(WriteBuf)-1);
+ wait_write();
+ }
+ if ( closedir(mydir) < 0 ) {
+@@ -1604,7 +1604,7 @@
+ while(fgets(tmpbuf,sizeof(tmpbuf),fs)!=NULL){
+ if ( strcmp(tmpbuf, "." RET_CRLF) == 0 || strcmp(tmpbuf, ".\n") == 0 ) {
+ snprintf(WriteBuf, sizeof(WriteBuf), "%s", ".");
+- strncat(WriteBuf, tmpbuf, sizeof(WriteBuf));
++ strncat(WriteBuf, tmpbuf, sizeof(WriteBuf)-strlen(WriteBuf)-1);
+ } else {
+ memcpy(WriteBuf,tmpbuf,sizeof(tmpbuf));
+ }
+--- a/vmysql.c (revision 998)
++++ b/vmysql.c (working copy)
+@@ -731,7 +731,7 @@
+ );
+
+ if ( sortit == 1 ) {
+- strncat( SqlBufRead, " order by pw_name", SQL_BUF_SIZE);
++ strncat( SqlBufRead, " order by pw_name", SQL_BUF_SIZE-strlen(SqlBufRead)-1);
+ }
+
+ if (res_read!=NULL) mysql_free_result(res_read_getall);
+--- a/vldap.c (revision 998)
++++ b/vldap.c (working copy)
+@@ -1022,7 +1022,7 @@
+
+ /* if we are lucky the domain is in the assign file */
+ if ( vget_assign(domain,dir_control_file,MAX_DIR_NAME,NULL,NULL)!=NULL ) {
+- strncat(dir_control_file, "/.dir-control", MAX_DIR_NAME);
++ strncat(dir_control_file, "/.dir-control", MAX_DIR_NAME-strlen(dir_control_file)-1);
+
+ /* it isn't in the assign file so we have to get it from /etc/passwd */
+ } else {
+@@ -1041,7 +1041,7 @@
+ }
+
+ /* stick on the rest of the path */
+- strncat(dir_control_file, "/" DOMAINS_DIR "/.dir-control", MAX_DIR_NAME);
++ strncat(dir_control_file, "/" DOMAINS_DIR "/.dir-control", MAX_DIR_NAME-strlen(dir_control_file)-1);
+ }
+ return(dir_control_file);
+ }
+@@ -1177,7 +1177,7 @@
+ char dir_control_file[MAX_DIR_NAME];
+
+ vget_assign(domain, dir_control_file, 156, NULL,NULL);
+- strncat(dir_control_file,"/.dir-control", MAX_DIR_NAME);
++ strncat(dir_control_file,"/.dir-control", MAX_DIR_NAME-strlen(dir_control_file)-1);
+ return(unlink(dir_control_file));
+ }
+
+--- a/vpopmail.c (revision 998)
++++ b/vpopmail.c (working copy)
+@@ -1900,8 +1900,8 @@
+
+ // Copy the rest of the terms into the domain name
+ for(j=1;j<i;j++) {
+- strncat( domain, ".", MAX_BUFF );
+- strncat( domain, parts[j], MAX_BUFF );
++ strncat( domain, ".", MAX_BUFF-strlen(domain)-1);
++ strncat( domain, parts[j], MAX_BUFF-strlen(domain)-1);
+ }
+
+ }
+--- a/vcdb.c (revision 998)
++++ b/vcdb.c (working copy)
+@@ -271,7 +271,7 @@
+ }
+
+ strncpy(line,user,sizeof(line));
+- strncat(line,":",sizeof(line));
++ strncat(line,":",sizeof(line)-strlen(line)-1);
+ ptr = line;
+ while (*ptr != ':') { ptr++; }
+ ptr++;
+@@ -1055,7 +1055,7 @@
+ char dir_control_file[MAX_DIR_NAME];
+
+ vget_assign(domain, dir_control_file, 156, NULL,NULL);
+- strncat(dir_control_file,"/.dir-control", MAX_DIR_NAME);
++ strncat(dir_control_file,"/.dir-control", MAX_DIR_NAME-strlen(dir_control_file)-1);
+ return(unlink(dir_control_file));
+ }
+
+@@ -1120,7 +1120,7 @@
+
+ /* if we are lucky the domain is in the assign file */
+ if ( vget_assign(domain,dir_control_file,MAX_DIR_NAME,NULL,NULL)!=NULL ) {
+- strncat(dir_control_file, "/.dir-control", MAX_DIR_NAME);
++ strncat(dir_control_file, "/.dir-control", MAX_DIR_NAME-strlen(dir_control_file)-1);
+
+ /* it isn't in the assign file so we have to get it from /etc/passwd */
+ } else {
+@@ -1139,7 +1139,7 @@
+ }
+
+ /* stick on the rest of the path */
+- strncat(dir_control_file, "/" DOMAINS_DIR "/.dir-control", MAX_DIR_NAME);
++ strncat(dir_control_file, "/" DOMAINS_DIR "/.dir-control", MAX_DIR_NAME-strlen(dir_control_file)-1);
+ }
+ return(dir_control_file);
+ }
+--- a/vpgsql.c (revision 998)
++++ b/vpgsql.c (working copy)
+@@ -522,7 +522,7 @@
+ #endif
+ );
+ if ( sortit == 1 ) {
+- strncat( SqlBufRead, " order by pw_name", SQL_BUF_SIZE);
++ strncat( SqlBufRead, " order by pw_name", SQL_BUF_SIZE-strlen(SqlBufRead)-1);
+ }
+ if ( pgres ) { /* reset state if we had previous result */
+ PQclear(pgres); // clear previous result
diff --git a/net-mail/vpopmail/files/vpopmail-5.4.33-unistd.patch b/net-mail/vpopmail/files/vpopmail-5.4.33-unistd.patch
new file mode 100644
index 000000000000..803276f89ad5
--- /dev/null
+++ b/net-mail/vpopmail/files/vpopmail-5.4.33-unistd.patch
@@ -0,0 +1,9 @@
+--- vpopmail-5.4.33-orig/cdb/cdb_seek.c 2019-09-25 23:01:01.332000000 +0200
++++ vpopmail-5.4.33/cdb/cdb_seek.c 2019-09-25 23:03:04.112000000 +0200
+@@ -1,5 +1,6 @@
+ #include <sys/types.h>
+ #include <errno.h>
++#include <unistd.h>
+ #include "cdb.h"
+
+ #ifndef SEEK_SET
diff --git a/net-mail/vpopmail/files/vpopmail-5.4.33-vdelivermail-add-static.patch b/net-mail/vpopmail/files/vpopmail-5.4.33-vdelivermail-add-static.patch
new file mode 100644
index 000000000000..88306872b484
--- /dev/null
+++ b/net-mail/vpopmail/files/vpopmail-5.4.33-vdelivermail-add-static.patch
@@ -0,0 +1,34 @@
+From 31bef5aeeaf1e24eb40e84e41312dd6ae865ee03 Mon Sep 17 00:00:00 2001
+From: Rolf Eike Beer <eike@sf-mail.de>
+Date: Thu, 21 Aug 2014 17:34:27 +0200
+Subject: [PATCH 1/5] vdelivermail: add static
+
+---
+ vdelivermail.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/vpopmail-5.4.33/vdelivermail.c b/vpopmail-5.4.33/vdelivermail.c
+index d94129f..241106e 100644
+--- a/vdelivermail.c
++++ b/vdelivermail.c
+@@ -322,7 +322,7 @@ int process_valias(void)
+ #endif
+
+ /* Forks off qmail-inject. Returns PID of child, or 0 for failure. */
+-pid_t qmail_inject_open(char *address)
++static pid_t qmail_inject_open(char *address)
+ {
+ int pim[2];
+ pid_t pid;
+@@ -351,7 +351,7 @@ pid_t qmail_inject_open(char *address)
+ return(pid);
+ }
+
+-int fdcopy (int write_fd, int read_fd, const char *extra_headers, size_t headerlen, char *address)
++static int fdcopy (int write_fd, int read_fd, const char *extra_headers, size_t headerlen, char *address)
+ {
+ char msgbuf[4096];
+ ssize_t file_count;
+--
+1.8.4.5
+
diff --git a/net-mail/vpopmail/vpopmail-5.4.33-r3.ebuild b/net-mail/vpopmail/vpopmail-5.4.33-r3.ebuild
index 9aec8fe2f04e..eca83681371d 100644
--- a/net-mail/vpopmail/vpopmail-5.4.33-r3.ebuild
+++ b/net-mail/vpopmail/vpopmail-5.4.33-r3.ebuild
@@ -15,7 +15,9 @@ KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
IUSE="clearpasswd ipalias maildrop mysql postgres spamassassin"
REQUIRED_USE="mysql? ( !postgres )"
-DEPEND="virtual/qmail
+DEPEND="
+ acct-group/vpopmail
+ virtual/qmail
maildrop? ( mail-filter/maildrop )
mysql? ( dev-db/mysql-connector-c:0= )
postgres? ( dev-db/postgresql:=[server] )
@@ -88,7 +90,6 @@ vpopmail_set_homedir() {
}
pkg_setup() {
- enewgroup vpopmail 89
enewuser vpopmail 89 -1 ${VPOP_DEFAULT_HOME} vpopmail
upgradewarning
}
diff --git a/net-mail/vpopmail/vpopmail-5.4.33-r4.ebuild b/net-mail/vpopmail/vpopmail-5.4.33-r4.ebuild
new file mode 100644
index 000000000000..4b291b713517
--- /dev/null
+++ b/net-mail/vpopmail/vpopmail-5.4.33-r4.ebuild
@@ -0,0 +1,266 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools eutils fixheadtails qmail user
+
+HOMEPAGE="http://www.inter7.com/index.php?page=vpopmail"
+DESCRIPTION="Collection of programs to manage virtual email on Qmail servers"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+IUSE="clearpasswd ipalias maildrop mysql postgres spamassassin"
+REQUIRED_USE="mysql? ( !postgres )"
+
+DEPEND="
+ acct-group/vpopmail
+ virtual/qmail
+ maildrop? ( mail-filter/maildrop )
+ mysql? ( dev-db/mysql-connector-c:0= )
+ postgres? ( dev-db/postgresql:=[server] )
+ spamassassin? ( mail-filter/spamassassin )"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-5.4.9-access.violation.patch
+ "${FILESDIR}"/${PN}-lazy.patch
+ "${FILESDIR}"/${PN}-vpgsql.patch
+ "${FILESDIR}"/${PN}-double-free.patch
+ "${FILESDIR}"/${PN}-5.4.33-vdelivermail-add-static.patch
+ "${FILESDIR}"/${PN}-5.4.33-fix-those-vfork-instances-that-do-more-than-exec.patch
+ "${FILESDIR}"/${PN}-5.4.33-remove-unneeded-forward-declaration.patch
+ "${FILESDIR}"/${PN}-5.4.33-clean-up-calling-maildrop.patch
+ "${FILESDIR}"/${PN}-5.4.33-fix-S-tag-in-case-spamassassin-changed-the-file-size.patch
+ "${FILESDIR}"/${PN}-5.4.33-strncat.patch
+ "${FILESDIR}"/${PN}-5.4.33-unistd.patch
+)
+DOCS=(
+ doc/.
+)
+HTML_DOCS=(
+ doc_html/.
+ man_html/.
+)
+
+# This makes sure the variable is set, and that it isn't null.
+VPOP_DEFAULT_HOME="/var/vpopmail"
+
+vpopmail_set_homedir() {
+ VPOP_HOME=$(egethome vpopmail)
+ if [[ -z "${VPOP_HOME}" ]]; then
+ eerror "vpopmail's home directory is null in passwd data!"
+ eerror "You probably want to check that out."
+ eerror "Continuing with default."
+ VPOP_HOME="${VPOP_DEFAULT_HOME}"
+ else
+ einfo "Setting VPOP_HOME to: $VPOP_HOME"
+ fi
+}
+
+pkg_setup() {
+ enewuser vpopmail 89 -1 ${VPOP_DEFAULT_HOME} vpopmail
+ upgradewarning
+}
+
+src_prepare() {
+ default
+
+ echo 'install-recursive: install-exec-am' \
+ >>"${S}"/Makefile.am
+
+ # fix maildir paths
+ sed -i -e 's|Maildir|.maildir|g' \
+ vchkpw.c vconvert.c vdelivermail.c \
+ vpopbull.c vpopmail.c vqmaillocal.c \
+ vuserinfo.c maildirquota.c || die
+
+ # remove vpopmail advertisement
+ sed -i -e '/printf.*vpopmail/s:vpopmail (:(:' \
+ vdelivermail.c vpopbull.c vqmaillocal.c || die
+
+ # automake/autoconf
+ mv -f "${S}"/configure.{in,ac} || die
+ sed -i -e 's,AM_CONFIG_HEADER,AC_CONFIG_HEADERS,g' \
+ configure.ac || die
+
+ # _FORTIFY_SOURCE
+ sed -i \
+ -e 's/\(snprintf(\s*\(LI->[a-zA-Z_]\+\),\s*\)[a-zA-Z_]\+,/\1 sizeof(\2),/' \
+ vlistlib.c || die
+
+ eautoreconf
+ ht_fix_file cdb/Makefile
+}
+
+src_configure() {
+ vpopmail_set_homedir
+
+ local authopts
+ if use mysql; then
+ incdir=$(mysql_config --variable=pkgincludedir || die)
+ libdir=$(mysql_config --variable=pkglibdir || die)
+ authopts+=" --enable-auth-module=mysql"
+ authopts+=" --enable-incdir=${incdir}"
+ authopts+=" --enable-libdir=${libdir}"
+ authopts+=" --enable-sql-logging"
+ authopts+=" --enable-valias"
+ authopts+=" --disable-mysql-replication"
+ authopts+=" --enable-mysql-limits"
+ elif use postgres; then
+ libdir=$(pg_config --libdir || die)
+ incdir=$(pg_config --pkgincludedir || die)
+ authopts+=" --enable-auth-module=pgsql"
+ authopts+=" --enable-incdir=${incdir}"
+ authopts+=" --enable-libdir=${libdir}"
+ authopts+=" --enable-sql-logging"
+ authopts+=" --enable-valias"
+ else
+ authopts+=" --enable-auth-module=cdb"
+ fi
+
+ econf ${authopts} \
+ --sysconfdir=${VPOP_HOME}/etc \
+ --enable-non-root-build \
+ --enable-qmaildir=${QMAIL_HOME} \
+ --enable-qmail-newu=${QMAIL_HOME}/bin/qmail-newu \
+ --enable-qmail-inject=${QMAIL_HOME}/bin/qmail-inject \
+ --enable-qmail-newmrh=${QMAIL_HOME}/bin/qmail-newmrh \
+ --enable-vpopuser=vpopmail \
+ --enable-vpopgroup=vpopmail \
+ --enable-many-domains \
+ --enable-file-locking \
+ --enable-file-sync \
+ --enable-md5-passwords \
+ --enable-logging \
+ --enable-auth-logging \
+ --enable-log-name=vpopmail \
+ --enable-qmail-ext \
+ --disable-tcpserver-file \
+ --disable-roaming-users \
+ $(use_enable ipalias ip-alias-domains) \
+ $(use_enable clearpasswd clear-passwd) \
+ $(use_enable maildrop) \
+ $(use_enable maildrop maildrop-prog /usr/bin/maildrop) \
+ $(use_enable spamassassin)
+}
+
+src_install() {
+ vpopmail_set_homedir
+
+ emake DESTDIR="${D}" install
+ keepdir "${VPOP_HOME}"/domains
+
+ # install helper script for maildir conversion
+ into "${VPOP_HOME}"
+ dobin "${FILESDIR}"/vpopmail-Maildir-dotmaildir-fix.sh
+ into /usr
+
+ mv doc/doc_html/ doc/man_html/ . || die
+ einstalldocs
+ rm -r "${D}/${VPOP_HOME}"/doc || die
+ dosym \
+ $(realpath --relative-to "${D}/${VPOP_HOME}"/ "${D}"/usr/share/doc/${PF}/ || die) \
+ "${VPOP_HOME}"/doc
+
+ # create /etc/vpopmail.conf
+ if use mysql; then
+ insinto /etc
+ newins "${D}${VPOP_HOME}"/etc/vpopmail.mysql vpopmail.conf
+ dosym \
+ $(realpath --relative-to "${D}/${VPOP_HOME}"/etc/ "${D}"/etc/vpopmail.conf || die) \
+ "${VPOP_HOME}"/etc/vpopmail.mysql
+
+ sed -e '12d' -i "${D}"/etc/vpopmail.conf || die
+ echo '# Read-only DB' >> "${D}"/etc/vpopmail.conf
+ echo 'localhost|0|vpopmail|secret|vpopmail' >> "${D}"/etc/vpopmail.conf
+ echo '# Write DB' >> "${D}"/etc/vpopmail.conf
+ echo 'localhost|0|vpopmail|secret|vpopmail' >> "${D}"/etc/vpopmail.conf
+
+ # lock down perms
+ fperms 640 /etc/vpopmail.conf
+ fowners root:vpopmail /etc/vpopmail.conf
+ fi
+
+ insinto "${VPOP_HOME}"/etc
+ doins vusagec.conf
+ dosym "${VPOP_HOME}"/etc/vusagec.conf /etc/vusagec.conf
+ sed -i 's/Disable = False;/Disable = True;/g' "${D}${VPOP_HOME}"/etc/vusagec.conf || die
+
+ einfo "Installing env.d entry"
+ dodir /etc/env.d
+ doenvd "${FILESDIR}"/99vpopmail
+
+ einfo "Locking down vpopmail permissions"
+ fowners -R root:0 "${VPOP_HOME}"/{bin,etc,include}
+ fowners root:vpopmail "${VPOP_HOME}"/bin/vchkpw
+ fperms 4711 "${VPOP_HOME}"/bin/vchkpw
+}
+
+pkg_postinst() {
+ if use mysql ; then
+ elog
+ elog "You have 'mysql' turned on in your USE"
+ elog "Vpopmail needs a VALID MySQL USER. Let's call it 'vpopmail'"
+ elog "You MUST add it and then specify its passwd in the /etc/vpopmail.conf file"
+ elog
+ elog "First log into mysql as your mysql root user and pass. Then:"
+ elog "> create database vpopmail;"
+ elog "> use mysql;"
+ elog "> grant select, insert, update, delete, create, drop on vpopmail.* to"
+ elog " vpopmail@localhost identified by 'your password';"
+ elog "> flush privileges;"
+ elog
+ elog "If you have problems with vpopmail not accepting mail properly,"
+ elog "please ensure that /etc/vpopmail.conf is chmod 640 and"
+ elog "owned by root:vpopmail"
+ elog
+ fi
+
+ # do this for good measure
+ if [[ -e /etc/vpopmail.conf ]]; then
+ chmod 640 /etc/vpopmail.conf || die
+ chown root:vpopmail /etc/vpopmail.conf || die
+ fi
+
+ upgradewarning
+}
+
+pkg_postrm() {
+ vpopmail_set_homedir
+
+ elog "The vpopmail DATA will NOT be removed automatically."
+ elog "You can delete them manually by removing the ${VPOP_HOME} directory."
+}
+
+upgradewarning() {
+ ewarn
+ ewarn "Massive important warning if you are upgrading to 5.2.1-r8 or older"
+ ewarn "The internal structure of the mail storage has changed for"
+ ewarn "consistancy with the rest of Gentoo! Please review and utilize the "
+ ewarn "script at ${VPOP_HOME}/bin/vpopmail-Maildir-dotmaildir-fix.sh"
+ ewarn "to upgrade your system! (It can do conversions both ways)."
+ ewarn "You should be able to run it right away without any changes."
+ ewarn
+
+ elog
+ elog "Use of vpopmail's tcp.smtp[.cdb] is also deprecated now, consider"
+ elog "using net-mail/relay-ctrl instead."
+ elog
+
+ if use mysql; then
+ elog
+ elog "If you are upgrading from 5.4.17 or older, you have to fix your"
+ elog "MySQL tables, please see the UPGRADE file in the documentation!"
+ elog
+ fi
+
+ ewarn
+ ewarn "Newer versions of vpopmail contain a quota daemon called vusaged."
+ ewarn "This ebuild DOES NOT INSTALL vusaged and has therefore disabled"
+ ewarn "its usage in ${VPOP_HOME}/etc/vusagec.conf. DO NOT ENABLE!"
+ ewarn "Otherwise mail delivery WILL BREAK"
+ ewarn
+}
diff --git a/net-mail/vpopmail/vpopmail-5.4.33.ebuild b/net-mail/vpopmail/vpopmail-5.4.33.ebuild
index bfc60278c208..e91114dbf411 100644
--- a/net-mail/vpopmail/vpopmail-5.4.33.ebuild
+++ b/net-mail/vpopmail/vpopmail-5.4.33.ebuild
@@ -14,7 +14,9 @@ SLOT="0"
KEYWORDS="amd64 arm hppa ia64 ppc ppc64 s390 sh sparc x86"
IUSE="clearpasswd ipalias maildrop mysql spamassassin"
-DEPEND="virtual/qmail
+DEPEND="
+ acct-group/vpopmail
+ virtual/qmail
maildrop? ( mail-filter/maildrop )
mysql? ( virtual/mysql )
spamassassin? ( mail-filter/spamassassin )"
@@ -36,7 +38,6 @@ vpopmail_set_homedir() {
}
pkg_setup() {
- enewgroup vpopmail 89
enewuser vpopmail 89 -1 ${VPOP_DEFAULT_HOME} vpopmail
upgradewarning
}