ping

On Sep 18 10:47:16, s...@spacehopper.org wrote:
> That looks better to me but I am swamped with the sqlite3 move and don't
> have time to test at the moment.
> 
> 
> > On Sep 14 16:50:43, h...@stare.cz wrote:
> > > On Sep 13 17:50:12, danj+o...@chown.me wrote:
> > > > And can you add # uses pledge() just before WANTLIB please?
> > > 
> > > OK.
> > > 
> > > On Sep 13 20:16:57, s...@spacehopper.org wrote:
> > > > On 2016/09/13 13:03, Stuart Henderson wrote:
> > > > > 
> > > > > We also often defer pledge until after option parsing, when we have
> > > > > a better idea of what is actually needed: for toast(/untoast/tcat)
> > > > > this would allow a more accurate pledge because we'll then know
> > > > > whether or not it needs filesystem access.
> > > 
> > > See below for a finer pledge():
> > > 
> > > * initially, restrict to "stdio rpath wpath cpath fattr"
> > > * if we are tcat(1), restrict to "stdio rpath"
> > > * if we are just a filter, restrict to "stdio"
> > > 
> > > The "fattr" is for preserving mtime.
> > > 
> > > The following works with these restrictions:
> > > 
> > >  $ toast file
> > >  $ tcat file.gsm > file
> > >  $ untoast file.gsm
> > >  $ toast < file > file.gsm
> > >  $ untoast < file.gsm > file
> > > 
> > >   Jan
> > > 
> > > 
> > > Index: Makefile
> > > ===================================================================
> > > RCS file: /cvs/ports/audio/gsm/Makefile,v
> > > retrieving revision 1.45
> > > diff -u -p -r1.45 Makefile
> > > --- Makefile      13 Sep 2016 11:33:28 -0000      1.45
> > > +++ Makefile      14 Sep 2016 14:48:53 -0000
> > > @@ -3,6 +3,7 @@
> > >  COMMENT= GSM audio codec library and converter
> > >  
> > >  DISTNAME=        gsm-1.0.15
> > > +REVISION=        0
> > >  WRKDIST= ${WRKDIR}/gsm-1.0-pl15
> > >  
> > >  SHARED_LIBS=     gsm     1.0
> > > @@ -16,6 +17,7 @@ MAINTAINER=     Stuart Henderson <sthen@open
> > >  # ISC-like
> > >  PERMIT_PACKAGE_CDROM=    Yes
> > >  
> > > +# uses pledge(2)
> > >  WANTLIB += c
> > >  
> > >  MASTER_SITES=    ${HOMEPAGE}
> > > Index: patches/patch-src_toast_c
> > > ===================================================================
> > > RCS file: patches/patch-src_toast_c
> > > diff -N patches/patch-src_toast_c
> > > --- /dev/null     1 Jan 1970 00:00:00 -0000
> > > +++ patches/patch-src_toast_c     14 Sep 2016 14:48:53 -0000
> > > @@ -0,0 +1,47 @@
> > > +$OpenBSD$
> > > +--- src/toast.c.orig     Wed Apr 26 21:14:26 2006
> > > ++++ src/toast.c  Wed Sep 14 14:14:29 2016
> > > +@@ -129,9 +129,22 @@ static void parse_argv0 P1((av0), char * av0 )
> > > +          *  and decode as well.
> > > +          */
> > > + 
> > > +-        if (!strncmp(av0, "un", 2)) f_decode = 1;
> > > ++        if (pledge("stdio rpath wpath cpath fattr", NULL) == -1) {
> > > ++                perror("pledge");
> > > ++                exit(1);
> > > ++        }
> > > ++
> > > ++        if (!strncmp(av0, "un", 2)) {
> > > ++                f_decode = 1;
> > > ++        }
> > > +         if (  (l = strlen(av0)) >= 3 /* strlen("cat") */
> > > +-           && !strcmp( av0 + l - 3, "cat" )) f_cat = f_decode = 1;
> > > ++           && !strcmp( av0 + l - 3, "cat" )) {
> > > ++                if (pledge("stdio rpath", NULL) == -1) {
> > > ++                        perror("pledge");
> > > ++                        exit(1);
> > > ++                }
> > > ++                f_cat = f_decode = 1;
> > > ++        }
> > > + }
> > > + 
> > > + 
> > > +@@ -793,8 +806,16 @@ int main P2((ac, av), int ac, char **av)
> > > + 
> > > +         catch_signals(onintr);
> > > + 
> > > +-        if (ac <= 0) process( (char *)0 );
> > > +-        else while (ac--) process( *av++ );
> > > ++        if (ac <= 0) {
> > > ++                if (pledge("stdio", NULL) == -1) {
> > > ++                        perror("pledge");
> > > ++                        exit(1);
> > > ++                }
> > > ++                process( (char *)0 );
> > > ++        } else {
> > > ++                while (ac--)
> > > ++                        process( *av++ );
> > > ++        }
> > > + 
> > > +         exit(0);
> > > + }
> > 

Reply via email to