[SCM] Samba Shared Repository - branch v3-4-test updated -
release-4-0-0alpha7-663-gb5f5d3a
Günther Deschner
gd at samba.org
Mon Apr 6 23:20:37 GMT 2009
The branch, v3-4-test has been updated
via b5f5d3afa4f19b1219d4f20fefa2785811105c0d (commit)
via ab4e2da6cf9d8ef72aa73b2a9a18207b9986305d (commit)
via 10dd219380a2a9ab609be3fb7312795d0fdaab86 (commit)
from f922e22d907d4a99e91f00f001c05b2b35d73a26 (commit)
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-4-test
- Log -----------------------------------------------------------------
commit b5f5d3afa4f19b1219d4f20fefa2785811105c0d
Author: Günther Deschner <gd at samba.org>
Date: Tue Apr 7 01:12:34 2009 +0200
s3: re-run make samba3-idl.
Guenther
(cherry picked from commit eeddbb6f8466d285fd103a3a4da9ebf5afbcb613)
commit ab4e2da6cf9d8ef72aa73b2a9a18207b9986305d
Author: Günther Deschner <gd at samba.org>
Date: Tue Apr 7 01:11:44 2009 +0200
svcctl: Fix svcctl_ControlsAccepted bitmask.
Never ever have 0 value in a bitmask...
pidl should generate at least a warning about those things.
Guenther
(cherry picked from commit 557f38326badcd8e1d2338f76c5717e16ae7a7d3)
commit 10dd219380a2a9ab609be3fb7312795d0fdaab86
Author: Günther Deschner <gd at samba.org>
Date: Tue Apr 7 01:10:41 2009 +0200
s3-svcctl: Fix _svcctl_EnumServicesStatusW() crash bug on too small buffer.
Guenther
(cherry picked from commit 21b083a647997549e8188c6fc0687fdecfaa4cb3)
-----------------------------------------------------------------------
Summary of changes:
librpc/gen_ndr/ndr_svcctl.c | 1 -
librpc/gen_ndr/svcctl.h | 2 +-
librpc/idl/svcctl.idl | 3 ++-
source3/rpc_server/srv_svcctl_nt.c | 4 +++-
4 files changed, 6 insertions(+), 4 deletions(-)
Changeset truncated at 500 lines:
diff --git a/librpc/gen_ndr/ndr_svcctl.c b/librpc/gen_ndr/ndr_svcctl.c
index 6101b7d..3dd61b2 100644
--- a/librpc/gen_ndr/ndr_svcctl.c
+++ b/librpc/gen_ndr/ndr_svcctl.c
@@ -120,7 +120,6 @@ _PUBLIC_ void ndr_print_svcctl_ControlsAccepted(struct ndr_print *ndr, const cha
{
ndr_print_uint32(ndr, name, r);
ndr->depth++;
- ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SVCCTL_ACCEPT_NONE", SVCCTL_ACCEPT_NONE, r);
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SVCCTL_ACCEPT_STOP", SVCCTL_ACCEPT_STOP, r);
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SVCCTL_ACCEPT_PAUSE_CONTINUE", SVCCTL_ACCEPT_PAUSE_CONTINUE, r);
ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SVCCTL_ACCEPT_SHUTDOWN", SVCCTL_ACCEPT_SHUTDOWN, r);
diff --git a/librpc/gen_ndr/svcctl.h b/librpc/gen_ndr/svcctl.h
index 6ba0e4f..16d4821 100644
--- a/librpc/gen_ndr/svcctl.h
+++ b/librpc/gen_ndr/svcctl.h
@@ -9,6 +9,7 @@
#ifndef _HEADER_svcctl
#define _HEADER_svcctl
+#define SVCCTL_ACCEPT_NONE ( 0x00000000 )
#define SERVICE_TYPE_KERNEL_DRIVER ( 0x01 )
#define SERVICE_TYPE_FS_DRIVER ( 0x02 )
#define SERVICE_TYPE_ADAPTER ( 0x04 )
@@ -59,7 +60,6 @@ enum svcctl_ServiceStatus
;
/* bitmap svcctl_ControlsAccepted */
-#define SVCCTL_ACCEPT_NONE ( 0x00000000 )
#define SVCCTL_ACCEPT_STOP ( 0x00000001 )
#define SVCCTL_ACCEPT_PAUSE_CONTINUE ( 0x00000002 )
#define SVCCTL_ACCEPT_SHUTDOWN ( 0x00000004 )
diff --git a/librpc/idl/svcctl.idl b/librpc/idl/svcctl.idl
index 3f99029..4b66d9c 100644
--- a/librpc/idl/svcctl.idl
+++ b/librpc/idl/svcctl.idl
@@ -30,8 +30,9 @@ import "misc.idl", "security.idl";
SVCCTL_PAUSED = 0x00000007
} svcctl_ServiceStatus;
+ const int SVCCTL_ACCEPT_NONE = 0x00000000;
+
typedef [bitmap32bit] bitmap {
- SVCCTL_ACCEPT_NONE = 0x00000000,
SVCCTL_ACCEPT_STOP = 0x00000001,
SVCCTL_ACCEPT_PAUSE_CONTINUE = 0x00000002,
SVCCTL_ACCEPT_SHUTDOWN = 0x00000004,
diff --git a/source3/rpc_server/srv_svcctl_nt.c b/source3/rpc_server/srv_svcctl_nt.c
index 3ca85aa..848cdc2 100644
--- a/source3/rpc_server/srv_svcctl_nt.c
+++ b/source3/rpc_server/srv_svcctl_nt.c
@@ -468,9 +468,11 @@ WERROR _svcctl_EnumServicesStatusW(pipes_struct *p,
}
blob = ndr_push_blob(ndr);
+ if (blob.length >= r->in.buf_size) {
+ memcpy(r->out.service, blob.data, r->in.buf_size);
+ }
}
- r->out.service = blob.data;
*r->out.bytes_needed = (buffer_size > r->in.buf_size) ? buffer_size : r->in.buf_size;
*r->out.services_returned = (uint32)num_services;
*r->out.resume_handle = 0x0;
--
Samba Shared Repository
More information about the samba-cvs
mailing list