summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGerald Carter <jerry@samba.org>2005-09-16 20:59:12 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 11:03:40 -0500
commitfbaa3fb8d8724b5bdbd7e0efbbf0e7c2149348c7 (patch)
tree86018e854093b51ee7430ac96eef78e1339318a3
parent20f2305c50dc7eedd3b211a13937b2ed85235971 (diff)
downloadsamba-fbaa3fb8d8724b5bdbd7e0efbbf0e7c2149348c7.tar.gz
samba-fbaa3fb8d8724b5bdbd7e0efbbf0e7c2149348c7.tar.bz2
samba-fbaa3fb8d8724b5bdbd7e0efbbf0e7c2149348c7.zip
r10278: more fixes for bug 3080. Ensure the length on the message string is correct. Windows 2000 is very senstive io this apparently
(This used to be commit 0fd02f1477dbf38ddab614b1171ac66124e15cf3)
-rw-r--r--source3/rpc_parse/parse_reg.c7
-rw-r--r--source3/rpc_parse/parse_shutdown.c6
2 files changed, 13 insertions, 0 deletions
diff --git a/source3/rpc_parse/parse_reg.c b/source3/rpc_parse/parse_reg.c
index c9e09b6528..57157ce17e 100644
--- a/source3/rpc_parse/parse_reg.c
+++ b/source3/rpc_parse/parse_reg.c
@@ -1487,6 +1487,13 @@ void init_reg_q_shutdown(REG_Q_SHUTDOWN *q_u, const char *msg,
if ( msg && *msg ) {
q_u->message = TALLOC_P( get_talloc_ctx(), UNISTR4 );
init_unistr4( q_u->message, msg, UNI_FLAGS_NONE );
+
+ /* Win2000 is apparently very sensitive to these lengths */
+ /* do a special case here */
+
+ q_u->message->string->uni_max_len++;
+ q_u->message->size += 2;
+
}
q_u->timeout = timeout;
diff --git a/source3/rpc_parse/parse_shutdown.c b/source3/rpc_parse/parse_shutdown.c
index eaed686012..dac33243f1 100644
--- a/source3/rpc_parse/parse_shutdown.c
+++ b/source3/rpc_parse/parse_shutdown.c
@@ -37,6 +37,12 @@ void init_shutdown_q_init(SHUTDOWN_Q_INIT *q_s, const char *msg,
if ( msg && *msg ) {
q_s->message = TALLOC_P( get_talloc_ctx(), UNISTR4 );
init_unistr4( q_s->message, msg, UNI_FLAGS_NONE );
+
+ /* Win2000 is apparently very sensitive to these lengths */
+ /* do a special case here */
+
+ q_s->message->string->uni_max_len++;
+ q_s->message->size += 2;
}
q_s->timeout = timeout;