#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);
The getpublickey() and getsecretkey() functions get public and secret keys for netname. The key may come from one of the following sources:
/etc/publickey file. See publickey(4).
NIS map ``publickey.byname''. The sources and their lookup order are specified in the /etc/nsswitch.conf file. See nsswitch.conf(4) .
getsecretkey() has an extra argument, passwd, which is used to decrypt the encrypted secret key stored in the database.
Both routines return 1 if they are successful in finding the key. Otherwise, the routines return 0. 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 attributes(5) for descriptions of the following attributes:
|
secure_rpc(3NSL), nsswitch.conf(4) , publickey(4), attributes(5)