diff options
Diffstat (limited to 'ext')
-rw-r--r-- | ext/socket/raddrinfo.c | 6 | ||||
-rw-r--r-- | ext/socket/socket.c | 5 |
2 files changed, 7 insertions, 4 deletions
diff --git a/ext/socket/raddrinfo.c b/ext/socket/raddrinfo.c index 821265e360..29bcae1e21 100644 --- a/ext/socket/raddrinfo.c +++ b/ext/socket/raddrinfo.c @@ -193,10 +193,10 @@ make_ipaddr0(struct sockaddr *addr, char *buf, size_t len) VALUE make_ipaddr(struct sockaddr *addr) { - char buf[1024]; + char hbuf[1024]; - make_ipaddr0(addr, buf, sizeof(buf)); - return rb_str_new2(buf); + make_ipaddr0(addr, hbuf, sizeof(hbuf)); + return rb_str_new2(hbuf); } static void diff --git a/ext/socket/socket.c b/ext/socket/socket.c index abce61307a..33b47451fd 100644 --- a/ext/socket/socket.c +++ b/ext/socket/socket.c @@ -826,7 +826,10 @@ sock_sysaccept(VALUE sock) static VALUE sock_gethostname(VALUE obj) { - char buf[1024]; +#ifndef HOST_NAME_MAX +# define HOST_NAME_MAX 1024 +#endif + char buf[HOST_NAME_MAX+1]; rb_secure(3); if (gethostname(buf, (int)sizeof buf - 1) < 0) |