static ni_bool_t ni_set_global_config_dir(const char *pathname) { if (pathname == NULL) { ni_string_free(&ni_global.config_dir); ni_string_free(&ni_global.config_path); return TRUE; } if (ni_isdir(pathname)) { char *real = NULL; if (*pathname != '/') { /* resolve to absolute path */ if (ni_realpath(pathname, &real) == NULL) return FALSE; pathname = real; } if (ni_string_eq(WICKED_CONFIGDIR, pathname)) pathname = NULL; ni_string_dup(&ni_global.config_dir, pathname); ni_string_free(&real); return TRUE; } errno = ENOTDIR; return FALSE; }
/* * Check if ipv6 is supported or disabled * via ipv6.disabled=1 kernel command line. */ ni_bool_t ni_ipv6_supported(void) { return ni_isdir(NI_PROC_SYS_NET_IPV6_DIR); }