X-Git-Url: http://wagner.pp.ru/gitweb/?a=blobdiff_plain;f=ctypescrypto%2Fbio.py;h=b1700b9a869ca80dd1eba7dba1c13117782202b0;hb=92df3e73921ba7b8756bfab1af4189dab7cc610e;hp=a33310572cdc54213a70c10881044e0bce0c6fc9;hpb=b4ee51a0aca14c0af5853545b9e524cc1b57b656;p=oss%2Fctypescrypto.git diff --git a/ctypescrypto/bio.py b/ctypescrypto/bio.py index a333105..b1700b9 100644 --- a/ctypescrypto/bio.py +++ b/ctypescrypto/bio.py @@ -3,7 +3,7 @@ Interface to OpenSSL BIO library """ from ctypescrypto import libcrypto from ctypes import c_char_p, c_void_p, c_int, string_at, c_long,POINTER,byref, create_string_buffer -class Membio: +class Membio(object): """ Provides interface to OpenSSL memory bios use str() or unicode() to get contents of writable bio @@ -42,7 +42,7 @@ class Membio: @param length - if specifed, limits amount of data read. If not BIO is read until end of buffer """ if not length is None: - if type(length)!=type(0): + if not isinstance(length,(int,long)): raise TypeError("length to read should be number") buf=create_string_buffer(length) readbytes=libcrypto.BIO_read(self.bio,buf,length) @@ -83,6 +83,8 @@ class Membio: Resets the read-only bio to start and discards all data from writable bio """ libcrypto.BIO_ctrl(self.bio,1,0,None) + +__all__ = ['Membio'] libcrypto.BIO_s_mem.restype=c_void_p libcrypto.BIO_new.restype=c_void_p libcrypto.BIO_new.argtypes=(c_void_p,)