code: protected void handleUDPAttrRqst(AttrRqst attrRqst, InetSocketAddress localAddress, InetSocketAddress remoteAddress)
      {
          // Match scopes, RFC 2608, 11.1
          if (!scopes.weakMatch(attrRqst.getScopes()))
          {
              udpAttrRply.perform(localAddress, remoteAddress, attrRqst, SLPError.SCOPE_NOT_SUPPORTED);
              return;
          }
  
          Attributes attributes = matchAttributes(attrRqst);
  
          if (logger.isLoggable(Level.FINE))
              logger.fine("DirectoryAgent " + this + " returning attributes for service " + attrRqst.getURL() + ": " + attributes.asString());
          udpAttrRply.perform(localAddress, remoteAddress, attrRqst, attributes);
      }
docs: Handles unicast UDP AttrRqst message arrived to this directory agent.
  <br />
  This directory agent will reply with a list of attributes of matching services.
  
  @param attrRqst      the AttrRqst message to handle
  @param localAddress  the socket address the message arrived to
  @param remoteAddress the socket address the message was sent from