Date: Sat, 26 Jul 1997 12:57:42 -0700 From: Amancio Hasty <hasty@rah.star-gate.com> To: "Louis A. Mamakos" <louie@TransSys.COM> Cc: multimedia@FreeBSD.ORG Subject: Re: ftp://rah.star-gate.com/pub/guspnp12.tar.gz Message-ID: <199707261957.MAA10752@rah.star-gate.com> In-Reply-To: Your message of "Sat, 26 Jul 1997 15:54:01 EDT." <199707261954.PAA00871@whizzo.TransSys.COM>
next in thread | previous in thread | raw e-mail | index | archive | help
Most cool!! Tnks a lot for the fix! Amancio >From The Desk Of "Louis A. Mamakos" : > This is a multipart MIME message. > > --==_Exmh_20290887880 > Content-Type: text/plain; charset=us-ascii > > Ok, I made my change to soundcard.h, and now /usr/sbin/mixer can be > rebuilt with guspnp11 and it works! Attached is the diff. > > I can see how this broke now; the mistaken value for IOC_OUT is > currently interpreted by the kernel as IOC_VOID, which would result > in nothing being copied out. > > louie > > > --==_Exmh_20290887880 > Content-Type: text/plain ; name="diff1"; charset=us-ascii > Content-Description: diff1 > Content-Disposition: attachment; filename="diff1" > > --- soundcard.h.orig Mon Jul 21 21:39:40 1997 > +++ soundcard.h Sat Jul 26 15:46:26 1997 > @@ -83,26 +83,7 @@ > */ > > #ifndef _IOWR > -/* @(#)ioctlp.h */ > - > -/* Ioctl's have the command encoded in the lower word, > - * and the size of any in or out parameters in the upper > - * word. The high 2 bits of the upper word are used > - * to encode the in/out status of the parameter; for now > - * we restrict parameters to at most 128 bytes. > - */ > -/* #define IOCTYPE (0xff<<8) */ > -#define IOCPARM_MASK 0x7f /* parameters must be < 128 byt es */ > -#define IOC_VOID 0x00000000 /* no parameters */ > -#define IOC_OUT 0x20000000 /* copy out parameters */ > -#define IOC_IN 0x40000000 /* copy in parameters */ > -#define IOC_INOUT (IOC_IN|IOC_OUT) > -/* the 0x20000000 is so we can distinguish new ioctl's from old */ > -#define _IO(x,y) ((int)(IOC_VOID|(x<<8)|y)) > -#define _IOR(x,y,t) ((int)(IOC_OUT|((sizeof(t)&IOCPARM_MASK)<<16)|( x<<8)|y)) > -#define _IOW(x,y,t) ((int)(IOC_IN|((sizeof(t)&IOCPARM_MASK)<<16)|(x <<8)|y)) > -/* this should be _IORW, but stdio got there first */ > -#define _IOWR(x,y,t) ((int)(IOC_INOUT|((sizeof(t)&IOCPARM_MASK)<<16) |(x<<8)|y)) > +#include <sys/ioccom.h> > #endif /* !_IOWR */ > > #define SNDCTL_SEQ_RESET _IO ('Q', 0) > > --==_Exmh_20290887880-- > >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199707261957.MAA10752>