// -*-c++-*-
/* This file was automatically generated by rpcc. */

#include "crypt_prot.h"

#ifdef MAINTAINER

void
print__srp_hash (const void *_objp, const strbuf *_sbp, int _recdepth,
                 const char *_name, const char *_prefix)
{
  rpc_print (_sbp ? *_sbp : warnx, *static_cast<const _srp_hash *> (_objp),
             _recdepth, _name, _prefix);
}
void
dump__srp_hash (const _srp_hash *objp)
{
  rpc_print (warnx, *objp);
}

const strbuf &
rpc_print (const strbuf &sb, const srp_msg1 &obj, int recdepth,
           const char *name, const char *prefix)
{
  if (name) {
    if (prefix)
      sb << prefix;
    sb << "srp_msg1 " << name << " = ";
  };
  const char *sep;
  str npref;
  if (prefix) {
    npref = strbuf ("%s  ", prefix);
    sep = "";
    sb << "{\n";
  }
  else {
    sep = ", ";
    sb << "{ ";
  }
  rpc_print (sb, obj.salt, recdepth, "salt", npref);
  sb << sep;
  rpc_print (sb, obj.N, recdepth, "N", npref);
  sb << sep;
  rpc_print (sb, obj.g, recdepth, "g", npref);
  if (prefix)
    sb << prefix << "};\n";
  else
    sb << " }";
  return sb;
}
void
print_srp_msg1 (const void *_objp, const strbuf *_sbp, int _recdepth,
                const char *_name, const char *_prefix)
{
  rpc_print (_sbp ? *_sbp : warnx, *static_cast<const srp_msg1 *> (_objp),
             _recdepth, _name, _prefix);
}
void
dump_srp_msg1 (const srp_msg1 *objp)
{
  rpc_print (warnx, *objp);
}

const strbuf &
rpc_print (const strbuf &sb, const srp_msg2 &obj, int recdepth,
           const char *name, const char *prefix)
{
  if (name) {
    if (prefix)
      sb << prefix;
    sb << "srp_msg2 " << name << " = ";
  };
  const char *sep;
  str npref;
  if (prefix) {
    npref = strbuf ("%s  ", prefix);
    sep = "";
    sb << "{\n";
  }
  else {
    sep = ", ";
    sb << "{ ";
  }
  rpc_print (sb, obj.A, recdepth, "A", npref);
  if (prefix)
    sb << prefix << "};\n";
  else
    sb << " }";
  return sb;
}
void
print_srp_msg2 (const void *_objp, const strbuf *_sbp, int _recdepth,
                const char *_name, const char *_prefix)
{
  rpc_print (_sbp ? *_sbp : warnx, *static_cast<const srp_msg2 *> (_objp),
             _recdepth, _name, _prefix);
}
void
dump_srp_msg2 (const srp_msg2 *objp)
{
  rpc_print (warnx, *objp);
}

const strbuf &
rpc_print (const strbuf &sb, const srp_msg3 &obj, int recdepth,
           const char *name, const char *prefix)
{
  if (name) {
    if (prefix)
      sb << prefix;
    sb << "srp_msg3 " << name << " = ";
  };
  const char *sep;
  str npref;
  if (prefix) {
    npref = strbuf ("%s  ", prefix);
    sep = "";
    sb << "{\n";
  }
  else {
    sep = ", ";
    sb << "{ ";
  }
  rpc_print (sb, obj.B, recdepth, "B", npref);
  sb << sep;
  rpc_print (sb, obj.u, recdepth, "u", npref);
  if (prefix)
    sb << prefix << "};\n";
  else
    sb << " }";
  return sb;
}
void
print_srp_msg3 (const void *_objp, const strbuf *_sbp, int _recdepth,
                const char *_name, const char *_prefix)
{
  rpc_print (_sbp ? *_sbp : warnx, *static_cast<const srp_msg3 *> (_objp),
             _recdepth, _name, _prefix);
}
void
dump_srp_msg3 (const srp_msg3 *objp)
{
  rpc_print (warnx, *objp);
}

const strbuf &
rpc_print (const strbuf &sb, const srp_msg4_src &obj, int recdepth,
           const char *name, const char *prefix)
{
  if (name) {
    if (prefix)
      sb << prefix;
    sb << "srp_msg4_src " << name << " = ";
  };
  const char *sep;
  str npref;
  if (prefix) {
    npref = strbuf ("%s  ", prefix);
    sep = "";
    sb << "{\n";
  }
  else {
    sep = ", ";
    sb << "{ ";
  }
  rpc_print (sb, obj.sessid, recdepth, "sessid", npref);
  sb << sep;
  rpc_print (sb, obj.N, recdepth, "N", npref);
  sb << sep;
  rpc_print (sb, obj.g, recdepth, "g", npref);
  sb << sep;
  rpc_print (sb, obj.user, recdepth, "user", npref);
  sb << sep;
  rpc_print (sb, obj.salt, recdepth, "salt", npref);
  sb << sep;
  rpc_print (sb, obj.A, recdepth, "A", npref);
  sb << sep;
  rpc_print (sb, obj.B, recdepth, "B", npref);
  sb << sep;
  rpc_print (sb, obj.S, recdepth, "S", npref);
  if (prefix)
    sb << prefix << "};\n";
  else
    sb << " }";
  return sb;
}
void
print_srp_msg4_src (const void *_objp, const strbuf *_sbp, int _recdepth,
                    const char *_name, const char *_prefix)
{
  rpc_print (_sbp ? *_sbp : warnx, *static_cast<const srp_msg4_src *> (_objp),
             _recdepth, _name, _prefix);
}
void
dump_srp_msg4_src (const srp_msg4_src *objp)
{
  rpc_print (warnx, *objp);
}

