]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
Merge pull request #19662 from yuwata/memdup
authorLennart Poettering <lennart@poettering.net>
Wed, 19 May 2021 21:24:55 +0000 (23:24 +0200)
committerGitHub <noreply@github.com>
Wed, 19 May 2021 21:24:55 +0000 (23:24 +0200)
util: make memdup() or friends safer

1  2 
src/basic/alloc-util.c
src/basic/alloc-util.h
src/basic/memory-util.h

index 5545af5497b38be7c162ddb00b5a5020098a1e4e,192a516db3268f41172e4858aa51fdb0f9822ca9..b030f454b2f6e0b173ab0bac4a718940efc9d276
@@@ -35,15 -34,11 +34,15 @@@ void* memdup_suffix0(const void *p, siz
          if (!ret)
                  return NULL;
  
-         *((uint8_t*) mempcpy(ret, p, l)) = 0;
-         return ret;
+         ((uint8_t*) ret)[l] = 0;
+         return memcpy_safe(ret, p, l);
  }
  
 -void* greedy_realloc(void **p, size_t *allocated, size_t need, size_t size) {
 +void* greedy_realloc(
 +                void **p,
 +                size_t need,
 +                size_t size) {
 +
          size_t a, newalloc;
          void *q;
  
Simple merge
Simple merge