type=page
status=published
title=list-protocol-finders
next=list-protocols.html
prev=list-protocol-filters.html
~~~~~~
list-protocol-finders
=====================

[[list-protocol-finders-1]][[GSRFM00194]][[list-protocol-finders]]

list-protocol-finders
---------------------

lists the existing protocol finders

[[sthref1758]]

Synopsis

[source,oac_no_warn]
----
asadmin [asadmin-options] list-protocol-finders [--help]
[--target server]
protocol-name
----

[[sthref1759]]

Description

The `list-protocol-finders` subcommand lists the existing protocol
finders. This subcommand is supported in remote mode only.

[[sthref1760]]

Options

asadmin-options::
  Options for the `asadmin` utility. For information about these
  options, see the link:asadmin.html#asadmin-1m[`asadmin`(1M)] help page.
`--help`::
`-?`::
  Displays the help text for the subcommand.
target::
  Restricts the listing to protocol finders for a specified target.
  Valid values are as follows: +
  `server`;;
    Lists the protocol finders for the default server instance. This is
    the default value.
  configuration-name;;
    Lists the protocol finders for the specified configuration.
  cluster-name;;
    Lists the protocol finders for all server instances in the specified
    cluster.
  instance-name;;
    Lists the protocol finders for the specified server instance.

[[sthref1761]]

Operands

protocol-name::
  The name of the protocol for which to list protocol finders.

[[sthref1762]]

Exit Status

0::
  command executed successfully
1::
  error in executing the command

[[sthref1763]]

See Also

link:asadmin.html#asadmin-1m[`asadmin`(1M)]

link:create-protocol-finder.html#create-protocol-finder-1[`create-protocol-finder`(1)],
link:delete-protocol-finder.html#delete-protocol-finder-1[`delete-protocol-finder`(1)]


