[SCM] Samba Shared Repository - branch master updated

Matthias Dieter Wallnöfer mdw at samba.org
Tue Nov 10 08:28:31 MST 2009


The branch, master has been updated
       via  fd4061d... s4:dcesrv_samr - Add more checks for invalid levels
      from  cee83ac... Fixes for some tests not eorking against Windows or Samba.

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


- Log -----------------------------------------------------------------
commit fd4061daddc33085855f24dd7f36f0038daaeabb
Author: Matthias Dieter Wallnöfer <mwallnoefer at yahoo.de>
Date:   Tue Nov 10 16:26:23 2009 +0100

    s4:dcesrv_samr - Add more checks for invalid levels
    
    Add more checks on valid levels, mark unimplemented ones as "UNSUPPORTED" and
    otherwise as "INVALID_INFO_CLASS" to be safe.

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

Summary of changes:
 source4/rpc_server/samr/dcesrv_samr.c |   30 +++++++++++++++++++++++++++---
 1 files changed, 27 insertions(+), 3 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/rpc_server/samr/dcesrv_samr.c b/source4/rpc_server/samr/dcesrv_samr.c
index 641b35c..0b102b5 100644
--- a/source4/rpc_server/samr/dcesrv_samr.c
+++ b/source4/rpc_server/samr/dcesrv_samr.c
@@ -797,8 +797,10 @@ static NTSTATUS dcesrv_samr_QueryDomainInfo(struct dcesrv_call_state *dce_call,
 		break;
 	}
 	case 9:
+	{
 		attrs = NULL;
-		break;		
+		break;
+	}
 	case 11:
 	{
 		static const char * const attrs2[] = { "oEMInformation",
@@ -828,6 +830,10 @@ static NTSTATUS dcesrv_samr_QueryDomainInfo(struct dcesrv_call_state *dce_call,
 		attrs = attrs2;
 		break;
 	}
+	default:
+	{
+		return NT_STATUS_INVALID_INFO_CLASS;
+	}
 	}
 
 	/* some levels don't need a search */
@@ -881,9 +887,9 @@ static NTSTATUS dcesrv_samr_QueryDomainInfo(struct dcesrv_call_state *dce_call,
 	case 13:
 		return dcesrv_samr_info_DomInfo13(d_state, mem_ctx, dom_msgs, 
 						  &info->info13);
+	default:
+		return NT_STATUS_INVALID_INFO_CLASS;
 	}
-
-	return NT_STATUS_INVALID_INFO_CLASS;
 }
 
 
@@ -3148,6 +3154,10 @@ static NTSTATUS dcesrv_samr_QueryUserInfo(struct dcesrv_call_state *dce_call, TA
 		attrs = attrs2;
 		break;
 	}
+	case 18:
+	{
+		return NT_STATUS_NOT_SUPPORTED;
+	}
 	case 20:
 	{
 		static const char * const attrs2[] = {"userParameters",
@@ -3183,6 +3193,17 @@ static NTSTATUS dcesrv_samr_QueryUserInfo(struct dcesrv_call_state *dce_call, TA
 		attrs = attrs2;
 		break;
 	}
+	case 23:
+	case 24:
+	case 25:
+	case 26:
+	{
+		return NT_STATUS_NOT_SUPPORTED;
+	}
+	default:
+	{
+		return NT_STATUS_INVALID_INFO_CLASS;
+	}
 	}
 
 	/* pull all the user attributes */
@@ -4401,6 +4422,9 @@ static NTSTATUS dcesrv_samr_ValidatePassword(struct dcesrv_call_state *dce_call,
 					   pwInfo.min_password_length);
 		(*r->out.rep)->ctr3.status = res;
 	break;
+	default:
+		return NT_STATUS_INVALID_INFO_CLASS;
+	break;
 	}
 
 	return NT_STATUS_OK;


-- 
Samba Shared Repository


More information about the samba-cvs mailing list