code: def _auth(uri):
      '''
      returns a authentication handler.
      Get user & password from grains, if are not set default to
      modules.config.option
  
      If user & pass are missing return False
      '''
  
      user, password = _get_credentials()
      if user is False or password is False:
          return False
  
      basic = _HTTPBasicAuthHandler()
      basic.add_password(realm='Tomcat Manager Application', uri=uri,
                         user=user, passwd=password)
      digest = _HTTPDigestAuthHandler()
      digest.add_password(realm='Tomcat Manager Application', uri=uri,
                          user=user, passwd=password)
      return _build_opener(basic, digestf _auth(uri):
      '''
      returns a authentication handler.
      Get user & password from grains, if are not set default to
      modules.config.option
  
      If user & pass are missing return False
      '''
  
      user, password = _get_credentials()
      if user is False or password is False:
          return False
  
      basic = _HTTPBasicAuthHandler()
      basic.add_password(realm='Tomcat Manager Application', uri=uri,
                         user=user, passwd=password)
      digest = _HTTPDigestAuthHandler()
      digest.add_password(realm='Tomcat Manager Application', uri=uri,
                          user=user, passwd=password)
      return _build_opener(basic, digest)
docs: returns a authentication handler.
      Get user & password from grains, if are not set default to
      modules.config.option
  
      If user & pass are missing return False