[Python-checkins] python/dist/src/Demo/md5test md5driver.py,1.1,1.1.30.1

jhylton@users.sourceforge.net jhylton@users.sourceforge.net
Mon, 28 Apr 2003 10:39:37 -0700


Update of /cvsroot/python/python/dist/src/Demo/md5test
In directory sc8-pr-cvs1:/tmp/cvs-serv27228/Demo/md5test

Modified Files:
      Tag: ast-branch
	md5driver.py 
Log Message:
Merge head to this branch.

Merge all sorts of changes from just before 2.3b1 into the ast
branch.  This should make the eventual merge back to the trunk easier.

The merge is almost entirely porting changes into the ast-branch.
There was no attempt to get changes to compile.c into newcompile.c.
That work should be done when newcompile.c is closer to completion.

The only significant conflicts appeared to be in pythonrun.c.


Index: md5driver.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Demo/md5test/md5driver.py,v
retrieving revision 1.1
retrieving revision 1.1.30.1
diff -C2 -d -r1.1 -r1.1.30.1
*** md5driver.py	8 Oct 1994 19:17:34 -0000	1.1
--- md5driver.py	28 Apr 2003 17:39:03 -0000	1.1.30.1
***************
*** 1,77 ****
  import string
  
  def MDPrint(str):
! 	outstr = ''
! 	for i in str:
! 		o = ord(i)
! 		outstr = outstr \
! 			  + string.hexdigits[(o >> 4) & 0xF] \
! 			  + string.hexdigits[o & 0xF]
! 	print outstr,
! 	
  
  from time import time
  
  def makestr(start, end):
! 	result = ''
! 	for i in range(start, end + 1):
! 		result = result + chr(i)
  
! 	return result
! 	
  
- from md5 import md5
  
  def MDTimeTrial():
! 	TEST_BLOCK_SIZE = 1000
! 	TEST_BLOCKS = 10000
  
! 	TEST_BYTES = TEST_BLOCK_SIZE * TEST_BLOCKS
  
! 	# initialize test data, need temporary string filler
! 	
! 	filsiz = 1 << 8
! 	filler = makestr(0, filsiz-1)
! 	data = filler * (TEST_BLOCK_SIZE / filsiz);
! 	data = data + filler[:(TEST_BLOCK_SIZE % filsiz)]
  
! 	del filsiz, filler
  
  
- 	# start timer
- 	print 'MD5 time trial. Processing', TEST_BYTES, 'characters...'
- 	t1 = time()
  
! 	mdContext = md5()
  
! 	for i in range(TEST_BLOCKS):
! 		mdContext.update(data)
  
! 	str = mdContext.digest()
! 	t2 = time()
  
! 	MDPrint(str)
! 	print 'is digest of test input.'
! 	print 'Seconds to process test input:', t2 - t1
! 	print 'Characters processed per second:', TEST_BYTES / (t2 - t1)
  
  
  def MDString(str):
! 	MDPrint(md5(str).digest())
! 	print '"' + str + '"'
  
  
  def MDFile(filename):
! 	f = open(filename, 'rb');
! 	mdContext = md5()
  
! 	while 1:
! 		data = f.read(1024)
! 		if not data:
! 			break
! 		mdContext.update(data)
  
! 	MDPrint(mdContext.digest())
! 	print filename
  
  
--- 1,77 ----
  import string
+ import md5
+ from sys import argv
  
  def MDPrint(str):
!     outstr = ''
!     for i in str:
!         o = ord(i)
!         outstr = (outstr 
!                   + string.hexdigits[(o >> 4) & 0xF] 
!                   + string.hexdigits[o & 0xF])
!     print outstr,
! 
  
  from time import time
  
  def makestr(start, end):
!     result = ''
!     for i in range(start, end + 1):
!         result = result + chr(i)
  
!     return result
  
  
  def MDTimeTrial():
!     TEST_BLOCK_SIZE = 1000
!     TEST_BLOCKS = 10000
  
