Print this page
1575 untangle libmlrpc from SMB server
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Reviewed by: Toomas Soome <tsoome@me.com>
Approved by: Richard Lowe <richlowe@richlowe.net>
NEX-15052 Need a way to add appliance local user/group ACE from Windows
Reviewed by: Gordon Ross <gordon.ross@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
NEX-15052 Need a way to add appliance local user/group ACE from Windows
Reviewed by: Gordon Ross <gordon.ross@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
NEX-3106 ACL editor crash in Windows 2012 R2
Reviewed by: Kevin Crowe <kevin.crowe@nexenta.com>
Reviewed by: Alek Pinchuk <alek.pinchuk@nexenta.com>
re #12435 rb3958 r10 is added 2 times to panic info
re #12393 rb3935 Kerberos and smbd disagree about who is our AD server
@@ -19,21 +19,21 @@
* CDDL HEADER END
*/
/*
* Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2015 Nexenta Systems, Inc. All rights reserved.
+ * Copyright 2017 Nexenta Systems, Inc. All rights reserved.
*/
#ifndef _MLSVC_SAM_NDL_
#define _MLSVC_SAM_NDL_
/*
* Security Accounts Manager RPC (SAMR) interface definition.
*/
-#include "ndrtypes.ndl"
+#include <libmlrpc/ndrtypes.ndl>
/* Windows NT */
#define SAMR_OPNUM_Connect 0x00 /* SamrConnect */
#define SAMR_OPNUM_CloseHandle 0x01
#define SAMR_OPNUM_SetSecObject 0x02
@@ -361,11 +361,11 @@
* and for the benefit of our client-side code.
*/
#ifndef NDRGEN
#define SAMR_USER_PWLEN 256
struct samr_user_password {
- smb_wchar_t Buffer[SAMR_USER_PWLEN];
+ ndr_wchar_t Buffer[SAMR_USER_PWLEN];
DWORD Length;
};
#endif /* NDRGEN */
/* SAMPR_ENCRYPTED_USER_PASSWORD */
@@ -486,10 +486,37 @@
};
/*
***********************************************************************
+ * QuerySecObject
+ *
+ * Returns the SecurityDescriptor of the object. Support not complete.
+ *
+ * QuerySecObject (
+ * IN samr_handle_t obj_handle,
+ * IN SECURITY_INFO secinfo,
+ * OUT samr_sd_t *sd,
+ * OUT DWORD status
+ * )
+ *
+ ***********************************************************************
+ */
+
+typedef DWORD SECURITY_INFO;
+
+OPERATION(SAMR_OPNUM_QuerySecObject)
+struct samr_QuerySecObject {
+ IN samr_handle_t obj_handle;
+ IN SECURITY_INFO secinfo;
+ OUT samr_sd_t *sd;
+ OUT DWORD status;
+};
+
+
+/*
+ ***********************************************************************
* LookupDomain: lookup up the domain SID.
***********************************************************************
*/
OPERATION(SAMR_OPNUM_LookupDomain)
struct samr_LookupDomain {
@@ -1390,10 +1417,12 @@
union samr_interface {
CASE(SAMR_OPNUM_Connect)
struct samr_Connect Connect;
CASE(SAMR_OPNUM_CloseHandle)
struct samr_CloseHandle CloseHandle;
+ CASE(SAMR_OPNUM_QuerySecObject)
+ struct samr_QuerySecObject QuerySecObject;
CASE(SAMR_OPNUM_LookupDomain)
struct samr_LookupDomain LookupDomain;
CASE(SAMR_OPNUM_EnumLocalDomains)
struct samr_EnumLocalDomain EnumLocalDomain;
CASE(SAMR_OPNUM_OpenDomain)