diff options
-rw-r--r-- | source3/python/py_tdbpack.c | 94 |
1 files changed, 0 insertions, 94 deletions
diff --git a/source3/python/py_tdbpack.c b/source3/python/py_tdbpack.c index 12e38181237..3f7d21604b2 100644 --- a/source3/python/py_tdbpack.c +++ b/source3/python/py_tdbpack.c @@ -449,100 +449,6 @@ pytdbpack_unpack(PyObject *self, -#if 0 -/* - Internal routine that calculates how many bytes will be required to - encode the values in the format. - - Also checks that the value list is the right size for the format list. - - Returns number of bytes (may be 0), or -1 if there's something wrong, in - which case a Python exception has been raised. - - Arguments: - - val_seq: a Fast Sequence (list or tuple), being all the values -*/ -static int -pytdbpack_calc_reqd_len(char *format_str, - PyObject *val_seq) -{ - int len = 0; - char *p; - int val_i; - int val_len; - - val_len = PySequence_Length(val_seq); - if (val_len == -1) - return -1; - - for (p = format_str, val_i = 0; *p; p++, val_i++) { - char ch = *p; - - if (val_i >= val_len) { - PyErr_Format(PyExc_IndexError, - "%s: value list is too short for format string", - __FUNCTION__); - return -1; - } - - /* borrow a reference to the item */ - if (ch == 'd' || ch == 'p') - len += 4; - else if (ch == 'w') - len += 2; - else if (ch == 'f' || ch == 'P') { - /* nul-terminated 8-bit string */ - int item_len; - PyObject *str_obj; - - str_obj = PySequence_GetItem(val_seq, val_i); - if (!str_obj) - return -1; - - if (!PyString_Check(str_obj) || ((item_len = PyString_Size(str_obj)) == -1)) { - pytdbpack_bad_type(ch, "String", str_obj); - return -1; - } - - len += 1 + item_len; - } - else if (ch == 'B') { - /* length-preceded byte buffer: n bytes, plus a preceding - * word */ - PyObject *len_obj; - long len_val; - - len_obj = PySequence_GetItem(val_seq, val_i); - val_i++; /* skip over buffer */ - - if (!PyNumber_Check(len_obj)) { - pytdbpack_bad_type(ch, "Number", len_obj); - return -1; - } - - len_val = PyInt_AsLong(len_obj); - if (len_val < 0) { - PyErr_Format(PyExc_ValueError, - "%s: format 'B' requires positive integer", __FUNCTION__); - return -1; - } - - len += 4 + len_val; - } - else { - PyErr_Format(PyExc_ValueError, - "%s: format character '%c' is not supported", - __FUNCTION__, ch); - - return -1; - } - } - - return len; -} -#endif - static PyObject *pytdbpack_bad_type(char ch, const char *expected, |