getpublickey(3N)
NAME
getpublickey, getsecretkey, publickey − retrieve public or secret key
SYNOPSIS
#include <rpc/rpc.h>
#include <rpc/key_prot.h>
int getpublickey(const char netname[MAXNETNAMELEN],
char publickey[HEXKEYBYTES+1]);
int getsecretkey(const char netname[MAXNETNAMELEN],
char secretkey[HEXKEYBYTES+1], const char ∗passwd);
MT-LEVEL
Safe
DESCRIPTION
getpublickey() and getsecretkey() get public and secret keys for netname. The key may come from one of the following sources: the /etc/publickey file (see publickey(4)) or the NIS map “publickey.byname” or the NIS+ table “cred.org_dir”. The sources and their lookup order are specified in the /etc/nsswitch.conf file (see nsswitch.conf(4)).
getsecretkey() has an extra argument, passwd, used to decrypt the encrypted secret key stored in the database.
RETURN VALUES
Both routines return 1 if they are successful in finding the key, 0 otherwise. The keys are returned as NULL-terminated, hexadecimal strings. If the password supplied to getsecretkey() fails to decrypt the secret key, the routine will return 1 but the secretkey [0] will be set to NULL.
SEE ALSO
secure_rpc(3N), nsswitch.conf(4), publickey(4)
WARNINGS
If getpublickey() gets the public key from any source other than NIS+, all authenticated NIS+ operations may fail. To ensure that this does not happen, edit the nsswitch.conf(4) file to make sure that the public key is obtained from NIS+.
SunOS 5.5 — Last change: 26 Sep 1994