1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-27 14:04:05 +03:00

265 Commits

Author SHA1 Message Date
Michael Adam
00ce73850d registry: check for existence of key in regdb_fetch_values() first.
This uses the new semantics for existence of a key.

Michael
(This used to be commit 56a58690d3ab2e01ed28388bd59424d3abc7a0d3)
2008-05-08 18:29:09 +02:00
Michael Adam
284bab74a7 registry: free talloc context on error path in regdb_fetch_values().
Michael
(This used to be commit 978aef3a862065be856b36b38d72d581c3ac0ba1)
2008-05-08 18:29:09 +02:00
Michael Adam
a26880c372 registry: Implement new semantics for existence of registry key in tdb.
Existence of a key is defined as follows:
* If the key is a base key (without separator), the key exists
  iff the corresponding entry exist in the registry tdb.
* If the key is not a base key, the key exists, iff it exists
  in the list of subkeys of it's parent keyname's tdb entry.

Michael
(This used to be commit 477008367f0ac90624b4b751955cd3235b2c9cc6)
2008-05-08 18:29:09 +02:00
Michael Adam
120aacfac5 registry: free temporary data in regdb_fetch_key_internal().
Michael
(This used to be commit 2b25f480ba13ae125d081bab55ee3cbd3c4f425a)
2008-05-08 18:29:08 +02:00
Michael Adam
79a009b876 registry: change order of arguments of regdb_fetch_key_internal()
list talloc context first.

Michael
(This used to be commit 23d7002b22ddcd2c52650463f31b72449aecaaaa)
2008-05-08 18:29:08 +02:00
Michael Adam
f50002b491 registry: skip writes of existing keys in init_registry_data().
Michael
(This used to be commit 37dabf931727f00569725af0e34677d36bb7df99)
2008-04-30 12:42:33 +02:00
Michael Adam
9fe870affa registry: save writes in init_registry_data() if data does already exist.
This is done by first checking if all data (keys and values) exists
(using new regdb_key_exists()) and kompletely skipping all writes if it does.

Michael
(This used to be commit 7c5f1583cb43d473544f161aa9c864e1d78944e5)
2008-04-30 12:42:32 +02:00
Michael Adam
ed6a9edb1e registry: check for existence of key init_registry_key and possibly save a write.
Michael
(This used to be commit 3ab5a2f1b3cf37c380ff3e45a957e62a8017814a)
2008-04-30 12:42:32 +02:00
Michael Adam
6ec4c8631a registry: add function regdb_key_exists() to check for existence of a key.
The existence of the registry key entry (and not the values entry!) is
taken as the criterion for existence.

Michael
(This used to be commit 207a0ece45d947608df3f764e6bd9b4525d41011)
2008-04-30 12:42:32 +02:00
Michael Adam
167d54cc67 registry: use regdb_fetch_key_internal() in regdb_fetch_values().
Michael
(This used to be commit 3316541ac9f1441294405fdd98f0ffafdec8bc2f)
2008-04-30 12:42:32 +02:00
Michael Adam
6b4ed4b8f3 registry: use regdb_fetch_key_internal() in regdb_fetch_keys().
Michael
(This used to be commit 78f924ca05ecef9f586254c00908c1f12272c30c)
2008-04-30 12:42:32 +02:00
Michael Adam
5379dda0cd registry: add a function for fetching a tdb record for a given keystring
regdb_fetch_key_internal()

Michael
(This used to be commit 97bed9a23608248f1a590c99fe40564d2fbfa3cc)
2008-04-30 12:42:32 +02:00
Michael Adam
411ae73283 registry: combine talloc_strdup() and normalize_reg_path() in regdb_fetch_keys().
the talloc_strdup() call is just and extra allocation here.

Michael
(This used to be commit 217233349b2d98d2506fcca47858373150e89924)
2008-04-30 12:42:32 +02:00
Michael Adam
dba75c0831 registry: use normalize_reg_path() in regdb_fetch_keys()
instead of handcrafting normalization.

Michael
(This used to be commit 1e4d2310d077c4d18470fd76f5ff9c010aadd3f0)
2008-04-30 12:42:31 +02:00
Michael Adam
caba2d3a64 registry: use dbwrap_fetch_bystring() in regdb_fetch_values().
Michael
(This used to be commit 569f9844e9d35324cf9a3a3094cd9791918a1441)
2008-04-30 12:42:31 +02:00
Michael Adam
9d933dedf9 registry: use dbwrap_fetch_bystring() in regdb_fetch_keys().
instead of using regdb->fetch and constructing tdb data
from the registry key string by hand.

