This is an automated email from the ASF dual-hosted git repository.

pkarashchenko pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git


The following commit(s) were added to refs/heads/master by this push:
     new 4f3c73fb45 libc/lib_bzero:Add bzero prototype.
4f3c73fb45 is described below

commit 4f3c73fb45cf3d829e5b61b2b3f0c8f32323d1f1
Author: chenrun1 <chenr...@xiaomi.com>
AuthorDate: Tue Feb 21 17:19:47 2023 +0800

    libc/lib_bzero:Add bzero prototype.
    
    Implement the bzero function as an alternative to macro expansion.
---
 include/strings.h            |  6 ++----
 libs/libc/string/Make.defs   |  2 +-
 libs/libc/string/lib_bzero.c | 40 ++++++++++++++++++++++++++++++++++++++++
 3 files changed, 43 insertions(+), 5 deletions(-)

diff --git a/include/strings.h b/include/strings.h
index 9b763ccc2e..96d198cb72 100644
--- a/include/strings.h
+++ b/include/strings.h
@@ -49,10 +49,6 @@
 #define bcopy(b1,b2,len) memmove(b2,b1,len)
 #endif
 
-#ifndef bzero /* See mm/README.txt */
-#define bzero(s,n)       memset(s,0,n)
-#endif
-
 #define strcasecmp_l(s1, s2, l)     strcasecmp(s1, s2)
 #define strncasecmp_l(s1, s2, n, l) strncasecmp(s1, s2, n)
 
@@ -95,6 +91,8 @@ FAR char *rindex(FAR const char *s, int c);
 int strcasecmp(FAR const char *, FAR const char *);
 int strncasecmp(FAR const char *, FAR const char *, size_t);
 
+void bzero(FAR void *s, size_t n);
+
 #undef EXTERN
 #if defined(__cplusplus)
 }
diff --git a/libs/libc/string/Make.defs b/libs/libc/string/Make.defs
index 6f6f35c2bf..36876f41a4 100644
--- a/libs/libc/string/Make.defs
+++ b/libs/libc/string/Make.defs
@@ -30,7 +30,7 @@ CSRCS += lib_strndup.c lib_strcasestr.c lib_strpbrk.c 
lib_strrchr.c
 CSRCS += lib_strspn.c lib_strstr.c lib_strtok.c lib_strtokr.c
 CSRCS += lib_strsep.c lib_strerrorr.c lib_explicit_bzero.c lib_strsignal.c
 CSRCS += lib_index.c lib_rindex.c lib_timingsafe_bcmp.c lib_strverscmp.c
-CSRCS += lib_mempcpy.c lib_rawmemchr.c
+CSRCS += lib_mempcpy.c lib_rawmemchr.c lib_bzero.c
 
 ifneq ($(CONFIG_LIBC_ARCH_MEMCHR),y)
 CSRCS += lib_memchr.c
diff --git a/libs/libc/string/lib_bzero.c b/libs/libc/string/lib_bzero.c
new file mode 100644
index 0000000000..33b39fdb03
--- /dev/null
+++ b/libs/libc/string/lib_bzero.c
@@ -0,0 +1,40 @@
+/****************************************************************************
+ * libs/libc/string/lib_bzero.c
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.  The
+ * ASF licenses this file to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the
+ * License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ *
+ ****************************************************************************/
+
+/****************************************************************************
+ * Included Files
+ ****************************************************************************/
+
+#include <nuttx/config.h>
+#include <sys/types.h>
+#include <string.h>
+
+/****************************************************************************
+ * Public Functions
+ ****************************************************************************/
+
+/****************************************************************************
+ * Name: bzero
+ ****************************************************************************/
+
+void bzero(FAR void *s, size_t n)
+{
+  memset(s, 0, n);
+}

Reply via email to