libnetconf2
3.5.4
NETCONF server and client library in C.
|
SSH settings for the Call Home functionality. More...
Functions | |
int | nc_client_ssh_ch_add_bind_listen (const char *address, uint16_t port) |
Add a new client bind and start listening on it for SSH Call Home connections. More... | |
int | nc_client_ssh_ch_add_keypair (const char *pub_key, const char *priv_key) |
Add an SSH public and private key pair to be used for Call Home client authentication. More... | |
int | nc_client_ssh_ch_del_bind (const char *address, uint16_t port) |
Remove an SSH listening client bind. More... | |
int | nc_client_ssh_ch_del_keypair (int idx) |
Remove an SSH public and private key pair that was used for Call Home client authentication. More... | |
void | nc_client_ssh_ch_get_auth_interactive_clb (char *(**auth_interactive)(const char *auth_name, const char *instruction, const char *prompt, int echo, void *priv), void **priv) |
Get currently set SSH Call Home interactive authentication callback and its private data previously set by nc_client_ssh_ch_set_auth_interactive_clb(). More... | |
void | nc_client_ssh_ch_get_auth_password_clb (char *(**auth_password)(const char *username, const char *hostname, void *priv), void **priv) |
Get currently set SSH Call Home password authentication callback and its private data previously set by nc_client_ssh_ch_set_auth_password_clb(). More... | |
int16_t | nc_client_ssh_ch_get_auth_pref (NC_SSH_AUTH_TYPE auth_type) |
Get SSH Call Home authentication method preference. More... | |
void | nc_client_ssh_ch_get_auth_privkey_passphrase_clb (char *(**auth_privkey_passphrase)(const char *privkey_path, void *priv), void **priv) |
Get currently set SSH Call Home publickey authentication encrypted private key passphrase callback and its private data previously set by nc_client_ssh_ch_set_auth_privkey_passphrase_clb(). More... | |
int | nc_client_ssh_ch_get_keypair (int idx, const char **pub_key, const char **priv_key) |
Get a specific keypair set to be used for Call Home client authentication. More... | |
int | nc_client_ssh_ch_get_keypair_count (void) |
Get the number of public an private key pairs set to be used for Call Home client authentication. More... | |
const char * | nc_client_ssh_ch_get_username (void) |
Get client Call Home SSH username used for authentication. More... | |
void | nc_client_ssh_ch_set_auth_interactive_clb (char *(*auth_interactive)(const char *auth_name, const char *instruction, const char *prompt, int echo, void *priv), void *priv) |
Set SSH Call Home interactive authentication callback. More... | |
void | nc_client_ssh_ch_set_auth_password_clb (char *(*auth_password)(const char *username, const char *hostname, void *priv), void *priv) |
Set SSH Call Home password authentication callback. More... | |
void | nc_client_ssh_ch_set_auth_pref (NC_SSH_AUTH_TYPE auth_type, int16_t pref) |
Set SSH Call Home authentication method preference. More... | |
void | nc_client_ssh_ch_set_auth_privkey_passphrase_clb (char *(*auth_privkey_passphrase)(const char *privkey_path, void *priv), void *priv) |
Set SSH Call Home publickey authentication encrypted private key passphrase callback. More... | |
void | nc_client_ssh_ch_set_knownhosts_mode (NC_SSH_KNOWNHOSTS_MODE mode) |
Set SSH Call Home behaviour of checking the host key and adding/reading entries to/from the known_hosts file. More... | |
int | nc_client_ssh_ch_set_knownhosts_path (const char *path) |
Set SSH Call Home path to the known_hosts file for connections. More... | |
int | nc_client_ssh_ch_set_username (const char *username) |
Set client Call Home SSH username used for authentication. More... | |
SSH settings for the Call Home functionality.
void nc_client_ssh_ch_set_knownhosts_mode | ( | NC_SSH_KNOWNHOSTS_MODE | mode | ) |
Set SSH Call Home behaviour of checking the host key and adding/reading entries to/from the known_hosts file.
The default mode is NC_SSH_KNOWNHOSTS_ASK.
[in] | mode | Server host key checking mode. |
int nc_client_ssh_ch_set_knownhosts_path | ( | const char * | path | ) |
Set SSH Call Home path to the known_hosts file for connections.
Repetetive calling replaces the value. If the given file doesn't exist and the process has sufficient rights, it gets created whenever the file is needed, otherwise an error occurs. If NULL is passed or the path isn't set, the default known_hosts file will be used.
[in] | path | Path to the known_hosts file. |
void nc_client_ssh_ch_set_auth_password_clb | ( | char *(*)(const char *username, const char *hostname, void *priv) | auth_password, |
void * | priv | ||
) |
Set SSH Call Home password authentication callback.
Repetitive calling causes replacing of the previous callback and its private data. Caller is responsible for freeing the private data when necessary (the private data can be obtained by nc_client_ssh_ch_get_auth_password_clb()).
[in] | auth_password | Function to call, returns the password for username@hostname. If NULL, the default callback is set. |
[in] | priv | Optional private data to be passed to the callback function. |
void nc_client_ssh_ch_get_auth_password_clb | ( | char *(**)(const char *username, const char *hostname, void *priv) | auth_password, |
void ** | priv | ||
) |
Get currently set SSH Call Home password authentication callback and its private data previously set by nc_client_ssh_ch_set_auth_password_clb().
[out] | auth_password | Currently set callback, NULL in case of the default callback. |
[out] | priv | Currently set (optional) private data to be passed to the callback function. |
void nc_client_ssh_ch_set_auth_interactive_clb | ( | char *(*)(const char *auth_name, const char *instruction, const char *prompt, int echo, void *priv) | auth_interactive, |
void * | priv | ||
) |
Set SSH Call Home interactive authentication callback.
Repetitive calling causes replacing of the previous callback and its private data. Caller is responsible for freeing the private data when necessary (the private data can be obtained by nc_client_ssh_ch_get_auth_interactive_clb()).
[in] | auth_interactive | Function to call for every question, returns the answer for authentication name with instruction and echoing prompt. If NULL, the default callback is set. |
[in] | priv | Optional private data to be passed to the callback function. |
void nc_client_ssh_ch_get_auth_interactive_clb | ( | char *(**)(const char *auth_name, const char *instruction, const char *prompt, int echo, void *priv) | auth_interactive, |
void ** | priv | ||
) |
Get currently set SSH Call Home interactive authentication callback and its private data previously set by nc_client_ssh_ch_set_auth_interactive_clb().
[out] | auth_interactive | Currently set callback, NULL in case of the default callback. |
[out] | priv | Currently set (optional) private data to be passed to the callback function. |
void nc_client_ssh_ch_set_auth_privkey_passphrase_clb | ( | char *(*)(const char *privkey_path, void *priv) | auth_privkey_passphrase, |
void * | priv | ||
) |
Set SSH Call Home publickey authentication encrypted private key passphrase callback.
Repetitive calling causes replacing of the previous callback and its private data. Caller is responsible for freeing the private data when necessary (the private data can be obtained by nc_client_ssh_ch_get_auth_privkey_passphrase_clb()).
[in] | auth_privkey_passphrase | Function to call for every question, returns the passphrase for the specific private key. |
[in] | priv | Optional private data to be passed to the callback function. |
void nc_client_ssh_ch_get_auth_privkey_passphrase_clb | ( | char *(**)(const char *privkey_path, void *priv) | auth_privkey_passphrase, |
void ** | priv | ||
) |
Get currently set SSH Call Home publickey authentication encrypted private key passphrase callback and its private data previously set by nc_client_ssh_ch_set_auth_privkey_passphrase_clb().
[out] | auth_privkey_passphrase | Currently set callback, NULL in case of the default callback. |
[out] | priv | Currently set (optional) private data to be passed to the callback function. |
int nc_client_ssh_ch_add_bind_listen | ( | const char * | address, |
uint16_t | port | ||
) |
Add a new client bind and start listening on it for SSH Call Home connections.
[in] | address | IP address to bind to. |
[in] | port | Port to bind to. |
int nc_client_ssh_ch_del_bind | ( | const char * | address, |
uint16_t | port | ||
) |
Remove an SSH listening client bind.
[in] | address | IP address the socket was bound to. NULL matches all. |
[in] | port | Port the socket was bound to. 0 matches all. |
int nc_client_ssh_ch_add_keypair | ( | const char * | pub_key, |
const char * | priv_key | ||
) |
Add an SSH public and private key pair to be used for Call Home client authentication.
Private key can be encrypted, the passphrase will be asked for before using it.
[in] | pub_key | Path to the public key. |
[in] | priv_key | Path to the private key. |
int nc_client_ssh_ch_del_keypair | ( | int | idx | ) |
Remove an SSH public and private key pair that was used for Call Home client authentication.
[in] | idx | Index of the keypair starting with 0. |
int nc_client_ssh_ch_get_keypair_count | ( | void | ) |
Get the number of public an private key pairs set to be used for Call Home client authentication.
int nc_client_ssh_ch_get_keypair | ( | int | idx, |
const char ** | pub_key, | ||
const char ** | priv_key | ||
) |
Get a specific keypair set to be used for Call Home client authentication.
[in] | idx | Index of the specific keypair. |
[out] | pub_key | Path to the public key. |
[out] | priv_key | Path to the private key. |
void nc_client_ssh_ch_set_auth_pref | ( | NC_SSH_AUTH_TYPE | auth_type, |
int16_t | pref | ||
) |
Set SSH Call Home authentication method preference.
The default preference is as follows:
[in] | auth_type | Authentication method to modify the preference of. |
[in] | pref | Preference of auth_type . Higher number increases priority, negative values disable the method. |
int16_t nc_client_ssh_ch_get_auth_pref | ( | NC_SSH_AUTH_TYPE | auth_type | ) |
Get SSH Call Home authentication method preference.
[in] | auth_type | Authentication method to retrieve the prefrence of. |
auth_type
. int nc_client_ssh_ch_set_username | ( | const char * | username | ) |
Set client Call Home SSH username used for authentication.
[in] | username | Username to use. |
const char* nc_client_ssh_ch_get_username | ( | void | ) |
Get client Call Home SSH username used for authentication.