#pragma ident "%Z%%M% %I% %E% SMI"
/*
*
* Copyright 1995 by the Massachusetts Institute of Technology.
* All Rights Reserved.
*
* Export of this software from the United States of America may
* require a specific license from the United States Government.
* It is the responsibility of any person or organization contemplating
* export to obtain such a license before exporting.
*
* WITHIN THAT CONSTRAINT, permission to use, copy, modify, and
* distribute this software and its documentation for any purpose and
* without fee is hereby granted, provided that the above copyright
* notice appear in all copies and that both that copyright notice and
* this permission notice appear in supporting documentation, and that
* the name of M.I.T. not be used in advertising or publicity pertaining
* to distribution of the software without specific, written prior
* permission. Furthermore if you modify this software you must label
* your software as modified software and not distribute it in such a
* fashion that it might be confused with the original M.I.T. software.
* M.I.T. makes no representations about the suitability of
* this software for any purpose. It is provided "as is" without express
* or implied warranty.
*
*/
#include <k5-int.h>
#include <string.h>
#include <stdio.h>
#include <errno.h>
#include "kdb_xdr.h"
{
/* copy the new data first, so we can fail cleanly if malloc()
fails */
return(ENOMEM);
/* Find an existing entry of the specified type and point at
it, or NULL if not found */
break;
/* if necessary, chain a new record in the beginning and point at it */
if (!tl_data) {
== NULL) {
return(ENOMEM);
}
}
/* fill in the record */
if (tl_data->tl_data_contents)
return(0);
}
{
*ret_tl_data = *tl_data;
return(0);
}
}
/* if the requested record isn't found, return zero bytes.
if it ever means something to have a zero-length tl_data,
this code and its callers will have to be changed */
ret_tl_data->tl_data_length = 0;
return(0);
}
{
}
{
return(code);
*stamp = 0;
return(0);
}
return(0);
}
/* it seems odd that there's no function to remove a tl_data, but if
I need one, I'll add one */
{
char * unparse_mod_princ = 0;
unsigned int unparse_mod_princ_size;
return(retval);
== NULL) {
return(ENOMEM);
}
/* Mod Date */
/* Mod Princ */
return(retval);
}
{
return(code);
return(KRB5_KDB_TRUNCATED_RECORD);
/* Mod Date */
/* Mod Princ */
mod_princ)))
return(code);
return(0);
}