mail/sma: -fno-common fix

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

mail/sma: -fno-common fix

Theo Buehler-3
This is straightforward. I don't have a sendmail setup with logs to test
this against...

FreeBSD moved all variable definitions from sma.h to sma.c and externed
them in the header. I decided to move a few of them into init.c since
they're allocated/initialized there (usually via strdup). They're never
freed.

Index: Makefile
===================================================================
RCS file: /cvs/ports/mail/sma/Makefile,v
retrieving revision 1.10
diff -u -p -r1.10 Makefile
--- Makefile 12 Jul 2019 20:47:38 -0000 1.10
+++ Makefile 23 Feb 2021 21:58:56 -0000
@@ -4,7 +4,7 @@ COMMENT= Sendmail Log Analysis Report
 
 VERSION= 1.4
 DISTNAME= sma-${VERSION}
-REVISION= 1
+REVISION= 2
 CATEGORIES= mail
 
 HOMEPAGE= http://www.klake.org/sma/
Index: patches/patch-Makefile
===================================================================
RCS file: /cvs/ports/mail/sma/patches/patch-Makefile,v
retrieving revision 1.4
diff -u -p -r1.4 patch-Makefile
--- patches/patch-Makefile 25 Jan 2005 06:57:45 -0000 1.4
+++ patches/patch-Makefile 23 Feb 2021 22:00:10 -0000
@@ -1,8 +1,9 @@
 $OpenBSD: patch-Makefile,v 1.4 2005/01/25 06:57:45 matthieu Exp $
---- Makefile.orig Sat Dec 28 15:38:05 2002
-+++ Makefile Sun Jan  9 10:26:36 2005
-@@ -2,12 +2,12 @@
- # $Id: patch-Makefile,v 1.4 2005/01/25 06:57:45 matthieu Exp $
+
+Index: Makefile
+--- Makefile.orig
++++ Makefile
+@@ -3,11 +3,11 @@
  #
 
 -BINDIR = /usr/local/bin
