tdb                30 lib/tdb/common/dump.c static tdb_off_t tdb_dump_record(struct tdb_context *tdb, int hash,
tdb                36 lib/tdb/common/dump.c 	if (tdb->methods->tdb_read(tdb, offset, (char *)&rec, 
tdb                49 lib/tdb/common/dump.c 	if (tdb_ofs_read(tdb, tailer_ofs, &tailer) == -1) {
tdb                61 lib/tdb/common/dump.c static int tdb_dump_chain(struct tdb_context *tdb, int i)
tdb                67 lib/tdb/common/dump.c 	if (tdb_lock(tdb, i, F_WRLCK) != 0)
tdb                70 lib/tdb/common/dump.c 	if (tdb_ofs_read(tdb, top, &rec_ptr) == -1)
tdb                71 lib/tdb/common/dump.c 		return tdb_unlock(tdb, i, F_WRLCK);
tdb                77 lib/tdb/common/dump.c 		rec_ptr = tdb_dump_record(tdb, i, rec_ptr);
tdb                80 lib/tdb/common/dump.c 	return tdb_unlock(tdb, i, F_WRLCK);
tdb                83 lib/tdb/common/dump.c void tdb_dump_all(struct tdb_context *tdb)
tdb                86 lib/tdb/common/dump.c 	for (i=0;i<tdb->header.hash_size;i++) {
tdb                87 lib/tdb/common/dump.c 		tdb_dump_chain(tdb, i);
tdb                90 lib/tdb/common/dump.c 	tdb_dump_chain(tdb, -1);
tdb                93 lib/tdb/common/dump.c int tdb_printfreelist(struct tdb_context *tdb)
tdb               100 lib/tdb/common/dump.c 	if ((ret = tdb_lock(tdb, -1, F_WRLCK)) != 0)
tdb               106 lib/tdb/common/dump.c 	if (tdb_ofs_read(tdb, offset, &rec_ptr) == -1) {
tdb               107 lib/tdb/common/dump.c 		tdb_unlock(tdb, -1, F_WRLCK);
tdb               113 lib/tdb/common/dump.c 		if (tdb->methods->tdb_read(tdb, rec_ptr, (char *)&rec, 
tdb               115 lib/tdb/common/dump.c 			tdb_unlock(tdb, -1, F_WRLCK);
tdb               121 lib/tdb/common/dump.c 			tdb_unlock(tdb, -1, F_WRLCK);
tdb               135 lib/tdb/common/dump.c 	return tdb_unlock(tdb, -1, F_WRLCK);
tdb                30 lib/tdb/common/error.c enum TDB_ERROR tdb_error(struct tdb_context *tdb)
tdb                32 lib/tdb/common/error.c 	return tdb->ecode;
tdb                49 lib/tdb/common/error.c const char *tdb_errorstr(struct tdb_context *tdb)
tdb                53 lib/tdb/common/error.c 		if (tdb->ecode == emap[i].ecode)
tdb                37 lib/tdb/common/freelist.c int tdb_rec_free_read(struct tdb_context *tdb, tdb_off_t off, struct list_struct *rec)
tdb                39 lib/tdb/common/freelist.c 	if (tdb->methods->tdb_read(tdb, off, rec, sizeof(*rec),DOCONV()) == -1)
tdb                45 lib/tdb/common/freelist.c 		TDB_LOG((tdb, TDB_DEBUG_WARNING, "tdb_rec_free_read non-free magic 0x%x at offset=%d - fixing\n", 
tdb                48 lib/tdb/common/freelist.c 		if (tdb->methods->tdb_write(tdb, off, rec, sizeof(*rec)) == -1)
tdb                54 lib/tdb/common/freelist.c 		tdb->ecode = TDB_ERR_CORRUPT;
tdb                55 lib/tdb/common/freelist.c 		TDB_LOG((tdb, TDB_DEBUG_WARNING, "tdb_rec_free_read bad magic 0x%x at offset=%d\n", 
tdb                59 lib/tdb/common/freelist.c 	if (tdb->methods->tdb_oob(tdb, rec->next+sizeof(*rec), 0) != 0)
tdb                67 lib/tdb/common/freelist.c static int remove_from_freelist(struct tdb_context *tdb, tdb_off_t off, tdb_off_t next)
tdb                73 lib/tdb/common/freelist.c 	while (tdb_ofs_read(tdb, last_ptr, &i) != -1 && i != 0) {
tdb                76 lib/tdb/common/freelist.c 			return tdb_ofs_write(tdb, last_ptr, &next);
tdb                81 lib/tdb/common/freelist.c 	TDB_LOG((tdb, TDB_DEBUG_FATAL,"remove_from_freelist: not on list at off=%d\n", off));
tdb                88 lib/tdb/common/freelist.c static int update_tailer(struct tdb_context *tdb, tdb_off_t offset,
tdb                95 lib/tdb/common/freelist.c 	return tdb_ofs_write(tdb, offset + totalsize - sizeof(tdb_off_t),
tdb               101 lib/tdb/common/freelist.c int tdb_free(struct tdb_context *tdb, tdb_off_t offset, struct list_struct *rec)
tdb               104 lib/tdb/common/freelist.c 	if (tdb_lock(tdb, -1, F_WRLCK) != 0)
tdb               108 lib/tdb/common/freelist.c 	if (update_tailer(tdb, offset, rec) != 0) {
tdb               109 lib/tdb/common/freelist.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_free: update_tailer failed!\n"));
tdb               115 lib/tdb/common/freelist.c 	if (offset + sizeof(*rec) + rec->rec_len + sizeof(*rec) <= tdb->map_size) {
tdb               119 lib/tdb/common/freelist.c 		if (tdb->methods->tdb_read(tdb, right, &r, sizeof(r), DOCONV()) == -1) {
tdb               120 lib/tdb/common/freelist.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_free: right read failed at %u\n", right));
tdb               126 lib/tdb/common/freelist.c 			if (remove_from_freelist(tdb, right, r.next) == -1) {
tdb               127 lib/tdb/common/freelist.c 				TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_free: right free failed at %u\n", right));
tdb               131 lib/tdb/common/freelist.c 			if (update_tailer(tdb, offset, rec) == -1) {
tdb               132 lib/tdb/common/freelist.c 				TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_free: update_tailer failed at %u\n", offset));
tdb               141 lib/tdb/common/freelist.c 	if (offset - sizeof(tdb_off_t) > TDB_DATA_START(tdb->header.hash_size)) {
tdb               147 lib/tdb/common/freelist.c 		if (tdb_ofs_read(tdb, left, &leftsize) == -1) {
tdb               148 lib/tdb/common/freelist.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_free: left offset read failed at %u\n", left));
tdb               160 lib/tdb/common/freelist.c 		    left < TDB_DATA_START(tdb->header.hash_size)) {
tdb               165 lib/tdb/common/freelist.c 		if (tdb->methods->tdb_read(tdb, left, &l, sizeof(l), DOCONV()) == -1) {
tdb               166 lib/tdb/common/freelist.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_free: left read failed at %u (%u)\n", left, leftsize));
tdb               176 lib/tdb/common/freelist.c 			if (tdb_rec_write(tdb, left, &l) == -1) {
tdb               177 lib/tdb/common/freelist.c 				TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_free: update_left failed at %u\n", left));
tdb               180 lib/tdb/common/freelist.c 			if (update_tailer(tdb, left, &l) == -1) {
tdb               181 lib/tdb/common/freelist.c 				TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_free: update_tailer failed at %u\n", offset));
tdb               184 lib/tdb/common/freelist.c 			tdb_unlock(tdb, -1, F_WRLCK);
tdb               194 lib/tdb/common/freelist.c 	if (tdb_ofs_read(tdb, FREELIST_TOP, &rec->next) == -1 ||
tdb               195 lib/tdb/common/freelist.c 	    tdb_rec_write(tdb, offset, rec) == -1 ||
tdb               196 lib/tdb/common/freelist.c 	    tdb_ofs_write(tdb, FREELIST_TOP, &offset) == -1) {
tdb               197 lib/tdb/common/freelist.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_free record write failed at offset=%d\n", offset));
tdb               202 lib/tdb/common/freelist.c 	tdb_unlock(tdb, -1, F_WRLCK);
tdb               206 lib/tdb/common/freelist.c 	tdb_unlock(tdb, -1, F_WRLCK);
tdb               220 lib/tdb/common/freelist.c static tdb_off_t tdb_allocate_ofs(struct tdb_context *tdb, 
tdb               230 lib/tdb/common/freelist.c 		if (tdb_ofs_write(tdb, last_ptr, &rec->next) == -1) {
tdb               236 lib/tdb/common/freelist.c 		if (tdb_rec_write(tdb, rec_ptr, rec) == -1) {
tdb               244 lib/tdb/common/freelist.c 	if (tdb_rec_write(tdb, rec_ptr, rec) == -1) {
tdb               247 lib/tdb/common/freelist.c 	if (update_tailer(tdb, rec_ptr, rec) == -1) {
tdb               258 lib/tdb/common/freelist.c 	if (tdb_rec_write(tdb, rec_ptr, rec) == -1) {
tdb               262 lib/tdb/common/freelist.c 	if (update_tailer(tdb, rec_ptr, rec) == -1) {
tdb               275 lib/tdb/common/freelist.c tdb_off_t tdb_allocate(struct tdb_context *tdb, tdb_len_t length, struct list_struct *rec)
tdb               284 lib/tdb/common/freelist.c 	if (tdb_lock(tdb, -1, F_WRLCK) == -1)
tdb               295 lib/tdb/common/freelist.c 	if (tdb_ofs_read(tdb, FREELIST_TOP, &rec_ptr) == -1)
tdb               308 lib/tdb/common/freelist.c 		if (tdb_rec_free_read(tdb, rec_ptr, rec) == -1) {
tdb               342 lib/tdb/common/freelist.c 		if (tdb_rec_free_read(tdb, bestfit.rec_ptr, rec) == -1) {
tdb               346 lib/tdb/common/freelist.c 		newrec_ptr = tdb_allocate_ofs(tdb, length, bestfit.rec_ptr, 
tdb               348 lib/tdb/common/freelist.c 		tdb_unlock(tdb, -1, F_WRLCK);
tdb               354 lib/tdb/common/freelist.c 	if (tdb_expand(tdb, length + sizeof(*rec)) == 0)
tdb               357 lib/tdb/common/freelist.c 	tdb_unlock(tdb, -1, F_WRLCK);
tdb               366 lib/tdb/common/freelist.c int tdb_freelist_size(struct tdb_context *tdb)
tdb               371 lib/tdb/common/freelist.c 	if (tdb_lock(tdb, -1, F_RDLCK) == -1) {
tdb               376 lib/tdb/common/freelist.c 	while (tdb_ofs_read(tdb, ptr, &ptr) == 0 && ptr != 0) {
tdb               380 lib/tdb/common/freelist.c 	tdb_unlock(tdb, -1, F_RDLCK);
tdb                46 lib/tdb/common/freelistcheck.c int tdb_validate_freelist(struct tdb_context *tdb, int *pnum_entries)
tdb                55 lib/tdb/common/freelistcheck.c 	mem_tdb = tdb_open("flval", tdb->header.hash_size,
tdb                61 lib/tdb/common/freelistcheck.c 	if (tdb_lock(tdb, -1, F_WRLCK) == -1) {
tdb                75 lib/tdb/common/freelistcheck.c 	if (tdb_ofs_read(tdb, FREELIST_TOP, &rec_ptr) == -1) {
tdb                90 lib/tdb/common/freelistcheck.c 		if (tdb_rec_free_read(tdb, rec_ptr, &rec) == -1) {
tdb               105 lib/tdb/common/freelistcheck.c 	tdb_unlock(tdb, -1, F_WRLCK);
tdb                36 lib/tdb/common/io.c static int tdb_oob(struct tdb_context *tdb, tdb_off_t len, int probe)
tdb                39 lib/tdb/common/io.c 	if (len <= tdb->map_size)
tdb                41 lib/tdb/common/io.c 	if (tdb->flags & TDB_INTERNAL) {
tdb                44 lib/tdb/common/io.c 			tdb->ecode = TDB_ERR_IO;
tdb                45 lib/tdb/common/io.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL,"tdb_oob len %d beyond internal malloc size %d\n",
tdb                46 lib/tdb/common/io.c 				 (int)len, (int)tdb->map_size));
tdb                51 lib/tdb/common/io.c 	if (fstat(tdb->fd, &st) == -1) {
tdb                58 lib/tdb/common/io.c 			tdb->ecode = TDB_ERR_IO;
tdb                59 lib/tdb/common/io.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL,"tdb_oob len %d beyond eof at %d\n",
tdb                66 lib/tdb/common/io.c 	if (tdb_munmap(tdb) == -1)
tdb                68 lib/tdb/common/io.c 	tdb->map_size = st.st_size;
tdb                69 lib/tdb/common/io.c 	tdb_mmap(tdb);
tdb                74 lib/tdb/common/io.c static int tdb_write(struct tdb_context *tdb, tdb_off_t off, 
tdb                81 lib/tdb/common/io.c 	if (tdb->read_only || tdb->traverse_read) {
tdb                82 lib/tdb/common/io.c 		tdb->ecode = TDB_ERR_RDONLY;
tdb                86 lib/tdb/common/io.c 	if (tdb->methods->tdb_oob(tdb, off + len, 0) != 0)
tdb                89 lib/tdb/common/io.c 	if (tdb->map_ptr) {
tdb                90 lib/tdb/common/io.c 		memcpy(off + (char *)tdb->map_ptr, buf, len);
tdb                92 lib/tdb/common/io.c 		ssize_t written = pwrite(tdb->fd, buf, len, off);
tdb                95 lib/tdb/common/io.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_write: wrote only "
tdb                99 lib/tdb/common/io.c 			written = pwrite(tdb->fd, (const void *)((const char *)buf+written),
tdb               105 lib/tdb/common/io.c 		tdb->ecode = TDB_ERR_IO;
tdb               106 lib/tdb/common/io.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL,"tdb_write failed at %d "
tdb               110 lib/tdb/common/io.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_write: failed to "
tdb               131 lib/tdb/common/io.c static int tdb_read(struct tdb_context *tdb, tdb_off_t off, void *buf, 
tdb               134 lib/tdb/common/io.c 	if (tdb->methods->tdb_oob(tdb, off + len, 0) != 0) {
tdb               138 lib/tdb/common/io.c 	if (tdb->map_ptr) {
tdb               139 lib/tdb/common/io.c 		memcpy(buf, off + (char *)tdb->map_ptr, len);
tdb               141 lib/tdb/common/io.c 		ssize_t ret = pread(tdb->fd, buf, len, off);
tdb               144 lib/tdb/common/io.c 			tdb->ecode = TDB_ERR_IO;
tdb               145 lib/tdb/common/io.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL,"tdb_read failed at %d "
tdb               148 lib/tdb/common/io.c 				 (int)tdb->map_size));
tdb               164 lib/tdb/common/io.c static void tdb_next_hash_chain(struct tdb_context *tdb, uint32_t *chain)
tdb               167 lib/tdb/common/io.c 	if (tdb->map_ptr) {
tdb               168 lib/tdb/common/io.c 		for (;h < tdb->header.hash_size;h++) {
tdb               169 lib/tdb/common/io.c 			if (0 != *(uint32_t *)(TDB_HASH_TOP(h) + (unsigned char *)tdb->map_ptr)) {
tdb               175 lib/tdb/common/io.c 		for (;h < tdb->header.hash_size;h++) {
tdb               176 lib/tdb/common/io.c 			if (tdb_ofs_read(tdb, TDB_HASH_TOP(h), &off) != 0 || off != 0) {
tdb               185 lib/tdb/common/io.c int tdb_munmap(struct tdb_context *tdb)
tdb               187 lib/tdb/common/io.c 	if (tdb->flags & TDB_INTERNAL)
tdb               191 lib/tdb/common/io.c 	if (tdb->map_ptr) {
tdb               194 lib/tdb/common/io.c 		ret = munmap(tdb->map_ptr, tdb->map_size);
tdb               199 lib/tdb/common/io.c 	tdb->map_ptr = NULL;
tdb               203 lib/tdb/common/io.c void tdb_mmap(struct tdb_context *tdb)
tdb               205 lib/tdb/common/io.c 	if (tdb->flags & TDB_INTERNAL)
tdb               209 lib/tdb/common/io.c 	if (!(tdb->flags & TDB_NOMMAP)) {
tdb               210 lib/tdb/common/io.c 		tdb->map_ptr = mmap(NULL, tdb->map_size, 
tdb               211 lib/tdb/common/io.c 				    PROT_READ|(tdb->read_only? 0:PROT_WRITE), 
tdb               212 lib/tdb/common/io.c 				    MAP_SHARED|MAP_FILE, tdb->fd, 0);
tdb               218 lib/tdb/common/io.c 		if (tdb->map_ptr == MAP_FAILED) {
tdb               219 lib/tdb/common/io.c 			tdb->map_ptr = NULL;
tdb               220 lib/tdb/common/io.c 			TDB_LOG((tdb, TDB_DEBUG_WARNING, "tdb_mmap failed for size %d (%s)\n", 
tdb               221 lib/tdb/common/io.c 				 tdb->map_size, strerror(errno)));
tdb               224 lib/tdb/common/io.c 		tdb->map_ptr = NULL;
tdb               227 lib/tdb/common/io.c 	tdb->map_ptr = NULL;
tdb               233 lib/tdb/common/io.c static int tdb_expand_file(struct tdb_context *tdb, tdb_off_t size, tdb_off_t addition)
tdb               237 lib/tdb/common/io.c 	if (tdb->read_only || tdb->traverse_read) {
tdb               238 lib/tdb/common/io.c 		tdb->ecode = TDB_ERR_RDONLY;
tdb               242 lib/tdb/common/io.c 	if (ftruncate(tdb->fd, size+addition) == -1) {
tdb               244 lib/tdb/common/io.c 		ssize_t written = pwrite(tdb->fd,  &b, 1, (size+addition) - 1);
tdb               247 lib/tdb/common/io.c 			written = pwrite(tdb->fd,  &b, 1, (size+addition) - 1);
tdb               254 lib/tdb/common/io.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL, "expand_file to %d failed (%s)\n", 
tdb               266 lib/tdb/common/io.c 		ssize_t written = pwrite(tdb->fd, buf, n, size);
tdb               269 lib/tdb/common/io.c 			written = pwrite(tdb->fd, buf, n, size);
tdb               273 lib/tdb/common/io.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL, "expand_file write "
tdb               278 lib/tdb/common/io.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL, "expand_file write of "
tdb               283 lib/tdb/common/io.c 			TDB_LOG((tdb, TDB_DEBUG_WARNING, "expand_file: wrote "
tdb               296 lib/tdb/common/io.c int tdb_expand(struct tdb_context *tdb, tdb_off_t size)
tdb               301 lib/tdb/common/io.c 	if (tdb_lock(tdb, -1, F_WRLCK) == -1) {
tdb               302 lib/tdb/common/io.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR, "lock failed in tdb_expand\n"));
tdb               307 lib/tdb/common/io.c 	tdb->methods->tdb_oob(tdb, tdb->map_size + 1, 1);
tdb               312 lib/tdb/common/io.c 	new_size = MAX(tdb->map_size + size*100, tdb->map_size * 1.25);
tdb               313 lib/tdb/common/io.c 	size = TDB_ALIGN(new_size, tdb->page_size) - tdb->map_size;
tdb               315 lib/tdb/common/io.c 	if (!(tdb->flags & TDB_INTERNAL))
tdb               316 lib/tdb/common/io.c 		tdb_munmap(tdb);
tdb               325 lib/tdb/common/io.c 	if (!(tdb->flags & TDB_INTERNAL)) {
tdb               326 lib/tdb/common/io.c 		if (tdb->methods->tdb_expand_file(tdb, tdb->map_size, size) != 0)
tdb               330 lib/tdb/common/io.c 	tdb->map_size += size;
tdb               332 lib/tdb/common/io.c 	if (tdb->flags & TDB_INTERNAL) {
tdb               333 lib/tdb/common/io.c 		char *new_map_ptr = (char *)realloc(tdb->map_ptr,
tdb               334 lib/tdb/common/io.c 						    tdb->map_size);
tdb               336 lib/tdb/common/io.c 			tdb->map_size -= size;
tdb               339 lib/tdb/common/io.c 		tdb->map_ptr = new_map_ptr;
tdb               348 lib/tdb/common/io.c 		tdb_mmap(tdb);
tdb               356 lib/tdb/common/io.c 	offset = tdb->map_size - size;
tdb               357 lib/tdb/common/io.c 	if (tdb_free(tdb, offset, &rec) == -1)
tdb               360 lib/tdb/common/io.c 	tdb_unlock(tdb, -1, F_WRLCK);
tdb               363 lib/tdb/common/io.c 	tdb_unlock(tdb, -1, F_WRLCK);
tdb               368 lib/tdb/common/io.c int tdb_ofs_read(struct tdb_context *tdb, tdb_off_t offset, tdb_off_t *d)
tdb               370 lib/tdb/common/io.c 	return tdb->methods->tdb_read(tdb, offset, (char*)d, sizeof(*d), DOCONV());
tdb               373 lib/tdb/common/io.c int tdb_ofs_write(struct tdb_context *tdb, tdb_off_t offset, tdb_off_t *d)
tdb               376 lib/tdb/common/io.c 	return tdb->methods->tdb_write(tdb, offset, CONVERT(off), sizeof(*d));
tdb               381 lib/tdb/common/io.c unsigned char *tdb_alloc_read(struct tdb_context *tdb, tdb_off_t offset, tdb_len_t len)
tdb               392 lib/tdb/common/io.c 		tdb->ecode = TDB_ERR_OOM;
tdb               393 lib/tdb/common/io.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR,"tdb_alloc_read malloc failed len=%d (%s)\n",
tdb               397 lib/tdb/common/io.c 	if (tdb->methods->tdb_read(tdb, offset, buf, len, 0) == -1) {
tdb               406 lib/tdb/common/io.c int tdb_parse_data(struct tdb_context *tdb, TDB_DATA key,
tdb               417 lib/tdb/common/io.c 	if ((tdb->transaction == NULL) && (tdb->map_ptr != NULL)) {
tdb               422 lib/tdb/common/io.c 		if (tdb->methods->tdb_oob(tdb, offset+len, 0) != 0) {
tdb               425 lib/tdb/common/io.c 		data.dptr = offset + (unsigned char *)tdb->map_ptr;
tdb               429 lib/tdb/common/io.c 	if (!(data.dptr = tdb_alloc_read(tdb, offset, len))) {
tdb               439 lib/tdb/common/io.c int tdb_rec_read(struct tdb_context *tdb, tdb_off_t offset, struct list_struct *rec)
tdb               441 lib/tdb/common/io.c 	if (tdb->methods->tdb_read(tdb, offset, rec, sizeof(*rec),DOCONV()) == -1)
tdb               445 lib/tdb/common/io.c 		tdb->ecode = TDB_ERR_CORRUPT;
tdb               446 lib/tdb/common/io.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL,"tdb_rec_read bad magic 0x%x at offset=%d\n", rec->magic, offset));
tdb               449 lib/tdb/common/io.c 	return tdb->methods->tdb_oob(tdb, rec->next+sizeof(*rec), 0);
tdb               452 lib/tdb/common/io.c int tdb_rec_write(struct tdb_context *tdb, tdb_off_t offset, struct list_struct *rec)
tdb               455 lib/tdb/common/io.c 	return tdb->methods->tdb_write(tdb, offset, CONVERT(r), sizeof(r));
tdb               470 lib/tdb/common/io.c void tdb_io_init(struct tdb_context *tdb)
tdb               472 lib/tdb/common/io.c 	tdb->methods = &io_methods;
tdb                32 lib/tdb/common/lock.c void tdb_setalarm_sigptr(struct tdb_context *tdb, volatile sig_atomic_t *ptr)
tdb                34 lib/tdb/common/lock.c 	tdb->interrupt_sig_ptr = ptr;
tdb                45 lib/tdb/common/lock.c int tdb_brlock(struct tdb_context *tdb, tdb_off_t offset, 
tdb                51 lib/tdb/common/lock.c 	if (tdb->flags & TDB_NOLOCK) {
tdb                55 lib/tdb/common/lock.c 	if ((rw_type == F_WRLCK) && (tdb->read_only || tdb->traverse_read)) {
tdb                56 lib/tdb/common/lock.c 		tdb->ecode = TDB_ERR_RDONLY;
tdb                67 lib/tdb/common/lock.c 		ret = fcntl(tdb->fd,lck_type,&fl);
tdb                71 lib/tdb/common/lock.c 				tdb->interrupt_sig_ptr &&
tdb                72 lib/tdb/common/lock.c 				*tdb->interrupt_sig_ptr) {
tdb                83 lib/tdb/common/lock.c 			tdb->ecode = TDB_ERR_LOCK;
tdb                84 lib/tdb/common/lock.c 			TDB_LOG((tdb, TDB_DEBUG_TRACE,"tdb_brlock failed (fd=%d) at offset %d rw_type=%d lck_type=%d len=%d\n", 
tdb                85 lib/tdb/common/lock.c 				 tdb->fd, offset, rw_type, lck_type, (int)len));
tdb                99 lib/tdb/common/lock.c int tdb_brlock_upgrade(struct tdb_context *tdb, tdb_off_t offset, size_t len)
tdb               104 lib/tdb/common/lock.c 		if (tdb_brlock(tdb, offset, F_WRLCK, F_SETLKW, 1, len) == 0) {
tdb               115 lib/tdb/common/lock.c 	TDB_LOG((tdb, TDB_DEBUG_TRACE,"tdb_brlock_upgrade failed at offset %d\n", offset));
tdb               121 lib/tdb/common/lock.c static int _tdb_lock(struct tdb_context *tdb, int list, int ltype, int op)
tdb               130 lib/tdb/common/lock.c 	if (tdb->global_lock.count && 
tdb               131 lib/tdb/common/lock.c 	    (ltype == tdb->global_lock.ltype || ltype == F_RDLCK)) {
tdb               135 lib/tdb/common/lock.c 	if (tdb->global_lock.count) {
tdb               139 lib/tdb/common/lock.c 	if (list < -1 || list >= (int)tdb->header.hash_size) {
tdb               140 lib/tdb/common/lock.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR,"tdb_lock: invalid list %d for ltype=%d\n", 
tdb               144 lib/tdb/common/lock.c 	if (tdb->flags & TDB_NOLOCK)
tdb               147 lib/tdb/common/lock.c 	for (i=0; i<tdb->num_lockrecs; i++) {
tdb               148 lib/tdb/common/lock.c 		if (tdb->lockrecs[i].list == list) {
tdb               149 lib/tdb/common/lock.c 			if (tdb->lockrecs[i].count == 0) {
tdb               154 lib/tdb/common/lock.c 				TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_lock: "
tdb               161 lib/tdb/common/lock.c 			tdb->lockrecs[i].count++;
tdb               167 lib/tdb/common/lock.c 		tdb->lockrecs,
tdb               168 lib/tdb/common/lock.c 		sizeof(*tdb->lockrecs) * (tdb->num_lockrecs+1));
tdb               173 lib/tdb/common/lock.c 	tdb->lockrecs = new_lck;
tdb               178 lib/tdb/common/lock.c 	    tdb->methods->tdb_brlock(tdb,FREELIST_TOP+4*list, ltype, op,
tdb               183 lib/tdb/common/lock.c 	tdb->num_locks++;
tdb               185 lib/tdb/common/lock.c 	tdb->lockrecs[tdb->num_lockrecs].list = list;
tdb               186 lib/tdb/common/lock.c 	tdb->lockrecs[tdb->num_lockrecs].count = 1;
tdb               187 lib/tdb/common/lock.c 	tdb->lockrecs[tdb->num_lockrecs].ltype = ltype;
tdb               188 lib/tdb/common/lock.c 	tdb->num_lockrecs += 1;
tdb               194 lib/tdb/common/lock.c int tdb_lock(struct tdb_context *tdb, int list, int ltype)
tdb               197 lib/tdb/common/lock.c 	ret = _tdb_lock(tdb, list, ltype, F_SETLKW);
tdb               199 lib/tdb/common/lock.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_lock failed on list %d "
tdb               206 lib/tdb/common/lock.c int tdb_lock_nonblock(struct tdb_context *tdb, int list, int ltype)
tdb               208 lib/tdb/common/lock.c 	return _tdb_lock(tdb, list, ltype, F_SETLK);
tdb               215 lib/tdb/common/lock.c int tdb_unlock(struct tdb_context *tdb, int list, int ltype)
tdb               225 lib/tdb/common/lock.c 	if (tdb->global_lock.count && 
tdb               226 lib/tdb/common/lock.c 	    (ltype == tdb->global_lock.ltype || ltype == F_RDLCK)) {
tdb               230 lib/tdb/common/lock.c 	if (tdb->global_lock.count) {
tdb               234 lib/tdb/common/lock.c 	if (tdb->flags & TDB_NOLOCK)
tdb               238 lib/tdb/common/lock.c 	if (list < -1 || list >= (int)tdb->header.hash_size) {
tdb               239 lib/tdb/common/lock.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_unlock: list %d invalid (%d)\n", list, tdb->header.hash_size));
tdb               243 lib/tdb/common/lock.c 	for (i=0; i<tdb->num_lockrecs; i++) {
tdb               244 lib/tdb/common/lock.c 		if (tdb->lockrecs[i].list == list) {
tdb               245 lib/tdb/common/lock.c 			lck = &tdb->lockrecs[i];
tdb               251 lib/tdb/common/lock.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_unlock: count is 0\n"));
tdb               270 lib/tdb/common/lock.c 		ret = tdb->methods->tdb_brlock(tdb, FREELIST_TOP+4*list, F_UNLCK,
tdb               273 lib/tdb/common/lock.c 	tdb->num_locks--;
tdb               280 lib/tdb/common/lock.c 	if (tdb->num_lockrecs > 1) {
tdb               281 lib/tdb/common/lock.c 		*lck = tdb->lockrecs[tdb->num_lockrecs-1];
tdb               283 lib/tdb/common/lock.c 	tdb->num_lockrecs -= 1;
tdb               290 lib/tdb/common/lock.c 	if (tdb->num_lockrecs == 0) {
tdb               291 lib/tdb/common/lock.c 		SAFE_FREE(tdb->lockrecs);
tdb               295 lib/tdb/common/lock.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_unlock: An error occurred unlocking!\n")); 
tdb               302 lib/tdb/common/lock.c int tdb_transaction_lock(struct tdb_context *tdb, int ltype)
tdb               304 lib/tdb/common/lock.c 	if (tdb->have_transaction_lock || tdb->global_lock.count) {
tdb               307 lib/tdb/common/lock.c 	if (tdb->methods->tdb_brlock(tdb, TRANSACTION_LOCK, ltype, 
tdb               309 lib/tdb/common/lock.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_transaction_lock: failed to get transaction lock\n"));
tdb               310 lib/tdb/common/lock.c 		tdb->ecode = TDB_ERR_LOCK;
tdb               313 lib/tdb/common/lock.c 	tdb->have_transaction_lock = 1;
tdb               320 lib/tdb/common/lock.c int tdb_transaction_unlock(struct tdb_context *tdb)
tdb               323 lib/tdb/common/lock.c 	if (!tdb->have_transaction_lock) {
tdb               326 lib/tdb/common/lock.c 	ret = tdb->methods->tdb_brlock(tdb, TRANSACTION_LOCK, F_UNLCK, F_SETLKW, 0, 1);
tdb               328 lib/tdb/common/lock.c 		tdb->have_transaction_lock = 0;
tdb               337 lib/tdb/common/lock.c static int _tdb_lockall(struct tdb_context *tdb, int ltype, int op)
tdb               344 lib/tdb/common/lock.c 	if (tdb->read_only || tdb->traverse_read)
tdb               347 lib/tdb/common/lock.c 	if (tdb->global_lock.count && tdb->global_lock.ltype == ltype) {
tdb               348 lib/tdb/common/lock.c 		tdb->global_lock.count++;
tdb               352 lib/tdb/common/lock.c 	if (tdb->global_lock.count) {
tdb               357 lib/tdb/common/lock.c 	if (tdb->num_locks != 0) {
tdb               363 lib/tdb/common/lock.c 	    tdb->methods->tdb_brlock(tdb, FREELIST_TOP, ltype, op,
tdb               364 lib/tdb/common/lock.c 				     0, 4*tdb->header.hash_size)) {
tdb               366 lib/tdb/common/lock.c 			TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_lockall failed (%s)\n", strerror(errno)));
tdb               371 lib/tdb/common/lock.c 	tdb->global_lock.count = 1;
tdb               372 lib/tdb/common/lock.c 	tdb->global_lock.ltype = ltype;
tdb               380 lib/tdb/common/lock.c static int _tdb_unlockall(struct tdb_context *tdb, int ltype)
tdb               387 lib/tdb/common/lock.c 	if (tdb->read_only || tdb->traverse_read) {
tdb               391 lib/tdb/common/lock.c 	if (tdb->global_lock.ltype != ltype || tdb->global_lock.count == 0) {
tdb               395 lib/tdb/common/lock.c 	if (tdb->global_lock.count > 1) {
tdb               396 lib/tdb/common/lock.c 		tdb->global_lock.count--;
tdb               401 lib/tdb/common/lock.c 	    tdb->methods->tdb_brlock(tdb, FREELIST_TOP, F_UNLCK, F_SETLKW, 
tdb               402 lib/tdb/common/lock.c 				     0, 4*tdb->header.hash_size)) {
tdb               403 lib/tdb/common/lock.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_unlockall failed (%s)\n", strerror(errno)));
tdb               407 lib/tdb/common/lock.c 	tdb->global_lock.count = 0;
tdb               408 lib/tdb/common/lock.c 	tdb->global_lock.ltype = 0;
tdb               414 lib/tdb/common/lock.c int tdb_lockall(struct tdb_context *tdb)
tdb               416 lib/tdb/common/lock.c 	return _tdb_lockall(tdb, F_WRLCK, F_SETLKW);
tdb               420 lib/tdb/common/lock.c int tdb_lockall_mark(struct tdb_context *tdb)
tdb               422 lib/tdb/common/lock.c 	return _tdb_lockall(tdb, F_WRLCK | TDB_MARK_LOCK, F_SETLKW);
tdb               426 lib/tdb/common/lock.c int tdb_lockall_unmark(struct tdb_context *tdb)
tdb               428 lib/tdb/common/lock.c 	return _tdb_unlockall(tdb, F_WRLCK | TDB_MARK_LOCK);
tdb               432 lib/tdb/common/lock.c int tdb_lockall_nonblock(struct tdb_context *tdb)
tdb               434 lib/tdb/common/lock.c 	return _tdb_lockall(tdb, F_WRLCK, F_SETLK);
tdb               438 lib/tdb/common/lock.c int tdb_unlockall(struct tdb_context *tdb)
tdb               440 lib/tdb/common/lock.c 	return _tdb_unlockall(tdb, F_WRLCK);
tdb               444 lib/tdb/common/lock.c int tdb_lockall_read(struct tdb_context *tdb)
tdb               446 lib/tdb/common/lock.c 	return _tdb_lockall(tdb, F_RDLCK, F_SETLKW);
tdb               450 lib/tdb/common/lock.c int tdb_lockall_read_nonblock(struct tdb_context *tdb)
tdb               452 lib/tdb/common/lock.c 	return _tdb_lockall(tdb, F_RDLCK, F_SETLK);
tdb               456 lib/tdb/common/lock.c int tdb_unlockall_read(struct tdb_context *tdb)
tdb               458 lib/tdb/common/lock.c 	return _tdb_unlockall(tdb, F_RDLCK);
tdb               463 lib/tdb/common/lock.c int tdb_chainlock(struct tdb_context *tdb, TDB_DATA key)
tdb               465 lib/tdb/common/lock.c 	return tdb_lock(tdb, BUCKET(tdb->hash_fn(&key)), F_WRLCK);
tdb               471 lib/tdb/common/lock.c int tdb_chainlock_nonblock(struct tdb_context *tdb, TDB_DATA key)
tdb               473 lib/tdb/common/lock.c 	return tdb_lock_nonblock(tdb, BUCKET(tdb->hash_fn(&key)), F_WRLCK);
tdb               477 lib/tdb/common/lock.c int tdb_chainlock_mark(struct tdb_context *tdb, TDB_DATA key)
tdb               479 lib/tdb/common/lock.c 	return tdb_lock(tdb, BUCKET(tdb->hash_fn(&key)), F_WRLCK | TDB_MARK_LOCK);
tdb               483 lib/tdb/common/lock.c int tdb_chainlock_unmark(struct tdb_context *tdb, TDB_DATA key)
tdb               485 lib/tdb/common/lock.c 	return tdb_unlock(tdb, BUCKET(tdb->hash_fn(&key)), F_WRLCK | TDB_MARK_LOCK);
tdb               488 lib/tdb/common/lock.c int tdb_chainunlock(struct tdb_context *tdb, TDB_DATA key)
tdb               490 lib/tdb/common/lock.c 	return tdb_unlock(tdb, BUCKET(tdb->hash_fn(&key)), F_WRLCK);
tdb               493 lib/tdb/common/lock.c int tdb_chainlock_read(struct tdb_context *tdb, TDB_DATA key)
tdb               495 lib/tdb/common/lock.c 	return tdb_lock(tdb, BUCKET(tdb->hash_fn(&key)), F_RDLCK);
tdb               498 lib/tdb/common/lock.c int tdb_chainunlock_read(struct tdb_context *tdb, TDB_DATA key)
tdb               500 lib/tdb/common/lock.c 	return tdb_unlock(tdb, BUCKET(tdb->hash_fn(&key)), F_RDLCK);
tdb               506 lib/tdb/common/lock.c int tdb_lock_record(struct tdb_context *tdb, tdb_off_t off)
tdb               508 lib/tdb/common/lock.c 	if (tdb->global_lock.count) {
tdb               511 lib/tdb/common/lock.c 	return off ? tdb->methods->tdb_brlock(tdb, off, F_RDLCK, F_SETLKW, 0, 1) : 0;
tdb               519 lib/tdb/common/lock.c int tdb_write_lock_record(struct tdb_context *tdb, tdb_off_t off)
tdb               522 lib/tdb/common/lock.c 	for (i = &tdb->travlocks; i; i = i->next)
tdb               525 lib/tdb/common/lock.c 	return tdb->methods->tdb_brlock(tdb, off, F_WRLCK, F_SETLK, 1, 1);
tdb               532 lib/tdb/common/lock.c int tdb_write_unlock_record(struct tdb_context *tdb, tdb_off_t off)
tdb               534 lib/tdb/common/lock.c 	return tdb->methods->tdb_brlock(tdb, off, F_UNLCK, F_SETLK, 0, 1);
tdb               538 lib/tdb/common/lock.c int tdb_unlock_record(struct tdb_context *tdb, tdb_off_t off)
tdb               543 lib/tdb/common/lock.c 	if (tdb->global_lock.count) {
tdb               549 lib/tdb/common/lock.c 	for (i = &tdb->travlocks; i; i = i->next)
tdb               552 lib/tdb/common/lock.c 	return (count == 1 ? tdb->methods->tdb_brlock(tdb, off, F_UNLCK, F_SETLKW, 0, 1) : 0);
tdb                49 lib/tdb/common/open.c static int tdb_new_database(struct tdb_context *tdb, int hash_size)
tdb                64 lib/tdb/common/open.c 	if (tdb->flags & TDB_INTERNAL) {
tdb                65 lib/tdb/common/open.c 		tdb->map_size = size;
tdb                66 lib/tdb/common/open.c 		tdb->map_ptr = (char *)newdb;
tdb                67 lib/tdb/common/open.c 		memcpy(&tdb->header, newdb, sizeof(tdb->header));
tdb                72 lib/tdb/common/open.c 	if (lseek(tdb->fd, 0, SEEK_SET) == -1)
tdb                75 lib/tdb/common/open.c 	if (ftruncate(tdb->fd, 0) == -1)
tdb                80 lib/tdb/common/open.c 	memcpy(&tdb->header, newdb, sizeof(tdb->header));
tdb                84 lib/tdb/common/open.c 	written = write(tdb->fd, newdb, size);
tdb                91 lib/tdb/common/open.c 		written = write(tdb->fd, newdb+written, size);
tdb               139 lib/tdb/common/open.c static void null_log_fn(struct tdb_context *tdb, enum tdb_debug_level level, const char *fmt, ...) PRINTF_ATTRIBUTE(3, 4);
tdb               140 lib/tdb/common/open.c static void null_log_fn(struct tdb_context *tdb, enum tdb_debug_level level, const char *fmt, ...)
tdb               150 lib/tdb/common/open.c 	struct tdb_context *tdb;
tdb               157 lib/tdb/common/open.c 	if (!(tdb = (struct tdb_context *)calloc(1, sizeof *tdb))) {
tdb               162 lib/tdb/common/open.c 	tdb_io_init(tdb);
tdb               163 lib/tdb/common/open.c 	tdb->fd = -1;
tdb               164 lib/tdb/common/open.c 	tdb->name = NULL;
tdb               165 lib/tdb/common/open.c 	tdb->map_ptr = NULL;
tdb               166 lib/tdb/common/open.c 	tdb->flags = tdb_flags;
tdb               167 lib/tdb/common/open.c 	tdb->open_flags = open_flags;
tdb               169 lib/tdb/common/open.c 		tdb->log = *log_ctx;
tdb               171 lib/tdb/common/open.c 		tdb->log.log_fn = null_log_fn;
tdb               172 lib/tdb/common/open.c 		tdb->log.log_private = NULL;
tdb               174 lib/tdb/common/open.c 	tdb->hash_fn = hash_fn ? hash_fn : default_tdb_hash;
tdb               177 lib/tdb/common/open.c 	tdb->page_size = getpagesize();
tdb               178 lib/tdb/common/open.c 	if (tdb->page_size <= 0) {
tdb               179 lib/tdb/common/open.c 		tdb->page_size = 0x2000;
tdb               182 lib/tdb/common/open.c 	tdb->max_dead_records = (tdb_flags & TDB_VOLATILE) ? 5 : 0;
tdb               185 lib/tdb/common/open.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_open_ex: can't open tdb %s write-only\n",
tdb               194 lib/tdb/common/open.c 		tdb->read_only = 1;
tdb               196 lib/tdb/common/open.c 		tdb->flags |= TDB_NOLOCK;
tdb               197 lib/tdb/common/open.c 		tdb->flags &= ~TDB_CLEAR_IF_FIRST;
tdb               201 lib/tdb/common/open.c 	if (tdb->flags & TDB_INTERNAL) {
tdb               202 lib/tdb/common/open.c 		tdb->flags |= (TDB_NOLOCK | TDB_NOMMAP);
tdb               203 lib/tdb/common/open.c 		tdb->flags &= ~TDB_CLEAR_IF_FIRST;
tdb               204 lib/tdb/common/open.c 		if (tdb_new_database(tdb, hash_size) != 0) {
tdb               205 lib/tdb/common/open.c 			TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_open_ex: tdb_new_database failed!"));
tdb               211 lib/tdb/common/open.c 	if ((tdb->fd = open(name, open_flags, mode)) == -1) {
tdb               212 lib/tdb/common/open.c 		TDB_LOG((tdb, TDB_DEBUG_WARNING, "tdb_open_ex: could not open file %s: %s\n",
tdb               218 lib/tdb/common/open.c 	v = fcntl(tdb->fd, F_GETFD, 0);
tdb               219 lib/tdb/common/open.c         fcntl(tdb->fd, F_SETFD, v | FD_CLOEXEC);
tdb               222 lib/tdb/common/open.c 	if (tdb->methods->tdb_brlock(tdb, GLOBAL_LOCK, F_WRLCK, F_SETLKW, 0, 1) == -1) {
tdb               223 lib/tdb/common/open.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_open_ex: failed to get global lock on %s: %s\n",
tdb               230 lib/tdb/common/open.c 	    (!tdb->read_only) &&
tdb               231 lib/tdb/common/open.c 	    (locked = (tdb->methods->tdb_brlock(tdb, ACTIVE_LOCK, F_WRLCK, F_SETLK, 0, 1) == 0))) {
tdb               233 lib/tdb/common/open.c 		if (ftruncate(tdb->fd, 0) == -1) {
tdb               234 lib/tdb/common/open.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_open_ex: "
tdb               242 lib/tdb/common/open.c 	if (read(tdb->fd, &tdb->header, sizeof(tdb->header)) != sizeof(tdb->header)
tdb               243 lib/tdb/common/open.c 	    || strcmp(tdb->header.magic_food, TDB_MAGIC_FOOD) != 0
tdb               244 lib/tdb/common/open.c 	    || (tdb->header.version != TDB_VERSION
tdb               245 lib/tdb/common/open.c 		&& !(rev = (tdb->header.version==TDB_BYTEREV(TDB_VERSION))))) {
tdb               247 lib/tdb/common/open.c 		if (!(open_flags & O_CREAT) || tdb_new_database(tdb, hash_size) == -1) {
tdb               253 lib/tdb/common/open.c 		rev = (tdb->flags & TDB_CONVERT);
tdb               255 lib/tdb/common/open.c 	vp = (unsigned char *)&tdb->header.version;
tdb               258 lib/tdb/common/open.c 	tdb->flags |= (vertest==TDB_VERSION) ? TDB_BIGENDIAN : 0;
tdb               260 lib/tdb/common/open.c 		tdb->flags &= ~TDB_CONVERT;
tdb               262 lib/tdb/common/open.c 		tdb->flags |= TDB_CONVERT;
tdb               263 lib/tdb/common/open.c 		tdb_convert(&tdb->header, sizeof(tdb->header));
tdb               265 lib/tdb/common/open.c 	if (fstat(tdb->fd, &st) == -1)
tdb               268 lib/tdb/common/open.c 	if (tdb->header.rwlocks != 0) {
tdb               269 lib/tdb/common/open.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_open_ex: spinlocks no longer supported\n"));
tdb               275 lib/tdb/common/open.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_open_ex: "
tdb               282 lib/tdb/common/open.c 	if (!(tdb->name = (char *)strdup(name))) {
tdb               287 lib/tdb/common/open.c 	tdb->map_size = st.st_size;
tdb               288 lib/tdb/common/open.c 	tdb->device = st.st_dev;
tdb               289 lib/tdb/common/open.c 	tdb->inode = st.st_ino;
tdb               290 lib/tdb/common/open.c 	tdb_mmap(tdb);
tdb               292 lib/tdb/common/open.c 		if (tdb->methods->tdb_brlock(tdb, ACTIVE_LOCK, F_UNLCK, F_SETLK, 0, 1) == -1) {
tdb               293 lib/tdb/common/open.c 			TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_open_ex: "
tdb               307 lib/tdb/common/open.c 		if (tdb->methods->tdb_brlock(tdb, ACTIVE_LOCK, F_RDLCK, F_SETLKW, 0, 1) == -1)
tdb               312 lib/tdb/common/open.c 	if (tdb_transaction_recover(tdb) == -1) {
tdb               320 lib/tdb/common/open.c 	if (tdb->methods->tdb_brlock(tdb, GLOBAL_LOCK, F_UNLCK, F_SETLKW, 0, 1) == -1)
tdb               322 lib/tdb/common/open.c 	tdb->next = tdbs;
tdb               323 lib/tdb/common/open.c 	tdbs = tdb;
tdb               324 lib/tdb/common/open.c 	return tdb;
tdb               329 lib/tdb/common/open.c 	if (!tdb)
tdb               332 lib/tdb/common/open.c 	if (tdb->map_ptr) {
tdb               333 lib/tdb/common/open.c 		if (tdb->flags & TDB_INTERNAL)
tdb               334 lib/tdb/common/open.c 			SAFE_FREE(tdb->map_ptr);
tdb               336 lib/tdb/common/open.c 			tdb_munmap(tdb);
tdb               338 lib/tdb/common/open.c 	SAFE_FREE(tdb->name);
tdb               339 lib/tdb/common/open.c 	if (tdb->fd != -1)
tdb               340 lib/tdb/common/open.c 		if (close(tdb->fd) != 0)
tdb               341 lib/tdb/common/open.c 			TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_open_ex: failed to close tdb->fd on error!\n"));
tdb               342 lib/tdb/common/open.c 	SAFE_FREE(tdb);
tdb               352 lib/tdb/common/open.c void tdb_set_max_dead(struct tdb_context *tdb, int max_dead)
tdb               354 lib/tdb/common/open.c 	tdb->max_dead_records = max_dead;
tdb               362 lib/tdb/common/open.c int tdb_close(struct tdb_context *tdb)
tdb               367 lib/tdb/common/open.c 	if (tdb->transaction) {
tdb               368 lib/tdb/common/open.c 		tdb_transaction_cancel(tdb);
tdb               371 lib/tdb/common/open.c 	if (tdb->map_ptr) {
tdb               372 lib/tdb/common/open.c 		if (tdb->flags & TDB_INTERNAL)
tdb               373 lib/tdb/common/open.c 			SAFE_FREE(tdb->map_ptr);
tdb               375 lib/tdb/common/open.c 			tdb_munmap(tdb);
tdb               377 lib/tdb/common/open.c 	SAFE_FREE(tdb->name);
tdb               378 lib/tdb/common/open.c 	if (tdb->fd != -1)
tdb               379 lib/tdb/common/open.c 		ret = close(tdb->fd);
tdb               380 lib/tdb/common/open.c 	SAFE_FREE(tdb->lockrecs);
tdb               384 lib/tdb/common/open.c 		if (*i == tdb) {
tdb               385 lib/tdb/common/open.c 			*i = tdb->next;
tdb               390 lib/tdb/common/open.c 	memset(tdb, 0, sizeof(*tdb));
tdb               391 lib/tdb/common/open.c 	SAFE_FREE(tdb);
tdb               397 lib/tdb/common/open.c void tdb_set_logging_function(struct tdb_context *tdb,
tdb               400 lib/tdb/common/open.c         tdb->log = *log_ctx;
tdb               403 lib/tdb/common/open.c void *tdb_get_logging_private(struct tdb_context *tdb)
tdb               405 lib/tdb/common/open.c 	return tdb->log.log_private;
tdb               410 lib/tdb/common/open.c int tdb_reopen(struct tdb_context *tdb)
tdb               414 lib/tdb/common/open.c 	if (tdb->flags & TDB_INTERNAL) {
tdb               418 lib/tdb/common/open.c 	if (tdb->num_locks != 0 || tdb->global_lock.count) {
tdb               419 lib/tdb/common/open.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_reopen: reopen not allowed with locks held\n"));
tdb               423 lib/tdb/common/open.c 	if (tdb->transaction != 0) {
tdb               424 lib/tdb/common/open.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_reopen: reopen not allowed inside a transaction\n"));
tdb               431 lib/tdb/common/open.c 	if (tdb_munmap(tdb) != 0) {
tdb               432 lib/tdb/common/open.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_reopen: munmap failed (%s)\n", strerror(errno)));
tdb               435 lib/tdb/common/open.c 	if (close(tdb->fd) != 0)
tdb               436 lib/tdb/common/open.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_reopen: WARNING closing tdb->fd failed!\n"));
tdb               437 lib/tdb/common/open.c 	tdb->fd = open(tdb->name, tdb->open_flags & ~(O_CREAT|O_TRUNC), 0);
tdb               438 lib/tdb/common/open.c 	if (tdb->fd == -1) {
tdb               439 lib/tdb/common/open.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_reopen: open failed (%s)\n", strerror(errno)));
tdb               442 lib/tdb/common/open.c 	if (fstat(tdb->fd, &st) != 0) {
tdb               443 lib/tdb/common/open.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_reopen: fstat failed (%s)\n", strerror(errno)));
tdb               446 lib/tdb/common/open.c 	if (st.st_ino != tdb->inode || st.st_dev != tdb->device) {
tdb               447 lib/tdb/common/open.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_reopen: file dev/inode has changed!\n"));
tdb               450 lib/tdb/common/open.c 	tdb_mmap(tdb);
tdb               453 lib/tdb/common/open.c 	if ((tdb->flags & TDB_CLEAR_IF_FIRST) &&
tdb               454 lib/tdb/common/open.c 	    (tdb->methods->tdb_brlock(tdb, ACTIVE_LOCK, F_RDLCK, F_SETLKW, 0, 1) == -1)) {
tdb               455 lib/tdb/common/open.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_reopen: failed to obtain active lock\n"));
tdb               462 lib/tdb/common/open.c 	tdb_close(tdb);
tdb               469 lib/tdb/common/open.c 	struct tdb_context *tdb;
tdb               471 lib/tdb/common/open.c 	for (tdb=tdbs; tdb; tdb = tdb->next) {
tdb               485 lib/tdb/common/open.c 			tdb->flags &= ~TDB_CLEAR_IF_FIRST;
tdb               488 lib/tdb/common/open.c 		if (tdb_reopen(tdb) != 0)
tdb                36 lib/tdb/common/tdb.c void tdb_increment_seqnum_nonblock(struct tdb_context *tdb)
tdb                40 lib/tdb/common/tdb.c 	if (!(tdb->flags & TDB_SEQNUM)) {
tdb                47 lib/tdb/common/tdb.c 	tdb_ofs_read(tdb, TDB_SEQNUM_OFS, &seqnum);
tdb                49 lib/tdb/common/tdb.c 	tdb_ofs_write(tdb, TDB_SEQNUM_OFS, &seqnum);
tdb                56 lib/tdb/common/tdb.c static void tdb_increment_seqnum(struct tdb_context *tdb)
tdb                58 lib/tdb/common/tdb.c 	if (!(tdb->flags & TDB_SEQNUM)) {
tdb                62 lib/tdb/common/tdb.c 	if (tdb_brlock(tdb, TDB_SEQNUM_OFS, F_WRLCK, F_SETLKW, 1, 1) != 0) {
tdb                66 lib/tdb/common/tdb.c 	tdb_increment_seqnum_nonblock(tdb);
tdb                68 lib/tdb/common/tdb.c 	tdb_brlock(tdb, TDB_SEQNUM_OFS, F_UNLCK, F_SETLKW, 1, 1);
tdb                78 lib/tdb/common/tdb.c static tdb_off_t tdb_find(struct tdb_context *tdb, TDB_DATA key, uint32_t hash,
tdb                84 lib/tdb/common/tdb.c 	if (tdb_ofs_read(tdb, TDB_HASH_TOP(hash), &rec_ptr) == -1)
tdb                89 lib/tdb/common/tdb.c 		if (tdb_rec_read(tdb, rec_ptr, r) == -1)
tdb                94 lib/tdb/common/tdb.c 		    && tdb_parse_data(tdb, key, rec_ptr + sizeof(*r),
tdb               101 lib/tdb/common/tdb.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_find: loop detected.\n"));
tdb               110 lib/tdb/common/tdb.c tdb_off_t tdb_find_lock_hash(struct tdb_context *tdb, TDB_DATA key, uint32_t hash, int locktype,
tdb               115 lib/tdb/common/tdb.c 	if (tdb_lock(tdb, BUCKET(hash), locktype) == -1)
tdb               117 lib/tdb/common/tdb.c 	if (!(rec_ptr = tdb_find(tdb, key, hash, rec)))
tdb               118 lib/tdb/common/tdb.c 		tdb_unlock(tdb, BUCKET(hash), locktype);
tdb               127 lib/tdb/common/tdb.c static int tdb_update_hash(struct tdb_context *tdb, TDB_DATA key, uint32_t hash, TDB_DATA dbuf)
tdb               133 lib/tdb/common/tdb.c 	if (!(rec_ptr = tdb_find(tdb, key, hash, &rec)))
tdb               138 lib/tdb/common/tdb.c 		tdb->ecode = TDB_SUCCESS; /* Not really an error */
tdb               142 lib/tdb/common/tdb.c 	if (tdb->methods->tdb_write(tdb, rec_ptr + sizeof(rec) + rec.key_len,
tdb               149 lib/tdb/common/tdb.c 		return tdb_rec_write(tdb, rec_ptr, &rec);
tdb               161 lib/tdb/common/tdb.c TDB_DATA tdb_fetch(struct tdb_context *tdb, TDB_DATA key)
tdb               169 lib/tdb/common/tdb.c 	hash = tdb->hash_fn(&key);
tdb               170 lib/tdb/common/tdb.c 	if (!(rec_ptr = tdb_find_lock_hash(tdb,key,hash,F_RDLCK,&rec)))
tdb               173 lib/tdb/common/tdb.c 	ret.dptr = tdb_alloc_read(tdb, rec_ptr + sizeof(rec) + rec.key_len,
tdb               176 lib/tdb/common/tdb.c 	tdb_unlock(tdb, BUCKET(rec.full_hash), F_RDLCK);
tdb               196 lib/tdb/common/tdb.c int tdb_parse_record(struct tdb_context *tdb, TDB_DATA key,
tdb               207 lib/tdb/common/tdb.c 	hash = tdb->hash_fn(&key);
tdb               209 lib/tdb/common/tdb.c 	if (!(rec_ptr = tdb_find_lock_hash(tdb,key,hash,F_RDLCK,&rec))) {
tdb               213 lib/tdb/common/tdb.c 	ret = tdb_parse_data(tdb, key, rec_ptr + sizeof(rec) + rec.key_len,
tdb               216 lib/tdb/common/tdb.c 	tdb_unlock(tdb, BUCKET(rec.full_hash), F_RDLCK);
tdb               227 lib/tdb/common/tdb.c static int tdb_exists_hash(struct tdb_context *tdb, TDB_DATA key, uint32_t hash)
tdb               231 lib/tdb/common/tdb.c 	if (tdb_find_lock_hash(tdb, key, hash, F_RDLCK, &rec) == 0)
tdb               233 lib/tdb/common/tdb.c 	tdb_unlock(tdb, BUCKET(rec.full_hash), F_RDLCK);
tdb               237 lib/tdb/common/tdb.c int tdb_exists(struct tdb_context *tdb, TDB_DATA key)
tdb               239 lib/tdb/common/tdb.c 	uint32_t hash = tdb->hash_fn(&key);
tdb               240 lib/tdb/common/tdb.c 	return tdb_exists_hash(tdb, key, hash);
tdb               244 lib/tdb/common/tdb.c int tdb_do_delete(struct tdb_context *tdb, tdb_off_t rec_ptr, struct list_struct *rec)
tdb               249 lib/tdb/common/tdb.c 	if (tdb->read_only || tdb->traverse_read) return -1;
tdb               251 lib/tdb/common/tdb.c 	if (((tdb->traverse_write != 0) && (!TDB_DEAD(rec))) ||
tdb               252 lib/tdb/common/tdb.c 	    tdb_write_lock_record(tdb, rec_ptr) == -1) {
tdb               255 lib/tdb/common/tdb.c 		return tdb_rec_write(tdb, rec_ptr, rec);
tdb               257 lib/tdb/common/tdb.c 	if (tdb_write_unlock_record(tdb, rec_ptr) != 0)
tdb               261 lib/tdb/common/tdb.c 	if (tdb_ofs_read(tdb, TDB_HASH_TOP(rec->full_hash), &i) == -1)
tdb               264 lib/tdb/common/tdb.c 		if (tdb_rec_read(tdb, i, &lastrec) == -1)
tdb               270 lib/tdb/common/tdb.c 	if (tdb_ofs_write(tdb, last_ptr, &rec->next) == -1)
tdb               274 lib/tdb/common/tdb.c 	if (tdb_free(tdb, rec_ptr, rec) == -1)
tdb               279 lib/tdb/common/tdb.c static int tdb_count_dead(struct tdb_context *tdb, uint32_t hash)
tdb               286 lib/tdb/common/tdb.c 	if (tdb_ofs_read(tdb, TDB_HASH_TOP(hash), &rec_ptr) == -1)
tdb               290 lib/tdb/common/tdb.c 		if (tdb_rec_read(tdb, rec_ptr, &rec) == -1)
tdb               304 lib/tdb/common/tdb.c static int tdb_purge_dead(struct tdb_context *tdb, uint32_t hash)
tdb               310 lib/tdb/common/tdb.c 	if (tdb_lock(tdb, -1, F_WRLCK) == -1) {
tdb               315 lib/tdb/common/tdb.c 	if (tdb_ofs_read(tdb, TDB_HASH_TOP(hash), &rec_ptr) == -1)
tdb               321 lib/tdb/common/tdb.c 		if (tdb_rec_read(tdb, rec_ptr, &rec) == -1) {
tdb               328 lib/tdb/common/tdb.c 		    && tdb_do_delete(tdb, rec_ptr, &rec) == -1) {
tdb               335 lib/tdb/common/tdb.c 	tdb_unlock(tdb, -1, F_WRLCK);
tdb               340 lib/tdb/common/tdb.c static int tdb_delete_hash(struct tdb_context *tdb, TDB_DATA key, uint32_t hash)
tdb               346 lib/tdb/common/tdb.c 	if (tdb->max_dead_records != 0) {
tdb               353 lib/tdb/common/tdb.c 		if (tdb_lock(tdb, BUCKET(hash), F_WRLCK) == -1)
tdb               356 lib/tdb/common/tdb.c 		if (tdb_count_dead(tdb, hash) >= tdb->max_dead_records) {
tdb               361 lib/tdb/common/tdb.c 			tdb_purge_dead(tdb, hash);
tdb               364 lib/tdb/common/tdb.c 		if (!(rec_ptr = tdb_find(tdb, key, hash, &rec))) {
tdb               365 lib/tdb/common/tdb.c 			tdb_unlock(tdb, BUCKET(hash), F_WRLCK);
tdb               373 lib/tdb/common/tdb.c 		ret = tdb_rec_write(tdb, rec_ptr, &rec);
tdb               376 lib/tdb/common/tdb.c 		if (!(rec_ptr = tdb_find_lock_hash(tdb, key, hash, F_WRLCK,
tdb               380 lib/tdb/common/tdb.c 		ret = tdb_do_delete(tdb, rec_ptr, &rec);
tdb               384 lib/tdb/common/tdb.c 		tdb_increment_seqnum(tdb);
tdb               387 lib/tdb/common/tdb.c 	if (tdb_unlock(tdb, BUCKET(rec.full_hash), F_WRLCK) != 0)
tdb               388 lib/tdb/common/tdb.c 		TDB_LOG((tdb, TDB_DEBUG_WARNING, "tdb_delete: WARNING tdb_unlock failed!\n"));
tdb               392 lib/tdb/common/tdb.c int tdb_delete(struct tdb_context *tdb, TDB_DATA key)
tdb               394 lib/tdb/common/tdb.c 	uint32_t hash = tdb->hash_fn(&key);
tdb               395 lib/tdb/common/tdb.c 	return tdb_delete_hash(tdb, key, hash);
tdb               401 lib/tdb/common/tdb.c static tdb_off_t tdb_find_dead(struct tdb_context *tdb, uint32_t hash,
tdb               407 lib/tdb/common/tdb.c 	if (tdb_ofs_read(tdb, TDB_HASH_TOP(hash), &rec_ptr) == -1)
tdb               412 lib/tdb/common/tdb.c 		if (tdb_rec_read(tdb, rec_ptr, r) == -1)
tdb               432 lib/tdb/common/tdb.c int tdb_store(struct tdb_context *tdb, TDB_DATA key, TDB_DATA dbuf, int flag)
tdb               440 lib/tdb/common/tdb.c 	if (tdb->read_only || tdb->traverse_read) {
tdb               441 lib/tdb/common/tdb.c 		tdb->ecode = TDB_ERR_RDONLY;
tdb               446 lib/tdb/common/tdb.c 	hash = tdb->hash_fn(&key);
tdb               447 lib/tdb/common/tdb.c 	if (tdb_lock(tdb, BUCKET(hash), F_WRLCK) == -1)
tdb               452 lib/tdb/common/tdb.c 		if (tdb_exists_hash(tdb, key, hash)) {
tdb               453 lib/tdb/common/tdb.c 			tdb->ecode = TDB_ERR_EXISTS;
tdb               458 lib/tdb/common/tdb.c 		if (tdb_update_hash(tdb, key, hash, dbuf) == 0) {
tdb               461 lib/tdb/common/tdb.c 		if (tdb->ecode == TDB_ERR_NOEXIST &&
tdb               469 lib/tdb/common/tdb.c 	tdb->ecode = TDB_SUCCESS;
tdb               475 lib/tdb/common/tdb.c 		tdb_delete_hash(tdb, key, hash);
tdb               481 lib/tdb/common/tdb.c 		tdb->ecode = TDB_ERR_OOM;
tdb               489 lib/tdb/common/tdb.c 	if (tdb->max_dead_records != 0) {
tdb               497 lib/tdb/common/tdb.c 			tdb, hash, &rec,
tdb               505 lib/tdb/common/tdb.c 			if (tdb_rec_write(tdb, rec_ptr, &rec) == -1
tdb               506 lib/tdb/common/tdb.c 			    || tdb->methods->tdb_write(
tdb               507 lib/tdb/common/tdb.c 				    tdb, rec_ptr + sizeof(rec),
tdb               521 lib/tdb/common/tdb.c 	if (tdb_lock(tdb, -1, F_WRLCK) == -1) {
tdb               525 lib/tdb/common/tdb.c 	if ((tdb->max_dead_records != 0)
tdb               526 lib/tdb/common/tdb.c 	    && (tdb_purge_dead(tdb, hash) == -1)) {
tdb               527 lib/tdb/common/tdb.c 		tdb_unlock(tdb, -1, F_WRLCK);
tdb               532 lib/tdb/common/tdb.c 	rec_ptr = tdb_allocate(tdb, key.dsize + dbuf.dsize, &rec);
tdb               534 lib/tdb/common/tdb.c 	tdb_unlock(tdb, -1, F_WRLCK);
tdb               541 lib/tdb/common/tdb.c 	if (tdb_ofs_read(tdb, TDB_HASH_TOP(hash), &rec.next) == -1)
tdb               550 lib/tdb/common/tdb.c 	if (tdb_rec_write(tdb, rec_ptr, &rec) == -1
tdb               551 lib/tdb/common/tdb.c 	    || tdb->methods->tdb_write(tdb, rec_ptr+sizeof(rec), p, key.dsize+dbuf.dsize)==-1
tdb               552 lib/tdb/common/tdb.c 	    || tdb_ofs_write(tdb, TDB_HASH_TOP(hash), &rec_ptr) == -1) {
tdb               561 lib/tdb/common/tdb.c 		tdb_increment_seqnum(tdb);
tdb               565 lib/tdb/common/tdb.c 	tdb_unlock(tdb, BUCKET(hash), F_WRLCK);
tdb               571 lib/tdb/common/tdb.c int tdb_append(struct tdb_context *tdb, TDB_DATA key, TDB_DATA new_dbuf)
tdb               578 lib/tdb/common/tdb.c 	hash = tdb->hash_fn(&key);
tdb               579 lib/tdb/common/tdb.c 	if (tdb_lock(tdb, BUCKET(hash), F_WRLCK) == -1)
tdb               582 lib/tdb/common/tdb.c 	dbuf = tdb_fetch(tdb, key);
tdb               596 lib/tdb/common/tdb.c 		tdb->ecode = TDB_ERR_OOM;
tdb               603 lib/tdb/common/tdb.c 	ret = tdb_store(tdb, key, dbuf, 0);
tdb               606 lib/tdb/common/tdb.c 	tdb_unlock(tdb, BUCKET(hash), F_WRLCK);
tdb               616 lib/tdb/common/tdb.c const char *tdb_name(struct tdb_context *tdb)
tdb               618 lib/tdb/common/tdb.c 	return tdb->name;
tdb               626 lib/tdb/common/tdb.c int tdb_fd(struct tdb_context *tdb)
tdb               628 lib/tdb/common/tdb.c 	return tdb->fd;
tdb               635 lib/tdb/common/tdb.c tdb_log_func tdb_log_fn(struct tdb_context *tdb)
tdb               637 lib/tdb/common/tdb.c 	return tdb->log.log_fn;
tdb               651 lib/tdb/common/tdb.c int tdb_get_seqnum(struct tdb_context *tdb)
tdb               655 lib/tdb/common/tdb.c 	tdb_ofs_read(tdb, TDB_SEQNUM_OFS, &seqnum);
tdb               659 lib/tdb/common/tdb.c int tdb_hash_size(struct tdb_context *tdb)
tdb               661 lib/tdb/common/tdb.c 	return tdb->header.hash_size;
tdb               664 lib/tdb/common/tdb.c size_t tdb_map_size(struct tdb_context *tdb)
tdb               666 lib/tdb/common/tdb.c 	return tdb->map_size;
tdb               669 lib/tdb/common/tdb.c int tdb_get_flags(struct tdb_context *tdb)
tdb               671 lib/tdb/common/tdb.c 	return tdb->flags;
tdb               674 lib/tdb/common/tdb.c void tdb_add_flags(struct tdb_context *tdb, unsigned flags)
tdb               676 lib/tdb/common/tdb.c 	tdb->flags |= flags;
tdb               679 lib/tdb/common/tdb.c void tdb_remove_flags(struct tdb_context *tdb, unsigned flags)
tdb               681 lib/tdb/common/tdb.c 	tdb->flags &= ~flags;
tdb               688 lib/tdb/common/tdb.c void tdb_enable_seqnum(struct tdb_context *tdb)
tdb               690 lib/tdb/common/tdb.c 	tdb->flags |= TDB_SEQNUM;
tdb               698 lib/tdb/common/tdb.c static int tdb_free_region(struct tdb_context *tdb, tdb_off_t offset, ssize_t length)
tdb               705 lib/tdb/common/tdb.c 	if (length + offset > tdb->map_size) {
tdb               706 lib/tdb/common/tdb.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL,"tdb_free_region: adding region beyond end of file\n"));
tdb               711 lib/tdb/common/tdb.c 	if (tdb_free(tdb, offset, &rec) == -1) {
tdb               712 lib/tdb/common/tdb.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL,"tdb_free_region: failed to add free record\n"));
tdb               725 lib/tdb/common/tdb.c int tdb_wipe_all(struct tdb_context *tdb)
tdb               733 lib/tdb/common/tdb.c 	if (tdb_lockall(tdb) != 0) {
tdb               741 lib/tdb/common/tdb.c 	if (tdb_ofs_read(tdb, TDB_RECOVERY_HEAD, &recovery_head) == -1) {
tdb               742 lib/tdb/common/tdb.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_wipe_all: failed to read recovery head\n"));
tdb               748 lib/tdb/common/tdb.c 		if (tdb->methods->tdb_read(tdb, recovery_head, &rec, sizeof(rec), DOCONV()) == -1) {
tdb               749 lib/tdb/common/tdb.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_wipe_all: failed to read recovery record\n"));
tdb               756 lib/tdb/common/tdb.c 	for (i=0;i<tdb->header.hash_size;i++) {
tdb               757 lib/tdb/common/tdb.c 		if (tdb_ofs_write(tdb, TDB_HASH_TOP(i), &offset) == -1) {
tdb               758 lib/tdb/common/tdb.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL,"tdb_wipe_all: failed to write hash %d\n", i));
tdb               764 lib/tdb/common/tdb.c 	if (tdb_ofs_write(tdb, FREELIST_TOP, &offset) == -1) {
tdb               765 lib/tdb/common/tdb.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL,"tdb_wipe_all: failed to write freelist\n"));
tdb               773 lib/tdb/common/tdb.c 		data_len = (tdb->map_size - TDB_DATA_START(tdb->header.hash_size));
tdb               774 lib/tdb/common/tdb.c 		if (tdb_free_region(tdb, TDB_DATA_START(tdb->header.hash_size), data_len) != 0) {
tdb               786 lib/tdb/common/tdb.c 		data_len = (recovery_head - TDB_DATA_START(tdb->header.hash_size));
tdb               787 lib/tdb/common/tdb.c 		if (tdb_free_region(tdb, TDB_DATA_START(tdb->header.hash_size), data_len) != 0) {
tdb               791 lib/tdb/common/tdb.c 		data_len = tdb->map_size - (recovery_head+recovery_size);
tdb               792 lib/tdb/common/tdb.c 		if (tdb_free_region(tdb, recovery_head+recovery_size, data_len) != 0) {
tdb               797 lib/tdb/common/tdb.c 	if (tdb_unlockall(tdb) != 0) {
tdb               798 lib/tdb/common/tdb.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL,"tdb_wipe_all: failed to unlock\n"));
tdb               805 lib/tdb/common/tdb.c 	tdb_unlockall(tdb);
tdb               817 lib/tdb/common/tdb.c static int repack_traverse(struct tdb_context *tdb, TDB_DATA key, TDB_DATA data, void *private)
tdb               830 lib/tdb/common/tdb.c int tdb_repack(struct tdb_context *tdb)
tdb               835 lib/tdb/common/tdb.c 	if (tdb_transaction_start(tdb) != 0) {
tdb               836 lib/tdb/common/tdb.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, __location__ " Failed to start transaction\n"));
tdb               840 lib/tdb/common/tdb.c 	tmp_db = tdb_open("tmpdb", tdb_hash_size(tdb), TDB_INTERNAL, O_RDWR|O_CREAT, 0);
tdb               842 lib/tdb/common/tdb.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, __location__ " Failed to create tmp_db\n"));
tdb               843 lib/tdb/common/tdb.c 		tdb_transaction_cancel(tdb);
tdb               850 lib/tdb/common/tdb.c 	if (tdb_traverse_read(tdb, repack_traverse, &state) == -1) {
tdb               851 lib/tdb/common/tdb.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, __location__ " Failed to traverse copying out\n"));
tdb               852 lib/tdb/common/tdb.c 		tdb_transaction_cancel(tdb);
tdb               858 lib/tdb/common/tdb.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, __location__ " Error during traversal\n"));
tdb               859 lib/tdb/common/tdb.c 		tdb_transaction_cancel(tdb);
tdb               864 lib/tdb/common/tdb.c 	if (tdb_wipe_all(tdb) != 0) {
tdb               865 lib/tdb/common/tdb.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, __location__ " Failed to wipe database\n"));
tdb               866 lib/tdb/common/tdb.c 		tdb_transaction_cancel(tdb);
tdb               872 lib/tdb/common/tdb.c 	state.dest_db = tdb;
tdb               875 lib/tdb/common/tdb.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, __location__ " Failed to traverse copying back\n"));
tdb               876 lib/tdb/common/tdb.c 		tdb_transaction_cancel(tdb);
tdb               882 lib/tdb/common/tdb.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, __location__ " Error during second traversal\n"));
tdb               883 lib/tdb/common/tdb.c 		tdb_transaction_cancel(tdb);
tdb               890 lib/tdb/common/tdb.c 	if (tdb_transaction_commit(tdb) != 0) {
tdb               891 lib/tdb/common/tdb.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, __location__ " Failed to commit\n"));
tdb                59 lib/tdb/common/tdb_private.h #define TDB_HASHTABLE_SIZE(tdb) ((tdb->header.hash_size+1)*sizeof(tdb_off_t))
tdb                69 lib/tdb/common/tdb_private.h #define TDB_LOG(x) tdb->log.log_fn x
tdb                81 lib/tdb/common/tdb_private.h #define BUCKET(hash) ((hash) % tdb->header.hash_size)
tdb                83 lib/tdb/common/tdb_private.h #define DOCONV() (tdb->flags & TDB_CONVERT)
tdb               177 lib/tdb/common/tdb_private.h int tdb_munmap(struct tdb_context *tdb);
tdb               178 lib/tdb/common/tdb_private.h void tdb_mmap(struct tdb_context *tdb);
tdb               179 lib/tdb/common/tdb_private.h int tdb_lock(struct tdb_context *tdb, int list, int ltype);
tdb               180 lib/tdb/common/tdb_private.h int tdb_lock_nonblock(struct tdb_context *tdb, int list, int ltype);
tdb               181 lib/tdb/common/tdb_private.h int tdb_unlock(struct tdb_context *tdb, int list, int ltype);
tdb               182 lib/tdb/common/tdb_private.h int tdb_brlock(struct tdb_context *tdb, tdb_off_t offset, int rw_type, int lck_type, int probe, size_t len);
tdb               183 lib/tdb/common/tdb_private.h int tdb_transaction_lock(struct tdb_context *tdb, int ltype);
tdb               184 lib/tdb/common/tdb_private.h int tdb_transaction_unlock(struct tdb_context *tdb);
tdb               185 lib/tdb/common/tdb_private.h int tdb_brlock_upgrade(struct tdb_context *tdb, tdb_off_t offset, size_t len);
tdb               186 lib/tdb/common/tdb_private.h int tdb_write_lock_record(struct tdb_context *tdb, tdb_off_t off);
tdb               187 lib/tdb/common/tdb_private.h int tdb_write_unlock_record(struct tdb_context *tdb, tdb_off_t off);
tdb               188 lib/tdb/common/tdb_private.h int tdb_ofs_read(struct tdb_context *tdb, tdb_off_t offset, tdb_off_t *d);
tdb               189 lib/tdb/common/tdb_private.h int tdb_ofs_write(struct tdb_context *tdb, tdb_off_t offset, tdb_off_t *d);
tdb               191 lib/tdb/common/tdb_private.h int tdb_free(struct tdb_context *tdb, tdb_off_t offset, struct list_struct *rec);
tdb               192 lib/tdb/common/tdb_private.h tdb_off_t tdb_allocate(struct tdb_context *tdb, tdb_len_t length, struct list_struct *rec);
tdb               193 lib/tdb/common/tdb_private.h int tdb_ofs_read(struct tdb_context *tdb, tdb_off_t offset, tdb_off_t *d);
tdb               194 lib/tdb/common/tdb_private.h int tdb_ofs_write(struct tdb_context *tdb, tdb_off_t offset, tdb_off_t *d);
tdb               195 lib/tdb/common/tdb_private.h int tdb_lock_record(struct tdb_context *tdb, tdb_off_t off);
tdb               196 lib/tdb/common/tdb_private.h int tdb_unlock_record(struct tdb_context *tdb, tdb_off_t off);
tdb               197 lib/tdb/common/tdb_private.h int tdb_rec_read(struct tdb_context *tdb, tdb_off_t offset, struct list_struct *rec);
tdb               198 lib/tdb/common/tdb_private.h int tdb_rec_write(struct tdb_context *tdb, tdb_off_t offset, struct list_struct *rec);
tdb               199 lib/tdb/common/tdb_private.h int tdb_do_delete(struct tdb_context *tdb, tdb_off_t rec_ptr, struct list_struct *rec);
tdb               200 lib/tdb/common/tdb_private.h unsigned char *tdb_alloc_read(struct tdb_context *tdb, tdb_off_t offset, tdb_len_t len);
tdb               201 lib/tdb/common/tdb_private.h int tdb_parse_data(struct tdb_context *tdb, TDB_DATA key,
tdb               206 lib/tdb/common/tdb_private.h tdb_off_t tdb_find_lock_hash(struct tdb_context *tdb, TDB_DATA key, uint32_t hash, int locktype,
tdb               208 lib/tdb/common/tdb_private.h void tdb_io_init(struct tdb_context *tdb);
tdb               209 lib/tdb/common/tdb_private.h int tdb_expand(struct tdb_context *tdb, tdb_off_t size);
tdb               210 lib/tdb/common/tdb_private.h int tdb_rec_free_read(struct tdb_context *tdb, tdb_off_t off,
tdb               128 lib/tdb/common/transaction.c static int transaction_read(struct tdb_context *tdb, tdb_off_t off, void *buf, 
tdb               134 lib/tdb/common/transaction.c 	while (len + (off % tdb->transaction->block_size) > tdb->transaction->block_size) {
tdb               135 lib/tdb/common/transaction.c 		tdb_len_t len2 = tdb->transaction->block_size - (off % tdb->transaction->block_size);
tdb               136 lib/tdb/common/transaction.c 		if (transaction_read(tdb, off, buf, len2, cv) != 0) {
tdb               148 lib/tdb/common/transaction.c 	blk = off / tdb->transaction->block_size;
tdb               151 lib/tdb/common/transaction.c 	if (tdb->transaction->num_blocks <= blk ||
tdb               152 lib/tdb/common/transaction.c 	    tdb->transaction->blocks[blk] == NULL) {
tdb               154 lib/tdb/common/transaction.c 		if (tdb->transaction->io_methods->tdb_read(tdb, off, buf, len, cv) != 0) {
tdb               161 lib/tdb/common/transaction.c 	if (blk == tdb->transaction->num_blocks-1) {
tdb               162 lib/tdb/common/transaction.c 		if (len > tdb->transaction->last_block_size) {
tdb               168 lib/tdb/common/transaction.c 	memcpy(buf, tdb->transaction->blocks[blk] + (off % tdb->transaction->block_size), len);
tdb               175 lib/tdb/common/transaction.c 	TDB_LOG((tdb, TDB_DEBUG_FATAL, "transaction_read: failed at off=%d len=%d\n", off, len));
tdb               176 lib/tdb/common/transaction.c 	tdb->ecode = TDB_ERR_IO;
tdb               177 lib/tdb/common/transaction.c 	tdb->transaction->transaction_error = 1;
tdb               185 lib/tdb/common/transaction.c static int transaction_write(struct tdb_context *tdb, tdb_off_t off, 
tdb               193 lib/tdb/common/transaction.c 	    off < FREELIST_TOP+TDB_HASHTABLE_SIZE(tdb)) {
tdb               195 lib/tdb/common/transaction.c 		memcpy(&tdb->transaction->hash_heads[chain], buf, len);
tdb               199 lib/tdb/common/transaction.c 	while (len + (off % tdb->transaction->block_size) > tdb->transaction->block_size) {
tdb               200 lib/tdb/common/transaction.c 		tdb_len_t len2 = tdb->transaction->block_size - (off % tdb->transaction->block_size);
tdb               201 lib/tdb/common/transaction.c 		if (transaction_write(tdb, off, buf, len2) != 0) {
tdb               215 lib/tdb/common/transaction.c 	blk = off / tdb->transaction->block_size;
tdb               216 lib/tdb/common/transaction.c 	off = off % tdb->transaction->block_size;
tdb               218 lib/tdb/common/transaction.c 	if (tdb->transaction->num_blocks <= blk) {
tdb               221 lib/tdb/common/transaction.c 		if (tdb->transaction->blocks == NULL) {
tdb               226 lib/tdb/common/transaction.c 				tdb->transaction->blocks,
tdb               230 lib/tdb/common/transaction.c 			tdb->ecode = TDB_ERR_OOM;
tdb               233 lib/tdb/common/transaction.c 		memset(&new_blocks[tdb->transaction->num_blocks], 0, 
tdb               234 lib/tdb/common/transaction.c 		       (1+(blk - tdb->transaction->num_blocks))*sizeof(uint8_t *));
tdb               235 lib/tdb/common/transaction.c 		tdb->transaction->blocks = new_blocks;
tdb               236 lib/tdb/common/transaction.c 		tdb->transaction->num_blocks = blk+1;
tdb               237 lib/tdb/common/transaction.c 		tdb->transaction->last_block_size = 0;
tdb               241 lib/tdb/common/transaction.c 	if (tdb->transaction->blocks[blk] == NULL) {
tdb               242 lib/tdb/common/transaction.c 		tdb->transaction->blocks[blk] = (uint8_t *)calloc(tdb->transaction->block_size, 1);
tdb               243 lib/tdb/common/transaction.c 		if (tdb->transaction->blocks[blk] == NULL) {
tdb               244 lib/tdb/common/transaction.c 			tdb->ecode = TDB_ERR_OOM;
tdb               245 lib/tdb/common/transaction.c 			tdb->transaction->transaction_error = 1;
tdb               248 lib/tdb/common/transaction.c 		if (tdb->transaction->old_map_size > blk * tdb->transaction->block_size) {
tdb               249 lib/tdb/common/transaction.c 			tdb_len_t len2 = tdb->transaction->block_size;
tdb               250 lib/tdb/common/transaction.c 			if (len2 + (blk * tdb->transaction->block_size) > tdb->transaction->old_map_size) {
tdb               251 lib/tdb/common/transaction.c 				len2 = tdb->transaction->old_map_size - (blk * tdb->transaction->block_size);
tdb               253 lib/tdb/common/transaction.c 			if (tdb->transaction->io_methods->tdb_read(tdb, blk * tdb->transaction->block_size, 
tdb               254 lib/tdb/common/transaction.c 								   tdb->transaction->blocks[blk], 
tdb               256 lib/tdb/common/transaction.c 				SAFE_FREE(tdb->transaction->blocks[blk]);				
tdb               257 lib/tdb/common/transaction.c 				tdb->ecode = TDB_ERR_IO;
tdb               260 lib/tdb/common/transaction.c 			if (blk == tdb->transaction->num_blocks-1) {
tdb               261 lib/tdb/common/transaction.c 				tdb->transaction->last_block_size = len2;
tdb               268 lib/tdb/common/transaction.c 		memset(tdb->transaction->blocks[blk] + off, 0, len);
tdb               270 lib/tdb/common/transaction.c 		memcpy(tdb->transaction->blocks[blk] + off, buf, len);
tdb               272 lib/tdb/common/transaction.c 	if (blk == tdb->transaction->num_blocks-1) {
tdb               273 lib/tdb/common/transaction.c 		if (len + off > tdb->transaction->last_block_size) {
tdb               274 lib/tdb/common/transaction.c 			tdb->transaction->last_block_size = len + off;
tdb               281 lib/tdb/common/transaction.c 	TDB_LOG((tdb, TDB_DEBUG_FATAL, "transaction_write: failed at off=%d len=%d\n", 
tdb               282 lib/tdb/common/transaction.c 		 (blk*tdb->transaction->block_size) + off, len));
tdb               283 lib/tdb/common/transaction.c 	tdb->transaction->transaction_error = 1;
tdb               292 lib/tdb/common/transaction.c static int transaction_write_existing(struct tdb_context *tdb, tdb_off_t off, 
tdb               298 lib/tdb/common/transaction.c 	while (len + (off % tdb->transaction->block_size) > tdb->transaction->block_size) {
tdb               299 lib/tdb/common/transaction.c 		tdb_len_t len2 = tdb->transaction->block_size - (off % tdb->transaction->block_size);
tdb               300 lib/tdb/common/transaction.c 		if (transaction_write_existing(tdb, off, buf, len2) != 0) {
tdb               314 lib/tdb/common/transaction.c 	blk = off / tdb->transaction->block_size;
tdb               315 lib/tdb/common/transaction.c 	off = off % tdb->transaction->block_size;
tdb               317 lib/tdb/common/transaction.c 	if (tdb->transaction->num_blocks <= blk ||
tdb               318 lib/tdb/common/transaction.c 	    tdb->transaction->blocks[blk] == NULL) {
tdb               322 lib/tdb/common/transaction.c 	if (blk == tdb->transaction->num_blocks-1 &&
tdb               323 lib/tdb/common/transaction.c 	    off + len > tdb->transaction->last_block_size) {
tdb               324 lib/tdb/common/transaction.c 		if (off >= tdb->transaction->last_block_size) {
tdb               327 lib/tdb/common/transaction.c 		len = tdb->transaction->last_block_size - off;
tdb               331 lib/tdb/common/transaction.c 	memcpy(tdb->transaction->blocks[blk] + off, buf, len);
tdb               340 lib/tdb/common/transaction.c static void transaction_next_hash_chain(struct tdb_context *tdb, uint32_t *chain)
tdb               343 lib/tdb/common/transaction.c 	for (;h < tdb->header.hash_size;h++) {
tdb               345 lib/tdb/common/transaction.c 		if (0 != tdb->transaction->hash_heads[h+1]) {
tdb               355 lib/tdb/common/transaction.c static int transaction_oob(struct tdb_context *tdb, tdb_off_t len, int probe)
tdb               357 lib/tdb/common/transaction.c 	if (len <= tdb->map_size) {
tdb               366 lib/tdb/common/transaction.c static int transaction_expand_file(struct tdb_context *tdb, tdb_off_t size, 
tdb               371 lib/tdb/common/transaction.c 	if (transaction_write(tdb, size, NULL, addition) != 0) {
tdb               381 lib/tdb/common/transaction.c static int transaction_brlock(struct tdb_context *tdb, tdb_off_t offset, 
tdb               401 lib/tdb/common/transaction.c int tdb_transaction_start(struct tdb_context *tdb)
tdb               404 lib/tdb/common/transaction.c 	if (tdb->read_only || (tdb->flags & TDB_INTERNAL) || tdb->traverse_read) {
tdb               405 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_transaction_start: cannot start a transaction on a read-only or internal db\n"));
tdb               406 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_EINVAL;
tdb               411 lib/tdb/common/transaction.c 	if (tdb->transaction != NULL) {
tdb               412 lib/tdb/common/transaction.c 		tdb->transaction->nesting++;
tdb               413 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_TRACE, "tdb_transaction_start: nesting %d\n", 
tdb               414 lib/tdb/common/transaction.c 			 tdb->transaction->nesting));
tdb               418 lib/tdb/common/transaction.c 	if (tdb->num_locks != 0 || tdb->global_lock.count) {
tdb               422 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_transaction_start: cannot start a transaction with locks held\n"));
tdb               423 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_LOCK;
tdb               427 lib/tdb/common/transaction.c 	if (tdb->travlocks.next != NULL) {
tdb               431 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_transaction_start: cannot start a transaction within a traverse\n"));
tdb               432 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_LOCK;
tdb               436 lib/tdb/common/transaction.c 	tdb->transaction = (struct tdb_transaction *)
tdb               438 lib/tdb/common/transaction.c 	if (tdb->transaction == NULL) {
tdb               439 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_OOM;
tdb               444 lib/tdb/common/transaction.c 	tdb->transaction->block_size = tdb->page_size;
tdb               449 lib/tdb/common/transaction.c 	if (tdb_transaction_lock(tdb, F_WRLCK) == -1) {
tdb               450 lib/tdb/common/transaction.c 		SAFE_FREE(tdb->transaction->blocks);
tdb               451 lib/tdb/common/transaction.c 		SAFE_FREE(tdb->transaction);
tdb               457 lib/tdb/common/transaction.c 	if (tdb_brlock(tdb, FREELIST_TOP, F_RDLCK, F_SETLKW, 0, 0) == -1) {
tdb               458 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_transaction_start: failed to get hash locks\n"));
tdb               459 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_LOCK;
tdb               465 lib/tdb/common/transaction.c 	tdb->transaction->hash_heads = (uint32_t *)
tdb               466 lib/tdb/common/transaction.c 		calloc(tdb->header.hash_size+1, sizeof(uint32_t));
tdb               467 lib/tdb/common/transaction.c 	if (tdb->transaction->hash_heads == NULL) {
tdb               468 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_OOM;
tdb               471 lib/tdb/common/transaction.c 	if (tdb->methods->tdb_read(tdb, FREELIST_TOP, tdb->transaction->hash_heads,
tdb               472 lib/tdb/common/transaction.c 				   TDB_HASHTABLE_SIZE(tdb), 0) != 0) {
tdb               473 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction_start: failed to read hash heads\n"));
tdb               474 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_IO;
tdb               480 lib/tdb/common/transaction.c 	tdb->methods->tdb_oob(tdb, tdb->map_size + 1, 1);
tdb               481 lib/tdb/common/transaction.c 	tdb->transaction->old_map_size = tdb->map_size;
tdb               485 lib/tdb/common/transaction.c 	tdb->transaction->io_methods = tdb->methods;
tdb               486 lib/tdb/common/transaction.c 	tdb->methods = &transaction_methods;
tdb               491 lib/tdb/common/transaction.c 	tdb_brlock(tdb, FREELIST_TOP, F_UNLCK, F_SETLKW, 0, 0);
tdb               492 lib/tdb/common/transaction.c 	tdb_transaction_unlock(tdb);
tdb               493 lib/tdb/common/transaction.c 	SAFE_FREE(tdb->transaction->blocks);
tdb               494 lib/tdb/common/transaction.c 	SAFE_FREE(tdb->transaction->hash_heads);
tdb               495 lib/tdb/common/transaction.c 	SAFE_FREE(tdb->transaction);
tdb               503 lib/tdb/common/transaction.c int tdb_transaction_cancel(struct tdb_context *tdb)
tdb               507 lib/tdb/common/transaction.c 	if (tdb->transaction == NULL) {
tdb               508 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_transaction_cancel: no transaction\n"));
tdb               512 lib/tdb/common/transaction.c 	if (tdb->transaction->nesting != 0) {
tdb               513 lib/tdb/common/transaction.c 		tdb->transaction->transaction_error = 1;
tdb               514 lib/tdb/common/transaction.c 		tdb->transaction->nesting--;
tdb               518 lib/tdb/common/transaction.c 	tdb->map_size = tdb->transaction->old_map_size;
tdb               521 lib/tdb/common/transaction.c 	for (i=0;i<tdb->transaction->num_blocks;i++) {
tdb               522 lib/tdb/common/transaction.c 		if (tdb->transaction->blocks[i] != NULL) {
tdb               523 lib/tdb/common/transaction.c 			free(tdb->transaction->blocks[i]);
tdb               526 lib/tdb/common/transaction.c 	SAFE_FREE(tdb->transaction->blocks);
tdb               529 lib/tdb/common/transaction.c 	if (tdb->global_lock.count != 0) {
tdb               530 lib/tdb/common/transaction.c 		tdb_brlock(tdb, FREELIST_TOP, F_UNLCK, F_SETLKW, 0, 4*tdb->header.hash_size);
tdb               531 lib/tdb/common/transaction.c 		tdb->global_lock.count = 0;
tdb               535 lib/tdb/common/transaction.c 	if (tdb->num_locks != 0) {
tdb               536 lib/tdb/common/transaction.c 		for (i=0;i<tdb->num_lockrecs;i++) {
tdb               537 lib/tdb/common/transaction.c 			tdb_brlock(tdb,FREELIST_TOP+4*tdb->lockrecs[i].list,
tdb               540 lib/tdb/common/transaction.c 		tdb->num_locks = 0;
tdb               541 lib/tdb/common/transaction.c 		tdb->num_lockrecs = 0;
tdb               542 lib/tdb/common/transaction.c 		SAFE_FREE(tdb->lockrecs);
tdb               546 lib/tdb/common/transaction.c 	tdb->methods = tdb->transaction->io_methods;
tdb               548 lib/tdb/common/transaction.c 	tdb_brlock(tdb, FREELIST_TOP, F_UNLCK, F_SETLKW, 0, 0);
tdb               549 lib/tdb/common/transaction.c 	tdb_transaction_unlock(tdb);
tdb               550 lib/tdb/common/transaction.c 	SAFE_FREE(tdb->transaction->hash_heads);
tdb               551 lib/tdb/common/transaction.c 	SAFE_FREE(tdb->transaction);
tdb               559 lib/tdb/common/transaction.c static int transaction_sync(struct tdb_context *tdb, tdb_off_t offset, tdb_len_t length)
tdb               561 lib/tdb/common/transaction.c 	if (fsync(tdb->fd) != 0) {
tdb               562 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_IO;
tdb               563 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction: fsync failed\n"));
tdb               567 lib/tdb/common/transaction.c 	if (tdb->map_ptr) {
tdb               568 lib/tdb/common/transaction.c 		tdb_off_t moffset = offset & ~(tdb->page_size-1);
tdb               569 lib/tdb/common/transaction.c 		if (msync(moffset + (char *)tdb->map_ptr, 
tdb               571 lib/tdb/common/transaction.c 			tdb->ecode = TDB_ERR_IO;
tdb               572 lib/tdb/common/transaction.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction: msync failed - %s\n",
tdb               585 lib/tdb/common/transaction.c static tdb_len_t tdb_recovery_size(struct tdb_context *tdb)
tdb               591 lib/tdb/common/transaction.c 	for (i=0;i<tdb->transaction->num_blocks;i++) {
tdb               592 lib/tdb/common/transaction.c 		if (i * tdb->transaction->block_size >= tdb->transaction->old_map_size) {
tdb               595 lib/tdb/common/transaction.c 		if (tdb->transaction->blocks[i] == NULL) {
tdb               599 lib/tdb/common/transaction.c 		if (i == tdb->transaction->num_blocks-1) {
tdb               600 lib/tdb/common/transaction.c 			recovery_size += tdb->transaction->last_block_size;
tdb               602 lib/tdb/common/transaction.c 			recovery_size += tdb->transaction->block_size;
tdb               613 lib/tdb/common/transaction.c static int tdb_recovery_allocate(struct tdb_context *tdb, 
tdb               619 lib/tdb/common/transaction.c 	const struct tdb_methods *methods = tdb->transaction->io_methods;
tdb               622 lib/tdb/common/transaction.c 	if (tdb_ofs_read(tdb, TDB_RECOVERY_HEAD, &recovery_head) == -1) {
tdb               623 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_recovery_allocate: failed to read recovery head\n"));
tdb               630 lib/tdb/common/transaction.c 	    methods->tdb_read(tdb, recovery_head, &rec, sizeof(rec), DOCONV()) == -1) {
tdb               631 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_recovery_allocate: failed to read recovery record\n"));
tdb               635 lib/tdb/common/transaction.c 	*recovery_size = tdb_recovery_size(tdb);
tdb               650 lib/tdb/common/transaction.c 		if (tdb_free(tdb, recovery_head, &rec) == -1) {
tdb               651 lib/tdb/common/transaction.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_recovery_allocate: failed to free previous recovery area\n"));
tdb               657 lib/tdb/common/transaction.c 	*recovery_size = tdb_recovery_size(tdb);
tdb               660 lib/tdb/common/transaction.c 	*recovery_max_size = TDB_ALIGN(sizeof(rec) + *recovery_size, tdb->page_size) - sizeof(rec);
tdb               661 lib/tdb/common/transaction.c 	*recovery_offset = tdb->map_size;
tdb               664 lib/tdb/common/transaction.c 	if (methods->tdb_expand_file(tdb, tdb->transaction->old_map_size, 
tdb               665 lib/tdb/common/transaction.c 				     (tdb->map_size - tdb->transaction->old_map_size) +
tdb               667 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_recovery_allocate: failed to create recovery area\n"));
tdb               672 lib/tdb/common/transaction.c 	methods->tdb_oob(tdb, tdb->map_size + 1, 1);
tdb               676 lib/tdb/common/transaction.c 	tdb->transaction->old_map_size = tdb->map_size;
tdb               681 lib/tdb/common/transaction.c 	if (methods->tdb_write(tdb, TDB_RECOVERY_HEAD, 
tdb               683 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_recovery_allocate: failed to write recovery head\n"));
tdb               686 lib/tdb/common/transaction.c 	if (transaction_write_existing(tdb, TDB_RECOVERY_HEAD, &recovery_head, sizeof(tdb_off_t)) == -1) {
tdb               687 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_recovery_allocate: failed to write recovery head\n"));
tdb               698 lib/tdb/common/transaction.c static int transaction_setup_recovery(struct tdb_context *tdb, 
tdb               703 lib/tdb/common/transaction.c 	const struct tdb_methods *methods = tdb->transaction->io_methods;
tdb               706 lib/tdb/common/transaction.c 	tdb_off_t old_map_size = tdb->transaction->old_map_size;
tdb               713 lib/tdb/common/transaction.c 	if (tdb_recovery_allocate(tdb, &recovery_size, 
tdb               720 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_OOM;
tdb               736 lib/tdb/common/transaction.c 	for (i=0;i<tdb->transaction->num_blocks;i++) {
tdb               740 lib/tdb/common/transaction.c 		if (tdb->transaction->blocks[i] == NULL) {
tdb               744 lib/tdb/common/transaction.c 		offset = i * tdb->transaction->block_size;
tdb               745 lib/tdb/common/transaction.c 		length = tdb->transaction->block_size;
tdb               746 lib/tdb/common/transaction.c 		if (i == tdb->transaction->num_blocks-1) {
tdb               747 lib/tdb/common/transaction.c 			length = tdb->transaction->last_block_size;
tdb               753 lib/tdb/common/transaction.c 		if (offset + length > tdb->transaction->old_map_size) {
tdb               754 lib/tdb/common/transaction.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction_setup_recovery: transaction data over new region boundary\n"));
tdb               756 lib/tdb/common/transaction.c 			tdb->ecode = TDB_ERR_CORRUPT;
tdb               767 lib/tdb/common/transaction.c 		if (methods->tdb_read(tdb, offset, p + 8, length, 0) != 0) {
tdb               769 lib/tdb/common/transaction.c 			tdb->ecode = TDB_ERR_IO;
tdb               781 lib/tdb/common/transaction.c 	if (methods->tdb_write(tdb, recovery_offset, data, sizeof(*rec) + recovery_size) == -1) {
tdb               782 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction_setup_recovery: failed to write recovery data\n"));
tdb               784 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_IO;
tdb               787 lib/tdb/common/transaction.c 	if (transaction_write_existing(tdb, recovery_offset, data, sizeof(*rec) + recovery_size) == -1) {
tdb               788 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction_setup_recovery: failed to write secondary recovery data\n"));
tdb               790 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_IO;
tdb               797 lib/tdb/common/transaction.c 	if (transaction_sync(tdb, recovery_offset, sizeof(*rec) + recovery_size) == -1) {
tdb               809 lib/tdb/common/transaction.c 	if (methods->tdb_write(tdb, *magic_offset, &magic, sizeof(magic)) == -1) {
tdb               810 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction_setup_recovery: failed to write recovery magic\n"));
tdb               811 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_IO;
tdb               814 lib/tdb/common/transaction.c 	if (transaction_write_existing(tdb, *magic_offset, &magic, sizeof(magic)) == -1) {
tdb               815 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction_setup_recovery: failed to write secondary recovery magic\n"));
tdb               816 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_IO;
tdb               821 lib/tdb/common/transaction.c 	if (transaction_sync(tdb, *magic_offset, sizeof(magic)) == -1) {
tdb               831 lib/tdb/common/transaction.c int tdb_transaction_commit(struct tdb_context *tdb)
tdb               838 lib/tdb/common/transaction.c 	if (tdb->transaction == NULL) {
tdb               839 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_transaction_commit: no transaction\n"));
tdb               843 lib/tdb/common/transaction.c 	if (tdb->transaction->transaction_error) {
tdb               844 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_IO;
tdb               845 lib/tdb/common/transaction.c 		tdb_transaction_cancel(tdb);
tdb               846 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_transaction_commit: transaction error pending\n"));
tdb               851 lib/tdb/common/transaction.c 	if (tdb->transaction->nesting != 0) {
tdb               852 lib/tdb/common/transaction.c 		tdb->transaction->nesting--;
tdb               857 lib/tdb/common/transaction.c 	if (tdb->transaction->blocks == NULL) {
tdb               858 lib/tdb/common/transaction.c 		tdb_transaction_cancel(tdb);
tdb               862 lib/tdb/common/transaction.c 	methods = tdb->transaction->io_methods;
tdb               866 lib/tdb/common/transaction.c 	if (tdb->num_locks || tdb->global_lock.count) {
tdb               867 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_LOCK;
tdb               868 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_transaction_commit: locks pending on commit\n"));
tdb               869 lib/tdb/common/transaction.c 		tdb_transaction_cancel(tdb);
tdb               874 lib/tdb/common/transaction.c 	if (tdb_brlock_upgrade(tdb, FREELIST_TOP, 0) == -1) {
tdb               875 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_transaction_start: failed to upgrade hash locks\n"));
tdb               876 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_LOCK;
tdb               877 lib/tdb/common/transaction.c 		tdb_transaction_cancel(tdb);
tdb               883 lib/tdb/common/transaction.c 	if (tdb_brlock(tdb, GLOBAL_LOCK, F_WRLCK, F_SETLKW, 0, 1) == -1) {
tdb               884 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_ERROR, "tdb_transaction_commit: failed to get global lock\n"));
tdb               885 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_LOCK;
tdb               886 lib/tdb/common/transaction.c 		tdb_transaction_cancel(tdb);
tdb               890 lib/tdb/common/transaction.c 	if (!(tdb->flags & TDB_NOSYNC)) {
tdb               892 lib/tdb/common/transaction.c 		if (transaction_setup_recovery(tdb, &magic_offset) == -1) {
tdb               893 lib/tdb/common/transaction.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction_commit: failed to setup recovery data\n"));
tdb               894 lib/tdb/common/transaction.c 			tdb_brlock(tdb, GLOBAL_LOCK, F_UNLCK, F_SETLKW, 0, 1);
tdb               895 lib/tdb/common/transaction.c 			tdb_transaction_cancel(tdb);
tdb               901 lib/tdb/common/transaction.c 	if (tdb->map_size != tdb->transaction->old_map_size) {
tdb               902 lib/tdb/common/transaction.c 		if (methods->tdb_expand_file(tdb, tdb->transaction->old_map_size, 
tdb               903 lib/tdb/common/transaction.c 					     tdb->map_size - 
tdb               904 lib/tdb/common/transaction.c 					     tdb->transaction->old_map_size) == -1) {
tdb               905 lib/tdb/common/transaction.c 			tdb->ecode = TDB_ERR_IO;
tdb               906 lib/tdb/common/transaction.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction_commit: expansion failed\n"));
tdb               907 lib/tdb/common/transaction.c 			tdb_brlock(tdb, GLOBAL_LOCK, F_UNLCK, F_SETLKW, 0, 1);
tdb               908 lib/tdb/common/transaction.c 			tdb_transaction_cancel(tdb);
tdb               911 lib/tdb/common/transaction.c 		tdb->map_size = tdb->transaction->old_map_size;
tdb               912 lib/tdb/common/transaction.c 		methods->tdb_oob(tdb, tdb->map_size + 1, 1);
tdb               916 lib/tdb/common/transaction.c 	for (i=0;i<tdb->transaction->num_blocks;i++) {
tdb               920 lib/tdb/common/transaction.c 		if (tdb->transaction->blocks[i] == NULL) {
tdb               924 lib/tdb/common/transaction.c 		offset = i * tdb->transaction->block_size;
tdb               925 lib/tdb/common/transaction.c 		length = tdb->transaction->block_size;
tdb               926 lib/tdb/common/transaction.c 		if (i == tdb->transaction->num_blocks-1) {
tdb               927 lib/tdb/common/transaction.c 			length = tdb->transaction->last_block_size;
tdb               930 lib/tdb/common/transaction.c 		if (methods->tdb_write(tdb, offset, tdb->transaction->blocks[i], length) == -1) {
tdb               931 lib/tdb/common/transaction.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction_commit: write failed during commit\n"));
tdb               936 lib/tdb/common/transaction.c 			tdb->methods = methods;
tdb               937 lib/tdb/common/transaction.c 			tdb_transaction_recover(tdb); 
tdb               939 lib/tdb/common/transaction.c 			tdb_transaction_cancel(tdb);
tdb               940 lib/tdb/common/transaction.c 			tdb_brlock(tdb, GLOBAL_LOCK, F_UNLCK, F_SETLKW, 0, 1);
tdb               942 lib/tdb/common/transaction.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction_commit: write failed\n"));
tdb               945 lib/tdb/common/transaction.c 		SAFE_FREE(tdb->transaction->blocks[i]);
tdb               948 lib/tdb/common/transaction.c 	SAFE_FREE(tdb->transaction->blocks);
tdb               949 lib/tdb/common/transaction.c 	tdb->transaction->num_blocks = 0;
tdb               951 lib/tdb/common/transaction.c 	if (!(tdb->flags & TDB_NOSYNC)) {
tdb               953 lib/tdb/common/transaction.c 		if (transaction_sync(tdb, 0, tdb->map_size) == -1) {
tdb               958 lib/tdb/common/transaction.c 		if (methods->tdb_write(tdb, magic_offset, &zero, 4) == -1) {
tdb               959 lib/tdb/common/transaction.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction_commit: failed to remove recovery magic\n"));
tdb               964 lib/tdb/common/transaction.c 		if (transaction_sync(tdb, magic_offset, 4) == -1) {
tdb               969 lib/tdb/common/transaction.c 	tdb_brlock(tdb, GLOBAL_LOCK, F_UNLCK, F_SETLKW, 0, 1);
tdb               983 lib/tdb/common/transaction.c 	utime(tdb->name, NULL);
tdb               988 lib/tdb/common/transaction.c 	tdb_transaction_cancel(tdb);
tdb               999 lib/tdb/common/transaction.c int tdb_transaction_recover(struct tdb_context *tdb)
tdb              1007 lib/tdb/common/transaction.c 	if (tdb_ofs_read(tdb, TDB_RECOVERY_HEAD, &recovery_head) == -1) {
tdb              1008 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction_recover: failed to read recovery head\n"));
tdb              1009 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_IO;
tdb              1019 lib/tdb/common/transaction.c 	if (tdb->methods->tdb_read(tdb, recovery_head, &rec, 
tdb              1021 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction_recover: failed to read recovery record\n"));		
tdb              1022 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_IO;
tdb              1031 lib/tdb/common/transaction.c 	if (tdb->read_only) {
tdb              1032 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction_recover: attempt to recover read only database\n"));
tdb              1033 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_CORRUPT;
tdb              1041 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction_recover: failed to allocate recovery data\n"));		
tdb              1042 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_OOM;
tdb              1047 lib/tdb/common/transaction.c 	if (tdb->methods->tdb_read(tdb, recovery_head + sizeof(rec), data,
tdb              1049 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction_recover: failed to read recovery data\n"));		
tdb              1050 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_IO;
tdb              1064 lib/tdb/common/transaction.c 		if (tdb->methods->tdb_write(tdb, ofs, p+8, len) == -1) {
tdb              1066 lib/tdb/common/transaction.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction_recover: failed to recover %d bytes at offset %d\n", len, ofs));
tdb              1067 lib/tdb/common/transaction.c 			tdb->ecode = TDB_ERR_IO;
tdb              1075 lib/tdb/common/transaction.c 	if (transaction_sync(tdb, 0, tdb->map_size) == -1) {
tdb              1076 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction_recover: failed to sync recovery\n"));
tdb              1077 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_IO;
tdb              1083 lib/tdb/common/transaction.c 		if (tdb_ofs_write(tdb, TDB_RECOVERY_HEAD, &zero) == -1) {
tdb              1084 lib/tdb/common/transaction.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction_recover: failed to remove recovery head\n"));
tdb              1085 lib/tdb/common/transaction.c 			tdb->ecode = TDB_ERR_IO;
tdb              1091 lib/tdb/common/transaction.c 	if (tdb_ofs_write(tdb, recovery_head + offsetof(struct list_struct, magic), 
tdb              1093 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction_recover: failed to remove recovery magic\n"));
tdb              1094 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_IO;
tdb              1099 lib/tdb/common/transaction.c 	tdb_munmap(tdb);
tdb              1100 lib/tdb/common/transaction.c 	if (ftruncate(tdb->fd, recovery_eof) != 0) {
tdb              1101 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction_recover: failed to reduce to recovery size\n"));
tdb              1102 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_IO;
tdb              1105 lib/tdb/common/transaction.c 	tdb->map_size = recovery_eof;
tdb              1106 lib/tdb/common/transaction.c 	tdb_mmap(tdb);
tdb              1108 lib/tdb/common/transaction.c 	if (transaction_sync(tdb, 0, recovery_eof) == -1) {
tdb              1109 lib/tdb/common/transaction.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction_recover: failed to sync2 recovery\n"));
tdb              1110 lib/tdb/common/transaction.c 		tdb->ecode = TDB_ERR_IO;
tdb              1114 lib/tdb/common/transaction.c 	TDB_LOG((tdb, TDB_DEBUG_TRACE, "tdb_transaction_recover: recovered %d byte database\n", 
tdb                31 lib/tdb/common/traverse.c static int tdb_next_lock(struct tdb_context *tdb, struct tdb_traverse_lock *tlock,
tdb                37 lib/tdb/common/traverse.c 	for (; tlock->hash < tdb->header.hash_size; tlock->hash++) {
tdb                67 lib/tdb/common/traverse.c 			tdb->methods->next_hash_chain(tdb, &tlock->hash);
tdb                68 lib/tdb/common/traverse.c 			if (tlock->hash == tdb->header.hash_size) {
tdb                73 lib/tdb/common/traverse.c 		if (tdb_lock(tdb, tlock->hash, tlock->lock_rw) == -1)
tdb                78 lib/tdb/common/traverse.c 			if (tdb_ofs_read(tdb, TDB_HASH_TOP(tlock->hash),
tdb                83 lib/tdb/common/traverse.c 			if (tdb_unlock_record(tdb, tlock->off) != 0)
tdb                89 lib/tdb/common/traverse.c 			if (tdb_rec_read(tdb, tlock->off, rec) == -1)
tdb                97 lib/tdb/common/traverse.c 			if (tdb_rec_read(tdb, tlock->off, rec) == -1)
tdb               102 lib/tdb/common/traverse.c 				TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_next_lock: loop detected.\n"));
tdb               108 lib/tdb/common/traverse.c 				if (tdb_lock_record(tdb, tlock->off) != 0)
tdb               116 lib/tdb/common/traverse.c 			if (!(tdb->read_only || tdb->traverse_read) && 
tdb               117 lib/tdb/common/traverse.c 			    tdb_do_delete(tdb, current, rec) != 0)
tdb               120 lib/tdb/common/traverse.c 		tdb_unlock(tdb, tlock->hash, tlock->lock_rw);
tdb               128 lib/tdb/common/traverse.c 	if (tdb_unlock(tdb, tlock->hash, tlock->lock_rw) != 0)
tdb               129 lib/tdb/common/traverse.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_next_lock: On error unlock failed!\n"));
tdb               138 lib/tdb/common/traverse.c static int tdb_traverse_internal(struct tdb_context *tdb, 
tdb               149 lib/tdb/common/traverse.c 	tl->next = tdb->travlocks.next;
tdb               152 lib/tdb/common/traverse.c 	tdb->travlocks.next = tl;
tdb               155 lib/tdb/common/traverse.c 	while ((ret = tdb_next_lock(tdb, tl, &rec)) > 0) {
tdb               158 lib/tdb/common/traverse.c 		key.dptr = tdb_alloc_read(tdb, tl->off + sizeof(rec), 
tdb               162 lib/tdb/common/traverse.c 			if (tdb_unlock(tdb, tl->hash, tl->lock_rw) != 0)
tdb               164 lib/tdb/common/traverse.c 			if (tdb_unlock_record(tdb, tl->off) != 0)
tdb               165 lib/tdb/common/traverse.c 				TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_traverse: key.dptr == NULL and unlock_record failed!\n"));
tdb               173 lib/tdb/common/traverse.c 		if (tdb_unlock(tdb, tl->hash, tl->lock_rw) != 0) {
tdb               178 lib/tdb/common/traverse.c 		if (fn && fn(tdb, key, dbuf, private_data)) {
tdb               181 lib/tdb/common/traverse.c 			if (tdb_unlock_record(tdb, tl->off) != 0) {
tdb               182 lib/tdb/common/traverse.c 				TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_traverse: unlock_record failed!\n"));;
tdb               191 lib/tdb/common/traverse.c 	tdb->travlocks.next = tl->next;
tdb               202 lib/tdb/common/traverse.c int tdb_traverse_read(struct tdb_context *tdb, 
tdb               207 lib/tdb/common/traverse.c 	bool in_transaction = (tdb->transaction != NULL);
tdb               212 lib/tdb/common/traverse.c 		if (tdb_transaction_lock(tdb, F_RDLCK)) {
tdb               217 lib/tdb/common/traverse.c 	tdb->traverse_read++;
tdb               218 lib/tdb/common/traverse.c 	ret = tdb_traverse_internal(tdb, fn, private_data, &tl);
tdb               219 lib/tdb/common/traverse.c 	tdb->traverse_read--;
tdb               222 lib/tdb/common/traverse.c 		tdb_transaction_unlock(tdb);
tdb               235 lib/tdb/common/traverse.c int tdb_traverse(struct tdb_context *tdb, 
tdb               240 lib/tdb/common/traverse.c 	bool in_transaction = (tdb->transaction != NULL);
tdb               242 lib/tdb/common/traverse.c 	if (tdb->read_only || tdb->traverse_read) {
tdb               243 lib/tdb/common/traverse.c 		return tdb_traverse_read(tdb, fn, private_data);
tdb               247 lib/tdb/common/traverse.c 		if (tdb_transaction_lock(tdb, F_WRLCK)) {
tdb               252 lib/tdb/common/traverse.c 	tdb->traverse_write++;
tdb               253 lib/tdb/common/traverse.c 	ret = tdb_traverse_internal(tdb, fn, private_data, &tl);
tdb               254 lib/tdb/common/traverse.c 	tdb->traverse_write--;
tdb               257 lib/tdb/common/traverse.c 		tdb_transaction_unlock(tdb);
tdb               265 lib/tdb/common/traverse.c TDB_DATA tdb_firstkey(struct tdb_context *tdb)
tdb               271 lib/tdb/common/traverse.c 	if (tdb_unlock_record(tdb, tdb->travlocks.off) != 0)
tdb               273 lib/tdb/common/traverse.c 	tdb->travlocks.off = tdb->travlocks.hash = 0;
tdb               274 lib/tdb/common/traverse.c 	tdb->travlocks.lock_rw = F_RDLCK;
tdb               277 lib/tdb/common/traverse.c 	if (tdb_next_lock(tdb, &tdb->travlocks, &rec) <= 0)
tdb               281 lib/tdb/common/traverse.c 	key.dptr =tdb_alloc_read(tdb,tdb->travlocks.off+sizeof(rec),key.dsize);
tdb               284 lib/tdb/common/traverse.c 	if (tdb_unlock(tdb, tdb->travlocks.hash, tdb->travlocks.lock_rw) != 0)
tdb               285 lib/tdb/common/traverse.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_firstkey: error occurred while tdb_unlocking!\n"));
tdb               290 lib/tdb/common/traverse.c TDB_DATA tdb_nextkey(struct tdb_context *tdb, TDB_DATA oldkey)
tdb               298 lib/tdb/common/traverse.c 	if (tdb->travlocks.off) {
tdb               299 lib/tdb/common/traverse.c 		if (tdb_lock(tdb,tdb->travlocks.hash,tdb->travlocks.lock_rw))
tdb               301 lib/tdb/common/traverse.c 		if (tdb_rec_read(tdb, tdb->travlocks.off, &rec) == -1
tdb               302 lib/tdb/common/traverse.c 		    || !(k = tdb_alloc_read(tdb,tdb->travlocks.off+sizeof(rec),
tdb               306 lib/tdb/common/traverse.c 			if (tdb_unlock_record(tdb, tdb->travlocks.off) != 0) {
tdb               310 lib/tdb/common/traverse.c 			if (tdb_unlock(tdb, tdb->travlocks.hash, tdb->travlocks.lock_rw) != 0) {
tdb               314 lib/tdb/common/traverse.c 			tdb->travlocks.off = 0;
tdb               320 lib/tdb/common/traverse.c 	if (!tdb->travlocks.off) {
tdb               322 lib/tdb/common/traverse.c 		tdb->travlocks.off = tdb_find_lock_hash(tdb, oldkey, tdb->hash_fn(&oldkey), tdb->travlocks.lock_rw, &rec);
tdb               323 lib/tdb/common/traverse.c 		if (!tdb->travlocks.off)
tdb               325 lib/tdb/common/traverse.c 		tdb->travlocks.hash = BUCKET(rec.full_hash);
tdb               326 lib/tdb/common/traverse.c 		if (tdb_lock_record(tdb, tdb->travlocks.off) != 0) {
tdb               327 lib/tdb/common/traverse.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_nextkey: lock_record failed (%s)!\n", strerror(errno)));
tdb               331 lib/tdb/common/traverse.c 	oldhash = tdb->travlocks.hash;
tdb               335 lib/tdb/common/traverse.c 	if (tdb_next_lock(tdb, &tdb->travlocks, &rec) > 0) {
tdb               337 lib/tdb/common/traverse.c 		key.dptr = tdb_alloc_read(tdb, tdb->travlocks.off+sizeof(rec),
tdb               340 lib/tdb/common/traverse.c 		if (tdb_unlock(tdb, tdb->travlocks.hash, tdb->travlocks.lock_rw) != 0)
tdb               341 lib/tdb/common/traverse.c 			TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_nextkey: WARNING tdb_unlock failed!\n"));
tdb               344 lib/tdb/common/traverse.c 	if (tdb_unlock(tdb, BUCKET(oldhash), tdb->travlocks.lock_rw) != 0)
tdb               345 lib/tdb/common/traverse.c 		TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_nextkey: WARNING tdb_unlock failed!\n"));
tdb                52 lib/tdb/include/tdb.h #define TDB_ERRCODE(code, ret) ((tdb->ecode = (code)), ret)
tdb                98 lib/tdb/include/tdb.h void tdb_set_max_dead(struct tdb_context *tdb, int max_dead);
tdb               100 lib/tdb/include/tdb.h int tdb_reopen(struct tdb_context *tdb);
tdb               102 lib/tdb/include/tdb.h void tdb_set_logging_function(struct tdb_context *tdb, const struct tdb_logging_context *log_ctx);
tdb               103 lib/tdb/include/tdb.h enum TDB_ERROR tdb_error(struct tdb_context *tdb);
tdb               104 lib/tdb/include/tdb.h const char *tdb_errorstr(struct tdb_context *tdb);
tdb               105 lib/tdb/include/tdb.h TDB_DATA tdb_fetch(struct tdb_context *tdb, TDB_DATA key);
tdb               106 lib/tdb/include/tdb.h int tdb_parse_record(struct tdb_context *tdb, TDB_DATA key,
tdb               110 lib/tdb/include/tdb.h int tdb_delete(struct tdb_context *tdb, TDB_DATA key);
tdb               111 lib/tdb/include/tdb.h int tdb_store(struct tdb_context *tdb, TDB_DATA key, TDB_DATA dbuf, int flag);
tdb               112 lib/tdb/include/tdb.h int tdb_append(struct tdb_context *tdb, TDB_DATA key, TDB_DATA new_dbuf);
tdb               113 lib/tdb/include/tdb.h int tdb_close(struct tdb_context *tdb);
tdb               114 lib/tdb/include/tdb.h TDB_DATA tdb_firstkey(struct tdb_context *tdb);
tdb               115 lib/tdb/include/tdb.h TDB_DATA tdb_nextkey(struct tdb_context *tdb, TDB_DATA key);
tdb               116 lib/tdb/include/tdb.h int tdb_traverse(struct tdb_context *tdb, tdb_traverse_func fn, void *);
tdb               117 lib/tdb/include/tdb.h int tdb_traverse_read(struct tdb_context *tdb, tdb_traverse_func fn, void *);
tdb               118 lib/tdb/include/tdb.h int tdb_exists(struct tdb_context *tdb, TDB_DATA key);
tdb               119 lib/tdb/include/tdb.h int tdb_lockall(struct tdb_context *tdb);
tdb               120 lib/tdb/include/tdb.h int tdb_lockall_nonblock(struct tdb_context *tdb);
tdb               121 lib/tdb/include/tdb.h int tdb_unlockall(struct tdb_context *tdb);
tdb               122 lib/tdb/include/tdb.h int tdb_lockall_read(struct tdb_context *tdb);
tdb               123 lib/tdb/include/tdb.h int tdb_lockall_read_nonblock(struct tdb_context *tdb);
tdb               124 lib/tdb/include/tdb.h int tdb_unlockall_read(struct tdb_context *tdb);
tdb               125 lib/tdb/include/tdb.h int tdb_lockall_mark(struct tdb_context *tdb);
tdb               126 lib/tdb/include/tdb.h int tdb_lockall_unmark(struct tdb_context *tdb);
tdb               127 lib/tdb/include/tdb.h const char *tdb_name(struct tdb_context *tdb);
tdb               128 lib/tdb/include/tdb.h int tdb_fd(struct tdb_context *tdb);
tdb               129 lib/tdb/include/tdb.h tdb_log_func tdb_log_fn(struct tdb_context *tdb);
tdb               130 lib/tdb/include/tdb.h void *tdb_get_logging_private(struct tdb_context *tdb);
tdb               131 lib/tdb/include/tdb.h int tdb_transaction_start(struct tdb_context *tdb);
tdb               132 lib/tdb/include/tdb.h int tdb_transaction_commit(struct tdb_context *tdb);
tdb               133 lib/tdb/include/tdb.h int tdb_transaction_cancel(struct tdb_context *tdb);
tdb               134 lib/tdb/include/tdb.h int tdb_transaction_recover(struct tdb_context *tdb);
tdb               135 lib/tdb/include/tdb.h int tdb_get_seqnum(struct tdb_context *tdb);
tdb               136 lib/tdb/include/tdb.h int tdb_hash_size(struct tdb_context *tdb);
tdb               137 lib/tdb/include/tdb.h size_t tdb_map_size(struct tdb_context *tdb);
tdb               138 lib/tdb/include/tdb.h int tdb_get_flags(struct tdb_context *tdb);
tdb               139 lib/tdb/include/tdb.h void tdb_add_flags(struct tdb_context *tdb, unsigned flag);
tdb               140 lib/tdb/include/tdb.h void tdb_remove_flags(struct tdb_context *tdb, unsigned flag);
tdb               141 lib/tdb/include/tdb.h void tdb_enable_seqnum(struct tdb_context *tdb);
tdb               142 lib/tdb/include/tdb.h void tdb_increment_seqnum_nonblock(struct tdb_context *tdb);
tdb               145 lib/tdb/include/tdb.h int tdb_chainlock(struct tdb_context *tdb, TDB_DATA key);
tdb               146 lib/tdb/include/tdb.h int tdb_chainlock_nonblock(struct tdb_context *tdb, TDB_DATA key);
tdb               147 lib/tdb/include/tdb.h int tdb_chainunlock(struct tdb_context *tdb, TDB_DATA key);
tdb               148 lib/tdb/include/tdb.h int tdb_chainlock_read(struct tdb_context *tdb, TDB_DATA key);
tdb               149 lib/tdb/include/tdb.h int tdb_chainunlock_read(struct tdb_context *tdb, TDB_DATA key);
tdb               150 lib/tdb/include/tdb.h int tdb_chainlock_mark(struct tdb_context *tdb, TDB_DATA key);
tdb               151 lib/tdb/include/tdb.h int tdb_chainlock_unmark(struct tdb_context *tdb, TDB_DATA key);
tdb               153 lib/tdb/include/tdb.h void tdb_setalarm_sigptr(struct tdb_context *tdb, volatile sig_atomic_t *sigptr);
tdb               156 lib/tdb/include/tdb.h int tdb_wipe_all(struct tdb_context *tdb);
tdb               157 lib/tdb/include/tdb.h int tdb_repack(struct tdb_context *tdb);
tdb               160 lib/tdb/include/tdb.h void tdb_dump_all(struct tdb_context *tdb);
tdb               161 lib/tdb/include/tdb.h int tdb_printfreelist(struct tdb_context *tdb);
tdb               162 lib/tdb/include/tdb.h int tdb_validate_freelist(struct tdb_context *tdb, int *pnum_entries);
tdb               163 lib/tdb/include/tdb.h int tdb_freelist_size(struct tdb_context *tdb);
tdb                46 lib/tdb/pytdb.c static void PyErr_SetTDBError(TDB_CONTEXT *tdb)
tdb                49 lib/tdb/pytdb.c 		Py_BuildValue("(i,s)", tdb_error(tdb), tdb_errorstr(tdb)));
tdb                72 lib/tdb/pytdb.c #define PyErr_TDB_ERROR_IS_ERR_RAISE(ret, tdb) \
tdb                74 lib/tdb/pytdb.c 		PyErr_SetTDBError(tdb); \
tdb                69 lib/tdb/tools/tdbbackup.c static int copy_fn(TDB_CONTEXT *tdb, TDB_DATA key, TDB_DATA dbuf, void *state)
tdb                82 lib/tdb/tools/tdbbackup.c static int test_fn(TDB_CONTEXT *tdb, TDB_DATA key, TDB_DATA dbuf, void *state)
tdb                94 lib/tdb/tools/tdbbackup.c 	TDB_CONTEXT *tdb;
tdb               110 lib/tdb/tools/tdbbackup.c 	tdb = tdb_open(old_name, 0, 0, O_RDWR, 0);
tdb               111 lib/tdb/tools/tdbbackup.c 	if (!tdb) {
tdb               120 lib/tdb/tools/tdbbackup.c 			   hash_size ? hash_size : tdb_hash_size(tdb),
tdb               129 lib/tdb/tools/tdbbackup.c 	if (tdb_transaction_start(tdb) != 0) {
tdb               131 lib/tdb/tools/tdbbackup.c 		tdb_close(tdb);
tdb               140 lib/tdb/tools/tdbbackup.c 		tdb_close(tdb);
tdb               150 lib/tdb/tools/tdbbackup.c 	count1 = tdb_traverse(tdb, copy_fn, (void *)tdb_new);
tdb               153 lib/tdb/tools/tdbbackup.c 		tdb_close(tdb);
tdb               161 lib/tdb/tools/tdbbackup.c 	tdb_close(tdb);
tdb               210 lib/tdb/tools/tdbbackup.c 	TDB_CONTEXT *tdb;
tdb               214 lib/tdb/tools/tdbbackup.c 	tdb = tdb_open(fname, 0, 0, O_RDONLY, 0);
tdb               217 lib/tdb/tools/tdbbackup.c 	if (tdb) {
tdb               218 lib/tdb/tools/tdbbackup.c 		count = tdb_traverse(tdb, test_fn, NULL);
tdb               219 lib/tdb/tools/tdbbackup.c 		tdb_close(tdb);
tdb                41 lib/tdb/tools/tdbdump.c static int traverse_fn(TDB_CONTEXT *tdb, TDB_DATA key, TDB_DATA dbuf, void *state)
tdb                56 lib/tdb/tools/tdbdump.c 	TDB_CONTEXT *tdb;
tdb                59 lib/tdb/tools/tdbdump.c 	tdb = tdb_open(fname, 0, 0, O_RDONLY, 0);
tdb                60 lib/tdb/tools/tdbdump.c 	if (!tdb) {
tdb                66 lib/tdb/tools/tdbdump.c 		tdb_traverse(tdb, traverse_fn, NULL);
tdb                70 lib/tdb/tools/tdbdump.c 		value = tdb_fetch(tdb, key);
tdb                38 lib/tdb/tools/tdbtest.c static void tdb_log(struct tdb_context *tdb, int level, const char *format, ...) PRINTF_ATTRIBUTE(3,4);
tdb                40 lib/tdb/tools/tdbtest.c static void tdb_log(struct tdb_context *tdb, int level, const char *format, ...)
tdb               177 lib/tdb/tools/tdbtest.c static int traverse_fn(struct tdb_context *tdb, TDB_DATA key, TDB_DATA dbuf, void *state)
tdb               182 lib/tdb/tools/tdbtest.c 	tdb_delete(tdb, key);
tdb               114 lib/tdb/tools/tdbtool.c static TDB_CONTEXT *tdb;
tdb               200 lib/tdb/tools/tdbtool.c 	if (tdb) tdb_close(tdb);
tdb               201 lib/tdb/tools/tdbtool.c 	tdb = tdb_open(tdbname, 0, TDB_CLEAR_IF_FIRST | (disable_mmap?TDB_NOMMAP:0),
tdb               203 lib/tdb/tools/tdbtool.c 	if (!tdb) {
tdb               210 lib/tdb/tools/tdbtool.c 	if (tdb) tdb_close(tdb);
tdb               211 lib/tdb/tools/tdbtool.c 	tdb = tdb_open(tdbname, 0, disable_mmap?TDB_NOMMAP:0, O_RDWR, 0600);
tdb               212 lib/tdb/tools/tdbtool.c 	if (!tdb) {
tdb               231 lib/tdb/tools/tdbtool.c 	if (tdb_store(tdb, key, dbuf, TDB_INSERT) == -1) {
tdb               256 lib/tdb/tools/tdbtool.c 	print_rec(tdb, key, dbuf, NULL);
tdb               258 lib/tdb/tools/tdbtool.c 	if (tdb_store(tdb, key, dbuf, TDB_REPLACE) == -1) {
tdb               275 lib/tdb/tools/tdbtool.c 	dbuf = tdb_fetch(tdb, key);
tdb               281 lib/tdb/tools/tdbtool.c 	print_rec(tdb, key, dbuf, NULL);
tdb               300 lib/tdb/tools/tdbtool.c 	if (tdb_delete(tdb, key) != 0) {
tdb               323 lib/tdb/tools/tdbtool.c 	dbuf = tdb_fetch(tdb, key);
tdb               329 lib/tdb/tools/tdbtool.c 	print_rec(tdb, key, dbuf, NULL);
tdb               385 lib/tdb/tools/tdbtool.c 	if ((count = tdb_traverse(tdb, traverse_fn, NULL)) == -1)
tdb               386 lib/tdb/tools/tdbtool.c 		printf("Error = %s\n", tdb_errorstr(tdb));
tdb               400 lib/tdb/tools/tdbtool.c 		tdb_traverse(tdb, traverse_fn, NULL);
tdb               517 lib/tdb/tools/tdbtool.c 	    if (!tdb) {
tdb               526 lib/tdb/tools/tdbtool.c 		tdb_traverse(tdb, do_delete_fn, NULL);
tdb               530 lib/tdb/tools/tdbtool.c 		tdb_traverse(tdb, print_rec, NULL);
tdb               549 lib/tdb/tools/tdbtool.c 		tdb_traverse(tdb, print_key, NULL);
tdb               552 lib/tdb/tools/tdbtool.c 		tdb_traverse(tdb, print_hexkey, NULL);
tdb               559 lib/tdb/tools/tdbtool.c 		tdb_dump_all(tdb);
tdb               562 lib/tdb/tools/tdbtool.c 		tdb_printfreelist(tdb);
tdb               575 lib/tdb/tools/tdbtool.c 		first_record(tdb, &iterate_kbuf);
tdb               579 lib/tdb/tools/tdbtool.c 		  next_record(tdb, &iterate_kbuf);
tdb               582 lib/tdb/tools/tdbtool.c 		check_db(tdb);
tdb               685 lib/tdb/tools/tdbtool.c     if (tdb) tdb_close(tdb);
tdb                33 lib/tdb/tools/tdbtorture.c static void tdb_log(struct tdb_context *tdb, enum tdb_debug_level level, const char *format, ...) PRINTF_ATTRIBUTE(3,4);
tdb                35 lib/tdb/tools/tdbtorture.c static void tdb_log(struct tdb_context *tdb, enum tdb_debug_level level, const char *format, ...)
tdb                74 lib/tdb/tools/tdbtorture.c static int cull_traverse(struct tdb_context *tdb, TDB_DATA key, TDB_DATA dbuf,
tdb                79 lib/tdb/tools/tdbtorture.c 		tdb_delete(tdb, key);
tdb               194 lib/tdb/tools/tdbtorture.c static int traverse_fn(struct tdb_context *tdb, TDB_DATA key, TDB_DATA dbuf,
tdb               197 lib/tdb/tools/tdbtorture.c 	tdb_delete(tdb, key);
tdb                55 lib/util/util_tdb.c int tdb_lock_bystring(struct tdb_context *tdb, const char *keyval)
tdb                59 lib/util/util_tdb.c 	return tdb_chainlock(tdb, key);
tdb                66 lib/util/util_tdb.c void tdb_unlock_bystring(struct tdb_context *tdb, const char *keyval)
tdb                70 lib/util/util_tdb.c 	tdb_chainunlock(tdb, key);
tdb                77 lib/util/util_tdb.c int tdb_read_lock_bystring(struct tdb_context *tdb, const char *keyval)
tdb                81 lib/util/util_tdb.c 	return tdb_chainlock_read(tdb, key);
tdb                88 lib/util/util_tdb.c void tdb_read_unlock_bystring(struct tdb_context *tdb, const char *keyval)
tdb                92 lib/util/util_tdb.c 	tdb_chainunlock_read(tdb, key);
tdb               101 lib/util/util_tdb.c int32_t tdb_fetch_int32_byblob(struct tdb_context *tdb, TDB_DATA key)
tdb               106 lib/util/util_tdb.c 	data = tdb_fetch(tdb, key);
tdb               122 lib/util/util_tdb.c int32_t tdb_fetch_int32(struct tdb_context *tdb, const char *keystr)
tdb               124 lib/util/util_tdb.c 	return tdb_fetch_int32_byblob(tdb, string_term_tdb_data(keystr));
tdb               132 lib/util/util_tdb.c int tdb_store_int32_byblob(struct tdb_context *tdb, TDB_DATA key, int32_t v)
tdb               141 lib/util/util_tdb.c 	return tdb_store(tdb, key, data, TDB_REPLACE);
tdb               149 lib/util/util_tdb.c int tdb_store_int32(struct tdb_context *tdb, const char *keystr, int32_t v)
tdb               151 lib/util/util_tdb.c 	return tdb_store_int32_byblob(tdb, string_term_tdb_data(keystr), v);
tdb               159 lib/util/util_tdb.c bool tdb_fetch_uint32_byblob(struct tdb_context *tdb, TDB_DATA key, uint32_t *value)
tdb               163 lib/util/util_tdb.c 	data = tdb_fetch(tdb, key);
tdb               179 lib/util/util_tdb.c bool tdb_fetch_uint32(struct tdb_context *tdb, const char *keystr, uint32_t *value)
tdb               181 lib/util/util_tdb.c 	return tdb_fetch_uint32_byblob(tdb, string_term_tdb_data(keystr), value);
tdb               189 lib/util/util_tdb.c bool tdb_store_uint32_byblob(struct tdb_context *tdb, TDB_DATA key, uint32_t value)
tdb               199 lib/util/util_tdb.c 	if (tdb_store(tdb, key, data, TDB_REPLACE) == -1)
tdb               210 lib/util/util_tdb.c bool tdb_store_uint32(struct tdb_context *tdb, const char *keystr, uint32_t value)
tdb               212 lib/util/util_tdb.c 	return tdb_store_uint32_byblob(tdb, string_term_tdb_data(keystr), value);
tdb               219 lib/util/util_tdb.c int tdb_store_bystring(struct tdb_context *tdb, const char *keystr, TDB_DATA data, int flags)
tdb               223 lib/util/util_tdb.c 	return tdb_store(tdb, key, data, flags);
tdb               231 lib/util/util_tdb.c TDB_DATA tdb_fetch_bystring(struct tdb_context *tdb, const char *keystr)
tdb               235 lib/util/util_tdb.c 	return tdb_fetch(tdb, key);
tdb               242 lib/util/util_tdb.c int tdb_delete_bystring(struct tdb_context *tdb, const char *keystr)
tdb               246 lib/util/util_tdb.c 	return tdb_delete(tdb, key);
tdb               253 lib/util/util_tdb.c int32_t tdb_change_int32_atomic(struct tdb_context *tdb, const char *keystr, int32_t *oldval, int32_t change_val)
tdb               258 lib/util/util_tdb.c 	if (tdb_lock_bystring(tdb, keystr) == -1)
tdb               261 lib/util/util_tdb.c 	if ((val = tdb_fetch_int32(tdb, keystr)) == -1) {
tdb               263 lib/util/util_tdb.c 		if (tdb_error(tdb) != TDB_ERR_NOEXIST) {
tdb               279 lib/util/util_tdb.c 	if (tdb_store_int32(tdb, keystr, val) == -1)
tdb               286 lib/util/util_tdb.c 	tdb_unlock_bystring(tdb, keystr);
tdb               294 lib/util/util_tdb.c bool tdb_change_uint32_atomic(struct tdb_context *tdb, const char *keystr, uint32_t *oldval, uint32_t change_val)
tdb               299 lib/util/util_tdb.c 	if (tdb_lock_bystring(tdb, keystr) == -1)
tdb               302 lib/util/util_tdb.c 	if (!tdb_fetch_uint32(tdb, keystr, &val)) {
tdb               304 lib/util/util_tdb.c 		if (tdb_error(tdb) != TDB_ERR_NOEXIST) { 
tdb               321 lib/util/util_tdb.c 	if (!tdb_store_uint32(tdb, keystr, val))
tdb               328 lib/util/util_tdb.c 	tdb_unlock_bystring(tdb, keystr);
tdb                15 lib/util/util_tdb.h int tdb_lock_bystring(struct tdb_context *tdb, const char *keyval);
tdb                20 lib/util/util_tdb.h void tdb_unlock_bystring(struct tdb_context *tdb, const char *keyval);
tdb                25 lib/util/util_tdb.h int tdb_read_lock_bystring(struct tdb_context *tdb, const char *keyval);
tdb                30 lib/util/util_tdb.h void tdb_read_unlock_bystring(struct tdb_context *tdb, const char *keyval);
tdb                36 lib/util/util_tdb.h int32_t tdb_fetch_int32_byblob(struct tdb_context *tdb, TDB_DATA key);
tdb                42 lib/util/util_tdb.h int32_t tdb_fetch_int32(struct tdb_context *tdb, const char *keystr);
tdb                48 lib/util/util_tdb.h int tdb_store_int32_byblob(struct tdb_context *tdb, TDB_DATA key, int32_t v);
tdb                54 lib/util/util_tdb.h int tdb_store_int32(struct tdb_context *tdb, const char *keystr, int32_t v);
tdb                60 lib/util/util_tdb.h bool tdb_fetch_uint32_byblob(struct tdb_context *tdb, TDB_DATA key, uint32_t *value);
tdb                66 lib/util/util_tdb.h bool tdb_fetch_uint32(struct tdb_context *tdb, const char *keystr, uint32_t *value);
tdb                72 lib/util/util_tdb.h bool tdb_store_uint32_byblob(struct tdb_context *tdb, TDB_DATA key, uint32_t value);
tdb                78 lib/util/util_tdb.h bool tdb_store_uint32(struct tdb_context *tdb, const char *keystr, uint32_t value);
tdb                84 lib/util/util_tdb.h int tdb_store_bystring(struct tdb_context *tdb, const char *keystr, TDB_DATA data, int flags);
tdb                90 lib/util/util_tdb.h TDB_DATA tdb_fetch_bystring(struct tdb_context *tdb, const char *keystr);
tdb                95 lib/util/util_tdb.h int tdb_delete_bystring(struct tdb_context *tdb, const char *keystr);
tdb               100 lib/util/util_tdb.h int32_t tdb_change_int32_atomic(struct tdb_context *tdb, const char *keystr, int32_t *oldval, int32_t change_val);
tdb               105 lib/util/util_tdb.h bool tdb_change_uint32_atomic(struct tdb_context *tdb, const char *keystr, uint32_t *oldval, uint32_t change_val);
tdb               635 source3/groupdb/mapping_ldb.c 	static TDB_CONTEXT *tdb;
tdb               638 source3/groupdb/mapping_ldb.c 	tdb = tdb_open_log(tdb_path, 0, TDB_DEFAULT, O_RDWR, 0600);
tdb               639 source3/groupdb/mapping_ldb.c 	if (tdb == NULL) goto failed;
tdb               643 source3/groupdb/mapping_ldb.c 	ret = tdb_traverse(tdb, upgrade_map_record, &status);
tdb               646 source3/groupdb/mapping_ldb.c 	ret = tdb_traverse(tdb, upgrade_alias_record, &status);
tdb               649 source3/groupdb/mapping_ldb.c 	if (tdb) {
tdb               650 source3/groupdb/mapping_ldb.c 		tdb_close(tdb);
tdb               651 source3/groupdb/mapping_ldb.c 		tdb = NULL;
tdb               670 source3/groupdb/mapping_ldb.c 	if (tdb) tdb_close(tdb);
tdb                62 source3/groupdb/mapping_tdb.c 		tdb_lock_bystring(tdb, vstring);
tdb                65 source3/groupdb/mapping_tdb.c 		vers_id = tdb_fetch_int32(tdb, vstring);
tdb                72 source3/groupdb/mapping_tdb.c 			tdb_store_int32(tdb, vstring, DATABASE_VERSION_V2);
tdb                79 source3/groupdb/mapping_tdb.c 			tdb_wipe_all(tdb);
tdb                80 source3/groupdb/mapping_tdb.c 			tdb_store_int32(tdb, vstring, DATABASE_VERSION_V2);
tdb                83 source3/groupdb/mapping_tdb.c 		tdb_unlock_bystring(tdb, vstring);
tdb                34 source3/include/eventlog.h 	TDB_CONTEXT *tdb;
tdb                38 source3/include/eventlog.h #define ELOG_TDB_CTX(x) ((x)->tdb)
tdb                92 source3/include/printing.h 	TDB_CONTEXT *tdb;
tdb              4940 source3/include/proto.h TDB_DATA get_printer_notify_pid_list(TDB_CONTEXT *tdb, const char *printer_name, bool cleanlist);
tdb              5774 source3/include/proto.h int tdb_prs_store(TDB_CONTEXT *tdb, TDB_DATA kbuf, prs_struct *ps);
tdb              5775 source3/include/proto.h int tdb_prs_fetch(TDB_CONTEXT *tdb, TDB_DATA kbuf, prs_struct *ps, TALLOC_CTX *mem_ctx);
tdb              5833 source3/include/proto.h int elog_tdb_size( TDB_CONTEXT * tdb, int *MaxSize, int *Retention );
tdb              5834 source3/include/proto.h bool prune_eventlog( TDB_CONTEXT * tdb );
tdb              5840 source3/include/proto.h 						  TDB_CONTEXT *tdb,
tdb              5843 source3/include/proto.h 			       TDB_CONTEXT *tdb,
tdb              5847 source3/include/proto.h 			   TDB_CONTEXT *tdb,
tdb              5851 source3/include/proto.h 					 TDB_CONTEXT *tdb,
tdb                30 source3/include/util_tdb.h 	struct tdb_context *tdb;
tdb                35 source3/include/util_tdb.h int tdb_chainlock_with_timeout( struct tdb_context *tdb, TDB_DATA key,
tdb                37 source3/include/util_tdb.h int tdb_lock_bystring_with_timeout(struct tdb_context *tdb, const char *keyval,
tdb                39 source3/include/util_tdb.h int tdb_read_lock_bystring_with_timeout(TDB_CONTEXT *tdb, const char *keyval,
tdb                42 source3/include/util_tdb.h int tdb_trans_store_bystring(TDB_CONTEXT *tdb, const char *keystr,
tdb                44 source3/include/util_tdb.h int tdb_trans_store(struct tdb_context *tdb, TDB_DATA key, TDB_DATA dbuf,
tdb                46 source3/include/util_tdb.h int tdb_trans_delete(struct tdb_context *tdb, TDB_DATA key);
tdb                22 source3/intl/lang_tdb.c static TDB_CONTEXT *tdb;
tdb                42 source3/intl/lang_tdb.c 	if (tdb_lockall(tdb) != 0) {
tdb                48 source3/intl/lang_tdb.c 	tdb_wipe_all(tdb);
tdb                66 source3/intl/lang_tdb.c 			tdb_store_bystring(tdb, msgid, data, 0);
tdb                72 source3/intl/lang_tdb.c 	tdb_unlockall(tdb);
tdb               112 source3/intl/lang_tdb.c 		if (tdb) {
tdb               113 source3/intl/lang_tdb.c 			tdb_close(tdb);
tdb               114 source3/intl/lang_tdb.c 			tdb = NULL;
tdb               149 source3/intl/lang_tdb.c 	tdb = tdb_open_log(path, 0, TDB_DEFAULT, O_RDWR|O_CREAT, 0644);
tdb               150 source3/intl/lang_tdb.c 	if (!tdb) {
tdb               151 source3/intl/lang_tdb.c 		tdb = tdb_open_log(path, 0, TDB_DEFAULT, O_RDONLY, 0);
tdb               152 source3/intl/lang_tdb.c 		if (!tdb) {
tdb               162 source3/intl/lang_tdb.c 	loadtime = tdb_fetch_int32(tdb, "/LOADTIME/");
tdb               166 source3/intl/lang_tdb.c 		tdb_store_int32(tdb, "/LOADTIME/", (int)time(NULL));
tdb               191 source3/intl/lang_tdb.c 	if (!tdb) return msgid;
tdb               220 source3/intl/lang_tdb.c 	data = tdb_fetch_bystring(tdb, msgid_quoted);
tdb               236 source3/intl/lang_tdb.c 	if (!tdb) return;
tdb                55 source3/lib/dbwrap_ctdb.c static NTSTATUS tdb_error_to_ntstatus(struct tdb_context *tdb)
tdb                58 source3/lib/dbwrap_ctdb.c 	enum TDB_ERROR tret = tdb_error(tdb);
tdb               218 source3/lib/dbwrap_ctdb.c 	tdb_transaction_cancel(h->ctx->wtdb->tdb);
tdb               247 source3/lib/dbwrap_ctdb.c 	ret = tdb_transaction_start(ctx->wtdb->tdb);
tdb               254 source3/lib/dbwrap_ctdb.c 	data = tdb_fetch(ctx->wtdb->tdb, key);
tdb               259 source3/lib/dbwrap_ctdb.c 		tdb_transaction_cancel(ctx->wtdb->tdb);
tdb               324 source3/lib/dbwrap_ctdb.c 	*data = tdb_fetch(h->ctx->wtdb->tdb, key);
tdb               385 source3/lib/dbwrap_ctdb.c 	ctdb_data = tdb_fetch(ctx->wtdb->tdb, key);
tdb               466 source3/lib/dbwrap_ctdb.c 	rec = tdb_fetch(h->ctx->wtdb->tdb, key);
tdb               514 source3/lib/dbwrap_ctdb.c 	ret = tdb_store(h->ctx->wtdb->tdb, key, rec, TDB_REPLACE);
tdb               533 source3/lib/dbwrap_ctdb.c 		return tdb_error_to_ntstatus(h->ctx->wtdb->tdb);
tdb               549 source3/lib/dbwrap_ctdb.c 		return tdb_error_to_ntstatus(h->ctx->wtdb->tdb);
tdb               607 source3/lib/dbwrap_ctdb.c 	tdb_transaction_cancel(h->ctx->wtdb->tdb);
tdb               664 source3/lib/dbwrap_ctdb.c 		tdb_transaction_cancel(h->ctx->wtdb->tdb);
tdb               676 source3/lib/dbwrap_ctdb.c 		tdb_transaction_cancel(h->ctx->wtdb->tdb);
tdb               725 source3/lib/dbwrap_ctdb.c 	ret = tdb_transaction_commit(h->ctx->wtdb->tdb);
tdb               790 source3/lib/dbwrap_ctdb.c 	ret = tdb_store(crec->ctdb_ctx->wtdb->tdb, rec->key, cdata, TDB_REPLACE);
tdb               795 source3/lib/dbwrap_ctdb.c 			  : tdb_error_to_ntstatus(crec->ctdb_ctx->wtdb->tdb);
tdb               827 source3/lib/dbwrap_ctdb.c 	if (tdb_chainunlock(crec->ctdb_ctx->wtdb->tdb, data->key) != 0) {
tdb               882 source3/lib/dbwrap_ctdb.c 	if (tdb_chainlock(ctx->wtdb->tdb, key) != 0) {
tdb               892 source3/lib/dbwrap_ctdb.c 	ctdb_data = tdb_fetch(ctx->wtdb->tdb, key);
tdb               907 source3/lib/dbwrap_ctdb.c 		tdb_chainunlock(ctx->wtdb->tdb, key);
tdb               985 source3/lib/dbwrap_ctdb.c 	ctdb_data = tdb_fetch(ctx->wtdb->tdb, key);
tdb              1048 source3/lib/dbwrap_ctdb.c static int traverse_persistent_callback(TDB_CONTEXT *tdb, TDB_DATA kbuf, TDB_DATA dbuf,
tdb              1080 source3/lib/dbwrap_ctdb.c 		return tdb_traverse(ctx->wtdb->tdb, traverse_persistent_callback, &state);
tdb              1110 source3/lib/dbwrap_ctdb.c static int traverse_persistent_callback_read(TDB_CONTEXT *tdb, TDB_DATA kbuf, TDB_DATA dbuf,
tdb              1147 source3/lib/dbwrap_ctdb.c 		return tdb_traverse_read(ctx->wtdb->tdb, traverse_persistent_callback_read, &state);
tdb              1158 source3/lib/dbwrap_ctdb.c 	return tdb_get_seqnum(ctx->wtdb->tdb);
tdb              1165 source3/lib/dbwrap_ctdb.c 	return tdb_get_flags(ctx->wtdb->tdb);
tdb                44 source3/lib/dbwrap_tdb.c 	if (tdb_chainunlock(ctx->wtdb->tdb, data->key) != 0) {
tdb               104 source3/lib/dbwrap_tdb.c 	if (tdb_chainlock(ctx->wtdb->tdb, key) != 0) {
tdb               112 source3/lib/dbwrap_tdb.c 	tdb_parse_record(ctx->wtdb->tdb, key, db_tdb_fetchlock_parse, &state);
tdb               119 source3/lib/dbwrap_tdb.c 		tdb_chainunlock(ctx->wtdb->tdb, key);
tdb               169 source3/lib/dbwrap_tdb.c 	tdb_parse_record(ctx->wtdb->tdb, key, db_tdb_fetch_parse, &state);
tdb               187 source3/lib/dbwrap_tdb.c 	return tdb_parse_record(ctx->wtdb->tdb, key, parser, private_data);
tdb               201 source3/lib/dbwrap_tdb.c 	return (tdb_store(ctx->wtdb->tdb, rec->key, data, flag) == 0) ?
tdb               210 source3/lib/dbwrap_tdb.c 	if (tdb_delete(ctx->wtdb->tdb, rec->key) == 0) {
tdb               214 source3/lib/dbwrap_tdb.c 	if (tdb_error(ctx->wtdb->tdb) == TDB_ERR_NOEXIST) {
tdb               227 source3/lib/dbwrap_tdb.c static int db_tdb_traverse_func(TDB_CONTEXT *tdb, TDB_DATA kbuf, TDB_DATA dbuf,
tdb               254 source3/lib/dbwrap_tdb.c 	return tdb_traverse(db_ctx->wtdb->tdb, db_tdb_traverse_func, &ctx);
tdb               267 source3/lib/dbwrap_tdb.c static int db_tdb_traverse_read_func(TDB_CONTEXT *tdb, TDB_DATA kbuf, TDB_DATA dbuf,
tdb               294 source3/lib/dbwrap_tdb.c 	return tdb_traverse_read(db_ctx->wtdb->tdb, db_tdb_traverse_read_func, &ctx);
tdb               302 source3/lib/dbwrap_tdb.c 	return tdb_get_seqnum(db_ctx->wtdb->tdb);
tdb               310 source3/lib/dbwrap_tdb.c 	return tdb_get_flags(db_ctx->wtdb->tdb);
tdb               317 source3/lib/dbwrap_tdb.c 	return tdb_transaction_start(db_ctx->wtdb->tdb);
tdb               324 source3/lib/dbwrap_tdb.c 	return tdb_transaction_commit(db_ctx->wtdb->tdb);
tdb               331 source3/lib/dbwrap_tdb.c 	return tdb_transaction_cancel(db_ctx->wtdb->tdb);
tdb                36 source3/lib/eventlog/eventlog.c 	TDB_CONTEXT *tdb;
tdb                41 source3/lib/eventlog/eventlog.c 	tdb = tdb_open_log( tdbfilename, 0, TDB_DEFAULT,
tdb                44 source3/lib/eventlog/eventlog.c 	if ( !tdb ) {
tdb                51 source3/lib/eventlog/eventlog.c 	tdb_store_int32( tdb, EVT_OLDEST_ENTRY, 1 );
tdb                52 source3/lib/eventlog/eventlog.c 	tdb_store_int32( tdb, EVT_NEXT_RECORD, 1 );
tdb                53 source3/lib/eventlog/eventlog.c 	tdb_store_int32( tdb, EVT_MAXSIZE, 0x80000 );
tdb                54 source3/lib/eventlog/eventlog.c 	tdb_store_int32( tdb, EVT_RETENTION, 0x93A80 );
tdb                56 source3/lib/eventlog/eventlog.c 	tdb_store_int32( tdb, EVT_VERSION, EVENTLOG_DATABASE_VERSION_V1 );
tdb                58 source3/lib/eventlog/eventlog.c 	return tdb;
tdb                89 source3/lib/eventlog/eventlog.c static int eventlog_tdb_size_fn( TDB_CONTEXT * tdb, TDB_DATA key, TDB_DATA data,
tdb               107 source3/lib/eventlog/eventlog.c int elog_tdb_size( TDB_CONTEXT * tdb, int *MaxSize, int *Retention )
tdb               111 source3/lib/eventlog/eventlog.c 	if ( !tdb )
tdb               116 source3/lib/eventlog/eventlog.c 	tdb_traverse( tdb, eventlog_tdb_size_fn, &tsize );
tdb               119 source3/lib/eventlog/eventlog.c 		*MaxSize = tdb_fetch_int32( tdb, EVT_MAXSIZE );
tdb               123 source3/lib/eventlog/eventlog.c 		*Retention = tdb_fetch_int32( tdb, EVT_RETENTION );
tdb               248 source3/lib/eventlog/eventlog.c bool prune_eventlog( TDB_CONTEXT * tdb )
tdb               252 source3/lib/eventlog/eventlog.c 	if ( !tdb ) {
tdb               257 source3/lib/eventlog/eventlog.c 	CalcdSize = elog_tdb_size( tdb, &MaxSize, &Retention );
tdb               263 source3/lib/eventlog/eventlog.c 		return make_way_for_eventlogs( tdb, CalcdSize - MaxSize,
tdb               267 source3/lib/eventlog/eventlog.c 	return make_way_for_eventlogs( tdb, 0, True );
tdb               273 source3/lib/eventlog/eventlog.c static bool can_write_to_eventlog( TDB_CONTEXT * tdb, int32_t needed )
tdb               279 source3/lib/eventlog/eventlog.c 	if ( !tdb )
tdb               288 source3/lib/eventlog/eventlog.c 	calcd_size = elog_tdb_size( tdb, &MaxSize, &Retention );
tdb               306 source3/lib/eventlog/eventlog.c 		return make_way_for_eventlogs( tdb, calcd_size - MaxSize,
tdb               310 source3/lib/eventlog/eventlog.c 	return make_way_for_eventlogs( tdb, calcd_size - MaxSize, False );
tdb               318 source3/lib/eventlog/eventlog.c 	TDB_CONTEXT *tdb = NULL;
tdb               346 source3/lib/eventlog/eventlog.c 				SMB_ASSERT( ptr->tdb == NULL );
tdb               374 source3/lib/eventlog/eventlog.c 		tdb = tdb_open_log( tdbpath, 0, TDB_DEFAULT, read_only ? O_RDONLY : O_RDWR , 0 );
tdb               375 source3/lib/eventlog/eventlog.c 		if ( tdb ) {
tdb               376 source3/lib/eventlog/eventlog.c 			vers_id = tdb_fetch_int32( tdb, EVT_VERSION );
tdb               381 source3/lib/eventlog/eventlog.c 				tdb_close( tdb );
tdb               382 source3/lib/eventlog/eventlog.c 				tdb = elog_init_tdb( tdbpath );
tdb               387 source3/lib/eventlog/eventlog.c 	if ( !tdb )
tdb               388 source3/lib/eventlog/eventlog.c 		tdb = elog_init_tdb( tdbpath );
tdb               392 source3/lib/eventlog/eventlog.c 	if ( tdb ) {
tdb               397 source3/lib/eventlog/eventlog.c 			ptr->tdb = tdb;
tdb               403 source3/lib/eventlog/eventlog.c 			tdb_close( tdb );
tdb               408 source3/lib/eventlog/eventlog.c 		tdb_node->tdb = tdb;
tdb               423 source3/lib/eventlog/eventlog.c 	TDB_CONTEXT *tdb;
tdb               433 source3/lib/eventlog/eventlog.c 		tdb = etdb->tdb;
tdb               436 source3/lib/eventlog/eventlog.c 		return tdb_close( tdb );
tdb               440 source3/lib/eventlog/eventlog.c 		tdb = etdb->tdb;
tdb               441 source3/lib/eventlog/eventlog.c 		etdb->tdb = NULL;
tdb               442 source3/lib/eventlog/eventlog.c 		return tdb_close( tdb );
tdb               650 source3/lib/eventlog/eventlog.c 						  TDB_CONTEXT *tdb,
tdb               664 source3/lib/eventlog/eventlog.c 	data = tdb_fetch(tdb, key);
tdb               705 source3/lib/eventlog/eventlog.c 					 TDB_CONTEXT *tdb,
tdb               717 source3/lib/eventlog/eventlog.c 	t = evlog_pull_record_tdb(r, tdb, record_number);
tdb               745 source3/lib/eventlog/eventlog.c 			       TDB_CONTEXT *tdb,
tdb               758 source3/lib/eventlog/eventlog.c 	if (!can_write_to_eventlog(tdb, r->size)) {
tdb               765 source3/lib/eventlog/eventlog.c 	ret = tdb_lock_bystring_with_timeout(tdb, EVT_NEXT_RECORD, 1);
tdb               771 source3/lib/eventlog/eventlog.c 	r->record_number = tdb_fetch_int32(tdb, EVT_NEXT_RECORD);
tdb               776 source3/lib/eventlog/eventlog.c 		tdb_unlock_bystring(tdb, EVT_NEXT_RECORD);
tdb               788 source3/lib/eventlog/eventlog.c 	ret = tdb_store(tdb, kbuf, ebuf, 0);
tdb               790 source3/lib/eventlog/eventlog.c 		tdb_unlock_bystring(tdb, EVT_NEXT_RECORD);
tdb               794 source3/lib/eventlog/eventlog.c 	ret = tdb_store_int32(tdb, EVT_NEXT_RECORD, r->record_number + 1);
tdb               796 source3/lib/eventlog/eventlog.c 		tdb_unlock_bystring(tdb, EVT_NEXT_RECORD);
tdb               799 source3/lib/eventlog/eventlog.c 	tdb_unlock_bystring(tdb, EVT_NEXT_RECORD);
tdb               812 source3/lib/eventlog/eventlog.c 			   TDB_CONTEXT *tdb,
tdb               830 source3/lib/eventlog/eventlog.c 	status = evlog_push_record_tdb(mem_ctx, tdb, t, record_number);
tdb               985 source3/lib/eventlog/eventlog.c 		r = evlog_pull_record_tdb(mem_ctx, etdb->tdb, count);
tdb              1005 source3/lib/eventlog/eventlog.c 	evt.hdr.MaxSize			= tdb_fetch_int32(etdb->tdb, EVT_MAXSIZE);
tdb              1007 source3/lib/eventlog/eventlog.c 	evt.hdr.Retention		= tdb_fetch_int32(etdb->tdb, EVT_RETENTION);
tdb               406 source3/lib/gencache.c static int gencache_iterate_fn(struct tdb_context *tdb, TDB_DATA key,
tdb               329 source3/lib/ldb/ldb_tdb/ldb_cache.c 	    tdb_get_seqnum(ltdb->tdb) == ltdb->tdb_seqnum) {
tdb               366 source3/lib/ldb/ldb_tdb/ldb_cache.c 	ltdb->tdb_seqnum = tdb_get_seqnum(ltdb->tdb);
tdb              1084 source3/lib/ldb/ldb_tdb/ldb_index.c static int delete_index(struct tdb_context *tdb, TDB_DATA key, TDB_DATA data, void *state)
tdb              1088 source3/lib/ldb/ldb_tdb/ldb_index.c 		return tdb_delete(tdb, key);
tdb              1096 source3/lib/ldb/ldb_tdb/ldb_index.c static int re_index(struct tdb_context *tdb, TDB_DATA key, TDB_DATA data, void *state)
tdb              1131 source3/lib/ldb/ldb_tdb/ldb_index.c 		tdb_delete(tdb, key);
tdb              1132 source3/lib/ldb/ldb_tdb/ldb_index.c 		tdb_store(tdb, key2, data, 0);
tdb              1166 source3/lib/ldb/ldb_tdb/ldb_index.c 	ret = tdb_traverse(ltdb->tdb, delete_index, NULL);
tdb              1172 source3/lib/ldb/ldb_tdb/ldb_index.c 	ret = tdb_traverse(ltdb->tdb, re_index, module);
tdb               226 source3/lib/ldb/ldb_tdb/ldb_search.c 	tdb_data = tdb_fetch(ltdb->tdb, tdb_key);
tdb               258 source3/lib/ldb/ldb_tdb/ldb_search.c 	return tdb_lockall_read(ltdb->tdb);
tdb               268 source3/lib/ldb/ldb_tdb/ldb_search.c 	return tdb_unlockall_read(ltdb->tdb);
tdb               364 source3/lib/ldb/ldb_tdb/ldb_search.c static int search_func(struct tdb_context *tdb, TDB_DATA key, TDB_DATA data, void *state)
tdb               448 source3/lib/ldb/ldb_tdb/ldb_search.c 	ret = tdb_traverse_read(ltdb->tdb, search_func, handle);
tdb               237 source3/lib/ldb/ldb_tdb/ldb_tdb.c 	ret = tdb_store(ltdb->tdb, tdb_key, tdb_data, flgs);
tdb               239 source3/lib/ldb/ldb_tdb/ldb_tdb.c 		ret = ltdb_err_map(tdb_error(ltdb->tdb));
tdb               245 source3/lib/ldb/ldb_tdb/ldb_tdb.c 		tdb_delete(ltdb->tdb, tdb_key);
tdb               345 source3/lib/ldb/ldb_tdb/ldb_tdb.c 	ret = tdb_delete(ltdb->tdb, tdb_key);
tdb               349 source3/lib/ldb/ldb_tdb/ldb_tdb.c 		ret = ltdb_err_map(tdb_error(ltdb->tdb));
tdb               606 source3/lib/ldb/ldb_tdb/ldb_tdb.c 	tdb_data = tdb_fetch(ltdb->tdb, tdb_key);
tdb               609 source3/lib/ldb/ldb_tdb/ldb_tdb.c 		return ltdb_err_map(tdb_error(ltdb->tdb));
tdb               882 source3/lib/ldb/ldb_tdb/ldb_tdb.c 	if (tdb_transaction_start(ltdb->tdb) != 0) {
tdb               883 source3/lib/ldb/ldb_tdb/ldb_tdb.c 		return ltdb_err_map(tdb_error(ltdb->tdb));
tdb               894 source3/lib/ldb/ldb_tdb/ldb_tdb.c 	if (tdb_transaction_commit(ltdb->tdb) != 0) {
tdb               895 source3/lib/ldb/ldb_tdb/ldb_tdb.c 		return ltdb_err_map(tdb_error(ltdb->tdb));
tdb               906 source3/lib/ldb/ldb_tdb/ldb_tdb.c 	if (tdb_transaction_cancel(ltdb->tdb) != 0) {
tdb               907 source3/lib/ldb/ldb_tdb/ldb_tdb.c 		return ltdb_err_map(tdb_error(ltdb->tdb));
tdb              1049 source3/lib/ldb/ldb_tdb/ldb_tdb.c 	ltdb->tdb = ltdb_wrap_open(ltdb, path, 10000, 
tdb              1052 source3/lib/ldb/ldb_tdb/ldb_tdb.c 	if (!ltdb->tdb) {
tdb                17 source3/lib/ldb/ldb_tdb/ldb_tdb.h 	TDB_CONTEXT *tdb;
tdb                37 source3/lib/ldb/ldb_tdb/ldb_tdb_wrap.c 	struct tdb_context *tdb;
tdb                47 source3/lib/ldb/ldb_tdb/ldb_tdb_wrap.c 	tdb_close(w->tdb);
tdb                60 source3/lib/ldb/ldb_tdb/ldb_tdb_wrap.c static void ltdb_log_fn(struct tdb_context *tdb, enum tdb_debug_level level, const char *fmt, ...) PRINTF_ATTRIBUTE(3, 4);
tdb                61 source3/lib/ldb/ldb_tdb/ldb_tdb_wrap.c static void ltdb_log_fn(struct tdb_context *tdb, enum tdb_debug_level level, const char *fmt, ...)
tdb                64 source3/lib/ldb/ldb_tdb/ldb_tdb_wrap.c 	const char *name = tdb_name(tdb);
tdb                65 source3/lib/ldb/ldb_tdb/ldb_tdb_wrap.c 	struct ldb_context *ldb = talloc_get_type(tdb_get_logging_private(tdb), struct ldb_context);
tdb               118 source3/lib/ldb/ldb_tdb/ldb_tdb_wrap.c 				return w->tdb;
tdb               128 source3/lib/ldb/ldb_tdb/ldb_tdb_wrap.c 	w->tdb = tdb_open_ex(path, hash_size, tdb_flags, open_flags, mode, &log_ctx, NULL);
tdb               129 source3/lib/ldb/ldb_tdb/ldb_tdb_wrap.c 	if (w->tdb == NULL) {
tdb               134 source3/lib/ldb/ldb_tdb/ldb_tdb_wrap.c 	if (fstat(tdb_fd(w->tdb), &st) != 0) {
tdb               135 source3/lib/ldb/ldb_tdb/ldb_tdb_wrap.c 		tdb_close(w->tdb);
tdb               152 source3/lib/ldb/ldb_tdb/ldb_tdb_wrap.c 	return w->tdb;
tdb                51 source3/lib/messages_local.c 	struct tdb_wrap *tdb;
tdb               105 source3/lib/messages_local.c 	ctx->tdb = tdb_wrap_open(ctx, lock_path("messages.tdb"),
tdb               109 source3/lib/messages_local.c 	if (!ctx->tdb) {
tdb               133 source3/lib/messages_local.c 	tdb_set_max_dead(ctx->tdb->tdb, 5);
tdb               320 source3/lib/messages_local.c 	struct tdb_wrap *tdb = ctx->tdb;
tdb               337 source3/lib/messages_local.c 	if (tdb_chainlock(tdb->tdb, key) == -1) {
tdb               342 source3/lib/messages_local.c 	status = messaging_tdb_fetch(tdb->tdb, key, talloc_tos(), &msg_array);
tdb               372 source3/lib/messages_local.c 	status = messaging_tdb_store(tdb->tdb, key, msg_array);
tdb               383 source3/lib/messages_local.c 		tdb_delete(tdb->tdb, message_key_pid(talloc_tos(), pid));
tdb               387 source3/lib/messages_local.c 	tdb_chainunlock(tdb->tdb, key);
tdb               438 source3/lib/messages_local.c 	struct tdb_wrap *tdb = ctx->tdb;
tdb               449 source3/lib/messages_local.c 	status = retrieve_all_messages(tdb->tdb, NULL, &msg_array);
tdb                32 source3/lib/server_mutex.c 	struct tdb_wrap *tdb;
tdb                38 source3/lib/server_mutex.c 	tdb_unlock_bystring(mutex->tdb->tdb, mutex->name);
tdb                60 source3/lib/server_mutex.c 	result->tdb = tdb_wrap_open(result, lock_path("mutex.tdb"), 0,
tdb                62 source3/lib/server_mutex.c 	if (result->tdb == NULL) {
tdb                69 source3/lib/server_mutex.c 	if (tdb_lock_bystring_with_timeout(result->tdb->tdb, name,
tdb                28 source3/lib/tdb_validate.c static int tdb_validate_child(struct tdb_context *tdb,
tdb                41 source3/lib/tdb_validate.c 	if (!tdb) {
tdb                48 source3/lib/tdb_validate.c 	if (tdb_validate_freelist(tdb, &num_entries) == -1) {
tdb                55 source3/lib/tdb_validate.c 		  tdb_name(tdb), num_entries));
tdb                58 source3/lib/tdb_validate.c 	num_entries = tdb_traverse(tdb, validate_fn, (void *)&v_status);
tdb                68 source3/lib/tdb_validate.c 		  tdb_name(tdb), num_entries));
tdb                87 source3/lib/tdb_validate.c int tdb_validate(struct tdb_context *tdb, tdb_validate_data_func validate_fn)
tdb                94 source3/lib/tdb_validate.c 	if (tdb == NULL) {
tdb                99 source3/lib/tdb_validate.c 	DEBUG(5, ("tdb_validate called for tdb '%s'\n", tdb_name(tdb)));
tdb               112 source3/lib/tdb_validate.c 		exit(tdb_validate_child(tdb, validate_fn));
tdb               166 source3/lib/tdb_validate.c 		  tdb_name(tdb)));
tdb               179 source3/lib/tdb_validate.c 	TDB_CONTEXT *tdb = NULL;
tdb               184 source3/lib/tdb_validate.c 	tdb = tdb_open_log(tdb_path, 0, TDB_DEFAULT, O_RDONLY, 0);
tdb               185 source3/lib/tdb_validate.c 	if (!tdb) {
tdb               190 source3/lib/tdb_validate.c 	ret = tdb_validate(tdb, validate_fn);
tdb               191 source3/lib/tdb_validate.c 	tdb_close(tdb);
tdb               207 source3/lib/tdb_validate.c static int traverse_copy_fn(struct tdb_context *tdb, TDB_DATA key,
tdb               236 source3/lib/tdb_validate.c static int tdb_verify_basic(struct tdb_context *tdb)
tdb               238 source3/lib/tdb_validate.c 	return tdb_traverse(tdb, NULL, NULL);
tdb                50 source3/lib/tdb_validate.h int tdb_validate(struct tdb_context *tdb,
tdb                46 source3/lib/util_tdb.c static int tdb_chainlock_with_timeout_internal( TDB_CONTEXT *tdb, TDB_DATA key, unsigned int timeout, int rw_type)
tdb                54 source3/lib/util_tdb.c 		tdb_setalarm_sigptr(tdb, &gotalarm);
tdb                59 source3/lib/util_tdb.c 		ret = tdb_chainlock_read(tdb, key);
tdb                61 source3/lib/util_tdb.c 		ret = tdb_chainlock(tdb, key);
tdb                65 source3/lib/util_tdb.c 		tdb_setalarm_sigptr(tdb, NULL);
tdb                69 source3/lib/util_tdb.c 				timeout, key.dptr, tdb_name(tdb)));
tdb                85 source3/lib/util_tdb.c int tdb_chainlock_with_timeout( TDB_CONTEXT *tdb, TDB_DATA key, unsigned int timeout)
tdb                87 source3/lib/util_tdb.c 	return tdb_chainlock_with_timeout_internal(tdb, key, timeout, F_WRLCK);
tdb                90 source3/lib/util_tdb.c int tdb_lock_bystring_with_timeout(TDB_CONTEXT *tdb, const char *keyval,
tdb                95 source3/lib/util_tdb.c 	return tdb_chainlock_with_timeout(tdb, key, timeout);
tdb               102 source3/lib/util_tdb.c int tdb_read_lock_bystring_with_timeout(TDB_CONTEXT *tdb, const char *keyval, unsigned int timeout)
tdb               106 source3/lib/util_tdb.c 	return tdb_chainlock_with_timeout_internal(tdb, key, timeout, F_RDLCK);
tdb               112 source3/lib/util_tdb.c int tdb_trans_store_bystring(TDB_CONTEXT *tdb, const char *keystr,
tdb               117 source3/lib/util_tdb.c 	return tdb_trans_store(tdb, key, data, flags);
tdb               372 source3/lib/util_tdb.c static void tdb_log(TDB_CONTEXT *tdb, enum tdb_debug_level level, const char *format, ...)
tdb               385 source3/lib/util_tdb.c 	DEBUG((int)level, ("tdb(%s): %s", tdb_name(tdb) ? tdb_name(tdb) : "unnamed", ptr));
tdb               397 source3/lib/util_tdb.c 	TDB_CONTEXT *tdb;
tdb               417 source3/lib/util_tdb.c 	tdb = tdb_open_ex(name, hash_size, tdb_flags, 
tdb               419 source3/lib/util_tdb.c 	if (!tdb)
tdb               422 source3/lib/util_tdb.c 	return tdb;
tdb               430 source3/lib/util_tdb.c int tdb_trans_store(struct tdb_context *tdb, TDB_DATA key, TDB_DATA dbuf,
tdb               435 source3/lib/util_tdb.c 	if ((res = tdb_transaction_start(tdb)) != 0) {
tdb               440 source3/lib/util_tdb.c 	if ((res = tdb_store(tdb, key, dbuf, flag)) != 0) {
tdb               442 source3/lib/util_tdb.c 		if (tdb_transaction_cancel(tdb) != 0) {
tdb               448 source3/lib/util_tdb.c 	if ((res = tdb_transaction_commit(tdb)) != 0) {
tdb               460 source3/lib/util_tdb.c int tdb_trans_delete(struct tdb_context *tdb, TDB_DATA key)
tdb               464 source3/lib/util_tdb.c 	if ((res = tdb_transaction_start(tdb)) != 0) {
tdb               469 source3/lib/util_tdb.c 	if ((res = tdb_delete(tdb, key)) != 0) {
tdb               471 source3/lib/util_tdb.c 		if (tdb_transaction_cancel(tdb) != 0) {
tdb               477 source3/lib/util_tdb.c 	if ((res = tdb_transaction_commit(tdb)) != 0) {
tdb               487 source3/lib/util_tdb.c static void tdb_wrap_log(TDB_CONTEXT *tdb, enum tdb_debug_level level, 
tdb               490 source3/lib/util_tdb.c static void tdb_wrap_log(TDB_CONTEXT *tdb, enum tdb_debug_level level, 
tdb               520 source3/lib/util_tdb.c 		const char *name = tdb_name(tdb);
tdb               531 source3/lib/util_tdb.c 	tdb_close(w->tdb);
tdb               583 source3/lib/util_tdb.c 	w->tdb = tdb_open_ex(name, hash_size, tdb_flags, 
tdb               585 source3/lib/util_tdb.c 	if (w->tdb == NULL) {
tdb               333 source3/nmbd/nmbd_winsserver.c static int traverse_fn(TDB_CONTEXT *tdb, TDB_DATA kbuf, TDB_DATA dbuf, void *state)
tdb              1748 source3/nmbd/nmbd_winsserver.c static int fetch_1b_traverse_fn(TDB_CONTEXT *tdb, TDB_DATA kbuf, TDB_DATA dbuf, void *state)
tdb              2137 source3/nmbd/nmbd_winsserver.c static int wins_processing_traverse_fn(TDB_CONTEXT *tdb, TDB_DATA kbuf, TDB_DATA dbuf, void *state)
tdb              2311 source3/nmbd/nmbd_winsserver.c static int wins_writedb_traverse_fn(TDB_CONTEXT *tdb, TDB_DATA kbuf, TDB_DATA dbuf, void *state)
tdb               306 source3/passdb/pdb_tdb.c 	TDB_CONTEXT *tdb;
tdb               315 source3/passdb/pdb_tdb.c 	tdb = tdb_open_log(state_path("winbindd_idmap.tdb"), 0,
tdb               318 source3/passdb/pdb_tdb.c 	if (tdb) {
tdb               319 source3/passdb/pdb_tdb.c 		ok = tdb_fetch_uint32(tdb, "RID_COUNTER", &rid);
tdb               323 source3/passdb/pdb_tdb.c 		tdb_close(tdb);
tdb               547 source3/printing/notify.c 	TDB_CONTEXT *tdb = NULL;
tdb               559 source3/printing/notify.c 	tdb = pdb->tdb;
tdb               561 source3/printing/notify.c 	if (tdb_read_lock_bystring_with_timeout(tdb, NOTIFY_PID_LIST_KEY, 10) == -1) {
tdb               569 source3/printing/notify.c 	data = get_printer_notify_pid_list( tdb, printername, True );
tdb               597 source3/printing/notify.c 	tdb_read_unlock_bystring(tdb, NOTIFY_PID_LIST_KEY);
tdb               199 source3/printing/printing.c 		if (tdb_lock_bystring(pdb->tdb, sversion) == -1) {
tdb               204 source3/printing/printing.c 		if (tdb_fetch_int32(pdb->tdb, sversion) != PRINT_DATABASE_VERSION) {
tdb               205 source3/printing/printing.c 			tdb_wipe_all(pdb->tdb);
tdb               206 source3/printing/printing.c 			tdb_store_int32(pdb->tdb, sversion, PRINT_DATABASE_VERSION);
tdb               208 source3/printing/printing.c 		tdb_unlock_bystring(pdb->tdb, sversion);
tdb               346 source3/printing/printing.c 	ret = tdb_fetch(pdb->tdb, print_key(jobid, &tmp));
tdb               427 source3/printing/printing.c 		tdb_traverse(pdb->tdb, unixjob_traverse_fn, &state);
tdb               534 source3/printing/printing.c 	old_data = tdb_fetch(pdb->tdb, print_key(jobid, &tmp));
tdb               575 source3/printing/printing.c 	ret = (tdb_store(pdb->tdb, print_key(jobid, &tmp), new_data,
tdb               640 source3/printing/printing.c 	tdb_delete(pdb->tdb, print_key(jobid, &tmp));
tdb               858 source3/printing/printing.c 	tdb_store_int32(pdb->tdb, key, -1);
tdb               878 source3/printing/printing.c 	data = tdb_fetch(pdb->tdb, key);
tdb               920 source3/printing/printing.c 		tdb_delete(pdb->tdb, key);
tdb               929 source3/printing/printing.c 	tdb_store(pdb->tdb, key, data, TDB_REPLACE);
tdb              1013 source3/printing/printing.c 	tdb_store(pdb->tdb, string_tdb_data("INFO/linear_queue_array"), data,
tdb              1025 source3/printing/printing.c 	data = tdb_fetch(pdb->tdb, string_tdb_data("INFO/jobs_changed"));
tdb              1063 source3/printing/printing.c 	last_qscan_time = (time_t)tdb_fetch_int32(pdb->tdb, key);
tdb              1095 source3/printing/printing.c 			&& tdb_fetch_uint32( pdb->tdb, key, &u )
tdb              1146 source3/printing/printing.c 	tdb_store_int32(pdb->tdb, cachestr, (int)time(NULL));
tdb              1221 source3/printing/printing.c 	tdb_traverse(pdb->tdb, traverse_fn_delete, (void *)&tstruct);
tdb              1231 source3/printing/printing.c 	tdb_store_int32(pdb->tdb, "INFO/total_jobs", tstruct.total_jobs);
tdb              1245 source3/printing/printing.c 	tdb_store(pdb->tdb, key, data, TDB_REPLACE);
tdb              1253 source3/printing/printing.c 	tdb_store_int32(pdb->tdb, keystr, (int32)time(NULL));
tdb              1259 source3/printing/printing.c 	if ( !tdb_store_uint32( pdb->tdb, keystr, 0 ) ) {
tdb              1309 source3/printing/printing.c 	if (tdb_lock_bystring_with_timeout(pdb->tdb, keystr, 10) == -1) {
tdb              1325 source3/printing/printing.c 		tdb_unlock_bystring(pdb->tdb, keystr);
tdb              1342 source3/printing/printing.c 	tdb_unlock_bystring(pdb->tdb, keystr);
tdb              1591 source3/printing/printing.c 	if ( !tdb_store_uint32( pdb->tdb, key, time(NULL) ) ) {
tdb              1620 source3/printing/printing.c 	TDB_CONTEXT *tdb = NULL;
tdb              1648 source3/printing/printing.c 		tdb = pdb->tdb;
tdb              1651 source3/printing/printing.c 	if (tdb_lock_bystring_with_timeout(tdb, NOTIFY_PID_LIST_KEY, 10) == -1) {
tdb              1659 source3/printing/printing.c 	data = get_printer_notify_pid_list( tdb, printername, True );
tdb              1685 source3/printing/printing.c 	if (tdb_store_bystring(tdb, NOTIFY_PID_LIST_KEY, data, TDB_REPLACE) == -1) {
tdb              1695 source3/printing/printing.c 	tdb_unlock_bystring(tdb, NOTIFY_PID_LIST_KEY);
tdb              1711 source3/printing/printing.c 	TDB_CONTEXT *tdb = NULL;
tdb              1738 source3/printing/printing.c 		tdb = pdb->tdb;
tdb              1741 source3/printing/printing.c 	if (tdb_lock_bystring_with_timeout(tdb, NOTIFY_PID_LIST_KEY, 10) == -1) {
tdb              1749 source3/printing/printing.c 	data = get_printer_notify_pid_list( tdb, printername, True );
tdb              1775 source3/printing/printing.c 	if (tdb_store_bystring(tdb, NOTIFY_PID_LIST_KEY, data, TDB_REPLACE) == -1) {
tdb              1785 source3/printing/printing.c 	tdb_unlock_bystring(tdb, NOTIFY_PID_LIST_KEY);
tdb              1804 source3/printing/printing.c 	ret = tdb_exists(pdb->tdb, print_key(jobid, &tmp));
tdb              1901 source3/printing/printing.c 	if (tdb_chainlock_with_timeout(pdb->tdb, key, 5) == -1)
tdb              1906 source3/printing/printing.c 	data = tdb_fetch(pdb->tdb, key);
tdb              1920 source3/printing/printing.c 			if (tdb_store(pdb->tdb, key, data, TDB_REPLACE) == -1)
tdb              1930 source3/printing/printing.c 		tdb_chainunlock(pdb->tdb, key);
tdb              1993 source3/printing/printing.c 			tdb_change_int32_atomic(pdb->tdb, "INFO/total_jobs", &njobs, -1);
tdb              2255 source3/printing/printing.c 		data = tdb_fetch(pdb->tdb, string_tdb_data(keystr));
tdb              2264 source3/printing/printing.c 	len = tdb_fetch_int32(pdb->tdb, "INFO/total_jobs");
tdb              2308 source3/printing/printing.c 		if (tdb_lock_bystring_with_timeout(pdb->tdb, "INFO/nextjob", 20) == -1) {
tdb              2313 source3/printing/printing.c 		if (!tdb_fetch_uint32(pdb->tdb, "INFO/nextjob", &jobid)) {
tdb              2314 source3/printing/printing.c 			if (tdb_error(pdb->tdb) != TDB_ERR_NOEXIST) {
tdb              2317 source3/printing/printing.c 				tdb_unlock_bystring(pdb->tdb, "INFO/nextjob");
tdb              2328 source3/printing/printing.c 		if (tdb_store_int32(pdb->tdb, "INFO/nextjob", jobid)==-1) {
tdb              2330 source3/printing/printing.c 			tdb_unlock_bystring(pdb->tdb, "INFO/nextjob");
tdb              2335 source3/printing/printing.c 		tdb_unlock_bystring(pdb->tdb, "INFO/nextjob");
tdb              2357 source3/printing/printing.c 		if (tdb_store(pdb->tdb, print_key(jobid, &tmp), dum,
tdb              2384 source3/printing/printing.c 	return (tdb_append(pdb->tdb, string_tdb_data("INFO/jobs_changed"),
tdb              2507 source3/printing/printing.c 	tdb_change_int32_atomic(pdb->tdb, "INFO/total_jobs", &njobs, 1);
tdb              2650 source3/printing/printing.c 	data = tdb_fetch(pdb->tdb, string_tdb_data("INFO/linear_queue_array"));
tdb              2656 source3/printing/printing.c 	cgdata = tdb_fetch(pdb->tdb, string_tdb_data("INFO/jobs_changed"));
tdb              2779 source3/printing/printing.c 	data = tdb_fetch(pdb->tdb, key);
tdb                45 source3/printing/printing_db.c 		if (p->tdb && strequal(p->printer_name, printername)) {
tdb                64 source3/printing/printing_db.c 			if (p->tdb) {
tdb                65 source3/printing/printing_db.c 				if (tdb_close(print_db_head->tdb)) {
tdb                71 source3/printing/printing_db.c 			p->tdb = NULL;
tdb               106 source3/printing/printing_db.c 	p->tdb = tdb_open_log(printdb_path, 5000, TDB_DEFAULT, O_RDWR|O_CREAT, 
tdb               112 source3/printing/printing_db.c 	if (!p->tdb) {
tdb               147 source3/printing/printing_db.c 		if (p->tdb)
tdb               148 source3/printing/printing_db.c 			tdb_close(p->tdb);
tdb               161 source3/printing/printing_db.c TDB_DATA get_printer_notify_pid_list(TDB_CONTEXT *tdb, const char *printer_name, bool cleanlist)
tdb               168 source3/printing/printing_db.c 	data = tdb_fetch_bystring( tdb, NOTIFY_PID_LIST_KEY );
tdb               177 source3/printing/printing_db.c 		tdb_delete_bystring(tdb, NOTIFY_PID_LIST_KEY );
tdb                26 source3/printing/tests/vlp.c static TDB_CONTEXT *tdb;
tdb                55 source3/printing/tests/vlp.c 	data = tdb_fetch_bystring(tdb, keystr);
tdb                73 source3/printing/tests/vlp.c 	tdb_store_bystring(tdb, keystr, data, TDB_REPLACE);
tdb                85 source3/printing/tests/vlp.c 	tdb_lock_bystring(tdb, keystr);
tdb                87 source3/printing/tests/vlp.c 	jobnum = tdb_fetch_int32(tdb, keystr);
tdb                96 source3/printing/tests/vlp.c 	tdb_store_int32(tdb, keystr, jobnum);
tdb                98 source3/printing/tests/vlp.c 	tdb_unlock_bystring(tdb, keystr);
tdb               109 source3/printing/tests/vlp.c 	result = tdb_store_int32(tdb, keystr, status);
tdb               122 source3/printing/tests/vlp.c 	if (!tdb_exists(tdb, data)) {
tdb               127 source3/printing/tests/vlp.c 	return tdb_fetch_int32(tdb, keystr);
tdb               252 source3/printing/tests/vlp.c 	value = tdb_fetch_bystring(tdb, keystr);
tdb               267 source3/printing/tests/vlp.c 		tdb_store_bystring(tdb, keystr, queue, TDB_REPLACE);
tdb               277 source3/printing/tests/vlp.c 		tdb_store_bystring(tdb, keystr, queue, TDB_REPLACE);
tdb               395 source3/printing/tests/vlp.c 	if (!(tdb = tdb_open(printdb_path, 0, 0, O_RDWR | O_CREAT,
tdb               155 source3/registry/reg_perfcount.c static uint32 _reg_perfcount_multi_sz_from_tdb(TDB_CONTEXT *tdb, 
tdb               169 source3/registry/reg_perfcount.c 	dbuf = tdb_fetch(tdb, kbuf);
tdb               175 source3/registry/reg_perfcount.c 			  temp, tdb_name(tdb)));
tdb               824 source3/registry/reg_perfcount.c 				  TDB_CONTEXT *tdb,
tdb               833 source3/registry/reg_perfcount.c 	data = tdb_fetch(tdb, key);
tdb              1336 source3/rpc_parse/parse_prs.c int tdb_prs_store(TDB_CONTEXT *tdb, TDB_DATA kbuf, prs_struct *ps)
tdb              1341 source3/rpc_parse/parse_prs.c 	return tdb_trans_store(tdb, kbuf, dbuf, TDB_REPLACE);
tdb              1345 source3/rpc_parse/parse_prs.c int tdb_prs_fetch(TDB_CONTEXT *tdb, TDB_DATA kbuf, prs_struct *ps, TALLOC_CTX *mem_ctx)
tdb              1351 source3/rpc_parse/parse_prs.c 	dbuf = tdb_fetch(tdb, kbuf);
tdb                24 source3/torture/mangle_test.c static TDB_CONTEXT *tdb;
tdb                86 source3/torture/mangle_test.c 	data = tdb_fetch_bystring(tdb, shortname);
tdb               102 source3/torture/mangle_test.c 		tdb_store_bystring(tdb, shortname, namedata, TDB_REPLACE);
tdb               174 source3/torture/mangle_test.c 	tdb = tdb_open(NULL, 100000, TDB_INTERNAL, 0, 0);
tdb               175 source3/torture/mangle_test.c 	if (!tdb) {
tdb               194 source3/utils/eventlogadm.c 		r = evlog_pull_record_tdb(mem_ctx, etdb->tdb, count);
tdb                33 source3/utils/net_idmap.c static int net_idmap_dump_one_entry(TDB_CONTEXT *tdb,
tdb               863 source3/utils/smbcontrol.c 	TDB_CONTEXT *tdb;
tdb               873 source3/utils/smbcontrol.c 	tdb = tdb_open_log(cache_path("winbindd_cache.tdb"), 0, TDB_DEFAULT, O_RDWR, 0600);
tdb               874 source3/utils/smbcontrol.c 	if (!tdb) {
tdb               880 source3/utils/smbcontrol.c 	tdb_delete_bystring(tdb, "WINBINDD_OFFLINE");
tdb               881 source3/utils/smbcontrol.c 	tdb_close(tdb);
tdb               890 source3/utils/smbcontrol.c 	TDB_CONTEXT *tdb;
tdb               903 source3/utils/smbcontrol.c 	tdb = tdb_open_log(cache_path("winbindd_cache.tdb"),
tdb               907 source3/utils/smbcontrol.c 	if (!tdb) {
tdb               930 source3/utils/smbcontrol.c 		tdb_store_bystring(tdb, "WINBINDD_OFFLINE", d, TDB_INSERT);
tdb               936 source3/utils/smbcontrol.c 		d = tdb_fetch_bystring( tdb, "WINBINDD_OFFLINE" );
tdb               947 source3/utils/smbcontrol.c 	tdb_close(tdb);
tdb                87 source3/winbindd/winbindd_cache.c 	TDB_CONTEXT *tdb;
tdb               114 source3/winbindd/winbindd_cache.c 	if (wcache == NULL || wcache->tdb == NULL) {
tdb               119 source3/winbindd/winbindd_cache.c 	if (fstat(tdb_fd(wcache->tdb), &st) == -1) {
tdb               379 source3/winbindd/winbindd_cache.c 	if (!wcache->tdb)
tdb               396 source3/winbindd/winbindd_cache.c 	if (!wcache->tdb) {
tdb               403 source3/winbindd/winbindd_cache.c 	data = tdb_fetch_bystring( wcache->tdb, key );
tdb               437 source3/winbindd/winbindd_cache.c 	if (!wcache->tdb) {
tdb               449 source3/winbindd/winbindd_cache.c 	if ( tdb_store_bystring( wcache->tdb, key_str, data, TDB_REPLACE) == -1 ) {
tdb               595 source3/winbindd/winbindd_cache.c 	data = tdb_fetch(wcache->tdb, key);
tdb               680 source3/winbindd/winbindd_cache.c 	tdb_delete(wcache->tdb, key);
tdb               812 source3/winbindd/winbindd_cache.c 	if (!wcache->tdb)
tdb               848 source3/winbindd/winbindd_cache.c 	tdb_store(wcache->tdb, key, data, TDB_REPLACE);
tdb              1027 source3/winbindd/winbindd_cache.c 	if (!cache->tdb)
tdb              1102 source3/winbindd/winbindd_cache.c 	if (!cache->tdb)
tdb              1177 source3/winbindd/winbindd_cache.c 	if (!cache->tdb) {
tdb              1191 source3/winbindd/winbindd_cache.c 	data = tdb_fetch(cache->tdb, string_tdb_data(key_str));
tdb              1216 source3/winbindd/winbindd_cache.c 	if (!cache->tdb) {
tdb              1339 source3/winbindd/winbindd_cache.c 	if (!cache->tdb)
tdb              1456 source3/winbindd/winbindd_cache.c 	if (!cache->tdb)
tdb              1530 source3/winbindd/winbindd_cache.c 	if (!cache->tdb)
tdb              1617 source3/winbindd/winbindd_cache.c 	if (!cache->tdb)
tdb              1690 source3/winbindd/winbindd_cache.c 	if (!cache->tdb)
tdb              1760 source3/winbindd/winbindd_cache.c 	if (!cache->tdb) {
tdb              1907 source3/winbindd/winbindd_cache.c 	if (!cache->tdb)
tdb              1980 source3/winbindd/winbindd_cache.c 	if (!cache->tdb)
tdb              2069 source3/winbindd/winbindd_cache.c 	if (!cache->tdb)
tdb              2161 source3/winbindd/winbindd_cache.c 	if (!cache->tdb)
tdb              2257 source3/winbindd/winbindd_cache.c 	if (!cache->tdb)
tdb              2361 source3/winbindd/winbindd_cache.c 	if (!cache->tdb)
tdb              2410 source3/winbindd/winbindd_cache.c 	if (!cache->tdb)
tdb              2488 source3/winbindd/winbindd_cache.c         if (!cache->tdb) {
tdb              2498 source3/winbindd/winbindd_cache.c 	tdb_delete(cache->tdb, string_tdb_data(key_str));
tdb              2503 source3/winbindd/winbindd_cache.c 	tdb_delete(cache->tdb, string_tdb_data(key_str));
tdb              2519 source3/winbindd/winbindd_cache.c 			if (cache->tdb) {
tdb              2520 source3/winbindd/winbindd_cache.c 				tdb_traverse(cache->tdb, traverse_fn, NULL);
tdb              2546 source3/winbindd/winbindd_cache.c 			if (cache->tdb) {
tdb              2547 source3/winbindd/winbindd_cache.c 				tdb_traverse(cache->tdb, traverse_fn, NULL);
tdb              2563 source3/winbindd/winbindd_cache.c 	if (wcache->tdb != NULL)
tdb              2567 source3/winbindd/winbindd_cache.c 	wcache->tdb = tdb_open_log(cache_path("winbindd_cache.tdb"),
tdb              2572 source3/winbindd/winbindd_cache.c 	if (wcache->tdb == NULL) {
tdb              2597 source3/winbindd/winbindd_cache.c 	if (tdb_fetch_uint32(wcache->tdb, WINBINDD_CACHE_VERSION_KEYSTR, &vers) &&
tdb              2607 source3/winbindd/winbindd_cache.c 		tdb_close(wcache->tdb);
tdb              2608 source3/winbindd/winbindd_cache.c 		wcache->tdb = NULL;
tdb              2623 source3/winbindd/winbindd_cache.c 		if (!tdb_store_uint32(wcache->tdb, WINBINDD_CACHE_VERSION_KEYSTR, WINBINDD_CACHE_VERSION)) {
tdb              2625 source3/winbindd/winbindd_cache.c 				tdb_errorstr(wcache->tdb) ));
tdb              2630 source3/winbindd/winbindd_cache.c 	tdb_close(wcache->tdb);
tdb              2631 source3/winbindd/winbindd_cache.c 	wcache->tdb = NULL;
tdb              2640 source3/winbindd/winbindd_cache.c 	if (wcache->tdb) {
tdb              2641 source3/winbindd/winbindd_cache.c 		tdb_close(wcache->tdb);
tdb              2642 source3/winbindd/winbindd_cache.c 		wcache->tdb = NULL;
tdb              2657 source3/winbindd/winbindd_cache.c 	if (tdb_store(wcache->tdb, string_tdb_data(key_str), 
tdb              2671 source3/winbindd/winbindd_cache.c 	if (tdb_store(wcache->tdb, string_tdb_data(key_str),
tdb              2681 source3/winbindd/winbindd_cache.c 	tdb_delete(wcache->tdb, string_tdb_data(key_str));
tdb              2697 source3/winbindd/winbindd_cache.c 	data = tdb_fetch(wcache->tdb, string_tdb_data(key_str));
tdb              2719 source3/winbindd/winbindd_cache.c 	data = tdb_fetch(wcache->tdb, string_tdb_data(key_str));
tdb              2746 source3/winbindd/winbindd_cache.c 	tdb_delete(wcache->tdb, string_tdb_data(key_str));
tdb              2749 source3/winbindd/winbindd_cache.c 	tdb_delete(wcache->tdb, string_tdb_data(key_str));
tdb              2772 source3/winbindd/winbindd_cache.c 	if (cache->tdb == NULL) {
tdb              2813 source3/winbindd/winbindd_cache.c 	if (cache->tdb == NULL) {
tdb              2886 source3/winbindd/winbindd_cache.c 	if (wcache->tdb) {
tdb              2887 source3/winbindd/winbindd_cache.c 		tdb_close(wcache->tdb);
tdb              2888 source3/winbindd/winbindd_cache.c 		wcache->tdb = NULL;
tdb              2895 source3/winbindd/winbindd_cache.c 	wcache->tdb = tdb_open_log(cache_path("winbindd_cache.tdb"),
tdb              2900 source3/winbindd/winbindd_cache.c 	if (!wcache->tdb) {
tdb              2905 source3/winbindd/winbindd_cache.c 	tdb_traverse(wcache->tdb, traverse_fn_cleanup, NULL);
tdb              2929 source3/winbindd/winbindd_cache.c 	if (!cache->tdb) {
tdb              2933 source3/winbindd/winbindd_cache.c 	tdb_traverse(cache->tdb, traverse_fn_cached_creds, (void *)count);
tdb              2977 source3/winbindd/winbindd_cache.c 	if (!cache->tdb) {
tdb              2990 source3/winbindd/winbindd_cache.c 		tdb_delete(cache->tdb, string_tdb_data(key_str));
tdb              2995 source3/winbindd/winbindd_cache.c 	ret = tdb_traverse(cache->tdb, traverse_fn_get_credlist, NULL);
tdb              3009 source3/winbindd/winbindd_cache.c 		data = tdb_fetch(cache->tdb, string_tdb_data(cred->name));
tdb              3038 source3/winbindd/winbindd_cache.c 	if (tdb_delete(cache->tdb, string_tdb_data(oldest->name)) == 0) {
tdb              3060 source3/winbindd/winbindd_cache.c 	if (wcache == NULL || wcache->tdb == NULL) {
tdb              3075 source3/winbindd/winbindd_cache.c 	data = tdb_fetch_bystring( wcache->tdb, "WINBINDD_OFFLINE" );
tdb              3104 source3/winbindd/winbindd_cache.c 	if (!wcache->tdb) {
tdb              3109 source3/winbindd/winbindd_cache.c 	tdb_delete_bystring(wcache->tdb, "WINBINDD_OFFLINE");
tdb              3725 source3/winbindd/winbindd_cache.c 	TDB_CONTEXT *tdb = NULL;
tdb              3731 source3/winbindd/winbindd_cache.c 	tdb = tdb_open_log(tdb_path, 
tdb              3738 source3/winbindd/winbindd_cache.c 	if (!tdb) {
tdb              3743 source3/winbindd/winbindd_cache.c 	tdb_close(tdb);
tdb              3772 source3/winbindd/winbindd_cache.c 	if (wcache == NULL || wcache->tdb == NULL) {
tdb              3775 source3/winbindd/winbindd_cache.c 		ret = tdb_validate(wcache->tdb, cache_traverse_validate_fn);
tdb              4034 source3/winbindd/winbindd_cache.c 		ret = tdb_delete( wcache->tdb, key );
tdb              4045 source3/winbindd/winbindd_cache.c 	ret = tdb_store( wcache->tdb, key, data, 0 );
tdb              4068 source3/winbindd/winbindd_cache.c 	data = tdb_fetch( wcache->tdb, key );
tdb              4234 source3/winbindd/winbindd_cache.c 	if (!cache->tdb)
tdb               756 source4/lib/ldb/common/ldb_modules.c 	LDB_BACKEND(tdb),	\
tdb               275 source4/lib/ldb/ldb_tdb/ldb_cache.c 	    tdb_get_seqnum(ltdb->tdb) == ltdb->tdb_seqnum) {
tdb               311 source4/lib/ldb/ldb_tdb/ldb_cache.c 	ltdb->tdb_seqnum = tdb_get_seqnum(ltdb->tdb);
tdb               460 source4/lib/ldb/ldb_tdb/ldb_cache.c 	ltdb->tdb_seqnum = tdb_get_seqnum(ltdb->tdb);
tdb               291 source4/lib/ldb/ldb_tdb/ldb_index.c 			tdb_repack(ltdb->tdb);
tdb              1505 source4/lib/ldb/ldb_tdb/ldb_index.c static int delete_index(struct tdb_context *tdb, TDB_DATA key, TDB_DATA data, void *state)
tdb              1509 source4/lib/ldb/ldb_tdb/ldb_index.c 		return tdb_delete(tdb, key);
tdb              1517 source4/lib/ldb/ldb_tdb/ldb_index.c static int re_index(struct tdb_context *tdb, TDB_DATA key, TDB_DATA data, void *state)
tdb              1555 source4/lib/ldb/ldb_tdb/ldb_index.c 		tdb_delete(tdb, key);
tdb              1556 source4/lib/ldb/ldb_tdb/ldb_index.c 		tdb_store(tdb, key2, data, 0);
tdb              1596 source4/lib/ldb/ldb_tdb/ldb_index.c 	ret = tdb_traverse(ltdb->tdb, delete_index, NULL);
tdb              1607 source4/lib/ldb/ldb_tdb/ldb_index.c 	ret = tdb_traverse(ltdb->tdb, re_index, module);
tdb               224 source4/lib/ldb/ldb_tdb/ldb_search.c 	tdb_data = tdb_fetch(ltdb->tdb, tdb_key);
tdb               256 source4/lib/ldb/ldb_tdb/ldb_search.c 	tdb_data = tdb_fetch(ltdb->tdb, tdb_key);
tdb               374 source4/lib/ldb/ldb_tdb/ldb_search.c static int search_func(struct tdb_context *tdb, TDB_DATA key, TDB_DATA data, void *state)
tdb               447 source4/lib/ldb/ldb_tdb/ldb_search.c 		ret = tdb_traverse(ltdb->tdb, search_func, ctx);
tdb               449 source4/lib/ldb/ldb_tdb/ldb_search.c 		ret = tdb_traverse_read(ltdb->tdb, search_func, ctx);
tdb                88 source4/lib/ldb/ldb_tdb/ldb_tdb.c 		return tdb_lockall_read(ltdb->tdb);
tdb               101 source4/lib/ldb/ldb_tdb/ldb_tdb.c 		return tdb_unlockall_read(ltdb->tdb);
tdb               234 source4/lib/ldb/ldb_tdb/ldb_tdb.c 	ret = tdb_store(ltdb->tdb, tdb_key, tdb_data, flgs);
tdb               236 source4/lib/ldb/ldb_tdb/ldb_tdb.c 		ret = ltdb_err_map(tdb_error(ltdb->tdb));
tdb               242 source4/lib/ldb/ldb_tdb/ldb_tdb.c 		tdb_delete(ltdb->tdb, tdb_key);
tdb               327 source4/lib/ldb/ldb_tdb/ldb_tdb.c 	ret = tdb_delete(ltdb->tdb, tdb_key);
tdb               331 source4/lib/ldb/ldb_tdb/ldb_tdb.c 		ret = ltdb_err_map(tdb_error(ltdb->tdb));
tdb               578 source4/lib/ldb/ldb_tdb/ldb_tdb.c 	tdb_data = tdb_fetch(ltdb->tdb, tdb_key);
tdb               581 source4/lib/ldb/ldb_tdb/ldb_tdb.c 		return ltdb_err_map(tdb_error(ltdb->tdb));
tdb               849 source4/lib/ldb/ldb_tdb/ldb_tdb.c 	if (tdb_transaction_start(ltdb->tdb) != 0) {
tdb               850 source4/lib/ldb/ldb_tdb/ldb_tdb.c 		return ltdb_err_map(tdb_error(ltdb->tdb));
tdb               868 source4/lib/ldb/ldb_tdb/ldb_tdb.c 		tdb_transaction_cancel(ltdb->tdb);
tdb               869 source4/lib/ldb/ldb_tdb/ldb_tdb.c 		return ltdb_err_map(tdb_error(ltdb->tdb));
tdb               872 source4/lib/ldb/ldb_tdb/ldb_tdb.c 	if (tdb_transaction_commit(ltdb->tdb) != 0) {
tdb               873 source4/lib/ldb/ldb_tdb/ldb_tdb.c 		return ltdb_err_map(tdb_error(ltdb->tdb));
tdb               887 source4/lib/ldb/ldb_tdb/ldb_tdb.c 		tdb_transaction_cancel(ltdb->tdb);
tdb               888 source4/lib/ldb/ldb_tdb/ldb_tdb.c 		return ltdb_err_map(tdb_error(ltdb->tdb));
tdb               891 source4/lib/ldb/ldb_tdb/ldb_tdb.c 	if (tdb_transaction_cancel(ltdb->tdb) != 0) {
tdb               892 source4/lib/ldb/ldb_tdb/ldb_tdb.c 		return ltdb_err_map(tdb_error(ltdb->tdb));
tdb              1264 source4/lib/ldb/ldb_tdb/ldb_tdb.c 	ltdb->tdb = ltdb_wrap_open(ltdb, path, 10000,
tdb              1267 source4/lib/ldb/ldb_tdb/ldb_tdb.c 	if (!ltdb->tdb) {
tdb                 8 source4/lib/ldb/ldb_tdb/ldb_tdb.h 	TDB_CONTEXT *tdb;
tdb                34 source4/lib/ldb/ldb_tdb/ldb_tdb_wrap.c 	struct tdb_context *tdb;
tdb                44 source4/lib/ldb/ldb_tdb/ldb_tdb_wrap.c 	tdb_close(w->tdb);
tdb                57 source4/lib/ldb/ldb_tdb/ldb_tdb_wrap.c static void ltdb_log_fn(struct tdb_context *tdb, enum tdb_debug_level level, const char *fmt, ...) PRINTF_ATTRIBUTE(3, 4);
tdb                58 source4/lib/ldb/ldb_tdb/ldb_tdb_wrap.c static void ltdb_log_fn(struct tdb_context *tdb, enum tdb_debug_level level, const char *fmt, ...)
tdb                61 source4/lib/ldb/ldb_tdb/ldb_tdb_wrap.c 	const char *name = tdb_name(tdb);
tdb                62 source4/lib/ldb/ldb_tdb/ldb_tdb_wrap.c 	struct ldb_context *ldb = talloc_get_type(tdb_get_logging_private(tdb), struct ldb_context);
tdb               119 source4/lib/ldb/ldb_tdb/ldb_tdb_wrap.c 				return w->tdb;
tdb               129 source4/lib/ldb/ldb_tdb/ldb_tdb_wrap.c 	w->tdb = tdb_open_ex(path, hash_size, tdb_flags, open_flags, mode, &log_ctx, NULL);
tdb               130 source4/lib/ldb/ldb_tdb/ldb_tdb_wrap.c 	if (w->tdb == NULL) {
tdb               135 source4/lib/ldb/ldb_tdb/ldb_tdb_wrap.c 	if (fstat(tdb_fd(w->tdb), &st) != 0) {
tdb               136 source4/lib/ldb/ldb_tdb/ldb_tdb_wrap.c 		tdb_close(w->tdb);
tdb               153 source4/lib/ldb/ldb_tdb/ldb_tdb_wrap.c 	return w->tdb;
tdb               992 source4/lib/messaging/messaging.c 	if (tdb_lock_bystring(t->tdb, name) != 0) {
tdb               996 source4/lib/messaging/messaging.c 	rec = tdb_fetch_bystring(t->tdb, name);
tdb              1001 source4/lib/messaging/messaging.c 		tdb_unlock_bystring(t->tdb, name);
tdb              1006 source4/lib/messaging/messaging.c 	if (tdb_store_bystring(t->tdb, name, rec, 0) != 0) {
tdb              1010 source4/lib/messaging/messaging.c 	tdb_unlock_bystring(t->tdb, name);
tdb              1036 source4/lib/messaging/messaging.c 	if (tdb_lock_bystring(t->tdb, name) != 0) {
tdb              1040 source4/lib/messaging/messaging.c 	rec = tdb_fetch_bystring(t->tdb, name);
tdb              1042 source4/lib/messaging/messaging.c 		tdb_unlock_bystring(t->tdb, name);
tdb              1049 source4/lib/messaging/messaging.c 		tdb_unlock_bystring(t->tdb, name);
tdb              1058 source4/lib/messaging/messaging.c 	tdb_unlock_bystring(t->tdb, name);
tdb              1081 source4/lib/messaging/messaging.c 	if (tdb_lock_bystring(t->tdb, name) != 0) {
tdb              1085 source4/lib/messaging/messaging.c 	rec = tdb_fetch_bystring(t->tdb, name);
tdb              1087 source4/lib/messaging/messaging.c 		tdb_unlock_bystring(t->tdb, name);
tdb              1094 source4/lib/messaging/messaging.c 		tdb_unlock_bystring(t->tdb, name);
tdb              1109 source4/lib/messaging/messaging.c 	tdb_store_bystring(t->tdb, name, rec, 0);
tdb              1111 source4/lib/messaging/messaging.c 	tdb_unlock_bystring(t->tdb, name);
tdb                33 source4/lib/tdb_wrap.c 	tdb_close(w->tdb);
tdb                41 source4/lib/tdb_wrap.c static void tdb_wrap_log(TDB_CONTEXT *tdb, enum tdb_debug_level level, 
tdb                44 source4/lib/tdb_wrap.c static void tdb_wrap_log(TDB_CONTEXT *tdb, enum tdb_debug_level level, 
tdb                73 source4/lib/tdb_wrap.c 		const char *name = tdb_name(tdb);
tdb               105 source4/lib/tdb_wrap.c 	w->tdb = tdb_open_ex(name, hash_size, tdb_flags, 
tdb               107 source4/lib/tdb_wrap.c 	if (w->tdb == NULL) {
tdb                28 source4/lib/tdb_wrap.h 	struct tdb_context *tdb;
tdb               302 source4/ntvfs/common/brlock_tdb.c 	if (tdb_chainlock(brl->w->tdb, kbuf) != 0) {
tdb               320 source4/ntvfs/common/brlock_tdb.c 			tdb_chainunlock(brl->w->tdb, kbuf);
tdb               325 source4/ntvfs/common/brlock_tdb.c 	dbuf = tdb_fetch(brl->w->tdb, kbuf);
tdb               360 source4/ntvfs/common/brlock_tdb.c 	if (tdb_store(brl->w->tdb, kbuf, dbuf, TDB_REPLACE) != 0) {
tdb               366 source4/ntvfs/common/brlock_tdb.c 	tdb_chainunlock(brl->w->tdb, kbuf);
tdb               380 source4/ntvfs/common/brlock_tdb.c 	tdb_chainunlock(brl->w->tdb, kbuf);
tdb               452 source4/ntvfs/common/brlock_tdb.c 	if (tdb_chainlock(brl->w->tdb, kbuf) != 0) {
tdb               456 source4/ntvfs/common/brlock_tdb.c 	dbuf = tdb_fetch(brl->w->tdb, kbuf);
tdb               458 source4/ntvfs/common/brlock_tdb.c 		tdb_chainunlock(brl->w->tdb, kbuf);
tdb               497 source4/ntvfs/common/brlock_tdb.c 			if (tdb_delete(brl->w->tdb, kbuf) != 0) {
tdb               514 source4/ntvfs/common/brlock_tdb.c 			if (tdb_store(brl->w->tdb, kbuf, dbuf, TDB_REPLACE) != 0) {
tdb               521 source4/ntvfs/common/brlock_tdb.c 		tdb_chainunlock(brl->w->tdb, kbuf);
tdb               530 source4/ntvfs/common/brlock_tdb.c 	tdb_chainunlock(brl->w->tdb, kbuf);
tdb               552 source4/ntvfs/common/brlock_tdb.c 	if (tdb_chainlock(brl->w->tdb, kbuf) != 0) {
tdb               556 source4/ntvfs/common/brlock_tdb.c 	dbuf = tdb_fetch(brl->w->tdb, kbuf);
tdb               558 source4/ntvfs/common/brlock_tdb.c 		tdb_chainunlock(brl->w->tdb, kbuf);
tdb               574 source4/ntvfs/common/brlock_tdb.c 				if (tdb_delete(brl->w->tdb, kbuf) != 0) {
tdb               585 source4/ntvfs/common/brlock_tdb.c 				if (tdb_store(brl->w->tdb, kbuf, dbuf, TDB_REPLACE) != 0) {
tdb               592 source4/ntvfs/common/brlock_tdb.c 			tdb_chainunlock(brl->w->tdb, kbuf);
tdb               602 source4/ntvfs/common/brlock_tdb.c 	tdb_chainunlock(brl->w->tdb, kbuf);
tdb               623 source4/ntvfs/common/brlock_tdb.c 	dbuf = tdb_fetch(brl->w->tdb, kbuf);
tdb               666 source4/ntvfs/common/brlock_tdb.c 	if (tdb_chainlock(brl->w->tdb, kbuf) != 0) {
tdb               670 source4/ntvfs/common/brlock_tdb.c 	dbuf = tdb_fetch(brl->w->tdb, kbuf);
tdb               672 source4/ntvfs/common/brlock_tdb.c 		tdb_chainunlock(brl->w->tdb, kbuf);
tdb               700 source4/ntvfs/common/brlock_tdb.c 		if (tdb_delete(brl->w->tdb, kbuf) != 0) {
tdb               711 source4/ntvfs/common/brlock_tdb.c 		if (tdb_store(brl->w->tdb, kbuf, dbuf, TDB_REPLACE) != 0) {
tdb               717 source4/ntvfs/common/brlock_tdb.c 	tdb_chainunlock(brl->w->tdb, kbuf);
tdb               116 source4/ntvfs/common/notify.c 	notify->seqnum = tdb_get_seqnum(notify->w->tdb);
tdb               136 source4/ntvfs/common/notify.c 	if (tdb_lock_bystring(notify->w->tdb, NOTIFY_KEY) != 0) {
tdb               147 source4/ntvfs/common/notify.c 	tdb_unlock_bystring(notify->w->tdb, NOTIFY_KEY);
tdb               160 source4/ntvfs/common/notify.c 	seqnum = tdb_get_seqnum(notify->w->tdb);
tdb               172 source4/ntvfs/common/notify.c 	dbuf = tdb_fetch_bystring(notify->w->tdb, NOTIFY_KEY);
tdb               219 source4/ntvfs/common/notify.c 		ret = tdb_delete_bystring(notify->w->tdb, NOTIFY_KEY);
tdb               239 source4/ntvfs/common/notify.c 	ret = tdb_store_bystring(notify->w->tdb, NOTIFY_KEY, dbuf, TDB_REPLACE);
tdb               119 source4/ntvfs/common/opendb_tdb.c 	tdb_chainunlock(lck->odb->w->tdb, lck->key);
tdb               148 source4/ntvfs/common/opendb_tdb.c 	if (tdb_chainlock(odb->w->tdb, lck->key) != 0) {
tdb               241 source4/ntvfs/common/opendb_tdb.c 	dbuf = tdb_fetch(odb->w->tdb, lck->key);
tdb               270 source4/ntvfs/common/opendb_tdb.c 		ret = tdb_delete(odb->w->tdb, lck->key);
tdb               285 source4/ntvfs/common/opendb_tdb.c 	ret = tdb_store(odb->w->tdb, lck->key, dbuf, TDB_REPLACE);
tdb               130 source4/ntvfs/posix/xattr_tdb.c 	tdata = tdb_fetch(pvfs->ea_db->tdb, tkey);
tdb               164 source4/ntvfs/posix/xattr_tdb.c 	if (tdb_chainlock(pvfs->ea_db->tdb, tkey) != 0) {
tdb               174 source4/ntvfs/posix/xattr_tdb.c 	if (tdb_store(pvfs->ea_db->tdb, tkey, tdata, TDB_REPLACE) == -1) {
tdb               179 source4/ntvfs/posix/xattr_tdb.c 	tdb_chainunlock(pvfs->ea_db->tdb, tkey);
tdb               199 source4/ntvfs/posix/xattr_tdb.c 	if (tdb_delete(pvfs->ea_db->tdb, tkey) == -1) {
tdb                47 source4/param/secrets.c 		tdb_change_int32_atomic(secretsdb->tdb, "INFO/random_seed", new_seed, 1);
tdb                58 source4/param/secrets.c 	struct tdb_wrap *tdb;
tdb                62 source4/param/secrets.c 	tdb = tdb_wrap_open(mem_ctx, fname, 0, TDB_DEFAULT, O_RDWR|O_CREAT, 0600);
tdb                64 source4/param/secrets.c 	if (!tdb) {
tdb                77 source4/param/secrets.c 	set_rand_reseed_callback((void (*) (void *, int *))get_rand_seed, tdb);
tdb                82 source4/param/secrets.c 	return tdb;
tdb                29 source4/torture/basic/mangle_test.c static TDB_CONTEXT *tdb;
tdb                92 source4/torture/basic/mangle_test.c 	data = tdb_fetch_bystring(tdb, shortname);
tdb               108 source4/torture/basic/mangle_test.c 		tdb_store_bystring(tdb, shortname, namedata, TDB_REPLACE);
tdb               170 source4/torture/basic/mangle_test.c 	tdb = tdb_open(NULL, 100000, TDB_INTERNAL, 0, 0);
tdb               171 source4/torture/basic/mangle_test.c 	if (!tdb) {
tdb                44 source4/torture/local/dbspeed.c 	ret = tdb_store(tdbw->tdb, key, data, TDB_INSERT);
tdb               100 source4/torture/local/dbspeed.c 		data = tdb_fetch(tdbw->tdb, key);
tdb               109 source4/torture/local/dbspeed.c 		data = tdb_fetch(tdbw->tdb, key);