summaryrefslogtreecommitdiff
path: root/source
diff options
context:
space:
mode:
authorGerald Carter <jerry@samba.org>2004-09-01 21:03:29 +0000
committerGerald Carter <jerry@samba.org>2004-09-01 21:03:29 +0000
commit78ae4f9378cfc7e884a054088cbd088a2b18a6c8 (patch)
tree2890a157de50551a67e2655620fc82440ed36e1e /source
parentf6eda18efebe9fc559aeb63d06505b5505cd9b41 (diff)
downloadsamba-78ae4f9378cfc7e884a054088cbd088a2b18a6c8.tar.gz
r2176: syncing necessary changes for 3.0.7
svn merge -r 1942:1946 $SVNURL/branches/SAMBA_3_0 svn merge -r 1946:1948 $SVNURL/branches/SAMBA_3_0 svn merge -r 1948:1964 $SVNURL/branches/SAMBA_3_0 svn merge -r 1967:1968 $SVNURL/branches/SAMBA_3_0 svn merge -r 1980:2001 $SVNURL/branches/SAMBA_3_0 svn merge -r 2001:2006 $SVNURL/branches/SAMBA_3_0 svn merge -r 2006:2007 $SVNURL/branches/SAMBA_3_0 svn merge -r 2007:2009 $SVNURL/branches/SAMBA_3_0 svn merge -r 2009:2013 $SVNURL/branches/SAMBA_3_0 svn merge -r 2013:2014 $SVNURL/branches/SAMBA_3_0 svn merge -r 2014:2015 $SVNURL/branches/SAMBA_3_0 svn merge -r 2015:2016 $SVNURL/branches/SAMBA_3_0 svn merge -r 2016:2018 $SVNURL/branches/SAMBA_3_0 svn merge -r 2022:2023 $SVNURL/branches/SAMBA_3_0 svn merge -r 2026:2027 $SVNURL/branches/SAMBA_3_0 svn merge -r 2057:2068 $SVNURL/branches/SAMBA_3_0 svn merge -r 2068:2070 $SVNURL/branches/SAMBA_3_0 svn merge -r 2076:2077 $SVNURL/branches/SAMBA_3_0 svn merge -r 2080:2082 $SVNURL/branches/SAMBA_3_0 svn merge -r 2082:2083 $SVNURL/branches/SAMBA_3_0 svn merge -r 2083:2086 $SVNURL/branches/SAMBA_3_0 svn merge -r 2086:2090 $SVNURL/branches/SAMBA_3_0 svn merge -r 2090:2091 $SVNURL/branches/SAMBA_3_0 svn merge -r 2091:2093 $SVNURL/branches/SAMBA_3_0 svn merge -r 2093:2111 $SVNURL/branches/SAMBA_3_0 svn merge -r 2116:2131 $SVNURL/branches/SAMBA_3_0 svn merge -r 2131:2133 $SVNURL/branches/SAMBA_3_0 svn merge -r 2133:2135 $SVNURL/branches/SAMBA_3_0 svn merge -r 2150:2152 $SVNURL/branches/SAMBA_3_0 svn merge -r 2147:2150 $SVNURL/branches/SAMBA_3_0 svn merge -r 2155:2157 $SVNURL/branches/SAMBA_3_0 svn merge -r 2163:2175 $SVNURL/branches/SAMBA_3_0
Diffstat (limited to 'source')
-rw-r--r--source/Makefile.in12
-rw-r--r--source/VERSION2
-rw-r--r--source/auth/auth_domain.c2
-rw-r--r--source/configure.in9
-rw-r--r--source/include/includes.h6
-rw-r--r--source/include/ntdomain.h2
-rwxr-xr-xsource/include/rpc_spoolss.h1
-rw-r--r--source/lib/pidfile.c7
-rw-r--r--source/lib/util.c8
-rw-r--r--source/lib/util_str.c11
-rw-r--r--source/libads/ldap.c6
-rw-r--r--source/libsmb/samlogon_cache.c11
-rw-r--r--source/modules/vfs_full_audit.c468
-rw-r--r--source/nsswitch/winbindd_ads.c2
-rw-r--r--source/nsswitch/winbindd_cache.c4
-rw-r--r--source/nsswitch/winbindd_pam.c4
-rw-r--r--source/param/loadparm.c67
-rw-r--r--source/printing/notify.c13
-rw-r--r--source/printing/nt_printing.c3
-rw-r--r--source/printing/printing.c29
-rw-r--r--source/printing/printing_db.c2
-rw-r--r--source/rpc_server/srv_samr_nt.c3
-rw-r--r--source/rpc_server/srv_spoolss_nt.c12
-rw-r--r--source/rpcclient/cmd_spoolss.c3
-rw-r--r--source/smbd/chgpasswd.c2
-rw-r--r--source/smbd/filename.c18
-rw-r--r--source/smbd/mangle_hash2.c3
-rw-r--r--source/smbd/open.c13
-rw-r--r--source/smbd/password.c23
-rw-r--r--source/smbd/reply.c27
-rw-r--r--source/smbd/uid.c1
-rw-r--r--source/smbd/vfs.c42
-rw-r--r--source/tdb/tdb.c2
-rw-r--r--source/utils/ntlm_auth.c2
34 files changed, 410 insertions, 410 deletions
diff --git a/source/Makefile.in b/source/Makefile.in
index 0fa46f6f9e0..5d3462913c1 100644
--- a/source/Makefile.in
+++ b/source/Makefile.in
@@ -34,9 +34,6 @@ PASSDB_LIBS=@PASSDB_LIBS@
IDMAP_LIBS=@IDMAP_LIBS@
KRB5LIBS=@KRB5_LIBS@
LDAP_LIBS=@LDAP_LIBS@
-XML_LIBS=@XML_LIBS@
-MYSQL_LIBS=@MYSQL_LIBS@
-PGSQL_LIBS=@PGSQL_LIBS@
LINK=$(CC) $(FLAGS) $(LDFLAGS)
@@ -838,8 +835,7 @@ bin/rpcclient@EXEEXT@: $(RPCCLIENT_OBJ) @BUILD_POPT@ bin/.dummy
@echo Linking $@
@$(CC) $(FLAGS) -o $@ $(LDFLAGS) $(PASSDB_LIBS) $(RPCCLIENT_OBJ) \
$(DYNEXP) $(TERMLDFLAGS) $(TERMLIBS) $(LIBS) @POPTLIBS@ \
- $(KRB5LIBS) $(LDAP_LIBS) \
- $(XML_LIBS) $(MYSQL_LIBS) $(PGSQL_LIBS)
+ $(KRB5LIBS) $(LDAP_LIBS)
bin/smbclient@EXEEXT@: $(CLIENT_OBJ) @BUILD_POPT@ bin/.dummy
@echo Linking $@
@@ -1119,12 +1115,12 @@ bin/sam.@SHLIBEXT@: $(AUTH_SAM_OBJ:.o=.@PICSUFFIX@)
bin/mysql.@SHLIBEXT@: $(MYSQL_OBJ:.o=.@PICSUFFIX@)
@echo "Building plugin $@"
- @$(SHLD) $(LDSHFLAGS) -o $@ $(MYSQL_OBJ:.o=.@PICSUFFIX@) $(MYSQL_LIBS) \
+ @$(SHLD) $(LDSHFLAGS) -o $@ $(MYSQL_OBJ:.o=.@PICSUFFIX@) @MYSQL_LIBS@ \
@SONAMEFLAG@`basename $@`
bin/pgsql.@SHLIBEXT@: $(PGSQL_OBJ:.o=.@PICSUFFIX@)
@echo "Building plugin $@"
- @$(SHLD) $(LDSHFLAGS) -o $@ $(PGSQL_OBJ:.o=.@PICSUFFIX@) $(PGSQL_LIBS) \
+ @$(SHLD) $(LDSHFLAGS) -o $@ $(PGSQL_OBJ:.o=.@PICSUFFIX@) @PGSQL_LIBS@ \
@SONAMEFLAG@`basename $@`
bin/ldapsam.@SHLIBEXT@: passdb/pdb_ldap.@PICSUFFIX@
@@ -1164,7 +1160,7 @@ bin/macosxfs.@SHLIBEXT@: $(CHARSET_MACOSXFS_OBJ:.o=.@PICSUFFIX@)
bin/xml.@SHLIBEXT@: $(XML_OBJ:.o=.@PICSUFFIX@)
@echo "Building plugin $@"
- @$(SHLD) $(LDSHFLAGS) -o $@ $(XML_OBJ:.o=.@PICSUFFIX@) $(XML_LIBS) \
+ @$(SHLD) $(LDSHFLAGS) -o $@ $(XML_OBJ:.o=.@PICSUFFIX@) @XML_LIBS@ \
@SONAMEFLAG@`basename $@`
bin/audit.@SHLIBEXT@: $(VFS_AUDIT_OBJ:.o=.@PICSUFFIX@)
diff --git a/source/VERSION b/source/VERSION
index 6f2624f0460..ab14d54bdd0 100644
--- a/source/VERSION
+++ b/source/VERSION
@@ -19,7 +19,7 @@
########################################################
SAMBA_VERSION_MAJOR=3
SAMBA_VERSION_MINOR=0
-SAMBA_VERSION_RELEASE=6
+SAMBA_VERSION_RELEASE=7
########################################################
# For 'pre' releases the version will be #
diff --git a/source/auth/auth_domain.c b/source/auth/auth_domain.c
index fdff0b52f96..6483dc143a0 100644
--- a/source/auth/auth_domain.c
+++ b/source/auth/auth_domain.c
@@ -205,7 +205,7 @@ static NTSTATUS domain_client_validate(TALLOC_CTX *mem_ctx,
} else {
nt_status = make_server_info_info3(mem_ctx, user_info->internal_username.str,
user_info->smb_name.str, domain, server_info, &info3);
- netsamlogon_cache_store( mem_ctx, &info3 );
+ netsamlogon_cache_store( mem_ctx, user_info->smb_name.str, &info3 );
}
#if 0
diff --git a/source/configure.in b/source/configure.in
index 4076f654ef8..a35745c2e45 100644
--- a/source/configure.in
+++ b/source/configure.in
@@ -8,10 +8,10 @@ AC_CONFIG_HEADER(include/config.h)
AC_DISABLE_STATIC
AC_ENABLE_SHARED
-SMB_VERSION_STRING=`cat include/version.h | grep 'SAMBA_VERSION_OFFICIAL_STRING' | cut -d '"' -f2`
+SMB_VERSION_STRING=`cat $srcdir/include/version.h | grep 'SAMBA_VERSION_OFFICIAL_STRING' | cut -d '"' -f2`
echo "SAMBA VERSION: ${SMB_VERSION_STRING}"
-SAMBA_VERSION_SVN_REVISION=`cat include/version.h | grep 'SAMBA_VERSION_SVN_REVISION' | cut -d ' ' -f3-`
+SAMBA_VERSION_SVN_REVISION=`cat $srcdir/include/version.h | grep 'SAMBA_VERSION_SVN_REVISION' | cut -d ' ' -f3-`
if test -n "${SAMBA_VERSION_SVN_REVISION}";then
echo "BUILD REVISION: ${SAMBA_VERSION_SVN_REVISION}"
fi
@@ -716,7 +716,7 @@ if test x$enable_cups != xno; then
CFLAGS="$CFLAGS `$CUPS_CONFIG --cflags`"
LDFLAGS="$LDFLAGS `$CUPS_CONFIG --ldflags`"
PRINT_LIBS="$PRINT_LIBS `$CUPS_CONFIG --libs`"
- elif test x$enable_cups == xyes; then
+ elif test x"$enable_cups" == x"yes"; then
AC_MSG_ERROR(Cups support required but cups-config not located. Make sure cups-devel related files are installed.)
fi
fi
@@ -1206,6 +1206,8 @@ if test "$enable_shared" = "yes"; then
fi
AC_DEFINE(STAT_ST_BLOCKSIZE,DEV_BSIZE,[The size of a block])
+ AC_DEFINE(BROKEN_STRNLEN,1,[Does strnlen work correctly])
+ AC_DEFINE(BROKEN_STRNDUP,1,[Does strndup work correctly])
;;
*hpux*) AC_DEFINE(HPUX,1,[Whether the host os is HPUX])
SHLIBEXT="sl"
@@ -2319,7 +2321,6 @@ if test x"$samba_cv_REALPATH_TAKES_NULL" = x"yes"; then
AC_DEFINE(REALPATH_TAKES_NULL,1,[Whether the realpath function allows NULL])
fi
-A
#################################################
# check for smbwrapper support
AC_MSG_CHECKING(whether to use smbwrapper)
diff --git a/source/include/includes.h b/source/include/includes.h
index 09731a56653..1d913d3f32a 100644
--- a/source/include/includes.h
+++ b/source/include/includes.h
@@ -369,12 +369,12 @@
#endif
#if defined (HAVE_NETGROUP)
-#if defined(HAVE_RPCSVC_YP_PROT_H)
-#include <rpcsvc/yp_prot.h>
-#endif
#if defined(HAVE_RPCSVC_YPCLNT_H)
#include <rpcsvc/ypclnt.h>
#endif
+#if defined(HAVE_RPCSVC_YP_PROT_H)
+#include <rpcsvc/yp_prot.h>
+#endif
#endif /* HAVE_NETGROUP */
#if defined(HAVE_SYS_IPC_H)
diff --git a/source/include/ntdomain.h b/source/include/ntdomain.h
index a63272fd18f..45d64cf6331 100644
--- a/source/include/ntdomain.h
+++ b/source/include/ntdomain.h
@@ -4,7 +4,7 @@
Copyright (C) Andrew Tridgell 1992-1997
Copyright (C) Luke Kenneth Casson Leighton 1996-1997
Copyright (C) Paul Ashton 1997
- Copyright (C) Jeremy Allison 200-2004
+ Copyright (C) Jeremy Allison 2000-2004
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
diff --git a/source/include/rpc_spoolss.h b/source/include/rpc_spoolss.h
index d9fc0c6a6ab..cf7d1ba3412 100755
--- a/source/include/rpc_spoolss.h
+++ b/source/include/rpc_spoolss.h
@@ -376,6 +376,7 @@ PRINTER_MESSAGE_INFO;
#define PRINTER_ATTRIBUTE_SAMBA (PRINTER_ATTRIBUTE_RAW_ONLY|\
PRINTER_ATTRIBUTE_SHARED|\
PRINTER_ATTRIBUTE_LOCAL)
+#define PRINTER_ATTRIBUTE_NOT_SAMBA (PRINTER_ATTRIBUTE_NETWORK)
#define NO_PRIORITY 0
#define MAX_PRIORITY 99
diff --git a/source/lib/pidfile.c b/source/lib/pidfile.c
index 1a462bf1287..20a8e82ce23 100644
--- a/source/lib/pidfile.c
+++ b/source/lib/pidfile.c
@@ -49,6 +49,13 @@ pid_t pidfile_pid(const char *name)
}
ret = atoi(pidstr);
+
+ if (ret == 0) {
+ /* Obviously we had some garbage in the pidfile... */
+ DEBUG(1, ("Could not parse contents of pidfile %s\n",
+ pidFile));
+ goto noproc;
+ }
if (!process_exists((pid_t)ret)) {
goto noproc;
diff --git a/source/lib/util.c b/source/lib/util.c
index 554f5ee79da..8d01d9e7c9c 100644
--- a/source/lib/util.c
+++ b/source/lib/util.c
@@ -46,10 +46,6 @@
#include <rpcsvc/nis.h>
-#else /* !WITH_NISPLUS_HOME */
-
-#include "rpcsvc/ypclnt.h"
-
#endif /* WITH_NISPLUS_HOME */
#endif /* HAVE_NETGROUP && WITH_AUTOMOUNT */
@@ -1123,7 +1119,7 @@ static void strip_mount_options( pstring *str)
*******************************************************************/
#ifdef WITH_NISPLUS_HOME
-char *automount_lookup(const char *user_name)
+char *automount_lookup( char *user_name)
{
static fstring last_key = "";
static pstring last_value = "";
@@ -1166,7 +1162,7 @@ char *automount_lookup(const char *user_name)
}
#else /* WITH_NISPLUS_HOME */
-char *automount_lookup(const char *user_name)
+char *automount_lookup( char *user_name)
{
static fstring last_key = "";
static pstring last_value = "";
diff --git a/source/lib/util_str.c b/source/lib/util_str.c
index 1083076edd4..6eee62c14aa 100644
--- a/source/lib/util_str.c
+++ b/source/lib/util_str.c
@@ -1391,6 +1391,7 @@ char *strstr_m(const char *src, const char *findstr)
void strlower_m(char *s)
{
size_t len;
+ int errno_save;
/* this is quite a common operation, so we want it to be
fast. We optimise for the ascii case, knowing that all our
@@ -1408,11 +1409,13 @@ void strlower_m(char *s)
/* I assume that lowercased string takes the same number of bytes
* as source string even in UTF-8 encoding. (VIV) */
len = strlen(s) + 1;
+ errno_save = errno;
errno = 0;
unix_strlower(s,len,s,len);
/* Catch mb conversion errors that may not terminate. */
if (errno)
s[len-1] = '\0';
+ errno = errno_save;
}
/**
@@ -1422,6 +1425,7 @@ void strlower_m(char *s)
void strupper_m(char *s)
{
size_t len;
+ int errno_save;
/* this is quite a common operation, so we want it to be
fast. We optimise for the ascii case, knowing that all our
@@ -1439,11 +1443,13 @@ void strupper_m(char *s)
/* I assume that lowercased string takes the same number of bytes
* as source string even in multibyte encoding. (VIV) */
len = strlen(s) + 1;
+ errno_save = errno;
errno = 0;
unix_strupper(s,len,s,len);
/* Catch mb conversion errors that may not terminate. */
if (errno)
s[len-1] = '\0';
+ errno = errno_save;
}
/**
@@ -1502,7 +1508,7 @@ int fstr_sprintf(fstring s, const char *fmt, ...)
}
-#ifndef HAVE_STRNDUP
+#if !defined(HAVE_STRNDUP) || defined(BROKEN_STRNDUP)
/**
Some platforms don't have strndup.
**/
@@ -1522,7 +1528,7 @@ int fstr_sprintf(fstring s, const char *fmt, ...)
}
#endif
-#ifndef HAVE_STRNLEN
+#if !defined(HAVE_STRNLEN) || defined(BROKEN_STRNLEN)
/**
Some platforms don't have strnlen
**/
@@ -1682,6 +1688,7 @@ BOOL str_list_sub_basic( char **list, const char *smb_name )
return False;
}
+ SAFE_FREE(*list);
*list = tmpstr;
list++;
diff --git a/source/libads/ldap.c b/source/libads/ldap.c
index 78ea9f1497d..d1539b83da7 100644
--- a/source/libads/ldap.c
+++ b/source/libads/ldap.c
@@ -2184,13 +2184,19 @@ BOOL ads_pull_sd(ADS_STRUCT *ads, TALLOC_CTX *mem_ctx,
*/
char *ads_pull_username(ADS_STRUCT *ads, TALLOC_CTX *mem_ctx, void *msg)
{
+#if 0 /* JERRY */
char *ret, *p;
+ /* lookup_name() only works on the sAMAccountName to
+ returning the username portion of userPrincipalName
+ breaks winbindd_getpwnam() */
+
ret = ads_pull_string(ads, mem_ctx, msg, "userPrincipalName");
if (ret && (p = strchr(ret, '@'))) {
*p = 0;
return ret;
}
+#endif
return ads_pull_string(ads, mem_ctx, msg, "sAMAccountName");
}
diff --git a/source/libsmb/samlogon_cache.c b/source/libsmb/samlogon_cache.c
index 4cd642c4e35..0105bc08c3a 100644
--- a/source/libsmb/samlogon_cache.c
+++ b/source/libsmb/samlogon_cache.c
@@ -106,9 +106,10 @@ void netsamlogon_clear_cached_user(TDB_CONTEXT *tdb, NET_USER_INFO_3 *user)
/***********************************************************************
Store a NET_USER_INFO_3 structure in a tdb for later user
+ username should be in UTF-8 format
***********************************************************************/
-BOOL netsamlogon_cache_store(TALLOC_CTX *mem_ctx, NET_USER_INFO_3 *user)
+BOOL netsamlogon_cache_store(TALLOC_CTX *mem_ctx, const char * username, NET_USER_INFO_3 *user)
{
TDB_DATA data;
fstring keystr;
@@ -130,6 +131,14 @@ BOOL netsamlogon_cache_store(TALLOC_CTX *mem_ctx, NET_USER_INFO_3 *user)
slprintf(keystr, sizeof(keystr), "%s", sid_string_static(&user_sid));
DEBUG(10,("netsamlogon_cache_store: SID [%s]\n", keystr));
+
+ /* only Samba fills in the username, not sure why NT doesn't */
+ /* so we fill it in since winbindd_getpwnam() makes use of it */
+
+ if ( !user->uni_user_name.buffer ) {
+ init_unistr2( &user->uni_user_name, username, STR_TERMINATE );
+ init_uni_hdr( &user->hdr_user_name, &user->uni_user_name );
+ }
/* Prepare data */
diff --git a/source/modules/vfs_full_audit.c b/source/modules/vfs_full_audit.c
index 993a8ee4cbe..b27c916a2a2 100644
--- a/source/modules/vfs_full_audit.c
+++ b/source/modules/vfs_full_audit.c
@@ -66,218 +66,218 @@ static int vfs_full_audit_debug_level = DBGC_VFS;
/* Function prototypes */
-static int audit_connect(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_connect(vfs_handle_struct *handle, connection_struct *conn,
const char *svc, const char *user);
-static void audit_disconnect(vfs_handle_struct *handle,
+static void smb_full_audit_disconnect(vfs_handle_struct *handle,
connection_struct *conn);
-static SMB_BIG_UINT audit_disk_free(vfs_handle_struct *handle,
+static SMB_BIG_UINT smb_full_audit_disk_free(vfs_handle_struct *handle,
connection_struct *conn, const char *path,
BOOL small_query, SMB_BIG_UINT *bsize,
SMB_BIG_UINT *dfree, SMB_BIG_UINT *dsize);
-static int audit_get_quota(struct vfs_handle_struct *handle,
+static int smb_full_audit_get_quota(struct vfs_handle_struct *handle,
struct connection_struct *conn,
enum SMB_QUOTA_TYPE qtype, unid_t id,
SMB_DISK_QUOTA *qt);
-static int audit_set_quota(struct vfs_handle_struct *handle,
+static int smb_full_audit_set_quota(struct vfs_handle_struct *handle,
struct connection_struct *conn,
enum SMB_QUOTA_TYPE qtype, unid_t id,
SMB_DISK_QUOTA *qt);
-static DIR *audit_opendir(vfs_handle_struct *handle, connection_struct *conn,
+static DIR *smb_full_audit_opendir(vfs_handle_struct *handle, connection_struct *conn,
const char *fname);
-static struct dirent *audit_readdir(vfs_handle_struct *handle,
+static struct dirent *smb_full_audit_readdir(vfs_handle_struct *handle,
connection_struct *conn, DIR *dirp);
-static int audit_mkdir(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_mkdir(vfs_handle_struct *handle, connection_struct *conn,
const char *path, mode_t mode);
-static int audit_rmdir(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_rmdir(vfs_handle_struct *handle, connection_struct *conn,
const char *path);
-static int audit_closedir(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_closedir(vfs_handle_struct *handle, connection_struct *conn,
DIR *dirp);
-static int audit_open(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_open(vfs_handle_struct *handle, connection_struct *conn,
const char *fname, int flags, mode_t mode);
-static int audit_close(vfs_handle_struct *handle, files_struct *fsp, int fd);
-static ssize_t audit_read(vfs_handle_struct *handle, files_struct *fsp,
+static int smb_full_audit_close(vfs_handle_struct *handle, files_struct *fsp, int fd);
+static ssize_t smb_full_audit_read(vfs_handle_struct *handle, files_struct *fsp,
int fd, void *data, size_t n);
-static ssize_t audit_pread(vfs_handle_struct *handle, files_struct *fsp,
+static ssize_t smb_full_audit_pread(vfs_handle_struct *handle, files_struct *fsp,
int fd, void *data, size_t n, SMB_OFF_T offset);
-static ssize_t audit_write(vfs_handle_struct *handle, files_struct *fsp,
+static ssize_t smb_full_audit_write(vfs_handle_struct *handle, files_struct *fsp,
int fd, const void *data, size_t n);
-static ssize_t audit_pwrite(vfs_handle_struct *handle, files_struct *fsp,
+static ssize_t smb_full_audit_pwrite(vfs_handle_struct *handle, files_struct *fsp,
int fd, const void *data, size_t n,
SMB_OFF_T offset);
-static SMB_OFF_T audit_lseek(vfs_handle_struct *handle, files_struct *fsp,
+static SMB_OFF_T smb_full_audit_lseek(vfs_handle_struct *handle, files_struct *fsp,
int filedes, SMB_OFF_T offset, int whence);
-static ssize_t audit_sendfile(vfs_handle_struct *handle, int tofd,
+static ssize_t smb_full_audit_sendfile(vfs_handle_struct *handle, int tofd,
files_struct *fsp, int fromfd,
const DATA_BLOB *hdr, SMB_OFF_T offset,
size_t n);
-static int audit_rename(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_rename(vfs_handle_struct *handle, connection_struct *conn,
const char *old, const char *new);
-static int audit_fsync(vfs_handle_struct *handle, files_struct *fsp, int fd);
-static int audit_stat(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_fsync(vfs_handle_struct *handle, files_struct *fsp, int fd);
+static int smb_full_audit_stat(vfs_handle_struct *handle, connection_struct *conn,
const char *fname, SMB_STRUCT_STAT *sbuf);
-static int audit_fstat(vfs_handle_struct *handle, files_struct *fsp, int fd,
+static int smb_full_audit_fstat(vfs_handle_struct *handle, files_struct *fsp, int fd,
SMB_STRUCT_STAT *sbuf);
-static int audit_lstat(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_lstat(vfs_handle_struct *handle, connection_struct *conn,
const char *path, SMB_STRUCT_STAT *sbuf);
-static int audit_unlink(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_unlink(vfs_handle_struct *handle, connection_struct *conn,
const char *path);
-static int audit_chmod(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_chmod(vfs_handle_struct *handle, connection_struct *conn,
const char *path, mode_t mode);
-static int audit_fchmod(vfs_handle_struct *handle, files_struct *fsp, int fd,
+static int smb_full_audit_fchmod(vfs_handle_struct *handle, files_struct *fsp, int fd,
mode_t mode);
-static int audit_chown(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_chown(vfs_handle_struct *handle, connection_struct *conn,
const char *path, uid_t uid, gid_t gid);
-static int audit_fchown(vfs_handle_struct *handle, files_struct *fsp, int fd,
+static int smb_full_audit_fchown(vfs_handle_struct *handle, files_struct *fsp, int fd,
uid_t uid, gid_t gid);
-static int audit_chdir(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_chdir(vfs_handle_struct *handle, connection_struct *conn,
const char *path);
-static char *audit_getwd(vfs_handle_struct *handle, connection_struct *conn,
+static char *smb_full_audit_getwd(vfs_handle_struct *handle, connection_struct *conn,
char *path);
-static int audit_utime(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_utime(vfs_handle_struct *handle, connection_struct *conn,
const char *path, struct utimbuf *times);
-static int audit_ftruncate(vfs_handle_struct *handle, files_struct *fsp,
+static int smb_full_audit_ftruncate(vfs_handle_struct *handle, files_struct *fsp,
int fd, SMB_OFF_T len);
-static BOOL audit_lock(vfs_handle_struct *handle, files_struct *fsp, int fd,
+static BOOL smb_full_audit_lock(vfs_handle_struct *handle, files_struct *fsp, int fd,
int op, SMB_OFF_T offset, SMB_OFF_T count, int type);
-static int audit_symlink(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_symlink(vfs_handle_struct *handle, connection_struct *conn,
const char *oldpath, const char *newpath);
-static int audit_readlink(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_readlink(vfs_handle_struct *handle, connection_struct *conn,
const char *path, char *buf, size_t bufsiz);
-static int audit_link(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_link(vfs_handle_struct *handle, connection_struct *conn,
const char *oldpath, const char *newpath);
-static int audit_mknod(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_mknod(vfs_handle_struct *handle, connection_struct *conn,
const char *pathname, mode_t mode, SMB_DEV_T dev);
-static char *audit_realpath(vfs_handle_struct *handle, connection_struct *conn,
+static char *smb_full_audit_realpath(vfs_handle_struct *handle, connection_struct *conn,
const char *path, char *resolved_path);
-static size_t audit_fget_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
+static size_t smb_full_audit_fget_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
int fd, uint32 security_info,
SEC_DESC **ppdesc);
-static size_t audit_get_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
+static size_t smb_full_audit_get_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
const char *name, uint32 security_info,
SEC_DESC **ppdesc);
-static BOOL audit_fset_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
+static BOOL smb_full_audit_fset_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
int fd, uint32 security_info_sent,
SEC_DESC *psd);
-static BOOL audit_set_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
+static BOOL smb_full_audit_set_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
const char *name, uint32 security_info_sent,
SEC_DESC *psd);
-static int audit_chmod_acl(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_chmod_acl(vfs_handle_struct *handle, connection_struct *conn,
const char *path, mode_t mode);
-static int audit_fchmod_acl(vfs_handle_struct *handle, files_struct *fsp,
+static int smb_full_audit_fchmod_acl(vfs_handle_struct *handle, files_struct *fsp,
int fd, mode_t mode);
-static int audit_sys_acl_get_entry(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_get_entry(vfs_handle_struct *handle,
connection_struct *conn,
SMB_ACL_T theacl, int entry_id,
SMB_ACL_ENTRY_T *entry_p);
-static int audit_sys_acl_get_tag_type(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_get_tag_type(vfs_handle_struct *handle,
connection_struct *conn,
SMB_ACL_ENTRY_T entry_d,
SMB_ACL_TAG_T *tag_type_p);
-static int audit_sys_acl_get_permset(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_get_permset(vfs_handle_struct *handle,
connection_struct *conn,
SMB_ACL_ENTRY_T entry_d,
SMB_ACL_PERMSET_T *permset_p);
-static void * audit_sys_acl_get_qualifier(vfs_handle_struct *handle,
+static void * smb_full_audit_sys_acl_get_qualifier(vfs_handle_struct *handle,
connection_struct *conn,
SMB_ACL_ENTRY_T entry_d);
-static SMB_ACL_T audit_sys_acl_get_file(vfs_handle_struct *handle,
+static SMB_ACL_T smb_full_audit_sys_acl_get_file(vfs_handle_struct *handle,
connection_struct *conn,
const char *path_p,
SMB_ACL_TYPE_T type);
-static SMB_ACL_T audit_sys_acl_get_fd(vfs_handle_struct *handle,
+static SMB_ACL_T smb_full_audit_sys_acl_get_fd(vfs_handle_struct *handle,
files_struct *fsp,
int fd);
-static int audit_sys_acl_clear_perms(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_clear_perms(vfs_handle_struct *handle,
connection_struct *conn,
SMB_ACL_PERMSET_T permset);
-static int audit_sys_acl_add_perm(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_add_perm(vfs_handle_struct *handle,
connection_struct *conn,
SMB_ACL_PERMSET_T permset,
SMB_ACL_PERM_T perm);
-static char * audit_sys_acl_to_text(vfs_handle_struct *handle,
+static char * smb_full_audit_sys_acl_to_text(vfs_handle_struct *handle,
connection_struct *conn, SMB_ACL_T theacl,
ssize_t *plen);
-static SMB_ACL_T audit_sys_acl_init(vfs_handle_struct *handle,
+static SMB_ACL_T smb_full_audit_sys_acl_init(vfs_handle_struct *handle,
connection_struct *conn,
int count);
-static int audit_sys_acl_create_entry(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_create_entry(vfs_handle_struct *handle,
connection_struct *conn, SMB_ACL_T *pacl,
SMB_ACL_ENTRY_T *pentry);
-static int audit_sys_acl_set_tag_type(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_set_tag_type(vfs_handle_struct *handle,
connection_struct *conn,
SMB_ACL_ENTRY_T entry,
SMB_ACL_TAG_T tagtype);
-static int audit_sys_acl_set_qualifier(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_set_qualifier(vfs_handle_struct *handle,
connection_struct *conn,
SMB_ACL_ENTRY_T entry,
void *qual);
-static int audit_sys_acl_set_permset(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_set_permset(vfs_handle_struct *handle,
connection_struct *conn,
SMB_ACL_ENTRY_T entry,
SMB_ACL_PERMSET_T permset);
-static int audit_sys_acl_valid(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_valid(vfs_handle_struct *handle,
connection_struct *conn,
SMB_ACL_T theacl );
-static int audit_sys_acl_set_file(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_set_file(vfs_handle_struct *handle,
connection_struct *conn,
const char *name, SMB_ACL_TYPE_T acltype,
SMB_ACL_T theacl);
-static int audit_sys_acl_set_fd(vfs_handle_struct *handle, files_struct *fsp,
+static int smb_full_audit_sys_acl_set_fd(vfs_handle_struct *handle, files_struct *fsp,
int fd, SMB_ACL_T theacl);
-static int audit_sys_acl_delete_def_file(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_delete_def_file(vfs_handle_struct *handle,
connection_struct *conn,
const char *path);
-static int audit_sys_acl_get_perm(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_get_perm(vfs_handle_struct *handle,
connection_struct *conn,
SMB_ACL_PERMSET_T permset,
SMB_ACL_PERM_T perm);
-static int audit_sys_acl_free_text(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_free_text(vfs_handle_struct *handle,
connection_struct *conn,
char *text);
-static int audit_sys_acl_free_acl(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_free_acl(vfs_handle_struct *handle,
connection_struct *conn,
SMB_ACL_T posix_acl);
-static int audit_sys_acl_free_qualifier(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_free_qualifier(vfs_handle_struct *handle,
connection_struct *conn,
void *qualifier,
SMB_ACL_TAG_T tagtype);
-static ssize_t audit_getxattr(struct vfs_handle_struct *handle,
+static ssize_t smb_full_audit_getxattr(struct vfs_handle_struct *handle,
struct connection_struct *conn, const char *path,
const char *name, void *value, size_t size);
-static ssize_t audit_lgetxattr(struct vfs_handle_struct *handle,
+static ssize_t smb_full_audit_lgetxattr(struct vfs_handle_struct *handle,
struct connection_struct *conn,
const char *path, const char *name,
void *value, size_t size);
-static ssize_t audit_fgetxattr(struct vfs_handle_struct *handle,
+static ssize_t smb_full_audit_fgetxattr(struct vfs_handle_struct *handle,
struct files_struct *fsp, int fd,
const char *name, void *value, size_t size);
-static ssize_t audit_listxattr(struct vfs_handle_struct *handle,
+static ssize_t smb_full_audit_listxattr(struct vfs_handle_struct *handle,
struct connection_struct *conn,
const char *path, char *list, size_t size);
-static ssize_t audit_llistxattr(struct vfs_handle_struct *handle,
+static ssize_t smb_full_audit_llistxattr(struct vfs_handle_struct *handle,
struct connection_struct *conn,
const char *path, char *list, size_t size);
-static ssize_t audit_flistxattr(struct vfs_handle_struct *handle,
+static ssize_t smb_full_audit_flistxattr(struct vfs_handle_struct *handle,
struct files_struct *fsp, int fd, char *list,
size_t size);
-static int audit_removexattr(struct vfs_handle_struct *handle,
+static int smb_full_audit_removexattr(struct vfs_handle_struct *handle,
struct connection_struct *conn, const char *path,
const char *name);
-static int audit_lremovexattr(struct vfs_handle_struct *handle,
+static int smb_full_audit_lremovexattr(struct vfs_handle_struct *handle,
struct connection_struct *conn, const char *path,
const char *name);
-static int audit_fremovexattr(struct vfs_handle_struct *handle,
+static int smb_full_audit_fremovexattr(struct vfs_handle_struct *handle,
struct files_struct *fsp, int fd,
const char *name);
-static int audit_setxattr(struct vfs_handle_struct *handle,
+static int smb_full_audit_setxattr(struct vfs_handle_struct *handle,
struct connection_struct *conn, const char *path,
const char *name, const void *value, size_t size,
int flags);
-static int audit_lsetxattr(struct vfs_handle_struct *handle,
+static int smb_full_audit_lsetxattr(struct vfs_handle_struct *handle,
struct connection_struct *conn, const char *path,
const char *name, const void *value, size_t size,
int flags);
-static int audit_fsetxattr(struct vfs_handle_struct *handle,
+static int smb_full_audit_fsetxattr(struct vfs_handle_struct *handle,
struct files_struct *fsp, int fd, const char *name,
const void *value, size_t size, int flags);
@@ -287,176 +287,176 @@ static vfs_op_tuple audit_op_tuples[] = {
/* Disk operations */
- {SMB_VFS_OP(audit_connect), SMB_VFS_OP_CONNECT,
+ {SMB_VFS_OP(smb_full_audit_connect), SMB_VFS_OP_CONNECT,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_disconnect), SMB_VFS_OP_DISCONNECT,
+ {SMB_VFS_OP(smb_full_audit_disconnect), SMB_VFS_OP_DISCONNECT,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_disk_free), SMB_VFS_OP_DISK_FREE,
+ {SMB_VFS_OP(smb_full_audit_disk_free), SMB_VFS_OP_DISK_FREE,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_get_quota), SMB_VFS_OP_GET_QUOTA,
+ {SMB_VFS_OP(smb_full_audit_get_quota), SMB_VFS_OP_GET_QUOTA,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_set_quota), SMB_VFS_OP_SET_QUOTA,
+ {SMB_VFS_OP(smb_full_audit_set_quota), SMB_VFS_OP_SET_QUOTA,
SMB_VFS_LAYER_LOGGER},
/* Directory operations */
- {SMB_VFS_OP(audit_opendir), SMB_VFS_OP_OPENDIR,
+ {SMB_VFS_OP(smb_full_audit_opendir), SMB_VFS_OP_OPENDIR,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_readdir), SMB_VFS_OP_READDIR,
+ {SMB_VFS_OP(smb_full_audit_readdir), SMB_VFS_OP_READDIR,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_mkdir), SMB_VFS_OP_MKDIR,
+ {SMB_VFS_OP(smb_full_audit_mkdir), SMB_VFS_OP_MKDIR,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_rmdir), SMB_VFS_OP_RMDIR,
+ {SMB_VFS_OP(smb_full_audit_rmdir), SMB_VFS_OP_RMDIR,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_closedir), SMB_VFS_OP_CLOSEDIR,
+ {SMB_VFS_OP(smb_full_audit_closedir), SMB_VFS_OP_CLOSEDIR,
SMB_VFS_LAYER_LOGGER},
/* File operations */
- {SMB_VFS_OP(audit_open), SMB_VFS_OP_OPEN,
+ {SMB_VFS_OP(smb_full_audit_open), SMB_VFS_OP_OPEN,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_close), SMB_VFS_OP_CLOSE,
+ {SMB_VFS_OP(smb_full_audit_close), SMB_VFS_OP_CLOSE,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_read), SMB_VFS_OP_READ,
+ {SMB_VFS_OP(smb_full_audit_read), SMB_VFS_OP_READ,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_pread), SMB_VFS_OP_PREAD,
+ {SMB_VFS_OP(smb_full_audit_pread), SMB_VFS_OP_PREAD,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_write), SMB_VFS_OP_WRITE,
+ {SMB_VFS_OP(smb_full_audit_write), SMB_VFS_OP_WRITE,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_pwrite), SMB_VFS_OP_PWRITE,
+ {SMB_VFS_OP(smb_full_audit_pwrite), SMB_VFS_OP_PWRITE,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_lseek), SMB_VFS_OP_LSEEK,
+ {SMB_VFS_OP(smb_full_audit_lseek), SMB_VFS_OP_LSEEK,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_sendfile), SMB_VFS_OP_SENDFILE,
+ {SMB_VFS_OP(smb_full_audit_sendfile), SMB_VFS_OP_SENDFILE,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_rename), SMB_VFS_OP_RENAME,
+ {SMB_VFS_OP(smb_full_audit_rename), SMB_VFS_OP_RENAME,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_fsync), SMB_VFS_OP_FSYNC,
+ {SMB_VFS_OP(smb_full_audit_fsync), SMB_VFS_OP_FSYNC,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_stat), SMB_VFS_OP_STAT,
+ {SMB_VFS_OP(smb_full_audit_stat), SMB_VFS_OP_STAT,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_fstat), SMB_VFS_OP_FSTAT,
+ {SMB_VFS_OP(smb_full_audit_fstat), SMB_VFS_OP_FSTAT,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_lstat), SMB_VFS_OP_LSTAT,
+ {SMB_VFS_OP(smb_full_audit_lstat), SMB_VFS_OP_LSTAT,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_unlink), SMB_VFS_OP_UNLINK,
+ {SMB_VFS_OP(smb_full_audit_unlink), SMB_VFS_OP_UNLINK,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_chmod), SMB_VFS_OP_CHMOD,
+ {SMB_VFS_OP(smb_full_audit_chmod), SMB_VFS_OP_CHMOD,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_fchmod), SMB_VFS_OP_FCHMOD,
+ {SMB_VFS_OP(smb_full_audit_fchmod), SMB_VFS_OP_FCHMOD,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_chown), SMB_VFS_OP_CHOWN,
+ {SMB_VFS_OP(smb_full_audit_chown), SMB_VFS_OP_CHOWN,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_fchown), SMB_VFS_OP_FCHOWN,
+ {SMB_VFS_OP(smb_full_audit_fchown), SMB_VFS_OP_FCHOWN,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_chdir), SMB_VFS_OP_CHDIR,
+ {SMB_VFS_OP(smb_full_audit_chdir), SMB_VFS_OP_CHDIR,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_getwd), SMB_VFS_OP_GETWD,
+ {SMB_VFS_OP(smb_full_audit_getwd), SMB_VFS_OP_GETWD,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_utime), SMB_VFS_OP_UTIME,
+ {SMB_VFS_OP(smb_full_audit_utime), SMB_VFS_OP_UTIME,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_ftruncate), SMB_VFS_OP_FTRUNCATE,
+ {SMB_VFS_OP(smb_full_audit_ftruncate), SMB_VFS_OP_FTRUNCATE,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_lock), SMB_VFS_OP_LOCK,
+ {SMB_VFS_OP(smb_full_audit_lock), SMB_VFS_OP_LOCK,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_symlink), SMB_VFS_OP_SYMLINK,
+ {SMB_VFS_OP(smb_full_audit_symlink), SMB_VFS_OP_SYMLINK,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_readlink), SMB_VFS_OP_READLINK,
+ {SMB_VFS_OP(smb_full_audit_readlink), SMB_VFS_OP_READLINK,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_link), SMB_VFS_OP_LINK,
+ {SMB_VFS_OP(smb_full_audit_link), SMB_VFS_OP_LINK,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_mknod), SMB_VFS_OP_MKNOD,
+ {SMB_VFS_OP(smb_full_audit_mknod), SMB_VFS_OP_MKNOD,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_realpath), SMB_VFS_OP_REALPATH,
+ {SMB_VFS_OP(smb_full_audit_realpath), SMB_VFS_OP_REALPATH,
SMB_VFS_LAYER_LOGGER},
/* NT ACL operations. */
- {SMB_VFS_OP(audit_fget_nt_acl), SMB_VFS_OP_FGET_NT_ACL,
+ {SMB_VFS_OP(smb_full_audit_fget_nt_acl), SMB_VFS_OP_FGET_NT_ACL,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_get_nt_acl), SMB_VFS_OP_GET_NT_ACL,
+ {SMB_VFS_OP(smb_full_audit_get_nt_acl), SMB_VFS_OP_GET_NT_ACL,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_fset_nt_acl), SMB_VFS_OP_FSET_NT_ACL,
+ {SMB_VFS_OP(smb_full_audit_fset_nt_acl), SMB_VFS_OP_FSET_NT_ACL,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_set_nt_acl), SMB_VFS_OP_SET_NT_ACL,
+ {SMB_VFS_OP(smb_full_audit_set_nt_acl), SMB_VFS_OP_SET_NT_ACL,
SMB_VFS_LAYER_LOGGER},
/* POSIX ACL operations. */
- {SMB_VFS_OP(audit_chmod_acl), SMB_VFS_OP_CHMOD,
+ {SMB_VFS_OP(smb_full_audit_chmod_acl), SMB_VFS_OP_CHMOD,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_fchmod_acl), SMB_VFS_OP_FCHMOD,
+ {SMB_VFS_OP(smb_full_audit_fchmod_acl), SMB_VFS_OP_FCHMOD,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_sys_acl_get_entry), SMB_VFS_OP_SYS_ACL_GET_ENTRY,
+ {SMB_VFS_OP(smb_full_audit_sys_acl_get_entry), SMB_VFS_OP_SYS_ACL_GET_ENTRY,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_sys_acl_get_tag_type), SMB_VFS_OP_SYS_ACL_GET_TAG_TYPE,
+ {SMB_VFS_OP(smb_full_audit_sys_acl_get_tag_type), SMB_VFS_OP_SYS_ACL_GET_TAG_TYPE,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_sys_acl_get_permset), SMB_VFS_OP_SYS_ACL_GET_PERMSET,
+ {SMB_VFS_OP(smb_full_audit_sys_acl_get_permset), SMB_VFS_OP_SYS_ACL_GET_PERMSET,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_sys_acl_get_qualifier), SMB_VFS_OP_SYS_ACL_GET_QUALIFIER,
+ {SMB_VFS_OP(smb_full_audit_sys_acl_get_qualifier), SMB_VFS_OP_SYS_ACL_GET_QUALIFIER,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_sys_acl_get_file), SMB_VFS_OP_SYS_ACL_GET_FILE,
+ {SMB_VFS_OP(smb_full_audit_sys_acl_get_file), SMB_VFS_OP_SYS_ACL_GET_FILE,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_sys_acl_get_fd), SMB_VFS_OP_SYS_ACL_GET_FD,
+ {SMB_VFS_OP(smb_full_audit_sys_acl_get_fd), SMB_VFS_OP_SYS_ACL_GET_FD,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_sys_acl_clear_perms), SMB_VFS_OP_SYS_ACL_CLEAR_PERMS,
+ {SMB_VFS_OP(smb_full_audit_sys_acl_clear_perms), SMB_VFS_OP_SYS_ACL_CLEAR_PERMS,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_sys_acl_add_perm), SMB_VFS_OP_SYS_ACL_ADD_PERM,
+ {SMB_VFS_OP(smb_full_audit_sys_acl_add_perm), SMB_VFS_OP_SYS_ACL_ADD_PERM,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_sys_acl_to_text), SMB_VFS_OP_SYS_ACL_TO_TEXT,
+ {SMB_VFS_OP(smb_full_audit_sys_acl_to_text), SMB_VFS_OP_SYS_ACL_TO_TEXT,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_sys_acl_init), SMB_VFS_OP_SYS_ACL_INIT,
+ {SMB_VFS_OP(smb_full_audit_sys_acl_init), SMB_VFS_OP_SYS_ACL_INIT,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_sys_acl_create_entry), SMB_VFS_OP_SYS_ACL_CREATE_ENTRY,
+ {SMB_VFS_OP(smb_full_audit_sys_acl_create_entry), SMB_VFS_OP_SYS_ACL_CREATE_ENTRY,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_sys_acl_set_tag_type), SMB_VFS_OP_SYS_ACL_SET_TAG_TYPE,
+ {SMB_VFS_OP(smb_full_audit_sys_acl_set_tag_type), SMB_VFS_OP_SYS_ACL_SET_TAG_TYPE,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_sys_acl_set_qualifier), SMB_VFS_OP_SYS_ACL_SET_QUALIFIER,
+ {SMB_VFS_OP(smb_full_audit_sys_acl_set_qualifier), SMB_VFS_OP_SYS_ACL_SET_QUALIFIER,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_sys_acl_set_permset), SMB_VFS_OP_SYS_ACL_SET_PERMSET,
+ {SMB_VFS_OP(smb_full_audit_sys_acl_set_permset), SMB_VFS_OP_SYS_ACL_SET_PERMSET,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_sys_acl_valid), SMB_VFS_OP_SYS_ACL_VALID,
+ {SMB_VFS_OP(smb_full_audit_sys_acl_valid), SMB_VFS_OP_SYS_ACL_VALID,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_sys_acl_set_file), SMB_VFS_OP_SYS_ACL_SET_FILE,
+ {SMB_VFS_OP(smb_full_audit_sys_acl_set_file), SMB_VFS_OP_SYS_ACL_SET_FILE,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_sys_acl_set_fd), SMB_VFS_OP_SYS_ACL_SET_FD,
+ {SMB_VFS_OP(smb_full_audit_sys_acl_set_fd), SMB_VFS_OP_SYS_ACL_SET_FD,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_sys_acl_delete_def_file), SMB_VFS_OP_SYS_ACL_DELETE_DEF_FILE,
+ {SMB_VFS_OP(smb_full_audit_sys_acl_delete_def_file), SMB_VFS_OP_SYS_ACL_DELETE_DEF_FILE,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_sys_acl_get_perm), SMB_VFS_OP_SYS_ACL_GET_PERM,
+ {SMB_VFS_OP(smb_full_audit_sys_acl_get_perm), SMB_VFS_OP_SYS_ACL_GET_PERM,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_sys_acl_free_text), SMB_VFS_OP_SYS_ACL_FREE_TEXT,
+ {SMB_VFS_OP(smb_full_audit_sys_acl_free_text), SMB_VFS_OP_SYS_ACL_FREE_TEXT,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_sys_acl_free_acl), SMB_VFS_OP_SYS_ACL_FREE_ACL,
+ {SMB_VFS_OP(smb_full_audit_sys_acl_free_acl), SMB_VFS_OP_SYS_ACL_FREE_ACL,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_sys_acl_free_qualifier), SMB_VFS_OP_SYS_ACL_FREE_QUALIFIER,
+ {SMB_VFS_OP(smb_full_audit_sys_acl_free_qualifier), SMB_VFS_OP_SYS_ACL_FREE_QUALIFIER,
SMB_VFS_LAYER_LOGGER},
/* EA operations. */
- {SMB_VFS_OP(audit_getxattr), SMB_VFS_OP_GETXATTR,
+ {SMB_VFS_OP(smb_full_audit_getxattr), SMB_VFS_OP_GETXATTR,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_lgetxattr), SMB_VFS_OP_LGETXATTR,
+ {SMB_VFS_OP(smb_full_audit_lgetxattr), SMB_VFS_OP_LGETXATTR,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_fgetxattr), SMB_VFS_OP_FGETXATTR,
+ {SMB_VFS_OP(smb_full_audit_fgetxattr), SMB_VFS_OP_FGETXATTR,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_listxattr), SMB_VFS_OP_LISTXATTR,
+ {SMB_VFS_OP(smb_full_audit_listxattr), SMB_VFS_OP_LISTXATTR,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_llistxattr), SMB_VFS_OP_LLISTXATTR,
+ {SMB_VFS_OP(smb_full_audit_llistxattr), SMB_VFS_OP_LLISTXATTR,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_flistxattr), SMB_VFS_OP_FLISTXATTR,
+ {SMB_VFS_OP(smb_full_audit_flistxattr), SMB_VFS_OP_FLISTXATTR,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_removexattr), SMB_VFS_OP_REMOVEXATTR,
+ {SMB_VFS_OP(smb_full_audit_removexattr), SMB_VFS_OP_REMOVEXATTR,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_lremovexattr), SMB_VFS_OP_LREMOVEXATTR,
+ {SMB_VFS_OP(smb_full_audit_lremovexattr), SMB_VFS_OP_LREMOVEXATTR,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_fremovexattr), SMB_VFS_OP_FREMOVEXATTR,
+ {SMB_VFS_OP(smb_full_audit_fremovexattr), SMB_VFS_OP_FREMOVEXATTR,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_setxattr), SMB_VFS_OP_SETXATTR,
+ {SMB_VFS_OP(smb_full_audit_setxattr), SMB_VFS_OP_SETXATTR,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_lsetxattr), SMB_VFS_OP_LSETXATTR,
+ {SMB_VFS_OP(smb_full_audit_lsetxattr), SMB_VFS_OP_LSETXATTR,
SMB_VFS_LAYER_LOGGER},
- {SMB_VFS_OP(audit_fsetxattr), SMB_VFS_OP_FSETXATTR,
+ {SMB_VFS_OP(smb_full_audit_fsetxattr), SMB_VFS_OP_FSETXATTR,
SMB_VFS_LAYER_LOGGER},
/* Finish VFS operations definition */
@@ -689,7 +689,7 @@ static void do_log(vfs_op_type op, BOOL success, vfs_handle_struct *handle,
/* Implementation of vfs_ops. Pass everything on to the default
operation but log event first. */
-static int audit_connect(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_connect(vfs_handle_struct *handle, connection_struct *conn,
const char *svc, const char *user)
{
int result;
@@ -713,7 +713,7 @@ static int audit_connect(vfs_handle_struct *handle, connection_struct *conn,
return result;
}
-static void audit_disconnect(vfs_handle_struct *handle,
+static void smb_full_audit_disconnect(vfs_handle_struct *handle,
connection_struct *conn)
{
SMB_VFS_NEXT_DISCONNECT(handle, conn);
@@ -730,7 +730,7 @@ static void audit_disconnect(vfs_handle_struct *handle,
return;
}
-static SMB_BIG_UINT audit_disk_free(vfs_handle_struct *handle,
+static SMB_BIG_UINT smb_full_audit_disk_free(vfs_handle_struct *handle,
connection_struct *conn, const char *path,
BOOL small_query, SMB_BIG_UINT *bsize,
SMB_BIG_UINT *dfree, SMB_BIG_UINT *dsize)
@@ -747,7 +747,7 @@ static SMB_BIG_UINT audit_disk_free(vfs_handle_struct *handle,
return result;
}
-static int audit_get_quota(struct vfs_handle_struct *handle,
+static int smb_full_audit_get_quota(struct vfs_handle_struct *handle,
struct connection_struct *conn,
enum SMB_QUOTA_TYPE qtype, unid_t id,
SMB_DISK_QUOTA *qt)
@@ -762,7 +762,7 @@ static int audit_get_quota(struct vfs_handle_struct *handle,
}
-static int audit_set_quota(struct vfs_handle_struct *handle,
+static int smb_full_audit_set_quota(struct vfs_handle_struct *handle,
struct connection_struct *conn,
enum SMB_QUOTA_TYPE qtype, unid_t id,
SMB_DISK_QUOTA *qt)
@@ -776,7 +776,7 @@ static int audit_set_quota(struct vfs_handle_struct *handle,
return result;
}
-static DIR *audit_opendir(vfs_handle_struct *handle, connection_struct *conn,
+static DIR *smb_full_audit_opendir(vfs_handle_struct *handle, connection_struct *conn,
const char *fname)
{
DIR *result;
@@ -788,7 +788,7 @@ static DIR *audit_opendir(vfs_handle_struct *handle, connection_struct *conn,
return result;
}
-static struct dirent *audit_readdir(vfs_handle_struct *handle,
+static struct dirent *smb_full_audit_readdir(vfs_handle_struct *handle,
connection_struct *conn, DIR *dirp)
{
struct dirent *result;
@@ -803,7 +803,7 @@ static struct dirent *audit_readdir(vfs_handle_struct *handle,
return result;
}
-static int audit_mkdir(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_mkdir(vfs_handle_struct *handle, connection_struct *conn,
const char *path, mode_t mode)
{
int result;
@@ -815,7 +815,7 @@ static int audit_mkdir(vfs_handle_struct *handle, connection_struct *conn,
return result;
}
-static int audit_rmdir(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_rmdir(vfs_handle_struct *handle, connection_struct *conn,
const char *path)
{
int result;
@@ -827,7 +827,7 @@ static int audit_rmdir(vfs_handle_struct *handle, connection_struct *conn,
return result;
}
-static int audit_closedir(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_closedir(vfs_handle_struct *handle, connection_struct *conn,
DIR *dirp)
{
int result;
@@ -839,7 +839,7 @@ static int audit_closedir(vfs_handle_struct *handle, connection_struct *conn,
return result;
}
-static int audit_open(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_open(vfs_handle_struct *handle, connection_struct *conn,
const char *fname, int flags, mode_t mode)
{
int result;
@@ -853,7 +853,7 @@ static int audit_open(vfs_handle_struct *handle, connection_struct *conn,
return result;
}
-static int audit_close(vfs_handle_struct *handle, files_struct *fsp, int fd)
+static int smb_full_audit_close(vfs_handle_struct *handle, files_struct *fsp, int fd)
{
int result;
@@ -864,7 +864,7 @@ static int audit_close(vfs_handle_struct *handle, files_struct *fsp, int fd)
return result;
}
-static ssize_t audit_read(vfs_handle_struct *handle, files_struct *fsp,
+static ssize_t smb_full_audit_read(vfs_handle_struct *handle, files_struct *fsp,
int fd, void *data, size_t n)
{
ssize_t result;
@@ -876,7 +876,7 @@ static ssize_t audit_read(vfs_handle_struct *handle, files_struct *fsp,
return result;
}
-static ssize_t audit_pread(vfs_handle_struct *handle, files_struct *fsp,
+static ssize_t smb_full_audit_pread(vfs_handle_struct *handle, files_struct *fsp,
int fd, void *data, size_t n, SMB_OFF_T offset)
{
ssize_t result;
@@ -888,7 +888,7 @@ static ssize_t audit_pread(vfs_handle_struct *handle, files_struct *fsp,
return result;
}
-static ssize_t audit_write(vfs_handle_struct *handle, files_struct *fsp,
+static ssize_t smb_full_audit_write(vfs_handle_struct *handle, files_struct *fsp,
int fd, const void *data, size_t n)
{
ssize_t result;
@@ -900,7 +900,7 @@ static ssize_t audit_write(vfs_handle_struct *handle, files_struct *fsp,
return result;
}
-static ssize_t audit_pwrite(vfs_handle_struct *handle, files_struct *fsp,
+static ssize_t smb_full_audit_pwrite(vfs_handle_struct *handle, files_struct *fsp,
int fd, const void *data, size_t n,
SMB_OFF_T offset)
{
@@ -913,7 +913,7 @@ static ssize_t audit_pwrite(vfs_handle_struct *handle, files_struct *fsp,
return result;
}
-static SMB_OFF_T audit_lseek(vfs_handle_struct *handle, files_struct *fsp,
+static SMB_OFF_T smb_full_audit_lseek(vfs_handle_struct *handle, files_struct *fsp,
int filedes, SMB_OFF_T offset, int whence)
{
ssize_t result;
@@ -926,7 +926,7 @@ static SMB_OFF_T audit_lseek(vfs_handle_struct *handle, files_struct *fsp,
return result;
}
-static ssize_t audit_sendfile(vfs_handle_struct *handle, int tofd,
+static ssize_t smb_full_audit_sendfile(vfs_handle_struct *handle, int tofd,
files_struct *fsp, int fromfd,
const DATA_BLOB *hdr, SMB_OFF_T offset,
size_t n)
@@ -942,7 +942,7 @@ static ssize_t audit_sendfile(vfs_handle_struct *handle, int tofd,
return result;
}
-static int audit_rename(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_rename(vfs_handle_struct *handle, connection_struct *conn,
const char *old, const char *new)
{
int result;
@@ -954,7 +954,7 @@ static int audit_rename(vfs_handle_struct *handle, connection_struct *conn,
return result;
}
-static int audit_fsync(vfs_handle_struct *handle, files_struct *fsp, int fd)
+static int smb_full_audit_fsync(vfs_handle_struct *handle, files_struct *fsp, int fd)
{
int result;
@@ -965,7 +965,7 @@ static int audit_fsync(vfs_handle_struct *handle, files_struct *fsp, int fd)
return result;
}
-static int audit_stat(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_stat(vfs_handle_struct *handle, connection_struct *conn,
const char *fname, SMB_STRUCT_STAT *sbuf)
{
int result;
@@ -977,7 +977,7 @@ static int audit_stat(vfs_handle_struct *handle, connection_struct *conn,
return result;
}
-static int audit_fstat(vfs_handle_struct *handle, files_struct *fsp, int fd,
+static int smb_full_audit_fstat(vfs_handle_struct *handle, files_struct *fsp, int fd,
SMB_STRUCT_STAT *sbuf)
{
int result;
@@ -989,7 +989,7 @@ static int audit_fstat(vfs_handle_struct *handle, files_struct *fsp, int fd,
return result;
}
-static int audit_lstat(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_lstat(vfs_handle_struct *handle, connection_struct *conn,
const char *path, SMB_STRUCT_STAT *sbuf)
{
int result;
@@ -1001,7 +1001,7 @@ static int audit_lstat(vfs_handle_struct *handle, connection_struct *conn,
return result;
}
-static int audit_unlink(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_unlink(vfs_handle_struct *handle, connection_struct *conn,
const char *path)
{
int result;
@@ -1013,7 +1013,7 @@ static int audit_unlink(vfs_handle_struct *handle, connection_struct *conn,
return result;
}
-static int audit_chmod(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_chmod(vfs_handle_struct *handle, connection_struct *conn,
const char *path, mode_t mode)
{
int result;
@@ -1025,7 +1025,7 @@ static int audit_chmod(vfs_handle_struct *handle, connection_struct *conn,
return result;
}
-static int audit_fchmod(vfs_handle_struct *handle, files_struct *fsp, int fd,
+static int smb_full_audit_fchmod(vfs_handle_struct *handle, files_struct *fsp, int fd,
mode_t mode)
{
int result;
@@ -1038,7 +1038,7 @@ static int audit_fchmod(vfs_handle_struct *handle, files_struct *fsp, int fd,
return result;
}
-static int audit_chown(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_chown(vfs_handle_struct *handle, connection_struct *conn,
const char *path, uid_t uid, gid_t gid)
{
int result;
@@ -1051,7 +1051,7 @@ static int audit_chown(vfs_handle_struct *handle, connection_struct *conn,
return result;
}
-static int audit_fchown(vfs_handle_struct *handle, files_struct *fsp, int fd,
+static int smb_full_audit_fchown(vfs_handle_struct *handle, files_struct *fsp, int fd,
uid_t uid, gid_t gid)
{
int result;
@@ -1064,7 +1064,7 @@ static int audit_fchown(vfs_handle_struct *handle, files_struct *fsp, int fd,
return result;
}
-static int audit_chdir(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_chdir(vfs_handle_struct *handle, connection_struct *conn,
const char *path)
{
int result;
@@ -1076,7 +1076,7 @@ static int audit_chdir(vfs_handle_struct *handle, connection_struct *conn,
return result;
}
-static char *audit_getwd(vfs_handle_struct *handle, connection_struct *conn,
+static char *smb_full_audit_getwd(vfs_handle_struct *handle, connection_struct *conn,
char *path)
{
char *result;
@@ -1088,7 +1088,7 @@ static char *audit_getwd(vfs_handle_struct *handle, connection_struct *conn,
return result;
}
-static int audit_utime(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_utime(vfs_handle_struct *handle, connection_struct *conn,
const char *path, struct utimbuf *times)
{
int result;
@@ -1100,7 +1100,7 @@ static int audit_utime(vfs_handle_struct *handle, connection_struct *conn,
return result;
}
-static int audit_ftruncate(vfs_handle_struct *handle, files_struct *fsp,
+static int smb_full_audit_ftruncate(vfs_handle_struct *handle, files_struct *fsp,
int fd, SMB_OFF_T len)
{
int result;
@@ -1113,7 +1113,7 @@ static int audit_ftruncate(vfs_handle_struct *handle, files_struct *fsp,
return result;
}
-static BOOL audit_lock(vfs_handle_struct *handle, files_struct *fsp, int fd,
+static BOOL smb_full_audit_lock(vfs_handle_struct *handle, files_struct *fsp, int fd,
int op, SMB_OFF_T offset, SMB_OFF_T count, int type)
{
BOOL result;
@@ -1125,7 +1125,7 @@ static BOOL audit_lock(vfs_handle_struct *handle, files_struct *fsp, int fd,
return result;
}
-static int audit_symlink(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_symlink(vfs_handle_struct *handle, connection_struct *conn,
const char *oldpath, const char *newpath)
{
int result;
@@ -1138,7 +1138,7 @@ static int audit_symlink(vfs_handle_struct *handle, connection_struct *conn,
return result;
}
-static int audit_readlink(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_readlink(vfs_handle_struct *handle, connection_struct *conn,
const char *path, char *buf, size_t bufsiz)
{
int result;
@@ -1150,7 +1150,7 @@ static int audit_readlink(vfs_handle_struct *handle, connection_struct *conn,
return result;
}
-static int audit_link(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_link(vfs_handle_struct *handle, connection_struct *conn,
const char *oldpath, const char *newpath)
{
int result;
@@ -1163,7 +1163,7 @@ static int audit_link(vfs_handle_struct *handle, connection_struct *conn,
return result;
}
-static int audit_mknod(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_mknod(vfs_handle_struct *handle, connection_struct *conn,
const char *pathname, mode_t mode, SMB_DEV_T dev)
{
int result;
@@ -1175,7 +1175,7 @@ static int audit_mknod(vfs_handle_struct *handle, connection_struct *conn,
return result;
}
-static char *audit_realpath(vfs_handle_struct *handle, connection_struct *conn,
+static char *smb_full_audit_realpath(vfs_handle_struct *handle, connection_struct *conn,
const char *path, char *resolved_path)
{
char *result;
@@ -1187,7 +1187,7 @@ static char *audit_realpath(vfs_handle_struct *handle, connection_struct *conn,
return result;
}
-static size_t audit_fget_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
+static size_t smb_full_audit_fget_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
int fd, uint32 security_info,
SEC_DESC **ppdesc)
{
@@ -1202,7 +1202,7 @@ static size_t audit_fget_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
return result;
}
-static size_t audit_get_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
+static size_t smb_full_audit_get_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
const char *name, uint32 security_info,
SEC_DESC **ppdesc)
{
@@ -1217,7 +1217,7 @@ static size_t audit_get_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
return result;
}
-static BOOL audit_fset_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
+static BOOL smb_full_audit_fset_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
int fd, uint32 security_info_sent,
SEC_DESC *psd)
{
@@ -1231,7 +1231,7 @@ static BOOL audit_fset_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
return result;
}
-static BOOL audit_set_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
+static BOOL smb_full_audit_set_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
const char *name, uint32 security_info_sent,
SEC_DESC *psd)
{
@@ -1245,7 +1245,7 @@ static BOOL audit_set_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
return result;
}
-static int audit_chmod_acl(vfs_handle_struct *handle, connection_struct *conn,
+static int smb_full_audit_chmod_acl(vfs_handle_struct *handle, connection_struct *conn,
const char *path, mode_t mode)
{
int result;
@@ -1258,7 +1258,7 @@ static int audit_chmod_acl(vfs_handle_struct *handle, connection_struct *conn,
return result;
}
-static int audit_fchmod_acl(vfs_handle_struct *handle, files_struct *fsp,
+static int smb_full_audit_fchmod_acl(vfs_handle_struct *handle, files_struct *fsp,
int fd, mode_t mode)
{
int result;
@@ -1271,7 +1271,7 @@ static int audit_fchmod_acl(vfs_handle_struct *handle, files_struct *fsp,
return result;
}
-static int audit_sys_acl_get_entry(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_get_entry(vfs_handle_struct *handle,
connection_struct *conn,
SMB_ACL_T theacl, int entry_id,
SMB_ACL_ENTRY_T *entry_p)
@@ -1287,7 +1287,7 @@ static int audit_sys_acl_get_entry(vfs_handle_struct *handle,
return result;
}
-static int audit_sys_acl_get_tag_type(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_get_tag_type(vfs_handle_struct *handle,
connection_struct *conn,
SMB_ACL_ENTRY_T entry_d,
SMB_ACL_TAG_T *tag_type_p)
@@ -1303,7 +1303,7 @@ static int audit_sys_acl_get_tag_type(vfs_handle_struct *handle,
return result;
}
-static int audit_sys_acl_get_permset(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_get_permset(vfs_handle_struct *handle,
connection_struct *conn,
SMB_ACL_ENTRY_T entry_d,
SMB_ACL_PERMSET_T *permset_p)
@@ -1319,7 +1319,7 @@ static int audit_sys_acl_get_permset(vfs_handle_struct *handle,
return result;
}
-static void * audit_sys_acl_get_qualifier(vfs_handle_struct *handle,
+static void * smb_full_audit_sys_acl_get_qualifier(vfs_handle_struct *handle,
connection_struct *conn,
SMB_ACL_ENTRY_T entry_d)
{
@@ -1333,7 +1333,7 @@ static void * audit_sys_acl_get_qualifier(vfs_handle_struct *handle,
return result;
}
-static SMB_ACL_T audit_sys_acl_get_file(vfs_handle_struct *handle,
+static SMB_ACL_T smb_full_audit_sys_acl_get_file(vfs_handle_struct *handle,
connection_struct *conn,
const char *path_p,
SMB_ACL_TYPE_T type)
@@ -1348,7 +1348,7 @@ static SMB_ACL_T audit_sys_acl_get_file(vfs_handle_struct *handle,
return result;
}
-static SMB_ACL_T audit_sys_acl_get_fd(vfs_handle_struct *handle,
+static SMB_ACL_T smb_full_audit_sys_acl_get_fd(vfs_handle_struct *handle,
files_struct *fsp, int fd)
{
SMB_ACL_T result;
@@ -1361,7 +1361,7 @@ static SMB_ACL_T audit_sys_acl_get_fd(vfs_handle_struct *handle,
return result;
}
-static int audit_sys_acl_clear_perms(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_clear_perms(vfs_handle_struct *handle,
connection_struct *conn,
SMB_ACL_PERMSET_T permset)
{
@@ -1375,7 +1375,7 @@ static int audit_sys_acl_clear_perms(vfs_handle_struct *handle,
return result;
}
-static int audit_sys_acl_add_perm(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_add_perm(vfs_handle_struct *handle,
connection_struct *conn,
SMB_ACL_PERMSET_T permset,
SMB_ACL_PERM_T perm)
@@ -1390,7 +1390,7 @@ static int audit_sys_acl_add_perm(vfs_handle_struct *handle,
return result;
}
-static char * audit_sys_acl_to_text(vfs_handle_struct *handle,
+static char * smb_full_audit_sys_acl_to_text(vfs_handle_struct *handle,
connection_struct *conn, SMB_ACL_T theacl,
ssize_t *plen)
{
@@ -1404,7 +1404,7 @@ static char * audit_sys_acl_to_text(vfs_handle_struct *handle,
return result;
}
-static SMB_ACL_T audit_sys_acl_init(vfs_handle_struct *handle,
+static SMB_ACL_T smb_full_audit_sys_acl_init(vfs_handle_struct *handle,
connection_struct *conn,
int count)
{
@@ -1418,7 +1418,7 @@ static SMB_ACL_T audit_sys_acl_init(vfs_handle_struct *handle,
return result;
}
-static int audit_sys_acl_create_entry(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_create_entry(vfs_handle_struct *handle,
connection_struct *conn, SMB_ACL_T *pacl,
SMB_ACL_ENTRY_T *pentry)
{
@@ -1432,7 +1432,7 @@ static int audit_sys_acl_create_entry(vfs_handle_struct *handle,
return result;
}
-static int audit_sys_acl_set_tag_type(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_set_tag_type(vfs_handle_struct *handle,
connection_struct *conn,
SMB_ACL_ENTRY_T entry,
SMB_ACL_TAG_T tagtype)
@@ -1448,7 +1448,7 @@ static int audit_sys_acl_set_tag_type(vfs_handle_struct *handle,
return result;
}
-static int audit_sys_acl_set_qualifier(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_set_qualifier(vfs_handle_struct *handle,
connection_struct *conn,
SMB_ACL_ENTRY_T entry,
void *qual)
@@ -1463,7 +1463,7 @@ static int audit_sys_acl_set_qualifier(vfs_handle_struct *handle,
return result;
}
-static int audit_sys_acl_set_permset(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_set_permset(vfs_handle_struct *handle,
connection_struct *conn,
SMB_ACL_ENTRY_T entry,
SMB_ACL_PERMSET_T permset)
@@ -1478,7 +1478,7 @@ static int audit_sys_acl_set_permset(vfs_handle_struct *handle,
return result;
}
-static int audit_sys_acl_valid(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_valid(vfs_handle_struct *handle,
connection_struct *conn,
SMB_ACL_T theacl )
{
@@ -1492,7 +1492,7 @@ static int audit_sys_acl_valid(vfs_handle_struct *handle,
return result;
}
-static int audit_sys_acl_set_file(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_set_file(vfs_handle_struct *handle,
connection_struct *conn,
const char *name, SMB_ACL_TYPE_T acltype,
SMB_ACL_T theacl)
@@ -1508,7 +1508,7 @@ static int audit_sys_acl_set_file(vfs_handle_struct *handle,
return result;
}
-static int audit_sys_acl_set_fd(vfs_handle_struct *handle, files_struct *fsp,
+static int smb_full_audit_sys_acl_set_fd(vfs_handle_struct *handle, files_struct *fsp,
int fd, SMB_ACL_T theacl)
{
int result;
@@ -1521,7 +1521,7 @@ static int audit_sys_acl_set_fd(vfs_handle_struct *handle, files_struct *fsp,
return result;
}
-static int audit_sys_acl_delete_def_file(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_delete_def_file(vfs_handle_struct *handle,
connection_struct *conn,
const char *path)
{
@@ -1535,7 +1535,7 @@ static int audit_sys_acl_delete_def_file(vfs_handle_struct *handle,
return result;
}
-static int audit_sys_acl_get_perm(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_get_perm(vfs_handle_struct *handle,
connection_struct *conn,
SMB_ACL_PERMSET_T permset,
SMB_ACL_PERM_T perm)
@@ -1550,7 +1550,7 @@ static int audit_sys_acl_get_perm(vfs_handle_struct *handle,
return result;
}
-static int audit_sys_acl_free_text(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_free_text(vfs_handle_struct *handle,
connection_struct *conn,
char *text)
{
@@ -1564,7 +1564,7 @@ static int audit_sys_acl_free_text(vfs_handle_struct *handle,
return result;
}
-static int audit_sys_acl_free_acl(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_free_acl(vfs_handle_struct *handle,
connection_struct *conn,
SMB_ACL_T posix_acl)
{
@@ -1578,7 +1578,7 @@ static int audit_sys_acl_free_acl(vfs_handle_struct *handle,
return result;
}
-static int audit_sys_acl_free_qualifier(vfs_handle_struct *handle,
+static int smb_full_audit_sys_acl_free_qualifier(vfs_handle_struct *handle,
connection_struct *conn,
void *qualifier,
SMB_ACL_TAG_T tagtype)
@@ -1594,7 +1594,7 @@ static int audit_sys_acl_free_qualifier(vfs_handle_struct *handle,
return result;
}
-static ssize_t audit_getxattr(struct vfs_handle_struct *handle,
+static ssize_t smb_full_audit_getxattr(struct vfs_handle_struct *handle,
struct connection_struct *conn, const char *path,
const char *name, void *value, size_t size)
{
@@ -1608,7 +1608,7 @@ static ssize_t audit_getxattr(struct vfs_handle_struct *handle,
return result;
}
-static ssize_t audit_lgetxattr(struct vfs_handle_struct *handle,
+static ssize_t smb_full_audit_lgetxattr(struct vfs_handle_struct *handle,
struct connection_struct *conn,
const char *path, const char *name,
void *value, size_t size)
@@ -1623,7 +1623,7 @@ static ssize_t audit_lgetxattr(struct vfs_handle_struct *handle,
return result;
}
-static ssize_t audit_fgetxattr(struct vfs_handle_struct *handle,
+static ssize_t smb_full_audit_fgetxattr(struct vfs_handle_struct *handle,
struct files_struct *fsp, int fd,
const char *name, void *value, size_t size)
{
@@ -1637,7 +1637,7 @@ static ssize_t audit_fgetxattr(struct vfs_handle_struct *handle,
return result;
}
-static ssize_t audit_listxattr(struct vfs_handle_struct *handle,
+static ssize_t smb_full_audit_listxattr(struct vfs_handle_struct *handle,
struct connection_struct *conn,
const char *path, char *list, size_t size)
{
@@ -1650,7 +1650,7 @@ static ssize_t audit_listxattr(struct vfs_handle_struct *handle,
return result;
}
-static ssize_t audit_llistxattr(struct vfs_handle_struct *handle,
+static ssize_t smb_full_audit_llistxattr(struct vfs_handle_struct *handle,
struct connection_struct *conn,
const char *path, char *list, size_t size)
{
@@ -1663,7 +1663,7 @@ static ssize_t audit_llistxattr(struct vfs_handle_struct *handle,
return result;
}
-static ssize_t audit_flistxattr(struct vfs_handle_struct *handle,
+static ssize_t smb_full_audit_flistxattr(struct vfs_handle_struct *handle,
struct files_struct *fsp, int fd, char *list,
size_t size)
{
@@ -1677,7 +1677,7 @@ static ssize_t audit_flistxattr(struct vfs_handle_struct *handle,
return result;
}
-static int audit_removexattr(struct vfs_handle_struct *handle,
+static int smb_full_audit_removexattr(struct vfs_handle_struct *handle,
struct connection_struct *conn, const char *path,
const char *name)
{
@@ -1691,7 +1691,7 @@ static int audit_removexattr(struct vfs_handle_struct *handle,
return result;
}
-static int audit_lremovexattr(struct vfs_handle_struct *handle,
+static int smb_full_audit_lremovexattr(struct vfs_handle_struct *handle,
struct connection_struct *conn, const char *path,
const char *name)
{
@@ -1705,7 +1705,7 @@ static int audit_lremovexattr(struct vfs_handle_struct *handle,
return result;
}
-static int audit_fremovexattr(struct vfs_handle_struct *handle,
+static int smb_full_audit_fremovexattr(struct vfs_handle_struct *handle,
struct files_struct *fsp, int fd,
const char *name)
{
@@ -1719,7 +1719,7 @@ static int audit_fremovexattr(struct vfs_handle_struct *handle,
return result;
}
-static int audit_setxattr(struct vfs_handle_struct *handle,
+static int smb_full_audit_setxattr(struct vfs_handle_struct *handle,
struct connection_struct *conn, const char *path,
const char *name, const void *value, size_t size,
int flags)
@@ -1735,7 +1735,7 @@ static int audit_setxattr(struct vfs_handle_struct *handle,
return result;
}
-static int audit_lsetxattr(struct vfs_handle_struct *handle,
+static int smb_full_audit_lsetxattr(struct vfs_handle_struct *handle,
struct connection_struct *conn, const char *path,
const char *name, const void *value, size_t size,
int flags)
@@ -1751,7 +1751,7 @@ static int audit_lsetxattr(struct vfs_handle_struct *handle,
return result;
}
-static int audit_fsetxattr(struct vfs_handle_struct *handle,
+static int smb_full_audit_fsetxattr(struct vfs_handle_struct *handle,
struct files_struct *fsp, int fd, const char *name,
const void *value, size_t size, int flags)
{
diff --git a/source/nsswitch/winbindd_ads.c b/source/nsswitch/winbindd_ads.c
index 2d3a9e760cb..1392c96fb1e 100644
--- a/source/nsswitch/winbindd_ads.c
+++ b/source/nsswitch/winbindd_ads.c
@@ -44,7 +44,7 @@ static ADS_STRUCT *ads_cached_connection(struct winbindd_domain *domain)
/* check for a valid structure */
- DEBUG(7, ("Current tickets expire at %d\n, time is now %d\n",
+ DEBUG(7, ("Current tickets expire at %d, time is now %d\n",
(uint32) ads->auth.expire, (uint32) time(NULL)));
if ( ads->config.realm && (ads->auth.expire > time(NULL))) {
return ads;
diff --git a/source/nsswitch/winbindd_cache.c b/source/nsswitch/winbindd_cache.c
index bbd98a620f6..b81f8ecd45a 100644
--- a/source/nsswitch/winbindd_cache.c
+++ b/source/nsswitch/winbindd_cache.c
@@ -1048,7 +1048,9 @@ do_query:
/* and save it */
refresh_sequence_number(domain, False);
wcache_save_sid_to_name(domain, status, sid, *domain_name, *name, *type);
- wcache_save_name_to_sid(domain, status, *domain_name, *name, sid, *type);
+
+ /* We can't save the name to sid mapping here, as with sid history a
+ * later name2sid would give the wrong sid. */
return status;
}
diff --git a/source/nsswitch/winbindd_pam.c b/source/nsswitch/winbindd_pam.c
index 03947de8750..08913a35a48 100644
--- a/source/nsswitch/winbindd_pam.c
+++ b/source/nsswitch/winbindd_pam.c
@@ -283,7 +283,7 @@ enum winbindd_result winbindd_pam_auth(struct winbindd_cli_state *state)
}
if (NT_STATUS_IS_OK(result)) {
- netsamlogon_cache_store( cli->mem_ctx, &info3 );
+ netsamlogon_cache_store( cli->mem_ctx, name_user, &info3 );
wcache_invalidate_samlogon(find_domain_from_name(name_domain), &info3);
/* Check if the user is in the right group */
@@ -538,7 +538,7 @@ enum winbindd_result winbindd_pam_auth_crap(struct winbindd_cli_state *state)
}
if (NT_STATUS_IS_OK(result)) {
- netsamlogon_cache_store( cli->mem_ctx, &info3 );
+ netsamlogon_cache_store( cli->mem_ctx, name_user, &info3 );
wcache_invalidate_samlogon(find_domain_from_name(name_domain), &info3);
if (!NT_STATUS_IS_OK(result = check_info3_in_group(mem_ctx, &info3, state->request.data.auth_crap.required_membership_sid))) {
diff --git a/source/param/loadparm.c b/source/param/loadparm.c
index 2750cc7edab..71543d1e15b 100644
--- a/source/param/loadparm.c
+++ b/source/param/loadparm.c
@@ -200,7 +200,6 @@ typedef struct
int lpqcachetime;
int iMaxSmbdProcesses;
BOOL bDisableSpoolss;
- int iTotalPrintJobs;
int syslog;
int os_level;
int enhanced_browsing;
@@ -1199,24 +1198,18 @@ static void init_printer_values(service *pService)
case PRINT_LPROS2:
string_set(&pService->szLpqcommand, "lpq -P'%p'");
string_set(&pService->szLprmcommand, "lprm -P'%p' %j");
- string_set(&pService->szPrintcommand,
- "lpr -r -P'%p' %s");
+ string_set(&pService->szPrintcommand, "lpr -r -P'%p' %s");
break;
case PRINT_LPRNG:
case PRINT_PLP:
string_set(&pService->szLpqcommand, "lpq -P'%p'");
string_set(&pService->szLprmcommand, "lprm -P'%p' %j");
- string_set(&pService->szPrintcommand,
- "lpr -r -P'%p' %s");
- string_set(&pService->szQueuepausecommand,
- "lpc stop '%p'");
- string_set(&pService->szQueueresumecommand,
- "lpc start '%p'");
- string_set(&pService->szLppausecommand,
- "lpc hold '%p' %j");
- string_set(&pService->szLpresumecommand,
- "lpc release '%p' %j");
+ string_set(&pService->szPrintcommand, "lpr -r -P'%p' %s");
+ string_set(&pService->szQueuepausecommand, "lpc stop '%p'");
+ string_set(&pService->szQueueresumecommand, "lpc start '%p'");
+ string_set(&pService->szLppausecommand, "lpc hold '%p' %j");
+ string_set(&pService->szLpresumecommand, "lpc release '%p' %j");
break;
case PRINT_CUPS:
@@ -1231,20 +1224,13 @@ static void init_printer_values(service *pService)
string_set(&Globals.szPrintcapname, "cups");
#else
- string_set(&pService->szLpqcommand,
- "/usr/bin/lpstat -o '%p'");
- string_set(&pService->szLprmcommand,
- "/usr/bin/cancel '%p-%j'");
- string_set(&pService->szPrintcommand,
- "/usr/bin/lp -d '%p' %s; rm %s");
- string_set(&pService->szLppausecommand,
- "lp -i '%p-%j' -H hold");
- string_set(&pService->szLpresumecommand,
- "lp -i '%p-%j' -H resume");
- string_set(&pService->szQueuepausecommand,
- "/usr/bin/disable '%p'");
- string_set(&pService->szQueueresumecommand,
- "/usr/bin/enable '%p'");
+ string_set(&pService->szLpqcommand, "/usr/bin/lpstat -o '%p'");
+ string_set(&pService->szLprmcommand, "/usr/bin/cancel '%p-%j'");
+ string_set(&pService->szPrintcommand, "/usr/bin/lp -d '%p' %s; rm %s");
+ string_set(&pService->szLppausecommand, "lp -i '%p-%j' -H hold");
+ string_set(&pService->szLpresumecommand, "lp -i '%p-%j' -H resume");
+ string_set(&pService->szQueuepausecommand, "/usr/bin/disable '%p'");
+ string_set(&pService->szQueueresumecommand, "/usr/bin/enable '%p'");
string_set(&Globals.szPrintcapname, "lpstat");
#endif /* HAVE_CUPS */
break;
@@ -1253,17 +1239,12 @@ static void init_printer_values(service *pService)
case PRINT_HPUX:
string_set(&pService->szLpqcommand, "lpstat -o%p");
string_set(&pService->szLprmcommand, "cancel %p-%j");
- string_set(&pService->szPrintcommand,
- "lp -c -d%p %s; rm %s");
- string_set(&pService->szQueuepausecommand,
- "disable %p");
- string_set(&pService->szQueueresumecommand,
- "enable %p");
+ string_set(&pService->szPrintcommand, "lp -c -d%p %s; rm %s");
+ string_set(&pService->szQueuepausecommand, "disable %p");
+ string_set(&pService->szQueueresumecommand, "enable %p");
#ifndef HPUX
- string_set(&pService->szLppausecommand,
- "lp -i %p-%j -H hold");
- string_set(&pService->szLpresumecommand,
- "lp -i %p-%j -H resume");
+ string_set(&pService->szLppausecommand, "lp -i %p-%j -H hold");
+ string_set(&pService->szLpresumecommand, "lp -i %p-%j -H resume");
#endif /* HPUX */
break;
@@ -1317,6 +1298,8 @@ static void init_globals(void)
string_set(&sDefault.fstype, FSTYPE_STRING);
+ init_printer_values(&sDefault);
+
done_init = True;
}
@@ -1390,7 +1373,6 @@ static void init_globals(void)
Globals.lpqcachetime = 10;
Globals.bDisableSpoolss = False;
Globals.iMaxSmbdProcesses = 0;/* no limit specified */
- Globals.iTotalPrintJobs = 0; /* no limit specified */
Globals.pwordlevel = 0;
Globals.unamelevel = 0;
Globals.deadtime = 0;
@@ -2305,6 +2287,10 @@ static int add_a_service(const service *pservice, const char *name)
copy_service(ServicePtrs[i], &tservice, NULL);
if (name)
string_set(&ServicePtrs[i]->szService, name);
+
+ DEBUG(8,("add_a_service: Creating snum = %d for %s\n",
+ i, ServicePtrs[i]->szService));
+
return (i);
}
@@ -2344,7 +2330,7 @@ BOOL lp_add_home(const char *pszHomename, int iDefaultService,
ServicePtrs[i]->autoloaded = True;
DEBUG(3, ("adding home's share [%s] for user '%s' at '%s'\n", pszHomename,
- user, newHomedir));
+ user, ServicePtrs[i]->szPath ));
return (True);
}
@@ -3966,9 +3952,6 @@ BOOL lp_load(const char *pszFname, BOOL global_only, BOOL save_defaults,
}
init_iconv();
-#if 0 /* JERRY */
- init_printer_values(&sDefault);
-#endif
return (bRetval);
}
diff --git a/source/printing/notify.c b/source/printing/notify.c
index 8d5be136071..10b5f745287 100644
--- a/source/printing/notify.c
+++ b/source/printing/notify.c
@@ -243,18 +243,21 @@ static void send_spoolss_notify2_msg(SPOOLSS_NOTIFY_MSG *msg)
* as they will just cause flickering updates in the client.
*/
- if ((num_messages < 100) && (msg->type == JOB_NOTIFY_TYPE) &&
- (msg->field == JOB_NOTIFY_TOTAL_BYTES || msg->field == JOB_NOTIFY_TOTAL_PAGES)) {
+ if ((num_messages < 100) && (msg->type == JOB_NOTIFY_TYPE)
+ && (msg->field == JOB_NOTIFY_TOTAL_BYTES
+ || msg->field == JOB_NOTIFY_TOTAL_PAGES ))
+ {
- for (tmp_ptr = notify_queue_head; tmp_ptr; tmp_ptr = tmp_ptr->next) {
+ for (tmp_ptr = notify_queue_head; tmp_ptr; tmp_ptr = tmp_ptr->next)
+ {
if (tmp_ptr->msg->type == msg->type &&
tmp_ptr->msg->field == msg->field &&
tmp_ptr->msg->id == msg->id &&
tmp_ptr->msg->flags == msg->flags &&
strequal(tmp_ptr->msg->printer, msg->printer)) {
- DEBUG(5, ("send_spoolss_notify2_msg: replacing message 0x%02x/0x%02x for printer %s \
-in notify_queue\n", msg->type, msg->field, msg->printer));
+ DEBUG(5,("send_spoolss_notify2_msg: replacing message 0x%02x/0x%02x for "
+ "printer %s in notify_queue\n", msg->type, msg->field, msg->printer));
tmp_ptr->msg = msg;
return;
diff --git a/source/printing/nt_printing.c b/source/printing/nt_printing.c
index 8c0302b4300..7850924aacb 100644
--- a/source/printing/nt_printing.c
+++ b/source/printing/nt_printing.c
@@ -3335,7 +3335,8 @@ static WERROR get_a_printer_2(NT_PRINTER_INFO_LEVEL_2 **info_ptr, const char *sh
info.parameters);
/* Samba has to have shared raw drivers. */
- info.attributes = PRINTER_ATTRIBUTE_SAMBA;
+ info.attributes |= PRINTER_ATTRIBUTE_SAMBA;
+ info.attributes &= ~PRINTER_ATTRIBUTE_NOT_SAMBA;
/* Restore the stripped strings. */
slprintf(info.servername, sizeof(info.servername)-1, "\\\\%s", get_called_name());
diff --git a/source/printing/printing.c b/source/printing/printing.c
index 31cb0faa9b0..8b93a433115 100644
--- a/source/printing/printing.c
+++ b/source/printing/printing.c
@@ -442,22 +442,30 @@ static void pjob_store_notify(int snum, uint32 jobid, struct printjob *old_data,
if (!old_data)
new_job = True;
- /* Notify the job name first */
-
- if (new_job || !strequal(old_data->jobname, new_data->jobname))
- notify_job_name(snum, jobid, new_data->jobname);
-
/* Job attributes that can't be changed. We only send
notification for these on a new job. */
+ /* ACHTUNG! Due to a bug in Samba's spoolss parsing of the
+ NOTIFY_INFO_DATA buffer, we *have* to send the job submission
+ time first or else we'll end up with potential alignment
+ errors. I don't think the systemtime should be spooled as
+ a string, but this gets us around that error.
+ --jerry (i'll feel dirty for this) */
+
if (new_job) {
notify_job_submitted(snum, jobid, new_data->starttime);
notify_job_username(snum, jobid, new_data->user);
}
+ if (new_job || !strequal(old_data->jobname, new_data->jobname))
+ notify_job_name(snum, jobid, new_data->jobname);
+
/* Job attributes of a new job or attributes that can be
modified. */
+ if (new_job || !strequal(old_data->jobname, new_data->jobname))
+ notify_job_name(snum, jobid, new_data->jobname);
+
if (new_job || old_data->status != new_data->status)
notify_job_status(snum, jobid, map_to_spoolss_status(new_data->status));
@@ -575,26 +583,19 @@ void pjob_delete(int snum, uint32 jobid)
return;
if (!pjob) {
- DEBUG(5, ("pjob_delete(): we were asked to delete nonexistent job %u\n",
+ DEBUG(5, ("pjob_delete: we were asked to delete nonexistent job %u\n",
(unsigned int)jobid));
release_print_db(pdb);
return;
}
- /* Send a notification that a job has been deleted */
-
- job_status = map_to_spoolss_status(pjob->status);
-
/* We must cycle through JOB_STATUS_DELETING and
JOB_STATUS_DELETED for the port monitor to delete the job
properly. */
- job_status |= JOB_STATUS_DELETING;
+ job_status = JOB_STATUS_DELETING|JOB_STATUS_DELETED;
notify_job_status(snum, jobid, job_status);
- job_status |= JOB_STATUS_DELETED;
- notify_job_status(snum, jobid, job_status);
-
/* Remove from printing.tdb */
tdb_delete(pdb->tdb, print_key(jobid));
diff --git a/source/printing/printing_db.c b/source/printing/printing_db.c
index 9efb3e8eadf..d45ad1cff79 100644
--- a/source/printing/printing_db.c
+++ b/source/printing/printing_db.c
@@ -37,6 +37,8 @@ struct tdb_print_db *get_print_db_byname(const char *printername)
pstring printdb_path;
BOOL done_become_root = False;
+ SMB_ASSERT(printername != NULL);
+
for (p = print_db_head, last_entry = print_db_head; p; p = p->next) {
/* Ensure the list terminates... JRA. */
SMB_ASSERT(p->next != print_db_head);
diff --git a/source/rpc_server/srv_samr_nt.c b/source/rpc_server/srv_samr_nt.c
index ea631d7c851..ce6d9dd37ec 100644
--- a/source/rpc_server/srv_samr_nt.c
+++ b/source/rpc_server/srv_samr_nt.c
@@ -3245,9 +3245,6 @@ static void add_uid_to_array_unique(uid_t uid, uid_t **uids, int *num)
{
int i;
- if ((*num) >= groups_max())
- return;
-
for (i=0; i<*num; i++) {
if ((*uids)[i] == uid)
return;
diff --git a/source/rpc_server/srv_spoolss_nt.c b/source/rpc_server/srv_spoolss_nt.c
index db60855ba09..812939ddf50 100644
--- a/source/rpc_server/srv_spoolss_nt.c
+++ b/source/rpc_server/srv_spoolss_nt.c
@@ -1026,7 +1026,7 @@ static void send_notify2_changes( SPOOLSS_NOTIFY_MSG_CTR *ctr, uint32 idx )
sending_msg_count++;
- DEBUG(10,("process_notify2_message: Sending message type [%x] field [%x] for printer [%s]\n",
+ DEBUG(10,("process_notify2_message: Sending message type [0x%x] field [0x%2x] for printer [%s]\n",
msg->type, msg->field, p->dev.handlename));
/*
@@ -5574,6 +5574,12 @@ WERROR _spoolss_getprinterdriver2(pipes_struct *p, SPOOL_Q_GETPRINTERDRIVER2 *q_
return getprinterdriver2_level3(servername, architecture, clientmajorversion, snum, buffer, offered, needed);
case 6:
return getprinterdriver2_level6(servername, architecture, clientmajorversion, snum, buffer, offered, needed);
+#if 0 /* JERRY */
+ case 101:
+ /* apparently this call is the equivalent of
+ EnumPrinterDataEx() for the DsDriver key */
+ break;
+#endif
}
return WERR_UNKNOWN_LEVEL;
@@ -5935,7 +5941,9 @@ static BOOL check_printer_ok(NT_PRINTER_INFO_LEVEL_2 *info, int snum)
slprintf(info->printername, sizeof(info->printername)-1, "\\\\%s\\%s",
get_called_name(), p );
- info->attributes = PRINTER_ATTRIBUTE_SAMBA;
+ info->attributes |= PRINTER_ATTRIBUTE_SAMBA;
+ info->attributes &= ~PRINTER_ATTRIBUTE_NOT_SAMBA;
+
return True;
diff --git a/source/rpcclient/cmd_spoolss.c b/source/rpcclient/cmd_spoolss.c
index 38558ec3d47..5fa59e1903b 100644
--- a/source/rpcclient/cmd_spoolss.c
+++ b/source/rpcclient/cmd_spoolss.c
@@ -434,7 +434,7 @@ static WERROR cmd_spoolss_enum_ports(struct cli_state *cli,
WERROR result;
uint32 needed, info_level = 1;
PORT_INFO_CTR ctr;
- int returned;
+ uint32 returned;
if (argc > 2) {
printf("Usage: %s [level]\n", argv[0]);
@@ -2393,7 +2393,6 @@ struct cmd_set spoolss_commands[] = {
{ "getdriver", RPC_RTYPE_WERROR, NULL, cmd_spoolss_getdriver, PI_SPOOLSS, "Get print driver information", "" },
{ "getdriverdir", RPC_RTYPE_WERROR, NULL, cmd_spoolss_getdriverdir, PI_SPOOLSS, "Get print driver upload directory", "" },
{ "getprinter", RPC_RTYPE_WERROR, NULL, cmd_spoolss_getprinter, PI_SPOOLSS, "Get printer info", "" },
- { "getprintprocdir",RPC_RTYPE_WERROR, NULL, cmd_spoolss_getprintprocdir, PI_SPOOLSS, "Get print processor directory", "" },
{ "openprinter", RPC_RTYPE_WERROR, NULL, cmd_spoolss_open_printer_ex, PI_SPOOLSS, "Open printer handle", "" },
{ "setdriver", RPC_RTYPE_WERROR, NULL, cmd_spoolss_setdriver, PI_SPOOLSS, "Set printer driver", "" },
{ "getprintprocdir", RPC_RTYPE_WERROR, NULL, cmd_spoolss_getprintprocdir, PI_SPOOLSS, "Get print processor directory", "" },
diff --git a/source/smbd/chgpasswd.c b/source/smbd/chgpasswd.c
index 5c1d66abc44..8ea5b9c60a3 100644
--- a/source/smbd/chgpasswd.c
+++ b/source/smbd/chgpasswd.c
@@ -328,7 +328,7 @@ static int talktochild(int master, const char *seq)
return (count > 0);
}
-static BOOL chat_with_program(char *passwordprogram, struct passwd *pass,
+static BOOL chat_with_program(char *passwordprogram, const struct passwd *pass,
char *chatsequence, BOOL as_root)
{
char *slavedev;
diff --git a/source/smbd/filename.c b/source/smbd/filename.c
index cc1c0a40b66..c411ef0f79f 100644
--- a/source/smbd/filename.c
+++ b/source/smbd/filename.c
@@ -418,26 +418,10 @@ BOOL check_name(pstring name,connection_struct *conn)
}
}
- if (!lp_widelinks(SNUM(conn))) {
+ if (!lp_widelinks(SNUM(conn)) || !lp_symlinks(SNUM(conn))) {
ret = reduce_name(conn,name);
}
- /* Check if we are allowing users to follow symlinks */
- /* Patch from David Clerc <David.Clerc@cui.unige.ch>
- University of Geneva */
-
-#ifdef S_ISLNK
- if (!lp_symlinks(SNUM(conn))) {
- SMB_STRUCT_STAT statbuf;
- if ( (SMB_VFS_LSTAT(conn,name,&statbuf) != -1) &&
- (S_ISLNK(statbuf.st_mode)) ) {
- DEBUG(3,("check_name: denied: file path name %s is a symlink\n",name));
- errno = EACCES;
- ret = False;
- }
- }
-#endif
-
if (!ret) {
DEBUG(5,("check_name on %s failed\n",name));
}
diff --git a/source/smbd/mangle_hash2.c b/source/smbd/mangle_hash2.c
index f68873687bd..c6ad1215b09 100644
--- a/source/smbd/mangle_hash2.c
+++ b/source/smbd/mangle_hash2.c
@@ -119,7 +119,7 @@ static const char *reserved_names[] =
this hash needs to be fast with a low collision rate (what hash doesn't?)
*/
-static u32 mangle_hash(const char *key, unsigned length)
+static u32 mangle_hash(const char *key, unsigned int length)
{
u32 value;
u32 i;
@@ -129,6 +129,7 @@ static u32 mangle_hash(const char *key, unsigned length)
doesn't depend on the case of the long name. Note that this
is the only place where we need to use a multi-byte string
function */
+ length = MIN(length,sizeof(fstring)-1);
strncpy(str, key, length);
str[length] = 0;
strupper_m(str);
diff --git a/source/smbd/open.c b/source/smbd/open.c
index 65500c65cee..6d559ac8280 100644
--- a/source/smbd/open.c
+++ b/source/smbd/open.c
@@ -592,7 +592,7 @@ static int open_mode_check(connection_struct *conn, const char *fname, SMB_DEV_T
int i;
int num_share_modes;
int oplock_contention_count = 0;
- share_mode_entry *old_shares = 0;
+ share_mode_entry *old_shares = NULL;
BOOL fcbopen = False;
BOOL broke_oplock;
@@ -601,12 +601,15 @@ static int open_mode_check(connection_struct *conn, const char *fname, SMB_DEV_T
num_share_modes = get_share_modes(conn, dev, inode, &old_shares);
- if(num_share_modes == 0)
+ if(num_share_modes == 0) {
+ SAFE_FREE(old_shares);
return 0;
+ }
if (desired_access && ((desired_access & ~(SYNCHRONIZE_ACCESS|FILE_READ_ATTRIBUTES|FILE_WRITE_ATTRIBUTES))==0) &&
((desired_access & (SYNCHRONIZE_ACCESS|FILE_READ_ATTRIBUTES|FILE_WRITE_ATTRIBUTES)) != 0)) {
/* Stat open that doesn't trigger oplock breaks or share mode checks... ! JRA. */
+ SAFE_FREE(old_shares);
return num_share_modes;
}
@@ -758,9 +761,6 @@ after break ! For file %s, dev = %x, inode = %.0f. Deleting it to continue...\n"
free_broken_entry_list(broken_entry_list);
} while(broke_oplock);
- if(old_shares != 0)
- SAFE_FREE(old_shares);
-
/*
* Refuse to grant an oplock in case the contention limit is
* reached when going through the lock list multiple times.
@@ -772,6 +772,7 @@ after break ! For file %s, dev = %x, inode = %.0f. Deleting it to continue...\n"
oplock_contention_count ));
}
+ SAFE_FREE(old_shares);
return num_share_modes;
}
@@ -1024,7 +1025,7 @@ files_struct *open_file_shared1(connection_struct *conn,char *fname, SMB_STRUCT_
ignored */
if (Access)
*Access = DOS_OPEN_WRONLY;
- if (action)
+ if (paction)
*paction = FILE_WAS_CREATED;
return print_fsp_open(conn, fname);
}
diff --git a/source/smbd/password.c b/source/smbd/password.c
index 3be1516cf04..cf3c3d64d20 100644
--- a/source/smbd/password.c
+++ b/source/smbd/password.c
@@ -252,27 +252,30 @@ int register_vuid(auth_serversupplied_info *server_info, DATA_BLOB session_key,
}
/* Register a home dir service for this user iff
+
(a) This is not a guest connection,
(b) we have a home directory defined
- If a share exists by this name (autoloaded or not) reuse it so
- long as the home directory is the same as the share directory. */
+ (c) there s not an existing static share by that name
+
+ If a share exists by this name (autoloaded or not) reuse it . */
+
+ vuser->homes_snum = -1;
- if ( (!vuser->guest) && vuser->unix_homedir && *(vuser->unix_homedir)) {
+ if ( (!vuser->guest) && vuser->unix_homedir && *(vuser->unix_homedir))
+ {
int servicenumber = lp_servicenumber(vuser->user.unix_name);
+
if ( servicenumber == -1 ) {
DEBUG(3, ("Adding homes service for user '%s' using home directory: '%s'\n",
vuser->user.unix_name, vuser->unix_homedir));
vuser->homes_snum = add_home_service(vuser->user.unix_name,
vuser->user.unix_name, vuser->unix_homedir);
- } else if (strcmp(lp_pathname(servicenumber),vuser->unix_homedir) == 0) {
- DEBUG(3, ("Reusing homes service for user '%s' using home directory: '%s'\n",
- vuser->user.unix_name, vuser->unix_homedir));
-
+ } else {
+ DEBUG(3, ("Using static (or previously created) service for user '%s'; path = '%s'\n",
+ vuser->user.unix_name, lp_pathname(servicenumber) ));
vuser->homes_snum = servicenumber;
}
- } else {
- vuser->homes_snum = -1;
- }
+ }
if (srv_is_signing_negotiated() && !vuser->guest && !srv_signing_started()) {
/* Try and turn on server signing on the first non-guest sessionsetup. */
diff --git a/source/smbd/reply.c b/source/smbd/reply.c
index 611fb04c19b..30616a66fbf 100644
--- a/source/smbd/reply.c
+++ b/source/smbd/reply.c
@@ -97,26 +97,25 @@ NTSTATUS check_path_syntax(pstring destname, const pstring srcname, BOOL allow_w
d--;
}
s += 3;
- } else if ((s[0] == '.') && (IS_DIRECTORY_SEP(s[1]) || (s[1] == '\0'))) {
-
+ } else if ((s[0] == '.') && (s[1] == '\0')) {
+ if (s == srcname) {
+ ret = NT_STATUS_OBJECT_NAME_INVALID;
+ break;
+ }
+ *d++ = *s++;
+ } else if ((s[0] == '.') && IS_DIRECTORY_SEP(s[1])) {
/*
* No mb char starts with '.' so we're safe checking the directory separator here.
*/
- /* "./" or ".\\" fails with a different error depending on where it is... */
+ /* "./" or ".\\" fails with a different error depending on what is after it... */
- if (s == srcname) {
+ if (s[2] == '\0') {
ret = NT_STATUS_OBJECT_NAME_INVALID;
- break;
} else {
- if (s[1] != '\0' && s[2] == '\0') {
- ret = NT_STATUS_INVALID_PARAMETER;
- break;
- }
ret = NT_STATUS_OBJECT_PATH_NOT_FOUND;
- break;
}
- s++;
+ break;
} else {
if (!(*s & 0x80)) {
if (allow_wcard_names) {
@@ -521,7 +520,6 @@ int reply_ioctl(connection_struct *conn,
int reply_chkpth(connection_struct *conn, char *inbuf,char *outbuf, int dum_size, int dum_buffsize)
{
int outsize = 0;
- int mode;
pstring name;
BOOL ok = False;
BOOL bad_path = False;
@@ -544,8 +542,6 @@ int reply_chkpth(connection_struct *conn, char *inbuf,char *outbuf, int dum_size
return ERROR_NT(NT_STATUS_OBJECT_PATH_NOT_FOUND);
}
- mode = SVAL(inbuf,smb_vwv0);
-
if (check_name(name,conn)) {
if (VALID_STAT(sbuf) || SMB_VFS_STAT(conn,name,&sbuf) == 0)
if (!(ok = S_ISDIR(sbuf.st_mode))) {
@@ -578,8 +574,7 @@ int reply_chkpth(connection_struct *conn, char *inbuf,char *outbuf, int dum_size
}
outsize = set_message(outbuf,0,0,True);
-
- DEBUG(3,("chkpth %s mode=%d\n", name, mode));
+ DEBUG(3,("chkpth %s mode=%d\n", name, (int)SVAL(inbuf,smb_vwv0)));
END_PROFILE(SMBchkpth);
return(outsize);
diff --git a/source/smbd/uid.c b/source/smbd/uid.c
index de2f96450fc..77dc19b87bf 100644
--- a/source/smbd/uid.c
+++ b/source/smbd/uid.c
@@ -130,6 +130,7 @@ static BOOL check_user_ok(connection_struct *conn, user_struct *vuser,int snum)
/* smb.conf allows r/w, but the security descriptor denies
* write. Fall back to looking at readonly. */
readonly_share = True;
+ DEBUG(5,("falling back to read-only access-evaluation due to security descriptor\n"));
}
if (!share_access_check(conn, snum, vuser, readonly_share ? FILE_READ_DATA : FILE_WRITE_DATA)) {
diff --git a/source/smbd/vfs.c b/source/smbd/vfs.c
index a47f040f6a8..0328558fe88 100644
--- a/source/smbd/vfs.c
+++ b/source/smbd/vfs.c
@@ -909,7 +909,8 @@ BOOL reduce_name(connection_struct *conn, const pstring fname)
return False;
}
- if (strncmp(conn->connectpath, resolved_name, con_path_len) != 0) {
+ /* Check for widelinks allowed. */
+ if (!lp_widelinks(SNUM(conn)) && (strncmp(conn->connectpath, resolved_name, con_path_len) != 0)) {
DEBUG(2, ("reduce_name: Bad access attempt: %s is a symlink outside the share path", fname));
if (free_resolved_name)
SAFE_FREE(resolved_name);
@@ -917,28 +918,23 @@ BOOL reduce_name(connection_struct *conn, const pstring fname)
return False;
}
- /* Move path the connect path to the last part of the filename. */
- p = resolved_name + con_path_len;
- if (*p == '/') {
- p++;
- }
-
- if (!*p) {
- if (fname[0] == '.' && fname[1] == '/' && fname[2] == '\0') {
- pstrcpy(resolved_name, "./");
- } else {
- pstrcpy(resolved_name, ".");
- }
- p = resolved_name;
- }
-
- if (!lp_symlinks(SNUM(conn)) && (strcmp(fname, p)!=0)) {
- DEBUG(3,("reduce_name: denied: file path name %s is a symlink\n",fname));
- if (free_resolved_name)
- SAFE_FREE(resolved_name);
- errno = EACCES;
- return False;
- }
+ /* Check if we are allowing users to follow symlinks */
+ /* Patch from David Clerc <David.Clerc@cui.unige.ch>
+ University of Geneva */
+
+#ifdef S_ISLNK
+ if (!lp_symlinks(SNUM(conn))) {
+ SMB_STRUCT_STAT statbuf;
+ if ( (SMB_VFS_LSTAT(conn,fname,&statbuf) != -1) &&
+ (S_ISLNK(statbuf.st_mode)) ) {
+ if (free_resolved_name)
+ SAFE_FREE(resolved_name);
+ DEBUG(3,("reduce_name: denied: file path name %s is a symlink\n",resolved_name));
+ errno = EACCES;
+ return False;
+ }
+ }
+#endif
DEBUG(3,("reduce_name: %s reduced to %s\n", fname, p));
if (free_resolved_name)
diff --git a/source/tdb/tdb.c b/source/tdb/tdb.c
index cda9fc24750..fec0b3094d3 100644
--- a/source/tdb/tdb.c
+++ b/source/tdb/tdb.c
@@ -489,7 +489,7 @@ static int rec_free_read(TDB_CONTEXT *tdb, tdb_off off, struct list_struct *rec)
if (rec->magic == TDB_MAGIC) {
/* this happens when a app is showdown while deleting a record - we should
not completely fail when this happens */
- TDB_LOG((tdb, 0,"rec_free_read non-free magic at offset=%d - fixing\n",
+ TDB_LOG((tdb, 0,"rec_free_read non-free magic 0x%x at offset=%d - fixing\n",
rec->magic, off));
rec->magic = TDB_FREE_MAGIC;
if (tdb_write(tdb, off, rec, sizeof(*rec)) == -1)
diff --git a/source/utils/ntlm_auth.c b/source/utils/ntlm_auth.c
index 4d369630ab3..609b480406e 100644
--- a/source/utils/ntlm_auth.c
+++ b/source/utils/ntlm_auth.c
@@ -1765,7 +1765,7 @@ enum {
/* Samba client initialisation */
if (!lp_load(dyn_CONFIGFILE, True, False, False)) {
- d_fprintf(stderr, "wbinfo: error opening config file %s. Error was %s\n",
+ d_fprintf(stderr, "ntlm_auth: error opening config file %s. Error was %s\n",
dyn_CONFIGFILE, strerror(errno));
exit(1);
}