svn commit: samba r11858 - branches/SAMBA_3_0/source/rpc_parse branches/SAMBA_3_0/source/rpcclient trunk/source/rpc_parse trunk/source/rpcclient

gd at samba.org gd at samba.org
Tue Nov 22 14:38:50 GMT 2005


Author: gd
Date: 2005-11-22 14:38:49 +0000 (Tue, 22 Nov 2005)
New Revision: 11858

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

Log:
Fill in the clientside TRUSTED_DOMAIN_INFO_EX query.

Guenther

Modified:
   branches/SAMBA_3_0/source/rpc_parse/parse_lsa.c
   branches/SAMBA_3_0/source/rpcclient/cmd_lsarpc.c
   trunk/source/rpc_parse/parse_lsa.c
   trunk/source/rpcclient/cmd_lsarpc.c


Changeset:
Modified: branches/SAMBA_3_0/source/rpc_parse/parse_lsa.c
===================================================================
--- branches/SAMBA_3_0/source/rpc_parse/parse_lsa.c	2005-11-22 14:32:29 UTC (rev 11857)
+++ branches/SAMBA_3_0/source/rpc_parse/parse_lsa.c	2005-11-22 14:38:49 UTC (rev 11858)
@@ -3009,6 +3009,44 @@
 /*******************************************************************
 ********************************************************************/
 
+static BOOL lsa_io_trustdom_query_6(const char *desc, TRUSTED_DOMAIN_INFO_EX *info_ex, 
+				    prs_struct *ps, int depth)
+{
+	uint32 dom_sid_ptr;
+	
+	if (!smb_io_unihdr("domain_name_hdr", &info_ex->domain_name.hdr, ps, depth))
+		return False;
+		
+	if (!smb_io_unihdr("netbios_name_hdr", &info_ex->netbios_name.hdr, ps, depth))
+		return False;
+
+	if (!prs_uint32("dom_sid_ptr", ps, depth, &dom_sid_ptr))
+		return False;
+
+	if (!prs_uint32("trust_direction", ps, depth, &info_ex->trust_direction))
+		return False;
+
+	if (!prs_uint32("trust_type", ps, depth, &info_ex->trust_type))
+		return False;
+
+	if (!prs_uint32("trust_attributes", ps, depth, &info_ex->trust_attributes))
+		return False;
+		
+	if (!smb_io_unistr2("domain_name_unistring", &info_ex->domain_name.unistring, info_ex->domain_name.hdr.buffer, ps, depth))
+		return False;
+		
+	if (!smb_io_unistr2("netbios_name_unistring", &info_ex->netbios_name.unistring, info_ex->netbios_name.hdr.buffer, ps, depth))
+		return False;
+
+	if (!smb_io_dom_sid2("sid", &info_ex->sid, ps, depth))
+		return False;
+
+	return True;
+}
+
+/*******************************************************************
+********************************************************************/
+
 static BOOL lsa_io_trustdom_query(const char *desc, prs_struct *ps, int depth, LSA_TRUSTED_DOMAIN_INFO *info)
 {
 	prs_debug(ps, depth, desc, "lsa_io_trustdom_query");
@@ -3033,6 +3071,10 @@
 		if(!lsa_io_trustdom_query_4("password", &info->password, ps, depth))
 			return False;
 		break;
+	case 6:
+		if(!lsa_io_trustdom_query_6("info_ex", &info->info_ex, ps, depth))
+			return False;
+		break;
 	default:
 		DEBUG(0,("unsupported info-level: %d\n", info->info_class));
 		return False;

Modified: branches/SAMBA_3_0/source/rpcclient/cmd_lsarpc.c
===================================================================
--- branches/SAMBA_3_0/source/rpcclient/cmd_lsarpc.c	2005-11-22 14:32:29 UTC (rev 11857)
+++ branches/SAMBA_3_0/source/rpcclient/cmd_lsarpc.c	2005-11-22 14:38:49 UTC (rev 11858)
@@ -771,7 +771,7 @@
 
 static void display_trust_dom_info_3(TRUSTED_DOMAIN_INFO_POSIX_OFFSET *p)
 {
-	printf("Posix Offset:\t%d\n", p->posix_offset);
+	printf("Posix Offset:\t%08x (%d)\n", p->posix_offset, p->posix_offset);
 }
 
 static void display_trust_dom_info_4(TRUSTED_DOMAIN_INFO_PASSWORD *p, const char *password)
@@ -800,6 +800,17 @@
 	data_blob_free(&data_old);
 }
 
