or netdb.h).
# endif
#endif
-#ifndef MAXHOSTNAMELEN
-# define MAXHOSTNAMELEN 64
+#ifndef HOST_NAME_MAX
+# ifdef MAXHOSTNAMELEN
+# define HOST_NAME_MAX MAXHOSTNAMELEN
+# else
+# ifdef _POSIX_HOST_NAME_MAX
+# define HOST_NAME_MAX _POSIX_HOST_NAME_MAX
+# else
+# define HOST_NAME_MAX 64
+# endif
+# endif
#endif
/*
#ifdef HAVE_GETDOMAINNAME
/* get the domain name (if any) */
if (!initialized) {
- domain = (char *) emalloc(MAXHOSTNAMELEN + 1);
- if (getdomainname(domain, MAXHOSTNAMELEN + 1) == -1 || *domain == '\0') {
+ domain = (char *) emalloc(HOST_NAME_MAX + 1);
+ if (getdomainname(domain, HOST_NAME_MAX + 1) == -1 || *domain == '\0') {
efree(domain);
domain = NULL;
}
struct privilege *priv;
struct userspec *us;
char *p, *grfile, *pwfile;
- char hbuf[MAXHOSTNAMELEN + 1];
+ char hbuf[HOST_NAME_MAX + 1];
int match, host_match, runas_match, cmnd_match;
int ch, dflag, exitcode = 0;
debug_decl(main, SUDO_DEBUG_MAIN)
static void
get_hostname(void)
{
- char *p, thost[MAXHOSTNAMELEN + 1];
+ char *p, thost[HOST_NAME_MAX + 1];
debug_decl(get_hostname, SUDO_DEBUG_UTIL)
if (gethostname(thost, sizeof(thost)) != -1) {
static char **
get_user_info(struct user_details *ud)
{
- char *cp, **user_info, cwd[PATH_MAX], host[MAXHOSTNAMELEN];
+ char *cp, **user_info, cwd[PATH_MAX], host[HOST_NAME_MAX + 1];
struct passwd *pw;
int fd, i = 0;
debug_decl(get_user_info, SUDO_DEBUG_UTIL)