if (strncasecmp (start, svcs[i].name, len) == 0
if (__strncasecmp (start, svcs[i].name, len) == 0
arg_service_list (const char * fname, int line_num, const char * args,		  unsigned arg){  enum Name_Service service;  const char * start;  size_t len;  int i;  static struct {    const char *	name;    enum Name_Service	service;  } svcs[] = {    {"bind",	SERVICE_BIND},    {"hosts",	SERVICE_HOSTS},    {"nis",	SERVICE_NIS},  };  do    {      start = args;      args = skip_string (args);      len = args - start;      service = SERVICE_NONE;      for (i = 0; i < sizeof (svcs) / sizeof (svcs[0]); ++i)	{	  if (strncasecmp (start, svcs[i].name, len) == 0	      && len == strlen (svcs[i].name))	  {	    service = svcs[i].service;	    break;	  }      }      if (service == SERVICE_NONE)	{	  fprintf (stderr, "%s: line %d: expected service, found `%s'\n",		   fname, line_num, start);	  return 0;	}      if (_res_hconf.num_services >= SERVICE_MAX)	{	  fprintf (stderr, "%s: line %d: cannot specify more than %d services",		   fname, line_num, SERVICE_MAX);	  return 0;	}      _res_hconf.service[_res_hconf.num_services++] = service;      args = skip_ws (args);      switch (*args)	{	case ',': case ';': case ':':	  args = skip_ws (++args);	  if (!*args || *args == '#')	    {	      fprintf (stderr,		       "%s: line %d: list delimiter not followed by keyword",		       fname, line_num);	      return 0;	    }	default:	  break;	}    }  while (*args && *args != '#');  return args;}