mirror of
https://github.com/samba-team/samba.git
synced 2025-03-27 22:50:26 +03:00
r21762: Fix the build by enabling shared modules and adding the config.*
files. Add norify_watch and chflags operations. Fix a bunch of warnings. (This used to be commit 1106db7ea148253e3b5f0806b2d5efcd094b202e)
This commit is contained in:
parent
db32963181
commit
70d5f417ab
@ -47,5 +47,5 @@ clean:
|
||||
rm -f core *~ *% *.bak *.o *.$(SHLIBEXT)
|
||||
|
||||
distclean: clean
|
||||
rm config.* Makefile
|
||||
rm -f config.status config.cache Makefile
|
||||
|
||||
|
1465
examples/VFS/config.guess
vendored
Executable file
1465
examples/VFS/config.guess
vendored
Executable file
File diff suppressed because it is too large
Load Diff
1579
examples/VFS/config.sub
vendored
Executable file
1579
examples/VFS/config.sub
vendored
Executable file
File diff suppressed because it is too large
Load Diff
@ -182,6 +182,10 @@ PICFLAGS=""
|
||||
PICSUFFIX="po"
|
||||
SHLIBEXT="so"
|
||||
|
||||
# Since we are not embedded in the Samba tree, building shared modules is
|
||||
# really the only option.
|
||||
enable_shared=yes
|
||||
|
||||
if test "$enable_shared" = "yes"; then
|
||||
# this bit needs to be modified for each OS that is suported by
|
||||
# smbwrapper. You need to specify how to created a shared library and
|
||||
|
@ -38,6 +38,11 @@
|
||||
* --metze
|
||||
*/
|
||||
|
||||
/* NOTE: As of approximately Samba 3.0.24, the vfswrap_* functions are not
|
||||
* global symbols. They are included here only as an pointer that opaque
|
||||
* operations should not call further into the VFS.
|
||||
*/
|
||||
|
||||
static int skel_connect(vfs_handle_struct *handle, const char *service, const char *user)
|
||||
{
|
||||
return 0;
|
||||
@ -236,6 +241,7 @@ static int skel_symlink(vfs_handle_struct *handle, const char *oldpath, const c
|
||||
return vfswrap_symlink(NULL, oldpath, newpath);
|
||||
}
|
||||
|
||||
|
||||
static int skel_readlink(vfs_handle_struct *handle, const char *path, char *buf, size_t bufsiz)
|
||||
{
|
||||
return vfswrap_readlink(NULL, path, buf, bufsiz);
|
||||
@ -256,25 +262,43 @@ static char *skel_realpath(vfs_handle_struct *handle, const char *path, char *r
|
||||
return vfswrap_realpath(NULL, path, resolved_path);
|
||||
}
|
||||
|
||||
static size_t skel_fget_nt_acl(vfs_handle_struct *handle, files_struct *fsp, int fd, uint32 security_info, struct security_descriptor_info **ppdesc)
|
||||
static NTSTATUS skel_notify_watch(struct vfs_handle_struct *handle,
|
||||
struct sys_notify_context *ctx, struct notify_entry *e,
|
||||
void (*callback)(struct sys_notify_context *ctx, void *private_data, struct notify_event *ev),
|
||||
void *private_data, void *handle_p)
|
||||
{
|
||||
return NT_STATUS_NOT_SUPPORTED;
|
||||
}
|
||||
|
||||
static int skel_chflags(vfs_handle_struct *handle, const char *path, uint flags)
|
||||
{
|
||||
errno = ENOSYS;
|
||||
return -1;
|
||||
}
|
||||
|
||||
static size_t skel_fget_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
|
||||
int fd, uint32 security_info, SEC_DESC **ppdesc)
|
||||
{
|
||||
errno = ENOSYS;
|
||||
return 0;
|
||||
}
|
||||
|
||||
static size_t skel_get_nt_acl(vfs_handle_struct *handle, files_struct *fsp, const char *name, uint32 security_info, struct security_descriptor_info **ppdesc)
|
||||
static size_t skel_get_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
|
||||
const char *name, uint32 security_info, SEC_DESC **ppdesc)
|
||||
{
|
||||
errno = ENOSYS;
|
||||
return 0;
|
||||
}
|
||||
|
||||
static BOOL skel_fset_nt_acl(vfs_handle_struct *handle, files_struct *fsp, int fd, uint32 security_info_sent, struct security_descriptor_info *psd)
|
||||
static BOOL skel_fset_nt_acl(vfs_handle_struct *handle, files_struct *fsp, int
|
||||
fd, uint32 security_info_sent, SEC_DESC *psd)
|
||||
{
|
||||
errno = ENOSYS;
|
||||
return False;
|
||||
}
|
||||
|
||||
static BOOL skel_set_nt_acl(vfs_handle_struct *handle, files_struct *fsp, const char *name, uint32 security_info_sent, struct security_descriptor_info *psd)
|
||||
static BOOL skel_set_nt_acl(vfs_handle_struct *handle, files_struct *fsp, const
|
||||
char *name, uint32 security_info_sent, SEC_DESC *psd)
|
||||
{
|
||||
errno = ENOSYS;
|
||||
return False;
|
||||
@ -587,6 +611,10 @@ static vfs_op_tuple skel_op_tuples[] = {
|
||||
{SMB_VFS_OP(skel_link), SMB_VFS_OP_LINK, SMB_VFS_LAYER_OPAQUE},
|
||||
{SMB_VFS_OP(skel_mknod), SMB_VFS_OP_MKNOD, SMB_VFS_LAYER_OPAQUE},
|
||||
{SMB_VFS_OP(skel_realpath), SMB_VFS_OP_REALPATH, SMB_VFS_LAYER_OPAQUE},
|
||||
{SMB_VFS_OP(skel_notify_watch), SMB_VFS_OP_NOTIFY_WATCH, SMB_VFS_LAYER_OPAQUE},
|
||||
{SMB_VFS_OP(skel_chflags), SMB_VFS_OP_CHFLAGS, SMB_VFS_LAYER_OPAQUE},
|
||||
|
||||
|
||||
|
||||
/* NT File ACL operations */
|
||||
|
||||
|
@ -212,7 +212,7 @@ static char *skel_getwd(vfs_handle_struct *handle, char *buf)
|
||||
|
||||
static int skel_ntimes(vfs_handle_struct *handle, const char *path, const struct timespec ts[2])
|
||||
{
|
||||
return SMB_VFS_NEXT_NTIMES(handle, path, ts[2]);
|
||||
return SMB_VFS_NEXT_NTIMES(handle, path, ts);
|
||||
}
|
||||
|
||||
static int skel_ftruncate(vfs_handle_struct *handle, files_struct *fsp, int fd, SMB_OFF_T offset)
|
||||
@ -255,22 +255,40 @@ static char *skel_realpath(vfs_handle_struct *handle, const char *path, char *r
|
||||
return SMB_VFS_NEXT_REALPATH(handle, path, resolved_path);
|
||||
}
|
||||
|
||||
static size_t skel_fget_nt_acl(vfs_handle_struct *handle, files_struct *fsp, int fd, uint32 security_info, struct security_descriptor_info **ppdesc)
|
||||
static NTSTATUS skel_notify_watch(struct vfs_handle_struct *handle,
|
||||
struct sys_notify_context *ctx, struct notify_entry *e,
|
||||
void (*callback)(struct sys_notify_context *ctx, void *private_data, struct notify_event *ev),
|
||||
void *private_data, void *handle_p)
|
||||
{
|
||||
return SMB_VFS_NEXT_NOTIFY_WATCH(handle, ctx, e, callback,
|
||||
private_data, handle_p);
|
||||
}
|
||||
|
||||
static int skel_chflags(vfs_handle_struct *handle, const char *path, uint flags)
|
||||
{
|
||||
return SMB_VFS_NEXT_CHFLAGS(handle, path, flags);
|
||||
}
|
||||
|
||||
static size_t skel_fget_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
|
||||
int fd, uint32 security_info, SEC_DESC **ppdesc)
|
||||
{
|
||||
return SMB_VFS_NEXT_FGET_NT_ACL(handle, fsp, fd, security_info, ppdesc);
|
||||
}
|
||||
|
||||
static size_t skel_get_nt_acl(vfs_handle_struct *handle, files_struct *fsp, const char *name, uint32 security_info, struct security_descriptor_info **ppdesc)
|
||||
static size_t skel_get_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
|
||||
const char *name, uint32 security_info, SEC_DESC **ppdesc)
|
||||
{
|
||||
return SMB_VFS_NEXT_GET_NT_ACL(handle, fsp, name, security_info, ppdesc);
|
||||
}
|
||||
|
||||
static BOOL skel_fset_nt_acl(vfs_handle_struct *handle, files_struct *fsp, int fd, uint32 security_info_sent, struct security_descriptor_info *psd)
|
||||
static BOOL skel_fset_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
|
||||
int fd, uint32 security_info_sent, SEC_DESC *psd)
|
||||
{
|
||||
return SMB_VFS_NEXT_FSET_NT_ACL(handle, fsp, fd, security_info_sent, psd);
|
||||
}
|
||||
|
||||
static BOOL skel_set_nt_acl(vfs_handle_struct *handle, files_struct *fsp, const char *name, uint32 security_info_sent, struct security_descriptor_info *psd)
|
||||
static BOOL skel_set_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
|
||||
const char *name, uint32 security_info_sent, SEC_DESC *psd)
|
||||
{
|
||||
return SMB_VFS_NEXT_SET_NT_ACL(handle, fsp, name, security_info_sent, psd);
|
||||
}
|
||||
@ -554,6 +572,8 @@ static vfs_op_tuple skel_op_tuples[] = {
|
||||
{SMB_VFS_OP(skel_link), SMB_VFS_OP_LINK, SMB_VFS_LAYER_TRANSPARENT},
|
||||
{SMB_VFS_OP(skel_mknod), SMB_VFS_OP_MKNOD, SMB_VFS_LAYER_TRANSPARENT},
|
||||
{SMB_VFS_OP(skel_realpath), SMB_VFS_OP_REALPATH, SMB_VFS_LAYER_TRANSPARENT},
|
||||
{SMB_VFS_OP(skel_notify_watch), SMB_VFS_OP_NOTIFY_WATCH, SMB_VFS_LAYER_TRANSPARENT},
|
||||
{SMB_VFS_OP(skel_chflags), SMB_VFS_OP_CHFLAGS, SMB_VFS_LAYER_TRANSPARENT},
|
||||
|
||||
/* NT File ACL operations */
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user