summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--winsup/cygwin/environ.cc2
-rw-r--r--winsup/cygwin/include/sys/utmp.h6
-rw-r--r--winsup/cygwin/uname.cc2
3 files changed, 5 insertions, 5 deletions
diff --git a/winsup/cygwin/environ.cc b/winsup/cygwin/environ.cc
index a47ed72e7..124842734 100644
--- a/winsup/cygwin/environ.cc
+++ b/winsup/cygwin/environ.cc
@@ -644,7 +644,7 @@ _addenv (const char *name, const char *value, int overwrite)
return -1; /* Oops. No more memory. */
/* Put name '=' value into current slot. */
- strncpy (envhere, name, namelen);
+ memcpy (envhere, name, namelen);
envhere[namelen] = '=';
strcpy (envhere + namelen + 1, value);
}
diff --git a/winsup/cygwin/include/sys/utmp.h b/winsup/cygwin/include/sys/utmp.h
index d90517cdd..acf804ad0 100644
--- a/winsup/cygwin/include/sys/utmp.h
+++ b/winsup/cygwin/include/sys/utmp.h
@@ -24,11 +24,11 @@ struct utmp
{
short ut_type;
pid_t ut_pid;
- char ut_line[UT_LINESIZE];
+ char ut_line[UT_LINESIZE] __attribute__ ((nonstring));
char ut_id[UT_IDLEN];
time_t ut_time;
- char ut_user[UT_NAMESIZE];
- char ut_host[UT_HOSTSIZE];
+ char ut_user[UT_NAMESIZE] __attribute__ ((nonstring));
+ char ut_host[UT_HOSTSIZE] __attribute__ ((nonstring));
long ut_addr;
};
diff --git a/winsup/cygwin/uname.cc b/winsup/cygwin/uname.cc
index 306cdee4a..e323335b4 100644
--- a/winsup/cygwin/uname.cc
+++ b/winsup/cygwin/uname.cc
@@ -25,7 +25,7 @@ uname_x (struct utsname *name)
{
__try
{
- char buf[NI_MAXHOST + 1];
+ char buf[NI_MAXHOST + 1] __attribute__ ((nonstring));
char *snp = strstr (cygwin_version.dll_build_date, "SNP");
memset (name, 0, sizeof (*name));