const strbuf &
rpc_print (const strbuf &sb, const srp_msg5_src &obj, int recdepth,
           const char *name, const char *prefix)
{
  if (name) {
    if (prefix)
      sb << prefix;
    sb << "srp_msg5_src " << name << " = ";
  };
  const char *sep;
  str npref;
  if (prefix) {
    npref = strbuf ("%s  ", prefix);
    sep = "";
    sb << "{\n";
  }
  else {
    sep = ", ";
    sb << "{ ";
  }
  rpc_print (sb, obj.sessid, recdepth, "sessid", npref);
  sb << sep;
  rpc_print (sb, obj.A, recdepth, "A", npref);
  sb << sep;
  rpc_print (sb, obj.M, recdepth, "M", npref);
  sb << sep;
  rpc_print (sb, obj.S, recdepth, "S", npref);
  if (prefix)
    sb << prefix << "};\n";
  else
    sb << " }";
  return sb;
}
void
print_srp_msg5_src (const void *_objp, const strbuf *_sbp, int _recdepth,
                    const char *_name, const char *_prefix)
{
  rpc_print (_sbp ? *_sbp : warnx, *static_cast<const srp_msg5_src *> (_objp),
             _recdepth, _name, _prefix);
}
void
dump_srp_msg5_src (const srp_msg5_src *objp)
{
  rpc_print (warnx, *objp);
}

#endif /* MAINTAINER*/
void *
_srp_hash_alloc ()
{
  return New _srp_hash;
}
bool_t
xdr__srp_hash (XDR *xdrs, void *objp)
{
  switch (xdrs->x_op) {
  case XDR_ENCODE:
  case XDR_DECODE:
    return rpc_traverse (xdrs, *static_cast<_srp_hash *> (objp));
  case XDR_FREE:
    rpc_destruct (static_cast<_srp_hash *> (objp));
    return true;
  default:
    panic ("invalid xdr operation %d\n", xdrs->x_op);
  }
}

void *
srp_msg1_alloc ()
{
  return New srp_msg1;
}
bool_t
xdr_srp_msg1 (XDR *xdrs, void *objp)
{
  switch (xdrs->x_op) {
  case XDR_ENCODE:
  case XDR_DECODE:
    return rpc_traverse (xdrs, *static_cast<srp_msg1 *> (objp));
  case XDR_FREE:
    rpc_destruct (static_cast<srp_msg1 *> (objp));
    return true;
  default:
    panic ("invalid xdr operation %d\n", xdrs->x_op);
  }
}

void *
srp_msg2_alloc ()
{
  return New srp_msg2;
}
bool_t
xdr_srp_msg2 (XDR *xdrs, void *objp)
{
  switch (xdrs->x_op) {
  case XDR_ENCODE:
  case XDR_DECODE:
    return rpc_traverse (xdrs, *static_cast<srp_msg2 *> (objp));
  case XDR_FREE:
    rpc_destruct (static_cast<srp_msg2 *> (objp));
    return true;
  default:
    panic ("invalid xdr operation %d\n", xdrs->x_op);
  }
}

void *
srp_msg3_alloc ()
{
  return New srp_msg3;
}
bool_t
xdr_srp_msg3 (XDR *xdrs, void *objp)
{
  switch (xdrs->x_op) {
  case XDR_ENCODE:
  case XDR_DECODE:
    return rpc_traverse (xdrs, *static_cast<srp_msg3 *> (objp));
  case XDR_FREE:
    rpc_destruct (static_cast<srp_msg3 *> (objp));
    return true;
  default:
    panic ("invalid xdr operation %d\n", xdrs->x_op);
  }
}

void *
srp_msg4_src_alloc ()
{
  return New srp_msg4_src;
}
bool_t
xdr_srp_msg4_src (XDR *xdrs, void *objp)
{
  switch (xdrs->x_op) {
  case XDR_ENCODE:
  case XDR_DECODE:
    return rpc_traverse (xdrs, *static_cast<srp_msg4_src *> (objp));
  case XDR_FREE:
    rpc_destruct (static_cast<srp_msg4_src *> (objp));
    return true;
  default:
    panic ("invalid xdr operation %d\n", xdrs->x_op);
  }
}

void *
srp_msg5_src_alloc ()
{
  return New srp_msg5_src;
}
bool_t
xdr_srp_msg5_src (XDR *xdrs, void *objp)
{
  switch (xdrs->x_op) {
  case XDR_ENCODE:
  case XDR_DECODE:
    return rpc_traverse (xdrs, *static_cast<srp_msg5_src *> (objp));
  case XDR_FREE:
    rpc_destruct (static_cast<srp_msg5_src *> (objp));
    return true;
  default:
    panic ("invalid xdr operation %d\n", xdrs->x_op);
  }
}