Michael
(This used to be commit 87a58140f0073dfb5b18fb43655b255aebafbd02)
2008-04-30 12:42:31 +02:00
Michael Adam
86d189dad1 registry: honour the WERROR that regsubkey_ctr_addkey gives in regdb_fetch_keys.
Michael
(This used to be commit 7dd7471da7eca2671b4aa62e8790973e3ff14177)
2008-04-13 15:41:07 +02:00
Michael Adam
26a5652f6d registry: change init_registry_key() and init_registry_data() to return WERR
Michael
(This used to be commit e0718f04a7392695eed6cd1bf888d3af1d5d6177)
2008-04-13 15:33:47 +02:00
Michael Adam
6b85938f27 registry: change regdb_init() to return WERROR instead of bool.
Michael
(This used to be commit c312852abce72bc167abee8b29fc699c4a643ca7)
2008-04-13 15:33:47 +02:00
Volker Lendecke
16198dc51e Convert dbwrap_trans_delete to NTSTATUS
Signed-off-by: Stefan Metzmacher <metze@samba.org>
(This used to be commit dead193f46c2b19955ab3e5ac5ba343694f4858a)
2008-04-01 14:04:22 +02:00
Volker Lendecke
fcdfff1cc8 Convert dbwrap_trans_store to NTSTATUS
Signed-off-by: Stefan Metzmacher <metze@samba.org>
(This used to be commit 5f4de856af1abe63b13059bbe1615cb5877770d0)
2008-04-01 14:04:22 +02:00
Stefan Metzmacher
b8dcade819 regdb: let regdb_fetch_keys() handle NULL and failure cases in the same way and return -1
metze
(This used to be commit 983fd58805a429792fc8eaa816e2dd908643414e)
2008-04-01 14:04:20 +02:00
Stefan Metzmacher
b55942a763 regdb: get the seqnum before the record, to not miss something
metze
(This used to be commit c214107bd9bbf9b17936757437ec211d7de3048e)
2008-04-01 14:04:20 +02:00
Stefan Metzmacher
2b21b02c6a regdb: use dbwrap->fetch() instead of fetch_locked() for readonly access"
This is the fixed version of commit 5c28c74aa06a82559f498373b3d6e9892d5c2cbe.

metze
(This used to be commit 924acd7f695d7514b1a4628468137cf632c8f1f0)
2008-04-01 14:04:20 +02:00
Michael Adam
ce0bbc82fd Revert "regdb: use dbwrap->fetch() instead of fetch_locked() for readonly access"
This reverts commit 4e2be189e97f653b75bd88135a631ce0f42db267.

Metze, this broke the registry (reg_api layer), but I don't yet know
exactly how and why. By the way, the locks there had the purpose of
fetching the seqnum that really matches the data.

This needs some more thought / debugging. But I wanted to have
the tree in a working state again.

Michael
(This used to be commit 5c28c74aa06a82559f498373b3d6e9892d5c2cbe)
2008-03-30 03:05:34 +02:00
Michael Adam
f8fdc36fdb regdb: use == 0 (instead of != -1) as indicator for success of dbwrap_trans_[delete|store]()
Michael
(This used to be commit 7dcd0c1e539df9ff1768a9c878b6687b9e1bfeac)
2008-03-27 18:14:57 +01:00
Michael Adam
c86d10ae83 regdb: use != 0 instead of == -1 check for transaction_[commit|cancel]
Michael
(This used to be commit b6ceeaabae94b86fe79d6a60e497fb472ca23021)
2008-03-27 18:14:57 +01:00
Stefan Metzmacher
5439f5f710 regdb: use db_open_trans()
metze

Signed-off-by: Stefan Metzmacher <metze@samba.org>
(This used to be commit a77b5b91dd439b5965fef17f2b2ff98fefd77dbb)
2008-03-27 18:14:56 +01:00
Stefan Metzmacher
618f22409a regdb: use regdb->transaction_start(regdb) != 0 consistent
metze

Signed-off-by: Stefan Metzmacher <metze@samba.org>
(This used to be commit 093c3bced96c934419af69cc065a240368027dcf)
2008-03-27 18:14:56 +01:00
Stefan Metzmacher
2a95f3f874 regdb: use dbwrap->fetch() instead of fetch_locked() for readonly access
metze

Signed-off-by: Stefan Metzmacher <metze@samba.org>
(This used to be commit 4e2be189e97f653b75bd88135a631ce0f42db267)
2008-03-27 18:14:56 +01:00
Stefan Metzmacher
d9de61341c regdb: use dbwrap_trans_store_int32
metze

