1
0
mirror of https://github.com/samba-team/samba.git synced 2025-08-04 08:22:08 +03:00

s4:registry - move the UTF16 length calculation for "reg_key_get_info" into the RPC server code

It does fit better there.
This commit is contained in:
Matthias Dieter Wallnöfer
2010-03-29 20:36:32 +02:00
parent 8efea42948
commit 90d2902c73
2 changed files with 9 additions and 8 deletions

View File

@ -916,9 +916,6 @@ static WERROR ldb_get_key_info(TALLOC_CTX *mem_ctx,
el = ldb_msg_find_element(kd->subkeys[i], "key"); el = ldb_msg_find_element(kd->subkeys[i], "key");
*max_subkeynamelen = MAX(*max_subkeynamelen, el->values[0].length); *max_subkeynamelen = MAX(*max_subkeynamelen, el->values[0].length);
} }
/* for UTF16 encoding */
*max_subkeynamelen *= 2;
} }
if (max_valnamelen != NULL || max_valbufsize != NULL) { if (max_valnamelen != NULL || max_valbufsize != NULL) {
@ -948,11 +945,6 @@ static WERROR ldb_get_key_info(TALLOC_CTX *mem_ctx,
talloc_free(data.data); talloc_free(data.data);
} }
} }
if (max_valnamelen != NULL) {
/* for UTF16 encoding */
*max_valnamelen *= 2;
}
} }
talloc_free(default_value.data); talloc_free(default_value.data);

View File

@ -464,6 +464,15 @@ static WERROR dcesrv_winreg_QueryInfoKey(struct dcesrv_call_state *dce_call,
r->out.last_changed_time, r->out.max_subkeylen, r->out.last_changed_time, r->out.max_subkeylen,
r->out.max_valnamelen, r->out.max_valbufsize); r->out.max_valnamelen, r->out.max_valbufsize);
if (r->out.max_subkeylen != NULL) {
/* for UTF16 encoding */
*r->out.max_subkeylen *= 2;
}
if (r->out.max_valnamelen != NULL) {
/* for UTF16 encoding */
*r->out.max_valnamelen *= 2;
}
if (classname != NULL) { if (classname != NULL) {
r->out.classname->name = classname; r->out.classname->name = classname;
r->out.classname->name_len = 2*strlen_m_term(classname); r->out.classname->name_len = 2*strlen_m_term(classname);