提交 f86c7801 编写于 作者: D Daniel P. Berrange

Fix 32-bit int truncation in QED header check

* src/util/memory.c: Avoid 32-bit truncation extracting a 64bit int
上级 227ed266
......@@ -437,14 +437,14 @@ qedGetHeaderUL(const unsigned char *loc)
static unsigned long long
qedGetHeaderULL(const unsigned char *loc)
{
return ( ((unsigned long)loc[7] << 56)
| ((unsigned long)loc[6] << 48)
| ((unsigned long)loc[5] << 40)
| ((unsigned long)loc[4] << 32)
| ((unsigned long)loc[3] << 24)
| ((unsigned long)loc[2] << 16)
| ((unsigned long)loc[1] << 8)
| ((unsigned long)loc[0] << 0));
return ( ((unsigned long long)loc[7] << 56)
| ((unsigned long long)loc[6] << 48)
| ((unsigned long long)loc[5] << 40)
| ((unsigned long long)loc[4] << 32)
| ((unsigned long long)loc[3] << 24)
| ((unsigned long long)loc[2] << 16)
| ((unsigned long long)loc[1] << 8)
| ((unsigned long long)loc[0] << 0));
}
static int
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册