* java/net/natVMInetAddressPosix.cc
(java::net::VMInetAddress::getLocalHostname) [!MAXHOSTNAMELEN]:
Allocate buffer dynamically.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127305
138bc75d-0d04-0410-961f-
82ee72b054a4
+2007-08-08 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * java/net/natVMInetAddressPosix.cc
+ (java::net::VMInetAddress::getLocalHostname) [!MAXHOSTNAMELEN]:
+ Allocate buffer dynamically.
+
2007-08-04 Alfred M. Szmidt <ams@gnu.org>
* java/io/natFilePosix.cc (init_native) [!MAXPATHLEN]: Define to 0.
{
char *chars;
#ifdef HAVE_GETHOSTNAME
+#ifdef MAXHOSTNAMELEN
char buffer[MAXHOSTNAMELEN];
if (gethostname (buffer, MAXHOSTNAMELEN))
return NULL;
chars = buffer;
+#else
+ size_t size = 256;
+ while (1) {
+ char buffer[size];
+ if (!gethostname (buffer, size-1))
+ {
+ buffer[size-1] = 0;
+ return JvNewStringUTF (buffer);
+ }
+ else if (errno != ENAMETOOLONG)
+ return NULL;
+ size *= 2;
+ }
+#endif
#elif HAVE_UNAME
struct utsname stuff;
if (uname (&stuff) != 0)