1
0
mirror of https://github.com/samba-team/samba.git synced 2025-03-27 22:50:26 +03:00

librpc/idr Use the Samba3 notify.idl in common.

The extra fields in the structure that Samba4 does not use should not
bother it.

Andrew Bartlett

Signed-off-by: Andrew Tridgell <tridge@samba.org>
This commit is contained in:
Andrew Bartlett 2011-05-02 11:10:12 +10:00
parent d057116cc2
commit a772797a38
13 changed files with 16 additions and 79 deletions

View File

@ -41,7 +41,7 @@ interface notify
The max_mask and max_mask_subdir at each depth is the
bitwise or of the filters and subdir filters for all entries
at that depth. This allows a depth to be quickly skipped if
no entries will match the target filter
no entries will match the target filter
*/
typedef struct {
uint32 max_mask;

View File

@ -10,6 +10,7 @@ bld.SAMBA_PIDL_LIST('PIDL',
dbgidl.idl dnsserver.idl echo.idl frsrpc.idl lsa.idl nbt.idl dns.idl
oxidresolver.idl samr.idl server_id.idl srvsvc.idl winreg.idl dcerpc.idl
drsblobs.idl efs.idl frstrans.idl mgmt.idl netlogon.idl
notify.idl
policyagent.idl scerpc.idl svcctl.idl wkssvc.idl eventlog6.idl backupkey.idl
printcap.idl''',
options='--header --ndr-parser --samba3-ndr-server --server --client --python',

View File

@ -202,6 +202,11 @@ bld.SAMBA_SUBSYSTEM('NDR_IDMAP',
public_deps='ndr ndr-standard'
)
bld.SAMBA_SUBSYSTEM('NDR_NOTIFY',
source='gen_ndr/ndr_notify.c',
public_deps='ndr ndr-standard NDR_SERVER_ID NDR_FILE_ID'
)
bld.SAMBA_SUBSYSTEM('NDR_NTLMSSP',
source='ndr/ndr_ntlmssp.c gen_ndr/ndr_ntlmssp.c',
public_deps='ndr ndr-standard'
@ -312,7 +317,8 @@ bld.SAMBA_LIBRARY('ndr-standard',
pc_files='ndr_standard.pc',
deps='''NDR_SECURITY NDR_LSA NDR_SAMR NDR_NETLOGON NDR_EVENTLOG NDR_DFS
NDR_NTSVCS NDR_SVCCTL NDR_INITSHUTDOWN NDR_WKSSVC NDR_SRVSVC NDR_WINREG
NDR_ECHO security NDR_DNS NDR_ATSVC NDR_SPOOLSS NDR_DSSETUP''',
NDR_ECHO security NDR_DNS NDR_ATSVC NDR_SPOOLSS NDR_DSSETUP
NDR_SERVER_ID NDR_NOTIFY''',
public_deps='ndr',
public_headers='gen_ndr/samr.h gen_ndr/ndr_samr.h gen_ndr/lsa.h gen_ndr/netlogon.h gen_ndr/atsvc.h gen_ndr/ndr_atsvc.h gen_ndr/ndr_svcctl.h gen_ndr/svcctl.h',
header_path='gen_ndr'

View File

@ -1604,7 +1604,6 @@ modules:: SHOWFLAGS $(MODULES)
IDL_FILES = librpc/idl/messaging.idl \
librpc/idl/libnetapi.idl \
librpc/idl/notify.idl \
librpc/idl/wbint.idl \
librpc/idl/perfcount.idl \
librpc/idl/secrets.idl \

View File

@ -5,7 +5,7 @@ import os
topinclude=os.path.join(bld.srcnode.abspath(), 'librpc/idl')
bld.SAMBA_PIDL_LIST('PIDL',
'''messaging.idl libnetapi.idl notify.idl
'''messaging.idl libnetapi.idl
perfcount.idl secrets.idl libnet_join.idl''',
options='--includedir=%s --header --ndr-parser' % topinclude,
output_dir='../gen_ndr')

View File

@ -15,11 +15,6 @@ bld.SAMBA3_SUBSYSTEM('NDR_MESSAGING',
public_deps='ndr NDR_SERVER_ID'
)
bld.SAMBA3_SUBSYSTEM('NDR_NOTIFY3',
source='gen_ndr/ndr_notify.c',
public_deps='ndr NDR_FILE_ID NDR_SERVER_ID'
)
bld.SAMBA3_SUBSYSTEM('NDR_SECRETS',
source='gen_ndr/ndr_secrets.c',
public_deps='ndr'

View File

@ -888,7 +888,7 @@ bld.SAMBA3_LIBRARY('smbd_base',
PARAM_WITHOUT_REG samba3core LIBSMB POPT_SAMBA3 KRBCLIENT AVAHI
LIBMSRPC_GEN msrpc3 ads LIBADS_SERVER LIBADS_PRINTER
vfs vfs_default vfs_posixacl auth rpc LOCKING LIBAFS LIBAFS_SETTOKEN PROFILE
PRINTING PRINTBACKEND NDR_XATTR NDR_NOTIFY3 REGFIO
PRINTING PRINTBACKEND NDR_XATTR NDR_NOTIFY REGFIO
smbconf REG_FULL FNAME_UTIL
LIBCLI_SAMR LIBCLI_LSA3 LIBRPCCLI_NETLOGON LIBCLI_SPOOLSS
RPC_NDR_SRVSVC npa_tstream INIT_NETLOGON INIT_SAMR

View File

@ -1,58 +0,0 @@
#include "idl_types.h"
/*
IDL structures for notify change code
this defines the structures used in the notify database code, and
the change notify buffers
*/
import "server_id.idl";
[
pointer_default(unique)
]
interface notify
{
/* structure used in the notify database */
typedef [public] struct {
server_id server;
uint32 filter; /* filter to apply in this directory */
uint32 subdir_filter; /* filter to apply in child directories */
utf8string path;
uint32 path_len; /* saves some computation on search */
pointer private_data;
} notify_entry;
/*
to allow for efficient search for matching entries, we
divide them by the directory depth, with a separate array
per depth. The entries within each depth are sorted by path,
allowing for a bisection search.
The max_mask and max_mask_subdir at each depth is the
bitwise or of the filters and subdir filters for all entries
at that depth. This allows a depth to be quickly skipped if
no entries will match the target filter
*/
typedef struct {
uint32 max_mask;
uint32 max_mask_subdir;
uint32 num_entries;
notify_entry entries[num_entries];
} notify_depth;
typedef [public] struct {
uint32 num_depths;
notify_depth depth[num_depths];
} notify_array;
/* structure sent between servers in notify messages */
typedef [public] struct {
uint32 action;
utf8string path;
pointer private_data;
} notify_event;
}

View File

@ -5,7 +5,7 @@ import os
topinclude=os.path.join(bld.srcnode.abspath(), 'librpc/idl')
bld.SAMBA_PIDL_LIST('PIDL',
source='''irpc.idl nfs4acl.idl s4_notify.idl ntp_signd.idl
source='''irpc.idl nfs4acl.idl ntp_signd.idl
opendb.idl sasl_helpers.idl winbind.idl
winsif.idl winsrepl.idl winstation.idl''',
options="--includedir=%s --header --ndr-parser --client --python --server" % topinclude,

View File

@ -43,12 +43,6 @@ bld.SAMBA_SUBSYSTEM('NDR_OPENDB',
)
bld.SAMBA_SUBSYSTEM('NDR_NOTIFY',
source='gen_ndr/ndr_s4_notify.c',
public_deps='ndr NDR_SERVER_ID'
)
bld.SAMBA_SUBSYSTEM('NDR_NTP_SIGND',
source='gen_ndr/ndr_ntp_signd.c',
public_deps='ndr'
@ -69,7 +63,7 @@ bld.SAMBA_SUBSYSTEM('NDR_WINBIND',
# create a grouping library to consolidate our samba4 specific NDR code
bld.SAMBA_LIBRARY('ndr-samba4',
source=[],
deps='NDR_WINBIND NDR_IRPC NDR_NFS4ACL NDR_OPENDB NDR_NOTIFY ndr-table',
deps='NDR_WINBIND NDR_IRPC NDR_NFS4ACL NDR_OPENDB ndr-table',
private_library=True,
grouping_library=True
)

View File

@ -30,7 +30,7 @@
#include "messaging/messaging.h"
#include "lib/util/tdb_wrap.h"
#include "lib/messaging/irpc.h"
#include "librpc/gen_ndr/ndr_s4_notify.h"
#include "librpc/gen_ndr/ndr_notify.h"
#include "../lib/util/dlinklist.h"
#include "ntvfs/common/ntvfs_common.h"
#include "ntvfs/sysdep/sys_notify.h"

View File

@ -332,7 +332,7 @@ struct ntvfs_critical_sizes {
struct imessaging_context;
#include "librpc/gen_ndr/security.h"
#include "librpc/gen_ndr/s4_notify.h"
#include "librpc/gen_ndr/notify.h"
#include "ntvfs/ntvfs_proto.h"
#endif /* _NTVFS_H_ */

View File

@ -17,7 +17,7 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "librpc/gen_ndr/s4_notify.h"
#include "librpc/gen_ndr/notify.h"
#include "param/share.h"
struct sys_notify_context;