|
Server : Apache/2.2.17 (Unix) mod_ssl/2.2.17 OpenSSL/0.9.8e-fips-rhel5 DAV/2 PHP/5.2.17 System : Linux localhost 2.6.18-419.el5 #1 SMP Fri Feb 24 22:47:42 UTC 2017 x86_64 User : nobody ( 99) PHP Version : 5.2.17 Disable Function : NONE Directory : /proc/21585/root/usr/lib64/python2.4/site-packages/M2Crypto/ |
Upload File : |
"""
M2Crypto utility routines.
Copyright (c) 1999-2004 Ng Pheng Siong. All rights reserved.
Portions created by Open Source Applications Foundation (OSAF) are
Copyright (C) 2004 OSAF. All Rights Reserved.
"""
import sys
import m2
class UtilError(Exception): pass
m2.util_init(UtilError)
def h2b(s):
import array, string
ar=array.array('c')
start=0
if s[:2]=='0x':
start=2
for i in range(start, len(s), 2):
num=string.atoi("%s"%(s[i:i+2],), 16)
ar.append(chr(num))
return ar.tostring()
def pkcs5_pad(data, blklen=8):
pad=(8-(len(data)%8))
return data+chr(pad)*pad
def pkcs7_pad(data, blklen):
if blklen>255:
raise ValueError, 'illegal block size'
pad=(blklen-(len(data)%blklen))
return data+chr(pad)*pad
def octx_to_num(x):
v = 0L
lx = len(x)
for i in range(lx):
v = v + ord(x[i]) * (256L ** (lx-i-1))
return v
def genparam_callback(p, n, out=sys.stdout):
ch = ['.','+','*','\n']
out.write(ch[p])
out.flush()
def quiet_genparam_callback(p, n, out):
pass
def passphrase_callback(v, prompt1='Enter passphrase:',
prompt2='Verify passphrase:'):
from getpass import getpass
while 1:
try:
p1=getpass(prompt1)
if v:
p2=getpass(prompt2)
if p1==p2:
break
else:
break
except KeyboardInterrupt:
return None
return p1
def no_passphrase_callback(*args):
return ''