git: 849dcdb1c0c5 - main - Change strmode argument type to mode_t
Warner Losh
imp at FreeBSD.org
Tue Jun 29 23:41:19 UTC 2021
The branch main has been updated by imp:
URL: https://cgit.FreeBSD.org/src/commit/?id=849dcdb1c0c50b13f97d67c912f0edac82688281
commit 849dcdb1c0c50b13f97d67c912f0edac82688281
Author: Alfonso Gregory <gfunni234 at gmail.com>
AuthorDate: 2021-06-25 15:35:14 +0000
Commit: Warner Losh <imp at FreeBSD.org>
CommitDate: 2021-06-29 23:38:45 +0000
Change strmode argument type to mode_t
Finally, we have the correct function definition for strmode. NetBSD/OpenBSD
did this many years ago. This code is weird sign extension safe.
Reviewed by: imp@
Pull Request: https://github.com/freebsd/freebsd-src/pull/493
---
include/string.h | 8 +++++++-
lib/libc/string/strmode.c | 2 +-
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/include/string.h b/include/string.h
index 774cf5fe9756..540258cfcf4f 100644
--- a/include/string.h
+++ b/include/string.h
@@ -96,7 +96,13 @@ size_t strlcpy(char * __restrict, const char * __restrict, size_t);
#endif
size_t strlen(const char *) __pure;
#if __BSD_VISIBLE
-void strmode(int, char *);
+
+#ifndef _MODE_T_DECLARED
+typedef __mode_t mode_t;
+#define _MODE_T_DECLARED
+#endif
+
+void strmode(mode_t, char *);
#endif
char *strncat(char * __restrict, const char * __restrict, size_t);
int strncmp(const char *, const char *, size_t) __pure;
diff --git a/lib/libc/string/strmode.c b/lib/libc/string/strmode.c
index 50016be21ea1..d601bd0430e1 100644
--- a/lib/libc/string/strmode.c
+++ b/lib/libc/string/strmode.c
@@ -40,7 +40,7 @@ __FBSDID("$FreeBSD$");
#include <string.h>
void
-strmode(/* mode_t */ int mode, char *p)
+strmode(mode_t mode, char *p)
{
/* print type */
switch (mode & S_IFMT) {
More information about the dev-commits-src-all
mailing list