[SCM] Samba Shared Repository - branch v3-2-test updated -
initial-v3-2-unstable-427-gf4cc9ca
Jeremy Allison
jra at samba.org
Sat Dec 1 18:53:52 GMT 2007
The branch, v3-2-test has been updated
via f4cc9cab518e97c1049aaad7516aba212ae15c95 (commit)
via 156c7f10bb63a610f85b52242cfd1b67bfa73c29 (commit)
via edce7bd7a9dd1064ba8aec34b334c7395228f40b (commit)
via 1be19f07889ae09f79030f1ff8f2cf5e9a3d9dc5 (commit)
from 37f00926c29c22f27e7192c1fff0a08ce136cb86 (commit)
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-2-test
- Log -----------------------------------------------------------------
commit f4cc9cab518e97c1049aaad7516aba212ae15c95
Author: Volker Lendecke <vl at sernet.de>
Date: Sat Dec 1 15:01:01 2007 +0100
In nttransact_create, we also need to check for delete readonly
commit 156c7f10bb63a610f85b52242cfd1b67bfa73c29
Author: Volker Lendecke <vl at sernet.de>
Date: Sat Dec 1 11:43:12 2007 +0100
Fix some C++ warnings
commit edce7bd7a9dd1064ba8aec34b334c7395228f40b
Author: Volker Lendecke <vl at sernet.de>
Date: Sat Dec 1 11:43:00 2007 +0100
Fix an uninitialized variable
commit 1be19f07889ae09f79030f1ff8f2cf5e9a3d9dc5
Author: Volker Lendecke <vl at sernet.de>
Date: Sat Dec 1 11:42:32 2007 +0100
Fix some C++ warnings
I think were are actually bugs.
-----------------------------------------------------------------------
Summary of changes:
source/libsmb/clifile.c | 2 +-
source/libsmb/libsmbclient.c | 2 +-
source/rpc_server/srv_eventlog_nt.c | 25 ++++++++++---------------
source/rpcclient/cmd_spoolss.c | 12 +++---------
source/smbd/nttrans.c | 3 ++-
5 files changed, 17 insertions(+), 27 deletions(-)
Changeset truncated at 500 lines:
diff --git a/source/libsmb/clifile.c b/source/libsmb/clifile.c
index e438b6d..cd50cfc 100644
--- a/source/libsmb/clifile.c
+++ b/source/libsmb/clifile.c
@@ -1478,7 +1478,7 @@ int cli_ctemp(struct cli_state *cli, const char *path, char **tmp_path)
if (len <= 0 || len > PATH_MAX) return -1;
if (tmp_path) {
- char *path2 = SMB_MALLOC(len+1);
+ char *path2 = SMB_MALLOC_ARRAY(char, len+1);
if (!path2) {
return -1;
}
diff --git a/source/libsmb/libsmbclient.c b/source/libsmb/libsmbclient.c
index 26ff339..b654ea0 100644
--- a/source/libsmb/libsmbclient.c
+++ b/source/libsmb/libsmbclient.c
@@ -4172,7 +4172,7 @@ convert_string_to_sid(struct cli_state *ipc_cli,
enum lsa_SidType *types = NULL;
DOM_SID *sids = NULL;
bool result = True;
- TALLOC_CTX *ctx;
+ TALLOC_CTX *ctx = NULL;
struct rpc_pipe_client *pipe_hnd = find_lsa_pipe_hnd(ipc_cli);
if (!pipe_hnd) {
diff --git a/source/rpc_server/srv_eventlog_nt.c b/source/rpc_server/srv_eventlog_nt.c
index cd06be1..3c9c835 100644
--- a/source/rpc_server/srv_eventlog_nt.c
+++ b/source/rpc_server/srv_eventlog_nt.c
@@ -355,18 +355,16 @@ static Eventlog_entry *get_eventlog_record(prs_struct *ps,
into it's 2nd argment for 'B' */
if (wpcomputer) {
- ee->data_record.computer_name = TALLOC_MEMDUP(ee,
- wpcomputer,
- ee->data_record.computer_name_len);
+ ee->data_record.computer_name = (smb_ucs2_t *)TALLOC_MEMDUP(
+ ee, wpcomputer, ee->data_record.computer_name_len);
if (!ee->data_record.computer_name) {
TALLOC_FREE(ee);
goto out;
}
}
if (wpsource) {
- ee->data_record.source_name = TALLOC_MEMDUP(ee,
- wpsource,
- ee->data_record.source_name_len);
+ ee->data_record.source_name = (smb_ucs2_t *)TALLOC_MEMDUP(
+ ee, wpsource, ee->data_record.source_name_len);
if (!ee->data_record.source_name) {
TALLOC_FREE(ee);
goto out;
@@ -374,18 +372,16 @@ static Eventlog_entry *get_eventlog_record(prs_struct *ps,
}
if (wpsid) {
- ee->data_record.sid = TALLOC_MEMDUP(ee,
- wpsid,
- ee->record.user_sid_length);
+ ee->data_record.sid = (smb_ucs2_t *)TALLOC_MEMDUP(
+ ee, wpsid, ee->record.user_sid_length);
if (!ee->data_record.sid) {
TALLOC_FREE(ee);
goto out;
}
}
if (wpstrs) {
- ee->data_record.strings = TALLOC_MEMDUP(ee,
- wpstrs,
- ee->data_record.strings_len);
+ ee->data_record.strings = (smb_ucs2_t *)TALLOC_MEMDUP(
+ ee, wpstrs, ee->data_record.strings_len);
if (!ee->data_record.strings) {
TALLOC_FREE(ee);
goto out;
@@ -393,9 +389,8 @@ static Eventlog_entry *get_eventlog_record(prs_struct *ps,
}
if (puserdata) {
- ee->data_record.user_data = TALLOC_MEMDUP(ee,
- puserdata,
- ee->data_record.user_data_len);
+ ee->data_record.user_data = (char *)TALLOC_MEMDUP(
+ ee, puserdata, ee->data_record.user_data_len);
if (!ee->data_record.user_data) {
TALLOC_FREE(ee);
goto out;
diff --git a/source/rpcclient/cmd_spoolss.c b/source/rpcclient/cmd_spoolss.c
index 3bcf1bd..92d8096 100644
--- a/source/rpcclient/cmd_spoolss.c
+++ b/source/rpcclient/cmd_spoolss.c
@@ -2265,9 +2265,7 @@ static WERROR cmd_spoolss_enum_data( struct rpc_pipe_client *cli,
return WERR_NOMEM;
}
strupper_m(printername);
- printername = talloc_asprintf_append(mem_ctx,
- "%s",
- argv[1]);
+ printername = talloc_asprintf_append(printername, "%s", argv[1]);
if (!printername) {
return WERR_NOMEM;
}
@@ -2340,9 +2338,7 @@ static WERROR cmd_spoolss_enum_data_ex( struct rpc_pipe_client *cli,
return WERR_NOMEM;
}
strupper_m(printername);
- printername = talloc_asprintf_append(mem_ctx,
- "%s",
- argv[1]);
+ printername = talloc_asprintf_append(printername, "%s", argv[1]);
if (!printername) {
return WERR_NOMEM;
}
@@ -2417,9 +2413,7 @@ static WERROR cmd_spoolss_enum_printerkey( struct rpc_pipe_client *cli,
return WERR_NOMEM;
}
strupper_m(printername);
- printername = talloc_asprintf_append(mem_ctx,
- "%s",
- argv[1]);
+ printername = talloc_asprintf_append(printername, "%s", argv[1]);
if (!printername) {
return WERR_NOMEM;
}
diff --git a/source/smbd/nttrans.c b/source/smbd/nttrans.c
index d03abae..9ff1cac 100644
--- a/source/smbd/nttrans.c
+++ b/source/smbd/nttrans.c
@@ -1535,7 +1535,8 @@ static void call_nt_transact_create(connection_struct *conn,
&& (create_disposition != FILE_CREATE)
&& (share_access & FILE_SHARE_DELETE)
&& (access_mask & DELETE_ACCESS)) {
- if ((dos_mode(conn, fname, &sbuf) & FILE_ATTRIBUTE_READONLY) ||
+ if (((dos_mode(conn, fname, &sbuf) & FILE_ATTRIBUTE_READONLY)
+ && !lp_delete_readonly(SNUM(conn))) ||
!can_delete_file_in_directory(conn, fname)) {
TALLOC_FREE(case_state);
reply_nterror(req, NT_STATUS_ACCESS_DENIED);
--
Samba Shared Repository
More information about the samba-cvs
mailing list