+static void display_trust_dom_info_6(TRUSTED_DOMAIN_INFO_EX *i)
+{
+	printf("Domain Name:\t\t%s\n", unistr2_static(&i->domain_name.unistring));
+	printf("NetBIOS Name:\t\t%s\n", unistr2_static(&i->netbios_name.unistring));
+	printf("SID:\t\t\t%s\n", sid_string_static(&i->sid.sid));
+	printf("Trust Direction:\t0x%08x\n", i->trust_direction);
+	printf("Trust Type:\t\t0x%08x\n", i->trust_type);
+	printf("Trust Attributes:\t0x%08x\n", i->trust_attributes);
+}
+
+
 static void display_trust_dom_info(LSA_TRUSTED_DOMAIN_INFO *info, uint32 info_class, const char *pass)
 {
 	switch (info_class) {
@@ -812,6 +823,9 @@
 	case 4:
 		display_trust_dom_info_4(&info->password, pass);
 		break;
+	case 6:
+		display_trust_dom_info_6(&info->info_ex);
+		break;
 	default:
 		printf("unsupported info-class: %d\n", info_class);
 		break;

Modified: trunk/source/rpc_parse/parse_lsa.c
===================================================================
--- trunk/source/rpc_parse/parse_lsa.c	2005-11-22 14:32:29 UTC (rev 11857)
+++ trunk/source/rpc_parse/parse_lsa.c	2005-11-22 14:38:49 UTC (rev 11858)
@@ -3009,6 +3009,44 @@
 /*******************************************************************
 ********************************************************************/
 
+static BOOL lsa_io_trustdom_query_6(const char *desc, TRUSTED_DOMAIN_INFO_EX *info_ex, 
+				    prs_struct *ps, int depth)
+{
+	uint32 dom_sid_ptr;
+	
+	if (!smb_io_unihdr("domain_name_hdr", &info_ex->domain_name.hdr, ps, depth))
+		return False;
+		
+	if (!smb_io_unihdr("netbios_name_hdr", &info_ex->netbios_name.hdr, ps, depth))
+		return False;
+
+	if (!prs_uint32("dom_sid_ptr", ps, depth, &dom_sid_ptr))
+		return False;
+
+	if (!prs_uint32("trust_direction", ps, depth, &info_ex->trust_direction))
+		return False;
+
+	if (!prs_uint32("trust_type", ps, depth, &info_ex->trust_type))
+		return False;
+
+	if (!prs_uint32("trust_attributes", ps, depth, &info_ex->trust_attributes))
+		return False;
+		
+	if (!smb_io_unistr2("domain_name_unistring", &info_ex->domain_name.unistring, info_ex->domain_name.hdr.buffer, ps, depth))
+		return False;
+		
+	if (!smb_io_unistr2("netbios_name_unistring", &info_ex->netbios_name.unistring, info_ex->netbios_name.hdr.buffer, ps, depth))
+		return False;
+
+	if (!smb_io_dom_sid2("sid", &info_ex->sid, ps, depth))
+		return False;
+
+	return True;
+}
+
+/*******************************************************************
+********************************************************************/
+
 static BOOL lsa_io_trustdom_query(const char *desc, prs_struct *ps, int depth, LSA_TRUSTED_DOMAIN_INFO *info)
 {
 	prs_debug(ps, depth, desc, "lsa_io_trustdom_query");
@@ -3033,6 +3071,10 @@
 		if(!lsa_io_trustdom_query_4("password", &info->password, ps, depth))
 			return False;
 		break;
+	case 6:
+		if(!lsa_io_trustdom_query_6("info_ex", &info->info_ex, ps, depth))
+			return False;
+		break;
 	default:
 		DEBUG(0,("unsupported info-level: %d\n", info->info_class));
 		return False;

Modified: trunk/source/rpcclient/cmd_lsarpc.c
===================================================================
--- trunk/source/rpcclient/cmd_lsarpc.c	2005-11-22 14:32:29 UTC (rev 11857)
+++ trunk/source/rpcclient/cmd_lsarpc.c	2005-11-22 14:38:49 UTC (rev 11858)
@@ -771,7 +771,7 @@
 
 static void display_trust_dom_info_3(TRUSTED_DOMAIN_INFO_POSIX_OFFSET *p)
 {
-	printf("Posix Offset:\t%d\n", p->posix_offset);
+	printf("Posix Offset:\t%08x (%d)\n", p->posix_offset, p->posix_offset);
 }
 
 static void display_trust_dom_info_4(TRUSTED_DOMAIN_INFO_PASSWORD *p, const char *password)
@@ -800,6 +800,17 @@
 	data_blob_free(&data_old);
 }
 
+static void display_trust_dom_info_6(TRUSTED_DOMAIN_INFO_EX *i)
+{
+	printf("Domain Name:\t\t%s\n", unistr2_static(&i->domain_name.unistring));
+	printf("NetBIOS Name:\t\t%s\n", unistr2_static(&i->netbios_name.unistring));
+	printf("SID:\t\t\t%s\n", sid_string_static(&i->sid.sid));
+	printf("Trust Direction:\t0x%08x\n", i->trust_direction);
+	printf("Trust Type:\t\t0x%08x\n", i->trust_type);
+	printf("Trust Attributes:\t0x%08x\n", i->trust_attributes);
+}
+
+
 static void display_trust_dom_info(LSA_TRUSTED_DOMAIN_INFO *info, uint32 info_class, const char *pass)
 {
 	switch (info_class) {
@@ -812,6 +823,9 @@
 	case 4:
 		display_trust_dom_info_4(&info->password, pass);
 		break;
+	case 6:
+		display_trust_dom_info_6(&info->info_ex);
+		break;
 	default:
 		printf("unsupported info-class: %d\n", info_class);
 		break;



More information about the samba-cvs mailing list