!     TEST_BYTES = TEST_BLOCK_SIZE * TEST_BLOCKS
  
!     # initialize test data, need temporary string filler
  
!     filsiz = 1 << 8
!     filler = makestr(0, filsiz-1)
!     data = filler * (TEST_BLOCK_SIZE / filsiz);
!     data = data + filler[:(TEST_BLOCK_SIZE % filsiz)]
  
+     del filsiz, filler
  
  
!     # start timer
!     print 'MD5 time trial. Processing', TEST_BYTES, 'characters...'
!     t1 = time()
  
!     mdContext = md5.new()
  
!     for i in range(TEST_BLOCKS):
!         mdContext.update(data)
  
!     str = mdContext.digest()
!     t2 = time()
! 
!     MDPrint(str)
!     print 'is digest of test input.'
!     print 'Seconds to process test input:', t2 - t1
!     print 'Characters processed per second:', TEST_BYTES / (t2 - t1)
  
  
  def MDString(str):
!     MDPrint(md5.new(str).digest())
!     print '"' + str + '"'
  
  
  def MDFile(filename):
!     f = open(filename, 'rb');
!     mdContext = md5.new()
  
!     while 1:
!         data = f.read(1024)
!         if not data:
!             break
!         mdContext.update(data)
  
!     MDPrint(mdContext.digest())
!     print filename
  
  
***************
*** 79,125 ****
  
  def MDFilter():
! 	mdContext = md5()
  
! 	while 1:
! 		data = sys.stdin.read(16)
! 		if not data:
! 			break
! 		mdContext.update(data)
  
! 	MDPrint(mdContext.digest())
! 	print
  
  
  def MDTestSuite():
! 	print 'MD5 test suite results:'
! 	MDString('')
! 	MDString('a')
! 	MDString('abc')
! 	MDString('message digest')
! 	MDString(makestr(ord('a'), ord('z')))
! 	MDString(makestr(ord('A'), ord('Z')) \
! 		  + makestr(ord('a'), ord('z')) \
! 		  + makestr(ord('0'), ord('9')))
! 	MDString((makestr(ord('1'), ord('9')) + '0') * 8)
! 
! 	# Contents of file foo are "abc"
! 	MDFile('foo')
  
  
- from sys import argv
  
  # I don't wanna use getopt(), since I want to use the same i/f...
  def main():
! 	if len(argv) == 1:
! 		MDFilter()
! 	for arg in argv[1:]:
! 		if arg[:2] == '-s':
! 			MDString(arg[2:])
! 		elif arg == '-t':
! 			MDTimeTrial()
! 		elif arg == '-x':
! 			MDTestSuite()
! 		else:
! 			MDFile(arg)
  
  main()
--- 79,123 ----
  
  def MDFilter():
!     mdContext = md5.new()
  
!     while 1:
!         data = sys.stdin.read(16)
!         if not data:
!             break
!         mdContext.update(data)
  
!     MDPrint(mdContext.digest())
!     print
  
  
  def MDTestSuite():
!     print 'MD5 test suite results:'
!     MDString('')
!     MDString('a')
!     MDString('abc')
!     MDString('message digest')
!     MDString(makestr(ord('a'), ord('z')))
!     MDString(makestr(ord('A'), ord('Z')) 
!               + makestr(ord('a'), ord('z')) 
!               + makestr(ord('0'), ord('9')))
!     MDString((makestr(ord('1'), ord('9')) + '0') * 8)
  
+     # Contents of file foo are "abc"
+     MDFile('foo')
  
  
  # I don't wanna use getopt(), since I want to use the same i/f...
  def main():
!     if len(argv) == 1:
!         MDFilter()
!     for arg in argv[1:]:
!         if arg[:2] == '-s':
!             MDString(arg[2:])
!         elif arg == '-t':
!             MDTimeTrial()
!         elif arg == '-x':
!             MDTestSuite()
!         else:
!             MDFile(arg)
  
  main()