adb_policy.c revision 56a424cca6b3f91f31bdab72a4626c48c779fe8b
#pragma ident "%Z%%M% %I% %E% SMI"
/*
* WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING
*
* Openvision retains the copyright to derivative works of
* this source code. Do *NOT* create a derivative of this
* source code before consulting with your legal department.
* Do *NOT* integrate *ANY* of this source code into another
* product before consulting with your legal department.
*
* For further information, read the top-level Openvision
* copyright which is contained in the top-level MIT Kerberos
* copyright.
*
* WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING
*
*/
/*
* Copyright 1993 OpenVision Technologies, Inc., All Rights Reserved
*
*/
#if !defined(lint) && !defined(__CODECENTER__)
static char *rcsid = "$Header: /cvs/krbdev/krb5/src/lib/kadm5/srv/adb_policy.c,v 1.7 2003/01/05 23:27:59 hartmans Exp $";
#endif
#include <fcntl.h>
#include "adb.h"
#include <stdlib.h>
#include <string.h>
#include <errno.h>
{ \
int olret; \
return EINVAL; \
return OSA_ADB_DBINIT; \
return olret; \
}
{ \
int cl_ret; \
return cl_ret; \
}
{
}
{
}
{
}
{
}
{
}
/*
* Function: osa_adb_create_policy
*
* Purpose: create a policy entry in the policy db.
*
* Arguments:
* entry (input) pointer to the entry to be added
* <return value> OSA_ADB_OK on success, else error code.
*
* Requires:
* entry have a valid name.
*
* Effects:
* creates the entry in the db
*
* Modifies:
* the policy db.
*
*/
{
int ret;
goto error;
}
case 0:
ret = OSA_ADB_DUP;
goto error;
case 1:
break;
default:
goto error;
}
xdr_destroy(&xdrs);
goto error;
}
case 0:
ret = OSA_ADB_OK;
break;
case 1:
ret = OSA_ADB_DUP;
break;
default:
break;
}
xdr_destroy(&xdrs);
return ret;
}
/*
* Function: osa_adb_destroy_policy
*
* Purpose: destroy a policy entry
*
* Arguments:
* db (input) database handle
* name (input) name of policy
* <return value> OSA_ADB_OK on success, or error code.
*
* Requires:
* db being valid.
* name being non-null.
* Effects:
* deletes policy from db.
*
* Modifies:
* policy db.
*
*/
{
goto error;
}
switch(status) {
case 1:
ret = OSA_ADB_NOENT;
goto error;
case 0:
goto error;
}
ret = OSA_ADB_OK;
break;
default:
goto error;
}
return ret;
}
/*
* Function: osa_adb_get_policy
*
* Purpose: retrieve policy
*
* Arguments:
* db (input) db handle
* name (input) name of policy
* entry (output) policy entry
* <return value> 0 on success, error code on failure.
*
* Requires:
* Effects:
* Modifies:
*/
{
int ret;
char *aligned_data;
goto error;
}
case 1:
ret = OSA_ADB_NOENT;
goto error;
case 0:
break;
default:
goto error;
}
goto error;
}
goto error;
}
else ret = OSA_ADB_OK;
xdr_destroy(&xdrs);
return ret;
}
/*
* Function: osa_adb_put_policy
*
* Purpose: update a policy in the dababase
*
* Arguments:
* db (input) db handle
* entry (input) policy entry
* <return value> 0 on success error code on failure.
*
* Requires:
* [requires]
*
* Effects:
* [effects]
*
* Modifies:
* [modifies]
*
*/
{
int ret;
goto error;
}
case 0:
break;
case 1:
ret = OSA_ADB_NOENT;
goto error;
default:
goto error;
}
xdr_destroy(&xdrs);
goto error;
}
case 0:
ret = OSA_ADB_OK;
break;
default:
break;
}
xdr_destroy(&xdrs);
return ret;
}
/*
* Function: osa_adb_iter_policy
*
* Purpose: iterate over the policy database.
*
* Arguments:
* db (input) db handle
* func (input) fucntion pointer to call
* data opaque data type
* <return value> 0 on success error code on failure
*
* Requires:
* Effects:
* Modifies:
*/
void *data)
{
int ret;
char *aligned_data;
goto error;
}
while (ret == 0) {
goto error;
}
goto error;
}
xdr_destroy(&xdrs);
goto error;
}
xdr_destroy(&xdrs);
}
if(ret == -1)
else ret = OSA_ADB_OK;
return ret;
}