summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--WHATSNEW.txt9
-rw-r--r--source3/configure.in7
-rw-r--r--source3/include/ntdomain.h7
-rw-r--r--source3/lib/netapi/netapi.c3
-rw-r--r--source3/lib/util_tdb.c2
-rw-r--r--source3/modules/vfs_aio_fork.c1
-rw-r--r--source3/rpc_server/srv_pipe.c15
7 files changed, 23 insertions, 21 deletions
diff --git a/WHATSNEW.txt b/WHATSNEW.txt
index 1a5911237d..a8e31f7dcd 100644
--- a/WHATSNEW.txt
+++ b/WHATSNEW.txt
@@ -204,6 +204,15 @@ o Michael Adam <obnox@samba.org>
* Fix build of bin/net on Solaris.
* Reformat the parm table of loadparm to use named initializers.
* Fix %I macro expansion for IPv4 mapped IPv6 addresses.
+ * Convert registry.tdb to use dbwrap and fix memleaks.
+ * Several make test fixes and improvements.
+ * Rename libnet_conf to libsmbconf and introduce backend abstraction layer.
+ * Add text backend to libsmbconf, based on params.c.
+ * Fix handling of includes in registry libsmbconf backend.
+ * Fix net conf import by reading from text backend.
+ * Add a "net registry" command to locally access the registry.
+ * Add testsuites for libsmbconf and "net registry".
+ * Fix Coverity IDs 517, 536, 545.
o Jeremy Allison <jra@samba.org>
diff --git a/source3/configure.in b/source3/configure.in
index ce3fcc90e2..5f16d699ac 100644
--- a/source3/configure.in
+++ b/source3/configure.in
@@ -4728,6 +4728,13 @@ AC_ARG_WITH([static-libs],
done], [])],
[])
+#
+# WORKAROUND:
+# until we have organized other internal subsystems (as util, registrt
+# and smbconf) into shared libraries, we CAN NOT link libnetapi
+# dynamically to samba programs.
+#
+LINK_LIBNETAPI=STATIC
SMB_LIBRARY(talloc)
SMB_LIBRARY(tdb)
diff --git a/source3/include/ntdomain.h b/source3/include/ntdomain.h
index b89b0fea3a..74a59443c8 100644
--- a/source3/include/ntdomain.h
+++ b/source3/include/ntdomain.h
@@ -233,13 +233,6 @@ typedef struct pipes_struct {
struct dcinfo *dc; /* Keeps the creds data from netlogon. */
/*
- * Windows user info.
- */
- fstring user_name;
- fstring domain;
- fstring wks;
-
- /*
* Unix user name and credentials used when a pipe is authenticated.
*/
diff --git a/source3/lib/netapi/netapi.c b/source3/lib/netapi/netapi.c
index 2478a8dda1..cb218f0ced 100644
--- a/source3/lib/netapi/netapi.c
+++ b/source3/lib/netapi/netapi.c
@@ -54,6 +54,9 @@ NET_API_STATUS libnetapi_init(struct libnetapi_ctx **context)
if (!DEBUGLEVEL) {
DEBUGLEVEL = 0;
}
+
+ /* prevent setup_logging() from closing x_stderr... */
+ dbf = 0;
setup_logging("libnetapi", true);
dbf = x_stderr;
diff --git a/source3/lib/util_tdb.c b/source3/lib/util_tdb.c
index ce5e77f8f4..8257232667 100644
--- a/source3/lib/util_tdb.c
+++ b/source3/lib/util_tdb.c
@@ -862,7 +862,7 @@ static void tdb_wrap_log(TDB_CONTEXT *tdb, enum tdb_debug_level level,
switch (level) {
case TDB_DEBUG_FATAL:
- debug_level = 0;
+ debuglevel = 0;
break;
case TDB_DEBUG_ERROR:
debuglevel = 1;
diff --git a/source3/modules/vfs_aio_fork.c b/source3/modules/vfs_aio_fork.c
index 28428f2e49..7914e8f401 100644
--- a/source3/modules/vfs_aio_fork.c
+++ b/source3/modules/vfs_aio_fork.c
@@ -436,7 +436,6 @@ static NTSTATUS create_aio_child(struct aio_child_list *children,
if (socketpair(AF_UNIX, SOCK_STREAM, 0, fdpair) == -1) {
status = map_nt_error_from_unix(errno);
DEBUG(10, ("socketpair() failed: %s\n", strerror(errno)));
- TALLOC_FREE(result);
goto fail;
}
diff --git a/source3/rpc_server/srv_pipe.c b/source3/rpc_server/srv_pipe.c
index 05cdb65a83..4ac9f7a6f4 100644
--- a/source3/rpc_server/srv_pipe.c
+++ b/source3/rpc_server/srv_pipe.c
@@ -614,11 +614,6 @@ static bool pipe_ntlmssp_verify_final(pipes_struct *p, DATA_BLOB *p_resp_blob)
ZERO_STRUCT(reply);
- memset(p->user_name, '\0', sizeof(p->user_name));
- memset(p->pipe_user_name, '\0', sizeof(p->pipe_user_name));
- memset(p->domain, '\0', sizeof(p->domain));
- memset(p->wks, '\0', sizeof(p->wks));
-
/* Set up for non-authenticated user. */
TALLOC_FREE(p->pipe_user.nt_user_token);
p->pipe_user.ut.ngroups = 0;
@@ -656,14 +651,10 @@ static bool pipe_ntlmssp_verify_final(pipes_struct *p, DATA_BLOB *p_resp_blob)
return False;
}
}
-
- fstrcpy(p->user_name, a->ntlmssp_state->user);
- fstrcpy(p->pipe_user_name, a->server_info->unix_name);
- fstrcpy(p->domain, a->ntlmssp_state->domain);
- fstrcpy(p->wks, a->ntlmssp_state->workstation);
- DEBUG(5,("pipe_ntlmssp_verify_final: OK: user: %s domain: %s workstation: %s\n",
- p->user_name, p->domain, p->wks));
+ DEBUG(5, ("pipe_ntlmssp_verify_final: OK: user: %s domain: %s "
+ "workstation: %s\n", a->ntlmssp_state->user,
+ a->ntlmssp_state->domain, a->ntlmssp_state->workstation));
/*
* Store the UNIX credential data (uid/gid pair) in the pipe structure.