Subject: Re: CVS commit: basesrc/usr.bin/rpcgen
To: Ben Harris <bjh21@netbsd.org>
From: Christos Zoulas <christos@zoulas.com>
List: tech-toolchain
Date: 02/05/2002 21:16:18
On Feb 6, 12:37am, bjh21@netbsd.org (Ben Harris) wrote:
-- Subject: Re: CVS commit: basesrc/usr.bin/rpcgen

| In article <20020205220543.4DD06B004@cvs.netbsd.org> you write:
| >Modified Files:
| >	basesrc/usr.bin/rpcgen: rpc_cout.c
| >
| >Log Message:
| >- Deal with variable size enums, by generating assignment to an enum_t variable.
| 
| I believe this part of the change is incorrect.  For instance, it generates:
| 
| bool_t
| xdr_klm_stats(XDR *xdrs, klm_stats *objp)
| {
|         {
|                 enum_t et = (enum_t)*objp;
|                 if (!xdr_enum(xdrs, &et))
|                         return (FALSE);
|         }
|         return (TRUE);
| }
| 
| If *xdrs is in the XDR_DECODE direction, I think it should change the value
| of *objp, which this clearly doesn't do at present.  It looks like
| xdr_char() does the same, but with the equivalent of "*objp = et" at the
| end, so that's probably reasonable.

Thanks, I'll commit the fix.

christos