def parse_binary(value, length, cursor): to_length = libpq.c_uint() s = libpq.PQunescapeBytea(value, libpq.pointer(to_length)) try: res = buffer(s[:to_length.value]) finally: libpq.PQfreemem(s) return res
def getquoted(self): to_length = libpq.c_uint() if self._conn: data_pointer = libpq.PQescapeByteaConn( self._conn._pgconn, str(self._wrapped), len(self._wrapped), libpq.pointer(to_length)) else: data_pointer = libpq.PQescapeBytea( self._wrapped, len(self._wrapped), libpq.pointer(to_length)) data = data_pointer[:to_length.value - 1] libpq.PQfreemem(data_pointer) return r"'%s'::bytea" % data