		/*
		 * This file was generated automatically by ExtUtils::ParseXS version 2.10 from the
		 * contents of Hostname.xs. Do not edit this file, edit Hostname.xs instead.
		 *
		 *	ANY CHANGES MADE HERE WILL BE LOST! 
		 *
		 */
		
		#line 1 "Hostname.xs"
		#include "EXTERN.h"
		#include "perl.h"
		#include "XSUB.h"
		
		#if defined(I_UNISTD) && defined(HAS_GETHOSTNAME)
		# include <unistd.h>
		#endif
		
		/* a reasonable default */
		#ifndef MAXHOSTNAMELEN
		#  define MAXHOSTNAMELEN	256
		#endif
		
		/* swiped from POSIX.xs */
		#if defined(__VMS) && !defined(__POSIX_SOURCE)
		#  if ((__VMS_VER >= 70000000) && (__DECC_VER >= 50200000)) || (__CRTL_VER >= 70000000)
		#    include <utsname.h>
		#  endif
		#endif
		
		#ifdef I_SYSUTSNAME
		#  include <sys/utsname.h>
		#endif
		
		#ifndef PERL_UNUSED_VAR
		#  define PERL_UNUSED_VAR(var) if (0) var = var
		#endif
		
		#line 39 "Hostname.c"
		
		XS(XS_Sys__Hostname_ghname); /* prototype to pass -Wmissing-prototypes */
		XS(XS_Sys__Hostname_ghname)
           2    {
           2        dXSARGS;
           2        if (items != 0)
      ######    	Perl_croak(aTHX_ "Usage: Sys::Hostname::ghname()");
           2        PERL_UNUSED_VAR(cv); /* -W */
           2        PERL_UNUSED_VAR(ax); /* -Wall */
           2        SP -= items;
		    {
		#line 30 "Hostname.xs"
		    IV   retval = -1;
		    SV  *sv;
		#line 54 "Hostname.c"
		#line 33 "Hostname.xs"
		    EXTEND(SP, 1);
		#ifdef HAS_GETHOSTNAME
		    {
			char tmps[MAXHOSTNAMELEN];
			retval = PerlSock_gethostname(tmps, sizeof(tmps));
			sv = newSVpvn(tmps, strlen(tmps));
		    }
		#else
		#  ifdef HAS_PHOSTNAME
		    {
			PerlIO *io;
			char tmps[MAXHOSTNAMELEN];
			char   *p = tmps;
		        char    c;
			io = PerlProc_popen(PHOSTNAME, "r");
			if (!io)
			    goto check_out;
			while (PerlIO_read(io, &c, sizeof(c)) == 1) {
			    if (isSPACE(c) || p - tmps >= sizeof(tmps))
				break;
			    *p++ = c;
			}
			PerlProc_pclose(io);
			*p = '\0';
			retval = 0;
			sv = newSVpvn(tmps, strlen(tmps));
		    }
		#  else
		#    ifdef HAS_UNAME
		    {
			struct utsname u;
			if (PerlEnv_uname(&u) == -1)
			    goto check_out;
			sv = newSVpvn(u.nodename, strlen(u.nodename));
		        retval = 0;
		    }
		#    endif
		#  endif
		#endif
		#ifndef HAS_GETHOSTNAME
		    check_out:
		#endif
		    if (retval == -1)
			XSRETURN_UNDEF;
		    else
			PUSHs(sv_2mortal(sv));
		#line 102 "Hostname.c"
           2    	PUTBACK;
           2    	return;
		    }
		}
		
		#ifdef __cplusplus
		extern "C"
		#endif
		XS(boot_Sys__Hostname); /* prototype to pass -Wmissing-prototypes */
		XS(boot_Sys__Hostname)
           5    {
           5        dXSARGS;
           5        char* file = __FILE__;
		
           5        PERL_UNUSED_VAR(cv); /* -W */
           5        PERL_UNUSED_VAR(items); /* -W */
           5        XS_VERSION_BOOTCHECK ;
		
           5            newXS("Sys::Hostname::ghname", XS_Sys__Hostname_ghname, file);
           5        XSRETURN_YES;
		}
		
