Browse Source

rainbow: memcpy -> memmove since buffers may overlap

kyber
Matthias J. Kannwischer 5 years ago
committed by Kris Kwiatkowski
parent
commit
963e87af64
9 changed files with 9 additions and 9 deletions
  1. +1
    -1
      crypto_sign/rainbowIIIc-classic/clean/sign.c
  2. +1
    -1
      crypto_sign/rainbowIIIc-cyclic-compressed/clean/sign.c
  3. +1
    -1
      crypto_sign/rainbowIIIc-cyclic/clean/sign.c
  4. +1
    -1
      crypto_sign/rainbowIa-classic/clean/sign.c
  5. +1
    -1
      crypto_sign/rainbowIa-cyclic-compressed/clean/sign.c
  6. +1
    -1
      crypto_sign/rainbowIa-cyclic/clean/sign.c
  7. +1
    -1
      crypto_sign/rainbowVc-classic/clean/sign.c
  8. +1
    -1
      crypto_sign/rainbowVc-cyclic-compressed/clean/sign.c
  9. +1
    -1
      crypto_sign/rainbowVc-cyclic/clean/sign.c

+ 1
- 1
crypto_sign/rainbowIIIc-classic/clean/sign.c View File

@@ -44,7 +44,7 @@ int PQCLEAN_RAINBOWIIICCLASSIC_CLEAN_crypto_sign_open(unsigned char *m, size_t *
rc = PQCLEAN_RAINBOWIIICCLASSIC_CLEAN_rainbow_verify(digest, sm + mlen[0], (const pk_t *)pk);
}
if (!rc) {
memcpy(m, sm, smlen - _SIGNATURE_BYTE);
memmove(m, sm, smlen - _SIGNATURE_BYTE);
} else { // bad signature
*mlen = (size_t) -1;
memset(m, 0, smlen);


+ 1
- 1
crypto_sign/rainbowIIIc-cyclic-compressed/clean/sign.c View File

@@ -46,7 +46,7 @@ int PQCLEAN_RAINBOWIIICCYCLICCOMPRESSED_CLEAN_crypto_sign_open(unsigned char *m,
rc = PQCLEAN_RAINBOWIIICCYCLICCOMPRESSED_CLEAN_rainbow_verify_cyclic(digest, sm + mlen[0], (const cpk_t *)pk);
}
if (!rc) {
memcpy(m, sm, smlen - _SIGNATURE_BYTE);
memmove(m, sm, smlen - _SIGNATURE_BYTE);
} else { // bad signature
*mlen = (size_t) -1;
memset(m, 0, smlen);


+ 1
- 1
crypto_sign/rainbowIIIc-cyclic/clean/sign.c View File

@@ -46,7 +46,7 @@ int PQCLEAN_RAINBOWIIICCYCLIC_CLEAN_crypto_sign_open(unsigned char *m, size_t *m
rc = PQCLEAN_RAINBOWIIICCYCLIC_CLEAN_rainbow_verify_cyclic(digest, sm + mlen[0], (const cpk_t *)pk);
}
if (!rc) {
memcpy(m, sm, smlen - _SIGNATURE_BYTE);
memmove(m, sm, smlen - _SIGNATURE_BYTE);
} else { // bad signature
*mlen = (size_t) -1;
memset(m, 0, smlen);


+ 1
- 1
crypto_sign/rainbowIa-classic/clean/sign.c View File

@@ -44,7 +44,7 @@ int PQCLEAN_RAINBOWIACLASSIC_CLEAN_crypto_sign_open(unsigned char *m, size_t *ml
rc = PQCLEAN_RAINBOWIACLASSIC_CLEAN_rainbow_verify(digest, sm + mlen[0], (const pk_t *)pk);
}
if (!rc) {
memcpy(m, sm, smlen - _SIGNATURE_BYTE);
memmove(m, sm, smlen - _SIGNATURE_BYTE);
} else { // bad signature
*mlen = (size_t) -1;
memset(m, 0, smlen);


+ 1
- 1
crypto_sign/rainbowIa-cyclic-compressed/clean/sign.c View File

@@ -46,7 +46,7 @@ int PQCLEAN_RAINBOWIACYCLICCOMPRESSED_CLEAN_crypto_sign_open(unsigned char *m, s
rc = PQCLEAN_RAINBOWIACYCLICCOMPRESSED_CLEAN_rainbow_verify_cyclic(digest, sm + mlen[0], (const cpk_t *)pk);
}
if (!rc) {
memcpy(m, sm, smlen - _SIGNATURE_BYTE);
memmove(m, sm, smlen - _SIGNATURE_BYTE);
} else { // bad signature
*mlen = (size_t) -1;
memset(m, 0, smlen);


+ 1
- 1
crypto_sign/rainbowIa-cyclic/clean/sign.c View File

@@ -46,7 +46,7 @@ int PQCLEAN_RAINBOWIACYCLIC_CLEAN_crypto_sign_open(unsigned char *m, size_t *mle
rc = PQCLEAN_RAINBOWIACYCLIC_CLEAN_rainbow_verify_cyclic(digest, sm + mlen[0], (const cpk_t *)pk);
}
if (!rc) {
memcpy(m, sm, smlen - _SIGNATURE_BYTE);
memmove(m, sm, smlen - _SIGNATURE_BYTE);
} else { // bad signature
*mlen = (size_t) -1;
memset(m, 0, smlen);


+ 1
- 1
crypto_sign/rainbowVc-classic/clean/sign.c View File

@@ -44,7 +44,7 @@ int PQCLEAN_RAINBOWVCCLASSIC_CLEAN_crypto_sign_open(unsigned char *m, size_t *ml
rc = PQCLEAN_RAINBOWVCCLASSIC_CLEAN_rainbow_verify(digest, sm + mlen[0], (const pk_t *)pk);
}
if (!rc) {
memcpy(m, sm, smlen - _SIGNATURE_BYTE);
memmove(m, sm, smlen - _SIGNATURE_BYTE);
} else { // bad signature
*mlen = (size_t) -1;
memset(m, 0, smlen);


+ 1
- 1
crypto_sign/rainbowVc-cyclic-compressed/clean/sign.c View File

@@ -46,7 +46,7 @@ int PQCLEAN_RAINBOWVCCYCLICCOMPRESSED_CLEAN_crypto_sign_open(unsigned char *m, s
rc = PQCLEAN_RAINBOWVCCYCLICCOMPRESSED_CLEAN_rainbow_verify_cyclic(digest, sm + mlen[0], (const cpk_t *)pk);
}
if (!rc) {
memcpy(m, sm, smlen - _SIGNATURE_BYTE);
memmove(m, sm, smlen - _SIGNATURE_BYTE);
} else { // bad signature
*mlen = (size_t) -1;
memset(m, 0, smlen);


+ 1
- 1
crypto_sign/rainbowVc-cyclic/clean/sign.c View File

@@ -46,7 +46,7 @@ int PQCLEAN_RAINBOWVCCYCLIC_CLEAN_crypto_sign_open(unsigned char *m, size_t *mle
rc = PQCLEAN_RAINBOWVCCYCLIC_CLEAN_rainbow_verify_cyclic(digest, sm + mlen[0], (const cpk_t *)pk);
}
if (!rc) {
memcpy(m, sm, smlen - _SIGNATURE_BYTE);
memmove(m, sm, smlen - _SIGNATURE_BYTE);
} else { // bad signature
*mlen = (size_t) -1;
memset(m, 0, smlen);


Loading…
Cancel
Save