1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-23 17:34:34 +03:00

r19786: My last checkin to winreg_StringBuf killed rpccli_winreg_EnumKeys against

W2k3. The server requires that size==0 in the [in] name. Somehow I get the
feeling that something is badly wrong here....

I did not yet recreate the gen_ndr equivalent, see next mail.

Volker
(This used to be commit 016ddce120)
This commit is contained in:
Volker Lendecke 2006-11-19 17:07:59 +00:00 committed by Gerald (Jerry) Carter
parent bfad442144
commit 30db93664c
2 changed files with 19 additions and 1 deletions

View File

@ -1644,6 +1644,24 @@ size_t strlen_m_term(const char *s)
return strlen_m(s) + 1;
}
/*
* Weird helper routine for the winreg pipe: If nothing is around, return 0,
* if a string is there, include the terminator.
*/
size_t strlen_m_term_null(const char *s)
{
size_t len;
if (!s) {
return 0;
}
len = strlen_m(s);
if (len == 0) {
return 0;
}
return len+1;
}
/**
Return a RFC2254 binary string representation of a buffer.
Used in LDAP filters.

View File

@ -132,7 +132,7 @@ import "lsa.idl", "initshutdown.idl", "security.idl";
);
typedef struct {
[value(strlen_m_term(name)*2)] uint16 length;
[value(strlen_m_term_null(name)*2)] uint16 length;
/* size cannot be auto-set by value() as it is the
amount of space the server is allowed to use for this
string in the reply, not its current size */