[SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha7-2033-g73e3c85

Jeremy Allison jra at samba.org
Thu Jun 4 19:47:56 GMT 2009


The branch, master has been updated
       via  73e3c85abac706be0a1836f3a4375ab379eceb86 (commit)
      from  930ea7c8a8879e98826ffdc391bab8b5a2864c5f (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 73e3c85abac706be0a1836f3a4375ab379eceb86
Author: Jeremy Allison <jra at samba.org>
Date:   Thu Jun 4 12:47:17 2009 -0700

    Change smbd_smb2_request_error() to add a __location__.
    This allows quick identification of smb2 parsing errors.
    Jeremy.

-----------------------------------------------------------------------

Summary of changes:
 source3/include/smb_macros.h |    3 +++
 source3/smbd/globals.h       |    7 +++----
 source3/smbd/smb2_server.c   |   13 +++++++------
 3 files changed, 13 insertions(+), 10 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/include/smb_macros.h b/source3/include/smb_macros.h
index 7528883..6dd9cab 100644
--- a/source3/include/smb_macros.h
+++ b/source3/include/smb_macros.h
@@ -339,4 +339,7 @@ extern const char toupper_ascii_fast_table[];
 #define toupper_ascii_fast(c) toupper_ascii_fast_table[(unsigned int)(c)];
 #endif
 
+#define smbd_smb2_request_error(req, status) \
+	smbd_smb2_request_error_((req), (status), __location__)
+
 #endif /* _SMB_MACROS_H */
diff --git a/source3/smbd/globals.h b/source3/smbd/globals.h
index 1c2b628..4c90e8f 100644
--- a/source3/smbd/globals.h
+++ b/source3/smbd/globals.h
@@ -176,10 +176,9 @@ void reply_smb2002(struct smb_request *req, uint16_t choice);
 void smbd_smb2_first_negprot(struct smbd_server_connection *conn,
 			     const uint8_t *inbuf, size_t size);
 
-NTSTATUS smbd_smb2_request_error_ex(struct smbd_smb2_request *req,
-				    NTSTATUS status, DATA_BLOB *info);
-NTSTATUS smbd_smb2_request_error(struct smbd_smb2_request *req,
-				 NTSTATUS status);
+NTSTATUS smbd_smb2_request_error_(struct smbd_smb2_request *req,
+				 NTSTATUS status,
+				 const char *wherestr);
 NTSTATUS smbd_smb2_request_done_ex(struct smbd_smb2_request *req,
 				   NTSTATUS status,
 				   DATA_BLOB body, DATA_BLOB *dyn);
diff --git a/source3/smbd/smb2_server.c b/source3/smbd/smb2_server.c
index 20754fb..5c4bdca 100644
--- a/source3/smbd/smb2_server.c
+++ b/source3/smbd/smb2_server.c
@@ -583,16 +583,17 @@ static void smbd_smb2_request_writev_done(struct tevent_req *subreq)
 	talloc_free(mem_pool);
 }
 
-NTSTATUS smbd_smb2_request_error_ex(struct smbd_smb2_request *req,
+static NTSTATUS smbd_smb2_request_error_ex(struct smbd_smb2_request *req,
 				    NTSTATUS status,
+				    const char *wherestr,
 				    DATA_BLOB *info)
 {
 	uint8_t *outhdr;
 	uint8_t *outbody;
 	int i = req->current_idx;
 
-	DEBUG(10,("smbd_smb2_request_error_ex: idx[%d] status[%s]%s\n",
-		  i, nt_errstr(status), info ? " +info" : ""));
+	DEBUG(10,("smbd_smb2_request_error_ex: idx[%d] status[%s] at %s |%s|\n",
+		  i, nt_errstr(status), wherestr, info ? " +info" : ""));
 
 	outhdr = (uint8_t *)req->out.vector[i].iov_base;
 
@@ -619,10 +620,10 @@ NTSTATUS smbd_smb2_request_error_ex(struct smbd_smb2_request *req,
 	return smbd_smb2_request_reply(req);
 }
 
-NTSTATUS smbd_smb2_request_error(struct smbd_smb2_request *req,
-				 NTSTATUS status)
+NTSTATUS smbd_smb2_request_error_(struct smbd_smb2_request *req,
+				 NTSTATUS status, const char *wherestr)
 {
-	return smbd_smb2_request_error_ex(req, status, NULL);
+	return smbd_smb2_request_error_ex(req, status, wherestr, NULL);
 }
 
 NTSTATUS smbd_smb2_request_done_ex(struct smbd_smb2_request *req,


-- 
Samba Shared Repository


More information about the samba-cvs mailing list