How to extend kadmin
Ken Raeburn
raeburn at MIT.EDU
Tue Oct 27 13:36:45 EDT 2009
On Oct 27, 2009, at 11:59, Nicolas Williams wrote:
>> * However, Nico notes that the way we marshal krb5_principal is
>> problematic for using rpcgen. I looked into this myself: we call
>> krb5_unparse_name on encode and krb5_parse_name on decode. Does
>> rpcgen
>> support app-defined encoding functions for particular fields? If
>> not, I
>> am doubtful that we will ever be in the position of being able to use
>> a .x file to define the kadmin protocol without starting over.
>
> No, you can't, but what you could do is declare the kadm5 krb5 princ
> data type to be "opaque" and then do the parsing/unparsing at the
> application layer.
I think you can leave the type undefined to rpcgen and use something
like:
#ifdef RPC_XDR
%bool_t xdr_foo(XDR *xdrs, foo *fooptr)
%{
% [...]
%}
#endif
So you can supply an encoder/decoder (and typedef, etc) for an
individual type, without having to preprocess it all at the
application layer before calling into the RPC code.
Ken
More information about the krbdev
mailing list