From 099325e01b9c244bdaf96e072829195243caced9 Mon Sep 17 00:00:00 2001 From: Fred Drake Date: Mon, 14 Aug 2000 15:47:03 +0000 Subject: [PATCH] Add a byte_order value to the sys module. The value is "big" for big-endian machines and "little" for little-endian machines. --- Python/sysmodule.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/Python/sysmodule.c b/Python/sysmodule.c index 8883ba1d87..2ae6d20f5c 100644 --- a/Python/sysmodule.c +++ b/Python/sysmodule.c @@ -456,6 +456,19 @@ _PySys_Init(void) PyDict_SetItemString(sysdict, "builtin_module_names", v = list_builtin_module_names()); Py_XDECREF(v); + { + /* Assumes that longs are at least 2 bytes long. + Should be safe! */ + unsigned long number = 1; + + s = (char *) &number; + if (s[0] == 0) + PyDict_SetItemString(sysdict, "byte_order", + PyString_FromString("big")); + else + PyDict_SetItemString(sysdict, "byte_order", + PyString_FromString("little")); + } #ifdef MS_COREDLL PyDict_SetItemString(sysdict, "dllhandle", v = PyLong_FromVoidPtr(PyWin_DLLhModule)); -- 2.40.0