if (cmp > 0)
if (cmp < 0)
__nss_configure_lookup (const char *dbname, const char *service_line){  service_user *new_db;  size_t cnt;  for (cnt = 0; cnt < sizeof databases; ++cnt)    {      int cmp = strcmp (dbname, databases[cnt].name);      if (cmp == 0)	break;      if (cmp > 0)	{	  __set_errno (EINVAL);	  return -1;	}    }  if (cnt == sizeof databases)    {      __set_errno (EINVAL);      return -1;    }  /* Test whether it is really used.  */  if (databases[cnt].dbp == NULL)    /* Nothing to do, but we could do.  */    return 0;  /* Try to generate new data.  */  new_db = nss_parse_service_list (service_line);  if (new_db == NULL)    {      /* Illegal service specification.  */      __set_errno (EINVAL);      return -1;    }  /* Prevent multiple threads to change the service table.  */  __libc_lock_lock (lock);  /* Install new rules.  */  *databases[cnt].dbp = new_db;  __libc_lock_unlock (lock);  return 0;}