Tools: hv: kvp: configurable external scripts path
PATCH 1/1 Tools: hv: kvp: configurable external scripts path
error when running hypervkvpd:
$ sudo ./hv_kvp_daemon -n
sh: hv_get_dns_info: command not found
sh: hv_get_dhcp_info: command not found
sh: hv_get_dns_info: command not found
sh: hv_get_dhcp_info: command not found
The external scripts are not installed in system path, adding a configurable macro.
Signed-off-by Alex Fluter <[email protected]>
--- tools/hv/hv_kvp_daemon.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-)
tools/hv/hv_kvp_daemon.c +7 -3
@@ -96,6 +96,10 @@ static struct utsname uts_buf;#define KVP_CONFIG_LOC "/var/lib/hyperv" +#ifndef KVP_SCRIPTS_PATH +#define KVP_SCRIPTS_PATH "/usr/libexec/hypervkvpd/" +#endif +#define MAX_FILE_NAME 100#define ENTRIES_PER_BLOCK 50
@@ -825,7 +829,7 @@ static void kvp_get_ipconfig_info(char *if_name,* . */ -sprintf (cmd,"%s" ,"hv_get_dns_info" ); +sprintf (cmd,KVP_SCRIPTS_PATH "%s" ,"hv_get_dns_info" );/* * Execute the command to gather DNS info.
@@ -842,7 +846,7 @@ static void kvp_get_ipconfig_info(char *if_name,* Enabled: DHCP enabled. */ -sprintf (cmd,"%s %s" ,"hv_get_dhcp_info" , if_name); +sprintf (cmd,KVP_SCRIPTS_PATH "%s %s" ,"hv_get_dhcp_info" , if_name); file =popen (cmd,"r" );if (file ==NULL )
@@ -1348,7 +1352,7 @@ static int kvp_set_ip_info(char *if_name, struct hv_kvp_ipaddr_value *new_val)* invoke the external script to do its magic. */ -snprintf (cmd,sizeof (cmd),"%s %s" ,"hv_set_ifconfig" , if_file); +snprintf (cmd,sizeof (cmd),KVP_SCRIPTS_PATH "%s %s" ,"hv_set_ifconfig" , if_file);if (system (cmd)) {syslog (LOG_ERR ,"Failed to execute cmd '%s'; error: %d %s" , cmd, errno,strerror (errno));
Signature · 1 line
2.7.4