svn commit: samba r2486 - in branches/SAMBA_4_0/source/scripting/swig: .

tpot at samba.org tpot at samba.org
Wed Sep 22 02:39:39 GMT 2004


Author: tpot
Date: 2004-09-22 02:39:38 +0000 (Wed, 22 Sep 2004)
New Revision: 2486

WebSVN: http://websvn.samba.org/websvn/changeset.php?rep=samba&path=/branches/SAMBA_4_0/source/scripting/swig&rev=2486&nolog=1

Log:
Use correct type checks when checking 64-bit quantities (int64, uint64,
NTTIME and HYPER_T).

Also use the correct conversion routines when creating 64 bit objects.

Modified:
   branches/SAMBA_4_0/source/scripting/swig/dcerpc.i


Changeset:
Modified: branches/SAMBA_4_0/source/scripting/swig/dcerpc.i
===================================================================
--- branches/SAMBA_4_0/source/scripting/swig/dcerpc.i	2004-09-22 02:05:02 UTC (rev 2485)
+++ branches/SAMBA_4_0/source/scripting/swig/dcerpc.i	2004-09-22 02:39:38 UTC (rev 2486)
@@ -118,17 +118,17 @@
 		return 0;
 	}
 
-	if (!PyInt_Check(obj)) {
-		PyErr_Format(PyExc_TypeError, "Expecting int value for %s", name);
+	if (!PyLong_Check(obj)) {
+		PyErr_Format(PyExc_TypeError, "Expecting long value for %s", name);
 		return 0;
 	}
 
-	return (int64)PyLong_AsLong(obj);
+	return (int64)PyLong_AsLongLong(obj);
 }
 
 PyObject *int64_to_python(int64 obj)
 {
-	return PyLong_FromLong(obj);
+	return PyLong_FromLongLong(obj);
 }
 
 uint64 uint64_from_python(PyObject *obj, char *name)
@@ -138,17 +138,17 @@
 		return 0;
 	}
 
-	if (!PyInt_Check(obj)) {
-		PyErr_Format(PyExc_TypeError, "Expecting int value for %s", name);
+	if (!PyLong_Check(obj)) {
+		PyErr_Format(PyExc_TypeError, "Expecting long value for %s", name);
 		return 0;
 	}
 
-	return (uint64)PyLong_AsLong(obj);
+	return (uint64)PyLong_AsUnsignedLongLong(obj);
 }
 
 PyObject *uint64_to_python(uint64 obj)
 {
-	return PyLong_FromLong(obj);
+	return PyLong_FromUnsignedLongLong(obj);
 }
 
 NTTIME NTTIME_from_python(PyObject *obj, char *name)
@@ -158,17 +158,17 @@
 		return 0;
 	}
 
-	if (!PyInt_Check(obj)) {
-		PyErr_Format(PyExc_TypeError, "Expecting integer value for %s", name);
+	if (!PyLong_Check(obj)) {
+		PyErr_Format(PyExc_TypeError, "Expecting long value for %s", name);
 		return 0;
 	}
 
-	return (NTTIME)PyLong_AsLong(obj);
+	return (NTTIME)PyLong_AsUnsignedLongLong(obj);
 }
 
 PyObject *NTTIME_to_python(NTTIME obj)
 {
-	return PyLong_FromLong(obj);
+	return PyLong_FromUnsignedLongLong(obj);
 }
 
 HYPER_T HYPER_T_from_python(PyObject *obj, char *name)
@@ -178,17 +178,17 @@
 		return 0;
 	}
 
-	if (!PyInt_Check(obj)) {
-		PyErr_Format(PyExc_TypeError, "Expecting integer value for %s", name);
+	if (!PyLong_Check(obj)) {
+		PyErr_Format(PyExc_TypeError, "Expecting long value for %s", name);
 		return 0;
 	}
 
-	return (HYPER_T)PyLong_AsLong(obj);
+	return (HYPER_T)PyLong_AsUnsignedLongLong(obj);
 }
 
 PyObject *HYPER_T_to_python(HYPER_T obj)
 {
-	return PyLong_FromLong(obj);
+	return PyLong_FromUnsignedLongLong(obj);
 }
 
 /* Conversion functions for types that we don't want generated automatically.



More information about the samba-cvs mailing list