summaryrefslogtreecommitdiff
path: root/net-mail/dot-forward
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-06-12 19:09:37 -0500
committerroot <root@alpha.trunkmasters.com>2026-06-12 19:09:37 -0500
commitb590c8d7572b727d565cc0b8ff660d43569845de (patch)
tree06f7a4102ea4e845df8b66660f252920d52952f9 /net-mail/dot-forward
parent24f9cbfc4c34fdb6a6e03311674414e881ceab47 (diff)
downloadbaldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.tar.gz
baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.tar.xz
baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.zip
Adding metadata
Diffstat (limited to 'net-mail/dot-forward')
-rw-r--r--net-mail/dot-forward/Manifest2
-rw-r--r--net-mail/dot-forward/dot-forward-0.71-r5.ebuild64
-rw-r--r--net-mail/dot-forward/dot-forward-0.71-r6.ebuild65
-rw-r--r--net-mail/dot-forward/files/0.71-errno.patch11
-rw-r--r--net-mail/dot-forward/files/0.71-gcc15.patch727
-rw-r--r--net-mail/dot-forward/metadata.xml5
6 files changed, 874 insertions, 0 deletions
diff --git a/net-mail/dot-forward/Manifest b/net-mail/dot-forward/Manifest
new file mode 100644
index 000000000000..2c2db27d1201
--- /dev/null
+++ b/net-mail/dot-forward/Manifest
@@ -0,0 +1,2 @@
+DIST dot-forward-0.71-fix-build-for-clang16.patch.xz 8040 BLAKE2B 6035f573d423a7bc87d2372e13d4cd043eaaa110e2f7884d865b5101f69f677bc3a3bed71d08d32a9e7dad1cfb98330f695314480673437a48066adbc947a957 SHA512 3c9ba87495e5ea719d3931f17c94428a070d6251ce2c21a50c735429496db7c4c02ea152425d7915ce1219c51757cc990e8544ba7c28607c76d2c6385b3968ce
+DIST dot-forward-0.71.tar.gz 26352 BLAKE2B 9757d07adc796ad35c6426eed3c53eb87f784a1035ad6569a8130e62a04665bb9ac03c250be0e5cb22f122c7204197f736dfc748d468c980814d23bb7ad0069d SHA512 f37a30eabf3a7e7258bfbe9178218d053a5164a9698fbc34954eb8bd588fe2bbf61ffd85f5b817e3ce65d7c0efac1735b59b11faa4d425e2df4089769af94b8b
diff --git a/net-mail/dot-forward/dot-forward-0.71-r5.ebuild b/net-mail/dot-forward/dot-forward-0.71-r5.ebuild
new file mode 100644
index 000000000000..fd750dce5796
--- /dev/null
+++ b/net-mail/dot-forward/dot-forward-0.71-r5.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit fixheadtails qmail
+
+DESCRIPTION="Reads sendmail's .forward files under qmail"
+HOMEPAGE="http://cr.yp.to/dot-forward.html"
+SRC_URI="http://cr.yp.to/software/${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-fix-build-for-clang16.patch.xz"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ~hppa ~m68k ~mips ppc ppc64 ~s390 ~sparc x86"
+
+# See bug 97850
+RESTRICT="test"
+
+DEPEND="
+ acct-group/nofiles
+ acct-group/qmail
+"
+
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PV}-errno.patch
+ "${WORKDIR}"/${P}-fix-build-for-clang16.patch
+)
+
+DOCS=(
+ BLURB
+ CHANGES
+ FILES
+ INSTALL
+ README
+ TARGETS
+ THANKS
+ TODO
+)
+
+src_prepare() {
+ default
+
+ ht_fix_file Makefile
+}
+
+src_configure() {
+ qmail_set_cc
+}
+
+src_compile() {
+ emake prog
+}
+
+src_install() {
+ einstalldocs
+ doman *.1
+
+ insopts -o root -g qmail -m 755
+ insinto "${QMAIL_HOME}"/bin
+ doins dot-forward
+}
diff --git a/net-mail/dot-forward/dot-forward-0.71-r6.ebuild b/net-mail/dot-forward/dot-forward-0.71-r6.ebuild
new file mode 100644
index 000000000000..f0743d89ecfa
--- /dev/null
+++ b/net-mail/dot-forward/dot-forward-0.71-r6.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit fixheadtails qmail
+
+DESCRIPTION="Reads sendmail's .forward files under qmail"
+HOMEPAGE="http://cr.yp.to/dot-forward.html"
+SRC_URI="http://cr.yp.to/software/${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-fix-build-for-clang16.patch.xz"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ~hppa ~m68k ~mips ppc ppc64 ~s390 ~sparc x86"
+
+# See bug 97850
+RESTRICT="test"
+
+DEPEND="
+ acct-group/nofiles
+ acct-group/qmail
+"
+
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PV}-errno.patch
+ "${WORKDIR}"/${P}-fix-build-for-clang16.patch
+ "${FILESDIR}"/${PV}-gcc15.patch
+)
+
+DOCS=(
+ BLURB
+ CHANGES
+ FILES
+ INSTALL
+ README
+ TARGETS
+ THANKS
+ TODO
+)
+
+src_prepare() {
+ default
+
+ ht_fix_file Makefile
+}
+
+src_configure() {
+ qmail_set_cc
+}
+
+src_compile() {
+ emake prog
+}
+
+src_install() {
+ einstalldocs
+ doman *.1
+
+ insopts -o root -g qmail -m 755
+ insinto "${QMAIL_HOME}"/bin
+ doins dot-forward
+}
diff --git a/net-mail/dot-forward/files/0.71-errno.patch b/net-mail/dot-forward/files/0.71-errno.patch
new file mode 100644
index 000000000000..f0cd380019f8
--- /dev/null
+++ b/net-mail/dot-forward/files/0.71-errno.patch
@@ -0,0 +1,11 @@
+--- a/error.h 2003-03-05 15:42:51.000000000 -0500
++++ b/error.h 2003-03-05 15:43:00.000000000 -0500
+@@ -1,7 +1,7 @@
+ #ifndef ERROR_H
+ #define ERROR_H
+
+-extern int errno;
++#include <errno.h>
+
+ extern int error_intr;
+ extern int error_nomem;
diff --git a/net-mail/dot-forward/files/0.71-gcc15.patch b/net-mail/dot-forward/files/0.71-gcc15.patch
new file mode 100644
index 000000000000..df3190c86c03
--- /dev/null
+++ b/net-mail/dot-forward/files/0.71-gcc15.patch
@@ -0,0 +1,727 @@
+diff --git a/FILES b/FILES
+index 9c851e4..e09eff7 100644
+--- a/FILES
++++ b/FILES
+@@ -38,7 +38,6 @@ substdo.c
+ substdio_copy.c
+ subfd.h
+ subfderr.c
+-readwrite.h
+ exit.h
+ strerr.h
+ strerr_sys.c
+diff --git a/Makefile b/Makefile
+index 188d9e9..3dbe553 100644
+--- a/Makefile
++++ b/Makefile
+@@ -28,7 +28,7 @@ load auto-str.o substdio.a error.a str.a
+ ./load auto-str substdio.a error.a str.a
+
+ auto-str.o: \
+-compile auto-str.c substdio.h readwrite.h exit.h
++compile auto-str.c substdio.h exit.h
+ ./compile auto-str.c
+
+ auto_qmail.c: \
+@@ -70,7 +70,7 @@ make-compile warn-auto.sh systype
+ chmod 755 compile
+
+ control.o: \
+-compile control.c readwrite.h open.h getln.h stralloc.h gen_alloc.h \
++compile control.c open.h getln.h stralloc.h gen_alloc.h \
+ substdio.h error.h control.h alloc.h scan.h
+ ./compile control.c
+
+@@ -88,7 +88,7 @@ dot-forward.1
+ nroff -man dot-forward.1 > dot-forward.0
+
+ dot-forward.o: \
+-compile dot-forward.c sgetopt.h subgetopt.h substdio.h readwrite.h \
++compile dot-forward.c sgetopt.h subgetopt.h substdio.h \
+ stralloc.h gen_alloc.h getln.h strerr.h error.h exit.h open.h wait.h \
+ seek.h env.h str.h fmt.h token822.h gen_alloc.h control.h qmail.h \
+ substdio.h auto_qmail.h
+@@ -187,7 +187,7 @@ str.a
+ error.a open.a str.a
+
+ install.o: \
+-compile install.c substdio.h strerr.h error.h open.h readwrite.h \
++compile install.c substdio.h strerr.h error.h open.h \
+ exit.h
+ ./compile install.c
+
+@@ -198,7 +198,7 @@ str.a
+ error.a str.a
+
+ instcheck.o: \
+-compile instcheck.c strerr.h error.h readwrite.h exit.h
++compile instcheck.c strerr.h error.h exit.h
+ ./compile instcheck.c
+
+ it: \
+@@ -249,7 +249,7 @@ prog: \
+ dot-forward
+
+ qmail.o: \
+-compile qmail.c substdio.h readwrite.h wait.h exit.h fork.h fd.h \
++compile qmail.c substdio.h wait.h exit.h fork.h fd.h \
+ qmail.h substdio.h auto_qmail.h
+ ./compile qmail.c
+
+@@ -354,7 +354,7 @@ compile strerr_sys.c error.h strerr.h
+ ./compile strerr_sys.c
+
+ subfderr.o: \
+-compile subfderr.c readwrite.h substdio.h subfd.h substdio.h
++compile subfderr.c substdio.h subfd.h substdio.h
+ ./compile subfderr.c
+
+ subgetopt.o: \
+diff --git a/auto-str.c b/auto-str.c
+index 53323f0..11a474b 100644
+--- a/auto-str.c
++++ b/auto-str.c
+@@ -1,11 +1,14 @@
+ #include "substdio.h"
+-#include "readwrite.h"
+-#include "exit.h"
+ #include <stdio.h>
+ #include <unistd.h>
+
++static ssize_t mywrite(int fd, void *buf, size_t len)
++{
++ return write(fd, buf, len);
++}
++
+ char buf1[256];
+-substdio ss1 = SUBSTDIO_FDBUF((int(*)())write,1,buf1,sizeof(buf1));
++substdio ss1 = SUBSTDIO_FDBUF(mywrite,1,buf1,sizeof(buf1));
+
+ int puts(const char *s)
+ {
+diff --git a/control.c b/control.c
+index b9ad80d..35ec137 100644
+--- a/control.c
++++ b/control.c
+@@ -9,6 +9,11 @@
+ #include "scan.h"
+ #include <unistd.h>
+
++static ssize_t myread(int fd, void *buf, size_t len)
++{
++ return read(fd, buf, len);
++}
++
+ static char inbuf[64];
+ static stralloc line = {0};
+ static stralloc me = {0};
+@@ -54,7 +59,7 @@ int control_readline(stralloc *sa,char *fn)
+ fd = open_read(fn);
+ if (fd == -1) { if (errno == error_noent) return 0; return -1; }
+
+- substdio_fdbuf(&ss,(int (*)())read,fd,inbuf,sizeof(inbuf));
++ substdio_fdbuf(&ss,myread,fd,inbuf,sizeof(inbuf));
+
+ if (getln(&ss,sa,&match,'\n') == -1) { close(fd); return -1; }
+
+@@ -101,7 +106,7 @@ int control_readfile(stralloc *sa,char *fn,int flagme)
+ return -1;
+ }
+
+- substdio_fdbuf(&ss,(int (*)())read,fd,inbuf,sizeof(inbuf));
++ substdio_fdbuf(&ss,myread,fd,inbuf,sizeof(inbuf));
+
+ for (;;)
+ {
+diff --git a/dot-forward.c b/dot-forward.c
+index dfa26af..390a18d 100644
+--- a/dot-forward.c
++++ b/dot-forward.c
+@@ -59,7 +59,12 @@ substdio ssmess;
+ char childbuf[1024];
+ substdio sschild;
+
+-int blindwrite(int fd, char *buf, int len)
++static ssize_t myread(int fd, void *buf, size_t len)
++{
++ return read(fd, buf, len);
++}
++
++static ssize_t blindwrite(int fd, void *buf, size_t len)
+ {
+ write(fd,buf,len);
+ return len;
+@@ -95,7 +100,7 @@ void run(char *cmd)
+
+ close(pi[0]);
+
+- substdio_fdbuf(&ssmess,(int (*)())read,0,messbuf,sizeof messbuf);
++ substdio_fdbuf(&ssmess,myread,0,messbuf,sizeof messbuf);
+ substdio_fdbuf(&sschild,blindwrite,pi[1],childbuf,sizeof childbuf);
+
+ substdio_puts(&sschild,ufline);
+@@ -304,7 +309,7 @@ unsigned long qp;
+ char *qqx;
+ char strnum[FMT_ULONG];
+
+-int mywrite(int fd, char *buf, int len)
++ssize_t mywrite(int fd, void *buf, size_t len)
+ {
+ qmail_put(&qq,buf,len);
+ return len;
+@@ -331,7 +336,7 @@ void try(char *fn)
+ flagacted = 0;
+ flagdirect = 0;
+
+- substdio_fdbuf(&ss,(int (*)())read,fd,inbuf,sizeof inbuf);
++ substdio_fdbuf(&ss,myread,fd,inbuf,sizeof inbuf);
+
+ for (;;) {
+ if (getln(&ss,&line,&match,'\n') == -1)
+@@ -351,7 +356,7 @@ void try(char *fn)
+ qp = qmail_qp(&qq);
+ qmail_puts(&qq,dtline);
+
+- substdio_fdbuf(&ssmess,(int (*)())read,0,messbuf,sizeof messbuf);
++ substdio_fdbuf(&ssmess,myread,0,messbuf,sizeof messbuf);
+ if (substdio_copy(&ssqq,&ssmess) != 0) die_readmess();
+ substdio_flush(&ssqq);
+
+diff --git a/error.h b/error.h
+index 94a435a..8a00dd5 100644
+--- a/error.h
++++ b/error.h
+@@ -17,7 +17,7 @@ extern int error_pipe;
+ extern int error_perm;
+ extern int error_acces;
+
+-extern char *error_str(int i);
+-extern int error_temp();
++extern char *error_str(int e);
++extern int error_temp(int e);
+
+ #endif
+diff --git a/gen_allocdefs.h b/gen_allocdefs.h
+index 1e0b414..3bf5e07 100644
+--- a/gen_allocdefs.h
++++ b/gen_allocdefs.h
+@@ -8,7 +8,7 @@ int ta_ready(register ta *x, register unsigned int n) \
+ i = x->a; \
+ if (n > i) { \
+ x->a = base + n + (n >> 3); \
+- if (alloc_re(&x->field,i * sizeof(type),x->a * sizeof(type))) return 1; \
++ if (alloc_re((char **)&x->field,i * sizeof(type),x->a * sizeof(type))) return 1; \
+ x->a = i; return 0; } \
+ return 1; } \
+ x->len = 0; \
+@@ -21,14 +21,14 @@ int ta_rplus(register ta *x, register unsigned int n) \
+ i = x->a; n += x->len; \
+ if (n > i) { \
+ x->a = base + n + (n >> 3); \
+- if (alloc_re(&x->field,i * sizeof(type),x->a * sizeof(type))) return 1; \
++ if (alloc_re((char **)&x->field,i * sizeof(type),x->a * sizeof(type))) return 1; \
+ x->a = i; return 0; } \
+ return 1; } \
+ x->len = 0; \
+ return !!(x->field = (type *) alloc((x->a = n) * sizeof(type))); }
+
+ #define GEN_ALLOC_append(ta,type,field,len,a,i,n,x,base,ta_rplus,ta_append) \
+-int ta_append(register ta *x,register type *i) \
++int ta_append(register ta *x, register type *i) \
+ { if (!ta_rplus(x,1)) return 0; x->field[x->len++] = *i; return 1; }
+
+ #endif
+diff --git a/install.c b/install.c
+index 7f26a5a..bdfddd2 100644
+--- a/install.c
++++ b/install.c
+@@ -2,8 +2,7 @@
+ #include "strerr.h"
+ #include "error.h"
+ #include "open.h"
+-#include "readwrite.h"
+-#include "exit.h"
++#include <unistd.h>
+
+ extern void hier();
+
+diff --git a/instcheck.c b/instcheck.c
+index f7854ed..08e3eda 100644
+--- a/instcheck.c
++++ b/instcheck.c
+@@ -2,8 +2,7 @@
+ #include <sys/stat.h>
+ #include "strerr.h"
+ #include "error.h"
+-#include "readwrite.h"
+-#include "exit.h"
++#include <unistd.h>
+
+ extern void hier(void);
+
+diff --git a/qmail.c b/qmail.c
+index 7292b58..491e7fc 100644
+--- a/qmail.c
++++ b/qmail.c
+@@ -1,13 +1,16 @@
+ #include "substdio.h"
+-#include "readwrite.h"
+ #include "wait.h"
+-#include "exit.h"
+ #include "fork.h"
+ #include "fd.h"
+ #include "qmail.h"
+ #include "auto_qmail.h"
+ #include <unistd.h>
+
++static ssize_t mywrite(int fd, void *buf, size_t len)
++{
++ return write(fd, buf, len);
++}
++
+ static char *binqqargs[2] = { "bin/qmail-queue", 0 } ;
+
+ int qmail_open(struct qmail *qq)
+@@ -35,7 +38,7 @@ int qmail_open(struct qmail *qq)
+
+ qq->fdm = pim[1]; close(pim[0]);
+ qq->fde = pie[1]; close(pie[0]);
+- substdio_fdbuf(&qq->ss,(int (*)())write,qq->fdm,qq->buf,sizeof(qq->buf));
++ substdio_fdbuf(&qq->ss,mywrite,qq->fdm,qq->buf,sizeof(qq->buf));
+ qq->flagerr = 0;
+ return 0;
+ }
+@@ -64,7 +67,7 @@ void qmail_from(struct qmail *qq, char *s)
+ {
+ if (substdio_flush(&qq->ss) == -1) qq->flagerr = 1;
+ close(qq->fdm);
+- substdio_fdbuf(&qq->ss,(int (*)())write,qq->fde,qq->buf,sizeof(qq->buf));
++ substdio_fdbuf(&qq->ss,mywrite,qq->fde,qq->buf,sizeof(qq->buf));
+ qmail_put(qq,"F",1);
+ qmail_puts(qq,s);
+ qmail_put(qq,"",1);
+diff --git a/sig.h b/sig.h
+index f2027cd..441ad69 100644
+--- a/sig.h
++++ b/sig.h
+@@ -1,16 +1,16 @@
+ #ifndef SIG_H
+ #define SIG_H
+
+-extern void sig_catch(int sig,void (*f)());
+-extern void sig_block();
+-extern void sig_unblock();
+-extern void sig_blocknone();
+-extern void sig_pause();
++extern void sig_catch(int sig, void (*f)(int));
++extern void sig_block(int sig);
++extern void sig_unblock(int sig);
++extern void sig_blocknone(void);
++extern void sig_pause(void);
+
+-extern void sig_dfl();
++extern void sig_dfl(int sig);
+
+-extern void sig_miscignore();
+-extern void sig_bugcatch();
++extern void sig_miscignore(void);
++extern void sig_bugcatch(void);
+
+ extern void sig_pipeignore(void);
+ extern void sig_pipedefault(void);
+diff --git a/sig_catch.c b/sig_catch.c
+index 4a02bf7..97689fc 100644
+--- a/sig_catch.c
++++ b/sig_catch.c
+@@ -2,7 +2,8 @@
+ #include "sig.h"
+ #include "hassgact.h"
+
+-void sig_catch(int sig,void (*f)()){
++void sig_catch(int sig, void (*f)(int))
++{
+ #ifdef HASSIGACTION
+ struct sigaction sa;
+ sa.sa_handler = f;
+diff --git a/strerr.h b/strerr.h
+index 7819315..00614f8 100644
+--- a/strerr.h
++++ b/strerr.h
+@@ -11,11 +11,11 @@ struct strerr
+ ;
+
+ extern struct strerr strerr_sys;
+-extern void strerr_sysinit(void);
++extern void strerr_sysinit();
+
+ extern char *strerr();
+-extern void strerr_warn(char *x1, char *x2, char *x3, char *x4, char *x5, char *x6, struct strerr *se);
+-extern void strerr_die(int e,char *x1, char *x2, char *x3, char *x4, char *x5, char *x6,struct strerr *se);
++extern void strerr_warn(char *, char *, char *, char *, char *, char *, struct strerr *);
++extern void strerr_die(int, char *, char *, char *, char *, char *, char *, struct strerr *);
+
+ #define STRERR(r,se,a) \
+ { se.who = 0; se.x = a; se.y = 0; se.z = 0; return r; }
+diff --git a/subfd.h b/subfd.h
+index bcb2e1e..09a29bf 100644
+--- a/subfd.h
++++ b/subfd.h
+@@ -9,7 +9,7 @@ extern substdio *subfdout;
+ extern substdio *subfdoutsmall;
+ extern substdio *subfderr;
+
+-extern int subfd_read();
+-extern int subfd_readsmall();
++extern int subfd_read(int fd, char *buf, int len);
++extern int subfd_readsmall(int fd, char *buf, int len);
+
+ #endif
+diff --git a/subfderr.c b/subfderr.c
+index 3a24ba7..9368373 100644
+--- a/subfderr.c
++++ b/subfderr.c
+@@ -1,8 +1,12 @@
+-#include "readwrite.h"
+ #include "substdio.h"
+ #include "subfd.h"
+ #include <unistd.h>
+
++static ssize_t mywrite(int fd, void *buf, size_t len)
++{
++ return write(fd, buf, len);
++}
++
+ char subfd_errbuf[256];
+-static substdio it = SUBSTDIO_FDBUF((int(*)())write,2,subfd_errbuf,256);
++static substdio it = SUBSTDIO_FDBUF(mywrite,2,subfd_errbuf,256);
+ substdio *subfderr = &it;
+diff --git a/substdi.c b/substdi.c
+index d3e0b48..1f6c158 100644
+--- a/substdi.c
++++ b/substdi.c
+@@ -2,9 +2,7 @@
+ #include "byte.h"
+ #include "error.h"
+
+-void (*op)(int );
+-
+-static int oneread(register int (*op)(int fd, char *buf, int len),register int fd,register char *buf,register int len)
++static int oneread(ssize_t (*op)(int, void *, size_t), int fd, char *buf, int len)
+ {
+ register int r;
+
+@@ -15,11 +13,11 @@ static int oneread(register int (*op)(int fd, char *buf, int len),register int f
+ }
+ }
+
+-static int getthis(register substdio *s,register char *buf,register int len)
++static int getthis(substdio *s, char *buf, int len)
+ {
+ register int r;
+ register int q;
+-
++
+ r = s->p;
+ q = r - len;
+ if (q > 0) { r = len; s->p = q; } else s->p = 0;
+@@ -28,7 +26,7 @@ static int getthis(register substdio *s,register char *buf,register int len)
+ return r;
+ }
+
+-int substdio_feed(register substdio *s)
++int substdio_feed(substdio *s)
+ {
+ register int r;
+ register int q;
+@@ -44,32 +42,32 @@ int substdio_feed(register substdio *s)
+ return r;
+ }
+
+-int substdio_bget(register substdio *s,register char *buf,register int len)
++int substdio_bget(substdio *s, char *buf, int len)
+ {
+ register int r;
+-
++
+ if (s->p > 0) return getthis(s,buf,len);
+ r = s->n; if (r <= len) return oneread(s->op,s->fd,buf,r);
+ r = substdio_feed(s); if (r <= 0) return r;
+ return getthis(s,buf,len);
+ }
+
+-int substdio_get(register substdio *s,register char *buf,register int len)
++int substdio_get(substdio *s, char *buf, int len)
+ {
+ register int r;
+-
++
+ if (s->p > 0) return getthis(s,buf,len);
+ if (s->n <= len) return oneread(s->op,s->fd,buf,len);
+ r = substdio_feed(s); if (r <= 0) return r;
+ return getthis(s,buf,len);
+ }
+
+-char *substdio_peek(register substdio *s)
++char *substdio_peek(substdio *s)
+ {
+ return s->x + s->n;
+ }
+
+-void substdio_seek(register substdio *s,register int len)
++void substdio_seek(substdio *s, int len)
+ {
+ s->n += len;
+ s->p -= len;
+diff --git a/substdio.c b/substdio.c
+index abe404c..22cc4a6 100644
+--- a/substdio.c
++++ b/substdio.c
+@@ -1,6 +1,6 @@
+ #include "substdio.h"
+
+-void substdio_fdbuf(register substdio *s,register int (*op)(),register int fd,register char *buf,register int len)
++void substdio_fdbuf(substdio *s, ssize_t (*op)(int, void *, size_t), int fd, char *buf, int len)
+ {
+ s->x = buf;
+ s->fd = fd;
+diff --git a/substdio.h b/substdio.h
+index ef825c7..e2c4794 100644
+--- a/substdio.h
++++ b/substdio.h
+@@ -1,32 +1,34 @@
+ #ifndef SUBSTDIO_H
+ #define SUBSTDIO_H
+
++#include <sys/types.h>
++
+ typedef struct substdio {
+ char *x;
+ int p;
+ int n;
+ int fd;
+- int (*op)();
++ ssize_t (*op)(int, void *, size_t);
+ } substdio;
+
+ #define SUBSTDIO_FDBUF(op,fd,buf,len) { (buf), 0, (len), (fd), (op) }
+
+-extern void substdio_fdbuf(register substdio *s,register int (*op)(),register int fd,register char *buf,register int len);
++extern void substdio_fdbuf(substdio *s, ssize_t (*op)(int, void *, size_t), int fd, char *buf, int len);
+
+-extern int substdio_flush(register substdio *s);
+-extern int substdio_put(register substdio *s,register char *buf,register int len);
+-extern int substdio_bput(register substdio *s,register char *buf,register int len);
+-extern int substdio_putflush(register substdio *s,register char *buf,register int len);
+-extern int substdio_puts(register substdio *s,register char *buf);
+-extern int substdio_bputs(register substdio *s,register char *buf);
+-extern int substdio_putsflush(register substdio *s,register char *buf);
++extern int substdio_flush(substdio *s);
++extern int substdio_put(substdio *s, char *buf, int len);
++extern int substdio_bput(substdio *s, char *buf, int len);
++extern int substdio_putflush(substdio *s, char *buf, int len);
++extern int substdio_puts(substdio *s, char *buf);
++extern int substdio_bputs(substdio *s, char *buf);
++extern int substdio_putsflush(substdio *s, char *buf);
+
+-extern int substdio_get(register substdio *s,register char *buf,register int len);
+-extern int substdio_bget(register substdio *s,register char *buf,register int len);
+-extern int substdio_feed(register substdio *s);
++extern int substdio_get(substdio *s, char *buf, int len);
++extern int substdio_bget(substdio *s, char *buf, int len);
++extern int substdio_feed(substdio *s);
+
+-extern char *substdio_peek(register substdio *s);
+-extern void substdio_seek(register substdio *s,register int len);
++extern char *substdio_peek(substdio *s);
++extern void substdio_seek(substdio *s, int len);
+
+ #define substdio_fileno(s) ((s)->fd)
+
+@@ -42,6 +44,6 @@ extern void substdio_seek(register substdio *s,register int len);
+ : substdio_bput((s),&(c),1) \
+ )
+
+-extern int substdio_copy(register substdio *ssout,register substdio *ssin);
++extern int substdio_copy(substdio *ssout, substdio *ssin);
+
+ #endif
+diff --git a/substdo.c b/substdo.c
+index 265d9c5..90435b9 100644
+--- a/substdo.c
++++ b/substdo.c
+@@ -3,7 +3,7 @@
+ #include "byte.h"
+ #include "error.h"
+
+-static int allwrite(register int (*op)(int fd, char *buf, int len),register int fd,register char *buf,register int len)
++static int allwrite(ssize_t (*op)(int, void *, size_t), int fd, char *buf, int len)
+ {
+ register int w;
+
+@@ -13,27 +13,27 @@ static int allwrite(register int (*op)(int fd, char *buf, int len),register int
+ if (errno == error_intr) continue;
+ return -1; /* note that some data may have been written */
+ }
+- /* if (w == 0) ; /\* luser's fault *\/ */
++ if (w == 0) ; /* luser's fault */
+ buf += w;
+ len -= w;
+ }
+ return 0;
+ }
+
+-int substdio_flush(register substdio *s)
++int substdio_flush(substdio *s)
+ {
+ register int p;
+-
++
+ p = s->p;
+ if (!p) return 0;
+ s->p = 0;
+ return allwrite(s->op,s->fd,s->x,p);
+ }
+
+-int substdio_bput(register substdio *s,register char *buf,register int len)
++int substdio_bput(substdio *s, char *buf, int len)
+ {
+ register int n;
+-
++
+ while (len > (n = s->n - s->p)) {
+ byte_copy(s->x + s->p,n,buf); s->p += n; buf += n; len -= n;
+ if (substdio_flush(s) == -1) return -1;
+@@ -44,10 +44,10 @@ int substdio_bput(register substdio *s,register char *buf,register int len)
+ return 0;
+ }
+
+-int substdio_put(register substdio *s,register char *buf,register int len)
++int substdio_put(substdio *s, char *buf, int len)
+ {
+ register int n;
+-
++
+ n = s->n;
+ if (len > n - s->p) {
+ if (substdio_flush(s) == -1) return -1;
+@@ -66,23 +66,23 @@ int substdio_put(register substdio *s,register char *buf,register int len)
+ return 0;
+ }
+
+-int substdio_putflush(register substdio *s,register char *buf,register int len)
++int substdio_putflush(substdio *s, char *buf, int len)
+ {
+ if (substdio_flush(s) == -1) return -1;
+ return allwrite(s->op,s->fd,buf,len);
+ }
+
+-int substdio_bputs(register substdio *s,register char *buf)
++int substdio_bputs(substdio *s, char *buf)
+ {
+ return substdio_bput(s,buf,str_len(buf));
+ }
+
+-int substdio_puts(register substdio *s,register char *buf)
++int substdio_puts(substdio *s, char *buf)
+ {
+ return substdio_put(s,buf,str_len(buf));
+ }
+
+-int substdio_putsflush(register substdio *s,register char *buf)
++int substdio_putsflush(substdio *s, char *buf)
+ {
+ return substdio_putflush(s,buf,str_len(buf));
+ }
+diff --git a/token822.c b/token822.c
+index 38650f2..a0dd047 100644
+--- a/token822.c
++++ b/token822.c
+@@ -73,7 +73,7 @@ static void atomcheck(struct token822 *t)
+ }
+ }
+
+-int token822_unparse(stralloc *sa,token822_alloc *ta,unsigned int linelen)
++int token822_unparse(stralloc *sa, token822_alloc *ta, unsigned int linelen)
+ {
+ struct token822 *t;
+ int len;
+@@ -171,7 +171,7 @@ int token822_unparse(stralloc *sa,token822_alloc *ta,unsigned int linelen)
+ return 1;
+ }
+
+-int token822_unquote(stralloc *sa,token822_alloc *ta)
++int token822_unquote(stralloc *sa, token822_alloc *ta)
+ {
+ struct token822 *t;
+ int len;
+@@ -225,7 +225,7 @@ int token822_unquote(stralloc *sa,token822_alloc *ta)
+ return 1;
+ }
+
+-int token822_parse(token822_alloc *ta,stralloc *sa,stralloc *buf)
++int token822_parse(token822_alloc *ta, stralloc *sa, stralloc *buf)
+ {
+ int i;
+ int salen;
+@@ -385,7 +385,7 @@ int token822_parse(token822_alloc *ta,stralloc *sa,stralloc *buf)
+ return 1;
+ }
+
+-static int gotaddr(token822_alloc *taout,token822_alloc *taaddr,int (*callback)(token822_alloc *taaddr))
++static int gotaddr(token822_alloc *taout, token822_alloc *taaddr, int (*callback)(token822_alloc *))
+ {
+ int i;
+
+@@ -394,7 +394,7 @@ static int gotaddr(token822_alloc *taout,token822_alloc *taaddr,int (*callback)(
+
+ if (!token822_readyplus(taout,taaddr->len))
+ return 0;
+-
++
+ for (i = 0;i < taaddr->len;++i)
+ taout->t[taout->len++] = taaddr->t[i];
+
+@@ -402,7 +402,7 @@ static int gotaddr(token822_alloc *taout,token822_alloc *taaddr,int (*callback)(
+ return 1;
+ }
+
+-int token822_addrlist(token822_alloc *taout,token822_alloc *taaddr,token822_alloc *ta,int (*callback)())
++int token822_addrlist(token822_alloc *taout, token822_alloc *taaddr, token822_alloc *ta, int (*callback)(token822_alloc *))
+ {
+ struct token822 *t;
+ struct token822 *beginning;
+diff --git a/token822.h b/token822.h
+index be96007..0debd52 100644
+--- a/token822.h
++++ b/token822.h
+@@ -1,8 +1,6 @@
+ #ifndef TOKEN822_H
+ #define TOKEN822_H
+
+-#include "stralloc.h"
+-
+ struct token822
+ {
+ int type;
+@@ -14,14 +12,14 @@ struct token822
+ #include "gen_alloc.h"
+ GEN_ALLOC_typedef(token822_alloc,struct token822,t,len,a)
+
+-extern int token822_parse(token822_alloc *ta,stralloc *sa,stralloc *buf);
+-extern int token822_addrlist(token822_alloc *taout,token822_alloc *taaddr,token822_alloc *ta,int (*callback)());
+-extern int token822_unquote(stralloc *sa,token822_alloc *ta);
+-extern int token822_unparse(stralloc *sa,token822_alloc *ta,unsigned int linelen);
+-extern void token822_free();
++extern int token822_parse(token822_alloc *ta, stralloc *sa, stralloc *buf);
++extern int token822_addrlist(token822_alloc *taout, token822_alloc *taaddr, token822_alloc *ta, int (*callback)(token822_alloc *));
++extern int token822_unquote(stralloc *sa, token822_alloc *ta);
++extern int token822_unparse(stralloc *sa, token822_alloc *ta, unsigned int linelen);
++extern void token822_free(token822_alloc *ta);
+ extern void token822_reverse(token822_alloc *ta);
+-extern int token822_ready(token822_alloc *ta, unsigned int numtoks);
+-extern int token822_readyplus(token822_alloc *ta, unsigned int len);
++extern int token822_ready(token822_alloc *ta, unsigned int n);
++extern int token822_readyplus(token822_alloc *ta, unsigned int n);
+ extern int token822_append(token822_alloc *ta, struct token822 *t);
+
+ #define TOKEN822_ATOM 1
diff --git a/net-mail/dot-forward/metadata.xml b/net-mail/dot-forward/metadata.xml
new file mode 100644
index 000000000000..5f33304011d5
--- /dev/null
+++ b/net-mail/dot-forward/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>