Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(247)

Unified Diff: third_party/tlslite/tlslite/utils/jython_compat.py

Issue 210323002: Update tlslite to 0.4.6. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Executable bit and --similarity=80 Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « third_party/tlslite/tlslite/utils/hmac.py ('k') | third_party/tlslite/tlslite/utils/keyfactory.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/tlslite/tlslite/utils/jython_compat.py
diff --git a/third_party/tlslite/tlslite/utils/jython_compat.py b/third_party/tlslite/tlslite/utils/jython_compat.py
deleted file mode 100644
index 1245183a99c0fa29a15ec55d4b8ecf70358f2c11..0000000000000000000000000000000000000000
--- a/third_party/tlslite/tlslite/utils/jython_compat.py
+++ /dev/null
@@ -1,195 +0,0 @@
-"""Miscellaneous functions to mask Python/Jython differences."""
-
-import os
-import sha
-
-if os.name != "java":
- BaseException = Exception
-
- from sets import Set
- import array
- import math
-
- def createByteArraySequence(seq):
- return array.array('B', seq)
- def createByteArrayZeros(howMany):
- return array.array('B', [0] * howMany)
- def concatArrays(a1, a2):
- return a1+a2
-
- def bytesToString(bytes):
- return bytes.tostring()
-
- def stringToBytes(s):
- bytes = createByteArrayZeros(0)
- bytes.fromstring(s)
- return bytes
-
- def numBits(n):
- if n==0:
- return 0
- return int(math.floor(math.log(n, 2))+1)
-
- class CertChainBase: pass
- class SelfTestBase: pass
- class ReportFuncBase: pass
-
- #Helper functions for working with sets (from Python 2.3)
- def iterSet(set):
- return iter(set)
-
- def getListFromSet(set):
- return list(set)
-
- #Factory function for getting a SHA1 object
- def getSHA1(s):
- return sha.sha(s)
-
- import sys
- import traceback
-
- def formatExceptionTrace(e):
- newStr = "".join(traceback.format_exception(sys.exc_type, sys.exc_value, sys.exc_traceback))
- return newStr
-
-else:
- #Jython 2.1 is missing lots of python 2.3 stuff,
- #which we have to emulate here:
- import java
- import jarray
-
- BaseException = java.lang.Exception
-
- def createByteArraySequence(seq):
- if isinstance(seq, type("")): #If it's a string, convert
- seq = [ord(c) for c in seq]
- return jarray.array(seq, 'h') #use short instead of bytes, cause bytes are signed
- def createByteArrayZeros(howMany):
- return jarray.zeros(howMany, 'h') #use short instead of bytes, cause bytes are signed
- def concatArrays(a1, a2):
- l = list(a1)+list(a2)
- return createByteArraySequence(l)
-
- #WAY TOO SLOW - MUST BE REPLACED------------
- def bytesToString(bytes):
- return "".join([chr(b) for b in bytes])
-
- def stringToBytes(s):
- bytes = createByteArrayZeros(len(s))
- for count, c in enumerate(s):
- bytes[count] = ord(c)
- return bytes
- #WAY TOO SLOW - MUST BE REPLACED------------
-
- def numBits(n):
- if n==0:
- return 0
- n= 1L * n; #convert to long, if it isn't already
- return n.__tojava__(java.math.BigInteger).bitLength()
-
- #This properly creates static methods for Jython
- class staticmethod:
- def __init__(self, anycallable): self.__call__ = anycallable
-
- #Properties are not supported for Jython
- class property:
- def __init__(self, anycallable): pass
-
- #True and False have to be specially defined
- False = 0
- True = 1
-
- class StopIteration(Exception): pass
-
- def enumerate(collection):
- return zip(range(len(collection)), collection)
-
- class Set:
- def __init__(self, seq=None):
- self.values = {}
- if seq:
- for e in seq:
- self.values[e] = None
-
- def add(self, e):
- self.values[e] = None
-
- def discard(self, e):
- if e in self.values.keys():
- del(self.values[e])
-
- def union(self, s):
- ret = Set()
- for e in self.values.keys():
- ret.values[e] = None
- for e in s.values.keys():
- ret.values[e] = None
- return ret
-
- def issubset(self, other):
- for e in self.values.keys():
- if e not in other.values.keys():
- return False
- return True
-
- def __nonzero__( self):
- return len(self.values.keys())
-
- def __contains__(self, e):
- return e in self.values.keys()
-
- def iterSet(set):
- return set.values.keys()
-
- def getListFromSet(set):
- return set.values.keys()
-
- """
- class JCE_SHA1:
- def __init__(self, s=None):
- self.md = java.security.MessageDigest.getInstance("SHA1")
- if s:
- self.update(s)
-
- def update(self, s):
- self.md.update(s)
-
- def copy(self):
- sha1 = JCE_SHA1()
- sha1.md = self.md.clone()
- return sha1
-
- def digest(self):
- digest = self.md.digest()
- bytes = jarray.zeros(20, 'h')
- for count in xrange(20):
- x = digest[count]
- if x < 0: x += 256
- bytes[count] = x
- return bytes
- """
-
- #Factory function for getting a SHA1 object
- #The JCE_SHA1 class is way too slow...
- #the sha.sha object we use instead is broken in the jython 2.1
- #release, and needs to be patched
- def getSHA1(s):
- #return JCE_SHA1(s)
- return sha.sha(s)
-
-
- #Adjust the string to an array of bytes
- def stringToJavaByteArray(s):
- bytes = jarray.zeros(len(s), 'b')
- for count, c in enumerate(s):
- x = ord(c)
- if x >= 128: x -= 256
- bytes[count] = x
- return bytes
-
- import sys
- import traceback
-
- def formatExceptionTrace(e):
- newStr = "".join(traceback.format_exception(sys.exc_type, sys.exc_value, sys.exc_traceback))
- return newStr
« no previous file with comments | « third_party/tlslite/tlslite/utils/hmac.py ('k') | third_party/tlslite/tlslite/utils/keyfactory.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698