HPlogo HP-UX Reference > G

getpublickey(3N)

HP-UX 11i Version 2: December 2007 Update
» 

Technical documentation

 » Table of Contents

 » Index

NAME

getpublickey(), getsecretkey() — retrieve public or secret key

SYNOPSIS

#include <rpc/rpc.h> #include <rpc/key_prot.h> int getpublickey( const char netname[MAXNETNAMELEN], char publickey[HEXKEYBYTES]); int getsecretkey( const char netname[MAXNETNAMELEN], char secretkey[HEXKEYBYTES], const char *passwd );

MULTITHREAD USAGE

Thread Safe:

Yes

Cancel Safe:

Yes

Fork Safe:

No

Async-cancel Safe:

No

Async-signal Safe:

No

These functions can be called safely in a multithreaded environment. They may be cancellation points in that they call functions that are cancel points.

In a multithreaded environment, these functions are not safe to be called by a child process after fork() and before exec(). These functions should not be called by a multithreaded application that supports asynchronous cancellation or asynchronous signals.

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)), the NIS map publickey.byname, the NIS+ table cred.org_dir, or the user/host entries in the LDAP directory. 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.

Notes

LDAP can be used as the source for the key only if Enhanced Key Components is installed.

RETURN VALUE

Both routines return 1 if they are successful in finding the key, 0 (zero) 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 will be set to NULL.

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() file to make sure that the public key is obtained from NIS+.

SEE ALSO

secure_rpc(3N), nsswitch.conf(4), publickey(4).

LDAP-UX Client Services Administrator's Guide

LDAP-UX Client Services Release Notes