def decrypt(self, passphrase): algo = ffi.new("uint8_t[1]") key = ffi.new("uint8_t[32]") key_len = ffi.new("size_t[1]") key_len[0] = len(key) invoke(lib.pgp_skesk_decrypt, self.ref(), ffi.from_buffer(passphrase), len(passphrase), algo, key, key_len) return (algo[0], ffi.buffer(key, key_len[0]))
def buffer_unread_content(self): buf_len = ffi.new("size_t[1]") buf = invoke(lib.pgp_packet_parser_buffer_unread_content, self.ref(), buf_len) return ffi.buffer(buf, buf_len[0])
def value(self): buf_len = ffi.new("size_t[1]") buf = lib.pgp_user_attribute_value(self.ref(), buf_len) return ffi.buffer(buf, buf_len[0])