svn commit: samba r11856 - branches/SAMBA_3_0/source/include branches/SAMBA_3_0/source/rpc_parse branches/SAMBA_3_0/source/rpc_server branches/SAMBA_3_0/source/rpcclient trunk/source/include trunk/source/rpc_parse trunk/source/rpc_server trunk/source/rpcclient

gd at samba.org gd at samba.org
Tue Nov 22 14:29:17 GMT 2005


Author: gd
Date: 2005-11-22 14:29:14 +0000 (Tue, 22 Nov 2005)
New Revision: 11856

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=11856

Log:
Replace unknown1 with group_attr.

Can anyone remember why we initialize groups only with 0x03 instead of 0x07 ?

Guenther

Modified:
   branches/SAMBA_3_0/source/include/rpc_samr.h
   branches/SAMBA_3_0/source/rpc_parse/parse_samr.c
   branches/SAMBA_3_0/source/rpc_server/srv_samr_nt.c
   branches/SAMBA_3_0/source/rpcclient/cmd_samr.c
   trunk/source/include/rpc_samr.h
   trunk/source/rpc_parse/parse_samr.c
   trunk/source/rpc_server/srv_samr_nt.c
   trunk/source/rpcclient/cmd_samr.c


Changeset:
Modified: branches/SAMBA_3_0/source/include/rpc_samr.h
===================================================================
--- branches/SAMBA_3_0/source/include/rpc_samr.h	2005-11-22 14:20:02 UTC (rev 11855)
+++ branches/SAMBA_3_0/source/include/rpc_samr.h	2005-11-22 14:29:14 UTC (rev 11856)
@@ -1065,7 +1065,7 @@
 {
 	UNIHDR hdr_acct_name;
 
-	uint32 unknown_1; /* 0x0000 0003 - number of group members? */
+	uint32 group_attr; /* 0x0000 0003 - group attribute */
 	uint32 num_members; /* 0x0000 0001 - number of group members? */
 
 	UNIHDR hdr_acct_desc;
@@ -1085,7 +1085,7 @@
 
 typedef struct samr_group_info3
 {
-	uint32 unknown_1; /* 0x0000 0003 - number of group members? */
+	uint32 group_attr; /* 0x0000 0003 - group attribute */
 
 } GROUP_INFO3;
 

Modified: branches/SAMBA_3_0/source/rpc_parse/parse_samr.c
===================================================================
--- branches/SAMBA_3_0/source/rpc_parse/parse_samr.c	2005-11-22 14:20:02 UTC (rev 11855)
+++ branches/SAMBA_3_0/source/rpc_parse/parse_samr.c	2005-11-22 14:29:14 UTC (rev 11856)
@@ -2141,7 +2141,7 @@
 {
 	DEBUG(5, ("init_samr_group_info1\n"));
 
-	gr1->unknown_1 = 0x3;
+	gr1->group_attr = (SE_GROUP_MANDATORY|SE_GROUP_ENABLED_BY_DEFAULT); /* why not | SE_GROUP_ENABLED ? */
 	gr1->num_members = num_members;
 
 	init_unistr2(&gr1->uni_acct_name, acct_name, UNI_FLAGS_NONE);
@@ -2174,7 +2174,7 @@
 	if(!smb_io_unihdr("hdr_acct_name", &gr1->hdr_acct_name, ps, depth))
 		return False;
 
-	if(!prs_uint32("unknown_1", ps, depth, &gr1->unknown_1))
+	if(!prs_uint32("group_attr", ps, depth, &gr1->group_attr))
 		return False;
 	if(!prs_uint32("num_members", ps, depth, &gr1->num_members))
 		return False;
@@ -2238,7 +2238,7 @@
 {
 	DEBUG(5, ("init_samr_group_info3\n"));
 
-	gr3->unknown_1 = 0x3;
+	gr3->group_attr = (SE_GROUP_MANDATORY|SE_GROUP_ENABLED_BY_DEFAULT); /* why not | SE_GROUP_ENABLED ? */
 }
 
 /*******************************************************************
@@ -2256,7 +2256,7 @@
 	if(!prs_align(ps))
 		return False;
 
-	if(!prs_uint32("unknown_1", ps, depth, &gr3->unknown_1))
+	if(!prs_uint32("group_attr", ps, depth, &gr3->group_attr))
 		return False;
 
 	return True;

Modified: branches/SAMBA_3_0/source/rpc_server/srv_samr_nt.c
===================================================================
--- branches/SAMBA_3_0/source/rpc_server/srv_samr_nt.c	2005-11-22 14:20:02 UTC (rev 11855)
+++ branches/SAMBA_3_0/source/rpc_server/srv_samr_nt.c	2005-11-22 14:29:14 UTC (rev 11856)
@@ -1980,7 +1980,7 @@
 			continue;
 
 		gids = TALLOC_REALLOC_ARRAY(p->mem_ctx, gids, DOM_GID, num_gids+1);
-		gids[num_gids].attr=7;
+		gids[num_gids].attr= (SE_GROUP_MANDATORY|SE_GROUP_ENABLED_BY_DEFAULT|SE_GROUP_ENABLED);
 		gids[num_gids].g_rid = rid;
 		num_gids += 1;
 	}

Modified: branches/SAMBA_3_0/source/rpcclient/cmd_samr.c
===================================================================
--- branches/SAMBA_3_0/source/rpcclient/cmd_samr.c	2005-11-22 14:20:02 UTC (rev 11855)
+++ branches/SAMBA_3_0/source/rpcclient/cmd_samr.c	2005-11-22 14:29:14 UTC (rev 11856)
@@ -404,13 +404,22 @@
 	printf("\tGroup Name:\t%s\n", temp);
 	unistr2_to_ascii(temp, &info1->uni_acct_desc, sizeof(temp)-1);
 	printf("\tDescription:\t%s\n", temp);
-	printf("\tunk1:%d\n", info1->unknown_1);
+	printf("\tGroup Attribute:%d\n", info1->group_attr);
 	printf("\tNum Members:%d\n", info1->num_members);
 }
 
 /****************************************************************************
  display group info
  ****************************************************************************/
+static void display_group_info3(GROUP_INFO3 *info3)
+{
+	printf("\tGroup Attribute:%d\n", info3->group_attr);
+}
+
+
+/****************************************************************************
+ display group info
+ ****************************************************************************/
 static void display_group_info4(GROUP_INFO4 *info4)
 {
 	fstring desc;
@@ -429,6 +438,10 @@
 		    display_group_info1(&ctr->group.info1);
 		    break;
 	    }
+	    case 3: {
+		    display_group_info3(&ctr->group.info3);
+		    break;
+	    }
 	    case 4: {
 		    display_group_info4(&ctr->group.info4);
 		    break;

Modified: trunk/source/include/rpc_samr.h
===================================================================
--- trunk/source/include/rpc_samr.h	2005-11-22 14:20:02 UTC (rev 11855)
+++ trunk/source/include/rpc_samr.h	2005-11-22 14:29:14 UTC (rev 11856)
@@ -1065,7 +1065,7 @@
 {
 	UNIHDR hdr_acct_name;
 
-	uint32 unknown_1; /* 0x0000 0003 - number of group members? */
+	uint32 group_attr; /* 0x0000 0003 - group attribute */
 	uint32 num_members; /* 0x0000 0001 - number of group members? */
 
 	UNIHDR hdr_acct_desc;
@@ -1085,7 +1085,7 @@
 
 typedef struct samr_group_info3
 {
-	uint32 unknown_1; /* 0x0000 0003 - number of group members? */
+	uint32 group_attr; /* 0x0000 0003 - group attribute */
 
 } GROUP_INFO3;
 

Modified: trunk/source/rpc_parse/parse_samr.c
===================================================================
--- trunk/source/rpc_parse/parse_samr.c	2005-11-22 14:20:02 UTC (rev 11855)
+++ trunk/source/rpc_parse/parse_samr.c	2005-11-22 14:29:14 UTC (rev 11856)
@@ -2141,7 +2141,7 @@
 {
 	DEBUG(5, ("init_samr_group_info1\n"));
 
-	gr1->unknown_1 = 0x3;
+	gr1->group_attr = (SE_GROUP_MANDATORY|SE_GROUP_ENABLED_BY_DEFAULT); /* why not |SE_GROUP_ENABLED ? */
 	gr1->num_members = num_members;
 
 	init_unistr2(&gr1->uni_acct_name, acct_name, UNI_FLAGS_NONE);
@@ -2174,7 +2174,7 @@
 	if(!smb_io_unihdr("hdr_acct_name", &gr1->hdr_acct_name, ps, depth))
 		return False;
 
-	if(!prs_uint32("unknown_1", ps, depth, &gr1->unknown_1))
+	if(!prs_uint32("group_attr", ps, depth, &gr1->group_attr))
 		return False;
 	if(!prs_uint32("num_members", ps, depth, &gr1->num_members))
 		return False;
@@ -2238,7 +2238,7 @@
 {
 	DEBUG(5, ("init_samr_group_info3\n"));
 
-	gr3->unknown_1 = 0x3;
+	gr3->group_attr = (SE_GROUP_MANDATORY|SE_GROUP_ENABLED_BY_DEFAULT); /* why not |SE_GROUP_ENABLED ? */
 }
 
 /*******************************************************************
@@ -2256,7 +2256,7 @@
 	if(!prs_align(ps))
 		return False;
 
-	if(!prs_uint32("unknown_1", ps, depth, &gr3->unknown_1))
+	if(!prs_uint32("group_attr", ps, depth, &gr3->group_attr))
 		return False;
 
 	return True;

Modified: trunk/source/rpc_server/srv_samr_nt.c
===================================================================
--- trunk/source/rpc_server/srv_samr_nt.c	2005-11-22 14:20:02 UTC (rev 11855)
+++ trunk/source/rpc_server/srv_samr_nt.c	2005-11-22 14:29:14 UTC (rev 11856)
@@ -1980,7 +1980,7 @@
 			continue;
 
 		gids = TALLOC_REALLOC_ARRAY(p->mem_ctx, gids, DOM_GID, num_gids+1);
-		gids[num_gids].attr=7;
+		gids[num_gids].attr= (SE_GROUP_MANDATORY|SE_GROUP_ENABLED_BY_DEFAULT|SE_GROUP_ENABLED);
 		gids[num_gids].g_rid = rid;
 		num_gids += 1;
 	}

Modified: trunk/source/rpcclient/cmd_samr.c
===================================================================
--- trunk/source/rpcclient/cmd_samr.c	2005-11-22 14:20:02 UTC (rev 11855)
+++ trunk/source/rpcclient/cmd_samr.c	2005-11-22 14:29:14 UTC (rev 11856)
@@ -404,13 +404,22 @@
 	printf("\tGroup Name:\t%s\n", temp);
 	unistr2_to_ascii(temp, &info1->uni_acct_desc, sizeof(temp)-1);
 	printf("\tDescription:\t%s\n", temp);
-	printf("\tunk1:%d\n", info1->unknown_1);
+	printf("\tGroup Attribute:%d\n", info1->group_attr);
 	printf("\tNum Members:%d\n", info1->num_members);
 }
 
 /****************************************************************************
  display group info
  ****************************************************************************/
+static void display_group_info3(GROUP_INFO3 *info3)
+{
+	printf("\tGroup Attribute:%d\n", info3->group_attr);
+}
+
+
+/****************************************************************************
+ display group info
+ ****************************************************************************/
 static void display_group_info4(GROUP_INFO4 *info4)
 {
 	fstring desc;
@@ -429,6 +438,10 @@
 		    display_group_info1(&ctr->group.info1);
 		    break;
 	    }
+	    case 3: {
+		    display_group_info3(&ctr->group.info3);
+		    break;
+	    }
 	    case 4: {
 		    display_group_info4(&ctr->group.info4);
 		    break;



More information about the samba-cvs mailing list