From e44d8bc87fbf4277fbd797f65de7842133fbe1e5 Mon Sep 17 00:00:00 2001 From: Jelmer Vernooij Date: Sat, 8 Sep 2007 21:06:57 +0000 Subject: r25042: Avoid direct references to global loadparm context. (This used to be commit 256532ab4b772c5c38bc7ced21408f3ed42fe6b5) --- source4/param/loadparm.c | 27 +++++---------------------- 1 file changed, 5 insertions(+), 22 deletions(-) diff --git a/source4/param/loadparm.c b/source4/param/loadparm.c index 6c3dee239b..2dbf7cd60a 100644 --- a/source4/param/loadparm.c +++ b/source4/param/loadparm.c @@ -2539,26 +2539,10 @@ struct loadparm_service *lp_servicebynum(int snum) } struct loadparm_service *lp_service(const char *service_name) -{ - int snum = lp_servicenumber(service_name); - if (snum < 0) - return NULL; - return loadparm.ServicePtrs[snum]; -} - -/*************************************************************************** -Return the number of the service with the given name, or -1 if it doesn't -exist. Note that this is a DIFFERENT ANIMAL from the internal function -getservicebyname()! This works ONLY if all services have been loaded, and -does not copy the found service. -***************************************************************************/ - -int lp_servicenumber(const char *pszServiceName) { int iService; char *serviceName; - for (iService = loadparm.iNumServices - 1; iService >= 0; iService--) { if (loadparm.ServicePtrs[iService] && loadparm.ServicePtrs[iService]->szService) { @@ -2568,17 +2552,16 @@ int lp_servicenumber(const char *pszServiceName) */ serviceName = standard_sub_basic(loadparm.ServicePtrs[iService], loadparm.ServicePtrs[iService]->szService); - if (strequal(serviceName, pszServiceName)) - break; + if (strequal(serviceName, service_name)) + return loadparm.ServicePtrs[iService]; } } - if (iService < 0) - DEBUG(7,("lp_servicenumber: couldn't find %s\n", pszServiceName)); - - return iService; + DEBUG(7,("lp_servicenumber: couldn't find %s\n", service_name)); + return NULL; } + /******************************************************************* A useful volume label function. ********************************************************************/ -- cgit