The branch, v4-0-test has been updated via 3bdc906eb63a494f0d8478c13f8330828aa2f725 (commit) via 9dce558206a2ce70c69b9b6c5c3c9c58ee165b1d (commit) via cad2e6c4c13ccd02587e47d13e897e0a327b58eb (commit) from fc6b4f03ebba015a13a6ab93221b0bc3ef8ef2ed (commit)
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v4-0-test - Log ----------------------------------------------------------------- commit 3bdc906eb63a494f0d8478c13f8330828aa2f725 Merge: 9dce558206a2ce70c69b9b6c5c3c9c58ee165b1d fc6b4f03ebba015a13a6ab93221b0bc3ef8ef2ed Author: Andrew Tridgell <[EMAIL PROTECTED]> Date: Wed Aug 20 15:50:58 2008 +1000 Merge commit 'origin/v4-0-test' into v4-0-test commit 9dce558206a2ce70c69b9b6c5c3c9c58ee165b1d Author: Andrew Tridgell <[EMAIL PROTECTED]> Date: Wed Aug 20 15:46:58 2008 +1000 added a LDB_ATTR_FLAG_FIXED so the schema module can mark attributes as never to be removed. commit cad2e6c4c13ccd02587e47d13e897e0a327b58eb Author: Andrew Tridgell <[EMAIL PROTECTED]> Date: Tue Aug 19 17:49:34 2008 +1000 added some comments at the request of a frustrated abartlet ----------------------------------------------------------------------- Summary of changes: source/lib/charset/iconv.c | 7 +++++++ source/lib/ldb/common/ldb_attributes.c | 5 +++++ source/lib/ldb/include/ldb.h | 4 ++-- 3 files changed, 14 insertions(+), 2 deletions(-) Changeset truncated at 500 lines: diff --git a/source/lib/charset/iconv.c b/source/lib/charset/iconv.c index 4f4bc8f..d4f930b 100644 --- a/source/lib/charset/iconv.c +++ b/source/lib/charset/iconv.c @@ -469,6 +469,9 @@ static size_t iconv_copy(void *cd, const char **inbuf, size_t *inbytesleft, return 0; } +/* + this takes a UTF8 sequence and produces a UTF16 sequence + */ static size_t utf8_pull(void *cd, const char **inbuf, size_t *inbytesleft, char **outbuf, size_t *outbytesleft) { @@ -586,6 +589,10 @@ error: return -1; } + +/* + this takes a UTF16 sequence and produces a UTF8 sequence + */ static size_t utf8_push(void *cd, const char **inbuf, size_t *inbytesleft, char **outbuf, size_t *outbytesleft) { diff --git a/source/lib/ldb/common/ldb_attributes.c b/source/lib/ldb/common/ldb_attributes.c index ab6aa0b..1e69f41 100644 --- a/source/lib/ldb/common/ldb_attributes.c +++ b/source/lib/ldb/common/ldb_attributes.c @@ -157,6 +157,11 @@ void ldb_schema_attribute_remove(struct ldb_context *ldb, const char *name) return; } + /* FIXED attributes are never removed */ + if (a->flags & LDB_ATTR_FLAG_FIXED) { + return; + } + if (a->flags & LDB_ATTR_FLAG_ALLOCATED) { talloc_free(discard_const_p(char, a->name)); } diff --git a/source/lib/ldb/include/ldb.h b/source/lib/ldb/include/ldb.h index 0338ae1..7ce6103 100644 --- a/source/lib/ldb/include/ldb.h +++ b/source/lib/ldb/include/ldb.h @@ -358,9 +358,9 @@ const struct ldb_schema_attribute *ldb_schema_attribute_by_name(struct ldb_conte #define LDB_ATTR_FLAG_ALLOCATED (1<<1) /** - The attribute is constructed from other attributes + The attribute is supplied by the application and should not be removed */ -#define LDB_ATTR_FLAG_CONSTRUCTED (1<<1) +#define LDB_ATTR_FLAG_FIXED (1<<2) /** LDAP attribute syntax for a DN -- Samba Shared Repository