1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-10 01:18:15 +03:00

netlogon.idl: add netr_ServerAuthenticateKerberos() and related stuff

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15425

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
(cherry picked from commit de8de55a5f)
This commit is contained in:
Stefan Metzmacher 2024-04-30 15:14:47 +02:00 committed by Jule Anger
parent 86ebe5e4e6
commit 1637e23c35
3 changed files with 85 additions and 1 deletions

View File

@ -1036,7 +1036,8 @@ interface netlogon
NETLOGON_NEG_SUPPORTS_AES_SHA2 = 0x00400000,
NETLOGON_NEG_SUPPORTS_AES = 0x01000000,
NETLOGON_NEG_AUTHENTICATED_RPC_LSASS = 0x20000000,
NETLOGON_NEG_AUTHENTICATED_RPC = 0x40000000
NETLOGON_NEG_AUTHENTICATED_RPC = 0x40000000,
NETLOGON_NEG_SUPPORTS_KERBEROS_AUTH = 0x80000000
} netr_NegotiateFlags;
const uint32 NETLOGON_NEG_128BIT = NETLOGON_NEG_STRONG_KEYS;
@ -1885,4 +1886,32 @@ interface netlogon
[in] uint32 dns_ttl,
[in,out,ref] NL_DNS_NAME_INFO_ARRAY *dns_names
);
[todo] void netr_Opnum49NotUsedOnWire(void);
[todo] void netr_Opnum50NotUsedOnWire(void);
[todo] void netr_Opnum51NotUsedOnWire(void);
[todo] void netr_Opnum52NotUsedOnWire(void);
[todo] void netr_Opnum53NotUsedOnWire(void);
/**********************/
/* Function 0x36 (54) */
/* from wireshark: */
/* This is documented as 49 (0x31) but it's 54) */
[todo] NTSTATUS netr_ChainSetClientAttributes();
[todo] void netr_Opnum55NotUsedOnWire(void);
[todo] void netr_Opnum56NotUsedOnWire(void);
[todo] void netr_Opnum57NotUsedOnWire(void);
[todo] void netr_Opnum58NotUsedOnWire(void);
/*****************/
/* Function 0x3b (59) */
[public] NTSTATUS netr_ServerAuthenticateKerberos(
[in,unique] [string,charset(UTF16)] uint16 *server_name,
[in] [string,charset(UTF16)] uint16 *account_name,
[in] netr_SchannelType account_type,
[in] [string,charset(UTF16)] uint16 *computer_name,
[in,out,ref] netr_NegotiateFlags *negotiate_flags,
[out,ref] uint32 *rid
);
}

View File

@ -2906,6 +2906,31 @@ NTSTATUS _netr_DsrUpdateReadOnlyServerDnsRecords(struct pipes_struct *p,
return NT_STATUS_NOT_IMPLEMENTED;
}
DCESRV_COMPAT_NOT_USED_ON_WIRE(netr_Opnum49NotUsedOnWire)
DCESRV_COMPAT_NOT_USED_ON_WIRE(netr_Opnum50NotUsedOnWire)
DCESRV_COMPAT_NOT_USED_ON_WIRE(netr_Opnum51NotUsedOnWire)
DCESRV_COMPAT_NOT_USED_ON_WIRE(netr_Opnum52NotUsedOnWire)
DCESRV_COMPAT_NOT_USED_ON_WIRE(netr_Opnum53NotUsedOnWire)
NTSTATUS _netr_ChainSetClientAttributes(struct pipes_struct *p,
struct netr_ChainSetClientAttributes *r)
{
p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
return NT_STATUS_NOT_IMPLEMENTED;
}
DCESRV_COMPAT_NOT_USED_ON_WIRE(netr_Opnum55NotUsedOnWire)
DCESRV_COMPAT_NOT_USED_ON_WIRE(netr_Opnum56NotUsedOnWire)
DCESRV_COMPAT_NOT_USED_ON_WIRE(netr_Opnum57NotUsedOnWire)
DCESRV_COMPAT_NOT_USED_ON_WIRE(netr_Opnum58NotUsedOnWire)
NTSTATUS _netr_ServerAuthenticateKerberos(struct pipes_struct *p,
struct netr_ServerAuthenticateKerberos *r)
{
p->fault_state = DCERPC_FAULT_OP_RNG_ERROR;
return NT_STATUS_NOT_IMPLEMENTED;
}
/*
* Define the bind function that will be used by ndr_netlogon_scompat.c,
* included at the bottom of this file.

View File

@ -4776,6 +4776,36 @@ static NTSTATUS dcesrv_netr_DsrUpdateReadOnlyServerDnsRecords(struct dcesrv_call
return NT_STATUS_OK;
}
DCESRV_NOT_USED_ON_WIRE(netr_Opnum49NotUsedOnWire)
DCESRV_NOT_USED_ON_WIRE(netr_Opnum50NotUsedOnWire)
DCESRV_NOT_USED_ON_WIRE(netr_Opnum51NotUsedOnWire)
DCESRV_NOT_USED_ON_WIRE(netr_Opnum52NotUsedOnWire)
DCESRV_NOT_USED_ON_WIRE(netr_Opnum53NotUsedOnWire)
/*
netr_ChainSetClientAttributes
*/
static NTSTATUS dcesrv_netr_ChainSetClientAttributes(struct dcesrv_call_state *dce_call,
TALLOC_CTX *mem_ctx,
struct netr_ChainSetClientAttributes *r)
{
DCESRV_FAULT(DCERPC_FAULT_OP_RNG_ERROR);
}
DCESRV_NOT_USED_ON_WIRE(netr_Opnum55NotUsedOnWire)
DCESRV_NOT_USED_ON_WIRE(netr_Opnum56NotUsedOnWire)
DCESRV_NOT_USED_ON_WIRE(netr_Opnum57NotUsedOnWire)
DCESRV_NOT_USED_ON_WIRE(netr_Opnum58NotUsedOnWire)
/*
netr_ServerAuthenticateKerberos
*/
static NTSTATUS dcesrv_netr_ServerAuthenticateKerberos(struct dcesrv_call_state *dce_call,
TALLOC_CTX *mem_ctx,
struct netr_ServerAuthenticateKerberos *r)
{
DCESRV_FAULT(DCERPC_FAULT_OP_RNG_ERROR);
}
/* include the generated boilerplate */
#include "librpc/gen_ndr/ndr_netlogon_s.c"