helpstring("winbind parent-child protocol"),
no_srv_register
]
-interface wbint
+interface winbind
{
+ /* Private methods */
+
void wbint_Ping(
[in] uint32 in_data,
[out] uint32 *out_data
[out,string,charset(UTF8)] char **dcname
);
- NTSTATUS wbint_DsrUpdateReadOnlyServerDnsRecords(
+ /* Public methods available via IRPC */
+
+ typedef [switch_type(uint16)] union netr_LogonLevel netr_LogonLevel;
+ typedef [switch_type(uint16)] union netr_Validation netr_Validation;
+
+ /*
+ * do a netr_LogonSamLogon() against the right DC
+ */
+ NTSTATUS winbind_SamLogon(
+ [in] uint16 logon_level,
+ [in] [switch_is(logon_level)] netr_LogonLevel logon,
+ [in] uint16 validation_level,
+ [out] [switch_is(validation_level)] netr_Validation validation,
+ [out] uint8 authoritative
+ );
+
+ NTSTATUS winbind_DsrUpdateReadOnlyServerDnsRecords(
[in,unique] [string,charset(UTF16)] uint16 *site_name,
[in] uint32 dns_ttl,
[in,out,ref] NL_DNS_NAME_INFO_ARRAY *dns_names
);
+
}
'dnsp.idl nfs4acl.idl',
options='--header --ndr-parser --client --python',
output_dir='../gen_ndr')
+
+bld.SAMBA_PIDL_LIST('PIDL',
+ 'winbind.idl',
+ options='--header --ndr-parser --samba3-ndr-server --client --python',
+ output_dir='../gen_ndr')
pc_files=[],
public_headers='rpc/rpc_common.h',
vnum='0.0.1')
+
+bld.SAMBA_SUBSYSTEM('NDR_WINBIND',
+ source='gen_ndr/ndr_winbind.c',
+ public_deps='ndr'
+ )
+
+bld.SAMBA_SUBSYSTEM('RPC_NDR_WINBIND',
+ source='gen_ndr/ndr_winbind_c.c',
+ public_deps='dcerpc NDR_WINBIND'
+ )
+
+bld.SAMBA3_SUBSYSTEM('SRV_NDR_WINBIND',
+ source='gen_ndr/srv_winbind.c',
+ public_deps='NDR_WINBIND'
+ )
''',
options='--includedir=%s --header --ndr-parser' % topinclude,
output_dir='../gen_ndr')
-
-bld.SAMBA_PIDL_LIST('PIDL',
- 'wbint.idl',
- options='--includedir=%s --header --ndr-parser --samba3-ndr-server --client' % topinclude,
- output_dir='../gen_ndr')
public_deps='ndr'
)
-bld.SAMBA3_SUBSYSTEM('NDR_WBINT',
- source='gen_ndr/ndr_wbint.c',
- public_deps='ndr'
- )
-
-bld.SAMBA3_SUBSYSTEM('RPC_NDR_WBINT',
- source='../librpc/gen_ndr/ndr_wbint_c.c',
- public_deps='dcerpc NDR_WBINT'
- )
-
-bld.SAMBA3_SUBSYSTEM('SRV_NDR_WBINT',
- source='../librpc/gen_ndr/srv_wbint.c',
- public_deps='NDR_WBINT'
- )
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
struct wb_dsgetdcname_state {
struct netr_DsRGetDCNameInfo *dcinfo;
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
struct wb_fill_pwent_state {
struct tevent_context *ev;
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
#include "../libcli/security/security.h"
struct wb_getgrsid_state {
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
#include "../libcli/security/security.h"
struct wb_getpwsid_state {
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
#include "../libcli/security/security.h"
#include "passdb/machine_sid.h"
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
#include "idmap_cache.h"
#include "idmap.h"
#include "../libcli/security/security.h"
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
#include "../librpc/gen_ndr/ndr_security.h"
#include "../libcli/security/security.h"
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
#include "../libcli/security/security.h"
struct wb_lookupname_state {
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
#include "../libcli/security/security.h"
struct wb_lookupsid_state {
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
#include "../libcli/security/security.h"
#include "passdb/machine_sid.h"
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
struct wb_lookupuseraliases_state {
struct tevent_context *ev;
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
#include "../libcli/security/security.h"
struct wb_lookupusergroups_state {
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
#include "passdb/machine_sid.h"
struct wb_next_grent_state {
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
#include "passdb/machine_sid.h"
struct wb_next_pwent_state {
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
struct wb_query_user_list_state {
struct wbint_userinfos users;
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
#include "../libcli/security/security.h"
struct wb_queryuser_state {
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
struct wb_seqnum_state {
uint32_t seqnum;
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
struct wb_seqnums_state {
int num_domains;
#include "winbindd.h"
#include "../libcli/security/security.h"
#include "idmap_cache.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
struct wb_sids2xids_state {
struct tevent_context *ev;
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
#include "idmap_cache.h"
#include "idmap.h"
#include "../libcli/security/security.h"
#include "source4/lib/messaging/irpc.h"
#include "source4/lib/messaging/messaging.h"
#include "lib/param/param.h"
-#include "source4/librpc/gen_ndr/ndr_winbind.h"
+#include "librpc/gen_ndr/ndr_winbind.h"
#undef DBGC_CLASS
#define DBGC_CLASS DBGC_WINBIND
#include "nsswitch/winbind_struct_protocol.h"
#include "nsswitch/libwbclient/wbclient.h"
#include "librpc/gen_ndr/dcerpc.h"
-#include "librpc/gen_ndr/wbint.h"
+#include "librpc/gen_ndr/winbind.h"
#include "talloc_dict.h"
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
struct winbindd_allocate_gid_state {
uint64_t gid;
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
struct winbindd_allocate_uid_state {
uint64_t uid;
#include "winbindd.h"
#include "tdb_validate.h"
#include "../libcli/auth/libcli_auth.h"
-#include "../librpc/gen_ndr/ndr_wbint.h"
+#include "../librpc/gen_ndr/ndr_winbind.h"
#include "ads.h"
#include "nss_info.h"
#include "../libcli/security/security.h"
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
struct winbindd_change_machine_acct_state {
uint8_t dummy;
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
struct winbindd_check_machine_acct_state {
uint8_t dummy;
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
struct winbindd_dsgetdcname_state {
struct GUID guid;
#include "winbindd/winbindd.h"
#include "winbindd/winbindd_proto.h"
#include "ntdomain.h"
-#include "librpc/gen_ndr/srv_wbint.h"
+#include "librpc/gen_ndr/srv_winbind.h"
struct wbint_bh_state {
struct winbindd_domain *domain;
h = dcerpc_binding_handle_create(mem_ctx,
&wbint_bh_ops,
NULL,
- &ndr_table_wbint,
+ &ndr_table_winbind,
&hs,
struct wbint_bh_state,
__location__);
int num_fns;
bool ret;
- wbint_get_pipe_fns(&fns, &num_fns);
+ winbind_get_pipe_fns(&fns, &num_fns);
if (state->request->data.ndrcmd >= num_fns) {
return WINBINDD_ERROR;
#include "winbindd/winbindd_proto.h"
#include "rpc_client/cli_pipe.h"
#include "ntdomain.h"
-#include "librpc/gen_ndr/srv_wbint.h"
+#include "librpc/gen_ndr/srv_winbind.h"
#include "../librpc/gen_ndr/ndr_netlogon_c.h"
#include "idmap.h"
#include "../libcli/security/security.h"
return NT_STATUS_OK;
}
-NTSTATUS _wbint_DsrUpdateReadOnlyServerDnsRecords(struct pipes_struct *p,
- struct wbint_DsrUpdateReadOnlyServerDnsRecords *r)
+NTSTATUS _winbind_DsrUpdateReadOnlyServerDnsRecords(struct pipes_struct *p,
+ struct winbind_DsrUpdateReadOnlyServerDnsRecords *r)
{
struct winbindd_domain *domain;
NTSTATUS status;
return status;
}
+
+NTSTATUS _winbind_SamLogon(struct pipes_struct *p,
+ struct winbind_SamLogon *r)
+{
+ p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
struct winbindd_getdcname_state {
struct netr_DsRGetDCNameInfo *dcinfo;
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
struct winbindd_list_groups_domstate {
struct tevent_req *subreq;
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
struct winbindd_list_users_domstate {
struct tevent_req *subreq;
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
#include "../libcli/security/security.h"
struct winbindd_lookuprids_state {
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
struct winbindd_ping_dc_state {
const char *dcname;
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
#include "librpc/gen_ndr/ndr_winbind_c.h"
#include "source4/lib/messaging/irpc.h"
return NT_STATUS_NO_SUCH_DOMAIN;
}
- subreq = dcerpc_wbint_DsrUpdateReadOnlyServerDnsRecords_send(s, winbind_event_context(),
+ subreq = dcerpc_winbind_DsrUpdateReadOnlyServerDnsRecords_send(s, winbind_event_context(),
dom_child_handle(domain),
req->in.site_name,
req->in.dns_ttl,
DEBUG(5, ("wb_irpc_DsrUpdateReadOnlyServerDnsRecords_callback called\n"));
- status = dcerpc_wbint_DsrUpdateReadOnlyServerDnsRecords_recv(subreq, s, &result);
+ status = dcerpc_winbind_DsrUpdateReadOnlyServerDnsRecords_recv(subreq, s, &result);
any_nt_status_not_ok(status, result, &status);
TALLOC_FREE(subreq);
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
#include "libsmb/nmblib.h"
struct winbindd_wins_byip_state {
#include "includes.h"
#include "winbindd.h"
-#include "librpc/gen_ndr/ndr_wbint_c.h"
+#include "librpc/gen_ndr/ndr_winbind_c.h"
#include "libsmb/nmblib.h"
#include "lib/util/string_wrappers.h"
LIBCLI_SAMR
SLCACHE
RPC_NDR_DSSETUP
- RPC_NDR_WBINT
- SRV_NDR_WBINT
+ RPC_NDR_WINBIND
+ SRV_NDR_WINBIND
RPC_SAMR
RPC_LSARPC
RPC_SERVER
bld.SAMBA_PIDL_LIST('PIDL',
source='''irpc.idl ntp_signd.idl
- opendb.idl sasl_helpers.idl winbind.idl
+ opendb.idl sasl_helpers.idl
winsif.idl winsrepl.idl winstation.idl''',
options="--includedir=%s --header --ndr-parser --client --python --server" % topinclude,
output_dir='../gen_ndr')
)
-bld.SAMBA_SUBSYSTEM('NDR_WINBIND',
- source='gen_ndr/ndr_winbind.c',
- public_deps='NDR_IDMAP ndr ndr-standard'
- )
-
# create a grouping library to consolidate our samba4 specific NDR code
bld.SAMBA_LIBRARY('ndr-samba4',
source=[],
NDR_SASL_HELPERS NDR_NOTIFY NDR_WINBIND NDR_FRSRPC NDR_FRSAPI
NDR_FRSTRANS NDR_NFS4ACL NDR_NTP_SIGND NDR_DCOM NDR_WMI
NDR_NAMED_PIPE_AUTH NDR_NTLMSSP NDR_DFSBLOBS NDR_DNSP
- NDR_NTPRINTING NDR_DNS NDR_BACKUPKEY NDR_PREG NDR_WBINT''',
+ NDR_NTPRINTING NDR_DNS NDR_BACKUPKEY NDR_PREG''',
depends_on='GEN_NDR_TABLES'
)
public_deps='dcerpc NDR_IRPC'
)
-bld.SAMBA_SUBSYSTEM('RPC_NDR_WINBIND',
- source='gen_ndr/ndr_winbind_c.c',
- public_deps='dcerpc NDR_WINBIND'
- )
-
-
bld.SAMBA_LIBRARY('dcerpc-samr',
source='',
pc_files='dcerpc_samr.pc',
)
bld.SAMBA_PYTHON('python_winbind',
- source='gen_ndr/py_winbind.c',
+ source='../../librpc/gen_ndr/py_winbind.c',
deps='RPC_NDR_WINBIND pytalloc-util pyrpc_util python_netlogon',
realname='samba/dcerpc/winbind.so'
)