]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
lib:replace: Remove memset_s()
authorAndreas Schneider <asn@samba.org>
Thu, 16 Oct 2025 09:22:46 +0000 (11:22 +0200)
committerAndreas Schneider <asn@cryptomilk.org>
Tue, 11 Nov 2025 14:51:45 +0000 (14:51 +0000)
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org>
Autobuild-Date(master): Tue Nov 11 14:51:45 UTC 2025 on atb-devel-224

lib/replace/README
lib/replace/replace.c
lib/replace/replace.h
lib/replace/wscript
third_party/heimdal_build/roken.h
third_party/heimdal_build/wscript_build

index 4c846e236681d21c6c7562bc48027c97d98f75ab..d5972657857eb4e509e88ae5cd2e0a05b822bf1b 100644 (file)
@@ -73,7 +73,6 @@ realpath
 poll
 setproctitle
 memset_explicit
-memset_s
 
 Types:
 bool
index 232d1672e482b378ea8e6f0ae7a838bf3da3249b..dd07e6c3da5228af8cf32c3e5ad69c883044cadc 100644 (file)
@@ -1144,37 +1144,6 @@ void *rep_memset_explicit(void *block, int c, size_t size)
 }
 #endif
 
-#ifndef HAVE_MEMSET_S
-# ifndef RSIZE_MAX
-#  define RSIZE_MAX (SIZE_MAX >> 1)
-# endif
-
-int rep_memset_s(void *dest, size_t destsz, int ch, size_t count)
-{
-       if (dest == NULL) {
-               return EINVAL;
-       }
-
-       if (destsz > RSIZE_MAX ||
-           count > RSIZE_MAX ||
-           count > destsz) {
-               return ERANGE;
-       }
-
-#if defined(HAVE_MEMSET_EXPLICIT)
-       memset_explicit(dest, ch, count);
-#else /* HAVE_MEMSET_EXPLICIT */
-       memset(dest, ch, count);
-# if defined(HAVE_GCC_VOLATILE_MEMORY_PROTECTION)
-       /* See http://llvm.org/bugs/show_bug.cgi?id=15495 */
-       __asm__ volatile("" : : "g"(dest) : "memory");
-# endif /* HAVE_GCC_VOLATILE_MEMORY_PROTECTION */
-#endif /* HAVE_MEMSET_EXPLICIT */
-
-       return 0;
-}
-#endif /* HAVE_MEMSET_S */
-
 #ifndef HAVE_GETPROGNAME
 # ifndef HAVE_PROGRAM_INVOCATION_SHORT_NAME
 # define PROGNAME_SIZE 32
index f6716d8b0eb4d65727d6a7a5091a6c9f915a0076..49757e0f60df97effc989b8b353c581bcb49a9e7 100644 (file)
@@ -995,11 +995,6 @@ void rep_setproctitle_init(int argc, char *argv[], char *envp[]);
 void *rep_memset_explicit(void *block, int c, size_t size);
 #endif
 
-#ifndef HAVE_MEMSET_S
-#define memset_s rep_memset_s
-int rep_memset_s(void *dest, size_t destsz, int ch, size_t count);
-#endif
-
 #ifndef HAVE_GETPROGNAME
 #define getprogname rep_getprogname
 const char *rep_getprogname(void);
index 1318f887c77b7604dce8ae1370305713f860d8fe..4621d90a70a562452870638f9daee1880c01dae0 100644 (file)
@@ -890,7 +890,7 @@ REPLACEMENT_FUNCTIONS = {
                   'utime', 'utimes', 'dup2', 'chown', 'link', 'readlink',
                   'symlink', 'lchown', 'realpath', 'memmem', 'vdprintf',
                   'dprintf', 'get_current_dir_name', 'copy_file_range',
-                  'strerror_r', 'clock_gettime', 'memset_explicit', 'memset_s'],
+                  'strerror_r', 'clock_gettime', 'memset_explicit'],
     'timegm.c': ['timegm'],
     # Note: C99_VSNPRINTF is not a function, but a special condition
     # for replacement
index 38706099c991d140082b8a29e52fe0b7a308bdd0..4740a3d2d01320c325413b0270730017389004af 100644 (file)
 #define HAVE_SETEUID
 #endif
 
-#ifndef HAVE_MEMSET_S
-#define HAVE_MEMSET_S
-#endif
-
 #ifndef HAVE_DIRFD
 #ifdef HAVE_DIR_DD_FD
 #define dirfd(x) ((x)->dd_fd)
index 801f3277f41c47fd210f472b7e861a957c1cff10..ebbf9431e9aa91415edca0c38e35fd05da23006b 100644 (file)
@@ -375,6 +375,11 @@ if not bld.CONFIG_SET('USING_SYSTEM_ROKEN'):
         lib/roken/getuserinfo.c
     '''
 
+    if not bld.CONFIG_SET('HAVE_MEMSET_S'):
+        ROKEN_SOURCE += '''
+            lib/roken/memset_s.c
+        '''
+
     HEIMDAL_LIBRARY('roken',
         ROKEN_SOURCE,
         includes='../heimdal/lib/roken ../heimdal/include ../heimdal_build/include',