[54] in GSSAPI Development

home help back first fref pref prev next nref lref last post

Re: Use of void *

daemon@ATHENA.MIT.EDU (Theodore Ts'o)
Wed Jun 5 14:45:28 1991

Date: Wed, 5 Jun 91 14:24:14 -0400
From: tytso@ATHENA.MIT.EDU (Theodore Ts'o)
To: "John Wray, Secure Systems Development, DTN 226-6106 04-Jun-1991
Cc: gssapi-dev@ATHENA.MIT.EDU
In-Reply-To: John Wray, Secure Systems Development, DTN 226-6106  04-Jun-1991 0907's message of Tue, 4 Jun 91 06:23:10 PDT,
Reply-To: tytso@ATHENA.MIT.EDU

   Date: Tue, 4 Jun 91 06:23:10 PDT
   From: "John Wray, Secure Systems Development, DTN 226-6106  04-Jun-1991 0907" <wray@ultra.enet.dec.com>

   >The C Bindings Spec should also specifically say that the programmer
   >must assume that gss_pointer might be a void *, so that things like
   >
   >  input_chan_bindings->acceptor_address.value[0] = ((to_addr & 0xff000000) >> 24);
   >			(from fcmd.c, approximately line 270)
   >
   >are explicitly disallowed.  (Arithmetic using void pointers is extremely
   >bad form.)

   Where's the pointer arithmetic in the SPX code? Is to_addr a pointer?

The problem was with the acceptor_address.value[0].  Apparently SPX was
declaring the address as char * instead of a void *.  No big deal; I
think making it be a gss_pointer type is the right way to go, though.

   One other point.  gss_init_sec_context and gss_accept_sec_context
   return a flag saying whether confidentiality services will be
				^^^^^^^^^^^^^^^
   available from the context via the seal and unseal services.  I'd
   like to propose that we add an additional flag saying whether
   per-message integrity services are available too.  I'd propose
   calling this flag GSS_C_INTEG_FLAG, and adding it to the ret_flags 
   parameter of both context establishment calls.

You mean "integrity services", right?  That sounds fine to me.

						- Ted

home help back first fref pref prev next nref lref last post