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 <[email protected]>.

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.

RELATED TO shisa_key_update…

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.