svn commit: samba r12731 - in branches/SAMBA_4_0/source: param utils

abartlet at samba.org abartlet at samba.org
Fri Jan 6 02:50:47 GMT 2006


Author: abartlet
Date: 2006-01-06 02:50:46 +0000 (Fri, 06 Jan 2006)
New Revision: 12731

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

Log:
Simplify and re-implemenet support for --parameter-name=foo
--service-name=bar in testparm.

Andrew Bartlett

Modified:
   branches/SAMBA_4_0/source/param/loadparm.c
   branches/SAMBA_4_0/source/utils/testparm.c


Changeset:
Modified: branches/SAMBA_4_0/source/param/loadparm.c
===================================================================
--- branches/SAMBA_4_0/source/param/loadparm.c	2006-01-06 02:28:36 UTC (rev 12730)
+++ branches/SAMBA_4_0/source/param/loadparm.c	2006-01-06 02:50:46 UTC (rev 12731)
@@ -2231,40 +2231,31 @@
 BOOL lp_dump_a_parameter(int snum, char *parm_name, FILE * f, BOOL isGlobal)
 {
 	service * pService = ServicePtrs[snum];
-	int i, result = False;
 	parm_class p_class;
 	unsigned flag = 0;
-
+	struct parm_struct *parm;
+	void *ptr;
 	if (isGlobal) {
 		p_class = P_GLOBAL;
 		flag = FLAG_GLOBAL;
 	} else
 		p_class = P_LOCAL;
 	
-	for (i = 0; parm_table[i].label; i++) {
-		if (strwicmp(parm_table[i].label, parm_name) == 0 &&
-		    (parm_table[i].class == p_class || parm_table[i].flags & flag) &&
-		    parm_table[i].ptr &&
-		    (*parm_table[i].label != '-') &&
-		    (i == 0 || (parm_table[i].ptr != parm_table[i - 1].ptr))) 
-		{
-			void *ptr;
-
-			if (isGlobal)
-				ptr = parm_table[i].ptr;
-			else
-				ptr = ((char *)pService) +
-					PTR_DIFF(parm_table[i].ptr, &sDefault);
-
-			print_parameter(&parm_table[i],
-					ptr, f);
-			fprintf(f, "\n");
-			result = True;
-			break;
-		}
+	parm = lp_parm_struct(parm_name);
+	if (!parm) {
+		return False;
 	}
-
-	return result;
+	
+	if (isGlobal)
+		ptr = parm->ptr;
+	else
+		ptr = ((char *)pService) +
+			PTR_DIFF(parm->ptr, &sDefault);
+	
+	print_parameter(parm,
+			ptr, f);
+	fprintf(f, "\n");
+	return True;
 }
 
 /***************************************************************************

Modified: branches/SAMBA_4_0/source/utils/testparm.c
===================================================================
--- branches/SAMBA_4_0/source/utils/testparm.c	2006-01-06 02:28:36 UTC (rev 12730)
+++ branches/SAMBA_4_0/source/utils/testparm.c	2006-01-06 02:50:46 UTC (rev 12731)
@@ -215,7 +215,7 @@
 					lp_dump_one(stdout, show_defaults, s);
 				}
 			} else {
-				ret = lp_dump_a_parameter(s, parameter_name, stdout, isGlobal);
+				ret = !lp_dump_a_parameter(s, parameter_name, stdout, isGlobal);
 			}
 		} else {
 			lp_dump(stdout, show_defaults, lp_numservices());



More information about the samba-cvs mailing list