Don't hard-code Linux's buffer size.
---
toys/posix/uname.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/toys/posix/uname.c b/toys/posix/uname.c
index 2e17d387..a1338415 100644
--- a/toys/posix/uname.c
+++ b/toys/posix/uname.c
@@ -41,12 +41,13 @@ config UNAME
void uname_main(void)
{
int i, flags = toys.optflags, needspace=0;
+ struct utsname u;
- uname((void *)toybuf);
+ uname(&u);
if (!flags) flags = FLAG_s;
for (i=0; i<5; i++) {
- char *c = toybuf+(65*i);
+ char *c = ((char *) &u)+(sizeof(u.sysname)*i);
if (flags & ((1<<i)|FLAG_a)) {
int len = strlen(c);
--
2.20.0.rc1.387.gf8505762e3-goog
From 8cf6423ea964f9be95a12734e0c18ff187b65995 Mon Sep 17 00:00:00 2001
From: Elliott Hughes <[email protected]>
Date: Fri, 30 Nov 2018 14:48:31 -0800
Subject: [PATCH] macOS: fix uname.
Don't hard-code Linux's buffer size.
---
toys/posix/uname.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/toys/posix/uname.c b/toys/posix/uname.c
index 2e17d387..a1338415 100644
--- a/toys/posix/uname.c
+++ b/toys/posix/uname.c
@@ -41,12 +41,13 @@ config UNAME
void uname_main(void)
{
int i, flags = toys.optflags, needspace=0;
+ struct utsname u;
- uname((void *)toybuf);
+ uname(&u);
if (!flags) flags = FLAG_s;
for (i=0; i<5; i++) {
- char *c = toybuf+(65*i);
+ char *c = ((char *) &u)+(sizeof(u.sysname)*i);
if (flags & ((1<<i)|FLAG_a)) {
int len = strlen(c);
--
2.20.0.rc1.387.gf8505762e3-goog
_______________________________________________
Toybox mailing list
[email protected]
http://lists.landley.net/listinfo.cgi/toybox-landley.net