Index: patches/patch-init_c
===================================================================
RCS file: patches/patch-init_c
diff -N patches/patch-init_c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-init_c 23 Feb 2021 21:58:03 -0000
@@ -0,0 +1,33 @@
+$OpenBSD$
+
+Fix for -fno-common
+
+Index: init.c
+--- init.c.orig
++++ init.c
+@@ -34,6 +34,25 @@
+
+ int isspace(int);
+
++int pgflag;
++const char *bechar;
++const char *cfchar;
++const char *puchar;
++const char *pachar;
++const char *plchar;
++const char *ppchar;
++const char *htchar;
++const char *ftchar;
++int csflag;
++int lrflag;
++int rrflag;
++int clsflag;
++unsigned int stnum;
++unsigned int rsnum;
++unsigned int rsrnum;
++unsigned int epnum;
++unsigned int rpnum;
++
+ void
+ init(FILE *conf) {
+ char buff[1024];
Index: patches/patch-sma_c
===================================================================
RCS file: patches/patch-sma_c
diff -N patches/patch-sma_c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-sma_c 23 Feb 2021 21:58:00 -0000
@@ -0,0 +1,115 @@
+$OpenBSD$
+
+Fix for -fno-common
+
+Index: sma.c
+--- sma.c.orig
++++ sma.c
+@@ -34,6 +34,107 @@ extern int sma_optind;
+
+ #include "sma.h"
+
++/* pointer to program name: */
++char *pname;
++
++/* current time: */
++time_t tval;
++struct tm *curr;
++struct tm tp;
++
++/*
++ * Command line arguments
++ * xflag sets argument x on/off
++ * xchar is pointer to argument string if x requires an argument
++ */
++int aflag;
++int cflag;
++int dflag;
++int hflag;
++int nflag;
++int sflag;
++int qflag;
++int lflag;
++int vflag;
++int wflag;
++unsigned int lnum;
++unsigned int lrnum;
++int rflag;
++unsigned int rnum;
++unsigned int rrnum;
++int bflag;
++const char *bchar;
++int fflag;
++const char *fchar;
++int oflag;
++const char *ochar;
++int Lflag;
++const char *Lchar;
++int Oflag;
++const char *Ochar;
++int Dflag;
++const char *Dchar;
++int pflag;
++int iflag;
++int tflag;
++int dcaddrflag;
++const char *tchar;
++
++/* Configuration file parameters: */
++int Hflag;
++const char *Hchar;
++int Cflag;
++const char *Cchar;
++int Fflag;
++const char *tbchar;
++
++/* Start and end times: */
++char *sstring;
++char *estring;
++char *tstring;
++time_t sstime;
++time_t eetime;
++int syear;
++int smonth;
++int sday;
++int shour;
++int sminute;
++int ssecond;
++int eyear;
++int emonth;
++int eday;
++int ehour;
++int eminute;
++int esecond;
++
++/* hash table sizes: */
++int asize;
++int rsize;
++char *hsstring;
++char *hastring;
++char *hrstring;
++
++/* Filters */
++char *sef;
++char *ref;
++char *srf;
++char *rrf;
++#ifdef USE_REGEXP
++regex_t csef;
++regex_t cref;
++regex_t csrf;
++regex_t crrf;
++#endif
++
++/* Output file handle: */
++FILE *ofp;
++
++/* total number of hosts: */
++int hosts;
++
++/* inital host structure: */
++struct host first;
++
+ int
+ main(int argc, char **argv) {
+ FILE *fp = NULL;
Index: patches/patch-sma_h
===================================================================
RCS file: patches/patch-sma_h
diff -N patches/patch-sma_h
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-sma_h 23 Feb 2021 21:58:24 -0000
@@ -0,0 +1,229 @@
+$OpenBSD$
+
+Fix for -fno-common
+
+Index: sma.h
+--- sma.h.orig
++++ sma.h
+@@ -55,102 +55,102 @@
+ #define FORMAT_CLOG 5
+
+ /* pointer to program name: */
+-char *pname;
++extern char *pname;
+
+ /* current time: */
+-time_t tval;
+-struct tm *curr;
+-struct tm tp;
++extern time_t tval;
++extern struct tm *curr;
++extern struct tm tp;
+
+ /*
+  * Command line arguments
+  * xflag sets argument x on/off
+  * xchar is pointer to argument string if x requires an argument
+  */
+-int aflag;
+-int cflag;
+-int dflag;
+-int hflag;
+-int nflag;
+-int sflag;
+-int qflag;
+-int lflag;
+-int vflag;
+-int wflag;
+-unsigned int lnum;
+-unsigned int lrnum;
+-int rflag;
+-unsigned int rnum;
+-unsigned int rrnum;
+-int bflag;
+-const char *bchar;
+-int fflag;
+-const char *fchar;
+-int oflag;
+-const char *ochar;
+-int Lflag;
+-const char *Lchar;
+-int Oflag;
+-const char *Ochar;
+-int Dflag;
+-const char *Dchar;
+-int pflag;
+-int iflag;
+-int tflag;
+-int dcaddrflag;
+-const char *tchar;
++extern int aflag;
++extern int cflag;
++extern int dflag;
++extern int hflag;
++extern int nflag;
++extern int sflag;
++extern int qflag;
++extern int lflag;
++extern int vflag;
++extern int wflag;
++extern unsigned int lnum;
++extern unsigned int lrnum;
++extern int rflag;
++extern unsigned int rnum;
++extern unsigned int rrnum;
++extern int bflag;
++extern const char *bchar;
++extern int fflag;
++extern const char *fchar;
++extern int oflag;
++extern const char *ochar;
++extern int Lflag;
++extern const char *Lchar;
++extern int Oflag;
++extern const char *Ochar;
++extern int Dflag;
++extern const char *Dchar;
++extern int pflag;
++extern int iflag;
++extern int tflag;
++extern int dcaddrflag;
++extern const char *tchar;
+
+ /* Configuration file parameters: */
+-int Hflag;
+-const char *Hchar;
+-int Cflag;
+-const char *Cchar;
+-int Fflag;
+-const char *tbchar;
+-int pgflag;
+-const char *bechar;
+-const char *cfchar;
+-const char *puchar;
+-const char *pachar;
+-const char *plchar;
+-const char *ppchar;
+-const char *htchar;
+-const char *ftchar;
+-int csflag;
+-int lrflag;
+-int rrflag;
+-int clsflag;
+-unsigned int stnum;
+-unsigned int rsnum;
+-unsigned int rsrnum;
+-unsigned int epnum;
+-unsigned int rpnum;
++extern int Hflag;
++extern const char *Hchar;
++extern int Cflag;
++extern const char *Cchar;
++extern int Fflag;
++extern const char *tbchar;
++extern int pgflag;
++extern const char *bechar;
++extern const char *cfchar;
++extern const char *puchar;
++extern const char *pachar;
++extern const char *plchar;
++extern const char *ppchar;
++extern const char *htchar;
++extern const char *ftchar;
++extern int csflag;
++extern int lrflag;
++extern int rrflag;
++extern int clsflag;
++extern unsigned int stnum;
++extern unsigned int rsnum;
++extern unsigned int rsrnum;
++extern unsigned int epnum;
++extern unsigned int rpnum;
+
+ /* Start and end times: */
+-char *sstring;
+-char *estring;
+-char *tstring;
+-time_t sstime;
+-time_t eetime;
+-int syear;
+-int smonth;
+-int sday;
+-int shour;
+-int sminute;
+-int ssecond;
+-int eyear;
+-int emonth;
+-int eday;
+-int ehour;
+-int eminute;
+-int esecond;
++extern char *sstring;
++extern char *estring;
++extern char *tstring;
++extern time_t sstime;
++extern time_t eetime;
++extern int syear;
++extern int smonth;
++extern int sday;
++extern int shour;
++extern int sminute;
++extern int ssecond;
++extern int eyear;
++extern int emonth;
++extern int eday;
++extern int ehour;
++extern int eminute;
++extern int esecond;
+
+ /* hash table sizes: */
+-int asize;
+-int rsize;
+-char *hsstring;
+-char *hastring;
+-char *hrstring;
++extern int asize;
++extern int rsize;
++extern char *hsstring;
++extern char *hastring;
++extern char *hrstring;
+
+ /* sender structure: */
+ struct in {
+@@ -456,25 +456,25 @@ struct host {
+ };
+
+ /* Filters */
+-char *sef;
+-char *ref;
+-char *srf;
+-char *rrf;
++extern char *sef;
++extern char *ref;
++extern char *srf;
++extern char *rrf;
+ #ifdef USE_REGEXP
+-regex_t csef;
+-regex_t cref;
+-regex_t csrf;
+-regex_t crrf;
++extern regex_t csef;
++extern regex_t cref;
++extern regex_t csrf;
++extern regex_t crrf;
+ #endif
+
+ /* Output file handle: */
+-FILE *ofp;
++extern FILE *ofp;
+
+ /* total number of hosts: */
+-int hosts;
++extern int hosts;
+
+ /* inital host structure: */
+-struct host first;
++extern struct host first;
+
+ /* function definitions: */
+ void usage(void);
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/mail/sma/pkg/PLIST,v
retrieving revision 1.3
diff -u -p -r1.3 PLIST
--- pkg/PLIST 9 Aug 2004 14:34:38 -0000 1.3
+++ pkg/PLIST 23 Feb 2021 22:00:48 -0000
@@ -1,5 +1,5 @@
 @comment $OpenBSD: PLIST,v 1.3 2004/08/09 14:34:38 xsa Exp $
-bin/sma
+@bin bin/sma
 @man man/man8/sma.8
 share/doc/sma/
 share/doc/sma/README

Reply | Threaded
Open this post in threaded view
|

Re: mail/sma: -fno-common fix

Greg Steuck-5
Theo Buehler <[hidden email]> writes:

> This is straightforward. I don't have a sendmail setup with logs to test
> this against...
>
> FreeBSD moved all variable definitions from sma.h to sma.c and externed
> them in the header. I decided to move a few of them into init.c since
> they're allocated/initialized there (usually via strdup). They're never
> freed.

OK gnezdo

>
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/mail/sma/Makefile,v
> retrieving revision 1.10
> diff -u -p -r1.10 Makefile
> --- Makefile 12 Jul 2019 20:47:38 -0000 1.10
> +++ Makefile 23 Feb 2021 21:58:56 -0000
> @@ -4,7 +4,7 @@ COMMENT= Sendmail Log Analysis Report
>  
>  VERSION= 1.4
>  DISTNAME= sma-${VERSION}
> -REVISION= 1
> +REVISION= 2
>  CATEGORIES= mail
>  
>  HOMEPAGE= http://www.klake.org/sma/
> Index: patches/patch-Makefile
> ===================================================================
> RCS file: /cvs/ports/mail/sma/patches/patch-Makefile,v
> retrieving revision 1.4
> diff -u -p -r1.4 patch-Makefile
> --- patches/patch-Makefile 25 Jan 2005 06:57:45 -0000 1.4
> +++ patches/patch-Makefile 23 Feb 2021 22:00:10 -0000
> @@ -1,8 +1,9 @@
>  $OpenBSD: patch-Makefile,v 1.4 2005/01/25 06:57:45 matthieu Exp $
> ---- Makefile.orig Sat Dec 28 15:38:05 2002
> -+++ Makefile Sun Jan  9 10:26:36 2005
> -@@ -2,12 +2,12 @@
> - # $Id: patch-Makefile,v 1.4 2005/01/25 06:57:45 matthieu Exp $
> +
> +Index: Makefile
> +--- Makefile.orig
> ++++ Makefile
> +@@ -3,11 +3,11 @@
>   #
>  
>  -BINDIR = /usr/local/bin
> Index: patches/patch-init_c
> ===================================================================
> RCS file: patches/patch-init_c
> diff -N patches/patch-init_c
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-init_c 23 Feb 2021 21:58:03 -0000
> @@ -0,0 +1,33 @@
> +$OpenBSD$
> +
> +Fix for -fno-common
> +
> +Index: init.c
> +--- init.c.orig
> ++++ init.c
> +@@ -34,6 +34,25 @@
> +
> + int isspace(int);
> +
> ++int pgflag;
> ++const char *bechar;
> ++const char *cfchar;
> ++const char *puchar;
> ++const char *pachar;
> ++const char *plchar;
> ++const char *ppchar;
> ++const char *htchar;
> ++const char *ftchar;
> ++int csflag;
> ++int lrflag;
> ++int rrflag;
> ++int clsflag;
> ++unsigned int stnum;
> ++unsigned int rsnum;
> ++unsigned int rsrnum;
> ++unsigned int epnum;
> ++unsigned int rpnum;
> ++
> + void
> + init(FILE *conf) {
> + char buff[1024];
> Index: patches/patch-sma_c
> ===================================================================
> RCS file: patches/patch-sma_c
> diff -N patches/patch-sma_c
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-sma_c 23 Feb 2021 21:58:00 -0000
> @@ -0,0 +1,115 @@
> +$OpenBSD$
> +
> +Fix for -fno-common
> +
> +Index: sma.c
> +--- sma.c.orig
> ++++ sma.c
> +@@ -34,6 +34,107 @@ extern int sma_optind;
> +
> + #include "sma.h"
> +
> ++/* pointer to program name: */
> ++char *pname;
> ++
> ++/* current time: */
> ++time_t tval;
> ++struct tm *curr;
> ++struct tm tp;
> ++
> ++/*
> ++ * Command line arguments
> ++ * xflag sets argument x on/off
> ++ * xchar is pointer to argument string if x requires an argument
> ++ */
> ++int aflag;
> ++int cflag;
> ++int dflag;
> ++int hflag;
> ++int nflag;
> ++int sflag;
> ++int qflag;
> ++int lflag;
> ++int vflag;
> ++int wflag;
> ++unsigned int lnum;
> ++unsigned int lrnum;
> ++int rflag;
> ++unsigned int rnum;
> ++unsigned int rrnum;
> ++int bflag;
> ++const char *bchar;
> ++int fflag;
> ++const char *fchar;
> ++int oflag;
> ++const char *ochar;
> ++int Lflag;
> ++const char *Lchar;
> ++int Oflag;
> ++const char *Ochar;
> ++int Dflag;
> ++const char *Dchar;
> ++int pflag;
> ++int iflag;
> ++int tflag;
> ++int dcaddrflag;
> ++const char *tchar;
> ++
> ++/* Configuration file parameters: */
> ++int Hflag;
> ++const char *Hchar;
> ++int Cflag;
> ++const char *Cchar;
> ++int Fflag;
> ++const char *tbchar;
> ++
> ++/* Start and end times: */
> ++char *sstring;
> ++char *estring;
> ++char *tstring;
> ++time_t sstime;
> ++time_t eetime;
> ++int syear;
> ++int smonth;
> ++int sday;
> ++int shour;
> ++int sminute;
> ++int ssecond;
> ++int eyear;
> ++int emonth;
> ++int eday;
> ++int ehour;
> ++int eminute;
> ++int esecond;
> ++
> ++/* hash table sizes: */
> ++int asize;
> ++int rsize;
> ++char *hsstring;
> ++char *hastring;
> ++char *hrstring;
> ++
> ++/* Filters */
> ++char *sef;
> ++char *ref;
> ++char *srf;
> ++char *rrf;
> ++#ifdef USE_REGEXP
> ++regex_t csef;
> ++regex_t cref;
> ++regex_t csrf;
> ++regex_t crrf;
> ++#endif
> ++
> ++/* Output file handle: */
> ++FILE *ofp;
> ++
> ++/* total number of hosts: */
> ++int hosts;
> ++
> ++/* inital host structure: */
> ++struct host first;
> ++
> + int
> + main(int argc, char **argv) {
> + FILE *fp = NULL;
> Index: patches/patch-sma_h
> ===================================================================
> RCS file: patches/patch-sma_h
> diff -N patches/patch-sma_h
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-sma_h 23 Feb 2021 21:58:24 -0000
> @@ -0,0 +1,229 @@
> +$OpenBSD$
> +
> +Fix for -fno-common
> +
> +Index: sma.h
> +--- sma.h.orig
> ++++ sma.h
> +@@ -55,102 +55,102 @@
> + #define FORMAT_CLOG 5
> +
> + /* pointer to program name: */
> +-char *pname;
> ++extern char *pname;
> +
> + /* current time: */
> +-time_t tval;
> +-struct tm *curr;
> +-struct tm tp;
> ++extern time_t tval;
> ++extern struct tm *curr;
> ++extern struct tm tp;
> +
> + /*
> +  * Command line arguments
> +  * xflag sets argument x on/off
> +  * xchar is pointer to argument string if x requires an argument
> +  */
> +-int aflag;
> +-int cflag;
> +-int dflag;
> +-int hflag;
> +-int nflag;
> +-int sflag;
> +-int qflag;
> +-int lflag;
> +-int vflag;
> +-int wflag;
> +-unsigned int lnum;
> +-unsigned int lrnum;
> +-int rflag;
> +-unsigned int rnum;
> +-unsigned int rrnum;
> +-int bflag;
> +-const char *bchar;
> +-int fflag;
> +-const char *fchar;
> +-int oflag;
> +-const char *ochar;
> +-int Lflag;
> +-const char *Lchar;
> +-int Oflag;
> +-const char *Ochar;
> +-int Dflag;
> +-const char *Dchar;
> +-int pflag;
> +-int iflag;
> +-int tflag;
> +-int dcaddrflag;
> +-const char *tchar;
> ++extern int aflag;
> ++extern int cflag;
> ++extern int dflag;
> ++extern int hflag;
> ++extern int nflag;
> ++extern int sflag;
> ++extern int qflag;
> ++extern int lflag;
> ++extern int vflag;
> ++extern int wflag;
> ++extern unsigned int lnum;
> ++extern unsigned int lrnum;
> ++extern int rflag;
> ++extern unsigned int rnum;
> ++extern unsigned int rrnum;
> ++extern int bflag;
> ++extern const char *bchar;
> ++extern int fflag;
> ++extern const char *fchar;
> ++extern int oflag;
> ++extern const char *ochar;
> ++extern int Lflag;
> ++extern const char *Lchar;
> ++extern int Oflag;
> ++extern const char *Ochar;
> ++extern int Dflag;
> ++extern const char *Dchar;
> ++extern int pflag;
> ++extern int iflag;
> ++extern int tflag;
> ++extern int dcaddrflag;
> ++extern const char *tchar;
> +
> + /* Configuration file parameters: */
> +-int Hflag;
> +-const char *Hchar;
> +-int Cflag;
> +-const char *Cchar;
> +-int Fflag;
> +-const char *tbchar;
> +-int pgflag;
> +-const char *bechar;
> +-const char *cfchar;
> +-const char *puchar;
> +-const char *pachar;
> +-const char *plchar;
> +-const char *ppchar;
> +-const char *htchar;
> +-const char *ftchar;
> +-int csflag;
> +-int lrflag;
> +-int rrflag;
> +-int clsflag;
> +-unsigned int stnum;
> +-unsigned int rsnum;
> +-unsigned int rsrnum;
> +-unsigned int epnum;
> +-unsigned int rpnum;
> ++extern int Hflag;
> ++extern const char *Hchar;
> ++extern int Cflag;
> ++extern const char *Cchar;
> ++extern int Fflag;
> ++extern const char *tbchar;
> ++extern int pgflag;
> ++extern const char *bechar;
> ++extern const char *cfchar;
> ++extern const char *puchar;
> ++extern const char *pachar;
> ++extern const char *plchar;
> ++extern const char *ppchar;
> ++extern const char *htchar;
> ++extern const char *ftchar;
> ++extern int csflag;
> ++extern int lrflag;
> ++extern int rrflag;
> ++extern int clsflag;
> ++extern unsigned int stnum;
> ++extern unsigned int rsnum;
> ++extern unsigned int rsrnum;
> ++extern unsigned int epnum;
> ++extern unsigned int rpnum;
> +
> + /* Start and end times: */
> +-char *sstring;
> +-char *estring;
> +-char *tstring;
> +-time_t sstime;
> +-time_t eetime;
> +-int syear;
> +-int smonth;
> +-int sday;
> +-int shour;
> +-int sminute;
> +-int ssecond;
> +-int eyear;
> +-int emonth;
> +-int eday;
> +-int ehour;
> +-int eminute;
> +-int esecond;
> ++extern char *sstring;
> ++extern char *estring;
> ++extern char *tstring;
> ++extern time_t sstime;
> ++extern time_t eetime;
> ++extern int syear;
> ++extern int smonth;
> ++extern int sday;
> ++extern int shour;
> ++extern int sminute;
> ++extern int ssecond;
> ++extern int eyear;
> ++extern int emonth;
> ++extern int eday;
> ++extern int ehour;
> ++extern int eminute;
> ++extern int esecond;
> +
> + /* hash table sizes: */
> +-int asize;
> +-int rsize;
> +-char *hsstring;
> +-char *hastring;
> +-char *hrstring;
> ++extern int asize;
> ++extern int rsize;
> ++extern char *hsstring;
> ++extern char *hastring;
> ++extern char *hrstring;
> +
> + /* sender structure: */
> + struct in {
> +@@ -456,25 +456,25 @@ struct host {
> + };
> +
> + /* Filters */
> +-char *sef;
> +-char *ref;
> +-char *srf;
> +-char *rrf;
> ++extern char *sef;
> ++extern char *ref;
> ++extern char *srf;
> ++extern char *rrf;
> + #ifdef USE_REGEXP
> +-regex_t csef;
> +-regex_t cref;
> +-regex_t csrf;
> +-regex_t crrf;
> ++extern regex_t csef;
> ++extern regex_t cref;
> ++extern regex_t csrf;
> ++extern regex_t crrf;
> + #endif
> +
> + /* Output file handle: */
> +-FILE *ofp;
> ++extern FILE *ofp;
> +
> + /* total number of hosts: */
> +-int hosts;
> ++extern int hosts;
> +
> + /* inital host structure: */
> +-struct host first;
> ++extern struct host first;
> +
> + /* function definitions: */
> + void usage(void);
> Index: pkg/PLIST
> ===================================================================
> RCS file: /cvs/ports/mail/sma/pkg/PLIST,v
> retrieving revision 1.3
> diff -u -p -r1.3 PLIST
> --- pkg/PLIST 9 Aug 2004 14:34:38 -0000 1.3
> +++ pkg/PLIST 23 Feb 2021 22:00:48 -0000
> @@ -1,5 +1,5 @@
>  @comment $OpenBSD: PLIST,v 1.3 2004/08/09 14:34:38 xsa Exp $
> -bin/sma
> +@bin bin/sma
>  @man man/man8/sma.8
>  share/doc/sma/
>  share/doc/sma/README