shisa_key_update(3)

NAME
shisa_key_update - API function

SYNOPSIS
#include <shisa.h>

int shisa_key_update(Shisa * dbh, const char * realm, const char * principal, const Shisa_key * oldkey, const Shisa_key * newkey);

ARGUMENTS

Shisa * dbh
    Shisa library handle created by shisa().

const char * realm
    Name of realm the principal belongs in.

const char * principal
    Name of principal to remove key for.

const Shisa_key * oldkey
    Pointer to Shisa key structure with hints on matching the key to modify.

const Shisa_key * newkey
    Pointer to Shisa key structure with new values for the key, note that all fields are used (and not just the ones specified by oldkey).

DESCRIPTION
Modify data about a key in the database, for the given PRINCIPALREALM. First the oldkey is used to locate the key to update (similar to shisa_keys_find()), then that key is modified to contain whatever information is stored in newkey. Not all elements of oldkey need to be filled out, only enough as to identify the key uniquely. For example, if you want to modify the information stored for the only key with an etype of 3 (DES-CBC-MD5), set the key->etype field to 3, and set all other fields to 0.

RETURN VALUE
Returns SHISA_OK on success, SHISA_NO_KEY if no key could be identified, and SHISA_MULTIPLE_KEY_MATCH if more than one key matched the given criteria, or an error code.

REPORTING BUGS
Report bugs to <bug-shishi@gnu.org>.

COPYRIGHT
Copyright © 2002-2010 Simon Josefsson.
Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved.

SEE ALSO
The full documentation for shishi is maintained as a Texinfo manual. If the info and shishi programs are properly installed at your site, the command

    info shishi

should give you access to the complete manual.