}
v = BVAL(in->value_ctr.values[i].blob->data, 0);
+ if (v == 0) {
+ /* special case for 1601 zero timestamp */
+ out->values[i] = data_blob_string_const("16010101000000.0Z");
+ continue;
+ }
v *= 10000000;
t = nt_time_to_unix(v);
blobs[i] = data_blob_talloc(blobs, NULL, 8);
W_ERROR_HAVE_NO_MEMORY(blobs[i].data);
+ if (ldb_val_string_cmp("16010101000000.0Z", &in->values[i]) == 0) {
+ SBVALS(blobs[i].data, 0, 0);
+ continue;
+ }
+
t = ldb_string_utc_to_time((const char *)in->values[i].data);
unix_to_nt_time(&v, t);
v /= 10000000;
}
v = BVAL(in->value_ctr.values[i].blob->data, 0);
+ if (v == 0) {
+ /* special case for 1601 zero timestamp */
+ out->values[i] = data_blob_string_const("16010101000000.0Z");
+ continue;
+ }
v *= 10000000;
t = nt_time_to_unix(v);
blobs[i] = data_blob_talloc(blobs, NULL, 8);
W_ERROR_HAVE_NO_MEMORY(blobs[i].data);
+ if (ldb_val_string_cmp("16010101000000.0Z", &in->values[i]) == 0) {
+ SBVALS(blobs[i].data, 0, 0);
+ continue;
+ }
+
ret = ldb_val_to_time(&in->values[i], &t);
if (ret != LDB_SUCCESS) {
return WERR_DS_INVALID_ATTRIBUTE_SYNTAX;