Signed-off-by: Stefan Metzmacher <metze@samba.org>
(This used to be commit 9620696083473e3a98b46dd90b3b4aa287580940)
2008-03-27 18:14:56 +01:00
Michael Adam
060f554adc registry: use available string constant in debug statement.
Michael
(This used to be commit 6bac03a2ec6351ab9db457d904b8925c828086e8)
2008-03-20 15:01:52 +01:00
Michael Adam
cef4e1bd9e registry: in regdb_init, not only complain about INFO/version, store it...
Michael
(This used to be commit 27d67365ad03f0a0cd86011758a122a97513b82e)
2008-03-20 15:01:52 +01:00
Michael Adam
4bac0e505f registry: reformat regdb_init() slightly, breaking long lines.
Michael
(This used to be commit 11da885f1e82e7a08fac2bc0ec1515694caa6340)
2008-03-20 15:01:52 +01:00
Michael Adam
13b894b01e registry: untangle assignment and if-statement in regdb_init().
Michael
(This used to be commit 504058df9706ee4e4c2e7fb1b1e41710bce2f87d)
2008-03-20 15:01:52 +01:00
Michael Adam
2f01e055cf registry: separate initialization of registry data from regdb_init().
Leave this to the users (currently registry_init_smbconf() and
init_registry()) to initialize as much of preliminary registry data
as needed.

Michael
(This used to be commit 59fdd30c789ccfd5cff356e459f1653b065b985c)
2008-03-20 15:01:52 +01:00
Michael Adam
8880111466 registry: add a transaction wrapper to init_registry_key_internal().
Michael
(This used to be commit 8b9cff84d5c39e6d7c315d87ac2fdf7fc0d4e4c4)
2008-03-20 15:01:52 +01:00
Michael Adam
1f3139df25 registry: refactor creation of subkeys out of init_registry_data().
Michael
(This used to be commit 55233f875ebe1d515c65d9322cda69eb52d4c7d5)
2008-03-20 15:01:51 +01:00
Günther Deschner
e8bd75ec73 Bind Group Policy processing closer to the samba registry.
Guenther
(This used to be commit e9c56250eb7a2dc4e69962c5b48875834941ccfc)
2008-03-18 21:31:24 +01:00
Michael Adam
6a2a76bc92 registry: untangle assignment and if-clause in init_registry_data().
Michael
(This used to be commit 64664d25cf84e5e0f4a4876b2c38c127b310dbc5)
2008-03-17 13:12:47 +01:00
Michael Adam
cc2e3f180b registry: convert regdb REGISTRY_OPS to named struct initializers.
Michael
(This used to be commit 3ea0a0beb47bf91b71d949de5abb797177721dcc)
2008-03-17 08:22:33 +01:00
Michael Adam
9741e07140 registry: use talloc instead of malloc and provide common exit point
in regdb_get_secdesc().

Michael
(This used to be commit df848d8eeeb102288a3acb9a0f8a7015e0c6ca6b)
2008-03-17 08:22:33 +01:00
Michael Adam
647432a40c registry: remove an unused variable from regdb_set_secdesc().
Michael
(This used to be commit 76dad05e4ce4b4cb26557bc151359ed9d58d6317)
2008-03-17 08:22:33 +01:00
Michael Adam
18a407de8c registry: untangle assignments and if statements in regdb_set_secdesc().
Michael
(This used to be commit d553b5d72569c1496bfa3de703c9bf15a9a6cb60)
2008-03-17 08:22:33 +01:00
Michael Adam
40e6ec16ee registry: use talloc_stackframe instead of hand crafted temporary context.
Michael
(This used to be commit e4f2c856ec716697af4815491b5ae8ddb263cd51)
2008-03-17 08:22:33 +01:00
Michael Adam
2ce3d4b918 registry: use talloc instead of malloc for tdb data in regdb_store_values().
Michael
(This used to be commit 860316cbe70836882bff16b39f0deb5c12cbd1f3)
2008-03-17 08:22:33 +01:00
Michael Adam
ae7f7e44ff registry: don't use talloc_stackframe() instead of talloc_tos() als temp ctx
in regdb_store_values(). Also provide common exit path for
freeing memory.

Michael
(This used to be commit 7454e426f2ea9aa42620ed5bcb34c85797b9e21b)
2008-03-17 08:22:33 +01:00
Michael Adam
ecd7479be2 registry: don't leak to talloc stack in regdb_fetch_keys().
Michael
(This used to be commit 3a1d79116b693bc25af1106c9a43ffd275ac3d1e)
2008-03-17 08:22:33 +01:00
Michael Adam
3b250d17d9 registry: explicitly use talloc context instead of talloc_tos()
in regdb_fetch_keys().

Michael
(This used to be commit 93ea27a3e23e489a2af3c778684f8a8a4594b567)
2008-03-17 08:22:33 +01:00
Michael Adam
46ea0d333e registry: don't leak on success path in regdb_store_keys().
Michael
(This used to be commit 331d7fd2ea6d8aeb029478a6ab8d4051fa2c03fd)
2008-03-17 08:22:33 +01:00