3 import
"misc.idl", "security.idl", "nbt.idl";
6 definitions for irpc primitives
8 [ uuid("e770c620-0b06-4b5e-8d87-a26e20f28340"),
10 pointer_default(unique)
14 IRPC_FLAG_REPLY
= 0x0001
17 typedef [public] struct {
26 /******************************************************
27 uptime call - supported by all messaging servers
28 *******************************************************/
29 void irpc_uptime
([out,ref] NTTIME
*start_time
);
31 /******************************************************
32 management calls for the nbt server
33 ******************************************************/
34 typedef [v1_enum] enum {
46 typedef [switch_type(nbtd_info_level
)] union {
47 [case(NBTD_INFO_STATISTICS
)] nbtd_statistics
*stats
;
50 void nbtd_information
(
51 [in] nbtd_info_level level
,
52 [out,switch_is(level
)] nbtd_info info
55 /* Send a GetDCName from the privilaged port (owned by nbtd),
56 * and await a reply */
59 [in] astring domainname
,
60 [in] astring ip_address
,
61 [in] astring my_computername
,
62 [in] astring my_accountname
,
63 [in] uint32 account_control
,
64 [in] dom_sid
*domain_sid
,
65 [out,unique] astring
*dcname
70 } nbtd_proxy_wins_addr
;
72 void nbtd_proxy_wins_challenge
(
74 [in,out] uint32 num_addrs
,
75 [in,out] nbtd_proxy_wins_addr addrs
[num_addrs
]
78 void nbtd_proxy_wins_release_demand
(
80 [in] uint32 num_addrs
,
81 [in] nbtd_proxy_wins_addr addrs
[num_addrs
]
85 Generic Kerberos package call (on the NETLOGON pipe, as a SamLogon)
87 The normal use for this call is to check the PAC signature in the KDC
89 The KDC has the routines to check this, so it is easier to
90 proxy the request over by IRPC than set up the environment
93 void kdc_check_generic_kerberos
(
94 [in] DATA_BLOB generic_request
,
95 [out] DATA_BLOB generic_reply
98 /******************************************************
99 management calls for the smb server
100 ******************************************************/
101 typedef [v1_enum] enum {
102 SMBSRV_INFO_SESSIONS
,
108 astring account_name
;
113 NTTIME last_use_time
;
114 } smbsrv_session_info
;
118 [size_is(num_sessions
)] smbsrv_session_info
*sessions
;
126 NTTIME last_use_time
;
131 [size_is(num_tcons
)] smbsrv_tcon_info
*tcons
;
134 typedef [switch_type(smbsrv_info_level
)] union {
135 [case(SMBSRV_INFO_SESSIONS
)] smbsrv_sessions sessions
;
136 [case(SMBSRV_INFO_TCONS
)] smbsrv_tcons tcons
;
139 void smbsrv_information
(
140 [in] smbsrv_info_level level
,
141 [out,switch_is(level
)] smbsrv_info info
145 called when samba should shutdown
147 void samba_terminate
(