TALLOC_CTX *tmp_ctx;
WERROR werr;
Py_ssize_t i;
- Py_ssize_t _size;
if (!PyArg_ParseTuple(args, "OsO", &py_ldb, &ldap_display_name, &el_list)) {
return NULL;
for (i = 0; i < el->num_values; i++) {
PyObject *item = PyList_GetItem(el_list, i);
- if (!(PyStr_Check(item) || PyUnicode_Check(item))) {
- PyErr_Format(PyExc_TypeError, "ldif_elements should be strings");
+ if (!(PyBytes_Check(item))) {
+ PyErr_Format(PyExc_TypeError,
+ "ldif_element type should be "
+ PY_DESC_PY3_BYTES
+ );
talloc_free(tmp_ctx);
return NULL;
}
- el->values[i].data = (uint8_t *)PyStr_AsUTF8AndSize(item, &_size);
- el->values[i].length = _size;
+ el->values[i].data =
+ (uint8_t *)PyBytes_AsString(item);
+ el->values[i].length = PyBytes_Size(item);
}
}