gosthash.c: use memmove in circle_xor8, as input pointers can be equal
authorAndy Polyakov <appro@openssl.org>
Mon, 13 Aug 2012 16:38:43 +0000 (16:38 +0000)
committerAndy Polyakov <appro@openssl.org>
Mon, 13 Aug 2012 16:38:43 +0000 (16:38 +0000)
[from HEAD].

PR: 2858

engines/ccgost/gosthash.c

index a5c0662ffc32f35ff7d3f8d812d3b8d8fa98b302..8c278aa6452e1e80555f79d442eff45d1e7be22c 100644 (file)
@@ -42,7 +42,7 @@ static void circle_xor8 (const byte *w, byte *k)
        byte buf[8];
        int i;
        memcpy(buf,w,8);
        byte buf[8];
        int i;
        memcpy(buf,w,8);
-       memcpy(k,w+8,24);
+       memmove(k,w+8,24);
        for(i=0;i<8;i++) 
                k[i+24]=buf[i]^k[i];
        }
        for(i=0;i<8;i++) 
                k[i+24]=buf[i]^k[i];
        }