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);
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,
or
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,
which is used to decrypt the encrypted secret key stored
in the database.
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.
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 [0]
will be set to NULL.
WARNINGS
HP-UX 11i Version 2 is the last HP-UX release on which NIS+ is supported.
LDAP is the recommended replacement for NIS+.
HP fully supports the industry standard naming services based on LDAP.