mirror of
https://github.com/novatiq/packages.git
synced 2026-04-30 15:38:40 +01:00
python-crypto: fixed endianness detection
This fixes setup.py so that it uses the endianness of the target system instead of detecting endianness from the host. This affects the computation of RIPEMD-160 hashes. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
This commit is contained in:
@@ -37,7 +37,10 @@ and various encryption algorithms (AES, DES, IDEA, RSA, ElGamal, etc.).
|
|||||||
endef
|
endef
|
||||||
|
|
||||||
define Build/Compile
|
define Build/Compile
|
||||||
$(call Build/Compile/PyMod,,install --prefix=/usr --root=$(PKG_INSTALL_DIR))
|
$(call Build/Compile/PyMod,,\
|
||||||
|
install --prefix=/usr --root=$(PKG_INSTALL_DIR),\
|
||||||
|
CONFIG_BIG_ENDIAN="$(CONFIG_BIG_ENDIAN)" \
|
||||||
|
)
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/python-crypto/install
|
define Package/python-crypto/install
|
||||||
|
|||||||
@@ -0,0 +1,15 @@
|
|||||||
|
--- a/setup.py 2015-10-30 23:30:22.334127083 +0800
|
||||||
|
+++ b/setup.py 2015-10-30 23:33:03.856098660 +0800
|
||||||
|
@@ -100,6 +100,12 @@
|
||||||
|
w(kwd.get("end", "\n"))
|
||||||
|
|
||||||
|
def endianness_macro():
|
||||||
|
+ if "CONFIG_BIG_ENDIAN" in os.environ:
|
||||||
|
+ if os.environ["CONFIG_BIG_ENDIAN"] == "y":
|
||||||
|
+ return ('PCT_BIG_ENDIAN', 1)
|
||||||
|
+ else:
|
||||||
|
+ return ('PCT_LITTLE_ENDIAN', 1)
|
||||||
|
+ raise AssertionError("CONFIG_BIG_ENDIAN environment variable missing")
|
||||||
|
s = struct.pack("@I", 0x33221100)
|
||||||
|
if s == "\x00\x11\x22\x33".encode(): # little endian
|
||||||
|
return ('PCT_LITTLE_ENDIAN', 1)
|
||||||
Reference in New Issue
Block a user