1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-23 09:57:40 +03:00

r17780: better fix this one correctly

metze
(This used to be commit fbdc5c635606490618ecd54f1b49db70e680cf05)
This commit is contained in:
Stefan Metzmacher 2006-08-24 09:47:08 +00:00 committed by Gerald (Jerry) Carter
parent bca791da85
commit e996cd5571

View File

@ -34,9 +34,7 @@
#define HWM_USER "USER HWM"
/* idmap version determines auto-conversion */
#if 0 /* unused */
#define IDMAP_VERSION 2
#endif
/*****************************************************************************
Initialise idmap database.
@ -46,6 +44,7 @@ NTSTATUS samba3_read_idmap(const char *fn, TALLOC_CTX *ctx, struct samba3_idmapd
{
TDB_CONTEXT *tdb;
TDB_DATA key, val;
int32_t version;
/* Open idmap repository */
if (!(tdb = tdb_open(fn, 0, TDB_DEFAULT, O_RDONLY, 0644))) {
@ -58,6 +57,13 @@ NTSTATUS samba3_read_idmap(const char *fn, TALLOC_CTX *ctx, struct samba3_idmapd
idmap->user_hwm = tdb_fetch_int32(tdb, HWM_USER);
idmap->group_hwm = tdb_fetch_int32(tdb, HWM_GROUP);
/* check against earlier versions */
version = tdb_fetch_int32(tdb, "IDMAP_VERSION");
if (version != IDMAP_VERSION) {
DEBUG(0, ("idmap_init: Unable to open idmap database, it's in an old format!\n"));
return NT_STATUS_INTERNAL_DB_ERROR;
}
for (key = tdb_firstkey(tdb); key.dptr; key = tdb_nextkey(tdb, key))
{
struct samba3_idmap_mapping map;