Re: [PATCH v2 21/22] mingw32: add uname()
From: Torsten Bögershausen <hidden>
Date: 2016-06-15 23:02:53
On 2014-11-09 09.36, Duy Nguyen wrote:
On Sun, Nov 9, 2014 at 10:32 AM, Eric Sunshine [off-list ref] wrote:quoted
On Sat, Nov 8, 2014 at 4:39 AM, Nguyễn Thái Ngọc Duy [off-list ref] wrote:quoted
Signed-off-by: Nguyễn Thái Ngọc Duy <redacted> ---diff --git a/compat/mingw.c b/compat/mingw.c index c5c37e5..b817678 100644 --- a/compat/mingw.c +++ b/compat/mingw.c@@ -2128,3 +2128,14 @@ void mingw_startup() /* initialize Unicode console */ winansi_init(); } + +int uname(struct utsname *buf) +{ + DWORD v = GetVersion(); + memset(buf, 0, sizeof(*buf)); + sprintf(buf->sysname, "Windows");strcpy() maybe?It was originally strcpy, then I wanted to get fancy and show Win3.1, Win95... but it got complicated (couldn't just do it based on the last bit of 'v'). Will revert.
Why not use strlcpy() ? (This feels little like an overkill, but on the other hand it is safe to use regardless how long the buf is, and it is a good example how to avoid "overrunning" code)